skip to main content
10.1145/2486001.2486009acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article
Free access

Compressing IP forwarding tables: towards entropy bounds and beyond

Published: 27 August 2013 Publication History

Abstract

Lately, there has been an upsurge of interest in compressed data structures, aiming to pack ever larger quantities of information into constrained memory without sacrificing the efficiency of standard operations, like random access, search, or update. The main goal of this paper is to demonstrate how data compression can benefit the networking community, by showing how to squeeze the IP Forwarding Information Base (FIB), the giant table consulted by IP routers to make forwarding decisions, into information-theoretical entropy bounds, with essentially zero cost on longest prefix match and FIB update. First, we adopt the state-of-the-art in compressed data structures, yielding a static entropy-compressed FIB representation with asymptotically optimal lookup. Then, we re-design the venerable prefix tree, used commonly for IP lookup for at least 20 years in IP routers, to also admit entropy bounds and support lookup in optimal time and update in nearly optimal time. Evaluations on a Linux kernel prototype indicate that our compressors encode a FIB comprising more than 440K prefixes to just about 100--400 KBytes of memory, with a threefold increase in lookup throughput and no penalty on FIB updates.

References

[1]
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.
[2]
R. Bolla and R. Bruschi. RFC 2544 performance evaluation and internal measurements for a Linux based open router. In IEEE HPSR, page 6, 2006.
[3]
J. Bonwick and B. Moore. ZFS - the last word in file systems. Sun Microsystems, 2004.
[4]
R. E. Bryant. Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Comput. Surv., 24(3):293--318, 1992.
[5]
G. Cheung and S. McCanne. Optimal routing table design for IP address lookups under memory constraints. In IEEE INFOCOM, pages 1437--1444, 1999.
[6]
J. Choi, J. H. Park, P. chun Cheng, D. Kim, and L. Zhang. Understanding BGP next-hop diversity. In INFOCOM Workshops, pages 846 --851, 2011.
[7]
J. Cocke. Global common subexpression elimination. SIGPLAN Not., 5(7):20--24, 1970.
[8]
T. M. Cover and J. A. Thomas. Elements of information theory. Wiley-Interscience, 1991.
[9]
E. de Moura, G. Navarro, N. Ziviani, and R. Baeza-Yates. Fast and flexible word searching on compressed text. ACM Trans. Inf. Syst., 18(2):113--139, 2000.
[10]
M. Degermark, A. Brodnik, S. Carlsson, and S. Pink. Small forwarding tables for fast routing lookups. In ACM SIGCOMM, pages 3--14, 1997.
[11]
S. Dharmapurikar, P. Krishnamurthy, and D. E. Taylor. Longest prefix matching using Bloom filters. In ACM SIGCOMM, pages 201--212, 2003.
[12]
R. Draves, C. King, S. Venkatachary, and B. Zill. Constructing optimal IP routing tables. In IEEE INFOCOM, 1999.
[13]
W. Eatherton, G. Varghese, and Z. Dittia. Tree bitmap: hardware/software IP lookups with incremental updates. SIGCOMM Comput. Commun. Rev., 34(2):97--122, 2004.
[14]
A. Elmokashfi, A. Kvalbein, and C. Dovrolis. BGP churn evolution: a perspective from the core. IEEE/ACM Trans. Netw., 20(2):571--584, 2012.
[15]
EZChip. NP-4: 100-Gigabit Network Processor for Carrier Ethernet Applications. http://www.ezchip.com/Images/pdf/NP-4_Short_Brief_online.pdf, 2011.
[16]
K. Fall, G. Iannaccone, S. Ratnasamy, and P. B. Godfrey. Routing tables: Is smaller really much better? In ACM HotNets-VIII, 2009.
[17]
P. Ferragina, F. Luccio, G. Manzini, and S. Muthukrishnan. Compressing and indexing labeled trees, with applications. J. ACM, 57(1):1--33, 2009.
[18]
P. Ferragina and G. Manzini. Opportunistic data structures with applications. In IEEE FOCS, pages 390--398, 2000.
[19]
P. Ferragina, G. Manzini, V. M\"akinen, and G. Navarro. Compressed representations of sequences and full-text indexes. ACM Trans. Algorithms, 3(2), 2007.
[20]
P. Francois, C. Filsfils, J. Evans, and O. Bonaventure. Achieving sub-second IGP convergence in large IP networks. SIGCOMM Comput. Commun. Rev., 35(3):35--44, 2005.
[21]
P. Gupta, B. Prabhakar, and S. P. Boyd. Near optimal routing lookups with bounded worst case performance. In IEEE INFOCOM, pages 1184--1192, 2000.
[22]
S. Han, K. Jang, K. Park, and S. Moon. PacketShader: a GPU-accelerated software router. In ACM SIGCOMM, pages 195--206, 2010.
[23]
J. Hasan and T. N. Vijaykumar. Dynamic pipelining: making IP-lookup truly scalable. In ACM SIGCOMM, pages 205--216, 2005.
[24]
P. Hick, kc claffy, and D. Andersen. CAIDA Anonymized Internet Traces. http://www.caida.org/data/passive.
[25]
W.-K. Hon, R. Shah, and J. S. Vitter. Compression, indexing, and retrieval for massive string data. In CPM, pages 260--274, 2010.
[26]
G. Huston. BGP routing table analysis reports. http://bgp.potaroo.net/.
[27]
I. Ioannidis and A. Grama. Level compressed DAGs for lookup tables. Comput. Netw., 49(2):147--160, 2005.
[28]
G. Jacobson. Space-efficient static trees and graphs. In IEEE FOCS, pages 549--554, 1989.
[29]
J. Katajainen and E. M\"akinen. Tree compression and optimization with applications. International Journal of Foundations of Computer Science, 1(4):425--447, 1990.
[30]
V. Khare, D. Jen, X. Zhao, Y. Liu, D. Massey, L. Wang, B. Zhang, and L. Zhang. Evolution towards global routing scalability. IEEE JSAC, 28(8):1363--1375, 2010.
[31]
Y. Liu, S. O. Amin, and L. Wang. Efficient FIB caching using minimal non-overlapping prefixes. SIGCOMM Comput. Commun. Rev., 43(1):14--21, Jan. 2012.
[32]
LuceneTransform. Transparent compression for Apache Lucene. http://code.google.com/p/lucenetransform.
[33]
H. Madhyastha, E. Katz-Bassett, T. Anderson, A. Krishnamurthy, and A. Venkataramani. iPlane Nano: path prediction for peer-to-peer applications. In USENIX, pages 137--152, 2009.
[34]
V. M\"akinen and G. Navarro. Dynamic entropy compressed sequences and full-text indexes. ACM Trans. Algorithms, 4(3):32:1--32:38, 2008.
[35]
A. McAuley and P. Francis. Fast routing table lookup using CAMs. In IEEE INFOCOM, pages 1382--1391, 1993.
[36]
D. Meyer, L. Zhang, and K. Fall. Report from the IAB Workshop on Routing and Addressing. RFC 4984, 2007.
[37]
D. S. Miller. net\_test\_tools. https://kernel.googlesource.com/pub/scm/linux/kernel/git/davem/net_test_tools.
[38]
G. Navarro and F. Claude. libcds: Compact data structures library, 2004. http://libcds.recoded.cl.
[39]
G. Navarro and V. M\"akinen. Compressed full-text indexes. ACM Comput. Surv., 39(1), 2007.
[40]
G. Navarro and J. Tarhio. LZgrep: a Boyer-Moore string matching tool for Ziv-Lempel compressed text. Softw. Pract. Exper., 35(12):1107--1130, 2005.
[41]
S. Nilsson and G. Karlsson. IP-address lookup using LC-tries. IEEE JSAC, 17(6):1083 --1092, 1999.
[42]
R. Raman, V. Raman, and S. S. Rao. Succinct indexable dictionaries with applications to encoding k-ary trees and multisets. In ACM-SIAM SODA, pages 233--242, 2002.
[43]
G. Rétvári, Z. Csernátony, A. Körösi, J. Tapolcai, A. Császár, G. Enyedi, and G. Pongrácz. Compressing IP forwarding tables for fun and profit. In ACM HotNets-XI, pages 1--6, 2012.
[44]
J. Rossignac. Edgebreaker: Connectivity compression for triangle meshes. IEEE Trans. Visual Comput. Graphics, 5:47--61, 1999.
[45]
K. Sklower. A tree-based packet routing table for Berkeley UNIX. Technical Report, Berkeley, 1991.
[46]
H. Song, M. S. Kodialam, F. Hao, and T. V. Lakshman. Scalable IP lookups using Shape Graphs. In IEEE ICNP, pages 73--82, 2009.
[47]
H. Song, J. Turner, and J. Lockwood. Shape shifting tries for faster IP route lookup. In IEEE ICNP, pages 358--367, 2005.
[48]
V. Srinivasan and G. Varghese. Faster IP lookups using controlled prefix expansion. SIGMETRICS Perform. Eval. Rev., 26(1):1--10, 1998.
[49]
S. Stergiou and J. Jain. Optimizing routing tables on systems-on-chip with content-addressable memories. In System-on-Chip, pages 1--6, 2008.
[50]
H. Sun, O. Ozturk, and H. Ferhatosmanoglu. CoMRI: a compressed multi-resolution index structure for sequence similarity queries. In IEEE CSB, pages 553--, 2003.
[51]
R. Teixeira, K. Marzullo, S. Savage, and G. M. Voelker. In search of path diversity in ISP networks. In ACM IMC, pages 313--318, 2003.
[52]
P. M. Tolani and J. R. Haritsa. XGRIND: a query-friendly XML compressor. In ICDE, pages 225--234, 2002.
[53]
Z. A. Uzmi, M. Nebel, A. Tariq, S. Jawad, R. Chen, A. Shaikh, J. Wang, and P. Francis. SMALTA: practical and near-optimal FIB aggregation. In ACM CoNEXT, pages 1--12, 2011.
[54]
S. Vigna and P. Boldi. MG4J: Managing Gigabytes for Java. http://mg4j.dsi.unimi.it, 2007.
[55]
M. Waldvogel, G. Varghese, J. Turner, and B. Plattner. Scalable high speed IP routing lookups. In ACM SIGCOMM, pages 25--36, 1997.
[56]
WebGraph. A framework for graph compression. http://webgraph.di.unimi.it.
[57]
I. H. Witten, A. Moffat, and T. C. Bell. Managing Gigabytes: Compressing and Indexing Documents and Images. Morgan Kaufmann, 1999.
[58]
J. Woods. PPP Deflate Protocol. RFC 1979, 1996.
[59]
W. Wu. Packet Forwarding Technologies. Auerbach, 2008.
[60]
M. Zec, L. Rizzo, and M. Mikuc. DXR: towards a billion routing lookups per second in software. SIGCOMM Comput. Commun. Rev., 42(5):29--36, 2012.
[61]
X. Zhao, D. J. Pacella, and J. Schiller. Routing scalability: an operator's view. IEEE JSAC, 28(8):1262--1270, 2010.
[62]
N. Ziviani, E. S. de Moura, G. Navarro, and R. Baeza-Yates. Compression: A key for next-generation text retrieval systems. IEEE Computer, 33(11):37--44, 2000.

