APP下载

软件定义网络中的分布式拒绝服务攻击抑制模型

2017-11-22龚庆祥

深圳大学学报(理工版) 2017年6期
关键词:IP地址评判交换机

闫 巧,龚庆祥,于 非

深圳大学计算机与软件学院,广东深圳 518060

【电子与信息科学/ElectronicsandInformationScience】

软件定义网络中的分布式拒绝服务攻击抑制模型

闫 巧,龚庆祥,于 非

深圳大学计算机与软件学院,广东深圳 518060

针对软件定义网络(software defined networking, SDN)中控制器受到分布式拒绝服务(distributed denial of service, DDoS)攻击致使SDN网络可能面临单点失效的威胁,提出抑制SDN网络中DDoS攻击的模型.该模型主要是在SDN应用层上扩展DDoS检测模块和MSlot(multiple timeslot)算法模块.在DDoS攻击检测上,DDoS检测模块采用模糊综合评判决策模型,通过综合多个流特征指标实时检测DDoS的发生,并使用DDoS综合评判分数描述DDoS攻击的强度.在应对DDoS攻击流策略上,MSlot算法模块根据检测结果采取相应的时间片分配策略,确保SDN网络在DDoS攻击下可有效保护合法用户的通信.为测试DDoS抑制模型,通过仿真模拟不同攻击强度的DDoS攻击.结果表明,在SDN网络中,相比某些基于单因素评判指标的DDoS攻击检测算法,采用模糊综合评判决策模型在检测率和精确度上更有优势;在DDoS攻击时,MSlot算法模块根据检测结果采取相应的时间片分配策略相比某些只使用多个逻辑队列轮询机制的SDN控制器调度算法可更有效地保护合法用户的通信质量.

通信系统;软件定义网络;OpenFlow协议;分布式拒绝服务攻击;模糊综合评判决策模型

传统分布式网络中存在配置复杂、设备利用率低等缺点.软件定义网络(software defined network, SDN)是一个全新设计的网络架构,它将控制平面和数据平面相互分离、采用逻辑集中的网络管理和控制机制[1],不仅简化了网络配置,而且大幅提高了网络的利用率[1].关于SDN技术最典型的用例当属Google数据中心互联的B4网络[2].B4的集中流量工程服务驱动链路达到将近100%的利用率.分布式拒绝服务(distributed denial of service, DDoS)攻击是破坏服务或网络可用性的主要手段.近几年,云计算环境的特征[3](如按需自服务、广泛的网络接入和快速弹性机制、资源池的使用和可度量的服务等)导致DDoS攻击在云计算环境下持续增长并更加难以控制.

SDN控制器可以被当作整个网络的“大脑”,它持有底层网络的全部信息,控制网络所有底层设备的网络流处理.若控制器因受到DDoS攻击无法正常工作,整个SDN网络将不能正常工作,即SDN网络可能面临单点失效.如何利用SDN网络架构的优势,及时准确地检测出SDN网络中的DDoS攻击成为SDN网络能否被广泛应用的首要问题.目前,国内外已提出一些在SDN网络中应对DDoS攻击的解决方案.针对SDN控制器的北向接口安全问题,如许多开源控制器都使用不同编程语言开发提供的北向应用程序编程接口(application programming interface, API),语言本身的安全性直接关系到应用层的安全问题[4].Baria等[5]检查同一个IP发起请求的间隔时间和每个IP对每个统一资源标识符(uniform resource identifier, URI)的请求次数等是否超过阈值来判断基于代表性状态传输(representational state transfer, REST)的Web服务是否受到DDoS攻击.针对控制器DDoS攻击问题,Dao等[6]利用基于源端IP地址过滤技术来应对SDN网络中DDoS攻击,通过区分不同用户并对其采取不同的策略.当攻击流不是很大时,算法工作良好.但必须先调查所在网络并初始化检测算法的参数.算法检测结果的不确定性将增加.Lim等[7]提出在SDN控制器POX上编写应用,尝试区分僵尸主机和合法主机,把合法客户重新导向真实的Web服务端口.然而该应用只能被用于检测针对Web服务器的DDoS攻击,缺乏通用性.Yan等[8]提出基于Apache Spark的DDoS检测和缓解框架,该方法因使用Apache Spark检测后反馈SDN控制器做不到控制器应用那样的实时性.Mousavi等[9]提出基于目的IP地址熵值的变化来检测SDN网络中的DDoS攻击.尽管该方法是轻量级且有效,但该方法缺乏对多个流特征指标的综合考虑.现有文献大多都是集中在利用SDN的全局管控,在被攻击的交换机上采取策略来缓解攻击流,从而提供对DDoS攻击的抵抗性.Lim等[10]提出设计SDN控制器的流处理机制来抵抗SDN网络中DDoS攻击问题,提出一个多队列SDN控制器调度算法MultiQ.SDN控制器的单队列流处理机制被逻辑上划分为与多个交换机相对应的逻辑队列,使用轮询机制来处理来自不同交换机的流请求.算法可在一定程度上保护内部SDN交换机(间接受DDoS攻击流影响的交换机),但是该算法既没有和现有的DDoS检测算法相结合,也没有对受不同程度DDoS攻击的交换机采取相应的保护策略.

