Skip to main content
Log in

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

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

Notes

  1. The codes is available in: https://github.com/AladdinAbdulhassan/CX-tree.

References

  1. McKeown N, Anderson T, Balakrishnan H, Parulkar G, Peterson L, Rexford J, Shenker S, Turner J (2008) OpenFlow: enabling innovation in campus networks. SIGCOMM Comput Commun 38(2):69–74

    Article  Google Scholar 

  2. Specification, OpenFlow Switch 1.4 (2019) https://www.opennetworking.org/wp-content/uploads/2014/10/openflow-spec-v1.4.0.pdf. Accessed 1 March 2019

  3. Ganegedara T, Jiang W, Prasanna VK (2014) A scalable and modular architecture for high-performance packet classification. IEEE Trans Parallel Distrib Syst 25(5):1134–1144

    Article  Google Scholar 

  4. Walia GS, Kapoor R (2013) Particle filter based on cuckoo search for non-linear state estimation. In: Advance computing conference (IACC), 918–924

  5. Berchtold S, Keim DA, Kriegel HP (1996) The X-tree: an index structure for high-dimensional data. In: Proceeding VLDB ’96 proceedings of the 22th international conference on very large data bases, pp 28–39

  6. Hu T, Guo Z, Yi P, Baker T, Lan J (2018) Multi-controller based software-defined networking: a survey. IEEE Access 6:15980–15996

    Article  Google Scholar 

  7. Yu C, Lan J, Guo Z, Hu Y, Baker T (2019) An adaptive and lightweight update mechanism for SDN. IEEE Access 7:12914–12927

    Article  Google Scholar 

  8. Kendrick P, Baker T, Maamar Z, Hussain A, Buyya R, Al-Jumeily D (2018) An efficient multi-cloud service composition using a distributed multiagent-based. Memory-driven approach. IEEE Trans Sustain Comput Early Access

  9. Liu AX, Meiners CR, Torng E (2016) Packet classification using binary content addressable memory. IEEE/ACM Trans Biol Cybern 24(3):1295–307

    Google Scholar 

  10. Taylor DE (2005) Survey and taxonomy of packet classification techniques. J ACM Comput Surv 37(3):238–275

    Article  Google Scholar 

  11. Lakshman TV, Stiliadis D (1998) High-speed policy-based packet forwarding using efficient multi-dimensional range matching. ACM SIGCOMM Comput Commun Rev 28(4):203–214

    Article  Google Scholar 

  12. Gupta P, McKeown N (1999) Packet classification on multiple fields. ACM SIGCOMM Comput Commun Rev 29(4):147–160

    Article  Google Scholar 

  13. Taylor D, Turner J (2005) Scalable packet classification using distributed crossproducing of field labels. INFOCOM 2005. In: Proceedings of the 24th annual joint conference of the IEEE computer and communications societies, 269–280

  14. Jiang W, Prasanna VK (2009) Field-split parallel architecture for high performance multi-match packet classification using FPGAs. In: Proceedings of the twenty-first annual symposium on parallelism in algorithms and architectures, pp 188-196

  15. Dong X, Qian M, Jiang R (2018) Packet classification based on the decision tree with information entropy. J Supercomput, pp 1–15

  16. Singh S, Baboescu F, Varghese G, Wang J (2003) Packet classification using multidimensional cutting. In: Proceedings of the 2003 conference on applications, technologies, architectures, and protocols for computer communications, pp 213–224

  17. Wee J-H, Pak W (2017) Fast packet classification based on hybrid cutting. IEEE Commun Lett 21(5):1011–1014

    Article  Google Scholar 

  18. Lim H, Byun HY (2015) Packet classification using a bloom filter in a leaf-pushing area-based quad-trie. In: Proceedings of the eleventh ACM/IEEE symposium on architectures for networking and communications systems, 183–184

  19. Varvello M, Laufer R, Zhang F, Lakshman TV (2016) Multilayer packet classification with graphics processing units. IEEE/ACM Trans Netw 24(5):2728–2741

    Article  Google Scholar 

  20. Lu H, Sahni OS (2007) O(logW) multidimensional packet classification. IEEE/ACM Trans Netw 15(2):462–472

    Article  Google Scholar 

  21. Cheng Y-C, Wang P-C (2015) Packet classification using dynamically generated decision trees. IEEE Trans Comput 64(2):582–586

    Article  MathSciNet  Google Scholar 

  22. Qu YR, Zhou S, Prasanna VK (2015) A decomposition-based approach for scalable many-field packet classification on multi-core processors. Int J Parallel Program 43(6):965–987

    Article  Google Scholar 

  23. Warkhede P, Suri S, Varghese G (2004) Multiway range trees: scalable IP lookup with fast updates. Comput Netw 44(3):289–303

    Article  Google Scholar 

  24. Zhong P (2011) An IPv6 address lookup algorithm based on recursive balanced multi-way range trees with efficient search and update. In: Proceedings of the international conference on computer science and service system (CSSS), 2059–2063

  25. Pagh R, Rodler FF (2001) Cuckoo hashing. Springer, Berlin

    MATH  Google Scholar 

  26. Abdulhassan A, Ahmadi M (20017) Parallel many fields packet classification technique using R-tree. In: New trends in information and communications technology applications (NTICT), 274–279

  27. Abdulhassan A, Ahmadi M (2018) Many-field packet classification using AMQ-R-tree. J High Speed Netw 24(3):219–241

    Article  Google Scholar 

  28. Gupta V, Breitinger F (2015) How cuckoo filter can improve existing approximate matching techniques. In: International conference on digital forensics and cyber crime, vol 157, pp 39–52

    Google Scholar 

  29. Taylor DE, Turner JS (2007) ClassBench: a packet classification benchmark. IEEE/ACM Trans Netw 15(3):499–511

    Article  Google Scholar 

  30. Kaler T, Cache efficient bloom filters for shared memory machines. https://pdfs.semanticscholar.org/465b/0d7872764bba2a6daadffa9a169d056b8c7c.pdf

  31. Tanjent (tanjent) (2018) MurmurHash first announcement. https://ipfs.io/ipfs/QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco/wiki/MurmurHash.html. Accessed 1 March 2019

  32. Mitra J, Nayak T (2017) Reconfigurable very high throughput low latency VLSI (FPGA) design architecture of CRC 32. Integr VLSI J 56:1–14

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to M. Ahmadi.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Abdulhassan, A.A., Ahmadi, M. Cuckoo filter-based many-field packet classification using X-tree. J Supercomput 75, 5667–5687 (2019). https://doi.org/10.1007/s11227-019-02818-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-019-02818-5

Keywords

Navigation