引用格式:赵亮,林栎.基于数据到达间隔的网络大流检测方法[J].网络安全与数据治理,2024,43(8):40-43.
引言
流量检测是网络领域进行拥塞控制、异常识别、负载均衡等工作的基础[1-3]。网络领域中具有相同流ID的数据包集合被称为流,其中流ID通常是数据包头部特定字段的组合,如源IP、源端口、目的IP、目的端口等,集合中数据包总数或字节总数对应流的大小。在现实网络中,流的大小通常服从重尾分布,即大多数流非常小,这类流又称为老鼠流,而一小部分流非常大,这类流通常称为大流或大象流[4-5]。相比之下,大流更容易造成网络堵塞和负载不均衡等问题,故对大流进行检测识别是网络监控的重要任务。
通常来说,现代网络为实现高速信息传输,所用的路由器主要使用SRAM之类具有低延迟特性的存储器。受SRAM的成本制约,路由器的内存往往有限,由此带来的问题便是硬件处理速度难以满足高速网络流量测量的需要[6]。这种情况下,如何在有限的硬件条件下完成大流检测成为了网络领域的研究热点。针对这一需求,目前已发展出不同类型的大流检测方法,这些检测方法从策略上大致可分为三类:count-all策略、admit-all-count-some策略和其他策略。其中count-all策略基于sketch计算所有流的大小[7],这类方法更适用于均匀分布的数据,当网络流量不均匀时,其大流检测结果中会含有大量的假阳性。Admit-all-count-some策略将所有新流都视为大流,并只记录部分流的信息以节省内存空间[8-11],这类方法存在的问题在于对真正大流的漏检率偏高。其他具有代表性的大流检测策略包括:Cold Filter方法采用双层sketch结构对网络流进行过滤,结合Space-Saving算法记录大流[12],但其过早对流的类型做出判断,将老鼠流误识为大流:HeavyKeeper方法使用指数衰减的方式来剔除老鼠流并记录大流[13],但其识别某些老鼠流的用时较长,由此可能导致后续的大流无法被记录下来;ActiveKeeper方法[14]则是在HeavyKeeper基础上引入双模式计数器,通过不同的计数模式来分别对大流和老鼠流进行计数,以此提升内存使用效率。
针对现有方法的局限性,本文提出一种新的大流检测策略。该策略基于网络流量在大小、到达时间间隔方面的统计特性,在有限的内存空间中重点记录新的、持续到达的流,并及时抛弃旧流为记录新流腾出空间。实验表明,本文方法可以在有限的片上内存条件下实现高精度和高吞吐量,由此可为网络监控提供及时准确的决策支持。
本文详细内容请下载:
http://www.chinaaet.com/resource/share/2000006104
作者信息:
赵亮1,林栎2
(1.西南科技大学信息工程学院,四川绵阳621010;
2.新疆电子研究所股份有限公司,新疆乌鲁木齐830010)