本研究针对Mousavi等[9-10]所提解决方案的不足,提出SDN网络中DDoS攻击抵抗模型来应对SDN网络中的DDoS攻击问题.

1 SDN网络中的DDoS攻击抑制模型

1.1 模型提出

鉴于SDN控制层面临单点失效的威胁,为保证SDN网络在DDoS攻击下合法用户的流请求被及时处理,保证SDN网络的可用性,本研究提出SDN网络中DDoS攻击抑制模型,如图1.

图1 SDN网络中DDoS攻击抑制模型Fig.1 The inhibition model of DDoS attacks in SDN networks

该模型主要是在应用层上扩展应用模块,包括DDoS检测模块和MSlot(multiple timeslot)算法模块.DDoS检测模块针对Mousavi等[9]基于单个流特征指标的不足,提出采用多流量指标.模糊综合评判决策模型可综合多个流特征指标实时检测DDoS的发生,检测结果通过一个DDoS综合评判分定量描述DDoS的攻击程度[11].MSlot算法模块针对Lim等[10]指出多个逻辑队列轮询机制MultiQ的不足,提出基于时间片分配策略的多队列SDN控制器调度算法.根据检测报告采取相应的时间片分配策略,确保SDN网络在DDoS攻击下可以有效保护合法用户的通信[12].图1为SDN网络场景和模型图,当各个OpenFlow交换机下的合法用户群向服务器发起访问,同时攻击主机群也向服务器发起DDoS攻击时,大量的恶意流请求在OpenFlow交换机上生成并发送到SDN控制器上,引起SDN控制器的DDoS攻击,造成合法用户的流请求不能被及时处理.为此,本研究提出SDN网络中DDoS抑制模型.

1.2 DDoS检测模块及检测算法

DDoS检测模块使用基于模糊综合评判模型检测算法,检测结果采用DDoS综合分数来定量的描述DDoS攻击,见图2.

图2 DDoS检测模块实现过程Fig.2 The implementation of DDoS detection module

SDN控制器的全局网络视图有利于实现对网络中各种流特征统计(图2).首先,获取评判因素U中的元素.因为当DDoS攻击发生时,SDN网络的流请求速率会更大,目的IP地址将会更汇聚,源端IP地址也会更发散.同时,考虑到针对服务器上某个应用的DDoS攻击,目的TCP端口也会更汇聚.因此,本研究通过提取DDoS攻击发生时代表性的流特征指标FRR、DstPort、DstIP和SrcIP进行统计.然后,使用熵值对大部分因素进行量化.最后,采用模糊综合评判决策模型求得DDoS综合评判分数,定量描述DDoS的发生,把检测结果发送给MSlot算法模块进行后续处理.

数学模型.模糊综合评判决策模型的数学模型由评价因素U、 评价因素值V和单因素评判矩阵R组成.rij为方案在第i个评价因素处于第j级评语的隶属度.在算法检测期间,第j级评语的隶属度代表着第j个检测周期T对评价因素i测量的隶属度值R=(rij)n×m的综合评判.当对U中多个评价因素进行综合评价时,还要对各个评价因素分别加权,组成权重矩阵W. 采用加权平均型M(·, +)可求得综合评判矩阵B.

