Conference Proceeding

A regular expression matching using non-deterministic finite automaton

Kyushu Inst. of Technol., Iizuka, Japan
08/2010; DOI:10.1109/MEMCOD.2010.5558621 pp.73 - 76 In proceeding of: Formal Methods and Models for Codesign (MEMOCODE), 2010 8th IEEE/ACM International Conference on
Source: IEEE Xplore

ABSTRACT This paper shows an implementation of CANSCID (Combined Architecture for Stream Categorization and Intrusion Detection). To satisfy the required system throughput, the packet assembler and the regular expression matching are implemented by the dedicated hardware. On the other hand, the counting of matching results and the system control are implemented by a microprocessor. A regular expression matching circuit is performed as follows: First, the given regular expressions are converted into a non-deterministic finite automaton (NFA). Then, to reduce the number of states, the NFA is converted to a modular non-deterministic finite automaton (MNFA(p)) with p-character-consuming transition. Finally, a finite-input memory machine (FIMM) to detect p-characters is generated, and the matching elements (MEs) realizing the states for the MNFA(p) are generated. We loaded 140 regular expressions of the MEMOCODE 2010 design contest on Terasic Corp. DE3 prototyping board (FPGA: Altera's Stratix III). The maximum throughput of our implementation was 798 mega bits per second (Mbps).

0 0
 · 
0 Bookmarks
 · 
48 Views

Full-text

View
1 Download
Available from

Keywords

Altera's Stratix III
 
DE3 prototyping board
 
dedicated hardware
 
FIMM
 
finite-input memory machine
 
given regular expressions
 
Intrusion Detection
 
matching elements
 
Mbps
 
MEMOCODE 2010 design contest
 
modular non-deterministic finite automaton
 
non-deterministic finite automaton
 
p-character-consuming transition
 
p-characters
 
required system throughput
 
Stream Categorization
 
system control