Description
Multi-Path TCP (MPTCP) is an extension to the standard Transmission Control Protocol (TCP) that enables the simultaneous use of multiple network paths between two communicating hosts. Unlike regular TCP, which establishes a single connection over one source-destination IP address pair, MPTCP sets up a master TCP connection and then establishes additional subflows across different available interfaces or IP addresses. These subflows are aggregated into a single logical connection visible to the application, which continues to use a standard socket interface. The protocol manages the splitting and recombining of data across the subflows, ensuring in-order delivery to the application while optimizing the use of available bandwidth.
Architecturally, MPTCP operates at the transport layer, with extensions to the TCP option field to carry connection management information. Key components include the MPTCP-capable endpoints and, optionally, middleboxes like proxies that support the extension. The protocol uses a cryptographic token to securely associate multiple subflows with the same connection. A path manager component at each endpoint discovers available interfaces and IP addresses, and a scheduler decides how to distribute data across the subflows based on factors like path latency and congestion. A congestion control algorithm, typically coupled but not locked, manages congestion on each subflow independently while aiming for fairness with regular TCP flows on shared links.
In a 3GPP context, MPTCP is particularly relevant for User Equipment (UE) with multiple radio access technologies, such as 5G NR, LTE, and Wi-Fi. The UE can establish subflows over each activated PDU session or access network. The 3GPP architecture supports MPTCP through enhancements in the User Plane, such as defining how the UPF handles multiple tunnels corresponding to the subflows. The protocol's ability to migrate traffic from one path to another provides seamless mobility, for instance, when a UE moves out of Wi-Fi coverage, the cellular subflow can take over without interrupting the application session. This requires coordination with the 3GPP core's session management to manage IP address changes and PDU session continuity.
Purpose & Motivation
MPTCP was developed to overcome the limitations of traditional TCP, which is restricted to a single path per connection, making it unable to leverage the multiple network interfaces commonly available on modern devices. This single-path constraint leads to suboptimal resource utilization, as bandwidth from additional interfaces remains unused. It also results in poor resilience; if the single path fails, the TCP connection breaks, requiring application-layer recovery. MPTCP solves these problems by enabling concurrent use of multiple paths, thereby increasing aggregate throughput, improving reliability through path redundancy, and enhancing mobility by allowing connection migration.
The motivation for standardizing MPTCP within 3GPP, starting in Release 16, stems from the proliferation of multi-RAT devices and the need for efficient traffic aggregation and seamless session continuity in 5G networks. Prior solutions, like link aggregation at lower layers or application-level multiplexing, were either non-standard or inefficient. MPTCP provides a standardized, transport-layer solution that is transparent to most applications. It addresses specific 5G use cases such as enhanced mobile broadband (eMBB) requiring high throughput, ultra-reliable low-latency communications (URLLC) requiring resilience, and support for access traffic steering, switching, and splitting (ATSSS) functions.
Historically, IETF developed the base MPTCP protocol. 3GPP's work integrates and profiles MPTCP for the cellular ecosystem, defining how it interacts with 3GPP-specific functions like PDU sessions, QoS flows, and network-based traffic steering. This integration ensures that MPTCP operations are aligned with cellular network policies, charging, and security models, enabling operators to offer enhanced services that leverage multiple accesses in a controlled and efficient manner.
Release Timeline
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (17 CRs across 3 releases). Complements the general historical overview above with the evidence-based evolution of this function.
In Release 16, the MPTCP function was enhanced with the introduction of dedicated "MPTCP link-specific multipath" addresses/prefixes allocated to the UE alongside the MA PDU session address. The release also formalized the integration of MPTCP with ATSSS-LL functionality, enabling combined steering modes and allowing RTT measurements from the MPTCP layer to be used instead of the PMF protocol. Furthermore, specifications were added for the MPTCP Proxy functionality in the UPF and for steering non-MPTCP traffic using ATSSS-LL or MPQUIC.
- PCC rule for Non-MPTCP traffic TS 29.512CR0495
- MA PDU QoS Aspects On Link-Specific Multipath and MPTCP Proxy Addresses TS 23.501CR1169
- Clarifications on Reflective QoS for MPTCP TS 23.501CR1395
- Clarification about an MA PDU Session using only MPTCP functionality TS 23.501CR1653
- ATSSS Steering of non-MPTCP Traffic TS 23.501CR1869
- Corrections for link-specific multipath address/prefix and MPTCP proxy IP address TS 23.501CR1937
+ 9 more changes
In Release 18, the MPTCP function was enhanced to utilize specific "MPTCP link-specific multipath" IP addresses, which are allocated to the UE in addition to the main PDU session address. This allows the MPTCP proxy functionality in the network to communicate with the UE's MPTCP function using these dedicated addresses for steering TCP traffic across multiple accesses. Furthermore, the release specifies that these link-specific addresses can be the same as those used for the parallel MPQUIC functionality.
- IP addresses used to support MPTCP and MPQUIC TS 24.193CR0121
In Release 19, the MPTCP function was newly integrated alongside MPQUIC-UDP as a co-equal steering functionality for network-controlled traffic management. The specification now explicitly defines scenarios where the network can provide the UE with "MPTCP link-specific multipath" addresses for a Multi-Access PDU Session. Furthermore, the release details the interaction between MPTCP and ATSSS-LL functionalities, including specific steering mode combinations and the condition where RTT measurements from the MPTCP layer can replace dedicated PMF protocol measurements.
- Support for MPTCP and MPQUIC-UDP steering functionalities TS 29.512CR1322
Explore further
Broader topics and technologies where MPTCP plays a role.
Defining Specifications
3GPP specifications that define or reference MPTCP, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 23.501 vk00 | 5G System Architecture Stage 2 | Rel-20 |
| TS 24.193 vj50 | ATSSS Procedures Specification | Rel-19 |
| TS 24.501 vj50 | 5G NAS Protocols Specification | Rel-19 |
| TS 26.804 vj10 | 5G Media Streaming Extensions Study | Rel-19 |
| TS 28.552 vk10 | 5G Performance Management Measurements | Rel-20 |
| TS 29.244 vj40 | PFCP Specification for Control/User Plane Separation | Rel-19 |
| TS 29.512 vj40 | 5G Session Management Policy Control Service | Rel-19 |
| TS 32.255 vk10 | Telecom Management; Charging for 5G Data Connectivity | Rel-20 |