SDN中DDoS攻击检测与混合防御技术

2025-01-17 00:00:00李小菲陈义
现代电子技术 2025年2期
关键词:软件定义网络

摘" 要: DDoS攻击是软件定义网络(SDN)安全领域的一大威胁,严重威胁网络控制器及交换机等设备的正常运行,因此提出一种SDN中DDoS攻击检测与混合防御技术。在DDoS攻击检测方面,利用卡方检验值对SDN中控制器收到的Packet_In数据流内数据帧数量进行统计分析,将高于数据流卡方阈值的数据流初步判断为可疑流;继续计算数据流与可疑流的相对Sibson距离,区分可疑流是DDoS攻击流还是正常突发流;最后通过计算数据流之间的Sibson距离,根据DDoS攻击流的特征,确定攻击流是否为DDoS攻击流。在DDoS攻击防御方面,采用共享流表空间支持和Packet_In报文过滤方法混合防御,被DDoS攻击的交换机流表空间过载,将过载流表引流到其他交换机,从而完成数据层的防御;溯源得到DDoS攻击MAC地址并进行 Packet_In数据流过滤,完成控制层的防御。实验结果表明,所提方法可有效检测软件定义网络交换机和控制器内的DDoS攻击流,能够防御不同的DDoS攻击。

关键词: 软件定义网络; DDoS攻击流; 攻击检测; 混合防御; 卡方检验值; Sibson距离; 流表空间共享

中图分类号: TN929.5⁃34; TP393.08" " " " " " "文献标识码: A" " " " " " " " " " " 文章编号: 1004⁃373X(2025)02⁃0085⁃05

DDoS attack detection and hybrid defense technology in SDN

LI Xiaofei1, CHEN Yi2

(1. Information Technology Center, Hebei University, Baoding 071002, China; 2. Computer Teaching Department, Hebei University, Baoding 071001, China)

Abstract: DDoS attack is a major threat in the security field of software⁃defined network (SDN), which seriously threatens the normal operation of network controllers, switches and other devices. Therefore, a DDoS attack detection and hybrid defense technology in SDN is proposed. In terms of DDoS attack detection, the statistical analysis of the number of data frames in the Packet⁃IN data stream received by the controller in SDN is conducted by means of chi⁃square test values. The data streams above the card side threshold of the data stream are judged preliminarily as suspicious streams. The relative Sibson distance between the data stream and the suspicious stream is calculated sequentially to distinguish whether the suspicious stream is a DDoS attack flow or a normal burst flow. The Sibson distance between data flow is calculated to determine whether the attack flow is a DDoS attack flow based on the features of the DDoS attack flows. In terms of DDoS attack defense, the hybrid defense is conducted by mean of shared flow tablespace support and Packet⁃IN packet filtering. The flow tablespace of the switch attacked by DDoS is overloaded, and the overloaded flow table is drained to other switches to complete the defense at the data layer. The MAC address of DDoS attack is traced, and the Packet_In data flow is filtered to complete the defense of control layer.The experimental results show that the proposed method can effectively detect DDoS attack flows in SDN switches and controllers, and can defend against different DDoS attacks.

Keywords: software⁃defined network; DDoS attack flow; attack detection; hybrid defense; chi⁃square test value; Sibson distance; flow tablespace sharing

0" 引" 言

软件定义网络是一种全新的、可靠的网络架构,它可以有效地将控制中心与传输中心隔离开来,从而实现对网络的有效管理和控制[1]。引入一个集中的控制器来管理网络流量和策略,交换机按照控制器发出的指令转发数据。软件定义网络中的应用程序编程接口允许第三方开发者编写应用程序来与网络控制器进行交互,实现自定义的网络功能和服务[2]。

控制器受到攻击后,软件定义网络可能会被恶意用户利用而受到影响,导致网络服务中断或数据泄露[3]。交换机负责转发软件定义网络流量和响应控制器指令。攻击者可以通过攻击网络拓扑来影响交换机的正常工作,通过发送虚假的数据流信息来诱使交换机进行错误的转发操作[4]。

通过DDoS攻击检测与混合防御及时检测出DDoS攻击流量,并对攻击采取防御手段[5]。对DDoS攻击特征进行分析,发现潜在的安全威胁,提前设置防御设施,提高软件定义网络的安全性。综合运用多种防御手段对DDoS攻击进行有效抵御,避免网站或应用响应缓慢甚至无法访问。即使某一层防御被突破,其他层防御仍然能够继续发挥作用,从而保护软件定义网络顺利运行[1]。

