一种基于排序学习的SDN数据平面低速率DDoS攻击缓解方法技术

技术编号:36536967 阅读:18 留言:0更新日期:2023-02-01 16:23
本发明专利技术公开了一种基于排序学习的SDN数据平面低速率DDoS攻击缓解方法,属于网络安全领域。所述方法包括:基于OpenvSwitch交换机,轮询SDN交换机流表并提取流表项,形成原始数据;提取流表项的特征六元组和标识,结合源IP地址等信息,为流表项标记相关性标签和查询ID;采用集成学习XGBoost方法,基于Pairwise建立流表项排序学习模型,并部署在SDN交换机上;交换机上的攻击缓解系统实时监控是否发生了由DDoS攻击导致的流表溢出;若发生攻击,排序学习模型预测每条流表项的排序分数,并按排序分数降序重排流表、设定攻击检测阈值,最后自上而下遍历流表项,决定哪些流表项应被删除。本发明专利技术对数据平面低速率DDoS攻击检测率高,误报、漏报率低,自适应性强,缓解迅速、有效。有效。有效。

【技术实现步骤摘要】
一种基于排序学习的SDN数据平面低速率DDoS攻击缓解方法


[0001]本专利技术属于计算机网络安全领域,具体涉及一种基于排序学习的SDN数据平面低速率DDoS攻击缓解方法。

技术介绍

[0002]SDN是一种集中控制的网络体系结构,传统网络层的数据平面和控制平面在SDN中分离解耦。SDN的逻辑控制位于控制平面上,通常由一台控制器执行网络控制、流量转发等逻辑,使网络能够被便捷地集中管理;此外,SDN的数据平面被简化,无需集成过多的网络逻辑,仅需根据控制平面下发的消息执行动作。SDN具有模块化、可编程性等优点,并能兼容可编程数据平面、包处理语言等最新技术,被广泛认为是未来网络的解决方案之一。
[0003]SDN中,简化的数据平面仅负责数据包的匹配与转发,而SDN交换机中的流表则是负责存放数据包转发规则的关键部件。数据包分组转发规则由控制器确定,并通过OpenFlow等南向接口协议下发、安装至交换机的流表中,每条规则被称为一个流表项。当一个数据包到达交换机时,交换机将解析数据包头部字段,并尝试与现有流表项进行字段匹配。匹配成功时,交换机对该数据包做出流表项指定的转发动作,否则交换机认为是一条新的流,此时交换机以Packet

In消息上报控制器,以安装新的流表项。
[0004]目前,三元可寻址地址存储器(TCAM)是主流的SDN流表的存储单元。TCAM器件具有高性能的特点,十分适合高速分组匹配、低延时网络传输的SDN场景;然而,受芯片物理条件限制,TCAM具有功耗大、内存有限等不足,导致流表的容量通常较低,难以应对海量流量的广域场景。
[0005]作为一种稀缺的网络资源,基于TCAM的流表可以成为恶意资源消耗型攻击的对象:攻击者使得流表被攻击流表项占满直到溢出,此时,流表不能够为正常流量提供转发服务。为了使得攻击更加隐蔽,攻击者安装流表项时,可以以流表的软超时时间段为周期,向目标交换机周期性地重发分组,以触发流表项匹配机制,防止攻击规则被删除。这种逃避流表项超时机制、攻击速率极低、试图占据流表的攻击,被称为数据平面低速率DDoS攻击。
[0006]本专利技术针对上述数据平面低速率DDoS攻击引发的安全问题,基于保护SDN安全性和可用性的目标,提出了一种基于排序学习的SDN数据平面低速率DDoS攻击缓解方法。该方法可被分布式地部署在SDN交换机上,首先轮询交换机流表,计算当前流表项数目,监控交换机流表状态,判断是否发生数据平面低速率DDoS攻击;若发生了此类攻击,则提取各条流表项的统计特征、源与目的地址等信息,依据流表项特征和攻击相关性标签,采用极端梯度提升(XGBoost)的集成学习算法,基于Pairwise排序机制,构建流表项的排序学习模型;然后,对于流表中的每个流表项,依据其统计特征,使用排序学习模型,为每条项预测一个“排序得分”,并按照排序得分从高到低,重新排序流表;最后,SDN交换机删除所有排序得分高于阈值的流表项,以及一定比例的排序得分较高的流表项,最终实现攻击缓解。该方法能够实际部署在SDN上,实现对数据平面低速率DDoS攻击的实时检测与缓解,误报率和漏报率低,能适应多种网络状态。因此该检测方法可用于SDN,以准确检测与缓解数据平面低速率
DDoS攻击。

