APP下载

基于卷积神经网络的指挥控制专网DDoS 检测方法*

2023-08-30王瑞杰王远航郭丰君

舰船电子工程 2023年5期
关键词:池化层专网卷积

张 翊 王瑞杰 王远航 郭丰君

(陆军炮兵防空兵学院郑州校区 郑州 450000)

1 引言

随着网络技术的不断发展,战争形态不断改变,机械化战争转向信息化战争已势不可挡[1~3]。二十一世纪以来,我军武器装备信息化程度日益提高,基于IP 的指挥控制专网在体系化指挥作战中的地位不断提升,其势必也将成为敌方重点攻击的对象。作为战场信息传送的重要枢纽,各类指挥控制专网[4~5]采用多级互联组成,其网络结构如图1所示。

图1 指挥控制专网结构图

针对指挥控制专网,敌方只需要使用能量足够大的信号在阵地网络范围内广播路由或者其他信息,破坏阵地网络传输层的“三次握手”协议机制,就可以导致整个阵地网络的性能下降,甚至不能通信[6],其最常见的攻击手段如图2 所示。

图2 常见DDoS攻击方式

针对DDoS 攻击,前人做了大量的研究工作[7~13]。其中针对专网,刘顺余等[10]提出了一种基于集成学习的DDoS 攻击防御方法KNS,该方法将KNN、NBC 和SVM 进行了集成,最终实现分类。但是针对防控作战体系,其检测效果可能会影响其作战成败,该检测方法准确率有待进一步提高。对此,提出了一种基于卷积神经网络(Convolutional Neural Network,CNN)的指挥控制专网DDoS 攻击检测方法,该方法采用具有7层结构的CNN对流量数据进行分类,该方法能够实现较高的指挥控制专网DDoS攻击检测准确率和较低的误报率。

2 特征预处理

2.1 “0”填充

指挥控制专网流量数据其特征值数量不固定,为便于卷积神经网络学习其特征分布,本文采用“0”填充的方式,对数据xi,进行扩充或缩减。当num(xi,)<100 时,对xi,进行填充,使得num(xi,)<100,当num(xi,)>100时,对100维后面的数据进行“剪枝”,仅保留其前100维特征。

2.2 归一化

本文基于对流量的分析实现DDoS 攻击行为的识别,流量特征表示为xi,j,其中xi,j∈Sd,S表示数据集,d表示S 的维度,i代表S中第i条流量,j 代表S 中第j 维特征。其中j ∈[0,255],不利于后期分类器训练阶段的高效学习和快速收敛。基于此,为了实现分类器训练阶段的高效学习与快速收敛,本文对不同量级的特征进行归一化处理,使得xi,j∈[0,1]。归一化计算公式如下所示:

式中,表示第j维的特征最大值,表示第j维的特征最小值。

3 卷积神经网络

CNN由输入层、卷积层、池化层、全连接层和输出层组成。不同结构的CNN 具有不同数量的卷积层和池化层。假设CNN 的输入特征是第i层的特征图是Mi(M0=X)。那么,卷积过程可以表示为式(2):

其中Wi是第i层的卷积核权重向量,运算符号⊗代表卷积运算,bi是第i层的偏移向量;f(*)是激活函数。卷积层通过指定不同的窗口值提取数据矩阵Mi-1的不同特征信息,通过不同的卷积核提取数据中不同的特征Mi。在卷积操作中,同一个卷积核遵循“参数共享”的原则,显著减少神经网络的参数数量。

池化层通常在卷积层之后按照不同的采样规则对特征图进行采样。假设Mi是池化层的输入,Mi+1是池化层的输出;那么,池化层可以表示为

本文在Pool(*)中,采用最大值池化的方法,主要是降低特征维度,减少冗余特征对模型的影响。CNN 模型结构如图3所示。

图3 CNN结构图

4 DDoS检测

如图3所示,检测包括以下步骤:

第1 步:数据预处理和数据类型转换。将数据集进行“0”填充和归一化处理,得到标准化的数据集。此时,数据集为1*100 维向量,然后将一维网络连接数据集映射为二维特征向量(1*100 向量转换为10*10 图像数据)。变换后的二维特征向量可以作为CNN输入层的输入样本。

