Packet classification (PC) is one of the core technologies for next generation network service. The goal is to classify packet into different “flow” and classification result can be applied in Differentiated Service. Though many multi-dimensional classifications have been put forward, few of them could accomplish fast search speed, low storage requirements and fast updates at the same time, especially when these algorithms are revised from IPv4 to IPv6. In this paper, we present an innovative packet classification algorithm, called Partial Paralleled algorithm based on Plus Bits (P3). P3 algorithm begins by two paralleled single-field engines and followed by hash table of the remained 3 fields. A novel structure, Plus Bits, is introduced to reduce hash memory accesses. For a 4k filterset, P3 algorithm can achieve about 9 memory accesses on average, taking 326 KB of memory for its data structure and supporting incremental update. We show that our P3 algorithm can meet the demand of current PC requirements.
[1]
Nick McKeown,et al.
Classifying Packets with Hierarchical Intelligent Cuttings
,
2000,
IEEE Micro.
[2]
T. V. Lakshman,et al.
High-speed policy-based packet forwarding using efficient multi-dimensional range matching
,
1998,
SIGCOMM '98.
[3]
George Varghese,et al.
Scalable packet classification
,
2001,
SIGCOMM '01.
[4]
Ioannis Papaefstathiou,et al.
Memory-Efficient 5D Packet Classification At 40 Gbps
,
2007,
IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.
[5]
Jonathan S. Turner,et al.
ClassBench: A Packet Classification Benchmark
,
2005,
IEEE/ACM Transactions on Networking.
[6]
Pankaj Gupta,et al.
Packet Classification using Hierarchical Intelligent Cuttings
,
1999
.
[7]
Xiaohong Huang,et al.
A Dynamic Binary Hash Scheme for IPv6 Lookup
,
2008,
IEEE GLOBECOM 2008 - 2008 IEEE Global Telecommunications Conference.