l--数据包捕获和解析子系统(Capture Packet Mechanism from link layer and the packet decoder ): 该子系统的功能为捕获网络得传输数据并按照TCP/IP协议的不同层次将数据包进行解析 。Snort利用libpcap库函数进行采集数据, 该库函数可以为应用程序提供直接从链路层 捕获数据包的接口函数并可以设置数据包的过滤器以来捕获指定的数据。(的详细介绍 请参阅附录N)。网络数据采集和解析机制是整个NIDS实现的基础,其中最关键的是要保 证高速和低的丢包率,这不仅仅取决于软件的效率还同硬件的处理能力相关。对于解析 机制来说,能够处理数据包的类型的多样性也同样非常重要,目前,snort可以处理以太 网,令牌环以及SLIP等多种链路类型的包。
l--日志及报警子系统(logging/alerting subsystem) 入侵检测系统的输出结果系统的必要特征是实时性和多样性,前者指能够在检测到入侵 行为的同时及时记录和报警,后者是指能够根据需求选择多种方式进行记录和报警。一 个好的NIDS,更应该提供友好的输出界面或发声报警等等。 Snort是一个轻量级的NIDS,它的另外一个重要功能就是数据包记录器,所以该子系统主 要提供了方式: 1.--fast model :采取TCPDUMP的格式记录信息 2. readable model :按照协议格式记录,易于用户查看。 3.alert to syslog: 向syslog发送报警信息。 4.alert to text file :以明文形式记录报警信息。 值得提出的是,snort考虑到用户需要高性能的时候,即网络数据流量非常大,可以将数 据包信息进行压缩从而实习快速的报警。