Page 426 - 《软件学报》2025年第8期
P. 426
武文浩 等: 可编程数据平面 DDoS 检测与防御机制 3849
的地址熵的突减. 在图 16(c) 与图 16(d) 中, DNS 反射放大攻击与 ICMP 洪泛攻击均在观察窗口的第 103–137 号、
第 250–295 号、第 424–474 号、第 602–653 号出现. 攻击发生时, 源目地址的熵值仍会有差异性的变化, 但在攻击
流量占比较低时, 熵的变化幅度较小, 并且从单个熵值的变化趋势上难以直接区分此类 DDoS 攻击状态与正常网
络状态.
×10 4 ×10 4
8 8.5
8.0
7
7.5
熵值计算结果 5 熵值计算结果 6.5
6
7.0
6.0
5.5
4
5.0
3 源地址熵 源地址熵
目的地址熵 4.5 目的地址熵
2 4.0
0 200 400 600 800 1 000 0 100 200 300 400 500 600 700 800 900
观察窗口序号 观察窗口序号
(a) TCP SYN 洪泛攻击 (b) UDP 洪泛攻击
×10 4 ×10 4
6.8 源地址熵 6.8 源地址熵
6.6 目的地址熵 6.6 目的地址熵
6.4 6.4
熵值计算结果 6.0 熵值计算结果 6.0
6.2
6.2
5.8
5.8
5.6
5.4
5.4 5.6
5.2 5.2
5.0 5.0
0 100 200 300 400 500 600 700 800 0 100 200 300 400 500 600 700 800
观察窗口序号 观察窗口序号
(c) DNS 反射放大攻击 (d) ICMP 洪泛攻击
图 16 源目地址熵值计算结果
表 4 展示了 4 种 DDoS 攻击检测与防御机制在 TCP-SYN 洪泛攻击和 UDP 洪泛攻击中的详细实验结果. 数
据共分为 4 部分, 分别为 TCP-SYN 洪泛攻击、UDP 洪泛攻击、DNS 反射放大、ICMP 洪泛攻击下的测试结果.
测试结果中包含 DDoS 攻击检测机制对当前观察窗口状态的检测结果, 以观察窗口为单位; DDoS 攻击数据包过
滤机制对具体数据包进行的过滤情况, 以数据包为单位.
从测试结果来看, 本文所设计的 DDoS 攻击检测与防御机制能够有效地检测并防御 DDoS 攻击流量, 在 4 种
攻击方式下, 观察窗口的检测准确率分别达到 97.6%、97.0%、97.2%、95.7%, 数据包的检测准确率分别达到
99.6%、99.8%、99.5%、99.6%; 同时, 在精确率与召回率上均有良好的表现.
与对比机制 Jaqen 相比, Jaqen 在 TCP SYN 洪泛攻击、DNS 反射放大攻击、ICMP 洪泛攻击这 3 种攻击类型
中能够取得较高的检测准确率, 但在 UDP 洪泛攻击中, 本文所提机制比 Jaqen 有明显提升. 产生这一结果的原因
在于, Jaqen 中基于阈值的检测策略能够有效地检测出网络中依赖特定协议实现的网络攻击, 而 UDP 洪泛攻击不
依赖特定协议实现, 且网络中存在较大比例的合法 UDP 流量, 此时, 基于阈值的检测策略将会有较高的误检率. 同
时, Jaqen 对于 DDoS 攻击的检测与防御需要获取数据包的具体协议类型, 依赖控制面原语, 即在检测进行之前, 需
要针对性地配置相应的检测机制, 所实现的检测机制部署完成后只能对预期的攻击类型生效. 而本文所实现的机
制利用攻击流量的网络特征完成 DDoS 攻击检测与防御, 无须预先了解将会发生的攻击类型, 可以检测任意能够
改变网络中源目地址熵的 DDoS 攻击类型.

