论文部分内容阅读
入侵检测系统在保护计算机系统和互联网安全中扮演着重要的角色,它是一种主动的防御手段。入侵检测系统可以实时检测网络状况,监控网络流量和活动,并发出告警,把信息记录到数据库中。在此基础上,对入侵行为进行分析产生入侵日志、审计数据,检测网络中是否存在类似的威胁并及时阻止。作为一种实时的主动防御系统,入侵检测系统可以安装在网络任意的节点上,选择不同的安放位置可适应不同的网络结构,从而可以形成一个立体纵深的防御系统。然而随着网络带宽的快速增长,致使数据流量急剧增加,现有的入侵检测系统对高速网络下数据包的捕获和处理能力成为了网络安全技术发展的瓶颈。本文分析了在高速网络下入侵检测系统所面临的问题,提出了数据包捕获模块和数据处理模块的设计方案,使系统性能可以适应高速网络环境,本文主要从以下几个方面来提高入侵检测系统的效率:1、由于网卡运行在操作系统内核空间,当网卡收到数据包后会将数据包存放在内核空间内;但是由于上层入侵检测系统处理程序运行在用户态,无法直接访问内核空间,所以数据包在被处理之前首先会被拷贝到用户空间,这期间会产生多次内存拷贝和系统调用,影响系统工作效率。本文采用零拷贝技术,通过修改网卡驱动使数据包直接存储到用户态缓冲区。所谓零拷贝技术就是数据从设备传入内存时,避免系统调用和内存拷贝,数据直接从内核态内存传到用户态内存,整个过程不需要CPU参与,降低了CPU的负载。2、为了使上层数据处埋更加高效,本文为入侵检测系统增加了负载均衡引擎,使每个处理引擎所承担的任务量相当。应用在入侵检测系统中的负载均衡机制可分为基于规则的多探测器负载均衡机制和基于流的多探测器负载均衡机制,这两种机制的实现都是通过增加物理上的处理节点实现负载均衡。本文通过分析入侵检测系统的工作特点,设计出一个基于网络流的多线程负载均衡机制,这种工作方式通过分析不同协议流所占比例,将不同的协议流分配到不同的处理线程中,从而达到了负载均衡的目的。3、在数据检测方面,本系统首先对数据包进行预处理,预处埋主要负责将不同的数据流进行重组,这一工作通过哈希表实现:预处哩完成后系统通过解析规则文件形成规则链表,然后对数据包内容进行特征匹配;在特征匹配环节本文使用AC多模式匹配算法。最后根据检测结果发出响应。