两级存储优化正则表达式匹配:50倍性能提升与33Gbps吞吐量

3 下载量 92 浏览量 更新于2024-08-31 收藏 931KB PDF 举报
本文主要探讨了"基于两级存储的正则表达式匹配技术",该研究旨在解决正则表达式匹配过程中存在的内存需求与检测性能之间的冲突。传统的正则表达式匹配往往需要大量内存来存储状态转移表,这可能导致性能瓶颈和资源浪费。作者陈曙晖和徐成成在2014年6月的《通信学报》上提出了创新性的解决方案。 他们利用马尔可夫链理论对自动机进行建模,马尔可夫链是一种数学模型,能够预测未来状态的概率分布。通过计算稳态向量,研究人员能够准确地估算出每个状态被随机访问的概率。这种方法使得可以根据状态访问频率的高低,将状态表项分别高效地配置在不同的存储层次上。FPGA的嵌入式存储器被用于存储那些具有高访问概率的状态,而SRAM则用来存储访问频率较低的部分。 这种两级存储策略显著提升了匹配性能。实验采用了L7-filter规则集作为测试平台,结果显示,采用新的匹配方法后,系统的吞吐量达到了惊人的33 Gbit/s,相比于将所有状态表项存储在SRAM中,性能提高了50倍。这种优化不仅降低了内存压力,还极大地提高了系统的实时性和效率。 本文的贡献在于将马尔可夫链理论与硬件优化结合起来,为正则表达式匹配提供了一种新型的、高性能且内存友好的架构。这种技术在网络安全、文本处理、编译器等领域有广泛的应用前景,对于提高大规模数据流中的模式匹配速度和效率具有重要意义。