首页> 中国专利> 一种减轻DDoS攻击的方法、可编程交换机及SDN控制器

一种减轻DDoS攻击的方法、可编程交换机及SDN控制器

摘要

本发明提供一种减轻DDoS攻击的方法、可编程交换机及SDN控制器,该方法包括:将INT头添加至交换机转发的数据包中,数据包达到目的交换机后,将INT报文发送至SDN控制器,SDN控制器将INT报文中对应的开关状态转化为三维张量;基于CNN和图卷积神经网络构建DDoS攻击检测模型,通过所述DDoS攻击检测模型提取三维张量中时间特征和空间特征,确定包含攻击流的交换机,并确定攻击流在网络中的转发路径;发布对应的丢弃策略来缓解DDoS攻击,将源和目的IP添加至白名单中,并由SDN控制器将白名单发布至所有交换机。通过该方案可以准确找到DDoS攻击路径,减轻分布式拒绝服务攻击,并保障合法网络流量的访问。

著录项

  • 公开/公告号CN112995238A

    专利类型发明专利

  • 公开/公告日2021-06-18

    原文格式PDF

  • 申请/专利权人 华中科技大学;

    申请/专利号CN202110559686.8

  • 申请日2021-05-21

  • 分类号H04L29/06(20060101);

  • 代理机构42242 武汉蓝宝石专利代理事务所(特殊普通合伙);

  • 代理人严超

  • 地址 430000 湖北省武汉市洪山区珞喻路1037号

  • 入库时间 2023-06-19 11:27:38

说明书

技术领域

本发明涉及网络安全领域,尤其涉及一种减轻DDoS攻击的方法、可编程交换机及SDN控制器。

背景技术

分布式拒绝服务(DDoS)是一种容易发起且极具破坏性的网络攻击,攻击者通常会入侵互联网中易受攻击的节点,然后将这些节点转化为僵尸网络,并使用这些大规模分布的主机创建带有伪造IP地址的大量数据包,对受害服务器发起访问攻击。DDoS可以快速消耗受害服务器的资源并使其崩溃,从而使受害服务器无法响应正常请求。

研究人员为检测和减轻DDoS攻击做了大量的工作,但DDoS攻击的检测和防御仍然面临着一些挑战,如伪造IP地址、伪造流量模式、加密消息等。现有的一些方法中,有对交换机上的流量进行速率限制,该方法不区分合法流量和攻击流量,还有将所有网络流量定向到外部主机进行清理,这需要额外的硬件,并将带来不可预测的延迟。这些方法都难以准确找到DDoS攻击流在网络中的具体路径,导致后续防御效果差。

发明内容

有鉴于此,本发明实施例提供了一种减轻DDoS攻击的方法、可编程交换机及SDN控制器,以解决无法准确找到DDoS攻击路径,导致网络防御效果差的问题。

在本发明实施例的第一方面,提供了一种减轻DDoS攻击的方法,包括:

将INT头添加至交换机转发的数据包中,数据包达到目的交换机后,将INT报文发送至SDN控制器,SDN控制器将INT报文中对应的开关状态转化为三维张量;

基于CNN和图卷积神经网络构建DDoS攻击检测模型,通过所述DDoS攻击检测模型提取三维张量中时间特征和空间特征,确定包含攻击流的交换机,并确定攻击流在网络中的转发路径;

发布对应的丢弃策略来缓解DDoS攻击,将源和目的IP添加至白名单中,并由SDN控制器将白名单发布至所有交换机。

在本发明实施例的第二方面,提供了一种可编程交换机,包括:

添加模块,用于将INT头添加至交换机转发的数据包中,若数据包达到目的交换机,将INT报文发送至SDN控制器;

丢弃模块,用于基于SDN控制器发布的白名单及包含攻击流的交换机,执行对应的丢弃策略来缓解DDoS攻击。

在本发明实施例的第三方面,提供了一种SDN控制器,包括:

数据转化模块,用于将目的交换发送的INT报文中对应的开关状态转化为三维张量;

分析检测模块,用于基于CNN和图卷积神经网络构建的DDoS攻击检测模型,提取三维张量中时间特征和空间特征,确定包含攻击流的交换机,并确定攻击流在网络中的转发路径。

本发明实施例中,通过带采样的INT收集网络状态,最小化控制器的计算资源和南行接口的带宽消耗,将开关状态转化为三维张量,得到不同时间所有交换机的特征,基于DDoS攻击检测模型提取时间和空间特征,确定包含攻击流的交换机及攻击流网络中的转发路径,可以准确找到DDoS攻击路径。结合白名单和丢弃策略,减轻分布式拒绝服务攻击,减少对合法流量的影响,并尽可能阻止攻击流进入网络,减轻交换机及链路负担。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他附图。

