一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于图神经网络的SDN网络DDoS攻击检测方法

2022-09-01 10:51:08 来源:中国专利 TAG:
一种基于图神经网络的sdn网络ddos攻击检测方法
技术领域
:1.本发明涉及人工智能与网络安全
技术领域
:,尤其涉及一种基于图神经网络的sdn网络ddos攻击检测方法。
背景技术
::2.分布式拒绝服务攻击(distributeddenialofservice,简称ddos)是目前黑客经常采用而难以防范的攻击手段。ddos的攻击方式一直在不断变化且非常多样,但是ddos攻击并未得到有效控制,且近年来ddos攻击呈现出攻击模式更加智能化、攻击范围不断扩大的特点。3.软件定义网络(softwaredefinednetworking,简称sdn),将传统封闭的网络体系解耦为数据平面、控制平面和应用平面,实现了网络流量的灵活控制,使网络作为管道变得更加智能。然而,sdn架构使得各种资源的配置以及服务都全面集中在控制器层面上,使sdn控制器成为了以ddos攻击为代表的各种网络安全攻击的重点目标。自国家对网络安全概念加强重视以来,网络安全问题已经成为社会关注的问题。4.随着国家对网络安全的重视,网络安全防护显得尤其重要。传统的安全防护体系对于如今快速发展的网络环境,已经不再适用;对于现阶段而言,需要更全面、时效性更强的分析算法,来保障网络安全。5.因此,有必要提供一种基于图神经网络的sdn网络ddos攻击检测方法来解决上述技术问题。技术实现要素:6.为了高效地甄别ddos攻击以及潜在威胁数据,来助力安全的sdn网络环境维护。针对现有方法在实际sdn网络环境中难以进行更加高效迅速检测ddos攻击的不足,本发明提出了一种基于图神经网络的sdn网络ddos攻击检测方法,主要根据sdn网络环境下流表数据中提取的六个ddos相关的流特征值建立流表图,对疑似ddos攻击进行更加快速的筛选和分析,使用图神经网络减少模型训练的复杂度,从而能够在保证高速建立算法模型的同时保证检测的高正确率。同时建立节点白名单,结合基于图神经网络的ddos攻击检测模型进行双重判定,具有较高的ddos攻击检测准确率,减少误判的概率。为解决上述技术问题,本发明提供一种基于图神经网络的sdn网络ddos攻击检测方法,包括数据收集模块、训练模块、人工智能分析模块、反馈补偿模块、数据库加密存储模块和可视化模块。7.为实现上述目的,本发明的技术方案在于一种基于图神经网络的sdn网络ddos攻击检测方法:8.s1、sdn控制器向openflow交换机发送流表数据请求,并获取流表的状态信息;其中,openflow交换机将流表的状态信息回复至sdn控制器的流特征值提取模块,定期获取信息数据的时间间隔为t;9.s2、sdn控制器中的流特征值提取模块对收集的流表信息数据进行分解处理,提取出与ddos相关的流特征值,并建立流表图;其中,流特征值包括:源ip地址增速gsip、流生存时间变化adf、端口增速gsp、流表项速率rfe、流表匹配成功率rfm和对比流比例ppf;10.将各openflow交换机作为图神经网络中的节点(node),交换机之间的连接关系作为边(edge),建立图神经网络;11.s3、初始化图神经网络的各算法参数,通过流表传递图神经网络处理信息,建立节点白名单,并给出符合ddos攻击的漏洞标签;12.s4、建立完整的基于图神经网络的ddos攻击检测模型,并对ddos攻击进行预测;13.s5、若检测样本中有符合ddos攻击的漏洞标签的节点结构,则向sdn控制器发出告警,并由sdn控制器命令对应漏洞节点丢弃疑似攻击数据包,更改相关安全配置。14.作为更进一步的解决方案,所述s1中,由openflow交换机将流表信息回复至sdn控制器的流特征值提取模块,其中,定期获取信息数据的时间间隔t为9秒。15.作为更进一步的解决方案,在s2的提取出与ddos相关的流特征值:16.源ip地址增速gsip计算公式为:[0017][0018]其中,为源ip数量,t为采样的时间间隔;[0019]流生存时间变化adf计算公式为:[0020][0021]其中,tdur为流生存时间,tflow为流的总时间;[0022]端口增速gsp计算公式为:[0023][0024]其中,sport为攻击源端口的增加数量,t为采样的时间间隔;[0025]流表项速率rfe计算公式为:[0026][0027]其中,sflow为流表项的总数,t为采样的时间间隔;[0028]流表匹配成功率rfm计算公式为:[0029][0030]其中,mpacket为匹配成功的数据包数量,spacket为数据包总数;[0031]对比流比例ppf计算公式为:[0032][0033]其中,fpair为网络中交互流的数量,fsum为流的总数。[0034]作为更进一步的解决方案,所述s2进一步包含以下过程:[0035]s2-1sdn控制器中的流特征值提取模块对收集的流表信息数据进行分解处理,提取出与ddos相关的流特征值;[0036]s2-2将各openflow交换机作为图神经网络中的节点(node),交换机之间的连接关系作为边(edge),构造图神经网络;[0037]s2-3根据各项流表参数生成流表图,流表图为无向图:[0038]gflow=(v,e)[0039]其中,n个openflow交换机作为节点vi∈v,任意边(vi,vj)∈e;[0040]s2-4将sdn控制器提取的流特征值,组成一维特征向量。[0041]作为更进一步的解决方案,所述s3进一步包含以下过程:[0042]s3-1初始化图神经网络各算法参数,包括输入层、隐藏层以及输出层之间的权重值和阈值;[0043]s3-2根据以往经验建立节点白名单;节点白名单由sdn控制器发布于每个openflow交换机,若数据包传输经过路径中任意两个节点的源ip地址与目的ip地址都在节点白名单内,且数据流为双向,则数据包能继续由交换机传递;若数据包传输经过路径中任一节点的ip地址不在节点白名单内,或数据流为单向传播,则初步标记异常节点,并给出ddos攻击的漏洞标签,表达式为:[0044](psrc∈qlst)∩(pdst∈qlst)[0045]其中,psrc为数据包的源ip地址,pdst为数据包的目的ip地址,qlst为节点白名单内的ip地址。[0046]作为更进一步的解决方案,所述s4进一步包含以下过程:[0047]s4-1根据流表图数据,建立图神经网络;其中,图神经网络包括n个节点,且每个节点都有对应特征值,将各节点的特征组成一个n×d维的矩阵x;各个节点之间的关系组成一个n×n维的矩阵a;将矩阵x和矩阵a作为图神经网络输入;[0048]s4-2设置图神经网络中层与层之间的传播方式:[0049][0050]其中,a=a i,i为单位矩阵,d为a的度矩阵,即dii=∑jaij;h(l)是第l层的特征矩阵,对于输入层而言h(0)即为x;σ为非线性激活函数,w(l)是每一层的隐藏层权重参数矩阵;[0051]s4-3构造一个两层的gcn结构,前向网络模型形式如下:[0052]z=f(x,a)=softmax(arelu(axw(0))w(1))[0053]其中,为输入层映射到隐藏层的权重矩阵,隐藏层的特征维度为h,为隐藏层映射到输出层的权重矩阵,relu是第一层激活函数,softmax激活函数定义为为第二层激活函数,即[0054]s4-4建立完整的基于图神经网络的ddos攻击检测模型,根据交叉熵损失函数进行ddos攻击模式判断:[0055][0056]其中,yl为带有特征分类标签的节点集合,f表示分类标签个数,ylf为带有第f种标签的节点集合,zlf为对应的预测概率;[0057]s4-5ddos攻击经过的传输路径中,交叉熵损失值会在单位时间内激增;若交叉熵损失值明显增大,则检测路径上的节点将给出ddos攻击的漏洞标签并从节点白名单中删除,且通过此路径传输的数据包将被全部隔离封装以保护sdn网络安全;若交叉熵损失值在单位时间内的值持平缓水平,则视该检测路径上的所有节点为安全节点,并加入节点白名单之中。[0058]与相关技术相比较,本发明提供的一种基于图神经网络的sdn网络ddos攻击检测方法具有如下有益效果:[0059]1、本发明结合图神经网络技术与sdn网络结构特征,形成了一个全面的网络安全检测模型,使模型更加贴近实际网络安全环境。图神经网络算法适用于多种实际sdn网络环境,且根据网络的数据特征的不同可灵活形成对应其特征的智能分析模型,从而提高网络安全防护与预测的准确率;[0060]2、本发明根据sdn网络环境下流表数据,提取六个ddos相关的流特征值,并建立流表图;对疑似ddos攻击进行了更加快速的筛选和分析,使用图神经网络减少了模型训练的复杂度,从而能够在保证高速建立算法模型的同时保证检测的高正确率;[0061]3、本发明建立节点白名单并结合交叉熵损失函数的二次判断,提高了检测及预测的准确率,及时封装或丢弃可疑数据包,保护了sdn网络的信息安全性。附图说明[0062]图1为本发明提供的一种基于图神经网络的sdn网络ddos攻击检测方法较佳实施例整体流程示意图;[0063]图2为本发明提供的一种基于图神经网络的sdn网络ddos攻击检测方法较佳实施例节点白名单原理执行流程图;[0064]图3为本发明提供的一种基于图神经网络的sdn网络ddos攻击检测方法较佳实施例图神经网络结构图。具体实施方式[0065]下面将结合本发明附图和实施例对本发明的技术方案进行详细、完整地的描述;显然,所描述的实施例仅为本发明的一部分实施例,而并非全部实施例。[0066]基于图神经网络(graphconvolutionalnetworks,简称gcn)的算法模型,可避免在实际应用场景中训练算法模型的高复杂度问题,并提高判别ddos攻击的准确性。[0067]如图1所示,一种基于图神经网络的sdn网络ddos攻击检测方法,包括以下步骤:[0068]s1、软件定义网络(softwaredefinednetworking,简称sdn)控制器向openflow交换机发送流表数据请求,通过openflow协议记录模块收集流表的状态信息,由openflow交换机将流表信息回复至sdn控制器的流特征值提取模块,其中定期获取信息数据的时间间隔为t(该示例中t为9秒);[0069]其中openflow交换机由流表(flowtable)、通信的安全通道(securechannel)和openflow协议(openflowprotocol)三部分组成;[0070]s2、sdn控制器中的流特征值提取模块对收集的流表信息数据进行分解处理,提取出与ddos相关的六个流特征值,并建立流表图,其中六个流特征值包括:源ip地址增速gsip、流生存时间变化adf、端口增速gsp、流表项速率rfe、流表匹配成功率rfm、对比流比例ppf;[0071]所有openflow交换机作为图神经网络中的节点(node),交换机之间的连接关系作为边(edge);[0072]s3、初始化图神经网络算法的各参数,通过流表传递图神经网络处理信息,建立节点白名单,并给出符合ddos攻击的漏洞标签;[0073]s4、建立完整的基于图神经网络的ddos攻击检测模型,同时具备预测功能;[0074]s5、若检测样本中有符合ddos攻击的漏洞标签的节点结构,则向sdn控制器发出告警,并由sdn控制器命令该漏洞节点(即openflow交换机)丢弃疑似攻击数据包,更改相关安全配置。[0075]作为更加具体点的解决方案,s2所述的“与ddos相关的六个流特征值”,包括:[0076]源ip地址增速(growthspeedofsourceip,gsip),即单位时间内源ip地址的增加数量:[0077][0078]其中为源ip数量,t为采样的时间间隔;ddos攻击随机伪造产生大量的攻击流发送数据包,其源ip地址会快速增加;[0079]流生存时间的变化(averageofdurationperflow,adf),即单位时间内流规格的生存持续时间相对变化程度:[0080][0081]其中,tdur为流生存时间,tflow为流的总时间;在流表项中,若存在大量的异常流量,其流生存持续时间会明显减少;[0082]端口的增速(growthofport,gsp),即单位时间内攻击源端口数量的增长速度:[0083][0084]其中,sport为攻击源端口的增加数量;ddos攻击的发生会随机生成大量的端口号;[0085]流表项速率(therateofflowentries,rfe),即单位时间流表项的增长速度:[0086][0087]其中,sflow为流表项的总数,攻击发生时sdn控制器会快速产生大量的流表信息。[0088]流表匹配成功率(therateofflowtablematching,rfm),即流量中匹配成功的数据包流量占总数量的比例:[0089][0090]其中,mpacket为匹配成功的数据包数量,spacket为数据包总数;发生ddos攻击时,因为当有大量的新流产生存在,其匹配成功率将急剧下降。[0091]对比流比例(percentageofpair-flow,ppf),即流表对比流量占总流量的比例:[0092][0093]其中,fpair为网络中交互流的数量,fsum为流的总数;ddos攻击发生时网络中,具有一定的交互性的对比流数量会减少。[0094]作为更加具体点的解决方案,如图2所示,节点白名单原理执行流程如下:[0095]根据以往经验建立节点白名单,即根据历史记录将常用ip地址所在节点加入节点白名单;[0096]节点白名单由sdn控制器发布于每个openflow交换机节点;[0097]若数据包传输经过路径中任意两个节点的源ip地址与目的ip地址都在“白名单”范围内,且数据流为双向,则数据包能继续由交换机传递;若数据包传输经过路径中任一节点的ip地址不属于“白名单”范围内,亦或数据流为单向传播,则初步标记异常节点,给出ddos攻击的漏洞标签,此过程可表示为:[0098](psrc∈qlst)∩(pdst∈qlst)[0099]其中,psrc为数据包的源ip地址,pdst为目的ip地址,qlst为ip地址的“白名单”。[0100]作为更加具体点的解决方案,所有数据包继续正常传递至基于图神经网络的ddos攻击检测模型根据交叉熵损失函数进行ddos攻击模式判断:[0101][0102]其中,yl为带有特征分类标签的节点集合。f表示分类标签个数,ylf为带有第f种标签的节点集合,zlf为对应的预测概率;[0103]ddos攻击经过的传输路径中,交叉熵损失值会在单位时间内激增。若交叉熵损失值明显增大,则检测路径上的节点将给出ddos攻击的漏洞标签并从节点白名单中删除,且通过此路径传输的数据包将被全部隔离封装以保护sdn网络安全;若交叉熵损失值在单位时间内的值持平缓水平,则视该检测路径上的所有节点为安全节点,并加入节点白名单之中。[0104]如图3所示,图神经网络结构及流程如下:[0105]根据提取出与ddos相关的六个流特征值,建立流表图,所有openflow交换机作为图神经网络中的节点,交换机之间的连接关系作为边;[0106]根据各项流表参数生成流表图,此流表图为无向图:[0107]gflow=(v,e)[0108]其中n个openflow交换机作为节点vi∈v,任意边(vi,vj)∈e;[0109]提取的六个sdn控制器中的流特征值,组成一维特征向量;[0110]初始化图神经网络算法的各参数,包括输入层、隐藏层以及输出层之间的权重值和阈值,之后流表图数据将作为图神经网络的输入;[0111]图神经网络中包括n个节点,且每个节点都有自己的特征值,设这些节点的特征组成一个n×d维的矩阵x;各个节点之间的关系形成一个n×n维的矩阵a,即为邻接矩阵(adjacencymatrix);矩阵x和矩阵a便是整个检测模型的输入;[0112]图神经网络(graphconvolutionalnetwork,简称gcn)中层与层之间的传播方式如下:[0113][0114]其中,a=a i,i为单位矩阵,d为a的度矩阵(degreematrix),即h(l)是第l层的特征矩阵,对于输入层而言h(0)即为x,σ为非线性激活函数,w(l)是每一层的隐藏层权重参数矩阵;[0115]如图3所示,本示例中使用的是一个两层的gcn结构,前向网络模型形式如下:[0116]z=f(x,a)=softmax(arelu(axw(0))w(1))[0117]其中,为输入层映射到隐藏层的权重矩阵,隐藏层的特征维度为h,为隐藏层映射到输出层的权重矩阵,relu是第一层激活函数,softmax激活函数定义为为第二层激活函数即,[0118]建立完整的基于图神经网络的ddos攻击检测模型,根据交叉熵损失函数进行ddos攻击模式判断:[0119][0120]其中,yl为带有特征分类标签的节点集合,f表示分类标签个数,ylf为带有第f种标签的节点集合,zlf为对应的预测概率。[0121]综上所述,本发明通过sdn网络流量的特征值形成了流表图,并建立了基于图神经网络的ddos攻击检测模型,减小了整体运行的复杂度;同时建立了节点白名单,结合基于图神经网络的ddos攻击检测模型进行双重判定,具有较高的ddos攻击检测准确率,减少了误判的概率。[0122]以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的
技术领域
:,均同理包括在本发明的专利保护范围内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献