• 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