Abstract
Internet of Things leads to routing table explosion. An inexpensive approach for IP routing table lookup is required against ever growing size of the Internet. We contribute by a fast and scalable software routing lookup algorithm based on a multiway trie, called Poptrie. Named after our approach to traversing the tree, it leverages the population count instruction on bit-vector indices for the descendant nodes to compress the data structure within the CPU cache. Poptrie outperforms the state-of-the-art technologies, Tree BitMap, DXR and SAIL, in all of the evaluations using random and real destination queries on 35 routing tables, including the real global tier-1 ISP's full-route routing table. Poptrie peaks between 174 and over 240 Million lookups per second (Mlps) with a single core and tables with 500--800k routes, consistently 4--578% faster than all competing algorithms in all the tests we ran. We provide the comprehensive performance evaluation, remarkably with the CPU cycle analysis. This paper shows the suitability of Poptrie in the future Internet including IPv6, where a larger route table is expected with longer prefixes.
Supplemental Material
- WIDE Project. http://www.wide.ad.jp/.Google Scholar
- WIDE Project MAWI Working Group Traffic Archive. http://mawi.wide.ad.jp/mawi/.Google Scholar
- Intel(R) 64 and IA-32 Architectures Software Developer Manuals (version 052), Sept. 2014.Google Scholar
- M. Bando, Y.-L. Lin, and H. J. Chao. FlashTrie: Beyond 100-Gb/s IP Route Lookup Using Hash-based Prefix-compressed Trie. IEEE/ACM Trans. Netw., 20(4):1262--1275, 2012. Google ScholarDigital Library
- A. Basu and G. Narlikar. Fast Incremental Updates for Pipelined Forwarding Engines. IEEE/ACM Trans. Netw., 13(3):690--703, June 2005. Google ScholarDigital Library
- M. Chiosi et al. Network Functions Virtualisation -- Introductory White Paper. ETSI, 2012.Google Scholar
- T. H. Cormen, C. Stein, R. L. Rivest, and C. E. Leiserson. Introduction to Algorithms. McGraw-Hill Higher Education, 2nd edition, 2001. Google ScholarDigital Library
- M. Degermark, A. Brodnik, S. Carlsson, and S. Pink. Small Forwarding Tables for Fast Routing Lookups. In ACM SIGCOMM, pages 3--14, 1997. Google ScholarDigital Library
- S. Dharmapurikar, P. Krishnamurthy, and D. E. Taylor. Longest Prefix Matching Using Bloom Filters. IEEE/ACM Trans. Netw., 14(2):397--409, Apr. 2006. Google ScholarDigital Library
- M. Dobrescu, N. Egi, K. Argyraki, B.-G. Chun, K. Fall, G. Iannaccone, A. Knies, M. Manesh, and S. Ratnasamy. RouteBricks: Exploiting Parallelism to Scale Software Routers. In ACM SOSP, pages 15--28, 2009. Google ScholarDigital Library
- W. Eatherton, G. Varghese, and Z. Dittia. Tree Bitmap: Hardware/Software IP Lookups with Incremental Updates. ACM SIGCOMM Comput. Commun. Rev., 34(2):97--122, 2004. Google ScholarDigital Library
- M. J. Freedman, M. Vutukuru, N. Feamster, and H. Balakrishnan. Geographic Locality of IP Prefixes. In ACM IMC, pages 13--13, Berkeley, CA, USA, 2005. Google ScholarDigital Library
- P. Gupta, S. Lin, and N. McKeown. Routing Lookups in Hardware at Memory Access Speeds. In IEEE INFOCOM, volume 3, pages 1240--1247, 1998.Google ScholarCross Ref
- S. Han, K. Jang, K. Park, and S. Moon. PacketShader: A GPU-accelerated Software Router. In ACM SIGCOMM, pages 195--206, 2010. Google ScholarDigital Library
- J. Hasan and T. N. Vijaykumar. Dynamic Pipelining: Making IP-lookup Truly Scalable. In ACM SIGCOMM, pages 205--216, 2005. Google ScholarDigital Library
- W. Jiang, Q. Wang, and V. Prasanna. Beyond TCAMs: An SRAM-Based Parallel Multi-Pipeline Architecture for Terabit IP Lookup. In IEEE INFOCOM, pages 1786--1794, 2008.Google ScholarCross Ref
- K. C. Knowlton. A Fast Storage Allocator. Commun. ACM, 8(10):623--624, Oct. 1965. Google ScholarDigital Library
- D. E. Knuth. The Art of Computer Programming, Volume 3: Sorting and Searching. Addison Wesley Longman Publishing Co., Inc., 2nd edition, 1998. Google ScholarDigital Library
- E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. F. Kaashoek. The Click Modular Router. ACM Trans. Comput. Syst., 18(3):263--297, 2000. Google ScholarDigital Library
- S. Kumar, M. Becchi, P. Crowley, and J. Turner. CAMP: Fast and Efficient IP Lookup Architecture. In ACM/IEEE ANCS, pages 51--60, 2006. Google ScholarDigital Library
- Y. Li, D. Zhang, A. X. Liu, and J. Zheng. GAMT: A Fast and Scalable IP Lookup Engine for GPU-based Software Routers. In ACM/IEEE ANCS, pages 1--12, 2013. Google ScholarDigital Library
- G. Marsaglia. Xorshift RNGs. Journal of Statistical Software, 8(14):1--6, 2003.Google ScholarCross Ref
- A. McAuley and P. Francis. Fast Routing Table Lookup using CAMs. In IEEE INFOCOM, volume 3, pages 1382--1391, 1993.Google ScholarCross Ref
- D. R. Morrison. PATRICIA--Practical Algorithm To Retrieve Information Coded in Alphanumeric. J. ACM, 15(4):514--534, Oct. 1968. Google ScholarDigital Library
- G. Rétvári, J. Tapolcai, A. Körösi, A. Majdán, and Z. Heszberger. Compressing IP Forwarding Tables: Towards Entropy Bounds and Beyond. In ACM SIGCOMM, pages 111--122, 2013. Google ScholarDigital Library
- L. Rizzo. Netmap: A Novel Framework for Fast Packet I/O. In USENIX ATC, pages 9--9, 2012. Google ScholarDigital Library
- L. Rizzo and G. Lettieri. VALE, a Switched Ethernet for Virtual Machines. In ACM CoNEXT, pages 61--72, 2012. Google ScholarDigital Library
- L. Rizzo, G. Lettieri, and V. Maffione. Speeding Up Packet I/O in Virtual Machines. In ACM/IEEE ANCS, pages 47--58, 2013. Google ScholarDigital Library
- R. Sedgewick. Algorithms in C, Parts 1--4: Fundamentals, Data Structures, Sorting, Searching. Addison-Wesley Professional, 3rd edition, 1997. Google ScholarDigital Library
- K. Sklower. A Tree-Based Packet Routing Table for Berkeley Unix. In USENIX Winter Conference, pages 93--104, 1991.Google Scholar
- V. Srinivasan and G. Varghese. Fast Address Lookups Using Controlled Prefix Expansion. ACM Trans. Comput. Syst., 17(1):1--40, 1999. Google ScholarDigital Library
- W. Sun and R. Ricci. Fast and Flexible: Parallel Packet Processing with GPUs and Click. In ACM/IEEE ANCS, pages 25--36, 2013. Google ScholarDigital Library
- University of Oregon. Route Views Project. http://www.routeviews.org/.Google Scholar
- M. Waldvogel, G. Varghese, J. Turner, and B. Plattner. Scalable High Speed IP Routing Lookups. In ACM SIGCOMM, pages 25--36, 1997. Google ScholarDigital Library
- H. S. Warren. Hacker's delight. Pearson Education, 2013. Google ScholarDigital Library
- T. Yang, G. Xie, Y. Li, Q. Fu, A. X. Liu, Q. Li, and L. Mathy. Guarantee IP Lookup Performance with FIB Explosion. In ACM SIGCOMM, pages 39--50, 2014. Google ScholarDigital Library
- F. Zane, G. Narlikar, and A. Basu. CoolCAMs: Power-Efficient TCAMs for Forwarding Engines. In IEEE INFOCOM, volume 1, pages 42--52, 2003.Google ScholarCross Ref
- M. Zec, L. Rizzo, and M. Mikuc. DXR: Towards a Billion Routing Lookups Per Second in Software. ACM SIGCOMM Comput. Commun. Rev., 42(5):29--36, 2012. Google ScholarDigital Library
- K. Zheng, C. Hu, H. Lu, and B. Liu. A TCAM-based Distributed Parallel IP Lookup Scheme and Performance Analysis. IEEE/ACM Trans. Netw., 14(4):863--875, Aug. 2006. Google ScholarDigital Library
Index Terms
- Poptrie: A Compressed Trie with Population Count for Fast and Scalable Software IP Routing Table Lookup
Recommendations
Poptrie: A Compressed Trie with Population Count for Fast and Scalable Software IP Routing Table Lookup
SIGCOMM '15: Proceedings of the 2015 ACM Conference on Special Interest Group on Data CommunicationInternet of Things leads to routing table explosion. An inexpensive approach for IP routing table lookup is required against ever growing size of the Internet. We contribute by a fast and scalable software routing lookup algorithm based on a multiway ...
FlashTrie: beyond 100-Gb/s IP route lookup using hash-based prefix-compressed trie
It is becoming apparent that the next-generation IP route lookup architecture needs to achieve speeds of 100 Gb/s and beyond while supporting IPv4 and IPv6 with fast real-time updates to accommodate ever-growing routing tables. Some of the proposed ...
A novel routing algorithm for IoT cloud based on hash offset tree
AbstractIoT-Cloud has been played significant role and helped doctors or physicians to add wisdom for healthcare, A data center network (DCN) and a software defined network (SDN) in IoT-Cloud are characterized by a considerable increase in routing table ...
Highlights- An efficient prefix-matching algorithm that combines the strengths of the hash and trie methods is proposed.
- The study designs a hash offset trie match on longest prefix (HOTMLP) algorithm.
- The exact prefix-matching entry is ...
Comments