期刊文献+

一种基于Bloom Filter的正则表达式集合快速搜索算法 被引量:4

A Fast Regular Expression Set Matching Algorithm Based on Bloom Filter
下载PDF
导出
摘要 正则表达式搜索算法的性能与从非确定性有限状态自动机(NFA)的初始状态到终止状态的最短路径Lmin成正比,与正则表达式所表达的语言的前缀集合Pref(RE)成反比,而一般情况下Pref(RE)较大,确定Pref(RE)中的元素在目标文本中的出现位置比较困难.文中提出了一种基于Bloom Filter的正则表达式集合搜索算法,此算法利用BloomFilter集合查询时间与集合大小无关的特点,可以快速准备定位Pref(RE)的出现位置,使得搜索速度不受Pref(RE)的影响,如果采用多个Bloom Filter并行,还可以间接增大Lmin.分析与测试结果表明,该算法较大地加快了正则表达式的搜索速度,对于正则表达式集合,算法性能改善尤其明显,在Lmin较长、Pref(RE)较大时,搜索速度可以提高数倍至数十倍,适合大规模的多正则表达式的快速搜索. The effectiveness of the regular expression searching algorithms are proportional to the shortest path Lmin from the initial state to the final state of NFA and is inversely proportional to the prefix set Pref(RE) of the language that denotes the regular expression. In general, the elements in Pref(RE) are difficult to locate in the target text because the set of Pref(RE) is large. Proposed in this paper is a regular expression searching algorithm based on the Bloom Filter of which computation time to perform the query is independent of the string number. The proposed algorithm can fast locate Pref(RE) and perform a search with the speed immune from Pref(RE) , and, particularly, when multiple parallel Bloom Filters are employed, the algorithm may indirectly lengthen the shortest path. Analysis and experimental results indicate that the proposed algorithm greatly accelerates the search of regular expressions, especially for the search of an regular expression set, and that the searching speed increases several times and even up to tens of times when Lmin and Pref(RE) values are both large. It is thus concluded that the proposed algorithm is suitable for the fast search of multiple regular expressions on a large scale.
出处 《华南理工大学学报(自然科学版)》 EI CAS CSCD 北大核心 2009年第4期37-41,共5页 Journal of South China University of Technology(Natural Science Edition)
基金 中国博士后自然科学基金资助项目(2005037582) 粤港关键领域重点突破项目(2005A10307007)
关键词 正则表达式匹配 BLOOM Filter 自动机 模式匹配 regular expression matching Bloom Filter automaton pattern matching
  • 相关文献

参考文献13

  • 1Gonzalo Navarro,Mathieu Raffinot.New techniques for regular expression searching[J].Algorithmica,2005,11(41):89-116.
  • 2Yu Fang,Chen Zhi-feng,Diao Yan-lei,et al.Fast and memory-efficient regular expression matching for deep packet inspetion[C]∥Proc of the 2006 ACM/IEEE Symposium on Architecture for Networking and Communications Systems.San Jose:ACM/IEEE,2006:93-102.
  • 3Thompson K.Regular expression search algorithm[J].Communications of the ACM,1968,11(6):419-422.
  • 4Myers E.A four-Russian algorithm for regular expression pattern matching[J].Journal of the ACM,1992,39(2):430-448.
  • 5Wu S,Manber U.Fast text searching allowing errors[J].Communications of the ACM,1992,35(10):83-91.
  • 6Glushkov V M.The abstract theory of automata[J].Russian Mathematical Surveys,1961,16(5):1-53.
  • 7Berry G,Sethi R.From regular expression to deterministic automata[J].Theoretical Computer Science,1986,48(1):117-126.
  • 8Bruce W,Richard E.A Boyer-Moore-style algorithm for regular expression pattern matching[J].Science of Computer Programming,2003,8(48):99-117.
  • 9Bruce W.A new regular grammar pattern matching algorithm[J].Theoretical Computer Science,2003,299(1/2/3):509-521.
  • 10Navarro G,Raffinot M.Fast regular expression search[C]∥Proc of the 3rd Workshop on Algorithm Engineering.London:Springer Lecture Notes,1999:199-213.

二级参考文献12

  • 1叶明江,崔勇,徐恪,吴建平.基于有状态Bloom filter引擎的高速分组检测[J].软件学报,2007,18(1):117-126. 被引量:13
  • 2Yu F, Katz R H, Lakshman T V. Gigabit rate packet pattern-matching using TCAM [ C]//Proc of the 12th IEEE Int'l Conf on Network Protocols. Washington: IEEE, 2004 : 174-183.
  • 3Sung Jung-Sik, Kang Eok-Min, Lee Youngseok, et al. A multi-gigabit rate deep packet inspection algorithm using TCAM [ C ]//Proc of Global Telecommunications Conference. St Louis : IEEE ,2006:62-66.
  • 4Dharmapurikar S, Lockwood J. Fast and scalable pattern matching for content filtering [ C ] // Proc of the 2005 ACM Symposium on Architecture for Networking and Communications Systems. Princeton : ACM ,2005 : 183-192.
  • 5Dharmapurikar S, Krishnamurthy P, Sponll T, et al. Deep packet inspection using parallel Bloom filters [ J ]. IEEE Micro,2004,24( 1 ) :52-61.
  • 6Navarro Gonzalo, Raffinot Mathieu. Flexible pattern matching in strings:practical on-line search algorithms for texts and biological sequences [ M ]. Cambridge: Cambridge University Press ,2002.
  • 7Sahinalp S C, Vishkin U. Efficient approximate and dynamic matching of patterns using a labeling paradigm [ C]//Proc of the 37th Conference on Foundations of Computer Science. Burlington : IEEE, 1996:320-328.
  • 8Amir A, Farach M, Matias Y. Efficient randomized dictionary matching algorithms [ C] //Proc of the 3rd Symposium on Combinatorial Pattern Matching. Tucson: ACM, 1992:262-275.
  • 9Fan L, Cao P, Almeida J, et al. Summary cache : a scalable wide-area Web cache sharing protocol [ J]. IEEE/ACM Transactions on Networking, 2000,8 ( 3 ) : 281 - 293.
  • 10Zhen Chen-ehuang, Lin Chuang, Jia Ni, et al. AntiWorm NPU-based parallel Bloom filters for TCP/IP content processing in Giga Ethernet [ C ] //Proe of the First IEEE LCN Workshop on Network Security. Sydney: IEEE, 2005 : 748- 755.

共引文献1

同被引文献27

引证文献4

二级引证文献1

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部