Generating a tunable finite automaton for regular expression matching
AssigneePolytechnic Institute of New York University
InventorsH. Jonathan Chao, Yang Xu
Life of this patent
Estimating the term…
Loading patent…
AssigneePolytechnic Institute of New York University
InventorsH. Jonathan Chao, Yang Xu
Estimating the term…
Deterministic Finite Automatons (DFAs) and Nondeterministic Finite Automatons (NFAs) are two typical automatons used in the Network Intrusion Detection System (NIDS). Although they both perform regular expression matching, they have quite different performance and memory usage properties. DFAs provide fast and deterministic matching performance but suffer from the well-known state explosion problem. NFAs are compact, but their matching performance is unpredictable and with no worst case guarantee. A new automaton representation of regular expressions, called Tunable Finite Automaton (TFA), is described. TFAs resolve the DFAs' state explosion problem and the NFAs' unpredictable performance problem. Different from a DFA, which has only one active state, a TFA allows multiple concurrent active states. Thus, the total number of states required by the TFA to track the matching status is much smaller than that required by the DFA. Different from an NFA, a TFA guarantees that the number of concurrent active states is bounded by a bound factor b that can be tuned during the construction of the TFA according to the needs of the application for speed and storage. A TFA can achieve significant reductions in the number of states and memory space.
A computer-implemented method for generating a tunable finite automaton (“TFA”) from a nondeterministic finite automaton (“NFA”) having a finite set of states, a finite set of input symbols and a transition function covering each state and input symbol, the TFA having, at most, a number b of concurrent active states, the computer-implemented method comprising:
A computer-implemented method for generating a tunable finite automaton (“TFA”) from a nondeterministic finite automaton (“NFA”) having a finite set of states, a finite set of input symbols and a transition function covering each state and input symbol, the computer-implemented method comprising:
A non-transitory computer-readable storage medium storing a data structure for emulating, with, at most, b concurrent active states, a nondeterministic finite automaton (“NFA”) having a finite set of states, a finite set of input symbols and a transition function covering each state and input symbol, the data structure including:
An apparatus comprising:
An apparatus comprising:
Dependencies are inferred from the claim text.