例如:文献[6]提出先提取流表信息特征,基于梯度下降的优化算法的深度神经网络进行DDoS攻击检测的方法,梯度下降算法运用在非凸函数中,算法找到的最优点可能是局部最优值,并非整个函数空间整体最优值。文献[7]通过条件熵和机器学习获取数据流特征后,通过粗粒度和细粒度相结合的检测模块检测DDoS攻击。队列论研究基于纯理论环境,与实际网络环境可能存在偏差,导致DDoS攻击检测结果存在误差。文献[8]利用软件定义网络数据层资源来降低控制层开销,通过快速数据路径规则防御DDoS攻击。快速路径规则处理软件定义网络的DDoS攻击流程相对简单,但当面对大量深层次的攻击时,难以排除网络故障。文献[9]提取正常流量的性能特征,通过一个轻量级实时框架进行DDoS攻击检测。轻量级框架可扩展性较好,但是限制比较大,如果面对大量的流量攻击,轻量级实时框架效果欠佳。

通过计算卡方检验值和Sibson距离可以定义SDN中的DDoS攻击检测。首先,从网络中抽取一段时间内的数据流,并根据卡方检验值来判断是否存在攻击。如果检验值大于阈值,则将其定义为可疑流;接着,计算可疑流与正常数据流之间的相对Sibson距离,如果其超过了阈值,则定义为可疑流;最后,如果可疑流之间的Sibson距离低于预设的阈值,则可以断定它是一个受到DDoS攻击的流量,从而实现DDoS攻击的检测。DDoS攻击混合防御即在数据层面采用共享流表空间支持进行防御,利用不同交换机空闲空间分享被攻击交换机空间过载流量,使软件定义网络数据层顺利运行;在控制层面,采用Packet_In报文的过滤方法进行防御,溯源得到攻击节点MAC地址,将MAC地址发出的Packet_In报文过滤,防御成功。通过对软件定义网络的DDoS攻击检测和混合防御的深入研究,可以构建一个强大、可靠的防御体系,以保障软件定义网络的安全性。

1" DDoS攻击检测与混合防御

1.1" 基于Sibson距离的软件定义网络中DDoS攻击检测

在软件定义网络中多个交换机会获取DDoS攻击者发送的大量伪造流,这种情况下交换机不能有效获取相关的流表项,会将大规模的Packet_In数据流传输到控制器中。通过卡方检验可以准确地估算控制器接收的Packet_In数据流中的帧数。具体的卡方检验值可以通过以下公式来表示:

[X2df=i=1KOi-Ei2Ei] (1)

式中:[Oi]是一个时间段内控制器接收到的Packet_In数据帧总数;[Ei]是正常网络状态下控制器接收到的数据流内数据帧的个数;时间段用[K]表示。当没有DDoS攻击的情况下,控制器接收的数据帧数量保持稳定,卡方检验值也相对较小;但是,一旦发生了DDoS攻击,控制器内接收的Packet_In数据帧数量会急剧增加,从而导致卡方检验值急剧上升,甚至出现偏差,这种情况称为可疑流。

由于正常突击流也会导致卡方检验值突然增大,因此为了有效划分正常突击流以及攻击流,则应在DDoS攻击流不同特征一致[10]的前提下,假设一个时间间隔内软件定义网络交换机发送的正常Packet_In数据流内数据帧长度为[Ln],那么数据流长度为[L=l1,l2,…,ln],控制器接收到的数据流数量为[M=m1,m2,…,mn],正常数据流数据帧长度的概率分布公式为:

[pli=mij=1nmj] (2)

同理将DDoS攻击流数据量代入到公式(2)内,用[q(li)]描述可疑流数据帧长度概率分布。将基于[q(li)]的Sibson距离与特定的阈值进行对比,以此来判断该可疑流是否属于攻击性的数据。用公式(3)描述正常数据流和可疑流之间的相对Sibson距离、流间Sibson距离。

[DSP,Q=12DHP,HP+HQ2+DHQ,HP+HQ2] (3)

正常流[P]和可疑流[Q]的信息熵为:

[HP=-i=1np(li)log2 p(li)] (4)

[HQ=-i=1nq(li)log2 q(li)] (5)

式中:正常以及可疑数据流数据帧长度的概率分布用[p(li)]和[q(li)]描述。

1.2" 软件定义网络中DDoS攻击混合防御

经过1.1节检测,数据流为DDoS攻击流,本节研究DDoS攻击混合防御。

