<?xml version="1.0" encoding="UTF-8"?><xml><records><record><source-app name="Biblio" version="6.x">Drupal-Biblio</source-app><ref-type>10</ref-type><contributors><authors><author><style face="normal" font="default" size="100%">T. Lakshman</style></author><author><style face="normal" font="default" size="100%">F. Yu</style></author><author><style face="normal" font="default" size="100%">Randy Katz</style></author></authors></contributors><titles><title><style face="normal" font="default" size="100%">Fast and memory-efficient regular expression matching for deep packet inspection</style></title><secondary-title><style face="normal" font="default" size="100%">Symposium On Architecture For Networking And Communications Systems</style></secondary-title><tertiary-title><style face="normal" font="default" size="100%">Proceedings of the 2006 ACM/IEEE symposium on Architecture for networking and communications systems</style></tertiary-title></titles><dates><year><style  face="normal" font="default" size="100%">2006</style></year><pub-dates><date><style  face="normal" font="default" size="100%">12/2006</style></date></pub-dates></dates><urls><web-urls><url><style face="normal" font="default" size="100%">http://portal.acm.org/toc.cfm?id=1185347&type=proceeding&coll=GUIDE&dl=GUIDE&CFID=22567714&CFTOKEN=20638141</style></url></web-urls></urls><publisher><style face="normal" font="default" size="100%">ACM</style></publisher><pub-location><style face="normal" font="default" size="100%">San Jose, California</style></pub-location><pages><style face="normal" font="default" size="100%">93-102</style></pages><isbn><style face="normal" font="default" size="100%">1-59593-580-0</style></isbn><abstract><style face="normal" font="default" size="100%">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 memory usage. Further, we develop a grouping scheme that can strategically compile a set of regular expressions into several engines, resulting in remarkable improvement of regular expression matching speed without much increase in memory usage. We implement a new DFA-based packet scanner using the above techniques. Our experimental results using real-world traffic and patterns show that our implementation achieves a factor of 12 to 42 performance improvement over a commonly used DFA-based scanner. Compared to the state-of-art NFA-based implementation, our DFA-based packet scanner achieves 50 to 700 times speedup.</style></abstract></record></records></xml>