CN107959690A - 基于软件定义网络的DDoS攻击跨层协同防御方法 - Google Patents
基于软件定义网络的DDoS攻击跨层协同防御方法 Download PDFInfo
- Publication number
- CN107959690A CN107959690A CN201810038542.6A CN201810038542A CN107959690A CN 107959690 A CN107959690 A CN 107959690A CN 201810038542 A CN201810038542 A CN 201810038542A CN 107959690 A CN107959690 A CN 107959690A
- Authority
- CN
- China
- Prior art keywords
- ddos
- data
- defence
- interchanger
- actuator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于软件定义网络的DDoS攻击跨层协同防御方法,目的是解决南向接口与控制层面通信压力太大及SDN控制器计算压力太大的问题。技术方案是先构建由数据层面和控制层面构成的基于SDN的DDoS攻击跨层协同防御架构,数据层面对数据流进行粗粒度检测得到DDoS攻击异常流量数据,控制层面对DDoS攻击异常流量数据进行细粒度检测,得到最接近僵尸网络的交换机。控制层面的SDN控制器在最接近僵尸网络的交换机上部署DDoS防御策略,数据层面的SDN交换机采用DDoS防御策略进行DDoS防御。本发明通过数据层面与控制层面协同合作,充分利用了SDN可协同防御的优势,解决了SDN南向接口压力大、SDN控制器负担过大的问题,使得交换机能智能地自动进行防御。
Description
技术领域
本发明属于计算机网络安全领域,特别涉及一种基于SDN(Software DefinedNetwork,软件定义网络)的DDoS(Distributed Denial of Service,分布式拒绝服务)攻击跨层协同防御方法。
背景技术
随着计算机网络技术的快速发展,网络攻击破坏行为也日益频繁,计算机网络安全形势日益严峻。其中,DDoS攻击是目前计算机网络中最受关注的安全问题之一。DDoS攻击通常是利用僵尸网络对受害者发送大量的服务请求,造成受害者资源大量消耗,从而无法及时响应合法用户的请求,甚至完全瘫痪。僵尸网络是指受到攻击者集中控制,用来发起DDoS攻击的计算机群。随着网络技术的发展,DDoS攻击流量也在不断增大,使其越来越难以防御。
SDN(Soft Defined Network)即软件定义网络,是一种新型的网络架构。如图1所示,SDN架构由数据层面和控制层面构成,控制层面通过南向接口与数据层面进行通信。数据层面由多个网络设备(SDN交换机、路由器)组成,网络设备负责数据的传输;控制层面包括SDN控制器,控制层面负责对数据层面中网络设备的管理。
SDN交换机上安装有交换机代理,有数据通路,交换机代理对数据通路进行控制。数据包在交换机内部进行转发时,交换机会在数据包上附加元数据,元数据是对网络数据包描述的数据,数据包在交换机内部进行转发时,元数据中包含了所属数据包在交换机内部各模块(即数据包传播路径上的交换机内的软件和硬件)间传递时的目的模块ID;SDN控制器对网络设备进行管理,拥有整个网络的信息。SDN控制器上安装有控制器代理、DDOS攻击防御软件,向下通过南向接口与数据层面的交换机进行通讯。
随着SDN的发展,越来越多的研究开始着眼于利用SDN从网络全局出发来进行DDoS攻击防御,由于SDN控制器拥有整个网络的信息,在检测到DDoS攻击时,SDN控制器能够定位发起DDoS攻击的僵尸网络的位置。
目前基于SDN的DDoS防御方法主要是以控制层面为中心实现的。图1所示为当前主流基于SDN的DDoS防御方法所采用的防御架构,所有的DDoS防御方法都基于SDN控制器上安装的DDoS攻击防御软件实现,而数据层面的交换机只根据SDN控制器下发的具体防御指令进行防御。其经典的防御方法是:
1)数据层面的交换机周期性下发流表,根据流表收集报文,将收集的报文作为待处理报文,通过SDN南向接口发送至SDN控制器;
2)控制层面的SDN控制器接收待处理的报文,由DDoS攻击防御软件判断是否受到DDoS攻击。当判断受到DDoS攻击时,DDoS攻击防御软件对这些报文做出相应处理,将针对该报文相应的防御方法发送给控制器代理,控制器代理通过南向接口向数据层面的交换机下发具体防御指令。
3)交换机代理接收到具体防御指令后,根据具体防御指令修改流表,对DDoS 攻击的流量进行防御。
目前基于SDN的DDOS防御方法存在着如下问题:
1)传统的基于SDN的DDoS攻击防御方法需要不断将大量报文重定向至SDN 控制器,然后由SDN控制器向交换机下发防御方法。这种做法将会产生大量的南向通信开销,从而在数据层面与控制层面间引入巨大通信压力,将可能导致网络的延迟增加等问题,甚至影响整个网络的正常管理与运行。
2)过度简化的数据层面使得所有安全功能必须基于SDN控制器完成,将重点放在了控制层面的可编程性,而忽略了数据层面本身功能的多样性。 SDN控制器需要不断处理报文然后通过南向接口向交换机下发防御方法,导致控制层面的处理压力增大。
鉴于此,如何设计一种基于软件定义网络的DDoS攻击跨层协同防御方法,减少南向接口和SDN控制器压力,有效提高DDoS攻击防御效率成为本领域研究人员亟待解决的问题。
发明内容
本发明要解决的技术问题是提出一种基于软件定义网络的跨层协同DDoS攻击防御方法,使得原先运行在控制层面的DDoS攻击防御软件可以动态加载并运行在数据层面的交换机上,在交换机本地自动进行DDoS防御,解决当前基于SDN 的DDoS防御方法造成南向接口与控制层面通信压力太大及SDN控制器计算压力太大的问题。
第一步,构建基于SDN的DDoS攻击跨层协同防御架构,方法是:
基于SDN的DDoS攻击跨层协同防御架构由数据层面和控制层面构成,控制层面通过南向接口与数据层面进行通信。数据层面由交换机构成,负责数据的传输;控制层面由SDN控制器构成,负责对数据层面中交换机的管理。
数据层面的SDN交换机上除装有交换机代理,并有数据通路外,还装有 DDoS攻击感知模块、特征提取模块、DDoS防御执行模块。交换机中的硬件计数器对所有经过交换机数据通路的数据包和比特数进行计数。
控制层面的SDN控制器除装有控制器代理外,还装有事件管理器、DDoS攻击分类模块、僵尸网络溯源模块、DDoS防御策略库模块。
DDoS攻击感知模块与交换机代理、硬件计数器相连,DDoS攻击感知模块从硬件计数器获取一段时间经过SDN交换机数据通路的数据包和比特数,计算这段时间数据流的包速率和比特率,计算并记录这段时间的数据流量特征(包括数据流流量大小的特征与流量不对称性的特征,称为历史数据流量特征)。根据历史数据流量特征,判断当前(即上述一段时间过后的所有需要判定数据流量特征是否正常的时间)数据流量特征是否在正常范围内,若不在则判断当前数据流为DDoS攻击异常流(简称异常流)。若当前数据流为异常流,DDoS攻击感知模块将异常流ID(即数据流的编号)发送给交换机代理。
特征提取模块与交换机代理、数据缓存相连。特征提取模块从数据缓存获得异常流量数据包样本,从异常流量数据包样本中提取异常流量特征,将提取的异常流量特征发送给交换机代理。
交换机代理与DDoS攻击感知模块、特征提取模块、数据缓存(交换机中的缓存器)、DDoS防御执行模块、控制层面的控制器代理相连。交换机代理从DDoS 攻击感知模块接收异常流ID,向数据通路发送异常流ID。数据通路将符合异常流ID的数据包作为异常流量数据包样本复制到数据缓存。交换机代理还从特征提取模块接收异常流量特征,从数据缓存获得异常流量数据包样本。交换机代理将异常流量数据包样本、异常流量特征、异常流ID、交换机ID打包成DDoS 攻击异常流量数据,发送至控制层面的控制器代理。此外,交换机代理还从控制器代理接收DDoS防御执行器源代码,将DDoS防御执行器源代码存储在数据缓存中,然后将DDoS防御执行器源代码在交换机的操作系统中编译为可执行 DDoS防御执行器,交换机代理为可执行DDoS防御执行器分配一个DDoS防御执行器ID,同时将可执行DDoS防御执行器加入到DDoS防御执行模块中,且交换机代理从可执行DDoS防御执行器接收该可执行DDoS防御执行器处理的数据包类型,将此数据包类型发送到数据通路,数据通路根据收到的数据包类型将该类型数据包(即待处理的DDoS攻击数据包)发送到DDoS防御执行模块。
DDoS防御执行模块是一个DDoS防御执行器链,DDoS防御执行器链由N个DDoS 防御执行器组成,N为正整数。交换机代理在交换机启动时初始化一个空的防御执行器链,将编译后得到的可执行DDoS防御执行器按时间顺序依次添加到防御执行器链的尾端,组成DDoS防御执行器链。DDoS防御执行模块从数据通路接收待处理的DDoS攻击数据包,对待处理的DDoS攻击数据包进行处理,向数据通路发送已处理的DDoS攻击数据包。
控制器代理与交换机代理、事件管理器、DDoS防御策略库模块相连,控制器代理从交换机代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量数据发送给事件管理器。控制器代理还从DDoS防御策略库模块接收DDoS防御执行器源代码、最接近僵尸网络的交换机集合C,C中元素为最接近僵尸网络的交换机ID,假设C中有U个元素,U为正整数,找到与最接近僵尸网络的交换机ID 匹配的交换机,命名为J1,...Jh,...,JU,1≤h≤U。控制器代理为每个与之相连的交换机分别维持一个DDoS防御执行器源代码发送记录表。DDoS防御执行器源代码发送记录表的每个表项只有一个域,为DDoS防御执行器源代码号,若表中有 DDoS防御执行器源代码号,则表明该DDoS防御执行器源代码号所对应的DDoS 防御执行器源代码已经被控制器代理发送过。控制器代理通过查询DDoS防御执行器源代码发送记录表判断是否向交换机J1,...Jh,...,JU中的交换机代理发送过DDoS防御执行器源代码,若未发送过,则向交换机J1,...Jh,...,JU中的交换机代理发送DDoS防御执行器源代码。
事件管理器与控制器代理、DDoS攻击分类模块、僵尸网络溯源模块、DDoS 防御策略库模块相连,事件管理器从控制器代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量数据中的异常流量特征转发给DDoS攻击分类模块,将异常流量数据包样本、异常流ID、交换机ID转发给僵尸网络溯源模块。事件管理器还从DDoS攻击分类模块接收DDoS攻击类型,从僵尸网络溯源器模块接收最接近僵尸网络的交换机集合C,将DDoS攻击类型、最接近僵尸网络的交换机集合C发送给DDoS防御策略库模块;
DDoS攻击分类模块与事件管理器相连,该模块从事件管理器获得异常流量特征,利用机器学习方法进行DDoS攻击分类,得到DDoS攻击类型,将DDoS 攻击类型发送给事件管理器。
僵尸网络溯源模块与事件管理器相连,该模块从事件管理器获得异常流量数据包样本、异常数据流ID、交换机ID,进行僵尸网络溯源,得到最接近僵尸网络的交换机集合C,僵尸网络溯源模块将集合C发送给事件管理器。
DDoS防御策略库模块与事件管理器、控制器代理相连,DDoS防御策略库模块中有DDoS防御执行器源代码库,该模块从事件管理器接收DDoS攻击类型,根据DDoS攻击类型在DDoS防御执行器源代码库中选择与DDoS攻击类型匹配的 DDoS防御执行器源代码,将与DDoS攻击类型匹配的DDoS防御执行器源代码发送给控制器代理;同时,DDoS防御策略库模块从事件管理器接收最接近僵尸网络的交换机集合C,向控制器代理发送最接近僵尸网络的交换机集合C。
第二步,数据层面对所有通过交换机的数据流进行粗粒度检测,方法为:
2.1数据层面的DDoS攻击感知模块检测异常流,方法为:
2.1.1DDoS攻击感知模块将4个最大长度为c(10≤c≤20)的队列B、P、 AByte、APkt初始化为空队列。其中B为总平均比特率队列(含数据通路收到和发出的比特数)、P为总平均包速率队列(含数据通路收到和发出的数据包)、AByte为比特率不对称性队列、APkt为包速率不对称性队列。令检测周期为T,T满足 1秒≤T≤4秒。
2.1.2记当前交换机系统时间为t,令第一时间变量tn-1=t;
2.1.3DDoS攻击感知模块读取计数器,获取计数器tn-1时刻的记录:tn-1时刻数据通路收到的比特数tn-1时刻数据通路发出的比特数tn-1时刻数据通路收到的数据包数tn-1时刻数据通路发出的数据包数
2.1.4令第二时间变量tn=tn-1+T,令变量m=1;
2.1.5DDoS攻击感知模块在tn时刻读取计数器,获取计数器tn时刻的记录: tn时刻数据通路收到的比特数tn时刻数据通路发出的比特数tn时刻数据通路收到的数据包数tn时刻数据通路发出的数据包数
2.1.6DDoS攻击感知模块计算tn时刻数据通路收到与发出数据的比特率和包速率:
tn时刻收到数据平均比特率
tn时刻发出数据平均比特率
tn时刻收到数据包平均速率
tn时刻发出数据包平均速率
2.1.7DDoS攻击感知模块计算tn时刻数据流特征:
tn时刻总的平均比特率
tn时刻总的平均包速率
tn时刻比特率不对称性
tn时刻包速率不对称性
其中和对应数据流的流量大小特征;和对应数据流的流量不对称性特征。
2.1.8若m≤c,将分别加入到队列B、P、AByte、APkt队尾,令n=n+1,m=m+1,转步骤2.1.6;若m>c,分别从B、P、AByte、APkt中丢弃一个最早加入的元素,然后将分别加入到队列B、P、 AByte、APkt的队尾;将更新后的4个队列组成矩阵V,V大小为4×c,V中每一行为一个队列,转2.1.9。
2.1.9对V计算加权平均值和标准差σi;
对V每一行求加权平均值,得到加权平均值用表示,分别表示队列B、P、AByte、APkt的加权平均值。 vir表示vi中第r项,r为正整数且1≤r≤c,Wir为vir的权值,
对V每一行求标准差,得到标准差σ1、σ2、σ3、σ4,用σi(i=1,2,3,4)表示,分别表示队列B、P、AByte、APkt的标准差(参见2005年清华大学出版社《应用统计学》,李时,第一章,第17页)。
2.1.10令第三时间变量tn+1=tn+T,利用与σi对tn+1=tn+T时刻的正常数据流特征的范围区间进行预测:
为区间下限,表示正常数据流第i个特征的最小值;为区间上限,表示正常数据流第i特征的最大值。
2.1.11在tn+1时刻DDoS攻击感知模块读取计数器,获取计数器tn+1时刻的记录,计算将以上四个值组成矩阵V',V'大小为4×1。V' 中元素用vi表示,分别对应
2.1.12对于V'中每个元素,判断vi是否在区间外,即分别判断v1是否在区间外,v2是否在区间外,v3是否在区间 外,v4是否在区间外。若vi都在区间外,则判断tn+1时刻的数据流为异常流,得到异常流ID,转步骤2.2;若vi中至少有一个在区间内,则判断tn+1时刻未出现DDoS攻击异常流,令n=n+1,m=m+1,转步骤2.1.8;
2.2攻击感知模块将异常流ID发送给交换机代理;
2.3交换机代理从DDoS攻击感知模块接收异常流ID,向数据通路发送异常流ID;
2.4数据通路将符合异常流ID的数据包作为异常流量数据包样本复制到交换机的数据缓存;
2.5特征提取模块从数据缓存获得异常流量数据包样本,从中提取异常流量特征,方法是:若异常数据流量数据包样本是TCP(Transmission Control Protocol)数据包,则提取该TCP数据包中的七个特征:SYN(Synchronous)flag 置位的TCP数据包块、ACK(Acknowledgement)flag置位的TCP数据包块、源 IP地址的熵、目的IP地址的熵、源端口号的熵、目的端口号的熵、TCP序号的熵,转步骤2.6;若异常数据流量数据包样本是UDP(UserDatagram Protocol) 数据包,则提取该UDP数据包中的五个特征:目标端口号≤1024的UDP数据包块、目标端口号≥1024的UDP数据包块、源IP地址的熵、目的IP地址的熵、 UDP数据包长度的熵,转步骤2.6;若异常数据流量数据包样本是ICMP(Internet Control MessageProtocol)数据包,则提取该ICMP数据包中的四个特征:源 IP地址的熵、目的IP地址的熵、TTL值的熵、全部ICMP数据包块,转步骤2.6;
2.6特征提取模块并向交换机代理发送异常流量特征。
2.7交换机代理从数据缓存读取异常流量数据包样本,并从特征提取模块接收异常数据流量特征。
2.8交换机代理将异常流量数据包样本、异常数据流量特征、异常流ID、交换机ID打包为DDoS攻击异常流量数据,将DDoS攻击异常流量数据发送给控制层面上的控制器代理。
2.9数据层面和控制层面并行进行以下工作:数据层面转2.1.8继续进行粗粒度检测,并在得到控制层面下发的DDoS防御执行器源代码后并行进行DDoS 防御;控制层面执行第三步。
第三步,控制层面对DDoS攻击异常流量数据进行细粒度检测,方法是:
3.1控制器代理将接收到的DDoS攻击异常流量数据发送给事件管理器。
3.2事件管理器从控制器代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量特征发送给DDoS攻击分类模块,将异常流量数据包样本、异常数据流ID、交换机ID发送给僵尸网络溯源模块。
3.3DDoS攻击分类模块从事件管理器接收异常数据流量特征,将异常数据流量特征作为机器学习中基于自动编码器的分类器(参见文献“Quamar Niyaz*, Weiqing Sun,Ahmad Y Javaid,A Deep Learning Based DDoS Detection System in Software-Defined Networking(SDN),arXiv preprint arxiv:1611.07400, 2016年”,译为:一种在软件定义网络中基于深度学习的DDoS检测系统,arXiv preprint arxiv:1611.07400是论文检索号,基于自动编码器的分类器见该文献第三章第2节第4到6页)的输入进行DDoS攻击分类,得到DDoS攻击类型,将DDoS攻击类型发送给事件管理器。
3.4僵尸网络溯源模块从事件管理器接收异常流量数据包样本、异常流ID、交换机ID,进行僵尸网络溯源,具体方法如下:
3.4.1定义集合A为所有检测到DDoS攻击的交换机,A={a1,a2,...aj,...,aq}, q为数据层面所有检测到DDoS攻击的交换机的个数,为正整数,aj(j为正整数,j≤q)表示一个检测到DDoS攻击的交换机的ID(一般为交换机的IP地址);
3.4.2定义集合S为SDN控制器控制的所有SDN交换机,S={s1,s2,...sk,...,sp},p为SDN控制器控制的所有SDN交换机的个数,为正整数,sk(k为正整数,k≤p) 表示一个SDN控制器所控制的SDN交换机的ID;
3.4.3定义集合C为最接接近僵尸网络的交换机集合,初始化C为空集。
3.4.4判定A是否为空,若A为空,转步骤3.4.5;
若A不为空,从A中取一个元素aj,找到aj的上一跳交换机sk,
若sk∈A,则从集合A中去掉aj,返回步骤3.4.4;
若则aj是所寻找的目标交换机,将aj加入集合C,返回步骤3.4.4;
3.4.5得到A的一个子集集合C中所有交换机的上一跳均不在A中,并且C中交换机为最接近僵尸网络的交换机(即到达僵尸网络的跳数最少的交换机)。经过上述方法,定位得到了最接近僵尸网络的交换机集合C,C 中元素为最接近僵尸网络的交换机ID,C中有U个元素,U为正整数。僵尸网络溯源模块将集合C发送给事件管理器。
第四步,控制层面的SDN控制器在最接近僵尸网络的交换机上部署DDoS防御策略,方法是:
4.1控制器代理将集合S中所有SDN交换机的DDoS防御执行器源代码发送记录表初始化为空,即将s1,s2,...sk,...,sp的DDoS防御执行器源代码发送记录表均初始化为空。
4.2事件管理器从DDoS攻击分类模块接收DDoS攻击类型,从僵尸网络溯源模块接收集合C,得到最接近僵尸网络的交换机ID,将DDoS攻击类型、最接近僵尸网络的交换机ID发送给DDoS防御策略库模块。
4.3DDoS防御策略库模块从事件管理器接收DDoS攻击类型,在DDoS防御执行器源代码库中查找与DDoS攻击类型匹配的DDoS防御执行器源代码,向控制器代理发送与DDoS攻击类型匹配的DDoS防御执行器源代码;该模块还从事件管理器接收最接近僵尸网络的交换机ID,将最接近僵尸网络的交换机ID发送给控制器代理。
4.3控制器代理从DDoS防御策略库模块接收DDoS防御执行器源代码(记为E)、最接近僵尸网络的交换机ID,根据最接近僵尸网络的交换机ID找到最接近僵尸网络的交换机,命名为J1,...Jh,...,JU,1≤h≤U,1≤U≤p。
4.4控制器代理检查J1,...,Jh,...,JU的DDoS防御执行器源代码发送记录表(记为F1,...,Fh,...,FU),根据检查情况执行以下步骤,为描述方便,以Fh为例来描述步骤:
4.4.1若Fh为空,控制器代理在Fh中增加一个表项,填写E的DDoS防御执行器源代码号,转第五步;
4.4.2若Fh不为空,则检查Fh中是否有E的DDoS防御执行器源代码号,若没有,控制器代理在Fh中增加一个表项,填写E的DDoS防御执行器源代码号,转步骤5.2;若Fh中有E的DDoS防御执行器源代码号,说明以前发送过E,转步骤5.5。
第五步,数据层面的J1,...,JU并行进行DDoS防御,具体流程以交换机Jh为例,是:
5.1交换机Jh上的交换机代理初始化防御执行器链为空,初始化DDoS防御执行器链中可执行DDoS防御执行器的个数N为0。
5.2交换机代理从控制器代理接收DDoS防御执行器源代码E,将E存储在数据缓存中;
5.3交换机代理将收到的E在交换机的操作系统中编译为可执行的DDoS防御执行器E’。
5.4交换机代理为可执行的DDoS防御执行器E’分配一个DDoS防御执行器 ID,将E’添加到DDoS防御执行模块的D DoS防御执行器链的尾部,令N=N+1。
5.5可执行的DDoS防御执行器E’向交换机代理发送自身所要处理的数据包类型。
5.6交换机代理将E’所请求的数据包类型发送到数据通路,数据通路根据收到的数据包类型将该类型数据包(即待处理的DDoS攻击数据包),发送到DDoS 防御执行模块。
5.7DDoS防御执行模块从数据通路接收待处理的DDoS攻击数据包进行处理。具体流程为:
5.7.1令变量d=1,d表示DDoS防御执行中从链头到链尾第d个可执行 DDoS防御执行器。
5.7.2DDoS防御执行器链接收待处理的DDoS攻击数据包,交给可执行DDoS 防御执行器d。
5.7.3可执行DDoS防御执行器d检查数据包的元数据,看元数据中的目的模块ID是否与DDoS防御执行器d的ID相匹配。
5.7.4若元数据中的目的模块ID与DDoS防御执行器d匹配,转5.7.5;若元数据中的目的模块ID与DDoS防御执行器d的ID不匹配,判定d<N是否成立,若成立,可执行DDoS防御执行器d将此数据包发送到DDoS防御执行器d+1,令 d=d+1,转步骤5.7.3;若d<N不成立,DDoS防御执行器d丢弃此数据包(说明DDoS防御执行器链中没有能处理此数据包的DDoS防御执行器),转步骤 5.7.6。
5.7.5DDoS防御执行器d修改此数据包元数据中的目的模块ID,根据修改后的元数据,数据通路不再对此数据包进行正常转发,而是进行可执行DDoS防御执行器d所指定的操作,如丢弃或发送到交换机中其它专用软件进行进一步检测,转步骤5.7。
5.7.6报错,结束。
采用本发明可以达到以下技术效果:
1.本发明通过数据层面与控制层面协同合作方式,在数据层面监测DDoS攻击异常流量并进行特征提取,完成粗粒度检测;然后利用控制层面的计算资源 DDoS攻击进行分类与僵尸网络溯源,完成细粒度检测,既能检测出DDoS攻击类型,又能检测出可能接近僵尸网络的交换机集合C,有效提高了DDoS攻击检测的速度和准确度。
2.数据平面根据控制平面下发的DDoS防御方法,对于同种攻击,交换机可以在本地自动进行DDoS防御,对DDoS攻击数据包作出处理,不再需要控制器频繁下发防御方法。这种方法使得原先运行在控制平面的DDoS防御应用可以动态加载并运行在交换机上,从而在减小SDN南向接口压力。
3.发挥数据平面设备未被充分利用的计算能力和距离真正的报文转发较近的优势,分担控制平面的压力,从而达到充分利用SDN可协同防御的优势。
4.与现有的基于SDN的DDoS防御方法相比,本发明不要求控制平面频繁处理由SDN数据平面上传的报文,能做到在交换机本地智能地自动进行防御。用于解决现有技术不能高效利用SDN架构灵活性,造成DDoS防御中SDN南向接口与控制平面开销太大的问题。
附图说明
图1为背景技术中基于SDN的防御架构示意图
图2为本发明的总体流程图;
图3为本发明第一步基于SDN的DDoS攻击跨层协同防御架构逻辑结构图;
图4为本发明DDoS防御执行模块的逻辑结构图;
图5为步骤2.5所述异常数据流量数据包样本的结构图。
具体实施方式
图2为本发明的总体流程图;本发明包括以下步骤:
第一步,构建基于SDN的DDoS攻击跨层协同防御架构,如图3所示,基于 SDN的DDoS攻击跨层协同防御架构由数据层面和控制层面构成,控制层面通过南向接口与数据层面进行通信。数据层面由交换机构成,负责数据的传输;控制层面由SDN控制器构成,负责对数据层面中交换机的管理。
数据层面的SDN交换机上除装有交换机代理,并有数据通路外,还装有 DDoS攻击感知模块、特征提取模块、DDoS防御执行模块。交换机中的硬件计数器对所有经过交换机数据通路的数据包和比特数进行计数。
控制层面的SDN控制器除装有控制器代理外,还装有事件管理器、DDoS攻击分类模块、僵尸网络溯源模块、DDoS防御策略库模块。
DDoS攻击感知模块与交换机代理、硬件计数器相连,DDoS攻击感知模块从硬件计数器获取一段时间经过SDN交换机数据通路的数据包和比特数,计算这段时间数据流的包速率和比特率,计算并记录这段时间的数据流量特征(包括数据流流量大小的特征与流量不对称性的特征,称为历史数据流量特征)。根据历史数据流量特征,判断当前(即上述一段时间过后的所有需要判定数据流量特征是否正常的时间)数据流量特征是否在正常范围内,若不在则判断当前数据流为DDoS攻击异常流(简称异常流)。若当前数据流为异常流,DDoS攻击感知模块将异常流ID(即数据流的编号)发送给交换机代理。
特征提取模块与交换机代理、数据缓存相连。特征提取模块从数据缓存获得异常流量数据包样本,从异常流量数据包样本中提取异常流量特征,将提取的异常流量特征发送给交换机代理。
交换机代理与DDoS攻击感知模块、特征提取模块、数据缓存、DDoS防御执行模块、控制层面的控制器代理相连。交换机代理从DDoS攻击感知模块接收异常流ID,向数据通路发送异常流ID。数据通路将符合异常流ID的数据包作为异常流量数据包样本复制到数据缓存。交换机代理还从特征提取模块接收异常流量特征,从数据缓存获得异常流量数据包样本。交换机代理将异常流量数据包样本、异常流量特征、异常流ID、交换机ID打包成DDoS攻击异常流量数据,发送至控制层面的控制器代理。此外,交换机代理还从控制器代理接收DDoS防御执行器源代码,将DDoS防御执行器源代码存储在数据缓存中,然后将DDoS 防御执行器源代码在交换机的操作系统中编译为可执行DDoS防御执行器,交换机代理为可执行DDoS防御执行器分配一个DDoS防御执行器ID,同时将可执行 DDoS防御执行器加入到DDoS防御执行模块中,且交换机代理从可执行DDoS防御执行器接收该可执行DDoS防御执行器处理的数据包类型,将此数据包类型发送到数据通路,数据通路根据收到的数据包类型将该类型数据包(即待处理的 DDoS攻击数据包)发送到DDoS防御执行模块。
如图4所示,DDoS防御执行模块是一个DDoS防御执行器链,DDoS防御执行器链由N个DDoS防御执行器组成。交换机代理在交换机启动时初始化一个空的防御执行器链,将编译后得到的可执行DDoS防御执行器按时间顺序依次添加到防御执行器链的尾端,组成DDoS防御执行器链。DDoS防御执行模块从数据通路接收待处理的DDoS攻击数据包,对待处理的DDoS攻击数据包进行处理,向数据通路发送已处理的DDoS攻击数据包。
控制器代理与交换机代理、事件管理器、DDoS防御策略库模块相连,控制器代理从交换机代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量数据发送给事件管理器。控制器代理还从DDoS防御策略库模块接收DDoS防御执行器源代码、最接近僵尸网络的交换机集合C,C中元素为最接近僵尸网络的交换机ID,假设C中有U个元素,U为正整数,找到与最接近僵尸网络的交换机ID 匹配的交换机,命名为J1,...Jh,...,JU,1≤h≤U。控制器代理为每个与之相连的交换机分别维持一个DDoS防御执行器源代码发送记录表。DDoS防御执行器源代码发送记录表的每个表项只有一个域,为DDoS防御执行器源代码号,若表中有 DDoS防御执行器源代码号,则表明该DDoS防御执行器源代码号所对应的DDoS 防御执行器源代码已经被控制器代理发送过。控制器代理通过查询DDoS防御执行器源代码发送记录表判断是否向交换机J1,...Jh,...,JU中的交换机代理发送过 DDoS防御执行器源代码,若未发送过,则向交换机J1,...Jh,...,JU中的交换机代理发送DDoS防御执行器源代码。
事件管理器与控制器代理、DDoS攻击分类模块、僵尸网络溯源模块、DDoS 防御策略库模块相连,事件管理器从控制器代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量数据中的异常流量特征转发给DDoS攻击分类模块,将异常流量数据包样本、异常流ID、交换机ID转发给僵尸网络溯源模块。事件管理器还从DDoS攻击分类模块接收DDoS攻击类型,从僵尸网络溯源器模块接收最接近僵尸网络的交换机集合C,将DDoS攻击类型、最接近僵尸网络的交换机集合C发送给DDoS防御策略库模块;
DDoS攻击分类模块与事件管理器相连,该模块从事件管理器获得异常流量特征,利用机器学习方法进行DDoS攻击分类,得到DDoS攻击类型,将DDoS 攻击类型发送给事件管理器。
僵尸网络溯源模块与事件管理器相连,该模块从事件管理器获得异常流量数据包样本、异常数据流ID、交换机ID,进行僵尸网络溯源,接近接近定位得到最接近僵尸网络的交换机集合C,僵尸网络溯源模块将集合C发送给事件管理器。
DDoS防御策略库模块与事件管理器、控制器代理相连,DDoS防御策略库模块中有DDoS防御执行器源代码库,该模块从事件管理器接收DDoS攻击类型,根据DDoS攻击类型在DDoS防御执行器源代码库中选择与DDoS攻击类型匹配的 DDoS防御执行器源代码,将与DDoS攻击类型匹配的DDoS防御执行器源代码发送给控制器代理;同时,DDoS防御策略库模块从事件管理器接收最接近僵尸网络的交换机集合C,向控制器代理发送最接近僵尸网络的交换机集合C。
第二步,数据层面对所有通过交换机的数据流进行粗粒度检测,方法为:
2.1数据层面的DDoS攻击感知模块检测异常流,方法为:
2.1.1DDoS攻击感知模块将4个最大长度为c(10≤c≤20)的队列B、P、 AByte、APkt初始化为空队列。其中B为总平均比特率队列(含数据通路收到和发出的比特数)、P为总平均包速率队列(含数据通路收到和发出的数据包)、AByte为比特率不对称性队列、APkt为包速率不对称性队列。令检测周期为T,T满足 1秒≤T≤4秒。
2.1.2记当前交换机系统时间为t,令第一时间变量tn-1=t;
2.1.3DDoS攻击感知模块读取计数器,获取计数器tn-1时刻的记录:tn-1时刻数据通路收到的比特数tn-1时刻数据通路发出的比特数tn-1时刻数据通路收到的数据包数tn-1时刻数据通路发出的数据包数
2.1.4令第二时间变量tn=tn-1+T,令变量m=1;
2.1.5DDoS攻击感知模块在tn时刻读取计数器,获取计数器tn时刻的记录:tn时刻数据通路收到的比特数tn时刻数据通路发出的比特数tn时刻数据通路收到的数据包数tn时刻数据通路发出的数据包数
2.1.6DDoS攻击感知模块计算tn时刻数据通路收到与发出数据的比特率和包速率:
tn时刻收到数据平均比特率
tn时刻发出数据平均比特率
tn时刻收到数据包平均速率
tn时刻发出数据包平均速率
2.1.7DDoS攻击感知模块计算tn时刻数据流特征:
tn时刻总的平均比特率
tn时刻总的平均包速率
tn时刻比特率不对称性
tn时刻包速率不对称性
其中和对应数据流的流量大小特征;和对应数据流的流量不对称性特征。
2.1.8若m≤c,将分别加入到队列B、P、AByte、APkt队尾,令n=n+1,m=m+1,转步骤2.1.6;若m>c,分别从B、P、AByte、APkt中丢弃一个最早加入的元素,然后将分别加入到队列B、P、 AByte、APkt的队尾;将更新后的4个队列组成矩阵V,V大小为4×c,V中每一行为一个队列,转2.1.9。
2.1.9对V计算加权平均值和标准差σi;
对V每一行求加权平均值,得到加权平均值用
表示,分别表示队列B、P、AByte、APkt的加权平均值。vir表示vi中第r项,r为正整数且1≤r≤c,Wir为vir的权值,
对V每一行求标准差,得到标准差σ1、σ2、σ3、σ4,用σi(i=1,2,3,4)表示,分别表示队列B、P、AByte、APkt的标准差(参见2005年清华大学出版社《应用统计学》,李时,第一章,第17页)。
2.1.10令第三时间变量tn+1=tn+T,利用与σi对tn+1=tn+T时刻的正常数据流特征的范围区间进行预测:
为区间下限,表示正常数据流第i个特征的最小值;为区间上限,表示正常数据流第i特征的最大值。
2.1.11在tn+1时刻DDoS攻击感知模块读取计数器,获取计数器tn+1时刻的记录,计算将以上四个值组成矩阵V',V'大小为4×1。V' 中元素用vi表示,分别对应
2.1.12对于V'中每个元素,判断vi是否在区间外,即分别判断v1是否在区间外,v2是否在区间外,v3是否在区间 外,v4是否在区间外。若vi都在区间外,则判断tn+1时刻的数据流为异常流,得到异常流ID,转步骤2.2;若vi中至少有一个在区间内,则判断tn+1时刻未出现DDoS攻击异常流,令n=n+1,m=m+1,转步骤2.1.8;
2.2攻击感知模块将异常流ID发送给交换机代理;
2.3交换机代理从DDoS攻击感知模块接收异常流ID,向数据通路发送异常流ID;
2.4数据通路将符合异常流ID的数据包作为异常流量数据包样本复制到交换机的数据缓存;
2.5特征提取模块从数据缓存获得异常流量数据包样本,从中提取异常流量特征,方法是:
如图5所示,若异常数据流量数据包样本是TCP(Transmission ControlProtocol)数据包,则提取该TCP数据包中的七个特征:SYN(Synchronous)flag 置位的TCP数据包块、ACK(Acknowledgement)flag置位的TCP数据包块、源 IP地址的熵、目的IP地址的熵、源端口号的熵、目的端口号的熵、TCP序号的熵,转步骤2.6;若异常数据流量数据包样本是UDP(User Datagram Protocol) 数据包,则提取该UDP数据包中的五个特征:目标端口号≤1024的UDP数据包块、目标端口号≥1024的UDP数据包块、源IP地址的熵、目的IP地址的熵、 UDP数据包长度的熵,转步骤2.6;若异常数据流量数据包样本是ICMP(InternetControl Message Protocol)数据包,则提取该ICMP数据包中的四个特征:源 IP地址的熵、目的IP地址的熵、TTL值的熵、全部ICMP数据包块,转步骤2.6;
2.6特征提取模块并向交换机代理发送异常流量特征。
2.7交换机代理从数据缓存读取异常流量数据包样本,并从特征提取模块接收异常数据流量特征。
2.8交换机代理将异常流量数据包样本、异常数据流量特征、异常流ID、交换机ID打包为DDoS攻击异常流量数据,将DDoS攻击异常流量数据发送给控制层面上的控制器代理。
2.9数据层面和控制层面并行进行以下工作:数据层面转2.1.8继续进行粗粒度检测,并在得到控制层面下发的DDoS防御执行器源代码后并行进行DDoS 防御;控制层面执行第三步。
第三步,控制层面对DDoS攻击异常流量数据进行细粒度检测,方法是:
3.1控制器代理将接收到的DDoS攻击异常流量数据发送给事件管理器。
3.2事件管理器从控制器代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量特征发送给DDoS攻击分类模块,将异常流量数据包样本、异常数据流ID、交换机ID发送给僵尸网络溯源模块。
3.3DDoS攻击分类模块从事件管理器接收异常数据流量特征,将异常数据流量特征作为机器学习中基于自动编码器的分类器的输入进行DDoS攻击分类,得到DDoS攻击类型,将DDoS攻击类型发送给事件管理器。
3.4僵尸网络溯源模块从事件管理器接收异常流量数据包样本、异常流ID、交换机ID,进行僵尸网络溯源,具体方法如下:
3.4.1定义集合A为所有检测到DDoS攻击的交换机,A={a1,a2,...aj,...,aq}, q为数据层面所有检测到DDoS攻击的交换机的个数,为正整数,aj(j为正整数,j≤q)表示一个检测到DDoS攻击的交换机的ID(一般为交换机的IP地址);
3.4.2定义集合S为SDN控制器控制的所有SDN交换机,S={s1,s2,...sk,...,sp},p为SDN控制器控制的所有SDN交换机的个数,为正整数,sk(k为正整数,k≤p) 表示一个SDN控制器所控制的SDN交换机的ID;
3.4.3定义集合C为最接接近僵尸网络的交换机集合,初始化C为空集。
3.4.4判定A是否为空,若A为空,转步骤3.4.5;
若A不为空,从A中取一个元素aj,找到aj的上一跳交换机sk,
若sk∈A,则从集合A中去掉aj,返回步骤3.4.4;
若则aj是所寻找的目标交换机,将aj加入集合C,返回步骤3.4.4;
3.4.5得到A的一个子集集合C中所有交换机的上一跳均不在A中,并且C中交换机为最接近僵尸网络的交换机(即到达僵尸网络的跳数最少的交换机)。经过上述方法,定位得到了最接近僵尸网络的交换机集合C,C 中元素为最接近僵尸网络的交换机ID,C中有U个元素,U为正整数。僵尸网络溯源模块将集合C发送给事件管理器。
第四步,控制层面的SDN控制器在最接近僵尸网络的交换机上部署DDoS防御策略,方法是:
4.1控制器代理将集合S中所有SDN交换机的DDoS防御执行器源代码发送记录表初始化为空,即将s1,s2,...sk,...,sp的DDoS防御执行器源代码发送记录表均初始化为空。
4.2事件管理器从DDoS攻击分类模块接收DDoS攻击类型,从僵尸网络溯源模块接收集合C,得到最接近僵尸网络的交换机ID,将DDoS攻击类型、最接近僵尸网络的交换机ID发送给DDoS防御策略库模块。
4.3DDoS防御策略库模块从事件管理器接收DDoS攻击类型,在DDoS防御执行器源代码库中查找与DDoS攻击类型匹配的DDoS防御执行器源代码,向控制器代理发送与DDoS攻击类型匹配的DDoS防御执行器源代码;该模块还从事件管理器接收最接近僵尸网络的交换机ID,将最接近僵尸网络的交换机ID发送给控制器代理。
4.3控制器代理从DDoS防御策略库模块接收DDoS防御执行器源代码(记为E)、最接近僵尸网络的交换机ID,根据最接近僵尸网络的交换机ID找到最接近僵尸网络的交换机,命名为J1,...Jh,...,JU,1≤h≤U,1≤U≤p。
4.4控制器代理检查J1,...,Jh,...,JU的DDoS防御执行器源代码发送记录表(记为F1,...,Fh,...,FU),根据检查情况执行以下步骤,以Fh为例:
4.4.1若Fh为空,控制器代理在Fh中增加一个表项,填写E的DDoS防御执行器源代码号,转第五步;
4.4.2若Fh不为空,则检查Fh中是否有E的DDoS防御执行器源代码号,若没有,控制器代理在Fh中增加一个表项,填写E的DDoS防御执行器源代码号,转步骤5.2;若Fh中有E的DDoS防御执行器源代码号,说明以前发送过E,转步骤5.5。
第五步,数据层面的J1,...,JU并行进行DDoS防御,具体流程以交换机Jh为例,是:
5.1交换机Jh上的交换机代理初始化防御执行器链为空,初始化DDoS防御执行器链中可执行DDoS防御执行器的个数N为0。
5.2交换机代理从控制器代理接收DDoS防御执行器源代码E,将E存储在数据缓存中;
5.3交换机代理将收到的E在交换机的操作系统中编译为可执行的DDoS防御执行器E’。
5.4交换机代理为可执行的DDoS防御执行器E’分配一个DDoS防御执行器 ID,将E’添加到DDoS防御执行模块的D DoS防御执行器链的尾部,令N=N+1。
5.5可执行的DDoS防御执行器E’向交换机代理发送自身所要处理的数据包类型。
5.6交换机代理将E’所请求的数据包类型发送到数据通路,数据通路根据收到的数据包类型将该类型数据包(即待处理的DDoS攻击数据包),发送到DDoS 防御执行模块。
5.7DDoS防御执行模块从数据通路接收待处理的DDoS攻击数据包进行处理。具体流程为:
5.7.1令变量d=1,d表示DDoS防御执行中从链头到链尾第d个可执行 DDoS防御执行器。
5.7.2DDoS防御执行器链接收待处理的DDoS攻击数据包,交给可执行DDoS 防御执行器d。
5.7.3可执行DDoS防御执行器d检查数据包的元数据,看元数据中的目的模块ID是否与DDoS防御执行器d的ID相匹配。
5.7.4若元数据中的目的模块ID与DDoS防御执行器d匹配,转5.7.5;若元数据中的目的模块ID与DDoS防御执行器d的ID不匹配,判定d<N是否成立,若成立,可执行DDoS防御执行器d将此数据包发送到DDoS防御执行器d+1,令 d=d+1,转步骤5.7.3;若d<N不成立,DDoS防御执行器d丢弃此数据包(说明DDoS防御执行器链中没有能处理此数据包的DDoS防御执行器),转步骤 5.7.6。
5.7.5DDoS防御执行器d修改此数据包元数据中的目的模块ID,根据修改后的元数据,数据通路不再对此数据包进行正常转发,而是进行可执行DDoS防御执行器d所指定的操作,如丢弃或发送到交换机中其它专用软件进行进一步检测,转步骤5.7。
5.7.6报错,结束。
Claims (6)
1.一种基于SDN的DDoS攻击跨层协同防御方法,其特征在于包括以下步骤:
第一步,构建基于SDN的DDoS攻击跨层协同防御架构,方法是:
基于SDN的DDoS攻击跨层协同防御架构由数据层面和控制层面构成,控制层面通过南向接口与数据层面进行通信;数据层面由交换机构成,负责数据的传输;控制层面由SDN控制器构成,负责对数据层面中交换机的管理;
数据层面的SDN交换机上除装有交换机代理,并有数据通路外,还装有DDoS攻击感知模块、特征提取模块、DDoS防御执行模块,交换机中的硬件计数器对所有经过交换机数据通路的数据包和比特数进行计数;
控制层面的SDN控制器除装有控制器代理外,还装有事件管理器、DDoS攻击分类模块、僵尸网络溯源模块、DDoS防御策略库模块;
DDoS攻击感知模块与交换机代理、硬件计数器相连,DDoS攻击感知模块检测简称异常流的DDoS攻击异常流,将异常流ID发送给交换机代理;
特征提取模块与交换机代理、数据缓存相连,特征提取模块从数据缓存获得异常流量数据包样本,从异常流量数据包样本中提取异常流量特征,将提取的异常流量特征发送给交换机代理;
交换机代理与DDoS攻击感知模块、特征提取模块、数据缓存、DDoS防御执行模块、控制层面的控制器代理相连;交换机代理从DDoS攻击感知模块接收异常流ID,向数据通路发送异常流ID;数据通路将符合异常流ID的数据包作为异常流量数据包样本复制到数据缓存;交换机代理还从特征提取模块接收异常流量特征,从数据缓存获得异常流量数据包样本;交换机代理将异常流量数据包样本、异常流量特征、异常流ID、交换机ID打包成DDoS攻击异常流量数据,发送至控制层面的控制器代理;此外,交换机代理还从控制器代理接收DDoS防御执行器源代码,将DDoS防御执行器源代码存储在数据缓存中,然后将DDoS防御执行器源代码在交换机的操作系统中编译为可执行DDoS防御执行器,交换机代理为可执行DDoS防御执行器分配一个DDoS防御执行器ID,同时将可执行DDoS防御执行器加入到DDoS防御执行模块中,且交换机代理从可执行DDoS防御执行器接收该可执行DDoS防御执行器处理的数据包类型,将此数据包类型发送到数据通路,数据通路根据收到的数据包类型将该类型数据包发送到DDoS防御执行模块;
DDoS防御执行模块是一个DDoS防御执行器链,DDoS防御执行器链由N个DDoS防御执行器组成,N为正整数,交换机代理在交换机启动时初始化一个空的防御执行器链,将编译后得到的可执行DDoS防御执行器按时间顺序依次添加到防御执行器链的尾端,组成DDoS防御执行器链;DDoS防御执行模块从数据通路接收待处理的DDoS攻击数据包,对待处理的DDoS攻击数据包进行处理,向数据通路发送已处理的DDoS攻击数据包;
控制器代理与交换机代理、事件管理器、DDoS防御策略库模块相连,控制器代理从交换机代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量数据发送给事件管理器;控制器代理还从DDoS防御策略库模块接收DDoS防御执行器源代码、最接近僵尸网络的交换机集合C,C中元素为最接近僵尸网络的交换机ID,C中有U个元素,U为正整数,找到与最接近僵尸网络的交换机ID匹配的交换机,命名为J1,...Jh,...,JU,1≤h≤U;控制器代理为每个与之相连的交换机分别维持一个DDoS防御执行器源代码发送记录表;DDoS防御执行器源代码发送记录表的每个表项只有一个域,为DDoS防御执行器源代码号,若表中有DDoS防御执行器源代码号,则表明该DDoS防御执行器源代码号所对应的DDoS防御执行器源代码已经被控制器代理发送过;控制器代理通过查询DDoS防御执行器源代码发送记录表判断是否向交换机J1,...Jh,...,JU中的交换机代理发送过DDoS防御执行器源代码,若未发送过,则向交换机J1,...Jh,...,JU中的交换机代理发送DDoS防御执行器源代码;
事件管理器与控制器代理、DDoS攻击分类模块、僵尸网络溯源模块、DDoS防御策略库模块相连,事件管理器从控制器代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量数据中的异常流量特征转发给DDoS攻击分类模块,将异常流量数据包样本、异常流ID、交换机ID转发给僵尸网络溯源模块;事件管理器还从DDoS攻击分类模块接收DDoS攻击类型,从僵尸网络溯源器模块接收最接近僵尸网络的交换机集合C,将DDoS攻击类型、最接近僵尸网络的交换机集合C发送给DDoS防御策略库模块;
DDoS攻击分类模块与事件管理器相连,该模块从事件管理器获得异常流量特征,利用机器学习方法进行DDoS攻击分类,得到DDoS攻击类型,将DDoS攻击类型发送给事件管理器;
僵尸网络溯源模块与事件管理器相连,该模块从事件管理器获得异常流量数据包样本、异常数据流ID、交换机ID,进行僵尸网络溯源,得到最接近僵尸网络的交换机集合C,僵尸网络溯源模块将集合C发送给事件管理器;
DDoS防御策略库模块与事件管理器、控制器代理相连,DDoS防御策略库模块中有DDoS防御执行器源代码库,该模块从事件管理器接收DDoS攻击类型,根据DDoS攻击类型在DDoS防御执行器源代码库中选择与DDoS攻击类型匹配的DDoS防御执行器源代码,将与DDoS攻击类型匹配的DDoS防御执行器源代码发送给控制器代理;同时,DDoS防御策略库模块从事件管理器接收最接近僵尸网络的交换机集合C,向控制器代理发送最接近僵尸网络的交换机集合C;
第二步,数据层面对所有通过交换机的数据流进行粗粒度检测,方法为:
2.1 SDN数据层面的DDoS攻击感知模块检测DDoS攻击异常流,简称异常流,得到异常流ID;
2.2 攻击感知模块将异常流ID发送给交换机代理;
2.3 交换机代理从DDoS攻击感知模块接收异常流ID,向数据通路发送异常流ID;
2.4 数据通路将符合异常流ID的数据包作为异常流量数据包样本复制到交换机的数据缓存;
2.5 特征提取模块从数据缓存获得异常流量数据包样本,从中提取异常流量特征;
2.6 特征提取模块并向交换机代理发送异常流量特征;
2.7 交换机代理从数据缓存读取异常流量数据包样本,并从特征提取模块接收异常数据流量特征;
2.8 交换机代理将异常流量数据包样本、异常数据流量特征、异常流ID、交换机ID打包为DDoS攻击异常流量数据,将DDoS攻击异常流量数据发送给控制层面上的控制器代理;
2.9 数据层面和控制层面并行进行以下工作:数据层面转2.1.8继续进行粗粒度检测,并在得到控制层面下发的DDoS防御执行器源代码后并行进行DDoS防御;控制层面执行第三步;
第三步,控制层面对DDoS攻击异常流量数据进行细粒度检测,方法是:
3.1 控制器代理将接收到的DDoS攻击异常流量数据发送给事件管理器;
3.2 事件管理器从控制器代理接收DDoS攻击异常流量数据,将DDoS攻击异常流量特征发送给DDoS攻击分类模块,将异常流量数据包样本、异常数据流ID、交换机ID发送给僵尸网络溯源模块;
3.3 DDoS攻击分类模块从事件管理器接收异常数据流量特征,进行DDoS攻击分类,得到DDoS攻击类型;
3.4 僵尸网络溯源模块从事件管理器接收异常流量数据包样本、异常流ID、交换机ID,进行僵尸网络溯源,具体方法如下:
3.4.1 定义集合A为所有检测到DDoS攻击的交换机,A={a1,a2,...aj,...,aq},q为数据层面所有检测到DDoS攻击的交换机的个数,为正整数,aj表示一个检测到DDoS攻击的交换机的ID,j为正整数,j≤q;
3.4.2 定义集合S为SDN控制器控制的所有SDN交换机,S={s1,s2,...sk,...,sp},p为SDN控制器控制的所有SDN交换机的个数,为正整数,sk表示一个SDN控制器所控制的SDN交换机的ID,k为正整数,k≤p;
3.4.3 定义集合C为最接接近僵尸网络的交换机集合,初始化C为空集。
3.4.4 判定A是否为空,若A为空,转步骤3.4.5;若A不为空,从A中取一个元素aj,找到aj的上一跳交换机sk,若sk∈A,则从集合A中去掉aj,返回步骤3.4.4;若则aj是所寻找的目标交换机,将aj加入集合C,返回步骤3.4.4;
3.4.5 得到A的一个子集C,集合C中所有交换机的上一跳均不在A中,并且C中交换机为最接近僵尸网络的交换机即到达僵尸网络的跳数最少的交换机,C中元素为最接近僵尸网络的交换机ID;
第四步,控制层面的SDN控制器在最接近僵尸网络的交换机上部署DDoS防御策略,方法是:
4.1 控制器代理将集合S中所有SDN交换机的DDoS防御执行器源代码发送记录表初始化为空,即将s1,s2,...sk,...,sp的DDoS防御执行器源代码发送记录表均初始化为空;
4.2 事件管理器从DDoS攻击分类模块接收DDoS攻击类型,从僵尸网络溯源模块接收集合C,得到最接近僵尸网络的交换机ID,将DDoS攻击类型、最接近僵尸网络的交换机ID发送给DDoS防御策略库模块;
4.3 DDoS防御策略库模块从事件管理器接收DDoS攻击类型,在DDoS防御执行器源代码库中查找与DDoS攻击类型匹配的DDoS防御执行器源代码,向控制器代理发送与DDoS攻击类型匹配的DDoS防御执行器源代码;该模块还从事件管理器接收最接近僵尸网络的交换机ID,将最接近僵尸网络的交换机ID发送给控制器代理;
4.3 控制器代理从DDoS防御策略库模块接收DDoS防御执行器源代码E、最接近僵尸网络的交换机ID,根据最接近僵尸网络的交换机ID找到最接近僵尸网络的交换机,命名为J1,...Jh,...,JU,1≤h≤U,1≤U≤p;
4.4 控制器代理检查J1,...,Jh,...,JU的DDoS防御执行器源代码发送记录表,记为F1,...,Fh,...,FU,根据检查情况执行以下步骤,检查Fh的过程是:
4.4.1 若Fh为空,控制器代理在Fh中增加一个表项,填写E的DDoS防御执行器源代码号,转第五步;
4.4.2 若Fh不为空,则检查Fh中是否有E的DDoS防御执行器源代码号,若没有,控制器代理在Fh中增加一个表项,填写E的DDoS防御执行器源代码号,转步骤5.2;若Fh中有E的DDoS防御执行器源代码号,说明以前发送过E,转步骤5.5;
第五步,数据层面的J1,...,JU并行进行DDoS防御,交换机Jh进行DDoS防御,的过程是:
5.1 交换机Jh上的交换机代理初始化防御执行器链为空,初始化DDoS防御执行器链中可执行DDoS防御执行器的个数N为0;
5.2 交换机代理从控制器代理接收DDoS防御执行器源代码E,将E存储在数据缓存中;
5.3 交换机代理将收到的E在交换机的操作系统中编译为可执行的DDoS防御执行器E’;
5.4 交换机代理为可执行的DDoS防御执行器E’分配一个DDoS防御执行器ID,将E’添加到DDoS防御执行模块的D DoS防御执行器链的尾部,令N=N+1;
5.5 可执行的DDoS防御执行器E’向交换机代理发送自身所要处理的数据包类型;
5.6 交换机代理将E’所请求的数据包类型发送到数据通路,数据通路根据收到的数据包类型将该类型数据包,发送到DDoS防御执行模块;
5.7 DDoS防御执行模块从数据通路接收待处理的DDoS攻击数据包进行处理,具体流程为:
5.7.1 令变量d=1,d表示DDoS防御执行中从链头到链尾第d个可执行DDoS防御执行器;
5.7.2 DDoS防御执行器链接收待处理的DDoS攻击数据包,交给可执行DDoS防御执行器d;
5.7.3 可执行DDoS防御执行器d检查数据包的元数据,看元数据中的目的模块ID是否与DDoS防御执行器d的ID相匹配;
5.7.4若 元数据中的目的模块ID与DDoS防御执行器d匹配,转5.7.5;若元数据中的目的模块ID与DDoS防御执行器d的ID不匹配,判定d<N是否成立,若成立,可执行DDoS防御执行器d将此数据包发送到DDoS防御执行器d+1,令d=d+1,转步骤5.7.3;若d<N不成立,DDoS防御执行器d丢弃此数据包,转步骤5.7.6;
5.7.5 DDoS防御执行器d修改此数据包元数据中的目的模块ID,根据修改后的元数据,数据通路不再对此数据包进行正常转发,而是进行可执行DDoS防御执行器d所指定的操作,转步骤5.7;
5.7.6 报错,结束。
2.如权利要求1所述的基于SDN的DDoS攻击跨层协同防御方法,其特征在于所述异常流ID指该异常数据流的编号;所述交换机的ID为交换机的IP地址。
3.如权利要求1所述的基于SDN的DDoS攻击跨层协同防御方法,其特征在于2.1步所述DDoS攻击感知模块检测异常流的方法为:
2.1.1 DDoS攻击感知模块将4个最大长度为c的队列B、P、AByte、APkt初始化为空队列,其中B为总平均比特率队列、P为总平均包速率队列、AByte为比特率不对称性队列、APkt为包速率不对称性队列,c为正整数;令检测周期为T,T以秒为单位;
2.1.2 记当前交换机系统时间为t,令第一时间变量tn-1=t;
2.1.3 DDoS攻击感知模块读取计数器,获取计数器tn-1时刻的记录:tn-1时刻数据通路收到的比特数tn-1时刻数据通路发出的比特数tn-1时刻数据通路收到的数据包数tn-1时刻数据通路发出的数据包数
2.1.4 令第二时间变量tn=tn-1+T,令变量m=1;
2.1.5 DDoS攻击感知模块在tn时刻读取计数器,获取计数器tn时刻的记录:tn时刻数据通路收到的比特数tn时刻数据通路发出的比特数tn时刻数据通路收到的数据包数tn时刻数据通路发出的数据包数
2.1.6 DDoS攻击感知模块计算tn时刻数据通路收到与发出数据的比特率和包速率:
tn时刻收到数据平均比特率
tn时刻发出数据平均比特率
tn时刻收到数据包平均速率
tn时刻发出数据包平均速率
2.1.7 DDoS攻击感知模块计算tn时刻数据流特征:
tn时刻总的平均比特率
tn时刻总的平均包速率
tn时刻比特率不对称性
tn时刻包速率不对称性
其中和对应数据流的流量大小特征;和对应数据流的流量不对称性特征;
2.1.8 若m≤c,将分别加入到队列B、P、AByte、APkt队尾,令n=n+1,m=m+1,转步骤2.1.6;若m>c,分别从B、P、AByte、APkt中丢弃一个最早加入的元素,然后将分别加入到队列B、P、AByte、APkt的队尾;将更新后的4个队列组成矩阵V,V大小为4×c,V中每一行为一个队列,转2.1.9;
2.1.9 对V计算加权平均值和标准差σi:
对V每一行求加权平均值,得到加权平均值用表示,分别表示队列B、P、AByte、APkt的加权平均值,1≤i≤4,vir表示vi中第r项,r为正整数且1≤r≤c,Wir为vir的权值,对V每一行求标准差,得到标准差σ1、σ2、σ3、σ4,用σi表示,分别表示队列B、P、AByte、APkt的标准差;
2.1.10 令tn+1=tn+T,为第三时间变量,利用与σi对tn+1=tn+T时刻的正常数据流特征的范围区间(Vi l,Vi u)进行预测:
<mrow>
<msubsup>
<mi>V</mi>
<mi>i</mi>
<mi>u</mi>
</msubsup>
<mo>=</mo>
<mover>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
<mo>&OverBar;</mo>
</mover>
<mo>+</mo>
<mn>3</mn>
<mo>&times;</mo>
<msub>
<mi>&sigma;</mi>
<mi>i</mi>
</msub>
<mo>;</mo>
</mrow>
<mrow>
<msubsup>
<mi>V</mi>
<mi>i</mi>
<mi>l</mi>
</msubsup>
<mo>=</mo>
<mover>
<msub>
<mi>v</mi>
<mi>i</mi>
</msub>
<mo>&OverBar;</mo>
</mover>
<mo>-</mo>
<mn>3</mn>
<mo>&times;</mo>
<msub>
<mi>&sigma;</mi>
<mi>i</mi>
</msub>
<mo>;</mo>
</mrow>
Vi l为区间下限,表示正常数据流第i个特征的最小值;Vi u为区间上限,表示正常数据流第i特征的最大值;
2.1.11 在tn+1时刻DDoS攻击感知模块读取计数器,获取计数器tn+1时刻的记录,计算将这四个值组成矩阵V',V'大小为4×1;
2.1.12 判断V'中元素vi是否在区间(Vi l,Vi u)外,即分别判断v1是否在区间(V1 l,V1 u)外,v2是否在区间外,v3是否在区间外,v4是否在区间外,若vi都在区间(Vi l,Vi u)外,则判断tn+1时刻的数据流为异常流,得到异常流ID,结束;若vi中至少有一个在区间(Vi l,Vi u)内,则判断tn+1时刻未出现DDoS攻击异常流量,令n=n+1,m=m+1,转步骤2.1.8。
4.如权利要求3所述的基于SDN的DDoS攻击跨层协同防御方法,其特征在于所述c满足10≤c≤20,所述T满足1秒≤T≤4秒。
5.如权利要求1所述的基于SDN的DDoS攻击跨层协同防御方法,其特征在于2.5步所述特征提取模块提取异常流量特征的方法是:若异常数据流量数据包样本是TCP数据包,则提取该TCP数据包中的七个特征:SYN flag置位的TCP数据包块、ACK flag置位的TCP数据包块、源IP地址的熵、目的IP地址的熵、源端口号的熵、目的端口号的熵、TCP序号的熵;若异常数据流量数据包样本是UDP数据包,则提取该UDP数据包中的五个特征:目标端口号≤1024的UDP数据包块、目标端口号≥1024的UDP数据包块、源IP地址的熵、目的IP地址的熵、UDP数据包长度的熵;若异常数据流量数据包样本是ICMP数据包,则提取该ICMP数据包中的四个特征:源IP地址的熵、目的IP地址的熵、TTL值的熵、全部ICMP数据包块。
6.如权利要求1所述的基于SDN的DDoS攻击跨层协同防御方法,其特征在于3.3步所述DDoS攻击分类模块进行DDoS攻击分类的方法是:将异常数据流量特征作为机器学习中基于自动编码器的分类器的输入进行DDoS攻击分类,得到DDoS攻击类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810038542.6A CN107959690B (zh) | 2018-01-16 | 2018-01-16 | 基于软件定义网络的DDoS攻击跨层协同防御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810038542.6A CN107959690B (zh) | 2018-01-16 | 2018-01-16 | 基于软件定义网络的DDoS攻击跨层协同防御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107959690A true CN107959690A (zh) | 2018-04-24 |
CN107959690B CN107959690B (zh) | 2019-07-05 |
Family
ID=61955831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810038542.6A Active CN107959690B (zh) | 2018-01-16 | 2018-01-16 | 基于软件定义网络的DDoS攻击跨层协同防御方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107959690B (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108282497A (zh) * | 2018-04-28 | 2018-07-13 | 电子科技大学 | 针对SDN控制平面的DDoS攻击检测方法 |
CN108632270A (zh) * | 2018-05-03 | 2018-10-09 | 河海大学常州校区 | 基于软件定义网络的防低速率TCP DoS攻击方法 |
CN108833376A (zh) * | 2018-05-30 | 2018-11-16 | 中国人民解放军战略支援部队信息工程大学 | 面向软件定义网络的DoS攻击检测方法 |
CN108881241A (zh) * | 2018-06-26 | 2018-11-23 | 华中科技大学 | 一种面向软件定义网络的动态源地址验证方法 |
CN108881192A (zh) * | 2018-06-04 | 2018-11-23 | 上海交通大学 | 一种基于深度学习的加密型僵尸网络检测系统及方法 |
CN109005157A (zh) * | 2018-07-09 | 2018-12-14 | 华中科技大学 | 一种软件定义网络中DDoS攻击检测与防御方法与系统 |
CN109617931A (zh) * | 2019-02-20 | 2019-04-12 | 电子科技大学 | 一种SDN控制器的DDoS攻击防御方法及防御系统 |
CN110177115A (zh) * | 2019-06-10 | 2019-08-27 | 中国民航大学 | 基于多特征融合的LDoS攻击检测方法 |
CN110535861A (zh) * | 2019-08-30 | 2019-12-03 | 杭州迪普信息技术有限公司 | 一种识别syn攻击行为中统计syn包数量的方法及装置 |
CN110636059A (zh) * | 2019-09-18 | 2019-12-31 | 中盈优创资讯科技有限公司 | 网络攻击防御系统及方法、sdn控制器、路由器 |
CN110830474A (zh) * | 2019-11-08 | 2020-02-21 | 中盈优创资讯科技有限公司 | 网络攻击防护系统及方法、流量控制装置 |
CN111163062A (zh) * | 2019-12-12 | 2020-05-15 | 之江实验室 | 一种针对交火攻击的多网络地址跳变安全防御方法 |
CN111740950A (zh) * | 2020-05-13 | 2020-10-02 | 南京邮电大学 | 一种SDN环境DDoS攻击检测防御方法 |
CN112367213A (zh) * | 2020-10-12 | 2021-02-12 | 中国科学院计算技术研究所 | 面向sdn网络的策略异常检测方法、系统、装置及存储介质 |
CN112422482A (zh) * | 2019-08-23 | 2021-02-26 | 东北大学秦皇岛分校 | 一种面向服务的尾端链路洪泛攻击过滤方法 |
CN112839007A (zh) * | 2019-11-22 | 2021-05-25 | 深圳布洛城科技有限公司 | 一种网络攻击的防御方法及装置 |
CN112866281A (zh) * | 2021-02-07 | 2021-05-28 | 辽宁科技大学 | 一种分布式实时DDoS攻击防护系统及方法 |
CN113364797A (zh) * | 2021-06-18 | 2021-09-07 | 广东省新一代通信与网络创新研究院 | 一种防ddos攻击的网络系统 |
CN113395288A (zh) * | 2021-06-24 | 2021-09-14 | 浙江德迅网络安全技术有限公司 | 基于sdwan主动防御ddos系统 |
KR20210133103A (ko) * | 2020-04-28 | 2021-11-05 | 한국과학기술원 | 메타휴리스틱 클러스터링을 이용한 디도스 공격 탐지 방법 및 장치 |
CN114422235A (zh) * | 2022-01-18 | 2022-04-29 | 福州大学 | 基于p4的工业互联网隐蔽攻击防御方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160099964A1 (en) * | 2014-10-01 | 2016-04-07 | Ciena Corporation | Systems and methods to detect and defend against distributed denial of service attacks |
CN106561016A (zh) * | 2015-11-19 | 2017-04-12 | 国网智能电网研究院 | 一种基于熵的SDN控制器DDoS攻击检测装置和方法 |
CN106572107A (zh) * | 2016-11-07 | 2017-04-19 | 北京科技大学 | 一种面向软件定义网络的DDoS攻击防御系统与方法 |
-
2018
- 2018-01-16 CN CN201810038542.6A patent/CN107959690B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160099964A1 (en) * | 2014-10-01 | 2016-04-07 | Ciena Corporation | Systems and methods to detect and defend against distributed denial of service attacks |
CN106561016A (zh) * | 2015-11-19 | 2017-04-12 | 国网智能电网研究院 | 一种基于熵的SDN控制器DDoS攻击检测装置和方法 |
CN106572107A (zh) * | 2016-11-07 | 2017-04-19 | 北京科技大学 | 一种面向软件定义网络的DDoS攻击防御系统与方法 |
Non-Patent Citations (1)
Title |
---|
刘孟: "云环境下DDoS攻防体系及其关键技术研究", 《博士学位论文》 * |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108282497A (zh) * | 2018-04-28 | 2018-07-13 | 电子科技大学 | 针对SDN控制平面的DDoS攻击检测方法 |
CN108632270A (zh) * | 2018-05-03 | 2018-10-09 | 河海大学常州校区 | 基于软件定义网络的防低速率TCP DoS攻击方法 |
CN108632270B (zh) * | 2018-05-03 | 2020-07-24 | 河海大学常州校区 | 基于软件定义网络的防低速率TCP DoS攻击方法 |
CN108833376A (zh) * | 2018-05-30 | 2018-11-16 | 中国人民解放军战略支援部队信息工程大学 | 面向软件定义网络的DoS攻击检测方法 |
CN108833376B (zh) * | 2018-05-30 | 2020-12-15 | 中国人民解放军战略支援部队信息工程大学 | 面向软件定义网络的DoS攻击检测方法 |
CN108881192A (zh) * | 2018-06-04 | 2018-11-23 | 上海交通大学 | 一种基于深度学习的加密型僵尸网络检测系统及方法 |
CN108881192B (zh) * | 2018-06-04 | 2021-10-22 | 上海交通大学 | 一种基于深度学习的加密型僵尸网络检测系统及方法 |
CN108881241A (zh) * | 2018-06-26 | 2018-11-23 | 华中科技大学 | 一种面向软件定义网络的动态源地址验证方法 |
CN109005157A (zh) * | 2018-07-09 | 2018-12-14 | 华中科技大学 | 一种软件定义网络中DDoS攻击检测与防御方法与系统 |
CN109005157B (zh) * | 2018-07-09 | 2020-07-10 | 华中科技大学 | 一种软件定义网络中DDoS攻击检测与防御方法与系统 |
CN109617931A (zh) * | 2019-02-20 | 2019-04-12 | 电子科技大学 | 一种SDN控制器的DDoS攻击防御方法及防御系统 |
CN109617931B (zh) * | 2019-02-20 | 2020-11-06 | 电子科技大学 | 一种SDN控制器的DDoS攻击防御方法及防御系统 |
CN110177115A (zh) * | 2019-06-10 | 2019-08-27 | 中国民航大学 | 基于多特征融合的LDoS攻击检测方法 |
CN112422482A (zh) * | 2019-08-23 | 2021-02-26 | 东北大学秦皇岛分校 | 一种面向服务的尾端链路洪泛攻击过滤方法 |
CN110535861A (zh) * | 2019-08-30 | 2019-12-03 | 杭州迪普信息技术有限公司 | 一种识别syn攻击行为中统计syn包数量的方法及装置 |
US11677769B2 (en) | 2019-08-30 | 2023-06-13 | Hangzhou Dptech Technologies Co., Ltd. | Counting SYN packets |
CN110535861B (zh) * | 2019-08-30 | 2022-01-25 | 杭州迪普信息技术有限公司 | 一种识别syn攻击行为中统计syn包数量的方法及装置 |
CN110636059B (zh) * | 2019-09-18 | 2021-04-30 | 中盈优创资讯科技有限公司 | 网络攻击防御系统、方法、sdn控制器、路由器、设备及介质 |
CN110636059A (zh) * | 2019-09-18 | 2019-12-31 | 中盈优创资讯科技有限公司 | 网络攻击防御系统及方法、sdn控制器、路由器 |
CN110830474B (zh) * | 2019-11-08 | 2021-04-06 | 中盈优创资讯科技有限公司 | 网络攻击防护系统及方法、流量控制装置 |
CN110830474A (zh) * | 2019-11-08 | 2020-02-21 | 中盈优创资讯科技有限公司 | 网络攻击防护系统及方法、流量控制装置 |
CN112839007A (zh) * | 2019-11-22 | 2021-05-25 | 深圳布洛城科技有限公司 | 一种网络攻击的防御方法及装置 |
CN112839007B (zh) * | 2019-11-22 | 2022-11-01 | 深圳布洛城科技有限公司 | 一种网络攻击的防御方法及装置 |
CN111163062A (zh) * | 2019-12-12 | 2020-05-15 | 之江实验室 | 一种针对交火攻击的多网络地址跳变安全防御方法 |
KR102417759B1 (ko) * | 2020-04-28 | 2022-07-06 | 한국과학기술원 | 메타휴리스틱 클러스터링을 이용한 디도스 공격 탐지 방법 및 장치 |
KR20210133103A (ko) * | 2020-04-28 | 2021-11-05 | 한국과학기술원 | 메타휴리스틱 클러스터링을 이용한 디도스 공격 탐지 방법 및 장치 |
CN111740950A (zh) * | 2020-05-13 | 2020-10-02 | 南京邮电大学 | 一种SDN环境DDoS攻击检测防御方法 |
CN112367213A (zh) * | 2020-10-12 | 2021-02-12 | 中国科学院计算技术研究所 | 面向sdn网络的策略异常检测方法、系统、装置及存储介质 |
CN112866281B (zh) * | 2021-02-07 | 2023-04-07 | 辽宁科技大学 | 一种分布式实时DDoS攻击防护系统及方法 |
CN112866281A (zh) * | 2021-02-07 | 2021-05-28 | 辽宁科技大学 | 一种分布式实时DDoS攻击防护系统及方法 |
CN113364797A (zh) * | 2021-06-18 | 2021-09-07 | 广东省新一代通信与网络创新研究院 | 一种防ddos攻击的网络系统 |
CN113395288A (zh) * | 2021-06-24 | 2021-09-14 | 浙江德迅网络安全技术有限公司 | 基于sdwan主动防御ddos系统 |
CN114422235A (zh) * | 2022-01-18 | 2022-04-29 | 福州大学 | 基于p4的工业互联网隐蔽攻击防御方法 |
CN114422235B (zh) * | 2022-01-18 | 2023-03-24 | 福州大学 | 基于p4的工业互联网隐蔽攻击防御方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107959690B (zh) | 2019-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107959690A (zh) | 基于软件定义网络的DDoS攻击跨层协同防御方法 | |
Li et al. | Detection and defense of DDoS attack–based on deep learning in OpenFlow‐based SDN | |
Tan et al. | A new framework for DDoS attack detection and defense in SDN environment | |
WO2021227322A1 (zh) | 一种SDN环境DDoS攻击检测防御方法 | |
Hsieh et al. | Detection DDoS attacks based on neural-network using Apache Spark | |
Cao et al. | Detecting and mitigating DDoS attacks in SDN using spatial-temporal graph convolutional network | |
Yusof et al. | Systematic literature review and taxonomy for DDoS attack detection and prediction | |
Yu et al. | A cooperative DDoS attack detection scheme based on entropy and ensemble learning in SDN | |
CN108183917A (zh) | 基于软件定义网络的DDoS攻击跨层协同检测方法 | |
CN104158800A (zh) | 一种面向软件定义网络的分布式拒绝服务攻击检测方法 | |
CN104022999A (zh) | 基于协议分析的网络数据处理方法及系统 | |
Cui et al. | TDDAD: Time-based detection and defense scheme against DDoS attack on SDN controller | |
CN104618377A (zh) | 基于NetFlow的僵尸网络检测系统与检测方法 | |
Yue et al. | Detecting DoS attacks based on multi-features in SDN | |
Park et al. | Distributed security network functions against botnet attacks in software-defined networks | |
CN112995238A (zh) | 一种减轻DDoS攻击的方法、可编程交换机及SDN控制器 | |
Van et al. | An anomaly-based intrusion detection architecture integrated on openflow switch | |
Wang et al. | Abnormal traffic detection system in SDN based on deep learning hybrid models | |
Zhao et al. | A DDoS attack detection and defense mechanism based on the self‐organizing mapping in SDN | |
Tang et al. | FTMaster: A detection and mitigation system of low-rate flow table overflow attacks via SDN | |
Li et al. | NNSplit-SØREN: Supporting the model implementation of large neural networks in a programmable data plane | |
Wu et al. | Detection of improved collusive interest flooding attacks using BO-GBM fusion algorithm in NDN | |
Singh | Machine learning in openflow network: comparative analysis of DDoS detection techniques. | |
CN111277568A (zh) | 一种分布式虚拟网络的隔离攻击方法及系统 | |
CN109936557A (zh) | 一种基于ForCES架构中利用sFlow防御DDoS攻击的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |