ACM Home Page
Please provide us with feedback. Feedback
Extending finite automata to efficiently match Perl-compatible regular expressions
Full text PdfPdf (447 KB)
Source International Conference On Emerging Networking Experiments And Technologies archive
Proceedings of the 2008 ACM CoNEXT Conference table of contents
Madrid, Spain
Article No. 25  
Year of Publication: 2008
ISBN:978-1-60558-210-8
Authors
Michela Becchi  Washington University, St. Louis, MO
Patrick Crowley  Washington University, St. Louis, MO
Sponsors
ACM: Association for Computing Machinery
SIGCOMM: ACM Special Interest Group on Data Communication
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 24,   Downloads (12 Months): 82,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1544012.1544037
What is a DOI?

ABSTRACT

Regular expression matching is a crucial task in several networking applications. Current implementations are based on one of two types of finite state machines. Non-deterministic finite automata (NFAs) have minimal storage demand but have high memory bandwidth requirements. Deterministic finite automata (DFAs) exhibit low and deterministic memory bandwidth requirements at the cost of increased memory space. It has already been shown how the presence of wildcards and repetitions of large character classes can render DFAs and NFAs impractical. Additionally, recent security-oriented rule-sets include patterns with advanced features, namely back-references, which add to the expressive power of traditional regular expressions and cannot therefore be supported through classical finite automata.

In this work, we propose and evaluate an extended finite automaton designed to address these shortcomings. First, the automaton provides an alternative approach to handle character repetitions that limits memory space and bandwidth requirements. Second, it supports back-references without the need for back-tracking in the input string. In our discussion of this proposal, we address practical implementation issues and evaluate the automaton on real-world rule-sets. To our knowledge, this is the first high-speed automaton that can accommodate all the Perl-compatible regular expressions present in the Snort network intrusion and detection system.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
 
4
Perl Compatible Regular Expressions: http://www.pcre.org/
 
5
 
6
 
7
Snort: http://www.Snort.org/
 
8
 
9
ClamAV: http://www.clamav.net/
 
10
Cisco Security Appliance. http://www.cisco.com. 2007.
 
11
Citrix Application Firewall. http://www.citrix.com. 2007.
 
12
13
 
14
15
16
17
18
19
20
21
 
22
 
23
 
24
C. Clark et al., "Efficient reconfigurable logic circuit for matching complex network intrusion detection patterns," in FLP 2003
25
26
 
27
Becchi et al., "A workload for evaluating deep packet inspection architectures," in IISWC 2008

Collaborative Colleagues:
Michela Becchi: colleagues
Patrick Crowley: colleagues