图1为本发明的一个实施例提供的减轻DDoS攻击的方法的流程示意图;

图2为本发明的一个实施例提供的不同模型检测DDoS攻击的结果示意图;

图3为本发明的一个实施例提供的SDN控制器的工作原理示意图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

本发明的说明书或权利要求书及上述附图中的术语“包括”以及其他相近意思表述,意指覆盖不排他的包含,如包含一系列步骤或单元的过程、方法或系统、设备没有限定于已列出的步骤或单元。

可以理解的是,当分布式拒绝服务攻击发生在SDN网络中时,通常具有流量大、源IP熵增加、单流数量急剧增加的特点。换言之,当DDoS攻击发生时,一些网络状态会迅速改变。因此,在数据平面可编程同步数据网络下,可以通过监控网络状态的变化来检测DDoS攻击,分析攻击路径,进而进行有效防御。

请参阅图1,图1为本发明实施例提供的一种减轻DDoS攻击的方法的流程示意图,包括:

S101、将INT头添加至交换机转发的数据包中,数据包达到目的交换机后,将INT报文发送至SDN控制器,SDN控制器将INT报文中对应的开关状态转化为三维张量;

需要说明的是,本申请使用数据平面可编程SDN(Software Defined Network),开关可以通过INT获得,INT(In-band network telemetry)是数据平面上的框架,可以收集和报告网络状态。在INT框架中,源交换机在数据包包头中插入一个特殊字段,即网络设备可以理解的遥测指令。数据包在传输时,可编程交换机按遥测指令要求,将实时、细粒度的状态(元数据)写入数据包,当数据包达到目的交换机(信宿)后,包含有测量信息的INT报告被发送至SDN控制机,基于SDN分析获得网络状态。

其中,所述INT收集的指标主要包括交换机ID、排队延迟、缓冲延迟、链路延迟、入/出端口ID、入/出时间戳、出端口的入/出缓冲深度、五元组(即源IP地址、目的IP地址、源端口号、目的端口号、协议类型)。该信息反映了转发数据包时网络设备的状态。它们的值与网络流量大小、瞬时吞吐量等密切相关。当网络中发生异常事件时,这些指标的值会相应地发生变化。

示例性的,报文达到首节点,通过在交换机上设置的采样方式匹配并镜像出该报文,并在四层头部后插入INT头,将报文入端口Port ID、出端口 Port ID、入端口时间、出端口时间、以及设备的DEVICE ID封装成MetaData,将MD插入到INT头部之后;报文转发到中间节点,设备匹配到INT头部后,在INT头部后再插入一层MD;报文转发到最后一跳,设备匹配INT头部后,再插入一层MD,并在报文外部封装一个IP头(ERSPAN),外层IP为监控服务器地址,这样INT报文便可以转发到SDN控制器。

由于控制器的CPU和内存成本高,INT数据需要额外的带宽成本,同时,交换机的状态是通过数据包获得的,相邻数据包通过同一台交换机的时间间隔很小,因此相邻数据包获得的同一台交换机的状态非常相似,这意味着获得的一部分数据是冗余的。为了避免冗余问题,在状态粒度和带宽消耗之间进行了权衡,并采用了自适应采样方法。具体的,采用自适应采样,对每个IP地址的数据包进行统一采样,根据数据包包头的INT指令写入元数据。

为了保存足够的信息,每个IP地址的数据包都要统一采样。在实践中,发现采用等 间隔抽样的方法取得了很好的效果。当执行采样时,INT源节点将INT指令插入每个

可编程交换机记录传递的数据包数量,当单位时间内的数据包数量增加时,采样 间隔

带采样的INT不需要额外的探测数据包,也不会影响正常数据包的转发。与外遥测方法相比,INT的测量延迟极低。由于自适应的采样频率,数据也可以保持更精细的粒度。

应理解,在可编程数据平面出现之前,网络管理员只能通过网络边缘的终端设备获取滞后和不准确的网络遥测信息。基于可编程数据平面的INT技术的出现大大缓解了网络管理员面临的上述困境。INT使用可编程设备的可定制功能,在转发数据包时直接获取设备内的数据包级遥测数据。与外测量方法相比,INT方法得到的网络状态参数更加细化、丰富,对网络状态的变化更加敏感。

SDN控制器在获得交换机的状态后,需要将INT获得的数据聚合并转换为三维特征 张量F。F是检测模型的输入,检测模型根据F从时间和空间两个角度学习DDoS攻击如何影响 网络状态的规则。为了将数据转换为三维特征张量F,首先根据交换机标识对数据

S102、基于CNN和图卷积神经网络构建DDoS攻击检测模型,通过所述DDoS攻击检测模型提取三维张量中时间特征和空间特征,确定包含攻击流的交换机,并确定攻击流在网络中的转发路径;

