Back to Search
Start Over
Multi-pipelined and memory-efficient packet classification engines on FPGAs
- Source :
- Computer Communications. 67:75-91
- Publication Year :
- 2015
- Publisher :
- Elsevier BV, 2015.
-
Abstract
- A packet classification task incorporated in network firewalls to recognize and sift threats or unauthorized network accesses is accomplished by checking incoming packet headers against a pre-defined filter set. Plenty of solutions to reduce the memory requirement of filter set storage and accommodate packet classification to line rates have been proposed over the past decade. Among all the existing approaches, hierarchical data structures maintain great memory performance however their hardware realization suffers from two issues: (i) backtracking and (ii) memory inefficiency. In this paper, we propose two data structures denoted range tree-linked list hierarchical search structure (RLHS) and value-coded trie structure with -branch property (VC) for packet classification. RLHS resolves backtracking by exploiting range tree in Stage 1 and linked list data structure in Stage 2 overcomes the memory inefficiency. VC trie that naturally does not involve backtracking problem, solves memory inefficiency issue by comprising a fixed size bin at each node. Apart from conventional binary trie, a new rule is inserted into the first available bin on the path of this rule in a VC trie, and -branch property is utilized in case all the bins are full. We also propose a rule categorization algorithm that partitions an input ruleset by considering the field features of rules to minimize the memory requirement. To support the proposed data structures, we designed high throughput SRAM-based parallel and pipelined architectures on Field Programmable Gate Arrays (FPGAs).
Details
- ISSN :
- 01403664
- Volume :
- 67
- Database :
- OpenAIRE
- Journal :
- Computer Communications
- Accession number :
- edsair.doi...........a10cde4e6096d8593b23ab9ce479bb4f
- Full Text :
- https://doi.org/10.1016/j.comcom.2015.05.017