DocumentCode
2894799
Title
High-speed regular expression matching engine using multi-character NFA
Author
Yamagaki, Norio ; Sidhu, Reetinder ; Kamiya, Satoshi
Author_Institution
Syst. IP Core Res. Labs., NEC Corp., Kawasaki
fYear
2008
fDate
8-10 Sept. 2008
Firstpage
131
Lastpage
136
Abstract
An approach is presented for high throughput matching of regular expressions (regexes) by first converting them into corresponding non-deterministic finite automata (NFAs) which are then configured onto a FPGA. The key novel feature is a technique that, for any given regex, constructs an NFA that processes multiple characters per clock cycle. An efficient algorithm is proposed that outputs an NFA which processes twice the number of characters as the input one. A technique is also proposed that implements the range match operation (e.g. [a-z]) efficiently. A program has been written that implements above ideas to convert regexes into NFAs specified in a structural hardware design language (HDL), which are then mapped onto a FPGA. Performance is evaluated using real world regexes (Snort ruleset). The results demonstrate the practical utility of the approach. For example, for a set of 2,691 regexes, while the standard 1-character NFA obtains a throughput of 1.25 Gbps, our 4-character NFA achieves a throughput of 3.63 Gbps, while requiring only 20% more LUTs and 6% less flip-flops.
Keywords
field programmable gate arrays; finite automata; hardware description languages; pattern matching; high throughput matching; high-speed regular expression matching engine; nondeterministic finite automata; regular expressions; structural hardware design language; Automata; Bandwidth; Clocks; Doped fiber amplifiers; Engines; Field programmable gate arrays; Hardware design languages; Logic; Microprocessors; Throughput;
fLanguage
English
Publisher
ieee
Conference_Titel
Field Programmable Logic and Applications, 2008. FPL 2008. International Conference on
Conference_Location
Heidelberg
Print_ISBN
978-1-4244-1960-9
Electronic_ISBN
978-1-4244-1961-6
Type
conf
DOI
10.1109/FPL.2008.4629920
Filename
4629920
Link To Document