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 to a set of patterns specified as regular expressions. In this chapter, we first describe the typical patterns used in packet-scanning applications and show that for some of these patterns the memory requirements can be prohibitively high when traditional matching methods are used. We then review techniques for efficient regular expression matching and explore regular expression rewrite techniques that can significantly reduce memory usage. Based on new rewrite insights, we propose guidelines for pattern writers to make matching fast and practical. Furthermore, we discuss deterministic finite automaton (DFA) link compression techniques and review algorithms and data structures that are specifically designed for matching regular expressions in networking applications.
CITATION STYLE
Yu, F., Diao, Y., Katz, R. H., & Lakshman, T. V. (2010). Fast Packet Pattern-Matching Algorithms (pp. 219–238). https://doi.org/10.1007/978-1-84882-765-3_10
Mendeley helps you to discover research relevant for your work.