技术实现思路

[0007]针对SDN交换机所面临的数据平面低速率DDoS攻击安全隐患,保障SDN流表在此类攻击下的安全、可用性,提出了一种基于排序学习的数据平面低速率DDoS攻击缓解方法。该缓解方法能有效识别恶意的流表项,识别的误报率和漏报率低,算法开销小,缓解生效即时,能作为用户程序部署在SDN交换机上,且能适应真实的网络流量场景,因此该检测方法可普适于准确、实时检测SDN中的数据平面低速率DDoS攻击,并保护SDN流表的安全、可用性。
[0008]本专利技术为实现上述目标所采用的技术方案主要包括六个步骤:流表数据采样、流表特征分析、流表分类标记、排序模型训练、攻击阈值设定、网络攻击缓解。
[0009]1.流表数据采样。基于软件交换机OpenvSwitch,利用包含OpenFlow交换机流表采样命令的脚本程序,轮询交换机流表,实时获取SDN数据平面上交换机的所有流表项信息,形成原始流表项的数据集;为防止不活跃的流表项在数据集中生成冗余记录,轮询的间隔应至少大于流表的软超时时间。
[0010]2.流表特征分析。提取流表项中“持续时间”、“累计匹配分组数”和“累计匹配字节数”三个字段,并基于这三个字段的组合,计算流表项的六个特征;进一步提取每条流表项的源地址、目的地址等信息,作为流表项以及其特征的标识;最终,形成初步的数据集。
[0011]3.流表分类标记。根据所提取的流表项标识,为每条流表项标记“0”或“1”作为其“相关性标签”;接着,为数据集中的每条流表项标记一个“查询ID”。对于每一条流表项,将其对应的六项特征,与该流表项的“相关性标签”、“查询ID”相结合,最终得到一个具有“相关性标签”和“查询ID”的标准排序学习数据集。
[0012]4.排序模型训练。使用集成学习方法,在数据集上训练流表项排序学习模型,并设定排序的准则为Pairwise;在训练的过程中,设定模型的优化目标、评价指标为召回率(Recall)、归一化折损累计增益(NDCG)或平均精确度(MAP)。
[0013]5.攻击阈值设定。用训练好的排序学习模型,预测数据集中每条流表项的排序得分,并对排序得分进行归一化。如果数据集中“相关性标签”为1的流表项在数据集中的占比为N,则排序得分归一化后的攻击检测阈值为1

