ACM Home Page
Please provide us with feedback. Feedback
Time and area efficient pattern matching on FPGAs
Full text PdfPdf (355 KB)
Source International Symposium on Field Programmable Gate Arrays archive
Proceedings of the 2004 ACM/SIGDA 12th international symposium on Field programmable gate arrays table of contents
Monterey, California, USA
SESSION: Applications II table of contents
Pages: 223 - 232  
Year of Publication: 2004
ISBN:1-58113-829-6
Authors
Zachary K. Baker  University of Southern California, Los Angeles, CA
Viktor K. Prasanna  University of Southern California, Los Angeles, CA
Sponsors
SIGDA: ACM Special Interest Group on Design Automation
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 12,   Downloads (12 Months): 78,   Citation Count: 22
Additional Information:

abstract   references   cited by   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/968280.968312
What is a DOI?

ABSTRACT

Pattern matching for network security and intrusion detection demands exceptionally high performance. Much work has been done in this field, and yet there is still significant room for improvement in efficiency, flexibility, and throughput. We develop a novel linear-array string matching architecture using a buffered, two-comparator variation on the Knuth-Morris-Pratt(KMP) algorithm. For small (16 or fewer characters) patterns, it competes favorably with the state-of-the-art while providing better scalability and reconfiguration, and more efficient hardware utilization. The area efficiency compared to other approaches improves further still as the pattern size increases because only the tables increase in size.KMP is a well-known, efficient string matching technique using a single comparator and a precomputed transition table. We add a second comparator and an input buffer, allowing the system to accept at least one character in each cycle and terminate after a number of clock cycles at maximum equal to the length of the input string plus the size of the buffer. The system also provides a clean, modular route to reconfiguring the patterns on-the-fly and scaling the system to support more units, using several rows of linear array elements. In this paper, we prove the bound on the buffer size and running time, and provide performance comparisons against other approaches.


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
Global Velocity, http://www.globalvelocity.info/, 2003.
 
2
 
3
S. Dharmapurikar, P. Krishnamurthy, T. Sproull, and J. Lockwood. Implementation of a Deep Packet Inspection Circuit using Parallel Bloom Filters in Reconfigurable Hardware. In Proceedings of HOTi03, 2003.
 
4
 
5
 
6
D.E. Knuth, J. Morris, and V.R. Pratt. Fast Pattern Matching in Strings. In SIAM Journal on Computing, 1977.
 
7
C. E. Leiserson and J. B. Saxe. Retiming Synchronous Circuitry. Technical Report~13, Digital Systems Research Center, 1986.
 
8
9
 
10
 
11
Sourcefire. Snort: The Open Source Network Intrusion Detection System. http://www.snort.org, 2003.
 
12
I. Sourdis and D. Pnevmatikatos. Fast, Large-Scale String Match for a 10Gbps FPGA-Based Network Intrusion Detection System. In Proceedings of FPL2003, 2003.
 
13

CITED BY  22

Collaborative Colleagues:
Zachary K. Baker: colleagues
Viktor K. Prasanna: colleagues