Title
BitCuts: A fast packet classification algorithm using bit-level cutting.
Abstract
Packet classification is one of the fundamental techniques required by various network management functionalities. As the state-of-the-art of software packet classification, decision-tree algorithms employ various geometrical cutting schemes to build optimized decision trees. However, existing cutting schemes cannot meet the desired performance on large rulesets because they sacrifice either classification speed or memory size by design. In this paper, we reveal the inefficiencies of current cutting schemes — equi-sized cutting and equi-dense cutting — and propose a new cutting scheme and its corresponding decision-tree algorithm, named “BitCuts”. BitCuts achieves only 42%–59% the memory accesses of HyperSplit, HyperCuts and EffiCuts, the typical decision-tree algorithms. In addition, BitCuts accelerates child-node indexing with bit-manipulation instructions, enabling fast tree traversal. A DPDK-based evaluation on the ACL10K ruleset shows that BitCuts achieves 2.0x – 2.2x the throughput of HyperSplit, HyperCuts and EffiCuts. Furthermore, BitCuts is the only algorithm that achieves 10 Gbps throughput with 3 cores. The memory consumption of BitCuts is only 12% of HyperCuts, 19% of EffiCuts, and is comparable to that of HyperSplit, which proves that BitCuts outperforms existing algorithms in achieving a good trade-off between speed and space.
Year
DOI
Venue
2017
10.1016/j.comcom.2017.05.001
Computer Communications
Keywords
Field
DocType
Packet classification,High-performance,Decision-tree algorithm
Decision tree,Tree traversal,Computer science,Algorithm,Search engine indexing,Software,Throughput,Network management,Packet classification,Decision tree learning
Journal
Volume
ISSN
Citations 
109
0140-3664
7
PageRank 
References 
Authors
0.48
17
5
Name
Order
Citations
PageRank
Zhi Liu16612.72
Shijie Sun210616.25
Hang Zhu3325.62
Jiaqi Gao4183.75
Jun Li533838.15