Cited By

View all

Index Terms

  1. Compressing IP forwarding tables: towards entropy bounds and beyond

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      SIGCOMM '13: Proceedings of the ACM SIGCOMM 2013 conference on SIGCOMM
      August 2013
      580 pages
      ISBN:9781450320566
      DOI:10.1145/2486001
      • cover image ACM SIGCOMM Computer Communication Review
        ACM SIGCOMM Computer Communication Review  Volume 43, Issue 4
        October 2013
        595 pages
        ISSN:0146-4833
        DOI:10.1145/2534169
        Issue’s Table of Contents
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 27 August 2013

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. data compression
      2. ip forwarding table lookup
      3. prefix tree

      Qualifiers

      • Research-article

      Conference

      SIGCOMM'13
      Sponsor:
      SIGCOMM'13: ACM SIGCOMM 2013 Conference
      August 12 - 16, 2013
      Hong Kong, China

      Acceptance Rates

      SIGCOMM '13 Paper Acceptance Rate 38 of 246 submissions, 15%;
      Overall Acceptance Rate 462 of 3,389 submissions, 14%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)108
      • Downloads (Last 6 weeks)21
      Reflects downloads up to 05 Feb 2025

      Other Metrics

      Citations

      Cited By

      View all

      View Options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Login options

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media