In this paper, we propose a new algorithm to accelerate the searching speed in network intrusion detection system (NIDS) and we implement our algorithm in Snort, a popular open-source intrusion detection system. The algorithm is based on the fact that normal data stream rarely matches any virus signature and different packets need to check different keys. The algorithm does not need preprocessing and can check multiple characters in parallel. Experimental results show that our implementation is faster than original NFA/DFA based algorithms to deal with the same real packet traces while consuming an order of magnitude less memory.
Zhang, Meng-meng; Sun, Yan; and Wang, Jing-zhong
"A Fast Regular Expressions Matching Algorithm for NIDS,"
Applied Mathematics & Information Sciences: Vol. 07:
2, Article 44.
Available at: https://digitalcommons.aaru.edu.jo/amis/vol07/iss2/44