MP-HULA: Multipath Transport Aware Load Balancing Using Programmable Data Planes

Datacenter networks offer a large degree of multipath in order to provide large bisectional bandwidth. The end-to-end performance is determined by the load-balancing strategy which needs to be designed to effectively manage congestion. Consequently, congestion aware load-balancing strategies such as CONGA or HULA have been designed. Recently, more and more applications that are hosted on cloud servers use multipath transport protocols such as MPTCP. However, in the presence of MPTCP, existing load-balancing schemes including ECMP, HULA or CONGA may lead to suboptimal forwarding decisions where multiple MPTCP subflows of one connection are pinned on the same bottleneck link. In this paper, we present MP-HULA, a transport layer multi-path aware load-balancing scheme using Programmable Data Planes. First, instead of tracking congestion information for the best path towards the destination, each MP-HULA switch tracks congestion information for the best-k paths to a destination through the neighbor switches. Second, we design MP-HULA using Programmable Data Planes, where each leaf switch can identify, using P4, which MPTCP subflow belongs to which connection. MP-HULA then load-balances different MPTCP subflows of a MPTCP connection on different next hops considering congestion state while aggregating bandwidth. Our evaluation shows that MP-HULA with MPTCP outperforms HULA in average flow completion time (2.1x at 50% load, 1.7x at 80% load).

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

[2]  Mark Handley,et al.  TCP Extensions for Multipath Operation with Multiple Addresses , 2011 .

[3]  Vimalkumar Jeyakumar,et al.  Juggler: a practical reordering resilient network stack for datacenters , 2016, EuroSys.

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

[5]  George Varghese,et al.  P4: programming protocol-independent packet processors , 2013, CCRV.

[6]  Olivier Bonaventure,et al.  Revisiting flow-based load balancing: Stateless path selection in data center networks , 2013, Comput. Networks.

[7]  Haiyang Wang,et al.  Multipath TCP for datacenters: From energy efficiency perspective , 2017, IEEE INFOCOM 2017 - IEEE Conference on Computer Communications.

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

[9]  Huynh Tu Dang,et al.  P4FPGA: A Rapid Prototyping Framework for P4 , 2017, SOSR.

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

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

[12]  Alan Silva,et al.  On the Benefits of Using Multipath TCP and Openflow in Shared Bottlenecks , 2015, 2015 IEEE 29th International Conference on Advanced Information Networking and Applications.

[13]  Mark Handley,et al.  Re-architecting datacenter networks and stacks for low latency and high performance , 2017, SIGCOMM.

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

[15]  尤达亚玛卡尔·斯瑞尼瓦桑,et al.  Dynamic load balancing without packet reordering , 2012 .

[16]  Anil Kumar Sahu,et al.  Novel design of fast and compact SHA-1 algorithm for security applications , 2016, 2016 IEEE International Conference on Recent Trends in Electronics, Information & Communication Technology (RTEICT).

[17]  Mark Handley,et al.  Coupled Congestion Control for Multipath Transport Protocols , 2011, RFC.

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

[19]  Mark Handley,et al.  TCP Extensions for Multipath Operation with Multiple Addresses , 2020, RFC.

[20]  Rodrigo Fonseca,et al.  Planck , 2014, SIGCOMM.

[21]  Olivier Bonaventure,et al.  Multipath QUIC: Design and Evaluation , 2017, CoNEXT.

[22]  Xin Wang,et al.  DC^2-MTCP: Light-Weight Coding for Efficient Multi-Path Transmission in Data Center Network , 2017, 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS).

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

[24]  Min Zhu,et al.  B4: experience with a globally-deployed software defined wan , 2013, SIGCOMM.

[25]  Damon Wischik,et al.  RFC 6356, Coupled Congestion Control for Multipath Transport Protocols , 2011 .

[26]  Costin Raiciu,et al.  Datacenter Scale Load Balancing for Multipath Transport , 2016, HotMiddlebox@SIGCOMM.

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

[28]  Tang Qiong,et al.  Implementation and Optimization of the High Performance SHA-1 Model Based on FPGA , 2012, 2012 International Conference on Computer Science and Service System.

[29]  George Varghese,et al.  CONGA: distributed congestion-aware load balancing for datacenters , 2015, SIGCOMM.

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