检测算法.选择评价因素U={FRR, DstPort, DstIP, SrcIP}来指示DDoS攻击的发生,并用熵值量化某些评价因素指标(熵值是用来对不确定性的一种度量).流请求速率(flow request rate, FRR)指每秒传向SDN控制器的流请求个数;DstPort为描述目的TCP端口汇聚度的熵值;DstIP为描述目的IP地址汇聚度的熵值;SrcIP为描述源端IP地址发散度的熵值.

构建单因素评判矩阵R=(rij)4×k可由U和V的关系构成,采用隶属度函数描述.其中,k为周期的序号,k=1, 2,3,….U中的每个因素都有对应的隶属度函数.

FRR的隶属度函数为

DstPort的隶属度函数为

DstIP的隶属度函数为

SrcIP的隶属度函数为

其中,frr、edp、ed和es分别为实时获取的FRR、DstPort、DstIP和SrcIP值;FRR1、FRR3、EDP1、EDP3、ED1、ED3和ES1、ES3是通过模拟1级DDoS攻击(轻微)和3级DDoS攻击(严重,根据网络可承受攻击程度而定,在DDoS检测模块测试与分析中将具体说明如何模拟不同等级DDoS攻击)的训练参数.

一旦隶属度函数建立好,R=[μ(frrk)μ(edpk)μ(edk)μ(esk)]T,k为周期序号,k=1, 2, 3,….

最后,使用加权平均型M(·, +)可求得综合评判矩阵B.

B=W·R=w1μ(frrk)+w2μ(edpk)+

w3μ(edk)+w4μ(esk),k=1,2,3, …

DDoS检测模块采用基于模糊综合评判模型检测算法作为运行在SDN控制器之上的轻型模块,应用实时统计进入SDN控制器的流请求数据包信息,包括FRR、DstPort、DstIP和SrcIP并在每个滑动窗口(由几个周期T组成)内计算它们的熵值.使用模糊综合评判模型计算得到每个周期T的综合评判分数S(S∈[0,1]), 其代表DDoS攻击的强度,1表示SDN控制器或被攻击的服务器被DDoS攻击达到不能提供正常服务的严重程度.通过该算法,DDoS检测模块可实时通过多因素综合评判SDN网络中各个交换机受到DDoS攻击的程度.

若简单的把各交换机受到DDoS攻击程度从低到高划分为3个等级,则可通过对描述DDoS攻击程度的DDoS综合评判分数S作如下映射:

通过映射可求得交换机受到的DDoS攻击等级,当S<0.30时,可认为攻击的效果很微弱,不需启动应对策略.检测程序可根据服务器抵抗DDoS攻击的能力或使用更加智能的算法进行合理设置.

1.3 MSlot算法模块

MSlot算法模块根据DDoS检测模块的检测结果,采取时间片分配策略,确保SDN网络在DDoS攻击下可以有效保护合法用户的通信.MSlot算法模块具体实现过程见图3.

图3 MSlot算法模块实现过程Fig.3 The implementation of MSlot algorithm module

由图3可见,MSlot算法模块修改了控制器原始先进先出的物理队列模式.逻辑上划分出与多个交换机相对应的逻辑队列,通过轮询或时间片分配策略处理各个交换机逻辑队列中的流请求.修改后分为2种工作状态.当网络处于正常状态,采用轮询策略;当网络处于DDoS攻击状态,采用时间片分配策略处理.具体处于哪种状态需根据DDoS检测模块的检测结果来决策.

1.3.1 MSlot处理过程

正常情况下,MSlot算法模块将使用轮询策略处理各个OpenFlow交换机发起的流请求.在DDoS检测模块检测到存在交换机被DDoS攻击,MSlot算法模块才会启动时间片分配策略对受不同攻击程度的交换机的逻辑队列区别处理.

模块采用符号及描述如表1,MSlot算法模块主要伪代码见图4.可见,当DDoS检测模块检测到DDoS攻击发生时,MSlot算法模块初始化算法1(图5)的参数Deg_SA和Times_SJ并启用时间片分配策略.否则,正常情况下,pollingTag轮询到哪个交换机的逻辑队列就把控制器的处理能力μ(单位为reqs/s,代表每秒的请求数)分配给该逻辑队列.

表1 符号表示

图4 MSlot算法伪代码Fig.4 Pseudo code of MSlot algorithm

1.3.2 时间片分配策略

