Compressing Forwarding Tables for Datacenter Scalability

With the rise of datacenter virtualization, the number of entries in the forwarding tables of datacenter switches is expected to scale from several thousands to several millions. Unfortunately, such forwarding table sizes would not fit on-chip memory using current implementations. In this paper, we investigate the compressibility of forwarding tables. We first introduce a novel forwarding table architecture with separate encoding in each column. It is designed to keep supporting fast random accesses and fixed-width memory words. Then, we show that although finding the optimal encoding is NP-hard, we can suggest an encoding whose memory requirement per row entry is guaranteed to be within a small additive constant of the optimum. Next, we analyze the common case of two-column forwarding tables, and show that such tables can be presented as bipartite graphs. We deduce graph-theoretical bounds on the encoding size. We also introduce an algorithm for optimal conditional encoding of the second column given an encoding of the first one. In addition, we explain how our architecture can handle table updates. Last, we evaluate our suggested encoding techniques on synthetic forwarding tables as well as on real-life tables.

[1]  Ryan Johnson,et al.  Row-wise parallel predicate evaluation , 2008, Proc. VLDB Endow..

[2]  Yurii Nesterov,et al.  Interior-point polynomial algorithms in convex programming , 1994, Siam studies in applied mathematics.

[3]  Paul Francis,et al.  SMALTA: practical and near-optimal FIB aggregation , 2011, CoNEXT '11.

[4]  Brian Zill,et al.  Constructing optimal IP routing tables , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[5]  Isaac Keslassy,et al.  Optimal Fast Hashing , 2009, IEEE INFOCOM 2009.

[6]  Vijayshankar Raman,et al.  Bringing BLINK Closer to the Full Power of SQL , 2009, BTW.

[7]  Mingwei Xu,et al.  On the scalability of router forwarding tables: Nexthop-Selectable FIB aggregation , 2011, 2011 Proceedings IEEE INFOCOM.

[8]  Meikel Pöss,et al.  Data Compression in Oracle , 2003, VLDB.

[9]  Tal Mizrahi,et al.  Compressing forwarding tables , 2013, 2013 Proceedings IEEE INFOCOM.

[10]  Xiaohu Xu,et al.  FIB Suppression with Virtual Aggregation , 2011 .

[11]  Xin Zhao,et al.  Incremental Forwarding Table Aggregation , 2010, 2010 IEEE Global Telecommunications Conference GLOBECOM 2010.

[12]  D. Huffman A Method for the Construction of Minimum-Redundancy Codes , 1952 .

[13]  Daniel S. Hirschberg,et al.  Data compression , 1987, CSUR.

[14]  Michael Mitzenmacher,et al.  The Power of One Move: Hashing Schemes for Hardware , 2008, IEEE/ACM Transactions on Networking.

[15]  Haim Kaplan,et al.  On finding an optimal TCAM encoding scheme for packet classification , 2013, 2013 Proceedings IEEE INFOCOM.

[16]  Isaac Keslassy,et al.  Hash tables with finite buckets are less resistant to deletions , 2010, 2010 48th Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[17]  Lixia Zhang,et al.  Report from the IAB Workshop on Routing and Addressing , 2007, RFC.

[18]  Xin Zhao,et al.  On the Aggregatability of Router Forwarding Tables , 2010, 2010 Proceedings IEEE INFOCOM.

[19]  Isaac Keslassy,et al.  Compression for fixed-width memories , 2013, 2013 IEEE International Symposium on Information Theory.

[20]  Eric Torng,et al.  Topological Transformation Approaches to TCAM-Based Packet Classification , 2011, IEEE/ACM Transactions on Networking.

[21]  Thomas M. Cover,et al.  Elements of Information Theory , 2005 .

[22]  Rami Cohen,et al.  Exact Worst Case TCAM Rule Expansion , 2013, IEEE Transactions on Computers.

[23]  Thomas Narten,et al.  On the Scalability of Internet Routing , 2010 .

[24]  Amin Vahdat,et al.  PortLand: a scalable fault-tolerant layer 2 data center network fabric , 2009, SIGCOMM '09.