基于多核Tilera64的网络入侵检测系统研究与设计
一、引言
Snort是用于网络数据规则匹配的网络入侵检测系统。在检测网络数据时,每次匹配都需要与存储库中的数据进行比较,这就要求系统进行大量的字符串操作比较。若系统计算能力较弱,就会出现数据包丢失和网络入侵漏报的情况,尤其是在高流量、高负载的网络环境中,数据包的假阴性率会显著升高。主要原因如下:
- 硬件和驱动限制 :在高吞吐量网络环境中,受硬件和网卡驱动的限制,数据接收速度达到一定峰值后难以提升。一旦网络数据流激增,接收数据的模块就不得不丢弃大量数据包,导致数据不完整和入侵遗漏。
- 检测时间长 :模式匹配算法决定了检测单个网络数据包属性的时间较长。一方面,若检测一个数据包耗时过长,后续数据包的接收就会延迟,从而可能导致数据包丢弃和入侵漏报;另一方面,实际中的入侵往往不是由单个数据包伪装而成,而是多个数据包相互关联,丢弃其中任何一个都可能导致假阴性。
因此,许多网络入侵检测系统的实现都采用了多核处理器。近年来,多核处理平台不仅为网络入侵检测系统提供了良好的环境,也对并行网络入侵检测系统提出了更高的要求。本文在高性能多核处理Tile64平台上实现了网络入侵检测系统的并行化。
二、技术方法
2.1 Snort的系统框架
为了实现并行网络入侵检测系统,需要深入分析其系统框架。采用插件机制可以提高系统的耦合性和可扩展性,简洁的设计也便于提升系统性能。通过插件技术,系统可以在不修改任何核心代码的情况下,通过接口动态加载模块来支持和改进检测功能,这既保护了插件程序与系统核心模块的关系,又保证了检
超级会员免费看
订阅专栏 解锁全文
6万+

被折叠的 条评论
为什么被折叠?