N,并依此设定判定攻击的排序得分阈值。
[0014]6.网络攻击缓解。当SDN交换机判定发生了低速率DDoS攻击时,排序学习模型预测流表中每条流表项的排序得分,并按照排序得分降序重新排列流表,得到流表项的驱逐优先级,排序得分越高,则流表项与攻击流越相关;最后,确定哪些流表项应当被删除以释放流表空间,并对相应的流表项执行驱逐操作。有益效果
[0015]该SDN数据平面低速率DDoS攻击缓解方法,能够充分兼容SDN场景、OpenFlow协议和OpenvSwitch软件交换机,并能够实际部署在SDN交换机上,实现实时的数据平面低速率DDoS攻击缓解。本专利技术中的攻击缓解方法较为全面,不仅能够从SDN流表的整体、宏观角度,准确识别攻击导致的整体异常现象,而且能够针对数据平面低速率DDoS攻击流的本质特征,从每条流表项的微观行为特征入手,分析流量之间的差别,并采用排序学习技术,预测流表项被驱逐的先后次序。该方法对攻击流的识别准确率较高,缓解方法即时有效;此外,
相比于直接预测流表项类别的分类方法,本方法预测的是流表项的驱逐先后次序,使得攻击缓解步骤具有更好的可解释性。因此,该检测方法可用于SDN环境,实现SDN数据平面低速率DDoS攻击的精准、实时检测和缓解。
附图说明
[0016]图1为SDN中的数据平面低速率DDoS攻击参数模型。该攻击模型包含三个主要参数:攻本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于排序学习的SDN数据平面低速率DDoS攻击缓解方法,其特征在于,所述的低速率DDoS攻击缓解方法,包括以下几个步骤:步骤1、流表数据采样:利用包含OpenFlow交换机流表采样命令的脚本程序,轮询交换机流表,实时获取SDN数据平面上交换机的所有流表项信息,形成原始流表项的数据集;为防止不活跃的流表项在数据集中生成冗余记录,轮询的间隔应至少大于流表的软超时时间;步骤2、流表特征分析:处理步骤1中的原始流表项的数据集;提取交换机中每条流表项的“持续时间”、“累计匹配分组数”和“累计匹配字节数”作为流表项的三项基本特征,再基于这三项基本特征的组合,提取流表项的“平均分组间隔”、“传输速度”和“平均分组大小”三项组合特征;接着,进一步提取每条流表项的“标识”信息,用于将流表项的六个特征与交换机中唯一的流表项一一对应,最终形成由上述特征和标识组成的新数据集;步骤3、流表分类标记:在步骤2中获取的新数据集中,依据每条流表项的“标识”,为每条流表项标记“0”或“1”作为其“相关性标签”;接着,为数据集中的每条流表项标记一个“查询ID”,最终得到一个具有“相关性标签”和“查询ID”的标准排序学习数据集;步骤4、排序模型训练:基于步骤3中所获得的标准排序学习数据集,使用集成学习方法训练流表项排序学习模型,并设定排序的准则为Pairwise;在训练的过程中,优化目标和评价指标则可以是召回率、归一化折损累计增益和平均精确度中的任何一个;步骤5、攻击阈值设定:利用步骤4中所得的流表项排序学习模型,预测全体数据集中每一条流表项的排序得分,并进行0

1归一化;记步骤3中“相关性标签”为“1”的流表项在数据集中的占比为N,其取值范围为0.00到1.00,则排序得分归一化后的攻击检测阈值为1

N;找出归一化后排序得分最接近1

N的那一条流表项,其原始的排序得分TH,即为攻击判定的阈值,即认为排序得分超过TH时,被认为和攻击流相关;步骤6、网络攻击缓解:将步骤4所得的流表项排序学习模型部署在SDN数据平面的交换机上;当SDN数据平面上的低速率DDoS攻击导致交换机流表溢出时,提取流表中的所有流表项,预测每一条流表项的排序得分,并依据排序得分降序排列流表项;最后,依据排序得分从高到低的顺序遍历流表,依次删除低速率DDoS攻击流,充分缓解SDN数据平面的低速率DDoS攻击。2.根据权利要求1中所述的低速率DDoS攻击缓解方法,其特征在于,步骤1中的流表项轮询采样基于支持OpenFlow协议的软件交换机OpenvSwitch;执行流表项轮询采样时,SDN数据平面上的各台软件交换机分别在自身的命令控制行中执行数据采样命令,获取本交换机的流表项信息。3.根据权利要求1中所述的低速率DDoS攻击缓解方法,其特征在于,步骤2中的“持续时间”、“累计匹配分组数”和“累计匹配字节数”三项基本特征应当从各条流表项的字段中分别提取,且三项组合特征“平均分组间隔”、“传输速度”和“平均分组大小”均由三项基本特征计算而来;其中,“平均分组间隔”被定义为“累计匹配分组数”和“持续时间”的比值,“传...

【专利技术属性】
技术研发人员:汤澹代锐严裕东杨秋伟高辰郡陈湘
申请(专利权)人:湖南大学重庆研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1