当DDoS发生时,时间片分配策略可以有效保护合法交换机的流请求并得到及时处理,从而保证合法用户群的通信质量.该策略的逻辑处理过程见图5、部分符号描述及描述见表1.策略根据交换机被攻击的等级来决定是否把本次轮询到的机会放弃.如当N=3, 交换机2被检测到攻击等级为2时,则SA2和SJ2的初始值都为2.表2给出此情况下MSlot的处理过程,表格从上而下每条记录代表着控制器轮询指标pollingTag的变化,可见在控制器每次轮询中,每次轮询到交换机2时,只有当SJ2=SA2时交换机2的逻辑队列才会被处理,出现其他情况将会跳过本次轮询,每3次轮询中交换机2逻辑队列才被处理1次.然而这符合本研究的核心思想,预留更多控制器的处理能力给那些未受攻击交换机的逻辑队列,从而达到在DDoS攻击时保护合法用户流请求可以被及时处理的效果.

图5 时间片分配策略Fig.5 Time slice allocation strategy

pollingTagSA1=0SJ1SA2=2SJ2SA3=0SJ3被跳过的交换机逻辑队列序号1020X2000X3000X1000X301021010X30202

2 性能测试与分析

使用Mininet仿真网络、POX作为SDN控制器、Scapy对DDoS攻击者群体和合法用户群体的网络流的模拟对所建模型进行测试.

2.1 DDoS检测模块测试与分析

检测模块采用多个流特征指标综合判断,在检测效率上比其他单因素检测算法要高.为体现这一点,本研究通过与基于目的IP地址熵值[9]这种单因素检测算法进行仿真对比.

图6 根据熵值划分不同DDoS攻击强度Fig.6 Different attack intensity divided according to the entropy

检测算法初始化U中各个评价因素对应隶属度函数参数是通过模拟1级DDoS攻击和3级DDoS攻击来获得.仿真对比使用文献[9]中基于目的IP地址熵值对不同DDoS攻击等级作初始化划分(图6).

为了初始化算法的参数,本研究根据网络目的IP地址熵值的范围初步划分出不同的DDoS攻击等级,从而模拟出不同强度的DDoS攻击.中部黑色加粗分隔线代表baseEntropy即无任何DDoS攻击时平均熵值,仿真中n取15,d为在无DDoS攻击下,n个检测周期T中目的IP地址熵值的最大偏差,公式为max(|Entropyi-baseEntropy|),i=1, 2, …, 15.任何攻击流导致网络目的IP地址熵值落在“正常熵值范围”标记的区域都视为正常网络流.相应地,任何导致网络目的IP地址熵值落在对应等级DDoS攻击熵值范围标记区域将会对应被视为1级、2级或3级DDoS攻击强度.值得注意的是,一般针对某个目标服务器进行DDoS攻击会使熵值小于正常熵值,但若对整个SDN网络中所有主机发起DDoS攻击(这种情况一般是针对SDN控制器发起的攻击),将使熵值高于正常熵值.通过模拟以上3种等级DDoS攻击,可初始化算法的检测参数(表3)并进行后续具体DDoS攻击的检测.

表3 检测算法的初始化参数

单因素DDoS检测方法根据DDoS发生导致目的IP地址熵值变小的特征,然而有些DDoS攻击发生并不会使熵值小于阈值,相反会使熵值变大.如通过模拟伪造源端对整个SDN网络发起的TCP泛洪攻击.对SDN网络发起不同程度的该类攻击(15%、25%和50%速率),15%表示攻击包发送速率与正常包发送速率的比值为0.15.仿真中主要参数设置(如N=3,T=10 s)为:当10个正常周期T过后,开始发送15%速率的DDoS攻击,目标是整个网络60台主机,攻击持续15T. 攻击结束后经10T再发送25%速率攻击攻击持续15T, 攻击结束再经10T后发起50%速率DDoS攻击.两种检测效率对比如图7.

图7 检测效率对比图Fig.7 Detection efficiency comparison

从图7可见,整个SDN网络的DDoS攻击绕过了基于目的IP地址熵值的DDoS检测,然而本研究提出的检测算法由于同时考虑到FRR、DstPort和SrcIP等流特征指标进行综合判断,所以还是可以检测出不同程度的DDoS综合评判分数.

