CN111835750B - SDN中基于ARIMA模型的DDoS攻击防御方法 - Google Patents

SDN中基于ARIMA模型的DDoS攻击防御方法 Download PDF

Info

Publication number
CN111835750B
CN111835750B CN202010654158.6A CN202010654158A CN111835750B CN 111835750 B CN111835750 B CN 111835750B CN 202010654158 A CN202010654158 A CN 202010654158A CN 111835750 B CN111835750 B CN 111835750B
Authority
CN
China
Prior art keywords
flow
flow table
attack
state
prediction
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
Application number
CN202010654158.6A
Other languages
English (en)
Other versions
CN111835750A (zh
Inventor
岳猛
王怀远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Civil Aviation University of China
Original Assignee
Civil Aviation University of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Civil Aviation University of China filed Critical Civil Aviation University of China
Priority to CN202010654158.6A priority Critical patent/CN111835750B/zh
Publication of CN111835750A publication Critical patent/CN111835750A/zh
Application granted granted Critical
Publication of CN111835750B publication Critical patent/CN111835750B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

软件定义网络是一个很有前途的网络架构,但极易遭受分布式拒绝服务攻击的威胁,尤其是一种针对SDN数据层的隐蔽式DDoS攻击,并且现有的绝大部分防御方法无法缓解这种攻击。本发明提出一种针对该攻击的防御方法,利用自回归整合滑动平均模型对交换机中的流表进行预测,基于不同的预测结果调整超时时间以及删除流规则,保证了SDN数据层在遭受隐蔽式DDoS攻击下的正常工作。实验表明本发明提出的方法与现有的方法相比,可以有效的缓解攻击。

Description

SDN中基于ARIMA模型的DDoS攻击防御方法
技术领域
本发明涉及一种计算机网络完全技术,在软件定义网络(Software DefinedNetwork,SDN)易遭受针对SDN数据层的隐蔽式DDoS攻击且并没有有效的缓解措施的背景下,提出一种防御架构,采集交换机中的流表信息,利用自回归整合滑动平均(ARIMA,Autoregressive Integrated Moving Average)模型对流表占用量进行预测并基于不同的预测结果采取相应的缓解措施。实验证明可以有效地缓解针对SDN数据层的隐蔽式DDoS攻击,保证了SDN数据层在遭受隐蔽式DDoS攻击下的正常工作,使得网络防御更加有效。
背景技术
软件定义网络(SDN,software define network)具有很高的网络管理灵活性,被认为是一种很有前途的下一代网络架构。许多公司(例如,谷歌、亚马逊、华为等),都在其主干和数据中心部署了SDN设备。作为一种新型的网络体系架构,它实现了网络控制平面和数据平面的分离,其控制平面主要由控制器组成,控制器负责连接底层交换设备与上层应用;数据平面由交换机实现,主要负责数据的高速转发。控制平面和数据平面之间的交互只需要支持一般的转发协议,对于所有的复杂逻辑的分布式路由协议实现的南向SDN协议中,OpenFlow协议是使用最广泛的事实上的标准协议。在OpenFlow协议中,控制器连接到所有的OpenFlow交换机,每个OpenFlow交换机都有一个或多个流表,每个流表由一组有限的流规则组成,交换机对数据包的转发根据其流表中的规则进行处理。此外控制器通过在交换机的流表中安装、修改和删除规则来保证SDN的正常工作。为了更好地支持OpenFlow协议,交换机必须使用三元内容寻址内存(TCAM,ternary content-addressable memory)来存储流规则。然而,考虑到高成本和高功耗,目前支持OpenFlow的交换机通常只有有限的TCAM空间并且只能存储有限数量的规则,因此交换机中的流表很容易遭受分布式拒绝服务(DDoS,distributed denial of service)攻击,在遭受SDN控制层的泛洪式DDoS攻击下,很容易成为性能瓶颈。同时,由于转发设备缺乏控制逻辑,为SDN数据层的隐蔽式DDoS攻击提供了可能。
针对SDN数据层的隐蔽式DDoS攻击与针对SDN控制层的泛洪式DDoS攻击截然不同,不像在针对控制层的泛洪式DDoS攻击中,攻击者发送了大量新流至目标交换机,强制控制器安装新规则。随着攻击的继续,流表容量很快被耗尽,最后导致后来到达的数据包被丢弃,而且随着交换机和控制器之间的流量增加,很有可能导致SDN控制器崩溃。然而针对数据层的隐蔽式DDoS攻击的主要目标不是创造大量的流量而引起控制器超载,而是生成永久驻留的流规则,即攻击者通过周期性地发送攻击流,在攻击流规则超时之前重新激活对应的攻击流规则,随着逐渐增加的永久驻留的流规则,最终使流表一直处于饱和状态。在SDN网络中,OpenFlow交换机使用流规则的空闲超时时间的值和硬超时时间的值来实现一个独立于控制器的流过期机制,这两种机制分别是空闲超时机制和硬超时机制,空闲超时机制指明在规定时间内,如果没有数据包匹配该流规则,该流规则将从交换机中消失:如果有数据包在该时间段内匹配该流规则,则该流规则的空闲超时时间重新更新至初始的空闲超时值。硬超时机制则指明了流规则在流表中最大生存时间,它的工作原理是无论是否有数据包在该时间段内匹配该流规则,一旦流规则生存时间超过该字段,该条流规则都会从流表中消失。目前,研究人员主要采用空闲超时机制进行相关研究。由于攻击者只在第一个周期访问控制层,因此可躲避目前运行在控制层的绝大部分DDoS攻击防御手段。
近年来针对SDN的DDoS攻击检测防御一直是研究者关注的焦点,然而绝大部分研究者主要研究的是SDN控制层的泛洪式DDoS攻击,攻击者通过伪造IP等方式发送大量的攻击流,直至控制器拒绝服务。部分研究者研究的是SDN数据层的隐蔽式DDoS攻击,通过耗尽流表容量进而影响客户端的访问,从而达到拒绝服务的效果。本发明研究了一种面向SDN数据层的隐蔽式DDoS攻击,这种攻击的主要目标不是创造大量的流量而引起控制器超载,而是生成永久驻留的流规则,即攻击者通过周期性地发送攻击流,在攻击流规则超时之前重新激活对应的攻击流规则,随着逐渐增加的永久驻留的流规则,最终使流表一直处于饱和状态,导致正常的客户端流量得不到及时响应。尽管流表在遭受这种隐蔽式DDoS攻击时,控制器的CPU、内存占用率、FLOW_MOD速率等参数影响不大,但是由于逐渐缓慢增加的永久驻留的流规则,流表的状态即流规则的数量呈一定规律的上升趋势,因此可以通过监测流表的状态从而对下一周期流表的状态进行预测,在流表饱和之前提前采取防御措施,这将会大大降低流表饱和的可能性,从而提高正常客户端的访问成功率。因此本发明提出了基于自回归整合滑动平均(ARIMA,Autoregressive Integrated Moving Average)模型的DDoS攻击防御方法,该方法通过ARIMA模型预测流表的状态,并根据流表的状态动态地调整空闲超时时间,有效地防止了流表饱和,从而达到对SDN数据层的隐蔽式DDoS攻击的防御目的。
发明内容
SDN网络遭受隐蔽式DDoS攻击时,一旦流表饱和,正常的客户端也无法被响应,由于逐渐缓慢增加的永久驻留的流规则,流表的状态即流规则的数量呈一定规律的上升趋势,因此可以通过监测流表的状态从而对下一周期流表的状态进行预测,在流表饱和之前提前采取防御措施,这将会大大降低流表饱和的可能性,从而提高正常客户端的访问成功率。基于ARIMA模型的DDoS攻击防御架构如图1所示。由图1可知,控制器上部署了3个模块,其中第一个模块是流表收集模块,该模块负责流表信息的收集,为预测模块做好准备,第二个模块是预测模块,该模块将对下一周期的流表状态预测,第三个模块是防御模块,该模块根据预测结果动态地调整空闲超时时间,防止了流表饱和达到了防御的目的。如图2为具体的防御流程图,该方法通过提取获取流表的信息,判断流表的状态是否达到预定的阈值,当达到设定阈值后,利用ARIMA预测算法对下一周期的流表状态做出准确的预测,通过该预测值动态地调整超时时间达到防御的目的。
在流表收集模块中,交换机通过回复ofp_flow_stats_reply消息至控制器来告知其状态,流表收集模块通过该消息对流表中的流规则的信息进行统计,并将这部分统计的信息作为预测模块选择的依据。如图3为收集的部分流规则信息。由于流规则信息统计的周期对流规则下一周期状态预测有一定的影响,因此设置的周期通过多次对比实验来确定最佳的周期,从而达到对下一周期流表状态的预测更加准确。通过在交换机上执行for i in{1..200};do sudo ovs-ofctl-O OpenFlow13 dump-tables s1|head-3;sleep 15;done>collect.txt命令完成对流规则信息的统计。
预测模块中所使用的ARIMA模型是时间序列预测的一种常用模型,该模型通常记为ARIMA(p,d,q)。其中参数p、d、q都是自然数,p是自回归模型的阶数,d是差分阶数,q是移动平均模型的阶数。该模型适用于原始序列为非平稳的时间序列,其预测的基本思路是:首先用若干次差分将原始序列转化为平稳序列,然后利用ARIMA模型对该平稳序列进行建模,最后通过反变换将建模后的序列转换为原始序列。首先获得每个取样周期结束时的流规则数量的时间序列,并把该非平稳序列记为{xt:1≤t≤n},对非平稳序列{xt}进行d阶差分得到平稳序列
Figure BSA0000212829800000031
即得到ARIMA(p,d,q)的数学模型的结构如下:
Figure BSA0000212829800000032
其中αt1αt-...-θqαt+1-q为误差项,{αt}与{xt}独立共同分布的白噪声。
ARIMA模型的预测步骤包括平稳性检验、建立模型及参数估计,最后采用合适的参数模型对下一取样周期的流规则数量进行预测,下面依次对各个步骤进行详细的阐述。
(1)平稳性检验
SDN在遭受隐蔽式DDoS攻击下,流表中流规则的数量呈上升的趋势,直观上能够判断出流规则的数量属于非平稳序列,为了进一步确定序列的平稳性,本发明采用单位根检验[26]的方法,即单位根检验统计量对应的p值大于0.05时,则将该序列判断为非平稳序列。首先对原始序列进行零均值化处理,处理后得到序列,然后对该序列进行一阶差分,然后将原始序列和一阶差分后的序列做单位根检验,判断p值是否大于0.05,如果不是则在一阶差分的基础上继续一阶差分,一直持续直至差分后的序列判断为平稳序列。
(2)建立模型及参数估计
原始序列进行d阶差分后变为平稳序列,接下来确定ARIMA模型的p和q。目前python语言中有相应的时间序列预测模块StatsModels,通过调用该模块以及结合贝叶斯信息准则(BIC,bayesian information criterion),计算取得最小BIC值时的p和q作为最优预测模型。当p和q有多种组合,不能确定哪一个组合更优,就可以通过观察模型的BIC参数,以此来找出使模型最优的p和q,BIC值越小,模型越优。本发明采用最小二乘估计法对模型中的其他参数进行计算,最后得到t+1时刻的流规则数量的预测表达式为:
Figure BSA0000212829800000041
(3)进行预测
利用以上预测表达式对下一取样周期流表所能达到的状态即流规则的数量进行预测,得到预测结果为Nnext
防御模块根据交换机中流表的不同状态改变超时时间,目前主流的控制器对流规则的下发和管理都是采用固定的超时时间,没有根据交换机占用的空间变化的特点来适当地调整空闲超时时间,对流规则的管理缺乏智能的超时方法,容易导致流表饱和,因此基于动态超时变化的防御方法是可取的。流表的TCAM情况如图4所示,当流表的占用量occupy占内存空间的百分比小于80%时,可以认为流表的状态依旧是正常的,当occupy占比大于80%时,可以说对于接下来流表状态的判断是非常重要的,若occupy占比在80%和90%之间,流表的大部分内存空间已被占用,可以适当地减小空闲超时时间来降低流规则的条目,若occupy占比90%和95%之间,必须以更快的速度来减小流表中的流规则数量。若occupy占比95%和100%之间,可以说流表的大小已经接近极限了,控制器必须主动地删除一定数量的可疑流规则,具体防御算法的伪代码如图5所示。
该算法维护三个变量:其中ruleList是交换机中安装的流规则的镜像列表,初始状态为空,blackList是控制器主动删除的可疑的流规则的镜像列表,初始状态也为空,counter是计数器,初始值为0,假设流表的大小为k(第1行)。无论什么时候只要控制器下发了FLOW-MOD安装新规则的消息,且安装的这条新规则ruleNew不在backList列表中,都将这条新的流规则ruleNew添加至ruleList中(第2-3行)。当控制器被告知交换机流表的状态大于流表容量的80%时(第4行),认为流表有可能在接下来的一段时间内被占满,因此启动预测模块预测下一周期流表的状态(第5行),如果下一周期流表的状态大于流表容量的95%(第6行),计算出要删除的流规则数量(第7行),为了更加准确地检测出攻击流规则,将当前ruleList中攻击流规则进行二次筛选,继续寻找time字段值最大的攻击流规则的索引,然后根据其索引找到具体的流规则,最后将其删除,并且添加至blackList列表中(第8-13行),当再次有与blackList列表中匹配的规则时,控制器将不再安装此条规则至ruleList中。当删除完数量的流规则后,计时器清零(第14-15行),继续判断此时的流表状态,如果流表中流规则数量仍然大于流表容量的90%时,继续执行上述同样的策略,直至流表的状态小于流表容量的90%,这时可以认为流表处于安全的状态。如果下一周期流表的状态在流表容量的80%和90%之间,根据预测值设置系数a1,通过该系数来调整超时时间(第16-18行)。如果下一周期流表的状态在流表容量的90%和95%之间,通过设置系数a2来调整超时时间(第19-21行),最后,无论何时控制器发送删除流规则的消息(包括流规则因超时而删除),相应的流规则都从ruleList中删除(第22-23行)。
附图说明
图1为基于ARIMA模型的DDoS防御架构图
图2为基于ARIMA模型的DDoS防御流程图
图3为流规则信息统计图
图4为流表TCAM占用图
图5为防御算法图
图6为实验拓扑图
图7流规则数量随时间的变化图
图8每秒产生的FLOW-MOD消息的数量
图9为不同攻击速率下的攻击效果图
图10为不同周期下预测准确率对比图
图11为不同阈值下预测准确率对比图
图12不同防御方法下防御性能比较图
图13不同防御方法下的流表状态图
图14不同攻击强度下正常客户端的转发成功率
图15不同防御方法下正常客户端的转发成功率
具体实施方式
为了验证防御方法的性能,本节在Mininet在仿真平台进行了测试。实验拓扑如图6所示,其中包括一台Ryu控制器,与该控制器直接相连的是交换机s1,与交换机s1相连的是另外两台交换机s2、s3,h1是产生攻击流量的主机,h2是产生正常流量的主机,与s2交换机相连的h3是接收流量的主机。此外,将交换机流表的大小设置为1500条,空闲超时时间设置为10s。实验使用D-ITG模拟合法客户端的流量,TCP流80%、UDP流占5%、ICMP流占5%,使用Scapy来模拟攻击流量,而攻击者利用僵尸网络建立h1与h3之间的通信,从而间接发起针对s1交换机流表的隐蔽式DDoS攻击。实验主要验证:1、针对SDN数据层的隐蔽式DDoS攻击效果;2、基于ARIMA模型的DDoS攻击防御方法的防御效果;3、本发明与现有方法相比的优势。
1、针对SDN数据层的隐蔽式DDoS攻击效果
如图6,第10秒时在h1上发起针对s1交换机的隐蔽式DDoS攻击,攻击强度为平均每秒12.8个攻击包,攻击目标是h3,在h2上发起正常的客户端流量,访问目标是h3,客户端访问强度为平均为每隔1到3秒发5个包,同时将s1交换机的流规则存储容量上限设置为1500条,然后统计s1交换机中的流规则数目,得到图7。与此同时统计控制器给s1交换机下发的FLOW_MOD消息的数目,得到图8。最后统计了不同攻击强度下正常客户端的响应时间、攻击者的攻击时间和控制器的CPU占用率来评估隐蔽式DDoS攻击的效果,得到图9。
图7展示了当攻击强度为平均每秒12.8个攻击包时的流表的状态变化情况,攻击者安装1500条规则需要2分钟多一点的时间。攻击者能够通过避免触发规则的超时来将规则安装在交换机中,这使攻击的流规则逐渐上升,一旦1500条规则都安装完毕,就没有更多的空间来容纳新规则,从而拒绝向合法客户端提供服务。
图8展示了当此攻击强度时的FLOW-MOD消息(控制器安装规则时向交换机下发的消息)的变化情况,由于攻击的隐蔽性,从图中可看出控制器在每个时刻最多发送FLOW-MOD消息的数量少于40,一旦占满交换机的流表,FLOW-MOD消息的数量进一步减少。当然如果攻击者以更低的速率进行攻击,那么这个数字还可以更少。这些结果表明,针对数据层的隐蔽式DDoS攻击确实是一种有效的、隐蔽的攻击,它在占领所有TCAM内存的过程中,并没有突然改变监视防御使用的主要参数(例如,FLOW-MOD消息的数量等)的情况下拒绝向合法客户端提供服务。同时也进行了一系列不同攻击强度的实验,实验结果如图9所示。
图9总结了不同攻击强度下的实验结果,并测量了攻击者占用所有TCAM内存后的合法客户机的响应时间、攻击者攻击所用的时间、控制器的CPU占用率等指标。并进行了一系列不同攻击强度的实验,从平均每秒4.5个攻击包到平均每秒25.6个独特攻击包。相比之下,典型的泛洪攻击的攻击速率一般为每秒至少1000个攻击包。图9结果表明,隐蔽式DDoS攻击可以有效地阻止合法客户端访问交换机,一旦攻击者成功地占用了所有TCAM内存,由于攻击者在流规则超时前不断的触发该流规则,保证了其相应的规则在SDN交换机中处于活动状态。同时发现不同攻击强度在流表占满时对控制器的CPU占用率的影响较小。
2、基于ARIMA模型的DDoS攻击防御方法的防御效果
基于ARIMA模型的预测分析实验包括周期选择和阈值选择,其中周期选择和阈值选择都是通过下一周期流规则数量的预测准确率这个指标来衡量,预测准确率越高说明预测效果越好。流表项数量预测准确率的计算公式为:
Pacc=(1-Prec)×100% (3)
其中Pacc为预测准确率,Prec为平均相对误差。流表项数量的预测准确率反映了预测算法对于下一取样周期内流表项数量的预测是否准确,预测准确率越高说明预测结果与实际值之间的误差越小。
在h1上发起针对s1交换机的隐蔽式DDoS攻击,攻击强度为平均每秒12.8个独特攻击包,客户端访问强度为平均为每隔1到3秒发5个包,通过流表收集模块周期性的监测流表状态,统计每个周期流表的状态即流表中流规则的数量作为历史数据,当流表的状态首次达到流表容量的80%时,使用ARIMA模型预测下一周期的流表状态,即判断下一周期流表中的流规则数量。我们重复进行了三组实验,分别对不同取样周期下的历史数据进行预测下一取样周期流表项的数量。同时为了验证ARIMA模型的预测效果优于其他预测模型,本发明将二次指数平滑算法作为对比,实验结果如图10所示。
结果表明,ARIMA模型预测结果优于二次指数平滑法,同时我们在不同的采样周期下比较了这两种算法的预测准确率,我们发现T=3s时ARIMA模型预测的准确率要高于T=5s和T=7s时的预测准确率,这是由于在不同的攻击强度下,流规则的数量总体上呈现上升的趋势,当取样周期越大,流规则数量的变化波动程度越大,因此本发明采取的取样周期T=3s。综上,ARIMA模型在取样周期T=3s时能够准确地预测下一周期的流表状态,从而给隐蔽式DDoS攻击提前采取防御措施提供了依据。
在h1上发起针对s1交换机的隐蔽式DDoS攻击,攻击强度为平均每秒12.8个独特攻击包,客户端访问强度为平均为每隔1到3秒发5个包,通过流表收集模块周期性的监测流表状态,统计每个周期流表中流规则的数量作为历史数据,并比较在不同的阈值下分别使用ARIMA模型和二次指数平滑模型进行预测,实验结果如图11所示。
结果表明,ARIMA模型预测结果在不同阈值下整体上都要优于二次指数平滑法,同时本发明在不同的阈值下比较了ARIMA模型的预测效果,当阈值为0.8k(k为流表的容量)时ARIMA模型预测的准确率最高,预测效果最好,这是由于当阈值选择过小时,由于数据量相对较小,预测准确率降低,当阈值选择过大时,流表更容易饱和,这会影响到流表的预测准确率。综上,ARIMA模型在阈值为0.8k时预测准确率更高,因此本发明将阈值设置为0.8k。
综上所述,基于ARIMA模型的DDoS攻击防御方法在合适的周期和阈值下效果显著。
3、本发明与现有方法相比的优势
以下在攻击强度为平均每秒12.8个攻击包的情况下,然后分别使用本发明的防御方法和Pascoal T A在文献Slow TCAM Exhaustion DDoS Attack中提出的防御方法及YuanB在文献Defending against Flow Table Overloading Attack in Software-DefinedNetworks中的提出的防御方法进行了比较,并分别对每种场景下对正常客户端的响应时间和正常客户端的转发成功率进行了测试。其中转发成功率值的计算公式如下:
Figure BSA0000212829800000081
同时我们模拟了合法客户机流量的强度从间隔为1到3秒(随机)的1个数据包直到每1到3秒15个数据包,另外我们还模拟了当每隔6秒有100个包的合法客户端的突发流,得到图12。图12总结了不同场景下的结果。结果表明无论是本发明的防御方法还是文献[21]以及文献[30]中的防御方法在系统不受攻击时合法客户端的转发成功率都不会产生影响,正常的客户端都能全部转发成功。此外,本发明的防御方法在所有的合法客户端强度下,合法客户端的转发成功率和响应时间都优于对比的防御方法,每个场景的可用性都可以保持在96%以上的高水平。然而,我们发现无论是对比防御方法还是本发明的防御方法在模拟每隔6秒有100个包的合法客户端的突发流的情形下,合法客户端的转发成功率和响应时间都明显比其他客户端访问强度下差,接下来将会继续研究如何通过使用本发明防御机制和结合其他防御技术来改进正常客户端的转发成功率及响应时间。然后比较了在攻击强度为每秒12.8个独特的攻击包的情况下本发明的防御方法和对比的两种防御方法以及不采取任何防御方法时流表中的流规则数量变化情况,得到图13。
图13结果表明Pascoal T A提出的防御方法只有当流表饱和时才开启防御策略,当采取防御策略后流规则的数量仍然在流表容量的99.4%以上,流表的剩余空间不足将导致大量正常的客户端得不到响应。Yuan B提出的防御方法通过采用对等支持策略在流表饱和前将部分流量引入到相邻交换机的空闲资源中,但是由于隐蔽式DDoS攻击产生的流规则会一直占据在流表中,导致流表一直处于临近饱和的状态,当存在突发流量时,将导致大量的正常客户端得不到响应。而采取本发明的防御方法后流表中有足够的空间来容纳更多的流规则数量,足够的剩余空间能够也保证更多的正常客户端得到转发,从而提高了正常客户端的转发成功率。如图14对不同攻击强度下正常客户端的转发成功率进行了比较,其中攻击强度1代表每秒发送7.3个攻击包,攻击强度2代表每秒发送12.8个攻击包,攻击强度3代表每秒发送25.6个攻击包。由图14可知,随着攻击强度的增加,正常客户端的转发成功率呈现降低的趋势,这是因为攻击强度越大,动态超时防御机制对流表中正常的流规则影响越大,因此对正常的客户端的转发成功率影响越大,其中每组攻击强度做了三组实验,实验结果基本一致。
为了进一步验证本发明的防御方法的有效性,如图15对不同防御方法下正常客户端的转发成功率进行了比较。由图15可知,随着攻击强度的增加,对比的两种防御方法下的正常客户端的转发成功率都呈现降低的趋势,这是因为攻击强度越大,流表越容易饱和,无论是动态超时防御还是随机删除流规则或者对等支持策略都对正常流规则的影响较大,但是本发明的防御方法在不同攻击强度下仍然保持97%以上的转发成功率。
综上所述,本发明与现有方法相比具有一定的优势。

Claims (1)

1.一种SDN中基于ARIMA模型的DDoS攻击防御方法,其特征如下:
通过流表收集模块提取获取流表的信息,判断流表的状态是否达到预定的阈值,当达到设定阈值后,利用预测模块对下一周期的流表状态做出准确的预测,防御模块通过该预测值动态地调整超时时间达到防御的目的;
流表收集模块包括:交换机通过回复Openflow协议中的ofp_flow_stats_reply消息至控制器来告知其状态,流表收集模块通过该消息对流表中的流规则的信息进行统计,并将这部分统计的信息作为预测模块选择的依据,由于流规则信息统计的周期对流规则下一周期状态预测有一定的影响,因此设置的周期通过多次对比实验来确定最佳的周期,从而达到对下一周期流表状态的预测更加准确;
预测模块包括:利用ARIMA模型对原始序列进行d阶差分后变为平稳序列,接下来确定ARIMA模型的参数p和q,通过调用python语言中的时间序列预测模块StatsModels以及结合贝叶斯信息准则(BIC,bayesianinformationcriterion),计算取得最小BIC值时的p和q作为最优预测模型,本文采用最小二乘估计法对模型中的其他参数进行计算,最后得到t+1时刻的流规则数量的预测表达式为:
Figure FSB0000200177420000011
x’i为第i时刻流规则数量的预测值,
Figure FSB0000200177420000012
是自回归系数,θi是滑动平均系数,αi是与x’i独立同分布的白噪声;
利用以上预测表达式对下一取样周期流表所能达到的状态即流规则的数量进行预测,得到预测结果为Nnext
防御模块包括:根据预测模块预测的交换机流表占用量来执行不同的策略,当流表的占用量occupy占内存空间的百分比小于80%时,认为流表的状态依旧是正常的,当occupy占比大于80%时,对于接下来流表状态的判断是非常重要的,若occupy占比在80%和90%之间,流表的大部分内存空间已被占用,则减小空闲超时时间来降低流规则的条目,若occupy占比90%和95%之间,必须以更快的速度来减小流表中的流规则数量,若occupy占比95%和100%之间,则流表的大小已经到达极限了,控制器必须主动地删除设定数量的可疑流规则。
CN202010654158.6A 2020-07-09 2020-07-09 SDN中基于ARIMA模型的DDoS攻击防御方法 Active CN111835750B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010654158.6A CN111835750B (zh) 2020-07-09 2020-07-09 SDN中基于ARIMA模型的DDoS攻击防御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010654158.6A CN111835750B (zh) 2020-07-09 2020-07-09 SDN中基于ARIMA模型的DDoS攻击防御方法

Publications (2)

Publication Number Publication Date
CN111835750A CN111835750A (zh) 2020-10-27
CN111835750B true CN111835750B (zh) 2022-11-22

Family

ID=72900294

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010654158.6A Active CN111835750B (zh) 2020-07-09 2020-07-09 SDN中基于ARIMA模型的DDoS攻击防御方法

Country Status (1)

Country Link
CN (1) CN111835750B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115664752B (zh) * 2022-10-19 2024-04-19 湖南大学 基于ARIMAGini-DT的慢速流表溢出攻击检测与缓解方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107483512A (zh) * 2017-10-11 2017-12-15 安徽大学 基于时间特征的SDN控制器DDoS检测与防御方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8392991B2 (en) * 2007-05-25 2013-03-05 New Jersey Institute Of Technology Proactive test-based differentiation method and system to mitigate low rate DoS attacks
US10536480B2 (en) * 2017-05-02 2020-01-14 Shenzhen University Method and device for simulating and detecting DDoS attacks in software defined networking
CN107968785A (zh) * 2017-12-03 2018-04-27 浙江工商大学 一种SDN数据中心中防御DDoS攻击的方法
CN108900542B (zh) * 2018-08-10 2021-03-19 海南大学 基于LSTM预测模型的DDoS攻击检测方法及装置
CN109040113B (zh) * 2018-09-04 2021-03-19 海南大学 基于多核学习的分布式拒绝服务攻击检测方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107483512A (zh) * 2017-10-11 2017-12-15 安徽大学 基于时间特征的SDN控制器DDoS检测与防御方法

Also Published As

Publication number Publication date
CN111835750A (zh) 2020-10-27

Similar Documents

Publication Publication Date Title
Yuan et al. Defending against flow table overloading attack in software-defined networks
US8001601B2 (en) Method and apparatus for large-scale automated distributed denial of service attack detection
US20190230116A1 (en) Distributed denial-of-service attack mitigation with reduced latency
CN101369897B (zh) 一种检测网络攻击的方法和设备
CN112615818A (zh) 基于sdn的ddos攻击防护方法、装置及系统
CN111614627A (zh) 一种面向sdn的跨平面协作ddos检测与防御方法与系统
Li et al. Detecting saturation attacks based on self-similarity of OpenFlow traffic
CN113992539B (zh) 网络安全动态路由跳变方法及系统
Kaur et al. A comprehensive survey of DDoS defense solutions in SDN: Taxonomy, research challenges, and future directions
Hong et al. Dynamic threshold for DDoS mitigation in SDN environment
Chen et al. DDoS defense for IoT: A Stackelberg game model-enabled collaborative framework
Siregar et al. Intrusion prevention system against denial of service attacks using genetic algorithm
CN111835750B (zh) SDN中基于ARIMA模型的DDoS攻击防御方法
Jiang et al. BSD‐Guard: A Collaborative Blockchain‐Based Approach for Detection and Mitigation of SDN‐Targeted DDoS Attacks
Huang et al. FSDM: Fast recovery saturation attack detection and mitigation framework in SDN
Wang et al. Credibility-based countermeasure against slow HTTP DoS attacks by using SDN
CN113364810B (zh) 一种链路洪泛攻击检测与防御系统及方法
Peng et al. ADVICE: Towards adaptive scheduling for data collection and DDoS detection in SDN
Kim et al. SWAT: Small world-based attacker traceback in ad-hoc networks
Patel URED: Upper threshold RED an efficient congestion control algorithm
Li et al. Simulation study of flood attacking of DDOS
Neethu et al. Detection of DDoS attacks in SDN
Mauri et al. Exploiting information centric networking to build an attacker-controlled content delivery network
CN115913784B (zh) 一种网络攻击防御系统、方法、装置及电子设备
Siregar et al. Controlling of Quality of Service in Campus Area Network Using OpenDaylight with Hierarchical Token Bucket Method

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