Multipath IP Routing on End Devices: Motivation, Design, and Performance

Most end devices are now equipped with multiple network interfaces. Applications can exploit all available interfaces and benefit from multipath transmission. Recently Multipath TCP (MPTCP) was proposed to implement multipath transmission at the transport layer and has attracted lots of attention from academia and industry. However, MPTCP only supports TCP-based applications and its multipath routing flexibility is limited. In this paper, we investigate the possibility of orchestrating multipath transmission from the network layer of end devices, and develop a Multipath IP (MPIP) design consisting of signaling, session and path management, multipath routing, and NAT traversal. We implement MPIP in Linux and Android kernels. Through controlled lab experiments and Internet experiments, we demonstrate that MPIP can effectively achieve multipath gains at the network layer. It not only supports the legacy TCP and UDP protocols, but also works seamlessly with MPTCP. By facilitating user-defined customized routing, MPIP can route traffic from competing applications in a coordinated fashion to maximize the aggregate user Quality-of-Experience.

[1]  Erich M. Nahum,et al.  A measurement-based study of MultiPath TCP performance over wireless networks , 2013, Internet Measurement Conference.

[2]  Yu Dong,et al.  Multi-Path Load Balancing in Transport Layer , 2007, 2007 Next Generation Internet Networks.

[3]  Yu Cao,et al.  Delay-based congestion control for multipath TCP , 2012, 2012 20th IEEE International Conference on Network Protocols (ICNP).

[4]  Hari Balakrishnan,et al.  All your network are belong to us: a transport framework for mobile network selection , 2014, HotMobile.

[5]  Donald F. Towsley,et al.  Path Selection and Multipath Congestion Control , 2007, IEEE INFOCOM 2007 - 26th IEEE International Conference on Computer Communications.

[6]  Pekka Nikander,et al.  End-Host Mobility and Multi-Homing with Host Identity Protocol , 2004 .

[7]  Christos Gkantsidis,et al.  Multipath code casting for wireless mesh networks , 2007, CoNEXT '07.

[8]  Inwhee Joe,et al.  SCTP Throughput Improvement with Best Load Sharing Based on Multihoming , 2009, 2009 Fifth International Joint Conference on INC, IMS and IDC.

[9]  Injong Rhee,et al.  CUBIC: a new TCP-friendly high-speed TCP variant , 2008, OPSR.

[10]  Larry L. Peterson,et al.  TCP Vegas: new techniques for congestion detection and avoidance , 1994 .

[11]  Olivier Bonaventure,et al.  On the benefits of applying experimental design to improve multipath TCP , 2013, CoNEXT.

[12]  Mark Handley,et al.  RFC 6182, Architectural Guidelines for Multipath TCP Development , 2011 .

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

[14]  Mahesh K. Marina,et al.  On-demand multipath distance vector routing in ad hoc networks , 2001, Proceedings Ninth International Conference on Network Protocols. ICNP 2001.

[15]  Cheng-Hsin Hsu,et al.  MultiNets: A system for real-time switching between multiple network interfaces on mobile devices , 2014, ACM Trans. Embed. Comput. Syst..

[16]  Srinivasan Seshan,et al.  An integrated congestion management architecture for Internet hosts , 1999, SIGCOMM '99.

[17]  R. Srikant,et al.  Overlay TCP for MultiPath Routing and Congestion Control ∗ , 2004 .

[18]  Steven H. Low,et al.  Multipath TCP: Analysis, Design, and Implementation , 2013, IEEE/ACM Transactions on Networking.

[19]  D. Towsley,et al.  Combining Multipath Routing and Congestion Control for Robustness , 2006, 2006 40th Annual Conference on Information Sciences and Systems.

[20]  Sung-Ju Lee,et al.  Split multipath routing with maximally disjoint paths in ad hoc networks , 2001, ICC 2001. IEEE International Conference on Communications. Conference Record (Cat. No.01CH37240).

[21]  Massimo Gallo,et al.  Optimal multipath congestion control and request forwarding in Information-Centric Networks , 2013, 2013 21st IEEE International Conference on Network Protocols (ICNP).

[22]  Miroslav Popovic,et al.  MPTCP Is Not Pareto-Optimal: Performance Issues and a Possible Solution , 2013, IEEE/ACM Trans. Netw..

[23]  Henning Schulzrinne,et al.  Unified Heterogeneous Networking Design , 2013, IPTComm '13.

[24]  Özgü Alay,et al.  Experimental evaluation of multipath TCP schedulers , 2014, CSWS@SIGCOMM.

[25]  Gokhan Ay,et al.  Exploring Mobile/WiFi Handover with Multipath TCP , 2015 .

[26]  Lyndon Ong,et al.  An Introduction to the Stream Control Transmission Protocol (SCTP) , 2002, RFC.

[27]  Raghupathy Sivakumar,et al.  A Transport Layer Approach for Achieving Aggregate Bandwidths on Multi-Homed Mobile Hosts , 2002, MobiCom '02.

[28]  Arun Venkataramani,et al.  msocket: System support for mobile, multipath, and middlebox-agnostic applications , 2016, 2016 IEEE 24th International Conference on Network Protocols (ICNP).

[29]  Larry Peterson,et al.  TCP Vegas: new techniques for congestion detection and avoidance , 1994, SIGCOMM 1994.

[30]  Mark Handley,et al.  Experimenting with multipath TCP , 2010, SIGCOMM '10.

[31]  Mark Handley,et al.  How Hard Can It Be? Designing and Implementing a Deployable Multipath TCP , 2012, NSDI.