2.2 MSlot算法模块测试与分析

在应对DDoS攻击策略上,通过与文献[10]提出的MultiQ和SingleQ进行对比.比较TCP连接失败率Rf和成功TCP连接延迟Ds这两个指标[10].

如图1所示,设N=3,T=10,μ=30 reqs/s,γ=50 reqs/s, Tslot=1 s,Qmax=150 reqs,Lqmax=50 reqs,DDoS攻击者群体模拟发送α=4γ强度伪造源端的TCP泛洪攻击服务器且攻击流模拟持久,同时每个交换机下的合法用户群体模拟以μ/6的速率发出500个与服务器建立TCP连接的TCP SYN请求.测量当攻击强度α=4γ时,不同合法用户群体的Rf和Ds. 通过发起不同强度的DDoS攻击(α=4γ、 6γ和8γ), 得到不同DDoS攻击强度下,3种策略的Rf和Ds这2个指标的对比结果如图8.

图8 当不同DDoS攻击强度时Ds(柱状)和Rf(线条)对比Fig.8 Ds (bars) and Rf (lines) under different DDoS attack intensities

从图8可见,当DDoS攻击时,在SingleQ策略下,各交换机(S1, S2和S3)下的合法用户群体的TCP连接失败率Rf随着DDoS攻击强度的增加呈同步上升趋势,说明SingleQ并不能在DDoS攻击时保护间接受攻击影响的内部交换机S2和S3. MultiQ和MSlot策略比SingleQ策略的保护效果更好.如这两种策略在α=6γ, S2和S3下的合法用户群的Rf和Ds都小于S1下合法用户群的Rf和Ds, 说明它们能更好地保护内部交换机S2和S3下合法用户群的通信质量,且效果随着DDoS攻击强度的增加更明显,如α=8γ. 由图8还可见,不管是Rf还是Ds, 本研究提出的MSlot对S2和S3下合法用户的保护效果比MultiQ好,且这种效果差异会随DDoS攻击强度的增加更明显.

结 语

控制平面与数据平面解耦式的SDN网络在给网络带来管理和配置方便的同时也存在各个方面的安全威胁.逻辑集中的控制平面有利于全网流信息的统计和策略下发,但也面临着DDoS攻击控制平面造成的单点失效问题.本研究利用SDN架构的全局网络视图优势,提出SDN网络中DDoS攻击的抑制模型及其实现.通过在SDN应用层上扩展DDoS检测模块和MSlot算法模块,并在此基础上提出了采用模糊综合评判决策模型检测DDoS攻击和时间片分配策略,从SDN控制器流请求调度策略上去应对DDoS攻击.两个模块相互协作,从而保证SDN网络在DDoS攻击下合法用户的通信质量.

引文:闫 巧,龚庆祥,于 非.软件定义网络中的分布式拒绝服务攻击抑制模型[J]. 深圳大学学报理工版,2017,34(6):562-569.

/

[1] Kreutz D, Ramos F M V, Verissimo P E, et al. Software-defined networking: a comprehensive survey[J]. Proceedings of the IEEE, 2015, 103(1): 14-76.

[2] Jain S, Kumar A, Mandal S, et al. B4: experience with a globally-deployed software defined WAN[J]. ACM SIGCOMM Computer Communication Review, 2013, 43(4): 3-14.

[3] Yan Qiao, Yu Fei, Gong Qingxiang, et al. Software-defined networking (SDN) and distributed denial of service (DDoS) attacks in cloud computing environments: a survey, some research issues, and challenges[J]. IEEE Communications Surveys & Tutorials, 2016, 18(1): 602-622.

[4] 于 洋,王之梁,毕 军,等.软件定义网络中北向接口语言综述[J].软件学报,2016,27(4):993-1008.

Yu Yang, Wang Zhiliang, Bi Jun, et al. Survey on the languages in the northbound interface of software defined networking[J]. Journal of Software, 2016, 27(4): 993-1008.(in Chinese ).

[5] Lad N, Baria J. DDoS prevention on rest based web services[J]. International Journal of Computer Science and Information Technologies, 2014, 5(6):7314-7317.

[6] Dao N N, Park J, Park M, et al. A feasible method to combat against DDoS attack in SDN network[C]// International Conference on Information Networking (ICOIN). Siem Reap, Cambodia: IEEE, 2015: 309-311.

