Often endpoints are connected by multiple paths, but communications
are usually restricted to a single path per connection. Resource usage
within the network would be more efficient were it possible for these
multiple paths to be used concurrently. Multipath TCP is a proposal to
achieve multipath transport in TCP. New congestion control algorithms
are needed for multipath transport protocols such as Multipath TCP, as
single path algorithms have a series of issues in the multipath
context. One of the prominent problems is that running existing
algorithms such as TCP New Reno independently on each path would give
the multipath flow more than its fair share at a bottleneck link
traversed by more than one of its subflows. Further, it is desirable
that a source with multiple paths available will transfer more traffic
using the least congested of the paths, hence achieving resource
pooling. This would increase the overall utilization of the network
and also its robustness to failure. This document presents a
congestion control algorithm which couples the congestion control
algorithms running on different subflows by linking their increase
functions, and dynamically controls the overall aggresiveness of the
multipath flow. The result is a practical algorithm that is fair to
TCP at bottlenecks while moving traffic away from congested links.
[1]
Mark Handley,et al.
The resource pooling principle
,
2008,
CCRV.
[2]
Marcelo Bagnulo,et al.
Threat Analysis for TCP Extensions for Multipath Operation with Multiple Addresses
,
2011,
RFC.
[3]
Vern Paxson,et al.
TCP Congestion Control
,
1999,
RFC.
[4]
Mark Handley,et al.
Design, Implementation and Evaluation of Congestion Control for Multipath TCP
,
2011,
NSDI.
[5]
Mark Allman,et al.
TCP Congestion Control with Appropriate Byte Counting (ABC)
,
2003,
RFC.
[6]
Thomas Voice,et al.
Stability of end-to-end algorithms for joint routing and rate control
,
2005,
CCRV.
[7]
Mark Handley,et al.
TCP Extensions for Multipath Operation with Multiple Addresses
,
2020,
RFC.
[8]
Jon Postel,et al.
Transmission Control Protocol
,
1981,
RFC.
[9]
Scott O. Bradner,et al.
Key words for use in RFCs to Indicate Requirement Levels
,
1997,
RFC.