CN115589323B - 数据平面中基于机器学习的DLDoS攻击检测与缓解方法 - Google Patents
数据平面中基于机器学习的DLDoS攻击检测与缓解方法 Download PDFInfo
- Publication number
- CN115589323B CN115589323B CN202211272336.4A CN202211272336A CN115589323B CN 115589323 B CN115589323 B CN 115589323B CN 202211272336 A CN202211272336 A CN 202211272336A CN 115589323 B CN115589323 B CN 115589323B
- Authority
- CN
- China
- Prior art keywords
- data
- dldos
- attack
- detection
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 95
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000010801 machine learning Methods 0.000 title claims abstract description 15
- 238000012549 training Methods 0.000 claims abstract description 47
- 230000002159 abnormal effect Effects 0.000 claims abstract description 19
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000005457 optimization Methods 0.000 claims abstract description 16
- 241000283153 Cetacea Species 0.000 claims abstract description 15
- 230000000116 mitigating effect Effects 0.000 claims abstract description 14
- 238000005070 sampling Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 10
- 238000000605 extraction Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 2
- 239000013598 vector Substances 0.000 description 7
- 210000002569 neuron Anatomy 0.000 description 4
- 238000011897 real-time detection Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000779 depleting effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据平面中基于机器学习的DLDoS攻击检测与缓解方法,属于计算机网络安全领域。其中所述的方法包括:在数据平面使用P4语言编程数据包处理逻辑,获取软件定义网络中到达交换机的TCP与UDP流量数据并形成检测窗口;使用训练数据训练极限学习机构建DLDoS攻击检测模型,训练中使用鲸鱼优化算法确定参数;将检测模型部署于控制平面进行实时检测,判定网络中是否遭受了攻击;若判定网络遭受了攻击且未部署缓解策略,使用P4语言编程数据平面统计流量信息,以此为依据判定异常IP并上报控制器,控制器基于数据平面编写的数据包处理逻辑部署交换机规则进行攻击缓解。本发明提出的方法可以及时检测到DLDoS攻击并缓解,是一种有效的DLDoS攻击检测及缓解方法。
Description
技术领域
本发明属于计算机网络安全领域,具体涉及一种数据平面中基于机器学习的DLDoS攻击检测与缓解方法。
背景技术
拒绝服务(Denial of Service,DoS)攻击是一种危害较大的网络攻击,它通过耗尽被攻击目标资源的方式,让其无法提供正常的服务或资源访问,从而达到攻击的目的。分布式拒绝服务(Distributed Denial of Service,DDoS)攻击是目前主流的DoS攻击方式,它通过多个攻击源同时对目标发动DoS攻击来造成受害者资源耗尽,使其服务系统停止响应甚至崩溃。
低速率拒绝服务(Low-rate Denial of Service,LDoS)攻击是一种隐蔽性更强、攻击代价更小的新型DoS攻击,通过周期性地发送脉冲时长较短的高速率流量来抢占TCP带宽以触发TCP协议拥塞控制机制对网络流量的调整,影响正常TCP流量的传输来进行攻击。分布式低速率拒绝服务(Distributed Low-rate Denial of Service,DLDoS)攻击是一种新型的DDoS攻击,它在攻击时多个攻击源以同步或者异步的方式对目标发动LDoS攻击来使受害者拒绝服务,较传统DDoS攻击平均攻击速率更低、隐蔽性更强、更难检测。
传统网络架构使用固定和专用硬件设备来控制网络流量,将管理平面、控制平面和数据平面紧密耦合,其无法扩展性在很大程度上阻碍了网络功能的快速创新和部署,已经不能为新技术提供较好的资源服务和业务支持。为解决传统网络中数据平面和控制平面紧密耦合带来的无法扩展性的缺陷,软件定义网络被设计提出,它将数据平面与控制平面分离,通过控制平面编程底层硬件功能,对网络资源进行灵活调配。但由于软件定义网络延续使用了传统网络的基本协议,利用这些协议漏洞的网络攻击也可以存在于软件定义网络中,DLDoS攻击就是其中之一,若未能及时检测并缓解,整个网络的管理便会受到影响,甚至带来严重损害。
软件定义网络中控制平面与数据平面采用OpenFlow协议进行通信,这仅能实现控制平面的可编程,而无法实现数据平面的可编程,数据平面只能在已经由控制平面通过OpenFlow协议部署的交换机数据处理逻辑上进行数据流处理,无法根据需要进行额外扩展,不能自定义交换机数据包处理逻辑,即数据平面灵活性依然较低。为了在数据平面实现真正的协议无关和可编程,P4(Programming Protocol-Independent Packet Processors)语言应运而生,P4语言是一种协议无关的数据包处理编程语言,可以使用P4语言自定义数据包处理和转发逻辑,来真正协议无关地对数据平面进行编程。
目前DoS攻击检测及缓解方法的研究中,专门针对DLDoS攻击的研究较少,更多有效的DLDoS攻击检测与缓解方法亟待提出。且由于最初的软件定义网络无法实现数据平面的可编程,绝大多数被提出的针对软件定义网络中DLDoS攻击的检测及缓解方法都几乎完全部署在控制平面,在使用这些方法时会产生不可避免的数据包处理时的数控通信时延和内存及CPU等资源消耗。直接在数据平面编程进行DLDoS攻击检测及缓解可以在一定程度上减少开销、提高效率,从而达到更高效的检测及缓解效果。
机器学习方法具有良好的数据处理与泛化能力,能够很好地分析网络流量信息,基于机器学习方法可以实现对软件定义网络中DLDoS攻击的精准检测。极限学习机是一类基于单隐层前馈神经网络构建的机器学习模型,其输入层和隐含层的连接权值、隐含层的阈值是预先设定的,无需进行后续调整,训练中的主要工作是依据Moore-Penrose(MP)广义逆矩阵理论求出极限学习机隐含层和输出层之间连接权值矩阵β的最优解,训练过程中计算量较小、不需要迭代、训练时间较短。基于极限学习机训练模型进行DLDoS攻击检测可以达到较高的效率,在实时训练与检测中可以保证较低的时间延迟,可以选用极限学习机作为DLDoS攻击检测模型构建中的基础模型。鲸鱼优化算法是一种模仿鲸鱼捕食行为的新型智能群优化算法,有参数少、操作简单的优点,基于此算法进行搜索可以得到更优的训练参数,从而达到更好的训练效果。
本发明针对软件定义网络中的DLDoS攻击,提出了一种数据平面中基于机器学习的DLDoS攻击检测与缓解方法。该方法在数据平面中使用P4语言编程数据包处理逻辑,实时获取软件定义网络中到达交换机的TCP流量与UDP流量数据,并存储在滑动窗口中形成当前检测窗口;使用训练数据训练机器学习模型,构建DLDoS攻击检测模型,其中基础模型选用极限学习机,并使用鲸鱼优化算法在训练中进行权值和阈值的确定;将DLDoS攻击检测模型部署于控制平面,利用构建的DLDoS攻击检测模型对网络状态进行实时检测,根据检测模型的输出结果判定当前网络中是否遭受了DLDoS攻击;当判定网络中遭受了DLDoS攻击且未部署缓解策略时,使用P4语言编程数据平面统计流量信息,以此为依据判定异常IP,并将相关信息上报控制器,控制器根据这些信息基于数据平面中P4语言编写好的数据包处理逻辑对交换机部署相关规则,使其对来自异常IP的数据包匹配相应的丢包操作,对DLDoS攻击进行及时地缓解。本发明提出的方法可以实现软件定义网络中对DLDoS攻击的实时检测与缓解,具有较高的准确率和检出率,以及较低的假阳性率和假阴性率,此外,较低的时空复杂度使其能够在检测及缓解中及时快速地做出响应,是一种有效的DLDoS攻击实时检测及缓解方法。
发明内容
本发明针对软件定义网络中的DLDoS攻击,提出了一种数据平面中基于机器学习的DLDoS攻击检测与缓解方法。该方法具有较低的复杂度,较高的准确率和检出率,较低的假阳性率和假阴性率,以及良好的实时性,可以精准及时地检测到DLDoS攻击并对其进行缓解,因此能够应用于软件定义网络中DLDoS攻击的实时检测与缓解。
本发明为实现上述目标所采用的技术方案为:该DLDoS攻击检测与缓解方法主要包括五个步骤:网络数据采样、流量特征提取、构建检测模型、攻击判定检测以及攻击缓解。
1.网络数据采样。网络数据采样基于P4语言编程数据平面实现,使用Counter和Hash算法,以一定的时间间隔为单位时间实时获取软件定义网络中到达交换机的TCP字节数、TCP包数和UDP包数,形成原始网络数据,并维持固定长度和步长的滑动窗口存储采集的数据,形成当前检测窗口。
2.流量特征提取。对各检测窗口的数据进行处理,计算检测窗口中网络流量的平均TCP包数、平均TCP字节数、UDP包数标准差作为特征数据。
3.构建检测模型。以极限学习机为基础模型,并使用鲸鱼优化算法确定其需要预设的权值和阈值,使用训练数据对其进行训练,构建DLDoS攻击检测模型。
4.攻击判定检测。将构建的DLDoS攻击检测模型部署于控制平面,利用其对网络状态进行实时检测,根据检测模型的输出结果判定当前网络中是否遭受了DLDoS攻击。
5.攻击缓解。当检测到DLDoS攻击且未部署缓解策略时,基于P4语言编程数据平面,部署攻击缓解方法进行响应,以及时缓解DLDoS攻击对网络造成的恶劣影响。
有益效果
本发明提出的DLDoS攻击检测与缓解方法基于P4语言对数据平面进行编程,并利用极限学习机这种机器学习模型,结合鲸鱼优化算法,对软件定义网络中的DLDoS攻击进行实时检测与缓解。该方法可以实时精准的检测到软件定义网络中的DLDoS攻击,并快速对其进行缓解。在基于Mininet和BMV2交换机搭建的仿真网络中展开了实验,该方法检测DLDoS攻击正确率较高,可达到96.69%,漏报误报情况较少,可以精准的检测到DLDoS攻击并较快地对其进行缓解,缓解时间平均在9s左右,是一种有效的DLDoS攻击实时检测及缓解方法。
附图说明
图1为网络数据采样和流量特征提取流程图。对软件定义网络中到达交换机的TCP流量与UDP流量实时进行采样,并对其进行处理,得到TCP流量与UDP流量的特征数据。
图2为基于本发明方法构建DLDoS攻击检测模型的流程图。使用训练数据,利用鲸鱼优化算法选择权值和阈值,训练极限学习机构建攻击检测模型。
图3为基于本发明方法进行DLDoS攻击缓解的流程示意图。进行攻击缓解时,使用P4语言编程数据平面,统计流量信息,部署相关交换机规则,对DLDoS攻击进行及时地缓解。
图4为数据平面中基于机器学习的DLDoS攻击检测与缓解的流程图。
具体实施方式
下面结合附图对本发明进一步说明。
图1为网络数据采样和流量特征提取流程图。使用P4语言在数据平面进行编程,使用Hash函数将数据包目的地址转换为一个索引值,使得每个目的地址都有一个索引值与其对应,定义2个记录数据包包数和字节数类型的Counter,分别为TCPCounter和UDPCounter,TCPCounter和UDPCounter根据到达交换机的数据包的目的地址的索引值,记录流量数据信息,统计到达交换机的TCP和UDP流量的包数和字节数。以一定的时间间隔为单位时间对TCPCounter和UDPCounter的统计数据采样并进行处理,将处理后的数据存储在滑动窗口中,计算窗口中数据的特征值,提取网络流量特征。
网络数据采样和流量特征提取过程中,具体包括以下四个步骤:
1.数据包到达交换机时,在数据平面使用Hash函数计算其目的地址对应的索引值,并从数据包头获知数据包类型(TCP数据包或UDP数据包),若为TCP数据包,则对TCPCounter中对应的索引位进行计数操作,若为UDP数据包,则对UDPCounter中对应的索引位进行计数操作,统计到达交换机的TCP和UDP流量的包数和字节数;
2.按单位时间读取TCPCounter和UDPCounter的值,与上一单位时间的值相减,得到单位时间内的TCP包数和字节数、UDP包数;
3.以固定长度和步长的滑动窗口存储各个单位时间的数据,形成检测窗口;
4.根据检测窗口中的数据计算,提取流量特征,计算检测窗口中TCP包数和TCP字节数的平均值,以及UDP包数的标准差,得到网络流量的平均TCP包数、平均TCP字节数、UDP包数标准差作为特征数据。
图2为基于本发明方法构建DLDoS攻击检测模型的流程图。使用训练数据训练极限学习机,基于鲸鱼优化算法确定其输入层和隐含层的连接权值、隐含层的阈值,并训练得到其最优的隐含层和输出层间的权值矩阵β,从而构建DLDoS攻击检测模型,具体如下:
1.对到达交换机的TCP流量与UDP流量数据进行采样,存储于滑动窗口中,并对采集的数据进行特征提取,得到流量特征数据;
2.对检测窗口进行打标签处理,其中标签0表示该窗口没有受到DLDoS攻击,标签1表示该窗口受到DLDoS攻击,将各检测窗口的特征数据与其对应的标签作为训练数据;
3.使用训练数据,利用鲸鱼优化算法确定参数,训练极限学习机,构建DLDoS攻击检测模型,主要包括以下两步:
3.1参数确定。使用鲸鱼优化算法确定极限学习机的权值和阈值,使得该组权值和阈值下训练出的DLDoS攻击检测模型检测攻击的效果最好。在选择中,极限学习机的权值和阈值以向量的形式表示,即鲸鱼优化算法的位置向量;权值和阈值的总数即为空间维度数。将训练数据分为A、B、C、D四组,A组数据作为训练数据,B、C、D组数据作为测试数据,适应度值f为相应权值和阈值向量下,使用A组数据训练极限学习机得到的DLDoS攻击检测模型,对B、C、D组数据进行检测的检测效果,计算公式为:
其中FNRB、FNRC、FNRD分别为使用A组数据训练极限学习机得到的DLDoS攻击检测模型对B、C、D组数据进行检测的假阳性率;FPRB、FPRC、FPRD分别为使用A组数据训练极限学习机得到的DLDoS攻击检测模型对B、C、D组数据进行检测的假阴性率,优化选择过程为:
1)初始化种群数量、种群的位置向量,得到初始最优位置向量X*和最优适应度值f*;
2)迭代搜索更新X*和f*,若f*的值小于预设的值F,或迭代次数达到N,停止迭代,此时的X*为最终的最优位置向量,向量中各个元素的值即为最终确定的极限学习机的权值和阈值。
3.2模型训练。训练过程中,将训练数据中的特征数据作为输入层,表示为X={xi|i=1,2,...,n},每个xi为一组特征数据,一共有n组特征数据;将训练数据中的标签作为输出层,表示为T={ti|i=1,2,...,n},ti为xi对应的标签;使用Sigmoid函数作为极限学习机的激活函数,公式为:
将极限学习机输入层和隐含层的连接权值、隐含层的阈值分别表示为{wj|j=1,2,...,L}、{bj|j=1,2,...,L},L为隐含层神经元个数,极限学习机的训练过程为:
1)将输入层的每组特征数据xi乘上对应权值wj加上阈值bj,再经过激活函数g(x)处理,得到其对应的隐含层神经元的输出,每个神经元的输出的计算公式为:
hj(xi)=g(wjxi+bj)
输入层X对应的每个隐含层神经元的输出可以表示为hj(X),由此得到隐含层输出矩阵H=[h1(X),...,hL(X)];
2)根据H求解得到使训练误差最小的隐含层和输出层间的权值矩阵β,完成极限学习机的训练,为避免过拟合,引入L2正则化项,β的求解公式为:
其中为矩阵H的MP广义逆矩阵,求解公式为:
其中C为正则化系数,训练得到的极限学习机,即为最终的DLDoS攻击检测模型。
图3为基于本发明方法进行DLDoS攻击缓解的流程示意图。进行攻击缓解时,使用P4语言编程数据平面,在数据平面以极短的固定时间段s为单位统计各源IP地址到目的IP地址的数据包数,以此为依据判定异常IP,并将异常IP上报控制器,存入攻击源IP黑名单中,控制器基于数据平面中P4语言编写好的数据包处理逻辑对交换机部署相关规则,使交换机对来自黑名单中IP的数据包执行丢包动作,进行攻击缓解。
数据包数统计及异常IP判定中,定义两个多位寄存器Register1、Register2,Register1用于记录各源IP地址到达交换机的数据包数量,使用Hash函数将数据包源IP地址转换为一个索引值,使得每个源IP地址都有一个索引值与其对应,当数据包到达时,计算其源IP对应的索引值,并对Register1相应索引位的值加一;Register2用于记录来自各源IP地址的数据包数超过阈值R的次数,当包数超过R时,对其相应索引位的值加一。定义一个一位寄存器Register3,用于存储上一时间的值,每当有数据包达到交换机,读取Register3的值得到上一时间,并从数据包进入时携带的时间戳元数据得到当前时间的值,若该时间与上一时间间隔超过s,查看Register1中该数据包源IP地址的累计包数,若包数超过R,则查看Register2相应位置的值,若值小于M,对该位的值加一;若值等于M,则判定此源IP为异常IP,将此IP上报给控制器,对该位的值加一;若值大于M,不做处理,完成上述工作后,将Register3的值更新为当前时间,并将Register1中相应位置的值重置为0。
异常IP上报中,利用P4语言中的Digest操作将异常IP上报给控制器,控制器收到Digest信息后,提取得到异常IP地址,存入攻击源IP黑名单中,此黑名单在程序中实际上是一个名为drop_list的列表。
部署交换机流表规则时,控制器根据drop_list列表中的信息,基于数据平面中P4语言编写好的数据包处理逻辑对交换机部署相关规则,使交换机对来自drop_list中的异常IP的数据包匹配执行丢包操作。在P4语言编程中重复下发相同规则会出现报错,因此为避免规则的重复下发,在对一个异常IP进行处理后,将其从黑名单中删除,对黑名单进行更新,保证黑名单中IP均为待处理的异常IP。
图4为数据平面中基于机器学习的DLDoS攻击检测与缓解的流程图。主要包括网络数据采样、流量特征提取、攻击判定检测以及攻击缓解四个部分。网络数据采样基于P4语言编程数据平面包处理逻辑实现,实时获取软件定义网络中到达交换机的TCP流量与UDP流量数据,并维持固定长度和步长的滑动窗口存储采集的数据,形成当前检测窗口;流量特征提取是计算检测窗口中网络流量的平均TCP包数、平均TCP字节数、UDP包数标准差,并将其作为特征数据;攻击判定检测中,将特征数据输入构建的DLDoS攻击检测模型进行检测,如果输出结果为1,则判定对应的检测窗口存在DLDoS攻击,否则判定对应的检测窗口不存在DLDoS攻击,若相邻的k个检测窗口均被判定为攻击存在,则认为网络中遭受了DLDoS攻击,当判定网络中遭受了DLDoS攻击且未部署缓解策略时,部署攻击缓解策略对攻击进行实时响应;攻击缓解中使用P4语言编程数据平面,统计流量信息,判定异常IP并上报控制器,控制器基于数据平面中已经用P4语言编写好的数据包处理逻辑部署交换机规则,对来自异常IP的数据包匹配相应的操作,进行丢包,对DLDoS攻击进行及时地缓解。
Claims (2)
1.数据平面中基于机器学习的DLDoS攻击检测与缓解方法,其特征在于,DLDoS是Distributed Low-rate Denial of Service,即分布式低速率拒绝服务,所述DLDoS攻击检测与缓解方法包括以下几个步骤:
步骤1、网络数据采样:实时获取软件定义网络中到达交换机的TCP流量与UDP流量信息,以一定的时间间隔为单位时间对其进行采样,并使用滑动窗口的形式存储流量数据,形成检测窗口;
步骤2、流量特征提取:对步骤1中各检测窗口的数据进行处理,计算获得TCP流量与UDP流量的特征数据;
步骤3、构建检测模型:基于机器学习方法,使用训练数据构建DLDoS攻击检测模型,模型构建中以极限学习机为基础模型,并使用鲸鱼优化算法确定其权值和阈值;
步骤4、攻击判定检测:将构建的DLDoS攻击检测模型部署于控制平面,利用其对网络状态进行实时检测,根据检测模型的输出结果判定当前网络中是否遭受了DLDoS攻击;
步骤5、攻击缓解:根据检测结果,若判定网络中遭受了DLDoS攻击且未部署缓解策略,则部署攻击缓解策略对攻击进行实时响应;
步骤1中利用P4语言,使用Counter和Hash算法,编程数据平面进行网络数据采样,得到单位时间到达交换机的TCP字节数、TCP包数和UDP包数,形成原始网络数据,并维持固定长度和步长的滑动窗口存储采集的数据,形成当前检测窗口;
步骤2中根据步骤1获取的检测窗口,计算当前检测窗口中网络流量的平均TCP包数、平均TCP字节数、UDP包数标准差作为特征数据;
步骤3中使用训练数据训练极限学习机,基于鲸鱼优化算法确定其输入层和隐含层的连接权值、隐含层的阈值,并训练得到其最优的隐含层和输出层间的权值矩阵β,从而构建DLDoS攻击检测模型,具体可以分为三个步骤:
步骤3.1、基于步骤1中所述的网络数据采样方法采集网络流量,并使用步骤2中所述的流量特征提取方法计算检测窗口的特征数据;
步骤3.2、对检测窗口进行打标签处理,其中标签0表示该窗口没有受到DLDoS攻击,标签1表示该窗口受到DLDoS攻击,将各检测窗口的特征数据与其对应的标签作为训练数据;
步骤3.3、根据步骤3.2获得的训练数据,将训练数据中的特征数据作为输入层、标签作为输出层,使用Sigmoid函数作为激活函数,结合鲸鱼优化算法,训练极限学习机,构建攻击检测模型,训练过程中引入L2正则化项求解β,以避免过拟合;
步骤4中使用构建的DLDoS攻击检测模型进行攻击检测,具体可以分为三个步骤:
步骤4.1、基于步骤1中所述的网络数据采样方法采集网络流量,并使用步骤2中所述的流量特征提取方法计算检测窗口的特征数据;
步骤4.2、将得到的特征数据输入检测模型,得到输出结果,如果结果为1,则判定对应的检测窗口存在DLDoS攻击,如果结果为0,则判定对应的检测窗口不存在DLDoS攻击;
步骤4.3、记录检测窗口的判定结果,若相邻的k个检测窗口均被判定为攻击存在,则认为网络中遭受了DLDoS攻击,否则认为网络中没有遭受DLDoS攻击;
步骤5中使用P4语言编程数据平面统计流量信息,定义交换机规则,对DLDoS攻击进行及时地缓解,具体可以分为三个步骤:
步骤5.1、使用Register、Hash算法和时间戳在数据平面以极短的固定时间段s为单位,统计各源IP地址到目的IP地址的数据包数,若来自某源IP地址的数据包数超过阈值R的次数超过M,则判定该源IP为异常IP;
步骤5.2、数据平面使用Digest操作将异常IP上报控制器,存入攻击源IP黑名单中;
步骤5.3、控制器对交换机增加流表规则,使交换机对来自黑名单中IP的数据包执行相应的丢包操作,实现对DLDoS攻击的缓解,其中交换机增加的流表规则对应的操作通过P4语言编程数据平面实现,在满足条件时被匹配执行。
2.根据权利要求1中所述的DLDoS攻击检测与缓解方法,其特征在于,对于步骤3.3的极限学习机的训练,利用鲸鱼优化算法搜索选择,得到极限学习机需要预先设定的输入层和隐含层的连接权值、隐含层的阈值,可以使训练得到的检测模型在对DLDoS攻击进行检测时达到更好的检测效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211272336.4A CN115589323B (zh) | 2022-10-18 | 2022-10-18 | 数据平面中基于机器学习的DLDoS攻击检测与缓解方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211272336.4A CN115589323B (zh) | 2022-10-18 | 2022-10-18 | 数据平面中基于机器学习的DLDoS攻击检测与缓解方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115589323A CN115589323A (zh) | 2023-01-10 |
CN115589323B true CN115589323B (zh) | 2024-04-02 |
Family
ID=84779695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211272336.4A Active CN115589323B (zh) | 2022-10-18 | 2022-10-18 | 数据平面中基于机器学习的DLDoS攻击检测与缓解方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115589323B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414924A (zh) * | 2008-11-27 | 2009-04-22 | 浪潮电子信息产业股份有限公司 | 一种利用网络传输的分区广播方法 |
US9231965B1 (en) * | 2014-07-23 | 2016-01-05 | Cisco Technology, Inc. | Traffic segregation in DDoS attack architecture |
CN112804250A (zh) * | 2021-01-29 | 2021-05-14 | 湖南大学 | 基于集成学习和寻峰算法的LDoS攻击检测与缓解方案 |
WO2021088372A1 (zh) * | 2019-11-04 | 2021-05-14 | 重庆邮电大学 | SDN网络中基于神经网络的DDoS检测方法及系统 |
CN114021135A (zh) * | 2021-11-15 | 2022-02-08 | 湖南大学 | 一种基于R-SAX的LDoS攻击检测与防御方法 |
-
2022
- 2022-10-18 CN CN202211272336.4A patent/CN115589323B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414924A (zh) * | 2008-11-27 | 2009-04-22 | 浪潮电子信息产业股份有限公司 | 一种利用网络传输的分区广播方法 |
US9231965B1 (en) * | 2014-07-23 | 2016-01-05 | Cisco Technology, Inc. | Traffic segregation in DDoS attack architecture |
WO2021088372A1 (zh) * | 2019-11-04 | 2021-05-14 | 重庆邮电大学 | SDN网络中基于神经网络的DDoS检测方法及系统 |
CN112804250A (zh) * | 2021-01-29 | 2021-05-14 | 湖南大学 | 基于集成学习和寻峰算法的LDoS攻击检测与缓解方案 |
CN114021135A (zh) * | 2021-11-15 | 2022-02-08 | 湖南大学 | 一种基于R-SAX的LDoS攻击检测与防御方法 |
Non-Patent Citations (2)
Title |
---|
LDoS Attack Detection Based on ASNNC-OFA Algorithm;李欣萌;《2021 IEEE Wireless Communications and Networking Conference(WCNC)》;20210505;全文 * |
一种针对LDoS攻击的分布式协同检测方法;何炎祥;《小型微型计算机系统》;20090315;第30卷(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115589323A (zh) | 2023-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981691B (zh) | 一种面向SDN控制器的实时DDoS攻击检测系统与方法 | |
CN107959690B (zh) | 基于软件定义网络的DDoS攻击跨层协同防御方法 | |
WO2021088372A1 (zh) | SDN网络中基于神经网络的DDoS检测方法及系统 | |
CN108848095A (zh) | SDN环境下基于双熵的服务器DDoS攻击检测与防御方法 | |
Husain et al. | Development of an efficient network intrusion detection model using extreme gradient boosting (XGBoost) on the UNSW-NB15 dataset | |
CN104506385B (zh) | 一种软件定义网络安全态势评估方法 | |
CN111756634A (zh) | 一种基于强化学习的舰载网络性能自优化方法 | |
CN108183917A (zh) | 基于软件定义网络的DDoS攻击跨层协同检测方法 | |
CN111786951B (zh) | 流量数据特征提取方法、恶意流量识别方法及网络系统 | |
CN113660209B (zh) | 一种基于sketch与联邦学习的DDoS攻击检测系统及应用 | |
CN111367908A (zh) | 一种基于安全评估机制的增量式入侵检测方法及系统 | |
Kamath et al. | Machine learning based flow classification in DCNs using P4 switches | |
CN110351303B (zh) | 一种DDoS特征提取方法及装置 | |
CN110138681B (zh) | 一种基于tcp报文特征的网络流量识别方法及装置 | |
CN115589323B (zh) | 数据平面中基于机器学习的DLDoS攻击检测与缓解方法 | |
Nsaif et al. | ML-based online traffic classification for SDNs | |
Wu et al. | Detection of improved collusive interest flooding attacks using BO-GBM fusion algorithm in NDN | |
Xie et al. | Online elephant flow prediction for load balancing in programmable switch based DCN | |
Li et al. | Robust online learning against malicious manipulation with application to network flow classification | |
Atli et al. | Network intrusion detection using flow statistics | |
CN113949550B (zh) | 一种SDN环境下的DDoS攻击检测方法 | |
Arifuzzaman et al. | Towards generalizable network anomaly detection models | |
Meamarian et al. | A Robust, Lightweight Deep Learning Approach for Detection and Mitigation of DDoS Attacks in SDN | |
Le et al. | A novel machine learning-based network intrusion detection system for software-defined network | |
CN111064706B (zh) | 一种mRMR-SVM的空间网络数据流检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |