Graphics processing units (GPU) can be used to accelerate deep packet inspection. However, the state transition tables used to implement deterministic finite automata are very large and must be stored in DRAM, which inhibits performance and may cause non-deterministic scanning rates. In this work we present GPEP, a GPU-based deep packet inspection engine. GPEP uses an optimized version of our pattern matching algorithm called P3FSM, which has low operational complexity, but reduces the memory requirement such that the state tables can fit into the small on chip memories of a GPU. This allows GPEP to scan quickly and deterministically with no global memory accesses to state tables. We optimize our P3FSM(Portable Predictive Pattern Matching Finite State Machine)algorithm for execution on SIMD devices and to exploit the parallelism of the VLIW arrangement of the GPU processing cores. We show that GPEP consistently achieves over 30 Gb/sdeep packet inspection.
展开▼