Use Cases and Operational Experience with Multipath TCP
RFC 8041
Internet Engineering Task Force (IETF) O. Bonaventure
Request for Comments: 8041 UCLouvain
Category: Informational C. Paasch
ISSN: 2070-1721 Apple, Inc.
G. Detal
Tessares
January 2017
Use Cases and Operational Experience with Multipath TCP
Abstract
This document discusses both use cases and operational experience
with Multipath TCP (MPTCP) in real networks. It lists several
prominent use cases where Multipath TCP has been considered and is
being used. It also gives insight to some heuristics and decisions
that have helped to realize these use cases and suggests possible
improvements.
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for informational purposes.
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 7841.
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/rfc8041.
Bonaventure, et al. Informational [Page 1]
RFC 8041 MPTCP Experience January 2017
Copyright Notice
Copyright (c) 2017 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. Use Cases .......................................................4
2.1. Datacenters ................................................4
2.2. Cellular/WiFi Offload ......................................5
2.3. Multipath TCP Proxies ......................................8
3. Operational Experience ..........................................9
3.1. Middlebox Interference .....................................9
3.2. Congestion Control ........................................11
3.3. Subflow Management ........................................12
3.4. Implemented Subflow Managers ..............................13
3.5. Subflow Destination Port ..................................15
3.6. Closing Subflows ..........................................16
3.7. Packet Schedulers .........................................17
3.8. Segment Size Selection ....................................18
3.9. Interactions with the Domain Name System ..................19
3.10. Captive Portals ..........................................20
3.11. Stateless Webservers .....................................20
3.12. Load-Balanced Server Farms ...............................21
4. Security Considerations ........................................21
5. References .....................................................23
5.1. Normative References ......................................23
5.2. Informative References ....................................23
Acknowledgements ..................................................30
Authors' Addresses ................................................30
Bonaventure, et al. Informational [Page 2]
RFC 8041 MPTCP Experience January 2017
1. Introduction
Multipath TCP was specified in [RFC6824] and five independent
implementations have been developed. As of November 2016, Multipath
TCP has been or is being implemented on the following platforms:
o Linux kernel [MultipathTCP-Linux]
o Apple iOS and macOS
o Citrix load balancers
o FreeBSD [FreeBSD-MPTCP]
o Oracle Solaris
The first three implementations are known to interoperate. Three of
these implementations are open source (Linux kernel, FreeBSD and
Apple's iOS and macOS). Apple's implementation is widely deployed.
Show full document text