DDoS攻击流到达时,被攻击交换机为了匹配DDoS攻击流量对应流表项,会自动建立新的流表项。由于被攻击交换机流表空间有限,交换机会删除正常数据流的流表项用以存储新的流表项,删除流表项的速度远远落后于DDoS攻击流到达的速度,有限的流表空间会被迅速占满[11]。为了将DDoS攻击带来的危害降低,本文提出一种交换机流表空间共享的策略,即在软件定义网络控制器上安装共享流表空间支持程序,当一个交换机的流表空间不足时,控制器中的共享流表空间支持程序发出信号,寻找软件定义网络中其他交换机未用的流表空间来创建新流表。这样就可以阻止被DDoS攻击交换机流表空间被耗尽,保证交换机能够正常运行。

设软件定义网络中有[K]个交换机,交换机[S0lt;Slt;K+1]连接有[NS]个主机。设交换机的流表空间[LS]分为两部分,分别为已用空间为[LSu]和未用空间[LSn],则有:

[LS=LSu+LSn] (6)

如果全部交换机流表空间[LS]一致,则用[Lt]表示流表空间过载阈值。划分交换机流表空间状态机优先级,同时考虑软件定义网络内当前空间共享交换机连接其他交换机数量、与被攻击交换机之间的距离以及当前共享交换机使用率情况,选择空间共享交换机优先级为1和2的交换机进行优先处理。设当前要优先处理的空间共享交换机与其他交换机连接的数量为[N],其可表示为:

[N=N1,N2,…] (7)

令当前要优先处理的空间共享交换机与被攻击的交换机的距离为[D],[D]的大小由与其他共享交换机的跳数[d]来决定,距离短的共享交换机优先选择,则有:

[D=d1,d2,…,dk] (8)

令[S]表示交换机,[U]表示交换机使用率,该交换机下连接有[NS]个主机,设每个主机的新流请求率为[u0],交换机在一定时间内的请求率越低,则相对使用率越低,表示交换机比较空闲。空闲的交换机能更快速地处理DDoS攻击流,不会对共享交换机造成过载问题。

[U=NS·u0] (9)

经过归一处理后,空间共享交换机选择权值[W]为:

[W=LSn·w1+N·w2+D·w3+U·w4] (10)

以公式(10)结果为基础,选择权值最大的作为优先选择共享交换机。

利用共享交换机空闲的流表空间创建新流表,释放被攻击交换机的过载空间[12],各个共享交换机会将各自流表空间中的流表封装成Packet_In报文,转发至软件定义网络控制器,完成软件定义网络数据层面的DDoS攻击防御。

2" 实验分析

以某软件定义网络为实验对象,共包含控制器1台、交换机4台、终端用户12台。在该软件定义网络系统中,交换机及控制器为DDoS攻击流的目标。利用本文方法在实验对象的软件定义网络内检测DDoS攻击,并获取DDoS攻击防御结果。攻击检测和防御效果如表1所示。

分析表1可知,在软件定义网络内对交换机和控制器进行6次DDoS攻击,使用本文方法对6次DDoS攻击检测中,仅存在1次正常突击流检测为DDoS攻击流的情况,其余检测结果均与软件定义网络的实际流量相符,且混合防御结果仅失败1次。上述结果表明,本文方法在检测软件定义网络DDoS攻击流过程中,可有效去除正常突击流的MAC地址,有效实现软件定义网络DDoS攻击检测并防御。

设置卡方检验阈值为3。在该阈值条件下,通过卡方检验阈值描述本文方法检测软件定义网络DDoS攻击检测能力。向软件定义网络的交换机内注入DDoS攻击流,绘制软件定义网络Packet_In数据流流量变化和该流量变化的卡方检验值,分析本文方法检测软件定义网络DDoS攻击能力,结果如图1所示。

分析图1a),软件定义网络交换机在运行过程中受到DDoS攻击时,其流量随着时间的变化呈现大幅度波动状态,其原因为:DDoS攻击软件定义网络交换机时,交换机不能对新流量的流表项进行准确匹配,使当前交换机的Packet_In数据流在60~100 s之间迅速增加。当本文方法对DDoS攻击进行防御后,软件定义网络内的交换机匹配到新流量的流表项,完成网络传输工作后,交换机的流量呈现迅速下降趋势。分析图1b),计算数据流的卡方检验值,该值随着时间的变化趋势与Packet_In数据流变化趋势整体相同,即软件定义网络交换机在受到DDoS攻击时,其卡方检验数值相对较大,且均超过卡方检验阈值。该结果表明,通过卡方检验方式可有效描述本文方法检测软件定义网络受到DDoS攻击时Packet_In数据流变化情况,本文方法可有效检测到软件定义网络内的DDoS攻击并可有效防御。

在实验环境中,设置不同类型的DDoS攻击,通过这些攻击对用户的敏感信息访问产生威胁,增强了研究提出的访问控制异常检测方法的应用有效性。不同类型DDoS攻击检测结果如表2所示。

