[发明专利]一种基于SDN控制器的DoS/DDoS攻击防御模块及方法有效
申请号: | 201710478208.8 | 申请日: | 2017-06-21 |
公开(公告)号: | CN107438066B | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 吴春明;李宇薇;周海峰;刘倩君;王鹏飞 | 申请(专利权)人: | 浙江大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 邱启旺 |
地址: | 310058 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sdn 控制器 dos ddos 攻击 防御 模块 方法 | ||
1.一种基于SDN控制器的DoS/DDoS攻击防御模块,其特征在于,将SDN控制器中的数据包处理模块设置成DoS/DDoS攻击防御模块,使得所有即将交给数据包处理模块的数据包都会先经过DoS/DDoS攻击防御模块防御模块;DoS/DDoS攻击防御模块维护一个计数器,其记录了过去n秒钟里SDN控制器收到的数据包的数量,n为1-10的正整数,并设置了两个阈值,即一级阈值和二级阈值,二级阈值大于一级阈值,当计数器小于一级阈值时,数据包会被传递给默认的处理模块处理,而若计数器超过一级阈值,但是没有超过二级阈值时,首先控制器会判断本地是否存在与该数据包相关的流表缓存,如果存在本地缓存,则下发HardTimeout值为之前值两倍的流表;如果不存在,则下发初始HardTimeout的流表;下发新的流表后,均将这些流表项加入本地缓存,并在B秒后删除,此时控制器进入防御模式;当每秒钟接收数据包的数量超过二级阈值时,则意味着发生了更强的DoS/DDoS攻击。
2.根据权利要求1所述的一种基于SDN控制器的DoS/DDoS攻击防御模块,其特征在于,所述DoS/DDoS攻击防御模块部署在SDN控制器中或单独部署。
3.一种基于SDN控制器的DoS/DDoS攻击防御模块的防御方法,其特征在于,该方法具体步骤如下:
1)防御模块维护一个计数器,其记录了过去n秒钟里SDN控制器收到的数据包的数量,n为1-10的正整数,并设置了一级阈值和二级阈值,二级阈值大于一级阈值;
2)当计数器小于一级阈值时,此时认为没有Dos/DDoS攻击产生,数据包会被传递给默认的处理模块处理;
3)若计数器超过一级阈值,但是没有超过二级阈值时,首先控制器会判断本地是否存在与该数据包相关的流表缓存,如果存在本地缓存,则下发HardTimeout值为之前值两倍的流表;如果不存在,则下发初始HardTimeout的流表;下发新的流表后,均将这些流表项加入本地缓存,并在B秒后删除;
4)若计数器超过二级阈值时,针对每一个数据包,首先控制器会判断本地是否存在与该数据包相关的流表缓存,如果存在本地缓存,则重复步骤3);如果不存在本地缓存,则DoS/DDoS攻击防御模块首先转发数据包,然后下放流表,其给数据包加上了HardTimeout值,记为A秒,所以A秒之后,该流表项将被交换机丢弃;同时,在本地缓存中记录下了该数据包的特征,并设置了B秒的超时时间,这里B要大于A;
5)对于处于DoS/DDoS攻击发生时的正常数据包,通讯将维持一段时间,在A秒之后,流表项被丢弃,数据包再次被传递给控制器,因为本地缓存中该数据包的记录尚未超时,DoS/DDoS攻击防御模块发现该数据包对应的特征已在本地缓存中,所以认定该数据包为合法数据包,下发流表项,此时进一步将流表项的HardTimeout值设置为A*2秒;下次再接收该数据包则进一步增加HardTimeout值,直到某次设置为永久流表项;此时,如果是攻击数据包,在第一个A秒的区间中,会有一次或者多次的相同数据包通过,此时只会有一个流表项,攻击者马上就丢掉了这个随机值,在A秒之后,流表项随即被丢弃,保证交换机中不会出现流表项的堆积溢满,并且在B秒之后,防御模块的本地缓存也会丢弃掉该数据包的特征,保证控制器本身同样不会因为攻击而造成内存的使用溢满。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710478208.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:行车记录仪(Panamera)
- 下一篇:灯(火把灯)