Cuckoo filter-based many-field packet classification using X-tree

Abstract Software-defined networking (SDN) is a new paradigm which emerged in the networking area. Packet classification is an interesting topic that has considered in both traditional and SDN networks. Packet classification involves inspection of multiple fields against a set of thousands of rules called rule-set. With the increasing throughput demands in modern networks and the growing size of rule-sets, performing wire-speed packet classification has become challenging and an important topic in recent years. Packet classification is called as many-field packet classification in the SDN because of increasing the number of header fields. In this paper, a scalable many-field packet classification by employing the extended tree (X-tree) integrated with an efficient probabilistic data structure called Cuckoo filter is proposed. X-tree has high performance from the lookup, insertion, and update aspects. However, X-tree has a high memory requirement, Cuckoo filter as a probabilistic data structure is integrated within each X-tree node to outperform memory requirements and providing more classification throughput. Our experiment results show that the proposed approach achieves high throughput while requiring low memory. In addition, the proposed approach improves latency 2.4$$\times $$×, 6.15$$\times $$× and 4.75$$\times $$× in comparison with DBAMCP, BSOL-RC and BF-AQT for 64 k rule-set, respectively.

[1]  Thar Baker,et al.  Multi-controller Based Software-Defined Networking: A Survey , 2018, IEEE Access.

[2]  Hyesook Lim,et al.  Packet classification using a bloom filter in a leaf-pushing area-based quad-trie , 2015, 2015 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[3]  George Varghese,et al.  Multiway range trees: scalable IP lookup with fast updates , 2001, GLOBECOM'01. IEEE Global Telecommunications Conference (Cat. No.01CH37270).

[4]  T. V. Lakshman,et al.  Multilayer Packet Classification With Graphics Processing Units , 2016, IEEE/ACM Transactions on Networking.

[5]  Viktor K. Prasanna,et al.  A Decomposition-Based Approach for Scalable Many-Field Packet Classification on Multi-core Processors , 2014, International Journal of Parallel Programming.

[6]  Jonathan S. Turner,et al.  Scalable packet classification using distributed crossproducing of field labels , 2005, Proceedings IEEE 24th Annual Joint Conference of the IEEE Computer and Communications Societies..

[7]  Rasmus Pagh,et al.  Cuckoo Hashing , 2001, Encyclopedia of Algorithms.

[8]  G. S. Walia,et al.  Particle filter based on cuckoo search for Non-linear state estimation , 2013, 2013 3rd IEEE International Advance Computing Conference (IACC).

[9]  Nick McKeown,et al.  OpenFlow: enabling innovation in campus networks , 2008, CCRV.

[10]  Viktor K. Prasanna,et al.  Field-split parallel architecture for high performance multi-match packet classification using FPGAs , 2009, SPAA '09.

[11]  Hans-Peter Kriegel,et al.  The X-tree : An Index Structure for High-Dimensional Data , 2001, VLDB.

[12]  Mahmood Ahmadi,et al.  Parallel many fields packet classification technique using R-tree , 2017, 2017 Annual Conference on New Trends in Information & Communications Technology Applications (NTICT).

[13]  Tapan Kumar Nayak,et al.  Reconfigurable very high throughput low latency VLSI (FPGA) design architecture of CRC 32 , 2017, Integr..

[14]  Sartaj Sahni,et al.  O(logW) multidimensional packet classification , 2007, TNET.

[15]  Nick McKeown,et al.  Packet classification on multiple fields , 1999, SIGCOMM '99.

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

[17]  Yu-Chieh Cheng,et al.  Packet Classification Using Dynamically Generated Decision Trees , 2015, IEEE Transactions on Computers.

[18]  Thar Baker,et al.  An Adaptive and Lightweight Update Mechanism for SDN , 2019, IEEE Access.

[19]  Viktor K. Prasanna,et al.  A Scalable and Modular Architecture for High-Performance Packet Classification , 2014, IEEE Transactions on Parallel and Distributed Systems.

[20]  Thar Baker,et al.  An Efficient Multi-Cloud Service Composition Using a Distributed Multiagent-Based, Memory-Driven Approach , 2021, IEEE Transactions on Sustainable Computing.

[21]  Pingfeng Zhong An IPv6 address lookup algorithm based on recursive balanced multi-way range trees with efficient search and update , 2011, 2011 International Conference on Computer Science and Service System (CSSS).

[22]  Wooguil Pak,et al.  Fast Packet Classification Based on Hybrid Cutting , 2017, IEEE Communications Letters.

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

[24]  Eric Torng,et al.  Packet Classification Using Binary Content Addressable Memory , 2016, IEEE/ACM Trans. Netw..

[25]  Mahmood Ahmadi,et al.  Many-field packet classification using AMQ-R-tree , 2018, J. High Speed Networks.

[26]  Eric Torng,et al.  Packet classification using binary Content Addressable Memory , 2014, IEEE INFOCOM 2014 - IEEE Conference on Computer Communications.

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

[28]  T. V. Lakshman,et al.  High-speed policy-based packet forwarding using efficient multi-dimensional range matching , 1998, SIGCOMM '98.

[29]  Xiaoming Dong,et al.  Packet classification based on the decision tree with information entropy , 2018, The Journal of Supercomputing.

[30]  Vikas Gupta,et al.  How Cuckoo Filter Can Improve Existing Approximate Matching Techniques , 2015, ICDF2C.