在网络数据传输中,每个节点的特征,即每个交换机的状态是不同的,其表示攻击流的空间分布。由于数据包的不断转发,交换机的状态会随着时间的推移而变化,随着DDoS攻击的开始和持续,交换机的状态按照一定的规则发生变化,其表示攻击流的时间分布。

基于DDoS检测模型提取数据的时间和空间特征,以确定网络当前是否受到DDoS攻击,以及哪些交换机包含攻击流。

具体的,利用CNN和图形卷积网络构建了一个攻击检测模型,分别提取数据的时间和空间特征。所述DDoS攻击检测模型包括两个时间卷积模块,一个空间卷积模块和一个输出模块,所述时间卷积模块包含两个卷积层,所述空间卷积模块包含两个图形卷积层,输出模块包含两个密集层。时间卷积模块和空间卷积模块分别用于提取数据的时间和空间特征。在空间卷积模块之后增加一个时间卷积模块,使得每个节点不仅可以获得自己在不同时间片的信息,还可以获得相邻节点在不同时间片的信息,由此提高了模型的学习能力和稳定性。输出模块给出开关的最终分类结果。

S103、发布对应的丢弃策略来缓解DDoS攻击,将源和目的IP添加至白名单中,并由SDN控制器将白名单发布至所有交换机。

所述源和目的IP是指交换机转发数据包对应的源IP地址和目的IP地址,基于数据包的源和目的IP,可以确定交换机是否对数据包进行丢弃。

为减轻DDoS攻击,有两个原则:一是屏蔽尽可能多的攻击流,二是尽量不要误杀正常流。找到攻击路径,可以采用针对性的丢包策略来减轻DDoS攻击。同时,为了减少丢弃数据包时误杀正常数据包,基于先验知识在所有交换机上建立并部署了白名单。具体的,对于常用业务主机的IP地址将被添加到白名单中,白名单将由控制器分发给所有交换机。如果数据包的源和目的IP地址都与白名单中的IP地址匹配,则交换机将转发数据包,否则,将根据对应的描述规则丢弃数据包。

可以理解的是,大多数攻击者在发起DDoS攻击时会伪造IP地址来隐藏自己,这些假冒的IP地址与白名单中的IP地址不匹配。如果攻击者危及常用的业务主机并使用其真实的IP地址,攻击流将受到白名单的保护。为了避免此类情况,可以添加额外的限制。

优选的,考虑到DDoS攻击流通常是单向的,若一个数据流的源和目的IP地址在白名单中,且该数据流是双向的,则该数据流可以被白名单保护,否则,将不受白名单保护。

本实施例中,提出一种基于时空图卷积网络(ST -GCN)的数据平面可编程SDN检测方法,将网络映射成一个图,通过带内网络遥测(INT)采样感知交换机的状态,将网络状态输入到时空图卷积网络检测模型中,最终准确找出DDoS攻击流经过的交换机。在此基础上,结合增强白名单和精确丢弃策略的防御方法,可以有效减轻DDoS攻击,最大限度地减少对合法网络流量的影响。

同时,在识别通过的交换机攻击流时减轻分布式拒绝服务攻击,基于白名单保护大多数合法流量,可以通过检测单个流量来区分闪存拥挤流量和DDoS攻击流量。能够最大限度地保护新到达的合法流量,并通过精确的丢弃策略丢弃攻击流量。协调攻击路径中的所有交换机,把防御过程提前到了攻击流进入网络的时候,大大减轻了各个交换机和对应链路的负担,进而保障在高强度攻击下更加健壮。

需要说明的是,若一次DDoS攻击中有多个目标,或者多个DDoS攻击在时间上重叠,可以为每个目标分别计算这些交换机的丢弃率,最终只执行最高的丢弃率。

应理解,上述实施例中各步骤的序号大小并不意味着 执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

在一个实施例中,用20台可编程交换机和一些主机构建一个实验网络,其中一台主机被用作SDN控制器。INT模块在可编程开关上用P4语言实现。INT头将被添加到源交换机的一些数据包中,相应的元数据将在转发时被写入数据包。文件INT_header.P4中定义了数据包报头的结构和交换机对数据包执行的操作。统计一段时间内收到的数据包数量,以帮助实现自适应采样和增强的白名单。当数据包到达汇聚交换机时,其有效负载将被转发到主机,包含交换机写入的所有元数据的INT报告将由控制器上的分析模块进行解析。控制器基于ONOS开发,分析模块采用Python开发,可以提取数据包经过各个交换机时采集到的网络状态和时间戳。数据转换模块和图形卷积网络检测模块由Python开发,驻留在控制器上。数据转换模块将这组开关状态转换成三维张量,并将其传递给检测模块。然后,检测模块输出所有节点的分类结果。最后,每个开关的掉线率由控制器决定。增强的白名单机制由P4语言实现,并由控制器发布到所有交换机。

