Proceedings of the 2006 ACM/IEEE Symposium on Architecture for Networking and Communications Systems 2006
DOI: 10.1145/1185347.1185360
|View full text |Cite
|
Sign up to set email alerts
|

Fast and memory-efficient regular expression matching for deep packet inspection

Abstract: Packet content scanning at high speed has become extremely important due to its applications in network security, network monitoring, HTTP load balancing, etc. In content scanning, the packet payload is compared against a set of patterns specified as regular expressions. In this paper, we first show that memory requirements using traditional methods are prohibitively high for many patterns used in packet scanning applications. We then propose regular expression rewrite techniques that can effectively reduce me… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

2
314
0
8

Year Published

2009
2009
2016
2016

Publication Types

Select...
4
3

Relationship

0
7

Authors

Journals

citations
Cited by 411 publications
(324 citation statements)
references
References 17 publications
2
314
0
8
Order By: Relevance
“…For each input character, the DFA makes one access to the state transition table (STT), performs a constant amount of computation, and finds a single transition target. While being computationally efficient (and optimal), the DFA can suffer from state explosion [12,22,27] during its construction, where the number of states required by the DFA is quadratically or exponentially larger than the original NFA [17,27]. State explosion can be caused by certain regex patterns, or by combining several non-exploding patterns in one DFA [27].…”
Section: Rem By Deterministic Finite Automatamentioning
confidence: 99%
See 2 more Smart Citations
“…For each input character, the DFA makes one access to the state transition table (STT), performs a constant amount of computation, and finds a single transition target. While being computationally efficient (and optimal), the DFA can suffer from state explosion [12,22,27] during its construction, where the number of states required by the DFA is quadratically or exponentially larger than the original NFA [17,27]. State explosion can be caused by certain regex patterns, or by combining several non-exploding patterns in one DFA [27].…”
Section: Rem By Deterministic Finite Automatamentioning
confidence: 99%
“…For some regexes, converting the O(n)-state NFA to a DFA can generate an excessively large STT with up to O(2 n ) states and O(2 n |Σ|) transitions, a phenomenon known as the exponential state explosion [17,27]. In these cases, DFA-based REM becomes impractical on multi-core systems for several reasons.…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…In [6] Fang Yu et al systematically analyze the regular expressions which are commonly used in networking applications. They analyze individual regular expressions that will lead DFAs with quadratic size or exponential size, and show that traditional methods are prohibitively high for patterns used in packet scanning applications.…”
Section: Related Workmentioning
confidence: 99%
“…However, memory requirements are high in practical deep packet inspection. For practical networking applications, since we don't have any prior knowledge of whether/where a matching substring may appear, most applications compile the rules together into a single one-pass search mode DFA [6] to achieve O (1) processing complexity. This means ".…”
Section: Introductionmentioning
confidence: 99%