Multipath TCP Resources
This page attempts to gather together all the resources and ongoing research on Multipath TCP in one place. Standardization is happening in the IETF's Multipath TCP working group, which also maintains a Wiki giving useful information. In addition to the working group, there are also a number of ongoing research efforts. Several multipath TCP implementations and network simulators are available in the implementation page.
- The Resource Pooling Principle, Damon Wischik, Mark Handley and Marcelo Bagnulo Braun. ACM/SIGCOMM CCR.
- Practical Congestion Control for Multipath Transport Protocols, Costin Raiciu, Damon Wischik, Mark Handley, UCL Technical Report.
- Control of multipath TCP and optimization of multipath routing in the Internet, Damon Wischik, Mark Handley and Costin Raiciu, Proc. NetCOOP 2009.
- Kelly, F.P., Voice, T.: Stability of end-to-end algorithms for joint routing and rate control. ACM/SIGCOMM CCR 35(2) (2005)
- Key, P., Massoulié, L., Towsley, D.: Combining multipath routing and congestion control for robustness. In: Proceedings of IEEE CISS. (2006) Expands on 2005 technical reports Microsoft TR-2005-111 and UMass CMPSCI 05-55.
- Huaizhong Han, Srinivas Shakkottai, C. V. Hollot, R. Srikant, Don Towsley Multi-path TCP: a joint congestion control and routing scheme to exploit path diversity in the internet, , IEEE/ACM Transactions on Networking (TON), Volume 14 , Issue 6, Dec 2006.
Internet Drafts and Specifications
Extensions for Multipath Operation with Multiple
Addresses, A. Ford, C. Raiciu, M.Handley, Oct 26th
Some of the design decisions in this draft are explained in this document:
C. Raiciu, M. Handley, A. Ford, Multipath TCP Design Decisions, July 2009
- Coupled Multipath-Aware Congestion Control, C. Raiciu, M. Handley, D. Wischik, Oct 19th 2009, draft-raiciu-mptcp-congestion-00.txt
- Outgoing Packet Routing with MP-TCP, M. Handley, C.Raiciu, M. Bagnulo, Oct 19th 2009, draft-handley-mptcp-routing-00.txt
- Architectural Guidelines for Multipath TCP Development, A. Ford, C. Raiciu, S. Barre, J. Iyengar, B. Ford, Oct 19th 2009, draft-ford-mptcp-architecture-00.txt
- Threat Analysis for Multi-addressed/Multi-path TCP, M. Bagnulo, October 18th 2009, draft-bagnulo-mptcp-threat-00.txt
- MPTCP Application Interface Considerations M. Scharf, A. Ford, Oct 15th 2009, draft-scharf-mptcp-api-00
The drafts above describe a version of Multipath TCP that requires modifying the hosts at both ends of a connection, so as to take advantage of the multipath capability at clients. If only a server is multihomed, it may be possible to just modify the server:
- One-ended multipath TCP, I. van Beijnum, draft-van-beijnum-1e-mp-tcp-00, May 2009.
A number of simulators and research implementations currently exist for MP-TCP. They are listed on our implementation page.
July 2009 (Stockholm)
- MPTCP Goals and Background, Mark Handley, multipath TCP BOF, Stockholm, July 2009.
November 2009 (Hiroshima)
- Multi-addressed Multipath TCP, Alan Ford, Costin Raiciu, Mark Handley, Multipath TCP WG.
- Coupled Multipath-Aware Congestion Control, Costin Raiciu, multipath TCP WG.
- MPTCP Application Considerations and MPTCP Extended API, Michael Schark, Alan Ford, Multipath TCP WG.
- MPTCP Threat Analysis, Marcelo Bagnulo, Multipath TCP WG.
- Routing of Outgoing Packets for MP-TCP, Mark Handley, Costin Raiciu, Marcelo Bagnulo, Multipath TCP WG.
- Multipath TCP WG Minutes.
- Models of multipath resource allocation, Damon Wischik, slides from several Trilogy meetings.
- Multipath TCP, Mark Handley, talk given at Tsinghua University and Bristol University, Nov 2009.
- IETF Multi-path extensions for TCP mailing list.
A Brief History of Multipath TCP
The idea of building multipath capability into TCP is an old one. To our knowledge, it was first suggested by Christian Huitema in 1995. The basic idea has been re-invented multiple times since, in various forms. Parallel TCP (pTCP, 2002) provided striping of data across multiple TCP connections. M/TCP (2002) extends TCP for multipath operation using a Route ID sent in a TCP option to allow congestion on different paths to be distinguished. Another variant, mTCP (2004) also striped data across multiple paths, but to address potential unfairness issues it built in a shared congestion detection mechanism which suppressed paths with shared congestion.
However, none of the proposals above made it into the mainstream. This appears to be because there was insufficient motivation to merit such a substantial change to TCP. The breakthough came from Kelly and Voice and Key, Massoulie and Towsley in 2005. These papers use fluid-flow modelling to show that not only can multipath transport give robustness, but with the right coupled congestion controller it can serve to balance congestion in a stable manner in the Internet. Basically, traffic moves away from congestion, giving many of the potential benefits of load-dependent routing, without the accompanying stability problems.
Other Multipath TCP variants include Concurrent TCP (cTCP, 2006) which extends TCP to provide load balancing between multiple paths within TCP, and Concurrent Multipath Transport (CMT, 2006). In addition, arrival-time load balancing (ATLB, 2005) attempts to schedule transmissions between multiple paths in such a way that they arrive in order at the receiver.
Page maintained by Mark Handley and Costin Raiciu, funded by the Trilogy project.