第2步:CNN 入侵检测模型的具体结构。本文中,CNN 由一个输入层、一个输出层和4 个隐藏层组成。输入层将一维网络数据集映射成二维平面信息,便于CNN 特征学习。隐含层包括卷积层和池化层。卷积层不断地将样本数据映射到高维空间,学习数据的特征信息。池化层通过降低提取特征的维度来减少计算量并提高模型的检测效率。每个卷积层和每个池化层交替设置,以准确高效地提取入侵特征。输出层将特征提取结果映射为一维数组进行预测分类,CNN参数设置如表1。

表1 卷积神经网络参数设置

表2 实验用数据集

其中,Relu 为本文选择的激活函数,dropout 为失活概率,以防止CNN学习过拟合,Softmax将输出层数值映射为概率。

第3 步:模型训练和反向微调提高模型的性能。在CNN 模型中,使用反向传播(BP)算法对网络模型的参数进行微调。在确定网络模型的最优参数后,通过测试数据集的分类结果评估模型的性能。

5 实验结果分析

5.1 数据集

本实验基于某防空部队采集的数据集[8],该数据集是模拟DDoS 攻击中的泛洪攻击,在数据采集过程中,设定时间阈值为0.004s,如果时间超过0.004s,则将数据包视作攻击类,其他的为正常流量。其数据情况如表1所示。

5.2 实验环境

在研究的过程中,实验环境设置如下:

操作系统:Windows 10

处理器:Intel(R)Core(TM)i5-3450 CPU @3.10GHz

内存:16.0GB

语言:python3.7

调用库:Numpy,Scikit-learn

5.3 评价指标

本文通过以下三个性能指标来评估检测系统。

准确率:正确识别的百分比,如式(4)所示。

检测率:攻击流量正确分类的百分比,如式(5)所示。

误报率:错误识别中识别为攻击流量的百分比,如式(6)所示。

其中,TN 表示正常流量分类正确的条数,TP 表示攻击分类正确的条数。FP 表示攻击流量错误分类的条数。FN表示正常流量错误分类的条数。

5.4 结果及分析

5.4.1 训练损失

实验中,CNN 训练220 次后,损失值降为最低,训练趋于稳定,训练次数和损失值变化如图4所示。

图4 训练次数和损失值变化图

5.4.2 检测结果

本文主要和已有的四种方法进行了对比,实验结果显示,CNN 检测准确率高达95.24%,误报率仅有2.26%,优于其他算法,对比结果如表3所示。

表3 分类器的结果比较

从实验数据可得,本文所提出的堆叠神经网络能够更好地识别DDoS 攻击,其准确率高达95.24%,超过了其他四种算法,检测率比其他最高检测率还要高13.08%,并且堆叠神经网络在误报率方面也有出色的表现。为了更好地分析实验分类效果,本文才用混淆矩阵对测试集进行了分析,内容见表4。

表4 混淆矩阵

从混淆矩阵可以看出,虽然仍有589 条流量(包含正常和攻击类)识别错误,但是CNN 能够识别大部分的正常流量和DDoS 攻击,具有较好的分类效果。

6 结语

面对信息化作战的未来趋势,本文针对指挥控制专网,提出了一种新颖的DDoS 攻击检测方法,该方法是采用CNN 对流量数据进行特征分析和识别。该方法和已有的四种检测方法进行了对比,实验结果表明,基于CNN 的检测方法能够获得较高的准确率和检测率,以及非常低的误报率,具有一定前景。

猜你喜欢

池化层专网卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络模型研究分析*
基于卷积神经网络的纸币分类与点钞
基于深度学习卷积神经网络的人体行为识别研究
从滤波器理解卷积
无线专网通信在武汉配电自动化中的应用
无线通信技术在电力通信专网中的应用
基于全卷积神经网络的SAR图像目标分类*
基于傅里叶域卷积表示的目标跟踪算法
我国警用通信专网与公网比较研究