Title :
Hierarchical hybrid search structure for high performance packet classification
Author :
Erdem, Ouzhan ; Le, Hoang ; Prasanna, Viktor K.
Author_Institution :
Electr. & Electron. Eng., Middle East Tech. Univ., Ankara, Turkey
Abstract :
Hierarchical search structures for packet classification offer good memory performance and support quick rule updates when implemented on multi-core network processors. However, pipelined hardware implementation of these algorithms has two disadvantages: (1) backtracking which requires stalling the pipeline and (2) inefficient memory usage due to variation in the size of the trie nodes. We propose a clustering algorithm that can partition a given rule database into a fixed number of clusters to eliminate back-tracking in the state-of-the-art hierarchical search structures. Furthermore, we develop a novel ternary trie data structure (T∈). In T∈ structure, the size of the trie nodes is fixed by utilizing ∈-branch property, which overcomes the memory inefficiency problems in the pipelined hardware implementation of hierarchical search structures. We design a two-stage hierarchical search structure consisting of binary search trees in Stage 1, and T∈ structures in Stage 2. Our approach demonstrates a substantial reduction in the memory footprint compared with that of the state-of-the-art. For all publicly available databases, the achieved memory efficiency is between 10.37 and 22.81 bytes of memory per rule. State-of-the-art designs can only achieve the memory efficiency of over 23 byte/rule in the best case. We also propose a SRAM-based linear pipelined architecture for packet classification that achieves high throughput. Using a state-of-the-art FPGA, the proposed design can sustain a 418 million packets per second throughput or 134 Gbps (for the minimum packet size of 40 Bytes). Additionally, our design maintains packet input order and supports in-place non-blocking rule updates.
Keywords :
SRAM chips; field programmable gate arrays; microprocessor chips; multiprocessing systems; pipeline processing; tree data structures; ∈-branch property; FPGA; SRAM; backtracking; binary search trees; clustering algorithm; hierarchical hybrid search structure; high performance packet classification; linear pipelined architecture; memory footprint; memory inefficiency problem; memory usage; multicore network processor; pipelined hardware; rule database; ternary trie data structure; Clustering algorithms; Data structures; Hardware; IP networks; Partitioning algorithms; Silicon; Throughput;
Conference_Titel :
INFOCOM, 2012 Proceedings IEEE
Conference_Location :
Orlando, FL
Print_ISBN :
978-1-4673-0773-4
DOI :
10.1109/INFCOM.2012.6195565