1.一种自适应干扰的网络恶意流量检测防御方法,其特征在于,包括以下步骤:(1)初始化软件定义网络中节点控制器上的循环神经网络RNN和图神经网络GNN模型,并初始化原始流量矩阵,各个节点控制器i加载原始流量矩阵Xc至本地基础设备,利用本地预路由网络配置交换设备下转发规则;
(2)通过图神经网络GNN和循环神经网络RNN提取流量特征;
(3)选取干扰噪声向量,训练生成对抗网络GANs中的生成器G(ω),利用生成器将干扰噪声向量转化生成特定噪声Pc;所述输出的特定噪声Pc和原始流量矩阵Xc具有相同的维度大小;通过图神经网络GNN和循环神经网络RNN提取扰动的流量特征Fp;
(4)将步骤(2)输出的流量特征和步骤(3)输出的扰动的流量特征Fp输入鉴别器D(ψ),训练鉴别器并判断两者特征相似性:
同时将扰动流量消息特征向量与原始流量消息特征向量输入鉴别器D(ψ),将扰动的流量特征Fp对应的标签设为0,步骤(2)输出的流量特征对应的标签设为1;鉴别器D(ψ)训练模型实现二分类任务;
所述鉴别器损失函数loss为:
其中,M(·)为客户端子模型,D(·)为鉴别器模型,m表示样本数量。
重复前述步骤(3)~(4),直至鉴别器D(ψ)和生成器G(ω)都收敛,即步骤(2)输出的流量特征和步骤(3)输出的扰动的流量特征Fp不相似。
(5)将步骤(3)输出的扰动的流量特征Fp上传至全局控制器,全局控制器更新转发规则,各节点控制器接收更新的转发规则,更新节点的路由策略,调整流量分布。
2.根据权利要求1所述的自适应干扰的网络恶意流量检测防御方法,其特征在于,所述软件定义网络包括应用层、控制层、基础设备层;所述控制层包括i个节点控制器和全局控制器网络;所述应用层为软件定义网络的数据中心,协同控制i个节点控制器,并监控全局控制器网络;所述基础设备层为节点控制器下的若干联网设备,包括基础设备和路由器。
3.根据权利要求1所述的自适应干扰的网络恶意流量检测防御方法,其特征在于,所述路由网络由一组链接表示:N={li},i∈(0,1,..,nl);所述路由网络中的路由器配置方案由一组路径表示:R={pk},k∈(0,1,..,np),每条路径都被定义为一系列链接的结合,即其中k(i)是路径k中第i个链接的索引。
4.根据权利要求1所述的自适应干扰的网络恶意流量检测防御方法,其特征在于,所述步骤(2)具体包括以下子步骤:
(2.1)利用图神经网络GNN提取图网络结构流量特征:将原始流量矩阵Xc、链接特征和路径特征 输入图神经网络GNN,训练该图神经网络GNN,将图神经网络GNN作为路径状态和链路状态对应的目标函数的逼近器,得到路由网络链路中的原始流量消息特征向量Fc,所述原始流量消息特征向量Fc即链接状态 路径状态所述路径状态 取决于路径中所有的链路状态 数学表达式如下:所述链路状态 取决于包含该链路在内的所有路径状态 数学表达式如下:其中, 和 为路径状态 和链路状态 对应的目标函数。
(2.2)利用循环神经网络RNN对链路流量消息进行聚合预测:利用循环神经网络RNN对路由网络中的链路流量消息进行聚合,捕捉该链路流量消息的依赖关系,收集在每个节点控制器中接受的任意数量的流量消息。并将这些流量消息压缩成固定维度的数组,即隐藏状态;所述隐藏状态中都代表一个包含链接状态 和路径状态 信息的流量变化特征,并与步骤(2.1)得到的原始流量消息特征向量Fc结合共同得到流量特征。
5.根据权利要求1所述的自适应干扰的网络恶意流量检测防御方法,其特征在于,所述步骤(3)具体包括以下子步骤:
1 2 m
(3.1)从先验分布Pprior(x)中挑选干扰噪声{z ,z ,…,z}作为生成器输入噪声向量;从
1 2 m
先验分布Pprior(x)中挑选干扰噪声{z ,z ,…,z},并初始化该干扰噪声。所述初始化干扰噪声具体为节点控制器首先计算本地节点的路由网络的流量平均方差,然后依据该流量平均方差设定方差范围。
(3.2)利用生成器G(ω)生成特定噪声:将步骤(3.1)初始化后的噪声输入生成器G(ω)前向传播获得输出特定噪声并进行降维操作。所述输出的特定噪声Pc和原始流量矩阵Xc具有相同的维度大小。所述输出的特定噪声的分布规律主要有均匀分布和正态分布。
(3.3)特定噪声Pc和原始流量矩阵Xc进行流量叠加求和获得扰动流量矩阵Xp,数学表达式如下:
Xp=Pc+Xc
将扰动流量矩阵Xp、链接特征 和路径特征 输入图神经网络GNN和循环神经网络RNN,得到扰动的流量特征Fp。
6.根据权利要求1所述的自适应干扰的网络恶意流量检测防御方法,其特征在于,所述步骤(5)具体包括以下子步骤:
(5.1)全局控制器聚合扰动的流量特征Fp得到决策流量数据;
(5.2)将图卷积神经网络GCN作为路由决策模型,将步骤(5.2)聚合完成的决策流量数据Fp作为路由决策模型的输入数据,利用全局控制器训练路由决策模型在路由决策模型进行前向传播,后续通过计算损失函数反向传播更新路由决策模型的参数以及各节点控制器的转发规则参数;所述各节点控制器接收更新的转发规则,更新节点的路由策略,调整流量分布。