Optimal approximations for traffic distribution in bounded switch memories

Traffic splitting is a required functionality in networks, for example for load balancing over multiple paths or among different servers. The capacities of the servers determine the partition by which traffic should be split. A recent approach implements traffic splitting within the ternary content addressable memory (TCAM), which is often available in switches. It is important to reduce the amount of memory allocated for this task since TCAMs are power consuming and are often also required for other tasks such as classification and routing. Previous work showed how to compute the smallest TCAM necessary to implement a given partition exactly. In this paper we solve the more practical case, where at most n TCAM rules are available, restricting the ability to implement the desired partition. We give simple and efficient algorithms to find n rules that generate a partition closest in L∞ to the desired one. We do the same for a one-sided version of L∞ which equals to the maximum overload on a server and for a relative version of it. We use our algorithms to evaluate how the expected error changes as a function of the number of rules, the number of servers, and the width of the TCAM.

[1]  Srikanth Kandula,et al.  Dynamic load balancing without packet reordering , 2007, CCRV.

[2]  Richard Wang,et al.  OpenFlow-Based Server Load Balancing Gone Wild , 2011, Hot-ICE.

[3]  Tuomas Sandholm,et al.  Compressing Two-Dimensional Routing Tables , 2003, Algorithmica.

[4]  Neil J. A. Sloane,et al.  The encyclopedia of integer sequences , 1995 .

[5]  George Varghese,et al.  Compiling Packet Programs to Reconfigurable Switches , 2015, NSDI.

[6]  José Nelson Amaral,et al.  A hardware-based longest prefix matching scheme for TCAMs , 2005, 2005 IEEE International Symposium on Circuits and Systems.

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

[8]  Haim Kaplan,et al.  Accurate Traffic Splitting on Commodity Switches , 2018, SPAA.

[9]  H. Jonathan Chao,et al.  A Dynamic Load-Balanced Hashing Scheme for Networking Applications , 2008, IEEE GLOBECOM 2008 - 2008 IEEE Global Telecommunications Conference.

[10]  Monia Ghobadi,et al.  Niagara: Scalable Load Balancing on Commodity Switches , 2014 .

[11]  Yehuda Afek,et al.  Orange: multi field openflow based range classifier , 2015, 2015 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[12]  Monia Ghobadi,et al.  Efficient traffic splitting on commodity switches , 2015, CoNEXT.

[13]  Ao Tang,et al.  Accurate Rate-Aware Flow-level Traffic Splitting , 2018, 2018 56th Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[14]  Albert G. Greenberg,et al.  Ananta: cloud scale load balancing , 2013, SIGCOMM.

[15]  Danny Hendler,et al.  Space-Efficient TCAM-Based Classification Using Gray Coding , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.

[16]  Christian E. Hopps,et al.  Analysis of an Equal-Cost Multi-Path Algorithm , 2000, RFC.

[17]  Ellen W. Zegura,et al.  Performance of hashing-based schemes for Internet load balancing , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[18]  George Varghese,et al.  Forwarding metamorphosis: fast programmable match-action processing in hardware for SDN , 2013, SIGCOMM.

[19]  Ronald van der Pol,et al.  Performance Analysis of OpenFlow Hardware , 2012 .

[20]  Min Zhu,et al.  WCMP: weighted cost multipathing for improved fairness in data centers , 2014, EuroSys '14.

[21]  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).

[22]  Kwan Lawrence Yeung,et al.  Traffic distribution over equal-cost-multi-paths , 2004, 2004 IEEE International Conference on Communications (IEEE Cat. No.04CH37577).

[23]  Praveen Yalagandula,et al.  Minimizing Rulesets for TCAM Implementation , 2009, IEEE INFOCOM 2009.

[24]  Ryan Beckett,et al.  Adaptive Weighted Traffic Splitting in Programmable Data Planes , 2020, SOSR.

[25]  Haim Kaplan,et al.  Optimal Representations of a Traffic Distribution in Switch Memories , 2019, IEEE INFOCOM 2019 - IEEE Conference on Computer Communications.

[26]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.