【技术实现步骤摘要】
一种高速网络场景下基于sketch的DDoS攻击检测方法
[0001]本专利技术涉及网络测量和计算机网络安全领域,尤其涉及一种高速网络场景下基于
sketch
的
DDoS
攻击检测方法
。
技术介绍
[0002]近年来,分布式拒绝服务
(DDoS)
攻击已成为互联网面临的最严重威胁之一
。
根据卡巴斯基在
2020
年发布的
DDoS
攻击报告,与
2019
年相比,
DDoS
攻击数量增加了
87.5
%
。
在过去的几十年里,人们已经做出了许多努力来检测
DDoS
攻击
。
已经提出了许多入侵检测和预防系统
。
然而,这些系统很难在可扩展性和准确性之间进行良好的权衡
。
其他一些方法,如基于熵的方法,在异常流量检测中取得了较高的准确性,但它具有计算量大的缺点
。
[0003]为了减少大量数据处理开销,已经提出了一系列基于
sketch
的
DDoS
攻击检测方法
。sketch
是一种紧凑的数据结构,可以在有限的空间内存储大容量网络流量的数据特征
。
由于其低存储开销,基于
sketch
的异常检测方法被应用于高速网络中检测
DDoS
攻击
。
然而这些基于 ...
【技术保护点】
【技术特征摘要】
1.
一种高速网络场景下基于
sketch
的
DDoS
攻击检测方法,其特征在于,包括以下步骤:
1)
当数据包到达主机时,主机提取数据包的五元组信息生成流
ID
字符串
str
,所述五元组信息包括源
IP
,源端口
、
目标
IP、
目标端口以及协议类型;
2)
根据提取的流
ID
字符串得到流对应的
sketch
计数器
、
时间戳数组以及循环队列的索引,计算当前数据包到来的系统时间戳与一个一维数组中记录的该数据流之前时间戳的差值,如果该差值大于预设的时间窗口,则将
sketch
结构中对应流的计数器值存进该流对应的循环队列,并将数组中记录的时间戳更新为当前数据包到来的系统时间戳,随后将流的计数器值加1,如差值小于预设的时间窗口,则只需将流对应的计数器加1;
3)
每台主机根据预设的本地阈值,每隔一个时间周期
T1
遍历循环队列中的数据,判断各流在对应时间窗口的数据包计数之和是否超过本地阈值,如果超过,将对应流数据包总量,各时间窗口内的数据包数量等信息形成一张表上传到控制器;此外,每台主机每隔一个大的时间周期
T2
去检测流是否已经断开,将已断开的流的对应计数器和循环队列重置,以节省资源
。4)
控制器汇总所有主机上传的信息,根据上传的信息计算每条流的速率,观察每条流的速率随时间的变化特性,从而检测是否存在
DDoS
攻击;速率的计算公式如下:
diff
=
(q[tail]
‑
q[head]+qSize)mod(qSize)
其中,
diff
是队头索引和队尾索引之间的差值,
q
是某条流对应的循环队列,
tail
是该循环队列的队尾索引,
head
是该循环队列的队头索引,
qSize
是该循环队列的长度,
w
是时间窗口大小,
x
表示往前
x
个时间窗口,
f(x)
表示从最新的时间窗口到前
x
个时间窗口该流的速率,单位:包数
/
秒
(Packet Per Second
,
PPS)。2.
如权利要求1中所述的一种高速网络场景下基于
sketch
的
DDoS
攻击检测方法,其特征在于:步骤
2)
所述的
sketch
结构是一个
Count
‑
Min Sketch
,由
d
行
w
列二维数组结构组成,每一行对应一个哈希函数
hash
i
,
(0≤i≤d
‑
1)
,哈希函数的入参是每条流的流
ID
字符串,输出是每条流在第
i
行数组的索引,即在每一行中,每一条流对应计数器的索引通过哈希确定,即
index
=
hash
i
(str)
;其中哈希函数通过
Bob
哈希函数实现,每个哈希函数的映射范围是
[0,w
‑
1]。3.
如权利要求1中所述的一种高速网络场景下...
【专利技术属性】
技术研发人员:温震宇,张帮岩,黄圣豪,洪榛,
申请(专利权)人:浙江工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。