DEPARTMENT OF COMPUTER SCIENCE
Networks Research Group

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.

MPTCP Papers

Theoretical Background

Internet Drafts and Specifications

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:

Implementations

A number of simulators and research implementations currently exist for MP-TCP. They are listed on our implementation page.

Presentations

IETF Presentations

July 2009 (Stockholm)

November 2009 (Hiroshima)

Research Presentations

Mailing Lists

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.