[7] Lim S, Ha J, Kim H, et al. A SDN-oriented DDoS blocking scheme for botnet-based attacks[C]// The 6th International Conference on Ubiquitous and Future Networks (ICUFN). Shanghai, China: IEEE, 2014: 63-68.

[8] Yan Qiao, Huang Wenyao. A DDoS detection and mitigation system framework based on spark and SDN[C]// International Conference on Smart Computing and Communication (SmartCom). Shenzhen, China: Springer, 2016: 350-358.

[9] Mousavi S M, St-Hilaire M. Early detection of DDoS attacks against SDN controllers[C]// International Conference on Computing, Networking and Communications (ICNC). Anaheim, USA: IEEE, 2015: 77-81.

[10] Lim S, Yang S, Kim Y, et al. Controller scheduling for continued SDN operation under DDoS attacks[J]. Electronics Letters, 2015, 51(16): 1259-1261.

[11] Yan Qiao, Gong Qingxiang, Deng Fang-an. Detection of DDoS Attacks against wireless SDN controllers based on the fuzzy synthetic evaluation decision-making model[J]. Ad Hoc & Sensor Wireless Networks, 2016, 33(1/2/3/4): 275-299.

[12] Yan Qiao, Gong Qingxiang, Yu Fei. Effective software-defined networking controller scheduling method to mitigate DDoS attacks[J]. Electronics Letters, 2017, 53(7): 469-471.

【中文责编:方圆;英文责编:木柯】

2017-02-09;Accepted2017-06-01

Professor Yan Qiao. E-mail: yanq@szu.edu.cn

TheinhibitionmodelofDDoSattacksinSDNnetworks

YanQiao,GongQingxiang,andYuFei

College of Computer Science and Software Engineering, Shenzhen University, Shenzhen 518060, Guangdong Province, P.R.China

In software defined networking (SDN), the controller may suffer from distributed denial of service (DDoS) attack, which may cause the threat of single point of failure. In this paper, a model is proposed to defend against DDoS attacks in SDN. In the model, DDoS detection module and multiple timeslot (MSlot) algorithm module are extended in the application layer. For DDoS attack detection, DDoS detection module is based on fuzzy synthetic evaluation decision-making model. It can detect the occurrence of DDoS in real time according to the multiple flow characteristic indexes and use the DDoS comprehensive evaluation scores to describe the strength of DDoS attack. For the strategy of defeating DDoS attacks, MSlot algorithm module is designed to decide when applying the time slice allocation strategy to get the detection result from DDoS detection module. The strategy can effectively protect the communication of legitimate users under the DDoS attacks. In order to test the model, we simulate DDoS attacks with different intensities. The results from different intensities of DDoS attacks show that in SDN networks, compared with some other DDoS attacks detection algorithms based on single flow characteristic index, ‘DDoS detection module’ has better detection rate and accuracy by using the fuzzy comprehensive evaluation decision model. Compared with some other SDN controller scheduling algorithms which only use multiple logical queue and polling mechanism, the communication quality of legitimate users can be protected more effectively by MSlot algorithm module.

communication system; software defined networking; OpenFlow protocol; distributed denial of service attack attacks; fuzzy synthetic evaluation decision-making model

Foundation:National Natural Science Foundation of China (61672358)

:Yan Qiao, Gong Qingxiang, Yu Fei. The inhibition model of DDoS attacks in SDN networks[J]. Journal of Shenzhen University Science and Engineering, 2017, 34(6): 562-569.(in Chinese)

TP 393

A

10.3724/SP.J.1249.2017.06562

国家自然科学基金资助项目 (61672358)

闫 巧(1972—),女,深圳大学教授.研究方向:网络空间安全.E-mail:yanq@szu.edu.cn

猜你喜欢

IP地址评判交换机
不要用街头小吃来评判北京
铁路远动系统几种组网方式IP地址的申请和设置
基于学习的鲁棒自适应评判控制研究进展
修复损坏的交换机NOS
IP地址切换器(IPCFG)
使用链路聚合进行交换机互联
基于SNMP的IP地址管理系统开发与应用
公安网络中IP地址智能管理的研究与思考
诗歌评判与诗歌创作
PoE交换机雷击浪涌防护设计