A new hierarchical packet classification algorithm

Packet classification is one of the most challenging functions in Internet routers since it involves a multi-dimensional search that should be performed at wire-speed. Hierarchical packet classification is an effective solution which reduces the search space significantly whenever a field search is completed. However, the hierarchical approach using binary tries has two intrinsic problems: back-tracking and empty internal nodes. To avoid back-tracking, the hierarchical set-pruning trie applies rule copy, and the grid-of-tries uses pre-computed switch pointers. However, none of the known hierarchical algorithms simultaneously avoids empty internal nodes and back-tracking. This paper describes various packet classification algorithms and proposes a new efficient packet classification algorithm using the hierarchical approach. In the proposed algorithm, a hierarchical binary search tree, which does not involve empty internal nodes, is constructed for the pruned set of rules. Hence, both back-tracking and empty internal nodes are avoided in the proposed algorithm. Two refinement techniques are also proposed; one for reducing the rule copy caused by the set-pruning and the other for avoiding rule copy. Simulation results show that the proposed algorithm provides an improvement in search performance without increasing the memory requirement compared with other existing hierarchical algorithms.

[1]  Bernhard Plattner,et al.  Scalable high speed IP routing lookups , 1997, SIGCOMM '97.

[2]  George Varghese,et al.  Fast and scalable layer four switching , 1998, SIGCOMM '98.

[3]  Miad Faezipour,et al.  Wire-Speed TCAM-Based Architectures for Multimatch Packet Classification , 2009, IEEE Transactions on Computers.

[4]  Hyesook Lim,et al.  Priority Tries for IP Address Lookup , 2010, IEEE Transactions on Computers.

[5]  Pi-Chung Wang,et al.  Scalable packet classification with controlled cross-producting , 2009, Comput. Networks.

[6]  Hyesook Lim,et al.  Hierarchical packet classification using a Bloom filter and rule-priority tries , 2010, Comput. Commun..

[7]  Jonathan S. Turner,et al.  ClassBench: A Packet Classification Benchmark , 2005, IEEE/ACM Transactions on Networking.

[8]  Chun-Ying Huang,et al.  Session Level Flow Classification by Packet Size Distribution and Session Grouping , 2012, 2012 26th International Conference on Advanced Information Networking and Applications Workshops.

[9]  Anand Rangarajan,et al.  Algorithms for advanced packet classification with ternary CAMs , 2005, SIGCOMM '05.

[10]  Eric Torng,et al.  TCAM Razor: A Systematic Approach Towards Minimizing Packet Classifiers in TCAMs , 2007, 2007 IEEE International Conference on Network Protocols.

[11]  N. Yazdani,et al.  Fast and scalable schemes for the IP address lookup problem , 2000, ATM 2000. Proceedings of the IEEE Conference on High Performance Switching and Routing (Cat. No.00TH8485).

[12]  George Varghese,et al.  Packet classification using multidimensional cutting , 2003, SIGCOMM '03.

[13]  George Varghese,et al.  Fast packet classification for two-dimensional conflict-free filters , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[14]  Venkatachary Srinivasan,et al.  Packet classification using tuple space search , 1999, SIGCOMM '99.

[15]  Hyesook Lim,et al.  IP address lookup for internet routers using balanced binary search with prefix vector , 2009, IEEE Transactions on Communications.

[16]  George Varghese,et al.  Packet classification for core routers: is there an alternative to CAMs? , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[17]  George Varghese,et al.  Scalable packet classification , 2001, SIGCOMM '01.

[18]  So-Yeon Kim,et al.  Tuple Pruning Using Bloom Filters for Packet Classification , 2009, IEEE Micro.

[19]  Nick McKeown,et al.  Classifying Packets with Hierarchical Intelligent Cuttings , 2000, IEEE Micro.

[20]  Hyejeong Hong,et al.  An efficient IP address lookup algorithm based on a small balanced tree using entry reduction , 2012, Comput. Networks.

[21]  Hyesook Lim,et al.  High-speed packet classification using binary search on length , 2007, ANCS '07.

[22]  Nick McKeown,et al.  Algorithms for packet classification , 2001, IEEE Netw..

[23]  Hyesook Lim,et al.  Two-dimensional packet classification algorithm using a quad-tree , 2007, Comput. Commun..

[24]  Hung-Hsiang Jonathan Chao,et al.  Next generation routers , 2002, Proc. IEEE.

[25]  Sarang Dharmapurikar,et al.  Longest prefix matching using bloom filters , 2006, IEEE/ACM Transactions on Networking.

[26]  David E. Taylor Survey and taxonomy of packet classification techniques , 2005, CSUR.