You are here: Home Research iNFAnt

iNFAnt

by Niccolo' Cascarano last modified Sep 22, 2012 06:34 AM

iNFAnt is a framework that enables to execute very large and complex regular expressions rulesets with a low memory occupation and at very high throughput, using the speedup provided by new newest nVidia GPUs. The regular expressions are provided to the framework as a plain text file respecting the PCRE syntax (backtracking and non-context free features are not supported). The framework can "compile" the regular expressions set into a transition graph file that is used as an input to the iNFAnt engine. Optionally the transition graph can be strided multiple times in order to increase the throughput, which usually doubles after each multistriding step, paying with a bigger  transition graph and adding a translation step to data to be processed.

For more details  about the algorithm, the multistriding and the performance analysis, please refer to the paper that presents this work:

http://netgroup.polito.it/pubs/pdf/2010/iNFAnt-CCR.pdf

Warning: this software is still experimental and many limitations are present. Please refer to the README file enclosed in the package for more details about this matter.

Download the framework

Framework download: iNFAnt (version: 0.2 - updated 13/9/2010)

Requirements

To compile and run this framework you need:

  • CUDA >=1.3 enabled nVidia GPU card
  • Cuda Toolkit >=2.3
  • GNU C++ compiler >=4.1
  • libpcap-dev >=0.8
  • libboost >=1.40.0

Credits

This work was partially supported by Cisco Systems Inc. under the grant #570127, "Fast and memory-efficient regular expression matching," Oct 2010.

Document Actions