CN106161333B - 基于sdn的ddos攻击防护方法、装置及系统 - Google Patents

基于sdn的ddos攻击防护方法、装置及系统 Download PDF

Info

Publication number
CN106161333B
CN106161333B CN201510131608.2A CN201510131608A CN106161333B CN 106161333 B CN106161333 B CN 106161333B CN 201510131608 A CN201510131608 A CN 201510131608A CN 106161333 B CN106161333 B CN 106161333B
Authority
CN
China
Prior art keywords
message forwarding
destination
address
flow
cleaning
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.)
Active
Application number
CN201510131608.2A
Other languages
English (en)
Other versions
CN106161333A (zh
Inventor
蒋武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510131608.2A priority Critical patent/CN106161333B/zh
Priority to CN202011390449.5A priority patent/CN112615818B/zh
Priority to PCT/CN2016/072781 priority patent/WO2016150253A1/zh
Priority to EP16767630.3A priority patent/EP3253025B1/en
Publication of CN106161333A publication Critical patent/CN106161333A/zh
Priority to US15/711,725 priority patent/US10630719B2/en
Priority to US16/824,036 priority patent/US11394743B2/en
Application granted granted Critical
Publication of CN106161333B publication Critical patent/CN106161333B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0254Stateful filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Abstract

本发明提供一种基于SDN的DDOS攻击防护方法、装置及系统,通过控制器向第一报文转发设备下发流量统计指令,流量统计指令指示第一报文转发设备进行流量统计,并携带目的地IP地址;控制器收集第一报文转发设备上报的统计数据,统计数据包含流向目的地IP地址的流量统计信息;控制器根据统计数据,获得流向目的地IP地址的全局流量统计值;并判断全局流量统计值是否超过预定阈值,基于全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略;相应的,第二报文转发设备,接收控制器发送的DDoS防护策略;根据DDoS防护策略对流向目的地IP地址的流量进行防护处理。降低了DDoS攻击对网络的影响范围,提高了网络安全性。

Description

基于SDN的DDOS攻击防护方法、装置及系统
技术领域
本发明涉及通信技术,尤其涉及一种基于软件定义网络(Software DefinedNetwork,简称:SDN)的分布式拒绝服务(Distributed Denial of Service,简称:DDOS)攻击防护方法、装置及系统。
背景技术
图1为DDoS攻击的示意图。参照图1,DDoS的主要实施原理是攻击者利用一级或多级主控主机做跳板,控制大量受感染的受控主机从而组成攻击网络来对受害主机实施大规模的拒绝服务攻击。这种攻击往往能把单个攻击者的攻击效果以级数形式进行放大,从而对受害主机造成重大影响,对网络也会造成严重拥塞。DDoS利用攻击网络对受害主机发起网间控制报文协议(Internet Control Messages Protocol,简称ICMP)洪水攻击、同步(Synchronous,简称:Syn)洪水攻击、用户数据报协议(User Datagram Protocol,简称:UDP)洪水攻击等多种攻击形式,使得受害主机消耗大量处理资源来处理这些突增请求而无法正常响应合法用户请求,从而造成瘫痪。
现有技术中,DDoS防护方案通常在网络汇聚节点部署清洗设备,通过该清洗设备对汇聚到该节点的DDoS攻击流量进行清洗,从而实现DDoS防护。其中,网络汇聚节点可以为互联互通网关、国内的城域网出口设备、各类数据中心的出口设备等。但是对于无明显网络汇聚节点的主干网,网络中的节点数量较多,此时,现有技术通常针对特定的IP地址部署清洗设备,即在与具有该特定的IP地址的主机连接的流量汇聚的节点上部署清洗设备。其中,特定的IP地址可以是根据客户需求、客户的优先级进行设定的;例如,客户需要保护某个服务器的一个IP地址或一段IP地址段;则将与该服务器连接的流量汇聚的节点作为部署清洗设备的节点。
对于上述无明显汇聚节点的主干网场景,虽然采用针对特定IP地址部署清洗设备的方式,但是当发生DDoS攻击时,无论受害主机的IP地址是否为特定IP地址,都需要将针对受害主机的DDoS攻击流量引流至该清洗设备,导致IP地址并非特定IP地址的受害主机的流量需要经过网络中的多个路由转发节点才能被引流至该清洗设备。从而占用了这些路由转发节点的网络资源,扩大了DDoS攻击对主干网的影响范围,从而降低了网络的安全性。
发明内容
本发明提供一种基于SDN的DDOS攻击防护方法、装置及系统,用于提高网络安全性。
本发明的第一个方面是提供一种基于软件定义网络SDN的分布式拒绝服务DDoS攻击防护方法,包括:
控制器向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;
其中,所述流量统计指令携带目的地IP地址;
所述控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
所述控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
所述控制器判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。
结合第一个方面,在第一方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器。
结合第一个方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,还包括:
所述控制器确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值,则所述控制器向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略。
结合第一个方面或第一个方面的上述任意一种可能的实现方式,在第一方面的第三种可能的实现方式中,在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,还包括:
所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
结合第一个方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,包括:
所述控制器根据所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
所述控制器根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
结合第一个方面或第一个方面的上述任意一种可能的实现方式,在第五种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
结合第一个方面的第五种可能的实现方式,在第一个方面的第六种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;
在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,包括:
所述控制器根据所述第一报文转发设备的负载值确定第一引流路径;
其中,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
所述控制器向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第一个方面的第五种可能的实现方式,在第一个方面的第七种可能的实现方式中,在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,包括:
所述控制器根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
所述控制器向所述第二报文转发设备下发DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明的第二个方面是提供一种基于SDN的DDoS攻击防护方法,所述方法应用于SDN系统中,所述SDN系统包括控制器和报文转发设备,所述方法由所述报文转发设备执行,包括:
接收所述控制器发送的流量统计指令,所述流量统计指令用于指示所述报文转发设备进行流量统计;
其中,所述流量统计指令携带目的地IP地址;
根据所述流量统计指令统计流向所述目的地IP地址的流量统计信息;
向所述控制器上报统计数据,所述统计数据包含所述流向所述目的地IP地址的流量统计信息。
结合第二个方面,在第二个方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述报文转发设备进行所述流量统计的起始时刻,以检测周期的方式持续进行所述流量统计,以所述检测周期上报所述统计数据给所述控制器。
结合第二个方面或第二个方面的第一种可能的实现方式,在第二个方面的第二种可能的实现方式中,在所述向所述控制器上报统计数据之后,还包括:
接收所述控制器发送的DDoS防护策略;
根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。
结合第二个方面的第二种可能的实现方式,在第二个方面的第三种可能的实现方式中,在所述接收所述控制器发送的DDoS防护策略之后,还包括:
接收所述控制器发送的防护消除指示消息;所述防护消除指示消息用于指示所述报文转发设备结束执行所述DDoS防护策略;
根据所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
结合第二个方面的第二种可能的实现方式或第二个方面的第三种可能的实现方式,在第二个方面的第四种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
则所述根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
则所述根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述报文转发设备在本地对所述流向所述目的地IP地址的流量进行清洗处理;
则所述根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则所述根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述动态引流清洗响应策略将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
结合第二个方面的第四种可能的实现方式,在第二个方面的第五种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;
所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;所述第一引流路径为所述报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述根据所述动态引流清洗响应策略将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理,具体为:
根据所述动态引流清洗响应策略,将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第二个方面的第四种可能的实现方式,在第二个方面的第六种可能的实现方式中,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;所述第二引流路径为所述报文转发设备至所述清洗设备之间距离最近的路径;
则所述根据所述动态引流清洗响应策略将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理,具体为:
根据所述动态引流清洗响应策略,将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明的第三个方面是提供一种控制器,包括:
发送模块,用于向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;
接收模块,用于收集所述第一报文转发设备根据所述发送模块发送的所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
处理模块,用于:
根据所述接收模块接收到的所述统计数据,获得流向所述目的地IP地址的所述全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值;
所述发送模块,还用于基于处理模块确定的全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。
结合第三个方面,在第三个方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器;
所述处理模块,还用于:
确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
所述发送模块,还用于基于所述处理模块确定的至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值的结果,向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略。
结合第三个方面或第三个方面的第一种可能的实现方式,在第三个方面的第二种可能的实现方式中,所述处理模块,在所述发送模块向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述接收模块接收的所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
结合第三个方面的第二种可能的实现方式,在第三个方面的第三种可能的实现方式中,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;
所述处理模块,还用于根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,具体为:
根据所述接收模块接收的所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
结合第三个方面或第三个方面的上述任意一种可能的实现方式,在第三个方面的第四种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
结合第三个方面的第四种可能的实现方式,在第三个方面的第五种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;
所述处理模块,在所述发送模块向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述第一报文转发设备的负载值确定第一引流路径,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述发送模块根据所述处理模块确定的所述第一引流路径,向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第三个方面的第四种可能的实现方式,在第三个方面的第六种可能的实现方式中,所述处理模块,在所述发送模块向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
则所述发送模块根据所述处理模块确定的所述第二引流路径,向所述第二报文转发设备下发DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明的第四个方面是提供一种报文转发设备,所述报文转发设备应用于SDN系统中,所述SDN系统包括控制器和所述报文转发设备,所述报文转发设备,包括:
接收模块,用于接收所述控制器发送的流量统计指令,所述流量统计指令用于指示处理模块进行流量统计;其中,所述流量统计指令携带目的地IP地址;
所述处理模块,用于根据所述接收模块接收的所述流量统计指令统计流向所述目的地IP地址的流量统计信息;
发送模块,用于根据所述处理模块统计的所述流向所述目的地IP地址的流量统计信息,向所述控制器上报统计数据,所述统计数据包含所述流向所述目的地IP地址的流量统计信息。
结合第四个方面,在第四个方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述处理模块进行所述流量统计的起始时刻,以检测周期的方式持续进行所述流量统计,以所述检测周期上报所述统计数据给所述控制器。
结合第四个方面或第四个方面的第一种可能的实现方式,在第四个方面的第二种可能的实现方式中,所述接收模块,在所述发送模块向所述控制器上报统计数据之后,还用于:
接收所述控制器发送的DDoS防护策略;
所述处理模块,还用于根据所述接收模块接收的所述DDoS防护策略,对所述流向所述目的地IP地址的流量进行防护处理。
结合第四个方面的第二种可能的实现方式,在第四个方面的第三种可能的实现方式中,所述接收模块,在所述接收所述控制器发送的DDoS防护策略之后,还用于:
接收所述控制器发送的防护消除指示消息;所述防护消除指示消息用于指示所述处理模块结束执行所述DDoS防护策略;
所述处理模块,还用于根据所述接收模块接收的所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
结合第四个方面的第一种可能的实现方式或第四个方面的第二种可能的实现方式,在第四个方面的第四种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述处理模块通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理模块根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块接收的所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述处理模块对所述流向所述目的地IP地址的流量进行限流处理;
则所述处理模块根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块接收的所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述处理模块对所述流向所述目的地IP地址的流量进行限速处理;
则所述处理模块根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块接收的所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述处理模块对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理模块根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块接收的所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述处理模块在本地对所述流向所述目的地IP地址的流量进行清洗处理;
则所述处理模块根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块接收的所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述处理模块将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则所述处理模块根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块接收的所述动态引流清洗响应策略指示所述发送模块将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理。
结合第四个方面的第四种可能的实现方式,在第四个方面的第五种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;所述第一引流路径为所述报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述处理模块根据所述接收模块接收的所述动态引流清洗响应策略指示所述发送模块将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述接收模块接收的所述动态引流清洗响应策略,指示所述发送模块将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第四个方面的第四种可能的实现方式,在第四个方面的第六种可能的实现方式中,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;所述第二引流路径为所述报文转发设备至所述清洗设备之间距离最近的路径;
则所述处理模块根据所述接收模块接收的所述动态引流清洗响应策略指示所述发送模块将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述接收模块接收的所述动态引流清洗响应策略,指示所述发送模块将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明的第五个方面是提供一种SDN系统,包括:控制器、第一报文转发设备和第二报文转发设备;
其中,所述控制器,用于:
向所述第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;所述流量统计指令携带目的地IP地址;
收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向所述第二报文转发设备下发DDoS防护策略;
所述第一报文转发设备,用于:
接收所述控制器发送的所述流量统计指令;
根据所述流量统计指令统计所述流向所述目的地IP地址的流量统计信息;
向所述控制器上报所述统计数据;
所述第二报文转发设备,用于:
接收所述控制器发送的所述DDoS防护策略;
根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。
结合第五个方面,在第五个方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器。
结合第五个方面的第一种可能的实现方式,在第五个方面的第二种可能的实现方式中,所述控制器,还用于:
确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略;
所述第二报文转发设备,还用于:
接收所述防护消除指示消息;
结束执行所述DDoS防护策略。
结合第五个方面或第五个方面的上述任意一种可能的实现方式,在第五个方面的第三种可能的实现方式中,所述控制器,在所述向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
结合第五个方面的第三种可能的实现方式,在第五个方面的第四种可能的实现方式中,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;
所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,具体为:
根据所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
结合第五个方面或第五个方面的上述任意一种可能的实现方式,在第五个方面的第五种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对流向所述目的地IP地址的流量进行报文丢弃处理;
则所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:根据所述黑洞路由响应策略采用黑洞路由对流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行限流处理;
则所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:根据所述限流响应策略对流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行限速处理;
则所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:根据所述限速响应策略对流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行报文丢弃处理;
则所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:根据所述丢弃响应策略对流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
则所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:根据所述本地清洗响应策略对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:根据所述动态引流清洗响应策略将流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
结合第五个方面的第五种可能的实现方式,在第五个方面的第六种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;
所述控制器,在所述向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述第一报文转发设备的负载值确定第一引流路径,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;
所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:
将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第五个方面的第五种可能的实现方式,在第五个方面的第七种可能的实现方式中,所述控制器,在所述向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
向所述第二报文转发设备下发DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;
所述第二报文转发设备根据所述DDoS防护策略对流向所述目的地IP地址的流量进行防护处理,具体为:
将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明的第六个方面是提供一种控制器,包括:处理器、存储器、收发器和总线;
其中,所述收发器,包括:南向接口单元;
所述南向接口单元,用于:
向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;
收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
处理器,用于:
根据所述接收模块接收到的所述统计数据,获得流向所述目的地IP地址的所述全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值;
所述南向接口单元,还用于基于处理器确定的全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略;
所述存储器,用于存储所述统计数据、所述DDoS防护策略。
结合第六个方面,在第六个方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器;
所述处理器,还用于:
确定在至少两个检测周期内所述全局流量统计值未超过所述预定阈值;
所述南向接口单元,还用于基于所述处理器确定的至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值的结果,向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述报文转发设备结束执行所述DDoS防护策略。
结合第六个方面或第六个方面的第一种可能的实现方式,在第六个方面的第二种可能的实现方式中,所述处理器在所述南向接口单元向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述南向接口单元接收的所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
所述南向接口单元,还用于向所述第二报文转发设备下发DDoS防护策略。
结合第六个方面的第二种可能的实现方式,在第六个方面的第三种可能的实现方式中,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;
所述处理器,根据所述南向接口单元接收的所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,具体为:
根据所述南向接口单元接收的所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
结合第六个方面或第六个方面的上述任意一种可能的实现方式,在第六个方面的第四种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
结合第六个方面的第四种可能的实现方式,在第六个方面的第五种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;
所述处理器,在所述南向接口单元向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述第一报文转发设备的负载值确定第一引流路径;
其中,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述南向接口单元根据所述处理器确定的所述第一引流路径,向所述第二报文转发设备下发的DDoS防护策略为动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第六个方面的第四种可能的实现方式,在第六个方面的第六种可能的实现方式中,所述处理器,在所述南向接口单元向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
则所述南向接口单元根据所述处理器确定的所述第二引流路径,向所述第二报文转发设备下发DDoS防护策略为动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明的第七个方面是提供一种报文转发设备,所述报文转发设备应用于SDN系统中,所述SDN系统包括控制器和所述报文转发设备,所述报文转发设备,包括:处理器、存储器、收发器和总线;
其中,所述收发器,包括:北向接口单元;
所述北向接口单元,用于接收所述控制器发送的流量统计指令,所述流量统计指令用于指示处理模块进行流量统计;其中,所述流量统计指令携带目的地IP地址;
所述处理器,用于根据所述北向接口单元接收的所述流量统计指令统计流向所述目的地IP地址的流量统计信息;
所述北向接口单元,还用于根据所述处理器统计的所述流向所述目的地IP地址的流量统计信息,向所述控制器上报统计数据,所述统计数据包含所述流向所述目的地IP地址的流量统计信息;
所述存储器,用于存储所述流量统计指令和所述流向所述目的地IP地址的流量统计信息。
结合第七个方面,在第七个方面的第一种可能的实现方式中,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述处理器进行所述流量统计的起始时刻,以检测周期的方式持续进行所述流量统计,以所述检测周期上报所述统计数据给所述控制器。
结合第七个方面或第七个方面的第一种可能的实现方式,在第二种可能的实现方式中,所述北向接口单元,在向所述控制器上报统计数据之后,还用于接收所述控制器发送的DDoS防护策略;
所述处理器,还用于根据所述北向接口单元接收的所述DDoS防护策略,对所述流向所述目的地IP地址的流量进行防护处理。
结合第七个方面的第二种可能的实现方式,在第七个方面的第三种可能的实现方式中,
所述北向接口单元,在接收所述控制器发送的DDoS防护策略之后,还用于:
接收所述控制器发送的防护消除指示消息;所述防护消除指示消息用于指示所述处理器结束执行所述DDoS防护策略;
所述处理器,还用于根据所述北向接口单元接收的所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
结合第七个方面的第一种可能的实现方式或第七个方面的第二种可能的实现方式,在第七个方面的第四种可能的实现方式中,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述处理器通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理器根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元接收的所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述处理器对所述流向所述目的地IP地址的流量进行限流处理;
则所述处理器根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元接收的所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述处理器对所述流向所述目的地IP地址的流量进行限速处理;
则所述处理器根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元接收的所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述处理器对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理器根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元接收的所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述处理器在本地对所述流向所述目的地IP地址的流量进行清洗处理;
则所述处理器根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元接收的所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述处理器将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则所述处理器根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元接收的所述动态引流清洗响应策略指示所述北向接口单元将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理。
结合第七个方面的第四种可能的实现方式,在第七个方面的第五种可能的实现方式中,所述统计数据还包含:所述第一报文转发设备的负载值;
所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;所述第一引流路径为所述报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述处理器根据所述北向接口单元接收的所述动态引流清洗响应策略指示所述北向接口单元将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述北向接口单元接收的所述动态引流清洗响应策略,指示所述北向接口单元将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
结合第七个方面的第四种可能的实现方式,在第七个方面的第六种可能的实现方式中,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;所述第二引流路径为所述报文转发设备至所述清洗设备之间距离最近的路径;
则所述处理器根据所述北向接口单元接收的所述动态引流清洗响应策略指示所述北向接口单元将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述北向接口单元接收的所述动态引流清洗响应策略,指示所述北向接口单元将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
本发明实施例提供的基于SDN的DDOS攻击防护方法、装置及系统,通过控制器向所述第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;所述流量统计指令携带目的地IP地址;控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;并判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向所述第二报文转发设备下发DDoS防护策略;相应的,所述第一报文转发设备接收所述控制器发送的所述流量统计指令;并根据所述流量统计指令统计所述流向所述目的地IP地址的流量统计信息;最终向所述控制器上报所述统计数据;相应的,所述第二报文转发设备,接收所述控制器发送的所述DDoS防护策略;根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。降低了DDoS攻击对网络的影响范围,提高了网络安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为DDoS攻击的示意图;
图2为本发明实施例提供的一种基于SDN网络的DDoS攻击防护系统部署示意图;
图3为本发明实施例提供的一种SDN系统的部署示意图;
图4为本发明实施例提供的一种控制器的结构示意图;
图5为本发明实施例提供的一种报文转发设备的结构示意图;
图6为本发明实施例提供的一种独立的调度设备的结构示意图;
图7为本发明实施例提供的一种控制器的结构示意图;
图8为本发明实施例提供的另一种报文转发设备的结构示意图;
图9为本发明实施例提供的一种基于SDN的DDOS攻击防护方法的流程示意图;
图10为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图11为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图12为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图13为攻击路径及最近攻击源头判定示意图;
图14为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图
图15为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图16为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图17为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图18为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图;
图19为本地清洗处理流程示意图;
图20为本发明实施例提供的一种基于SDN的DDoS攻击防护方法的交互流程示意图;
图21为本发明实施例提供的另一种基于SDN网络的DDoS攻击防护方法的交互示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种基于SDN的DDoS攻击防护的技术方案。SDN中的控制器指示报文转发设备进行基于目的IP的流量统计,通过控制器收集报文转发设备的统计数据,并判定是否发生网络攻击;若判断发生攻击,本方案提供多种可能的DDoS防护方式。例如,由于SDN支持网络拓扑、状态的集中管理,控制器具有感知全局拓扑的能力,因此控制器能够获知哪些报文转发设备用于与其他网络连接,即获知哪些报文转发设备位于SDN的边界;从而指示位于SDN边界靠近攻击源的报文转发设备对攻击流量进行限流或丢弃或阻断,或者,控制器指示将疑似攻击流量引流至专业的清洗设备,对该疑似攻击流量进行清洗,从而降低攻击流量在对网络影响。
图2为本发明实施例提供的一种基于SDN网络的DDoS攻击防护系统部署示意图。参照图2,该系统包括:报文转发设备、控制器、清洗设备。
其中,控制器通过南向接口与报文转发设备及清洗设备进行通信,南向接口可以为Open Flow协议、转发件和控制件的分离(Forwarding and Control ElementSeparation,简称:ForCES)协议、路径计算件(Path Computation Element-CommunicationProtocol,简称:PCE-P)协议等。
可选的,当SDN中只有一个控制器时,该控制器可以具有控制器调度功能,控制器调度功能用于对整个SDN中的报文转发设备进行管控与调度,包括链路发现、拓扑管理、策略制定、表项下发等功能。
或者,对于SDN中多个控制器组成的集群,可以将控制器调度功能单独设置在一个独立的调度设备上,例如在多个控制器中选举一个控制器作为主控制器,该主控制器既可以作为该独立的调度设备,由该主控制器通过东西向接口与各个控制器进行通信。该主控制器主要负责生成和维护全网范围内副控制器、报文转发设备及清洗设备的状态信息,一旦出现失效,则从集群的其他副控制器中选举一个成为新的主控制器。并且控制器的集群对报文转发设备及清洗设备是透明的,即在SDN的运行过程中,报文转发设备及清洗设备无需关心其接收的是哪一台控制器发来的命令,同时在其向控制器发送数据包时,能保持之前单一控制器的操作方式,从而保证控制器在逻辑上的集中。目前,用于多个控制器以及调度设备之间沟通和联系的东西向接口还未具有明确的定义标准,通常可以利用现有成熟的集群技术,例如服务器集群技术,来实现东西向接口的通信。
进一步的,控制器可以装载DDoS控制程序,控制器执行DDoS控制程序以实现上述DDoS防护方案的相关配置,可选的,该DDoS控制程序还可以装载在其他用户设备上,用户通过用户设备的应用调用DDoS控制程序,用户设备执行DDoS控制程序,并与控制器进行交互,以实现上述DDOS防护方案的相关配置。其中,控制器与用户设备通过控制器的北向接口进行通信。需要说明的是,北向接口的协议制定基于不同的需求可以有多种方案。例如应用编程接口(REST Application Programming Interface,简称:REST API)就是一种常用的北向接口形式。部分传统的网络设备厂商在其现有设备上提供了编程接口供业务应用直接调用,也可被视作是北向接口,其目的是在不改变其现有设备架构的条件下提升配置管理灵活性,应对开放协议的竞争。
报文转发设备可以是转发器,也可以为传统网络中的交换机、路由器、防火墙等设备,该报文转发设备具有流量监测功能和清洗功能。
其中,报文转发设备的流量监测功能用于基于控制器下发的流量统计指令对流经该报文转发设备的流量进行监控,该流量统计指令携带目的地IP地址,该目的地IP地址可以为需要保护的某个服务器的一个IP地址或一段IP地址段;而报文转发设备的流量监测功能会检测流向所述目的地IP地址的流量统计信息,并将统计数据上报给控制器。
报文转发设备的清洗功能用于当控制器下发攻击防护策略时,例如DDoS防护策略,基于攻击防护策略对疑似攻击流量进行清洗处理,剔除其中可疑的攻击流量。
另外,基于不同的攻击防护策略,报文转发设备可以进行流量的限流或丢弃或阻断;或者,将疑似攻击流量引流至清洗设备。
需要说明的是,对于本发明实施例提供的方案,在网络攻击防护过程中,基于不同环节的不同功能,可以将报文转发设备划分成两类:第一报文转发设备和第二报文转发设备。
其中,第一报文转发设备具有流量监测功能,SDN系统的全部报文转发设备都可以作为第一报文转发设备;第二报文转发设备具有清洗功能。例如,为了有效的对疑似攻击流量进行防护处理,控制器会指示位于SDN边界靠近攻击源的报文转发设备对攻击流量进行防护处理,对于这种场景,位于SDN边界靠近攻击源的报文转发设备即为上述第二报文转发设备;通常情况下,第二报文转发设备也会具有流量监测功能,即第一报文转发设备和第二报文转发设备可以为同一个实体设备,也可以为不同的实体设备。
清洗设备,用于接收报文转发设备引流的疑似攻击流量,并对该疑似攻击流量进行清洗,并将清洗后的流量回注到SDN中。
需要说明的是,本发明实施例提供的引流方案与现有的引流方案相比,优势在于:由于SDN中控制器具有链路发现和拓扑管理的功能,因此,在采用引流方案时,控制器可以根据SDN拓扑关系或统计数据配置第二报文转发设备采用对SDN网络冲击最小的路径,将疑似攻击流量引流至清洗设备。例如,选择距离清洗设备最近的路径进行引流;或者,选择负载较小的路径进行引流;从而降低了现有技术中由于引流而增加的攻击影响。即,本发明提供的引流方案可以基于SDN的链路状况随时进行动态调整,故在下文中将这种方案对应的策略命名为动态引流清洗响应策略。
进一步的,图3为本发明实施例提供的一种SDN系统的部署示意图,参照图3,该SDN系统,包括:控制器、第一报文转发设备和第二报文转发设备;
其中,所述控制器,用于:
向所述第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;所述流量统计指令携带目的地IP地址;
收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向所述第二报文转发设备下发DDoS防护策略;
所述第一报文转发设备,用于:
接收所述控制器发送的所述流量统计指令;
根据所述流量统计指令统计所述流向所述目的地IP地址的流量统计信息;
向所述控制器上报所述统计数据;
所述第二报文转发设备,用于:
接收所述控制器发送的所述DDoS防护策略;
根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。
本发明实施例提供的SDN系统,通过控制器向所述第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;所述流量统计指令携带目的地IP地址;控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;并判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向所述第二报文转发设备下发DDoS防护策略;相应的,所述第一报文转发设备接收所述控制器发送的所述流量统计指令;并根据所述流量统计指令统计所述流向所述目的地IP地址的流量统计信息;最终向所述控制器上报所述统计数据;相应的,所述第二报文转发设备,接收所述控制器发送的所述DDoS防护策略;根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。降低了DDoS攻击对网络的影响范围,提高了网络安全性。
可选的,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器。
进一步的,控制器需要一种判断网络攻击是否停止的机制,一种可能的实现方式为:
确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略;
所述第二报文转发设备,还用于:
接收所述防护消除指示消息;
结束执行所述DDoS防护策略。
可选的,控制器还可以针对位于SDN边界靠近攻击源的报文转发设备下发DDoS防护策略,一种可能的实现方式为:
所述控制器,在所述向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
具体的,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,具体为:
根据所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
具体的,对上述响应策略进行说明。黑洞(black hole)路由指报文转发设备的访问控制列表(Access Control List,简称:ACL)中的不指向任何下一跳的路由表项。与通常的路由表项类似,黑洞路由也包括匹配项和动作。与黑洞路由的匹配项相匹配的报文将被指报文转发设备丢弃,而不会被转发至下一跳。黑洞路由中的动作可以通过多种方式来实现,例如路由设备将报文转发至以0.0.0.0为例的非法IP地址、或回环地址,也可以通过null0接口来实现。该null0为路由设备上的一个逻辑接口,null0接口总是处于“上(Up)”状态,但不转发任何报文。报文转发设备将报文转发至该报文转发设备的null0接口,null0接口接收到报文后,将报文丢弃。基于黑洞路由的上述特点,当发生网络攻击时,控制器可以配置相应的黑洞路由响应策略,并将黑洞路由响应策略下发给报文转发设备,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对流向所述目的地IP地址的流量进行报文丢弃处理,从而实现DDoS攻击防护。具体的,黑洞路由响应策略可以包含:目的地IP地址、报文支持的协议类型等信息。
则所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
由于,第二报文转发设备中设置黑洞路由可以实现对报文丢弃,并且无需指明丢弃的原因,可以化简处理攻击流量的复杂度,提高处理效率。
所述限流响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;具体的:第二报文转发设备基于限流响应策略对单位时间内报文的收发带宽进行限制,比如每秒最多发送多少字节的报文。该限流响应策略可以包含:目的地IP地址、报文支持的协议类型、报文的五元组信息等;报文转发设备可以基于报文的五元组信息进行上述限制,例如,针对传输控制协议(Transmission Control Protocol,简称:TCP)报文和/或用户数据报协议(User Datagram Protocol,简称:UDP)报文进行上述限制,针对特定的报文的源端口进行上述限制,针对特定的报文的目的端口进行上述限制,设置特定的速率上限对报文的传输速率进行限制等。
则所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;例如,第二报文转发设备基于限速响应策略设置收发带宽的大小。
则所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;具体的:第二报文转发设备基于丢弃响应策略对接收到的疑似网络攻击流量的报文或准备发送的疑似网络攻击流量的报文进行丢弃。该丢弃响应策略可以包含:目的地IP地址、报文支持的协议类型、报文的五元组信息等;该报文的五元组信息可以包含:报文的TCP信息或报文的UDP信息,报文的源端口信息,报文的目的端口信息,坏包(drop packet)信息等。
则所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对所述流向所述目的地IP地址的流量进行清洗处理;具体的,所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;第二报文转发设备基于本地清洗响应策略在本地对接收到的疑似网络攻击流量的报文或准备发送的疑似网络攻击流量的报文进行清洗处理,可选的,该本地清洗响应策略可以包括:目的地IP地址、报文支持的协议类型、报文的五元组信息等;
则所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;可选的,动态引流清洗响应策略可以包含目的地IP地址和引流路径指示信息;
则所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述动态引流清洗响应策略将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
对于所述动态引流清洗响应策略,在所述南向接口单元下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,下面给出几种可能的实现方式进行说明:
方式一:所述统计数据还包含:所述第一报文转发设备的负载值;
所述控制器,在所述向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述第一报文转发设备的负载值确定第一引流路径,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;
所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:
将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:,所述控制器,在所述向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
向所述第二报文转发设备下发DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;
所述第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:
将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
在图2和图3的基础上,下面分别对基于SDN网络的DDOS攻击防护系统中的各个节点进行说明。
图4为本发明实施例提供的一种控制器的结构示意图,参照图4,该控制器包括:处理器10、存储器11、收发器12和总线13;
其中,收发器12,包括:北向接口单元12a、南向接口单元12b、东西向接口单元12c;
处理器10,用于执行DDoS控制程序获得DDoS防护配置参数,并基于DDoS防护配置参数指示南向接口单元12b与报文转发设备及清洗设备进行交互,以实现上述DDoS防护方案的相关配置,例如,DDoS防护配置参数为目的地IP地址,处理器10指示该南向接口单元12b向第一报文转发设备下发流量统计指令,该流量统计指令携带目的地IP地址;该南向接口单元12b接收所述第一报文转发设备发送的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
需要说明的是,DDoS防护配置参数可以通过北向接口单元12a从用户设备处获得。
进一步的,处理器10根据所述南向接口单元12b接收的所述统计数据,获得流向所述目的地IP地址的所述全局流量统计值;判断所述全局流量统计值是否超过预定阈值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
进一步的,若发生网络攻击,则基于所述全局流量统计值超过预定阈值的判断结果,处理器10指示所述南向接口单元12b向第二报文转发设备发送DDoS防护策略。
可选的,当控制器具有上文所述控制器调度功能时,处理器10直接指示南向接口单元12b与报文转发设备及清洗设备进行交互,以实现上述DDoS防护方案的相关配置;若系统中还包含上文所述独立的调度设备,则处理器10指示东西向接口单元12c与独立的调度设备进行交互,以实现上文所述控制器调度功能的相关配置。需要说明的是,北向接口单元12a和东西向接口单元12c为可选单元:对于能够自行执行DDoS控制程序的控制器来说,可以不设置北向接口单元12a;对于具有上文所述控制器调度功能的控制器来说,可以不设置东西向接口单元12c。
存储器11,用于存储DDoS防护配置参数、DDoS控制程序和第一报文转发设备上报的统计数据、DDoS防护策略等,以便处理器10在进行相应操作时进行调用。
本发明实施例提供的控制器,通过处理器指示南向接口单元向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;南向接口单元接收所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;处理器根据所述南向接口单元接收的所述统计数据,获得流向所述目的地IP地址的全局流量统计值;其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;处理器判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,处理器指示所述南向接口单元向所述第二报文转发设备下发DDoS防护策略。降低了DDoS攻击对网络的影响范围,提高了网络安全性。
可选的,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器。
进一步的,控制器需要一种判断网络攻击是否停止的机制,一种可能的实现方式为:
所述处理器10,还用于确定在至少两个检测周期内所述全局流量统计值未超过所述预定阈值;
所述南向接口单元12b,还用于基于所述处理器10确定的至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值的结果,向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略。
可选的,控制器还可以针对位于SDN边界靠近攻击源的报文转发设备下发DDoS防护策略,一种可能的实现方式为:
在所述南向接口单元12b向所述第二报文转发设备下发DDoS防护策略之前,所述处理器10,还用于根据所述南向接口单元12b接收的所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
所述南向接口单元12b,还用于向所述第二报文转发设备下发DDoS防护策略。
具体的,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;所述处理器10根据所述南向接口单元12b接收的所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;所述处理器10根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;控制器发下响应指令如流向3所示。
对于所述动态引流清洗响应策略,在所述南向接口单元12b下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,下面给出几种可能的实现方式进行说明:
方式一:所述统计数据还包含:所述第一报文转发设备的负载值;
所述处理器10,用于根据所述第一报文转发设备的负载值确定第一引流路径;
其中,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述南向接口单元12b根据所述处理器10确定的所述第一引流路径,向所述第二报文转发设备下发动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:所述处理器10,用于根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
所述南向接口单元12b根据所述处理器10确定的所述第二引流路径,向所述报文转发设备下发动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
进一步的,对于控制器与独立的调度设备之间的交互,下面以副控制器与主控制器作为示例进行说明,其中主控制器与副控制器协作实现攻击防护方案可以有两种可能的实现方式。
方式一:主控制器获得SDN中全部的副控制器、报文转发设备及清洗设备的工作情况。各个副控制器周期性地通过南向接口单元与第一报文转发设备进行交互获得统计数据,各个副控制器再将采集回来的统计数据通过各自的东西向接口单元发送给主控制器,再由主控制器汇总处理后获得全局流量统计值,并根据该全局流量统计值判断是否发生网络攻击。主控制器与副控制器进行协商制定一致的网络攻击防护策略,例如DDoS防护策略,并由副控制器通过南向接口单元将该网络攻击防护策略统一下发给第二报文转发设备。
方式二:由主控制器选择空闲的副控制器完成攻击防护方案,例如,主控制器通过东西向接口单元与某副控制器进行交互,由主控制器指示该副控制器负责完成攻击防护方案。则该副控制器周期性地通过南向接口单元与第一报文转发设备进行交互获得统计数据,该副控制器再将采集回来的统计数据汇总处理后,获得全局流量统计值,并根据该全局流量统计值判断是否发生网络攻击,并由该副控制器通过南向接口单元将网络攻击防护策略统一下发给第二报文转发设备。
图5为本发明实施例提供的一种报文转发设备的结构示意图,该报文转发设备在流量统计过程中为上述第一报文转发设备,在执行DDoS防护策略的过程中,为上述第二报文转发设备;参照图5,该报文转发设备包括:处理器20、存储器21、收发器22和总线23;
其中,收发器22包括:北向接口单元22a;
首先,当该报文转发设备作为第一报文转发设备时,其具有如下功能:
该北向接口单元22a与控制器的南向接口单元12b连接,用于接收控制器针对DDoS攻击配置的相关参数,例如流量统计指令,该流量统计指令携带目的地IP地址,用于指示处理器20进行流量统计;向控制器上报针对DDoS攻击检测的相关数据,例如统计数据,该统计数据包含流向所述目的地IP地址的流量统计信息;
处理器20,用于根据所述北向接口单元22a接收的流量统计指令对流向该目的地IP地址的流量进行统计,获得流向所述目的地IP地址的流量统计信息。
存储器21,用于存储控制器针对DDoS攻击配置的相关参数、统计数据等。
本发明实施例提供的第一报文转发设备,通过该北向接口单元接收控制器针对DDoS攻击配置的相关参数,例如流量统计指令,该流量统计指令携带目的地IP地址,用于指示处理器进行流量统计;进一步的,处理器根据所述北向接口单元接收的流量统计指令对流向该目的地IP地址的流量进行统计,获得流向所述目的地IP地址的流量统计信息。北向接口单元向控制器上报针对DDoS攻击检测的相关数据,例如统计数据,该统计数据包含流向所述目的地IP地址的流量统计信息;由于第一报文转发设备针对流向该目的地IP地址的流量进行流量统计,并将统计数据上报给控制器,使得控制器能够基于该统计数据判断是否发生DDoS攻击,从而触发相应的DDoS防护策略;从而降低了DDoS攻击对网络的影响范围,提高了网络安全性。
可选的,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述处理器20进行所述流量统计的起始时刻,以检测周期的方式持续进行所述流量统计,以所述检测周期上报所述统计数据给所述控制器。
继续参照图5,当该报文转发设备作为第二报文转发设备时,其具有如下功能:
所述北向接口单元22a,在向所述控制器上报统计数据之后,还用于:
接收所述控制器发送的DDoS防护策略;
所述处理器20,还用于根据所述北向接口单元22a接收的所述DDoS防护策略,对所述流向所述目的地IP地址的流量进行防护处理。
本实施例提供的第二报文转发设备,在北向接口单元向所述控制器上报统计数据之后,通过北向接口单元接收所述控制器发送的DDoS防护策略,并由处理器根据所述北向接口单元接收的所述DDoS防护策略,对所述流向所述目的地IP地址的流量进行防护处理,实现了对流向所述目的地IP地址的流量的DDoS防护,从而降低了DDoS攻击对网络的影响范围,提高了网络安全性。
需要说明的是,对于SDN中的报文转发设备,有一些报文转发设备同时具有第一报文转发设备和第二报文转发设备的功能,这些报文转发设备往往为能够将执行DDoS防护策略的防护效果最大化的报文转发设备,例如,位于SDN边界靠近攻击源的报文转发设备;另一些报文转发设备仅具有第一报文转发设备的功能,例如,并不位于SDN边界的报文转发设备;当然,根据SDN具体的部署和网络攻击发生时的具体情况,控制器可以根据需求配置SDN中的报文转发设备具有第一报文转发设备和/或第二报文转发设备的功能,本发明实施例并不予以限制。
进一步的,对应控制器判断网络攻击是否停止的机制,第二报文转发设备侧相应的功能如下:
所述北向接口单元22a,在接收所述控制器发送的DDoS防护策略之后,还用于:
接收所述控制器发送的防护消除指示消息;所述防护消除指示消息用于指示所述处理器20结束执行所述DDoS防护策略;
所述处理器20,还用于根据所述北向接口单元22a接收的所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述处理器20通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理器20根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元22a接收的所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述处理器20对所述流向所述目的地IP地址的流量进行限流处理;
则所述处理器20根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元22a接收的所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述处理器20对所述流向所述目的地IP地址的流量进行限速处理;
则所述处理器20根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元22a接收的所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述处理器20对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理器20根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元22a接收的所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述处理器20在本地对所述流向所述目的地IP地址的流量进行清洗处理;
则所述处理器20根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元22a接收的所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述处理器20将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则所述处理器20根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述北向接口单元22a接收的所述动态引流清洗响应策略指示所述北向接口单元22a将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理。
对于所述动态引流清洗响应策略,在所述控制器下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,第二报文转发设备侧相应的功能如下:
方式一:
所述统计数据还包含:所述第一报文转发设备的负载值;
所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;所述第一引流路径为所述报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
其中,报文转发设备为第二报文转发设备。
则所述处理器20根据所述北向接口单元22a接收的所述动态引流清洗响应策略指示所述北向接口单元22a将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述北向接口单元22a接收的所述动态引流清洗响应策略,指示所述北向接口单元22a将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:
所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;所述第二引流路径为所述报文转发设备至所述清洗设备之间距离最近的路径;
其中,报文转发设备为第二报文转发设备。
则所述处理器20根据所述北向接口单元22a接收的所述动态引流清洗响应策略指示所述北向接口单元22a将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述北向接口单元22a接收的所述动态引流清洗响应策略,指示所述北向接口单元22a将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
图6为本发明实施例提供的一种独立的调度设备的结构示意图,参照图6,该独立的调度设备包括:处理器30、存储器31、收发器32和总线33;
其中,收发器32包括:东西向接口单元32a;
进一步的,该独立的调度设备可以具有两种可能的实现方式,下面分别对两种方式进行说明。
方式一:
该独立的调度设备的东西向接口单元32a与控制器的东西向接口单元12c连接;
处理器30,用于指示东西向接口单元32a向控制器发送流量统计指令,以使控制器向第一报文转发设备下发该流量统计指令;
可选的,也可以由控制器自行向第一报文转发设备下发该流量统计指令,不需要东西向接口单元32a向控制器发送流量统计指令。
东西向接口单元32a,还用于接收控制器发送的统计数据;
具体的,控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,并将所述统计数据发送给独立的调度设备的东西向接口单元32a。
处理器30,用于根据东西向接口单元32a接收的统计数据,获得流向所述目的地IP地址的全局流量统计值;根据该全局流量统计值判断是否发生网络攻击;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
若发生网络攻击,则处理器30通过东西向接口单元32a与控制器协商确定DDoS防护策略,并指示控制器将确定的DDoS防护策略下发给第二报文转发设备;
方式二:
该独立的调度设备的东西向接口单元32a与控制器的东西向接口单元12c连接;
东西向接口单元32a接收控制器发送的DDoS防护请求消息;
处理器30,根据DDoS防护请求消息和控制器状况信息,确定用于执行DDoS防护功能的控制器。
具体的,通常多个控制器组成一个集群时,为了便于管理多个控制器,会设置独立的调度设备。因此,处理器30需要基于控制器状况信息选择满足执行DDoS防护功能的控制器;控制器状况信息可以包含集群中每个控制器的处理能力的信息、负载状况、空闲状况等,确定满足执行DDoS防护功能的控制器后,独立的调度设备向该控制器发送DDoS防护响应消息;该DDoS防护响应消息包含DDoS防护执行指示;该控制器根据该DDoS防护执行指示,执行DDoS防护功能,具体的功能参照上文图4对应实施例的方案。
对于方式一,具体的:独立的调度设备与控制器的协商机制可以有多种,例如,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;独立的调度设备根据所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备。所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。独立的调度设备指示控制器将所述距离攻击源最近的报文转发设备作为第二报文转发设备,并向该第二报文转发设备下发DDoS防护策略;又例如,独立的调度设备在确定使用动态引流清洗响应策略后,根据所述所述第一报文转发设备的负载值确定第一引流路径,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;独立的调度设备向所述控制器下发所述动态引流清洗响应策略,该策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;又例如,独立的调度设备在确定使用动态引流清洗响应策略后,根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;独立的调度设备向控制器下发动态引流清洗响应策略,该策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。当然,独立的调度设备与控制器之间还可以采用多种可能的协商机制,本发明实施例不予限定。
可选的,上文所述控制器还具有另一种可能的实现方式,具体的,图7为本发明实施例提供的一种控制器的结构示意图,参照图7,该控制器包括:发送模块40、处理模块41、接收模块42;
发送模块40,用于向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;
接收模块42,用于收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
处理模块41,用于:
根据所述接收模块42接收的所述统计数据,获得流向所述目的地IP地址的所述全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值;
所述发送模块40,还用于基于处理模块41确定的全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。
本发明实施例提供的控制器,通过处理模块指示发送模块向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;接收模块接收所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;处理模块根据所述接收模块接收的所述统计数据,获得流向所述目的地IP地址的全局流量统计值其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;处理模块判断所述全局流量统计值是否超过预定阈值,所述发送模块基于处理模块确定的全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。降低了DDoS攻击对网络的影响范围,提高了网络安全性。
可选的,所述流量统计指令还携带:上文所述检测起始时刻;
进一步的,控制器需要一种判断网络攻击是否停止的机制,一种可能的实现方式为:
所述处理模块41,还用于:
确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
所述发送模块40,还用于基于所述处理模块41确定的至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值的结果,向所述第二报文转发设备下发上文所述防护消除指示消息;
可选的,控制器还可以针对位于SDN边界靠近攻击源的报文转发设备下发DDoS防护策略,一种可能的实现方式为:
根据所述接收模块42接收的所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
具体的,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;
所述处理模块41,还用于根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,具体为:
根据所述接收模块42接收的所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
具体的,对于各种响应策略,上进行了详细说明,此处不再赘述。
对于所述动态引流清洗响应策略,在所述控制器下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,下面给出几种可能的实现方式进行说明:
方式一:所述统计数据还包含:所述第一报文转发设备的负载值;
所述处理模块41,在所述发送模块40向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述第一报文转发设备的负载值确定第一引流路径;
所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述发送模块40根据所述处理模块41确定的所述第一引流路径,向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:所述处理模块41,在所述发送模块40向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
则所述发送模块40根据所述处理模块41确定的所述第二引流路径,向所述第二报文转发设备下发DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
可选的,上文所述报文转发设备还具有另一种可能的实现方式,具体的,图8为本发明实施例提供的另一种报文转发设备的结构示意图,参照图8,该控制器包括:发送模块50、处理模块51、接收模块52;
接收模块52,用于接收所述控制器发送的流量统计指令,所述流量统计指令用于指示处理模块51进行流量统计;其中,所述流量统计指令携带目的地IP地址;
所述处理模块51,用于根据所述接收模块52接收的所述流量统计指令统计流流向所述目的地IP地址的流量统计信息;
发送模块50,用于根据所述处理模块51统计的所述流向所述目的地IP地址的流量统计信息,向所述控制器上报统计数据,所述统计数据包含所述流向所述目的地IP地址的流量统计信息。
本发明实施例提供的报文转发设备即为上文所述第一报文转发设备,通过接收模块接收控制器发送的流量统计指令,该流量统计指令携带目的地IP地址,用于指示处理模块进行流量统计;进一步的,处理模块根据所述接收模块接收的流量统计指令对流向该目的地IP地址的流量进行统计,获得流向所述目的地IP地址的流量统计信息。发送模块向控制器上报统计数据,该统计数据包含流向所述目的地IP地址的流量统计信息;由于第一报文转发设备针对流向该目的地IP地址的流量进行流量统计,并将统计数据上报给控制器,使得控制器能够基于该统计数据判断是否发生DDoS攻击,从而触发相应的DDoS防护策略;从而降低了DDoS攻击对网络的影响范围,提高了网络安全性。
可选的,所述流量统计指令还携带:上文所述检测起始时刻;
进一步的,当图8所示报文转发设备作为第二报文转发设备时,其具有如下功能:
所述接收模块52,在所述发送模块50向所述控制器上报统计数据之后,还用于:
接收所述控制器发送的DDoS防护策略;
所述处理模块51,还用于根据所述接收模块52接收的所述DDoS防护策略,对所述流向所述目的地IP地址的流量进行防护处理。
本实施例提供的第二报文转发设备,在发送模块向所述控制器上报统计数据之后,通过接收模块接收所述控制器发送的DDoS防护策略,并由处理模块根据所述接收模块接收的所述DDoS防护策略,对所述流向所述目的地IP地址的流量进行防护处理,实现了对流向所述目的地IP地址的流量的DDoS防护,从而降低了DDoS攻击对网络的影响范围,提高了网络安全性。
进一步的,对应控制器判断网络攻击是否停止的机制,第二报文转发设备侧相应的功能如下:
所述接收模块52,在所述接收所述控制器发送的DDoS防护策略之后,还用于:
接收所述控制器发送的防护消除指示消息;
所述处理模块51,还用于根据所述接收模块52接收的所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述处理模块51通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理模块51根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块52接收的所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述处理模块51对所述流向所述目的地IP地址的流量进行限流处理;
则所述处理模块51根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块52接收的所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述处理模块51对所述流向所述目的地IP地址的流量进行限速处理;
则所述处理模块51根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块52接收的所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述处理模块51对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则所述处理模块51根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块52接收的所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述处理模块51在本地对所述流向所述目的地IP地址的流量进行清洗处理;
则所述处理模块51根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块52接收的所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述处理模块51将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则所述处理模块51根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理,具体为:根据所述接收模块52接收的所述动态引流清洗响应策略指示所述发送模块50将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理。
对于所述动态引流清洗响应策略,在所述控制器下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,第二报文转发设备侧相应的功能如下:
方式一:
所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;所述第一引流路径为所述报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述处理模块51根据所述接收模块52接收的所述动态引流清洗响应策略指示所述发送模块50将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述接收模块52接收的所述动态引流清洗响应策略,指示所述发送模块50将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:
所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;所述第二引流路径为所述报文转发设备至所述清洗设备之间距离最近的路径;
则所述处理模块51根据所述接收模块52接收的所述动态引流清洗响应策略指示所述发送模块50将所述流向所述目的地IP地址的流量发送到所述清洗设备上进行清洗处理,具体为:
根据所述接收模块52接收的所述动态引流清洗响应策略,指示所述发送模块50将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
在图2至8的基础上,图9为本发明实施例提供的一种基于SDN的DDOS攻击防护方法的流程示意图,参照图9,该流程包括:
步骤1、数据流量正常情况按照1-〉4-〉5到达服务器。
步骤2、控制器识别处于SDN边界的报文转发设备,当控制器执行DDoS控制程序时或用户设备的应用调用DDoS控制程序时,控制器向处于SDN边界的报文转发设备下发流量统计指令,该流量统计指令用于指示所述报文转发设备进行流量统计,此时,处于SDN边界的报文转发设备即为第一报文转发设备;可选的,控制器也可以向SDN内全部的报文转发设备下发流量统计指令。
具体的,该流量统计指令携带目的地IP地址,该目的地IP地址为所述服务器的某个IP地址或某段IP地址段;第一报文转发设备基于该流量统计指令从某个时间开始对流向该目的地IP地址的流量进行统计,获得统计数据,该统计数据包含流向所述目的地IP地址的流量统计信息;控制器在统计周期T结束的时候可以向第一报文转发设备查询该统计数据。控制器下发策略和查询统计结果例如流向3所示;
步骤3、第一报文转发设备收到该流量统计指令后,建立基于该目的地IP地址的目的IP监控表,该表采用哈希表形式,包含了该目的地IP地址的各种统计项目。第一报文转发设备在每个统计周期内对转发的数据报文目的地址为该目的地IP地址的流量进行统计,统计周期结束时,控制器向第一报文转发设备查询该统计数据。第一报文转发设备上报该统计数据例如流向2所示;
步骤4、控制器搜集到所有第一报文转发设备在某检测周期T内的统计数据,控制器对该流向所述目的地IP地址的流量统计信息进行汇总,获得流向该目的地IP地址的全局流量统计值;具体的,控制器可以对统计数据进行求和等运算处理获得流向该目的地IP地址的全局流量统计值。控制器将该全局流量统计值与预定阈值进行比较,如果超过该预定阈值,则认为网络攻击发生;如果持续几个特定周期,该全局流量统计值连续小于该预定阈值,则认为网络攻击消除;
步骤5、若判断网络攻击发生,则控制器向第二报文转发设备下发网络攻击防护策略,例如DDoS防护策略。
进一步的,对于步骤5,控制器可以确定距离攻击源最近的报文转发设备,将该距离攻击源最近的报文转发设备作为第二报文转发设备。
步骤6、第二报文转发设备接收DDoS防护策略后,可以基于DDoS防护策略进行黑洞路由、限流(限速)、丢弃、本地清洗、动态引流清洗、本地清洗等DDoS防护策略。其中,本地清洗指报文转发设备对符合DDoS防护策略的流量进行DDoS防护清洗处理;动态引流清洗指报文转发设备将符合DDoS防护策略的流量引流至专业清洗设备进行清洗,清洗后的流量由该清洗设备回注到SDN中。
步骤7、第二报文转发设备接收控制器发送的防护消除指示消息后,恢复流量正常转发路径,关闭引流,清洗设备停止清洗处理。
需要说明的是,所述第一报文转发设备针对流向所述目的地IP地址的流量的所进行的流量统计,在OpenFlow协议规定的流程中通过流水线处理实现。具体的:首先,第一报文转发设备定义目的IP监控表为流表,当某个流量的目的IP地址命中IP监控表中的目的地IP地址时,则认为命中该流表表项,第一报文转发设备提取该流量数据报文的信息,刷新该表项的统计结果,通常,统计结果的形式为:第一报文转发设备的统计数值=第一报文转发设备的统计原数值+数据包个数;第一报文转发设备同时检查监测周期是否到达,若到达,则把动作项(action)设置为发该第一报文转发设备的统计数据的日志给控制器,并清空该第一报文转发设备缓存的统计结果,进入下一个统计周期。
下面通过具体实施例对上述SDN中的控制器和报文转发设备进行说明。
图10为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,该方法执行主体为上述控制器,该控制器可以采用图4或图7所示的结构,参照图10,该方法包括如下流程:
步骤100、控制器向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;
其中,所述流量统计指令携带目的地IP地址。
步骤101、所述控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;
步骤102、所述控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
步骤103、所述控制器判断所述全局流量统计值是否超过预定阈值;
步骤104、所述控制器基于所述全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。
本发明实施例提供的基于SDN的DDoS攻击防护方法,通过控制器向第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;所述控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含流向所述目的地IP地址的流量统计信息;所述控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;所述控制器判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。降低了DDoS攻击对网络的影响范围,提高了网络安全性。
可选的,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器。
进一步的,控制器需要一种判断网络攻击是否停止的机制,具体的,在图10的基础上,图11为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,参照图11,在步骤104之后,还包括:
步骤105、所述控制器确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
步骤106、所述控制器向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略。
可选的,控制器还可以针对位于SDN边界靠近攻击源的报文转发设备下发DDoS防护策略,具体的,具体的,在图10的基础上,图12为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,参照图12,在步骤104之前,还包括:
步骤107、所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
进一步的,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;步骤107的一种可能的实现方式为:
所述控制器根据所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
所述控制器根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
下面对方式二中“所述控制器根据所述统计数据确定攻击路径上距离攻击源最近的报文转发设备”做进一步说明,图13为攻击路径及最近攻击源头判定示意图,参照图13,其中SDN包括:报文转发设备A至G、控制器;其中,报文转发设备A与ISP网络1连接,并且网络攻击的攻击源处于该ISP网络1中,报文转发设备B与ISP网络2连接,报文转发设备F与ISP网络3连接,报文转发设备F与目的地IP所处的网络连接,该目的地IP为网络攻击的流量的目的地IP,即受害主机的IP;由于报文转发设备A、报文转发设备B、报文转发设备E和报文转发设备F分别用于其他网络接入SDN,因此这些报文转发设备处于SDN的边界。
参照图13,首先,控制器根据SDN的拓扑关系,确定距离目的地IP最近的报文转发设备E和上述几个处于SDN边界的报文转发设备,由于在SDN中,从攻击源流向目的地IP的网络攻击流量可能存在多种路径,例如,该流量路径可以为:报文转发设备A→报文转发设备G→报文转发设备E,下文简称第一攻击路径;报文转发设备F→报文转发设备E,下文简称第二攻击路径;报文转发设备B→报文转发设备G→报文转发设备E,下文简称第三攻击路径;控制器统计各个攻击路径上流向目的地IP的流量的统计数据,控制器对各个攻击路径上流向目的地IP的流量大小进行排序,确定第一攻击路径为流量最大的攻击路径,则控制器确定报文转发设备A距离攻击源头最近。
继续参照图13,对上文所述第一报文转发设备和第一报文转发设备进行说明。当控制器向第一报文转发设备下发流量统计指令后,第一报文转发设备根据该流量统计指令进行流量统计,对于图13中的报文转发设备,报文转发设备A至G均可以进行流量统计,因此报文转发设备A至G都可以作为第一报文转发设备;进一步的,当控制器确定报文转发设备A距离攻击源头最近后,控制器向报文转发设备A下发DDoS防护策略,则将报文转发设备A作为第二报文转发设备;或者,由于流向目的地IP的网络攻击流量可能分别经过报文转发设备A、B和F,控制器可以分别向报文转发设备A、B和F下发DDoS防护策略,则将报文转发设备A、B和F都作为第二报文转发设备。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
对于所述动态引流清洗响应策略,在所述控制器下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,下面给出几种可能的实现方式进行说明。
方式一:在图10的基础上,图14为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,参照图14,所述统计数据还包含:所述第一报文转发设备的负载值;
进一步的,在步骤104之前,还包括:
步骤108、所述控制器根据所述第一报文转发设备的负载值确定第一引流路径;
所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述控制器向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略;
具体的,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:在图10的基础上,图15为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,参照图15,在步骤104之前,还包括:
步骤109、所述控制器根据SDN拓扑关系确定第二引流路径;
具体的,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
则所述控制器向所述第二报文转发设备下发DDoS防护策略为所述动态引流清洗响应策略;
具体的,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
参照图13,对方式一中的“第一引流路径”进行说明:例如,假设报文转发设备F收到控制器发送的流量统计指令,该F作为第一报文转发设备进行流量统计;并将统计数据上报给控制器;若控制器向该F下发动态引流清洗响应策略,则该F作为第二报文转发设备执行该动态引流清洗响应策略;该F与清洗设备连接;由于动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示该F将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。由于该F直接与清洗设备连接,显然F-清洗设备的引流路径为该F至所述清洗设备之间负载最小的路径,则第一引流路径包含
又例如,假设清洗设备与报文转发设备D连接,若控制器向该F下发动态引流清洗响应策略,则该F作为第二报文转发设备执行该动态引流清洗响应策略,此时从F将流量引向清洗设备包含多种可能的引流路径,如:F-E-G-D-清洗设备;F-A-G-D-清洗设备等;不同引流路径的负载不一样,控制器基于上述路径的报文转发设备作为第一报文转发设备时上报的统计数据,确定第一引流路径,例如F-E-G-D-清洗设备的负载最小,则第一引流路径包含F、E、G、D和清洗设备。
需要说明的是,图14和图15所示的步骤可以结合图10所示的步骤实现,也可以结合图11和图12所示的步骤实现。
对于上文所示控制器侧的实施例,下面对报文转发设备侧的方法流程进行说明。
图16为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,所述方法应用于SDN系统中,所述SDN系统包括控制器和报文转发设备,该方法执行主体为上述报文转发设备,该报文转发设备可以采用图5或图8所示的结构,参照图16,该方法包括如下流程:
步骤200、接收所述控制器发送的流量统计指令,所述流量统计指令用于指示所述报文转发设备进行流量统计;
其中,所述流量统计指令携带目的地IP地址;
步骤201、根据所述流量统计指令统计流向所述目的地IP地址的流量统计信息;
步骤202、向所述控制器上报统计数据,所述统计数据包含所述流向所述目的地IP地址的流量统计信息。
本发明实施例提供的基于SDN的DDoS攻击防护方法,通过报文转发设备接收所述控制器发送的流量统计指令,所述流量统计指令用于指示所述报文转发设备进行流量统计;其中,所述流量统计指令携带目的地IP地址;报文转发设备根据所述流量统计指令统计流向所述目的地IP地址的流量统计信息;报文转发设备向所述控制器上报统计数据,所述统计数据包含所述流向所述目的地IP地址的流量统计信息。由于报文转发设备针对流向该目的地IP地址的流量进行流量统计,并将统计数据上报给控制器,使得控制器能够基于该统计数据判断是否发生DDoS攻击,从而触发相应的DDoS防护策略;从而降低了DDoS攻击对网络的影响范围,提高了网络安全性。
需要说明的是,执行上述步骤200至202的报文转发设备,根据其功能可以被定义为上文所述第一报文转发设备;
可选的,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述报文转发设备进行所述流量统计的起始时刻,以检测周期的方式持续进行所述流量统计,以所述检测周期上报所述统计数据给所述控制器。
进一步的,当控制器执行判断网络攻击是否停止的机制时,具体的,在图16的基础上,图17为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,在步骤202之后,还包括:
步骤203、接收所述控制器发送的DDoS防护策略;
步骤204、根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。
在图17的基础上,图18为本发明实施例提供的另一种基于SDN的DDoS攻击防护方法的流程示意图,在步骤204之后,还包括:
步骤205、接收所述控制器发送的防护消除指示消息;所述防护消除指示消息用于指示所述报文转发设备结束执行所述DDoS防护策略;
步骤206、根据所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
可选的,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则步骤204的一种可能的实现方式为:根据所述黑洞路由响应策略采用黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
则步骤204的一种可能的实现方式为:根据所述限流响应策略对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
则步骤204的一种可能的实现方式为:根据所述限速响应策略对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
则步骤204的一种可能的实现方式为:根据所述丢弃响应策略对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述报文转发设备在本地对所述流向所述目的地IP地址的流量进行清洗处理;
则步骤204的一种可能的实现方式为:根据所述本地清洗响应策略在本地对所述流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理;
则步骤204的一种可能的实现方式为:根据所述动态引流清洗响应策略将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
对于所述动态引流清洗响应策略,在所述控制器下发动态引流清洗响应策略之前,需要控制器确定一条对网络冲击最小的路径来进行流量的引流,为了配合控制器侧实现基于对网络冲击最小的路径进行引流的方案,下面对报文转发设备需要执行的方法流程进行说明。
方式一:
所述统计数据还包含:所述第一报文转发设备的负载值;
所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理;所述第一引流路径为所述报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则步骤204的一种可能的实现方式为:
根据所述动态引流清洗响应策略,将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
方式二:
所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理;所述第二引流路径为所述报文转发设备至所述清洗设备之间距离最近的路径;
则步骤204的一种可能的实现方式为:
根据所述动态引流清洗响应策略,将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
对于本地清洗指示,下面给出一种可能的处理方式,图19为本地清洗处理流程示意图,参照图19,该流程包括对数据报文分类的处理过程:
步骤300、判断数据报文是否属于传输控制协议(Transmission ControlProtocol,简称:TCP)协议;
若是则执行步骤301,否则执行步骤308;
步骤301、判断所述数据报文是否是超文本传送协议(Hyper Text TransferProtocol,简称;HTTP)报文;
若是,则采用HTTP报文处理函数对数据报文进行清洗处理;否则执行步骤302;
步骤302、判断所述数据报文是否是域名系统(Domain Name System,简称:DNS)报文;
若是,则采用DNS报文处理函数对数据报文进行清洗处理;否则执行步骤303;
步骤303、判断所述数据报文是否是TCP分片报文;
若是,则采用TCP分片报文处理函数对数据报文进行清洗处理;否则执行步骤304;
步骤304、判断所述数据报文是否是同步(Synchronous,简称:Syn)报文;
若是,则采用Syn报文处理函数对数据报文进行清洗处理;否则执行步骤305;
步骤305、判断所述数据报文是否是确认(Acknowledgement,简称:ACK)报文;
若是,则采用ACK报文处理函数对数据报文进行清洗处理;否则执行步骤306;
步骤306、判断所述数据报文是否是Syn-ACK报文;
若是,则采用Syn-ACK报文处理函数对数据报文进行清洗处理;否则执行步骤307;
步骤307、判断所述数据报文是否是复位(RST)报文;
若是,则采用复位报文处理函数对数据报文进行清洗处理;否则执行返回步骤;
步骤308、判断所述数据报文是否属于用户数据包协议(User DatagramProtocol,简称:UDP)协议;
若是,则执行步骤309;否则执行返回步骤;
步骤309、判断所述数据报文是否是DNS询问报文;
若是,则采用询问报文处理函数对数据报文进行清洗处理;否则执行步骤310;
步骤310、判断所述数据报文是否是DNS响应报文;
若是,则采用询问报文处理函数对数据报文进行清洗处理;否则执行步骤311;
步骤311、判断所述数据报文是否是会话初始协议(Session InitiationProtocol,简称:SIP)报文;
若是,则采用SIP报文处理函数对数据报文进行清洗处理;否则执行步骤312;
步骤312、判断所述数据报文是否是UDP分片报文;
若是,则采用UDP分片报文处理函数对数据报文进行清洗处理;否则采用UDP报文对所述数据报文进行清洗处理。
需要说明的是,图19所示方案仅为一种可能的实现方案,对于其他能够实现本地清理的处理流程,本实施例不予限定。
需要说明的是,执行上述步骤203至206的报文转发设备,根据其功能可以被定义为上文所述第二报文转发设备。
针对图10至图15对应实施例所示的控制器执行的流程,和图16至图19对应实施例所示的报文转发设备执行的流程,下面通过具体实施例对控制器与报文转发设备之间的交互进行说明,图20为本发明实施例提供的一种基于SDN的DDoS攻击防护方法的交互流程示意图,参照图20,该交互流程包括:
步骤400、控制器向第一报文转发设备下发流量统计指令;
步骤401、第一报文转发设备根据所述流量统计指令统计流向所述目的地IP地址的流量统计信息;
步骤402、控制器接收第一报文转发设备发送的统计数据;
步骤403、所述控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;
步骤404、所述控制器判断所述全局流量统计值是否超过预定阈值;
步骤405、所述控制器基于所述全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略;
步骤406、第二报文转发设备根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。
步骤407、所述控制器确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
步骤408、所述控制器向所述第二报文转发设备下发防护消除指示消息;
步骤409、第二报文转发设备根据所述防护消除指示消息停止对所述流向所述目的地IP地址的流量进行防护处理。
下面通过具体实施例对控制器与报文转发设备之间的交互进行说明,图21为本发明实施例提供的另一种基于SDN网络的DDoS攻击防护方法的交互示意图,参照图21,该交互包括如下流程:
步骤500、控制器向报文转发设备下发流量统计指令;
步骤501、报文转发设备向报文转发设备发送流量统计指令应答消息;
步骤502、报文转发设备构建目的IP监控表进行流量监控;
步骤503、控制器周期下发查询消息;
需要说明的是,步骤503也可以为报文转发设备周期性主动上报统计数据。
步骤504、报文转发设备向控制器发送应答消息,该应答消息包含统计数据;
步骤505、控制器周期性地进行基于目的IP监控的流量统计信息进行汇总并判断是否超过设定阈值,若超过则判定进入DDoS攻击开始状态;未超过则继续监测;
步骤506、进入DDoS攻击开始状态,则控制器根据监测结果,找到距离攻击最近的报文转发设备,下发DDoS防护策略;
步骤507、报文转发设备向控制器发送DDoS防护策略响应消息;
步骤508、报文转发设备启动防护动作;
步骤509、进入DDoS攻击开始状态,继续多个周期后,控制器发现流量恢复正常,则判定攻击结束状态,继续监控流量;
步骤510、进入攻击结束状态,则控制器向响应的报文转发设备下发防护消除指示消息;
步骤511、报文转发设备向控制器发送防护消除指示响应消息。
下面对于图20或21中交互的消息、信令及信元给出具体的实现方式:
在报文转发设备构建基于上述目的地IP地址的目的IP监控表(ddos-grouptable),该表采用哈希表形式,建立算法采用流量数据包的目的地IP地址命中指定的目的地IP地址,则认为命中该表,报文转发设备则可以进行流量统计;
流向所述目的地IP地址的流量统计信息的一种可能的实现方式中,其包含的字段可以包括如下信息:
总报文数(ULONG ulPacketSum)、总字节数(ULONG ulByteSum)、报文包速率(ULONG ulICMPPktRate)、ICMP带宽(ULONG ulICMPBand)、TCP报文包速率(ULONGulTcpPktRate)、TCP带宽(ULONG ulTcpBand)、UDP报文包速率(ULONG ulUdpPktRate)、UDP带宽(ULONG ulUdpBand);
可选的,对于各类TCP报文,流量统计信息包含的字段可以包括如下至少一种信息:SYN报文包速率(ULONG ulSynPktRate)、SYN报文的带宽(ULONG ulSynBand)、ACK报文的包速率(ULONG ulAckPktRate)、ACK报文的带宽(ULONG ulAckBand)、SYN/ACK包速率(ULONGulSynAckPktRate)、SYN/ACK报文的带宽(ULONG ulSynAckBand)、FIN报文包速率(ULONGulFinPktRate)、FIN报文的带宽(ULONG ulFinBand)、RST报文包速率(ULONGulRstPktRate)、RST报文的带宽(ULONG ulRstBand)、错误报文的包速率(ULONGulErrPktRate)、错误报文的带宽(ULONG ulErrBand)、分片报文的包速率(ULONGulFragPktRate)、分片报文的带宽(ULONG ulFragBand)、HTTP GET报文的包速率(ULONGulHttpGetPktRate)、HTTP GET报文的带宽(ULONG ulHttpGetBand)、DNS报文的包速率(ULONG ulDnsByteNum)、DNS报文带宽(ULONG ulDnsBand)、流数目(ULONG ulFlowCnt);
另外,上文统计数据还包含:所述第一报文转发设备的负载值:具体的,该第一报文转发设备的负载值的实现形式可以为:该第一报文转发设备的吞吐量;或者,该第一报文转发设备的带宽占用率等。进一步的,该第一报文转发设备的负载值可以设置在流量统计信息的字段内;也可以设置在统计数据的空闲字段内。
对于控制器与报文转发设备之间交互的消息,下面给出一种可能的实现方式:
控制器向报文转发设备发送流量统计指令,相应的,报文转发设备向控制器发送流量统计指令应答消息,对于这些交互消息,基于Open Flow协议其可以具有如下数据结构:
Figure BDA0000687157690000631
Figure BDA0000687157690000641
具体的,采用该数据结构的交互消息中携带如下字段:消息类型字段(Type OFPT_ROLE_REQUEST/OFPT_ROLE_REPLY)、目的地IP地址、子网掩码、统计使能、统计周期、统计子功能项开关;
其中,目的地IP地址的字段为4字节;子网掩码的字段为4字节;统计使能的字段为8字节,其用于指示启动流量统计或关闭流量统计;统计周期的字段为8字节,其用于指示流量统计的周期,其时间单位可以为秒或其他符合SDN需求的时间单位;统计子功能项开关的字段为8字节,其用于指示统计流量的相关功能的开启或关闭,按位使能。
所述控制器收集报文转发设备根据流量统计指令上报的统计数据。具体的,控制器可以采用向报文转发设备发送查询消息,并接收报文转发设备发送的应答消息,该应答消息包含统计数据。基于Open Flow协议,查询消息和应答消息可以具有如下数据结构:
Figure BDA0000687157690000642
具体的,采用该数据结构的查询消息和应答消息中携带如下字段:消息类型字段(Type OFPT_ROLE_REQUEST/OFPT_ROLE_REPLY)、目的地IP地址、子网掩码、统计周期、当前已经统计上报的周期次数、流量统计信息的集合;
其中,目的地IP地址的字段为4字节;子网掩码的字段为4字节;统计周期的字段为8字节,其用于指示流量统计的周期,其时间单位可以为秒或其他符合SDN需求的时间单位;当前已经统计上报的周期次数的字段为4字节;流量统计信息的集合包含报文转发设备包含的统计项,各统计项按照统计变量名称和统计变量数值的形式包含在该数据结构中。
在确定网络攻击发生后,控制器会向报文转发设备下发DDoS防护策略、报文转发设备会向控制器发送DDoS防护策略响应消息,当网络攻击结束后,控制器会向报文转发设备下发防护消除指示消息,报文转发设备会向控制器发送防护消除指示响应消息,对于这些交互消息,基于Open Flow协议其可以具有如下数据结构:
Figure BDA0000687157690000651
具体的,采用该数据结构的交互消息中携带如下字段:消息类型字段(Type OFPT_ROLE_REQUEST/OFPT_ROLE_REPLY)、目的地IP地址、子网掩码、动作使能、响应动作的类型、响应动作参数集合;
其中,目的地IP地址的字段为4字节;子网掩码的字段为4字节;动作使能的字段为8字节,其用于指示动作为“开启”态或“关闭”态;响应动作的类型的字段为8字节,其包含黑洞路由、限流(限速)、丢弃、本地清洗、引流清洗;响应动作参数集合包含与具体的响应动作相关的参数。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (19)

1.一种基于软件定义网络SDN系统的分布式拒绝服务DDoS攻击防护方法,其特征在于,所述SDN系统包括控制器和多个报文转发设备,包括:
所述控制器向所述多个报文转发设备中的第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计,其中,所述流量统计指令携带目的地IP地址;
所述控制器收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含通过所述第一报文转发设备流向所述目的地IP地址的流量统计信息;
所述控制器根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值,其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
所述控制器判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。
2.根据权利要求1所述的方法,其特征在于,所述流量统计指令还携带:检测起始时刻,其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器。
3.根据权利要求2所述的方法,其特征在于,还包括:
所述控制器确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值,则所述控制器向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略。
4.根据权利要求1-3任意一项所述的方法,其特征在于,在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,还包括:
所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
5.根据权利要求4所述的方法,其特征在于,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;
所述控制器根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,包括:
所述控制器根据所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;
所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
所述控制器根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
6.根据权利要求1-3任意一项所述的方法,其特征在于,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
7.根据权利要求4所述的方法,其特征在于,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
8.根据权利要求5所述的方法,其特征在于,所述DDoS防护策略包含如下任意一种响应策略:黑洞路由响应策略、限流响应策略、限速响应策略、丢弃响应策略、本地清洗响应策略、动态引流清洗响应策略;
其中,所述黑洞路由响应策略用于指示所述第二报文转发设备通过配置黑洞路由对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述限流响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限流处理;
所述限速响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行限速处理;
所述丢弃响应策略用于指示所述第二报文转发设备对所述流向所述目的地IP地址的流量进行报文丢弃处理;
所述本地清洗响应策略用于指示所述第二报文转发设备在本地对流向所述目的地IP地址的流量进行清洗处理;
所述动态引流清洗响应策略用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量发送到清洗设备上进行清洗处理。
9.根据权利要求6所述的方法,其特征在于,所述统计数据还包含:所述第一报文转发设备的负载值;
在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,包括:
所述控制器根据所述第一报文转发设备的负载值确定第一引流路径;
其中,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
所述控制器向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
10.根据权利要求7或8所述的方法,其特征在于,所述统计数据还包含:所述第一报文转发设备的负载值;
在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,包括:
所述控制器根据所述第一报文转发设备的负载值确定第一引流路径;
其中,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
所述控制器向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
11.根据权利要求6所述的方法,其特征在于,在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,包括:
所述控制器根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
所述控制器向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
12.根据权利要求7或8所述的方法,其特征在于,在所述控制器向所述第二报文转发设备下发DDoS防护策略之前,包括:
所述控制器根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
所述控制器向所述第二报文转发设备下发的DDoS防护策略为所述动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
13.一种控制器,其特征在于,所述控制器应用于软件定义网络SDN系统,所述SDN系统包括所述控制器和多个报文转发设备,并且所述控制器包括:
发送模块,用于向所述多个报文转发设备中的第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计,其中,所述流量统计指令携带目的地IP地址;
接收模块,用于收集所述第一报文转发设备根据所述发送模块发送的所述流量统计指令上报的统计数据,所述统计数据包含通过所述第一报文转发设备流向所述目的地IP地址的流量统计信息;
处理模块,用于:
根据所述接收模块接收到的所述统计数据,获得流向所述目的地IP地址的所述全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值;
所述发送模块,还用于基于处理模块确定的全局流量统计值超过预定阈值的判断结果,向第二报文转发设备下发DDoS防护策略。
14.根据权利要求13所述的控制器,其特征在于,所述流量统计指令还携带:检测起始时刻;
其中,所述检测起始时刻用于告知所述第一报文转发设备进行所述流量统计的起始时刻,所述流量统计被所述第一报文转发设备以检测周期的方式持续执行,所述统计数据被所述第一报文转发设备以所述检测周期上报给所述控制器;
所述处理模块,还用于:
确定在至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值;
所述发送模块,还用于基于所述处理模块确定的至少两个连续的检测周期内所述全局流量统计值未超过所述预定阈值的结果,向所述第二报文转发设备下发防护消除指示消息;
所述防护消除指示消息用于指示所述第二报文转发设备结束执行所述DDoS防护策略。
15.根据权利要求13或14所述的控制器,其特征在于,所述处理模块,在所述发送模块向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述接收模块接收的所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,将所述距离攻击源最近的报文转发设备作为所述第二报文转发设备。
16.根据权利要求15所述的控制器,其特征在于,所述流向所述目的地IP地址的流量统计信息,包括:所述第一报文转发设备上流向所述目的地IP地址的流量值;
所述处理模块,还用于根据所述统计数据,确定攻击路径上距离攻击源最近的报文转发设备,具体为:
根据所述接收模块接收的所述第一报文转发设备上流向所述目的地IP地址的流量值,确定第一攻击路径;所述第一攻击路径为流向所述目的地IP地址的至少一条攻击路径中流量值最大的攻击路径;
根据所述第一攻击路径,确定所述距离攻击源最近的报文转发设备;
所述距离攻击源最近的报文转发设备位于所述第一攻击路径上的、所述流向所述目的地IP地址的流量的源地址侧的SDN边界处。
17.根据权利要求13或14所述的控制器,其特征在于,所述统计数据还包含:所述第一报文转发设备的负载值;
所述处理模块,在所述发送模块向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据所述第一报文转发设备的负载值确定第一引流路径,所述第一引流路径为所述第二报文转发设备至所述清洗设备之间负载最小的路径;所述第一引流路径包含所述第二报文转发设备和所述清洗设备;
则所述发送模块根据所述处理模块确定的所述第一引流路径,向所述第二报文转发设备下发的DDoS防护策略为动态引流清洗响应策略,所述动态引流清洗响应策略包含第一引流路径指示信息,所述第一引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第一引流路径发送到所述清洗设备上进行清洗处理。
18.根据权利要求13或14所述的控制器,其特征在于,所述处理模块,在所述发送模块向所述第二报文转发设备下发DDoS防护策略之前,还用于:
根据SDN拓扑关系确定第二引流路径,所述第二引流路径为所述第二报文转发设备至所述清洗设备之间距离最近的路径,所述SDN拓扑关系包含所述SDN中各个报文转发设备以及所述清洗设备的连接关系;
则所述发送模块根据所述处理模块确定的所述第二引流路径,向所述第二报文转发设备下发DDoS防护策略为动态引流清洗响应策略,所述动态引流清洗响应策略包含第二引流路径指示信息,所述第二引流路径指示信息用于指示所述第二报文转发设备将所述流向所述目的地IP地址的流量通过所述第二引流路径发送到所述清洗设备上进行清洗处理。
19.一种SDN系统,其特征在于,包括:控制器、第一报文转发设备和第二报文转发设备;
其中,所述控制器,用于:
向所述第一报文转发设备下发流量统计指令,所述流量统计指令用于指示所述第一报文转发设备进行流量统计,所述流量统计指令携带目的地IP地址;
收集所述第一报文转发设备根据所述流量统计指令上报的统计数据,所述统计数据包含通过所述第一报文转发设备流向所述目的地IP地址的流量统计信息;
根据所述统计数据,获得流向所述目的地IP地址的全局流量统计值;
其中,所述全局流量统计值表示所述控制器对包括所述第一报文转发设备在内的至少两个报文转发设备上报的统计数据进行汇总后,获得的用于反映所述SDN范围内流向所述目的地IP地址的流量的统计值;
判断所述全局流量统计值是否超过预定阈值,基于所述全局流量统计值超过预定阈值的判断结果,向所述第二报文转发设备下发DDoS防护策略;
所述第一报文转发设备,用于:
接收所述控制器发送的所述流量统计指令;
根据所述流量统计指令统计所述流向所述目的地IP地址的流量统计信息;
向所述控制器上报所述统计数据;
所述第二报文转发设备,用于:
接收所述控制器发送的所述DDoS防护策略;
根据所述DDoS防护策略对所述流向所述目的地IP地址的流量进行防护处理。
CN201510131608.2A 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统 Active CN106161333B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201510131608.2A CN106161333B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统
CN202011390449.5A CN112615818B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统
PCT/CN2016/072781 WO2016150253A1 (zh) 2015-03-24 2016-01-29 基于sdn的ddos攻击防护方法、装置及系统
EP16767630.3A EP3253025B1 (en) 2015-03-24 2016-01-29 Sdn-based ddos attack prevention method, device and system
US15/711,725 US10630719B2 (en) 2015-03-24 2017-09-21 SDN-based DDOS attack prevention method, apparatus, and system
US16/824,036 US11394743B2 (en) 2015-03-24 2020-03-19 SDN-based DDoS attack prevention method, apparatus, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510131608.2A CN106161333B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202011390449.5A Division CN112615818B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统

Publications (2)

Publication Number Publication Date
CN106161333A CN106161333A (zh) 2016-11-23
CN106161333B true CN106161333B (zh) 2021-01-15

Family

ID=56977426

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202011390449.5A Active CN112615818B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统
CN201510131608.2A Active CN106161333B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202011390449.5A Active CN112615818B (zh) 2015-03-24 2015-03-24 基于sdn的ddos攻击防护方法、装置及系统

Country Status (4)

Country Link
US (2) US10630719B2 (zh)
EP (1) EP3253025B1 (zh)
CN (2) CN112615818B (zh)
WO (1) WO2016150253A1 (zh)

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10289841B2 (en) * 2015-04-16 2019-05-14 Nec Corporation Graph-based attack chain discovery in enterprise security systems
US10333952B2 (en) * 2015-04-16 2019-06-25 Nec Corporation Online alert ranking and attack scenario reconstruction
US10298607B2 (en) * 2015-04-16 2019-05-21 Nec Corporation Constructing graph models of event correlation in enterprise security systems
CN106302318A (zh) * 2015-05-15 2017-01-04 阿里巴巴集团控股有限公司 一种网站攻击防御方法及装置
CN106817340B (zh) * 2015-11-27 2020-05-08 阿里巴巴集团控股有限公司 预警决策的方法、节点及子系统
WO2017147808A1 (zh) * 2016-03-02 2017-09-08 华为技术有限公司 管理网络设备的方法和装置
CN107347056A (zh) * 2016-05-06 2017-11-14 阿里巴巴集团控股有限公司 一种数据处理方法、装置及系统
CN106506527B (zh) * 2016-12-05 2019-06-21 国云科技股份有限公司 一种防御udp无连接洪水攻击的方法
CN108234404B (zh) 2016-12-15 2020-08-25 腾讯科技(深圳)有限公司 一种DDoS攻击的防御方法、系统及相关设备
CN108270722B (zh) * 2016-12-30 2021-08-24 阿里巴巴集团控股有限公司 一种攻击行为检测方法和装置
CN106657107B (zh) * 2016-12-30 2020-05-12 南京邮电大学 一种SDN中基于信任值的自适应启动的ddos防御方法和系统
US10104000B2 (en) * 2017-01-31 2018-10-16 Hewlett Packard Enterprise Development Lp Reducing control plane overload of a network device
KR102470986B1 (ko) * 2017-02-15 2022-11-25 메이븐 와이어리스 스웨덴 에이비 리던던시를 제공하는 분산형 안테나 시스템
JP7112416B2 (ja) 2017-02-23 2022-08-03 メイベン ワイヤレス スウェーデン アクティエボラーグ Dasにおけるアグリゲート・キャリアのルーティング
CN106921666B (zh) * 2017-03-06 2020-10-02 中山大学 一种基于协同理论的DDoS攻击防御系统及方法
CN107231344B (zh) * 2017-05-04 2020-04-03 杭州迪普科技股份有限公司 流量清洗方法和装置
CN107438066B (zh) * 2017-06-21 2020-04-17 浙江大学 一种基于SDN控制器的DoS/DDoS攻击防御模块及方法
CN107181760A (zh) * 2017-07-07 2017-09-19 北京邮电大学 一种分布式近威胁源攻击阻断方法及其装置
CN107493276B (zh) * 2017-08-08 2020-04-07 北京神州绿盟信息安全科技股份有限公司 一种网络安全防护的方法及装置
US11115435B2 (en) * 2017-08-15 2021-09-07 Level 3 Communications, Llc Local DDOS mitigation announcements in a telecommunications network
CN107360194A (zh) * 2017-09-07 2017-11-17 北京邮电大学 网络攻击的处理方法和装置
CN107682326B (zh) * 2017-09-21 2020-08-07 北京邮电大学 一种安全网关联动防护机制、协议及模块
CN107547567B (zh) * 2017-09-29 2020-04-28 新华三技术有限公司 一种防攻击方法和装置
CN107872385B (zh) * 2017-10-11 2020-10-23 中国电子科技集团公司第三十研究所 一种sdn网络路由计算与控制方法
CN109889470B (zh) * 2017-12-06 2020-06-26 中国科学院声学研究所 一种基于路由器防御DDoS攻击的方法和系统
US20190182290A1 (en) * 2017-12-07 2019-06-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and system to resolve a distributed denial of service attack through denying radio resource allocation of infected end devices
CN109962879B (zh) * 2017-12-22 2021-12-03 中国电信股份有限公司 针对分布式反射拒绝服务DRDoS的安全防御方法和控制器
JP6898846B2 (ja) * 2017-12-28 2021-07-07 株式会社日立製作所 異常原因特定支援システムおよび異常原因特定支援方法
CN110300085B (zh) * 2018-03-22 2022-08-12 北京京东尚科信息技术有限公司 网络攻击的取证方法、装置、系统、统计集群和计算集群
JP6939726B2 (ja) * 2018-07-17 2021-09-22 日本電信電話株式会社 攻撃対処箇所選択装置及び攻撃対処箇所選択方法
CN108881295A (zh) * 2018-07-24 2018-11-23 瑞典爱立信有限公司 用于检测和解决异常路由的方法和网络设备
US11194906B2 (en) * 2018-07-31 2021-12-07 Nec Corporation Automated threat alert triage via data provenance
CN109474623B (zh) * 2018-12-25 2022-03-01 杭州迪普科技股份有限公司 网络安全防护及其参数确定方法、装置及设备、介质
CN109889550B (zh) * 2019-04-12 2021-02-26 杭州迪普科技股份有限公司 一种DDoS攻击确定方法及装置
JP2021005165A (ja) * 2019-06-25 2021-01-14 株式会社日立製作所 インシデントシナリオ生成装置及びインシデントシナリオ生成システム
CN110445671B (zh) * 2019-06-27 2020-11-27 浪潮思科网络科技有限公司 一种基于sdn的网络流量监控方法
CN111181910B (zh) * 2019-08-12 2021-10-08 腾讯科技(深圳)有限公司 一种分布式拒绝服务攻击的防护方法和相关装置
US11477163B2 (en) * 2019-08-26 2022-10-18 At&T Intellectual Property I, L.P. Scrubbed internet protocol domain for enhanced cloud security
US10880329B1 (en) * 2019-08-26 2020-12-29 Nanning Fugui Precision Industrial Co., Ltd. Method for preventing distributed denial of service attack and related equipment
CN111131295B (zh) * 2019-12-30 2022-03-11 北京天融信网络安全技术有限公司 流量防御方法、装置及电子设备
CN113132339B (zh) * 2020-01-15 2023-04-25 阿里巴巴集团控股有限公司 流量监控方法、装置及电子设备
WO2021046565A2 (en) * 2020-02-27 2021-03-11 Futurewei Technologies, Inc. Pce controlled network reliability
CN114006820B (zh) * 2020-07-28 2023-09-05 中移(苏州)软件技术有限公司 一种传输带宽调整方法及设备、计算机可读存储介质
CN114124419A (zh) * 2020-08-27 2022-03-01 北京秦淮数据有限公司 一种ddos攻击防御方法及装置
CN114338066A (zh) * 2020-09-30 2022-04-12 中移(苏州)软件技术有限公司 一种拒绝服务攻击的防御方法及系统、设备及存储介质
WO2022092788A1 (en) 2020-10-29 2022-05-05 Samsung Electronics Co., Ltd. Methods and system for securing a sdn controller from denial of service attack
CN112583850B (zh) * 2020-12-27 2023-02-24 杭州迪普科技股份有限公司 网络攻击防护方法、装置及系统
CN114826630A (zh) * 2021-01-22 2022-07-29 华为技术有限公司 防护设备中的流量处理方法及防护设备
CN113364797B (zh) * 2021-06-18 2023-02-03 广东省新一代通信与网络创新研究院 一种防ddos攻击的网络系统
CN115589300A (zh) * 2021-06-23 2023-01-10 华为技术有限公司 攻击识别方法、装置及系统、计算机可读存储介质
CN115603922A (zh) * 2021-06-28 2023-01-13 中兴通讯股份有限公司(Cn) 安全防御方法、装置、设备及存储介质
CN113364810B (zh) * 2021-07-02 2022-04-01 东北大学秦皇岛分校 一种链路洪泛攻击检测与防御系统及方法
CN113630385B (zh) * 2021-07-13 2022-05-06 电子科技大学 一种sdn网络下dos攻击防控方法及装置
CN113810398B (zh) * 2021-09-09 2023-09-26 新华三信息安全技术有限公司 一种攻击防护方法、装置、设备及存储介质
CN114244584B (zh) * 2021-12-02 2023-07-25 中盈优创资讯科技有限公司 一种基于网络设备日志实现自动压制和防护的方法及装置
CN115250193B (zh) * 2021-12-22 2024-02-23 长沙理工大学 一种面向SDN网络的DoS攻击检测方法、装置及介质
US11770362B2 (en) 2021-12-29 2023-09-26 Uab 360 It Access control in a mesh network
CN116566628A (zh) * 2022-01-27 2023-08-08 华为技术有限公司 一种攻击防御方法、设备及系统
CN114629694B (zh) * 2022-02-28 2024-01-19 天翼安全科技有限公司 一种分布式拒绝服务DDoS的检测方法及相关装置
CN114826741B (zh) * 2022-04-27 2024-02-09 新华三信息安全技术有限公司 一种攻击监测系统及攻击监测方法
CN115174358B (zh) * 2022-09-08 2023-01-17 浪潮电子信息产业股份有限公司 存储集群接口的监测处理方法、系统、设备及存储介质
CN115913784B (zh) * 2023-01-05 2023-08-08 阿里巴巴(中国)有限公司 一种网络攻击防御系统、方法、装置及电子设备

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7743134B2 (en) * 2000-09-07 2010-06-22 Riverbed Technology, Inc. Thwarting source address spoofing-based denial of service attacks
US7707305B2 (en) * 2000-10-17 2010-04-27 Cisco Technology, Inc. Methods and apparatus for protecting against overload conditions on nodes of a distributed network
US7436770B2 (en) * 2004-01-21 2008-10-14 Alcatel Lucent Metering packet flows for limiting effects of denial of service attacks
CN101018156A (zh) * 2007-02-16 2007-08-15 华为技术有限公司 防止带宽型拒绝服务攻击的方法、设备及系统
US8699513B2 (en) * 2007-11-07 2014-04-15 Brocade Communications Systems, Inc. Method and system for facilitating quality of service in edge devices in a fibre channel network
CN101340276A (zh) * 2008-08-11 2009-01-07 杭州华三通信技术有限公司 防止IPv6数据报文攻击的方法、装置和交换路由设备
CN101883078A (zh) * 2009-05-08 2010-11-10 上海清鹤数码科技有限公司 流媒体服务器应用层ddos攻击防御系统及方法
CN101827039B (zh) * 2010-06-04 2013-03-20 杭州华三通信技术有限公司 一种负载分担的方法和设备
US8750164B2 (en) * 2010-07-06 2014-06-10 Nicira, Inc. Hierarchical managed switch architecture
CN102143143B (zh) * 2010-10-15 2014-11-05 北京华为数字技术有限公司 一种网络攻击的防护方法、装置及路由器
US20120159634A1 (en) * 2010-12-15 2012-06-21 International Business Machines Corporation Virtual machine migration
US8966622B2 (en) * 2010-12-29 2015-02-24 Amazon Technologies, Inc. Techniques for protecting against denial of service attacks near the source
US9167004B2 (en) * 2011-02-17 2015-10-20 Sable Networks, Inc. Methods and systems for detecting and mitigating a high-rate distributed denial of service (DDoS) attack
US9185056B2 (en) * 2011-09-20 2015-11-10 Big Switch Networks, Inc. System and methods for controlling network traffic through virtual switches
US9843488B2 (en) * 2011-11-07 2017-12-12 Netflow Logic Corporation Method and system for confident anomaly detection in computer network traffic
US8694995B2 (en) * 2011-12-14 2014-04-08 International Business Machines Corporation Application initiated negotiations for resources meeting a performance parameter in a virtualized computing environment
US20130198845A1 (en) * 2012-01-26 2013-08-01 Kiomars Anvari Monitoring a wireless network for a distributed denial of service attack
US9609017B1 (en) * 2012-02-20 2017-03-28 F5 Networks, Inc. Methods for preventing a distributed denial service attack and devices thereof
US20130219043A1 (en) * 2012-02-20 2013-08-22 Moritz M. Steiner Method and apparatus for automatic migration of application service
US9055006B2 (en) * 2012-06-11 2015-06-09 Radware, Ltd. Techniques for traffic diversion in software defined networks for mitigating denial of service attacks
US9282116B1 (en) * 2012-09-27 2016-03-08 F5 Networks, Inc. System and method for preventing DOS attacks utilizing invalid transaction statistics
US9450981B2 (en) * 2013-03-14 2016-09-20 Radware, Ltd. System and method thereof for mitigating denial of service attacks in virtual networks
CN103281317B (zh) * 2013-05-09 2016-06-08 浙江师范大学 一种软件定义网络的攻击测试方法
US9172721B2 (en) * 2013-07-16 2015-10-27 Fortinet, Inc. Scalable inline behavioral DDOS attack mitigation
US9294503B2 (en) * 2013-08-26 2016-03-22 A10 Networks, Inc. Health monitor based distributed denial of service attack mitigation
CN103491095B (zh) * 2013-09-25 2016-07-13 中国联合网络通信集团有限公司 流量清洗架构、装置及流量牵引、流量回注方法
CN103561011B (zh) * 2013-10-28 2016-09-07 中国科学院信息工程研究所 一种SDN控制器盲DDoS攻击防护方法及系统
CN103685057B (zh) * 2013-12-26 2017-06-20 华为技术有限公司 流量统计方法和装置
US9172651B2 (en) * 2014-02-14 2015-10-27 Telefonaktiebolaget L M Ericsson (Publ) Denial of service prevention in a software defined network
US20160036837A1 (en) * 2014-08-04 2016-02-04 Microsoft Corporation Detecting attacks on data centers
US9838421B2 (en) * 2014-10-01 2017-12-05 Ciena Corporation Systems and methods utilizing peer measurements to detect and defend against distributed denial of service attacks
CN104410643A (zh) * 2014-12-16 2015-03-11 上海斐讯数据通信技术有限公司 一种sdn控制器基于统计值的防攻击方法
US9460386B2 (en) * 2015-02-05 2016-10-04 International Business Machines Corporation Passage justification scoring for question answering
US9769201B2 (en) * 2015-03-06 2017-09-19 Radware, Ltd. System and method thereof for multi-tiered mitigation of cyber-attacks

Also Published As

Publication number Publication date
CN112615818A (zh) 2021-04-06
EP3253025B1 (en) 2021-11-24
US10630719B2 (en) 2020-04-21
US11394743B2 (en) 2022-07-19
EP3253025A1 (en) 2017-12-06
US20200220896A1 (en) 2020-07-09
CN112615818B (zh) 2021-12-03
CN106161333A (zh) 2016-11-23
WO2016150253A1 (zh) 2016-09-29
EP3253025A4 (en) 2018-01-24
US20180013787A1 (en) 2018-01-11

Similar Documents

Publication Publication Date Title
CN106161333B (zh) 基于sdn的ddos攻击防护方法、装置及系统
CN110113435B (zh) 一种流量清洗的方法和设备
Dridi et al. SDN-guard: DoS attacks mitigation in SDN networks
CN106921666B (zh) 一种基于协同理论的DDoS攻击防御系统及方法
KR101900154B1 (ko) DDoS 공격이 탐지가 가능한 소프트웨어 정의 네트워크 및 이에 포함되는 스위치
US8468590B2 (en) Rate limiting data traffic in a network
US10931711B2 (en) System of defending against HTTP DDoS attack based on SDN and method thereof
US20160308901A1 (en) HARDWARE-LOGIC BASED FLOW COLLECTOR FOR DISTRIBUTED DENIAL OF SERVICE (DDoS) ATTACK MITIGATION
CN105516184A (zh) 一种基于增量部署sdn网络的链路洪泛攻击的防御方法
CN103873379B (zh) 一种基于重叠网的分布式路由抗毁策略配置方法和系统
CN104539461B (zh) 一种抑制协议端口振荡上报的装置及方法
US11570107B2 (en) Method and system for triggering augmented data collection on a network device based on traffic patterns
CN113037731B (zh) 基于sdn架构和蜜网的网络流量控制方法及系统
Hong et al. An optimized flow management mechanism in OpenFlow network
Hong et al. Dynamic threshold for DDoS mitigation in SDN environment
CN113364810B (zh) 一种链路洪泛攻击检测与防御系统及方法
Tran et al. ODL-ANTIFLOOD: A comprehensive solution for securing OpenDayLight controller
Maheshwar et al. Black hole effect analysis and prevention through IDS in MANET environment
CN102938737A (zh) 二层环网代理方法和设备
Rabie et al. Applying sigmoid filter for detecting the low-rate denial of service attacks
JP6509143B2 (ja) 帯域制御装置及び方法
Zheng et al. Is current active queue management really necessary
Yu et al. A DDoS protection method based on traffic scheduling and scrubbing in SDN
Anshu et al. Enhancing performance in adhoc networks using cross layer designs
Chandure et al. Congestion Control Methods and Design Guidelines in Wireless Sensor Network

Legal Events

Date Code Title Description
C06 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