Fast and Scalable Pattern Matching for Network Intrusion Detection Systems
Authors:
- J.W. LockwoodJLJ.W. Lockwood
- 2 October 2006
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Journal on Selected Areas in Communications
- Vol. 24 (10) , 1781-1792
Abstract
High-speed packet content inspection and filtering devices rely on a fast multipattern matching algorithm which is used to detect predefined keywords or signatures in the packets. Multipattern matching is known to require intensive memory accesses and is often a performance bottleneck. Hence, specialized hardware-accelerated algorithms are required for line-speed packet processing. We present hardware-implementable pattern matching algorithm for content filtering applications, which is scalable in terms of speed, the number of patterns and the pattern length. Our algorithm is based on a memory efficient multihashing data structure called Bloom filter. We use embedded on-chip memory blocks in field programmable gate array/very large scale integration chips to construct Bloom filters which can suppress a large fraction of memory accesses and speed up string matching. Based on this concept, we first present a simple algorithm which can scan for several thousand short (up to 16 bytes) patterns at multigigabit per second speeds with a moderately small amount of embedded memory and a few mega bytes of external memory. Furthermore, we modify this algorithm to be able to handle arbitrarily large strings at the cost of a little more on-chip memory. We demonstrate the merit of our algorithm through theoretical analysis and simulations performed on Snort's string setKeywords
This publication has 15 references indexed in Scilit:
- Fast hash table lookup using extended bloom filterACM SIGCOMM Computer Communication Review, 2005
- Deterministic memory-efficient string matching algorithms for intrusion detection2005
- Implementation Results of Bloom Filters for String Matching2004
- Scalable Pattern Matching for High Speed Networks2004
- Pre-Decoded CAMs for Efficient and High-Speed NIDS Pattern Matching2004
- Gigabit rate packet pattern-matching using TCAM2004
- Time and area efficient pattern matching on FPGAs2004
- Over 10Gbps String Matching Mechanism for Multi-stream Packet Scanning Systems2004
- Summary cache: a scalable wide-area Web cache sharing protocolIEEE/ACM Transactions on Networking, 2000
- Space/time trade-offs in hash coding with allowable errorsCommunications of the ACM, 1970