正则表达式在协议识别中的应用与硬件加速实现

需积分: 9 3 下载量 189 浏览量 更新于2024-07-30 收藏 2.76MB PDF 举报
"基于正则表达式的协议识别研究与实现" 本文深入探讨了基于正则表达式的协议识别技术,这是在网络安全领域中一个至关重要的课题,特别是在内容审计和入侵检测等安全措施中。随着网络流量的飞速增长和新型协议的不断涌现,传统的基于端口的识别方法已经无法满足准确性要求。因此,研究者转向了利用统计和模型的方法以及报文体检测,这些方法在正确性上有所提升,但速度上仍无法应对骨干链路的需求。 作者范慧萍在国防科学技术大学攻读计算机科学与技术硕士学位期间,对此问题进行了详细研究,并提出了软硬件结合的解决方案,旨在提高协议识别的正确性和处理效率。主要贡献包括: 1) 对L7.filter提供的正则表达式进行了优化,针对Edonkey、BT和QQ等特定协议的实际流量分析,修改了正则表达式,实验结果证实改进后的表达式更适应实际应用场景。 2) 使用确定有限自动机(DFA)进行正则表达式匹配,以提高匹配速度。首先,基于Thompson算法将正则表达式编译为非确定有限自动机(NFA),然后通过压缩算法减少NFA的空边,最后通过子集构造算法将NFA转换为DFA。这种方法同时提升了NFA到DFA的转换速度和协议识别的匹配速度。 3) 在DFA匹配过程中采用One-Pass匹配算法,相较于L7.filter,进一步提升了协议匹配速度。 4) 设计了一种硬件实现的匹配引擎算法,将DFA转换为状态转移表存储在SRAM中,提出单报文匹配方式,仿真测试证明这种算法显著提高了协议识别的匹配速度。 范慧萍的研究成果已在实际项目中得到应用并通过中期验收,其准确性和性能均达到了项目指标。关键词包括:网络安全、协议识别、非确定有限自动机(NFA)、确定有限自动机(DFA)、正则表达式和状态转移表。 这项工作对于改进网络协议识别的性能和精度具有重要意义,为未来的网络安全技术提供了新的思路和工具。