A Real-time Updatable FPGA-based Architecture for Fast Regular Expression Matching

Abstract In recent years, regular expression has been widely used in many network fields, but more and more applications require real-time update FSM and a space reduced DFA due to limited memory capacity. In this paper, we firstly propose a new architecture on FPGA supporting real-time update FSM, and design a special protocol for this update. Secondly, in order to support large-scale and complex semantic regular expression rule sets, we design an improved run-length encoding (iRLE) algorithm based on FPGA to reduce the DFA's storage space. The proposed algorithm gains a good compression ratio and requires only 2 clock cycles per a state transition. The experimental results also show that the new algorithm has both advantages of compressing ratio and speed, and the maximum throughput of the automaton can reach 10.7Gbps.

[1]  Stefano Giordano,et al.  An improved DFA for fast regular expression matching , 2008, CCRV.

[2]  Miad Faezipour,et al.  Constraint Repetition Inspection for Regular Expression on FPGA , 2008, 2008 16th IEEE Symposium on High Performance Interconnects.

[3]  Tran Ngoc Thinh,et al.  Enhanced FPGA-based architecture for regular expression matching in NIDS , 2010, ECTI-CON2010: The 2010 ECTI International Confernce on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology.

[4]  Viktor K. Prasanna,et al.  Fast Regular Expression Matching Using FPGAs , 2001, The 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'01).

[5]  Patrick Crowley,et al.  Algorithms to accelerate multiple regular expressions matching for deep packet inspection , 2006, SIGCOMM 2006.

[6]  Viktor K. Prasanna,et al.  FEACAN: Front-end acceleration for content-aware network processing , 2011, 2011 Proceedings IEEE INFOCOM.

[7]  Viktor K. Prasanna,et al.  High-Performance and Compact Architecture for Regular Expression Matching on FPGA , 2012, IEEE Transactions on Computers.

[8]  Ken Eguro,et al.  Automated dynamic reconfiguration for high-performance regular expression searching , 2009, 2009 International Conference on Field-Programmable Technology.

[9]  SangKyun Yun,et al.  Optimization of Regular Expression Pattern Matching Circuit Using At-Most Two-Hot Encoding on FPGA , 2010, 2010 International Conference on Field Programmable Logic and Applications.

[10]  Yan Luo,et al.  DPICO: a high speed deep packet inspection engine using compact finite automata , 2007, ANCS '07.