DocumentCode
74208
Title
Revisiting State Blow-Up: Automatically Building Augmented-FA While Preserving Functional Equivalence
Author
Xiaodong Yu ; Lin, Bo ; Becchi, Michela
Author_Institution
Dept. of Electr. & Comput. Eng., Univ. of Missouri, Columbia, MO, USA
Volume
32
Issue
10
fYear
2014
fDate
Oct. 2014
Firstpage
1822
Lastpage
1833
Abstract
Regular expression matching, a central task in deep packet inspection and other networking applications, has been traditionally implemented through finite automata. Thanks to their limited per-character processing and memory bandwidth requirements, deterministic finite automata (DFA) are a natural choice for memory-based implementations. In the presence of large datasets of complex patterns, however, DFA suffer from the well-known state explosion problem. Specifically, state explosion can take place during DFA generation when the considered patterns contain bounded and unbounded repetitions of wildcards or large character sets. Several alternative FA representations have been proposed to address this problem. However, these proposals all suffer from one or more of the following problems: some can avoid state explosion only on datasets of limited size and complexity; some have prohibitive worst-case memory bandwidth requirements or processing time; and some can only guarantee functional equivalence for restricted classes of regular expressions and require the user to manually filter out unsupported patterns. In this work we propose JFA, a finite automation that uses state variables to avoid state explosion, and is functionally equivalent to the corresponding DFA. Functional equivalence is guaranteed by construction without requiring user intervention. We also provide optimization techniques to both limit the amount of state variables required and provide a lower bound for the JFA traversal time.
Keywords
deterministic automata; finite automata; formal languages; DFA generation; JFA traversal time; augmented-FA; deep packet inspection; deterministic finite automata; finite automation; functional equivalence; memory bandwidth requirements; memory-based implementations; optimization techniques; per-character processing; regular expression matching; regular expressions; state blow-up; state explosion problem; Automata; Bandwidth; Complexity theory; Explosions; Memory management; Proposals; Radiation detectors; Deep packet inspection; finite automata; regular expression matching;
fLanguage
English
Journal_Title
Selected Areas in Communications, IEEE Journal on
Publisher
ieee
ISSN
0733-8716
Type
jour
DOI
10.1109/JSAC.2014.2358840
Filename
6901222
Link To Document