论文部分内容阅读
随着网络的高速发展和普及,网络安全问题也日益突出。模式匹配是入侵检测系统的核心技术,也是解决网络信息安全的核心方法。近年来入侵行为日益复杂和多样,单纯用软件实现的模式匹配已经无法满足高速网络的要求,而FPGA、ASIC和TCAM等专用器件由于处理速度快以及可并行等优点,近年来被广泛应用于模式匹配。本文首先介绍了入侵检测系统的基本知识,阐述了模式匹配在入侵检测中的作用和地位,对模式匹配算法及其硬件实现的研究现状和发展趋势进行了分析总结。在此基础上,针对K步长自动机中部分状态的失效链过长、失效转移过程中状态跳转次数较多的问题,对K步长自动机进行了改进,消除了各状态的失效函数,对任意的输入仅通过一次状态转移就能跳转到确定的状态,从而减少了匹配过程中状态跳转的次数,提高了匹配效率。把改进的K步长自动机和Bloom Filter原理相结合,设计了一种基于硬件的快速多模式匹配引擎,对BloomFiter及hash函数的FPGA实现进行了重点研究及分析,通过选取最优的hash函数个数和映射空间的大小,优化了Bloom Filter的性能。然后在FPGA上对匹配引擎的各个模块进行设计及实现,并采用了流水线技术对其进行优化。针对基于Bloom Filter的模式匹配引擎存在假阳性误判的问题,本文随后在FPGA上设计并实现了一个基于TCAM的模式匹配引擎。该引擎中的TCAM模块用FPGA内部的嵌入式RAM和逻辑资源实现,可以根据设计要求对位宽和深度进行灵活的扩展,克服了传统TCAM芯片功耗大、成本高和配置不灵活的缺点。基于TCAM的匹配引擎可以并行搜索、精确匹配,克服了Bloom Filter中的假阳性误判,提高了匹配的效率。本文最后搭建测试平台,设计初始化方案和输入激励,制定测试方案,分别对基于BloomFilter和基于TCAM的两种匹配引擎的性能进行全面测试,并从匹配速度和嵌入式RAM利用率两个方面对测试结果进行对比分析。实验结果表明:这两种匹配引擎都达到了千兆比特的处理速度,能满足高速网络对匹配速度的要求。