Contents

SDNScore: A statistical defense mechanism against DDoS attacks in SDN environment

Kalkan K , Gur G , Alagoz F . SDNScore: A statistical defense mechanism against DDoS attacks in SDN environment[C]// 2017 IEEE Symposium on Computers and Communications (ISCC). IEEE, 2017.

本文是JESS那篇对应的会议文章,记一下主要思想。

SDNScore Mechanism

本机制由switch中的profiler,actuator,comparator,scorer和controller中的PairProfiler组成,用于检测DDoS及其缓解。整个机制图解见图1.

https://s2.ax1x.com/2019/03/28/AwGeH0.md.png

Switch中的机制

  • Profiler 在无攻击期间switch会有一个统计period,作为正常阶段一个时间间隔的特征统计参考值,本文中switch中的profile存储8个特征的统计:source IP,destination IP,source port,destination port,proto-col type,packet size,TTL valueand,TCP flag.与此同时,该期间Profiler会将收到的所有包头发给controller,controller会根据收到的headers形成pairProfile,如以上8个特征,controller会存储$\left( \begin{aligned} 8\2 \end{aligned}\right)=28$个表,而每个switch而要存储8个表。Profiler会在整个阶段都要运行,如acturator阶段会用来形成当前的profile。PariProfile用来进行流量分析和被其他模块使用,profile用来进行选择最适合的属性。

  • Acturator:监控网络带宽,当带宽超过一个阈值时,即激活comparatorprofilerprofiler形成当前的profile.当流量强度回归正常时,它便让其他模块进入备用状态,系统停在基于流的监控状态。

  • Comparator:当发生拥塞时,acturator激活这个模块,它通过比较nominal profile和current profile来决定可疑属性对:与nominal profile偏移地最远的那个,记为SuspiciousPair。然后向controller请求这个属性对的nominal profile(controller中是以属性对的形式存储的),然后scorer进行面向包的检察和选择性攻击。

  • Scorer: 本部分由三个小模块组成:计算打分,计算阈值,选择性丢弃包。、 **计算打分:**假设SuspiciousPair属性对$A=a_p,B=b_p$,而打分$S_p$计算为: $$S_p=\frac{PNP_{(A=a_p,B=b_p)}/TPNP}{PCP_{(A=a_p,B=b_p,\dots)}/TPCP} \tag{1}$$ **计算阈值:**本部分利用load shedding algorithm算法计算。阈值Th,使$CDF(Th)=\Phi$,$\Phi$是被丢弃的比例,$\phi$是需要接受的流量,$\varphi$是当前进入的流量,可通过 流量可表示成:$1-\Phi=\frac{\phi}{\varphi}$ **选择性丢弃:**如果打分超过阈值,则丢弃。 符号对应讲解:

https://s2.ax1x.com/2019/07/27/eKT7rt.png

Controller中的机制:PairProfiler

计算PairProfile会使Controller有额外负担,但只在nominal period这样,当comparator请求 某个SuspiciousPair时,再将相应的信息发给他。

开销计算

在假设通信协议为IPv6,在TPNP=5000时经计算总开销为:920KB,可以忽略不计。

#实现 网络拓扑如图2,数据集MAWI,与JESS里用的一样。

https://s2.ax1x.com/2019/03/28/AwyA0O.png

结果对比见表2:

https://s2.ax1x.com/2019/03/28/AwyetH.png

PN:precision RL:Recall AY:Accuracy FM:F1值

对未知攻击的预测结果比较:

https://s2.ax1x.com/2019/03/28/AwyDBT.png

这个表讲的是假设攻击者将包的某些字段设成正常流量字段的结果比较,2个,3个,4个,发现2个时本算法交果较差,但也和当前算法差不多,3个和4个时本算法都能很好地检测出来。 JESS与本文的不同:添加了发生攻击时的补救策略,添加了多个period以增加准确率,算法的过程以公式的方式和图(f4)的方式显示,有对算法的时间,空间,通信复杂度的分析,对整个架构以流程图的方式表达出来,在讲算法时举了例子加以说明,对字段以表的方式展示,是本算法的一个拓展与完善。