Page 425 - 《软件学报》2025年第8期
P. 425

3848                                                       软件学报  2025  年第  36  卷第  8  期


                 方式能够显著地提高        DDoS  攻击检测效率, 更适用于高性能网络. 我们使用             DDoS  攻击检测延时对不同的        DDoS
                 部署方法的检测性能进行评估. 我们将              DDoS  攻击检测延时定义为在单次          DDoS  攻击中, 网络中第     1  个包含
                 DDoS  攻击数据包的观察窗口出现至          DDoS  攻击防御机制部署到数据面的时间. DDoS           攻击检测延时的值越低, 说
                 明检测机制的检测性能越高.

                 5.4   对比实验方法
                    本文中重点关注能够完全部署于可编程数据平面上的                    DDoS  攻击检测与防御机制. 在实验中, 本文所设计的
                 机制将与现有的研究工作进行比较. 选取的对比机制包括                   Jaqen [10] 和  Euclid [11] . 同时, 为了评价可编程数据面部署
                 的优势, 我们使用传统的检测方法进行流量采集, 即将所有数据包的头部信息采集至控制面或远程服务器, 并在控
                 制面上使用本文所提出的检测机制进行              DDoS  攻击检测. 这  4  种方法的对比如表     3  所示.


                                              表 3 DDoS  攻击检测与防御机制对比

                             是否可以在Tofino      是否无须针对特定         是否数据平面无须
                    名称                                                             DDoS检测机制部署方式
                               交换机中实现         攻击类型进行配置          与控制平面交互
                   本文机制            是               是                是                 可编程数据面
                    Jaqen          是               否                否           可编程数据面 + 控制面查询接口
                    Euclid         否               是                是             可编程数据面 (BMv2模拟)
                   流量采集            否               是                否                  控制面程序

                    其中, Jaqen  在可编程交换机中利用        Sketch  与计数器等方法收集网络中流量的信息并上报至控制平面. 同
                 时, 在控制平面和前端页面中为用户提供了多种可用的原语, 从而在交换机上部署不同的测量任务. 通过不同
                 原语的组合使用可以实现对多种类型              DDoS  攻击的检测与防御. 针对本文中所需的实验, 使用               Jaqen  提供的原
                 语实现了    4  种基于阈值的    DDoS  攻击检测机制, 所检测的       DDoS  攻击类型分别为     TCP SYN  洪泛攻击、UDP    洪
                 泛攻击、DNS    反射放大攻击和       ICMP  洪泛攻击. Jaqen  需要预先根据所需检测的         DDoS  攻击类型, 使用不同的
                 控制原语.
                    Euclid  能够完全在数据平面实现细粒度、低开销、低延迟的                 DDoS  攻击检测和防御. Euclid  单独考虑源目      IP
                 地址熵的变化情况, 并利用基于指数加权移动平均                (EWMA) 的自适应阈值实现       DDoS  攻击检测, 在受到    DDoS  攻
                 击时将会过滤攻击数据包. 由于检测算法操作复杂且缺乏针对真实可编程交换机硬件的部署技术, Euclid                               仅能部
                 署于虚拟可编程软件交换机          BMv2  上, 无法在真实的可编程交换机环境中部署.
                    在流量采集方法中, 本文将通过交换机的数据包的头部信息全部采集至控制面, 并在控制面使用第                                3  节中所
                 提出的检测机制进行       DDoS  攻击检测. 在这一对比方法中, 检测机制在控制平面通过高级语言实现, 不再受到可编
                 程交换机计算及存储资源的限制, 但在流量采集过程中引入了额外的通信开销与检测延迟.

                 5.5   DDoS  攻击检测结果与分析

                 5.5.1    总体检测结果
                    为了评估本文所设计的         DDoS  攻击检测与防御机制的有效性, 使用第            5.1  节中所述的数据集进行实验, 并与
                 文献  [10,11] 中所提出的  Jaqen  机制和  Euclid  机制进行对比. 图  16  所示为网络流量在熵值上的变化, 其中展示的
                 结果为可编程交换机中的计算值, 即实际熵值的               10 000  倍. 图  16(a) 为  TCP-SYN  洪泛攻击下对应的源目地址熵值
                 变化, 在这一组数据中, DDoS      攻击将分为    4 轮, 依次在观察窗口的第       194–234 号、第  378–425 号、第  557–596 号、
                 第  744–789  号出现. 该网络中的背景流量变化速度较快, 且熵值前后波动较大, 在第                 100  号观察窗口中的背景流量
                 的分布产生突变. 此类突变会显著地影响部分基于单个熵值阈值进行判别的算法, 例如对比算法                               Euclid  在这一数
                 据集中会将背景流量熵值的正常波动误报为                DDoS  攻击. 图  16(b) 为  UDP  洪泛攻击部分的网络流量在熵值上的
                 变化, 在这一数据集中, DDoS        攻击依次在观察窗口的第           105–136  号、第  254–294  号、第  424–471  号、第
                 602–652  号出现. 在  DDoS  攻击期间, 源目地址的熵值产生了明显的差异, 并且能够观察到源地址熵的激增以及目
   420   421   422   423   424   425   426   427   428   429   430