分析表2可知,本文方法在检测软件定义网络不同类型DDoS攻击时,其数据流间Sibson距离均小于预设的数据流间Sibson距离阈值0.5。该结果表明,本文方法具备较强的DDoS攻击检测能力,可对软件定义网络不同层次内的DDoS攻击进行有效检测,且取得了较为显著的应用效果。

以软件定义网络内4台交换机作为实验对象,向4台交换机内不断注入DDoS攻击,使4台交换机均处于超负荷状态。然后运用本文方法对这4台交换机的DDoS攻击进行防御,以交换机保持时间和DDoS攻击作为衡量指标,验证本文方法对软件定义网络DDoS攻击的防御能力。DDoS攻击防御验证结果如图2所示。

分析图2可知,当软件定义网络遭受DDoS攻击时,本文方法检测到DDoS攻击,并通过空间共享转移过载流表方式对DDoS攻击进行防御。在实验过程中,4台交换机的DDoS攻击时间均低于交换机持续时间,表明本文方法在防御DDoS攻击时,其在持续时间中对交换机Packet_In报文进行过滤;当DDoS攻击结束后,4台交换机依然持续对Packet_In报文进行过滤。该结果说明本文方法抵御DDoS攻击能力较强,可有效保障软件定义网络正常稳定运行。

3" 结" 论

本文提出的软件定义网络中DDoS攻击检测与混合防御方法能够实时监控网络流量,当发现异常流量时,混合防御通过在网络的不同层次部署相应的防御设备和策略,形成多层次的防护屏障。这种多层次防护能够有效抵御来自不同方向和不同层次的攻击,提高整体防御效果,使软件定义网络稳定运行。

参考文献

[1] 熊婉寅,毛剑,刘子雯,等.软件定义网络中流规则安全性研究进展[J].西安电子科技大学学报,2023,50(6):172⁃194.

[2] 李立峰.基于软件定义网络的技术分析:评《时间敏感网络技术及发展趋势》[J].科技管理研究,2023,43(7):258.

[3] 张元龙,廖晓群,张佳庚.基于网络拓扑划分的大规模SDN控制器部署[J].计算机工程与设计,2022,43(9):2485⁃2492.

[4] 沈剑良,王崇越,汤先拓,等.提高软件定义网络交换机存储能力的流表压缩算法[J].西安交通大学学报,2022,56(11):186⁃194.

[5] 刘台,朱超,程意,等.基于SDN的战术通信网络架构研究[J].电信科学,2022,38(10):120⁃130.

[6] 刘振鹏,王仕磊,郭超,等.软件定义网络中基于深度神经网络的DDoS攻击检测[J].云南大学学报(自然科学版),2022,44(4):729⁃735.

[7] 谢汶锦,张智斌,张三妞.基于软件定义网络的DDoS攻击检测方案[J].重庆邮电大学学报(自然科学版),2022,34(6):1032⁃1039.

[8] 葛晨洋,刘勤让,裴雪,等.软件定义网络中高效协同防御分布式拒绝服务攻击的方案[J].计算机应用,2023,43(8):2477⁃2485.

[9] TANG D, YAN Y, ZHANG S, et al. Performance and features: mitigating the low⁃rate TCP⁃targeted DoS attack via SDN [J]. IEEE journal on selected areas in communications, 2022, 40(1): 428⁃444.

[10] CHOUHAN R K, ATULKAR M, NAGWANI N K. A framework to detect DDoS attack in Ryu controller based software defined networks using feature extraction and classification [J]. Applied intelligence, 2023, 53(4): 4268⁃4288.

[11] 李彬,魏吟娬,祁兵,等.基于EEMD⁃LSTM的需求响应终端DDoS攻击检测方法[J].电力建设,2022,43(4):81⁃90.

[12] 谢燕,张爽.SDN中多控制器均衡部署优化方法仿真[J].计算机仿真,2023,40(7):378⁃381.

[13] 韦睿,祝长鸿,王怡,等.基于软件定义网络和移动边缘计算的车联网高效任务卸载方案[J].计算机应用研究,2023,40(6):1817⁃1824.

猜你喜欢
软件定义网络
面向未来的传输综合网管系统演进研究
移动通信(2016年23期)2017-03-07 16:28:25
基于队列树的SDN控制器高效消息处理机制
中国联通SDN的思考和应用实例
业务功能链技术及其应用探析
针对大规模软件定义网络的子域划分及控制器部署方法
一种新的SDN架构下端到端网络主动测量机制
超高吞吐率Wi—Fi融合应用新技术分析
移动通信(2016年20期)2016-12-10 09:22:49
SDN在传送网络的引入与应用分析
SDN/NFV技术接入网应用
3SNetworking:面向业务、安全增强的软件定义网络