使用CAIDA流量跟踪作为后台流量,通过hping3构造不同攻击路径的DDoS攻击。在实验网络上部署了检测和缓解系统。硬件设施是8-core 3.70GHz Intel Xeon (R) E3-1240 v6 CPU, 32GB RAM。考虑到数据中心是SDN网络最常见的应用场景之一,并且fat-tree结构在数据中心网络中被广泛使用,选择fat-tree结构作为实验拓扑。拓扑包含20个节点和32条边,有8台交换机直接连接到主机,它们是边缘交换机。交换机的上层分别是聚合层和核心层。实际网络设备布局对应于上述fat-tree结构。

检测模型输出所有交换机的分类结果。与以前的方法相比,检测模型可以同时利用时间和空间特征来检测分布式拒绝服务攻击流。因此,模型可以充分利用隐藏在数据中的信息。为了验证模型检测DDoS攻击流的能力,使用相同的数据对提出的ST-GCN和SVM、CNN、GCN等其他模型进行训练和测试,取其结果的平均值进行比较。这些方法的精度和FPR(False Positive Rate)如图2所示。

在图上单独应用CNN只能提取数据的时间特征,仅应用GCN只能提取数据的空间特征。SVM的表达能力有限,无法学习数据的空间特征。而所述攻击检测模型可以提取和使用数据的时间和空间特征,学习和表达能力更强。

同时,通过启动缓解模块后收到的正常数据包的比率来衡量缓解的有效性。攻击和缓解过程执行三次。发送方总是以恒定的速率发送合法的数据包,但以100Mbps、200Mbps和300Mbps三种不同的强度发起攻击,分别对应于轻、中、强三个级别。另部署了白名单机制。缓解启动后,收到的攻击流量迅速减少,正常流量恢复较快,但无法达到无攻击时的状态。一方面,攻击流进入网络的边缘交换机获得较高的丢弃率,过滤掉大部分攻击流量。另一方面,白名单机制保护绝大多数合法流量。然而,由于检测错误和防御过程中可能会损坏一些新的正常数据包,在防御打开后无法完全接收到合法流量,但接收到的正常数据包的比例接近理想水平。

为了评估该方法在南向通信接口上的负载、网络状态感知延迟和控制器的CPU消耗方面的性能,将该方法的上述项目与基于SVM的检测方法和基于熵的检测方法进行了比较。在可编程交换机中,使用带采样的INT来实现网络状态感知。自适应采样减少了开销,同时确保了特征的有效性。同时,带采样的INT可有效地减轻控制器CPU在各种类型攻击下的负担。

在本发明一个实施例中,还提供的一种可编程交换机,该交换机包括:

添加模块,用于将INT头添加至交换机转发的数据包中,若数据包达到目的交换机,将INT报文发送至SDN控制器;

其中,采用自适应采样,对每个IP地址的数据包进行统一采样,根据数据包包头的INT指令写入元数据。

丢弃模块,用于基于SDN控制器发布的白名单及包含攻击流的交换机,执行对应的丢弃策略来缓解DDoS攻击。

基于SDN控制器获知的攻击路径及包含攻击流的交换机,交换机对应执行丢弃策略,并基于SDN控制器发布的白名单,保障合法流量的访问。

优选的,若数据流的源和目的IP地址均在白名单中,且数据流可以双向传递,则判定数据流可以被白名单保护。

如图3所示,本发明一个实施例提供的一种SDN控制器,其包括:

数据转化模块310,用于将目的交换发送的INT报文中对应的开关状态转化为三维张量;

当数据包到达目的交换机(即信宿)后,包含状态信息的INT报文被发送到SDN控制器,获得网络中的交换机状态。数据转化模块对INT获得的数据聚合并转换为三维特征张量。

其中,所述SDN控制器将INT报文中对应的开关状态转化为三维张量包括:

根据交换机标识对开关状态数据进行分类,设置时间片大小,并计算每个时间片中所有状态的平均值或熵,得到时间片中所有开关状态的特征向量。

分析检测模块320,用于基于CNN和图卷积神经网络构建的DDoS攻击检测模型,提取三维张量中时间特征和空间特征,确定包含攻击流的交换机,并确定攻击流在网络中的转发路径。

数据转化模块将开关状态转换成三维张量后,将其传递给分析检测模块,然后由分析检测模块输出所有开关的分类结果。

其中,所述DDoS攻击检测模型包括两个时间卷积模块、一个控件卷积模块和一个输出模块,所述时间卷积模块包含两个卷积层,所述空间卷积模块包含两个图形卷积层,所述输出模块包含两个密集层。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,实现步骤S101至S103中部分或全部过程,所述的存储介质包括如ROM/RAM等。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号