Coding-Based Distributed Congestion-Aware Packet Spraying to Avoid Reordering in Data Center Networks

Modern Data Center Networks (DCNs) are commonly based on Clos topologies with a large number of equal-cost multiple paths to provide high bisection bandwidth. The existing Random Packet Spraying (RPS) scheme spreads each flow of packets to all available parallel paths in order to achieve good load balancing under symmetric topologies. However, under asymmetric topologies caused by traffic dynamics or link failures, RPS potentially suffers from serious out-of-order problem. Therefore, to avoid packet reordering, we propose a Coding-based Distributed Congestion-aware Packet Spraying mechanism called CDCPS. At the sender end, CDCPS encodes packets using forward error correction (FEC) technology and adaptively adjusts the coding redundancy according to the asymmetric degree of multiple equal-cost paths. To make full use of link bandwidth, CDCPS randomly spreads encoded packets to all available paths at the switches. The original packets can be recovered immediately once enough encoded packets from uncongested paths arrive at the receiver, even if some encoded packets are blocked on congested paths. The test results of NS2 simulation showed that CDCPS eliminates out-of-order packets completely and effectively reduces the average and $99^{th}$ flow completion time by up to 73% and 78% over the state-of-the-art load balancing scheme.

[1]  Jianxin Wang,et al.  Receiver-driven fair congestion control for TCP outcast in data center networks , 2019, J. Netw. Comput. Appl..

[2]  Wenjun Lv,et al.  CAPS: Coding-based Adaptive Packet Spraying to Reduce Flow Completion Time in Data Center , 2018, IEEE INFOCOM 2018 - IEEE Conference on Computer Communications.

[3]  Amin Vahdat,et al.  Hedera: Dynamic Flow Scheduling for Data Center Networks , 2010, NSDI.

[4]  Devavrat Shah,et al.  Flowtune: Flowlet Control for Datacenter Networks , 2017, NSDI.

[5]  Sen Liu,et al.  Task-aware TCP in Data Center Networks , 2017, 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS).

[6]  Tao Zhang,et al.  Rethinking Fast and Friendly Transport in Data Center Networks , 2020, IEEE/ACM Transactions on Networking.

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

[8]  Abdul Kabbani,et al.  FlowBender: Flow-level Adaptive Routing for Improved Latency and Throughput in Datacenter Networks , 2014, CoNEXT.

[9]  Jennifer Rexford,et al.  Clove: Congestion-Aware Load Balancing at the Virtual Edge , 2017, CoNEXT.

[10]  Wenjun Lv,et al.  TLB: Traffic-aware Load Balancing with Adaptive Granularity in Data Center Networks , 2019, ICPP.

[11]  Jianxin Wang,et al.  Adjusting Packet Size to Mitigate TCP Incast in Data Center Networks with COTS Switches , 2020, IEEE Transactions on Cloud Computing.

[12]  Albert G. Greenberg,et al.  Data center TCP (DCTCP) , 2010, SIGCOMM '10.

[13]  Jennifer Rexford,et al.  HULA: Scalable Load Balancing Using Programmable Data Planes , 2016, SOSR.

[14]  Rong Pan,et al.  Let It Flow: Resilient Asymmetric Load Balancing with Flowlet Switching , 2017, NSDI.

[15]  Ramana Rao Kompella,et al.  On the impact of packet spraying in data center networks , 2013, 2013 Proceedings IEEE INFOCOM.

[16]  Wenjun Lv,et al.  CAPS: Coding-Based Adaptive Packet Spraying to Reduce Flow Completion Time in Data Center , 2019, IEEE/ACM Transactions on Networking.

[17]  Michael Mitzenmacher,et al.  The Power of Two Choices in Randomized Load Balancing , 2001, IEEE Trans. Parallel Distributed Syst..

[18]  David A. Maltz,et al.  Network traffic characteristics of data centers in the wild , 2010, IMC '10.

[19]  Keqiang He,et al.  Presto: Edge-based Load Balancing for Fast Datacenter Networks , 2015, SIGCOMM.

[20]  Albert G. Greenberg,et al.  VL2: a scalable and flexible data center network , 2009, SIGCOMM '09.

[21]  J. Crowcroft Hey ! Presto : Edge-based Load Balancing for Fast Datacenter Networks , 2015 .

[22]  Ian Wakeman,et al.  MMPTCP: A multipath transport protocol for data centers , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[23]  Devavrat Shah,et al.  Network Coding Meets TCP , 2008, IEEE INFOCOM 2009.

[24]  Ming Zhang,et al.  MicroTE: fine grained traffic engineering for data centers , 2011, CoNEXT '11.

[25]  Brighten Godfrey,et al.  DRILL: Micro Load Balancing for Low-latency Data Center Networks , 2017, SIGCOMM.

[26]  Hong Zhang,et al.  Resilient Datacenter Load Balancing in the Wild , 2017, SIGCOMM.

[27]  Xin Wang,et al.  FMTCP: A Fountain Code-Based Multipath Transmission Control Protocol , 2015, IEEE/ACM Transactions on Networking.

[28]  Peng Wang,et al.  Luopan: Sampling based load balancing in data center networks , 2016, 2016 IEEE 24th International Conference on Network Protocols (ICNP).

[29]  Mark Handley,et al.  Improving datacenter performance and robustness with multipath TCP , 2011, SIGCOMM.

[30]  Jianxin Wang,et al.  AG: Adaptive Switching Granularity for Load Balancing with Asymmetric Topology in Data Center Network , 2019, 2019 IEEE 27th International Conference on Network Protocols (ICNP).