Coupled Congestion Control for Multipath Transport Protocols
RFC 6356
Internet Engineering Task Force (IETF) C. Raiciu
Request for Comments: 6356 Univ. Politehnica of Bucharest
Category: Experimental M. Handly
ISSN: 2070-1721 D. Wischik
Univ. College London
October 2011
Coupled Congestion Control for Multipath Transport Protocols
Abstract
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 standard TCP
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, achieving a property called "resource pooling" where a bundle
of links effectively behaves like one shared link with bigger
capacity. This would increase the overall efficiency of the network
and also its robustness to failure.
This document presents a congestion control algorithm that couples
the congestion control algorithms running on different subflows by
linking their increase functions, and dynamically controls the
overall aggressiveness of the multipath flow. The result is a
practical algorithm that is fair to TCP at bottlenecks while moving
traffic away from congested links.
Raiciu, et al. Experimental [Page 1]
RFC 6356 MPTCP Congestion Control October 2011
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for examination, experimental implementation, and
evaluation.
This document defines an Experimental Protocol for the Internet
community. This document is a product of the Internet Engineering
Task Force (IETF). It represents the consensus of the IETF
community. It has received public review and has been approved for
publication by the Internet Engineering Steering Group (IESG). Not
all documents approved by the IESG are a candidate for any level of
Internet Standard; see Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc6356.
Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction ....................................................3
2. Requirements Language ...........................................5
3. Coupled Congestion Control Algorithm ............................5
4. Implementation Considerations ...................................7
4.1. Computing "alpha" in Practice ..............................7
4.2. Implementation Considerations when CWND is
Expressed in Packets .......................................8
5. Discussion ......................................................9
6. Security Considerations ........................................10
7. Acknowledgements ...............................................11
8. References .....................................................11
8.1. Normative References ......................................11
8.2. Informative References ....................................11
Raiciu, et al. Experimental [Page 2]
RFC 6356 MPTCP Congestion Control October 2011
1. Introduction
Multipath TCP (MPTCP, [MPTCP-MULTIADDRESSED]) is a set of extensions
to regular TCP [RFC0793] that allows one TCP connection to be spread
across multiple paths. MPTCP distributes load through the creation
Show full document text