Description
Multi-Class Multi-Link PPP (MCML) is a protocol extension to the standard Point-to-Point Protocol (PPP), defined in IETF RFC 2686 and referenced within 3GPP specifications like TS 27.060 for mobile station services. It combines two key functionalities: Multi-Link PPP (MLPPP) bundling and traffic class differentiation. First, MCML aggregates multiple independent physical links (e.g., multiple ISDN B-channels, modem connections, or E1/T1 timeslots) into a single logical pipe, increasing the overall available bandwidth and providing redundancy. Data packets are fragmented, sequenced, and distributed across the member links for transmission, then reassembled at the receiving end.
Second, and critically, MCML introduces the concept of multiple traffic classes within this aggregated bundle. Unlike basic MLPPP which treats all traffic equally, MCML allows different types of data (e.g., real-time voice, interactive data, background traffic) to be assigned to different classes. Each class can be associated with specific scheduling and forwarding policies across the aggregated links. The protocol uses a modified PPP header that includes a class identifier field. This enables the implementation of simple QoS mechanisms, ensuring that delay-sensitive traffic like voice over the packet-switched domain can be prioritized over less critical data traffic.
Architecturally, MCML operates at the data link layer (Layer 2). It sits above the individual physical links and below the network layer protocols like IP. Key components include the fragmentation and reassembly logic, the sequencing mechanism to handle out-of-order delivery across multiple paths, and the classifier that maps upper-layer packets to specific traffic classes based on configured rules. In a 3GPP context, MCML was particularly relevant for defining how a Mobile Station (MS) could establish a packet data connection with the network using multiple bearers in parallel, supporting service differentiation in the early days of GSM/GPRS and UMTS packet-switched core networks before more advanced QoS frameworks were fully developed.
Purpose & Motivation
MCML was developed to address two primary limitations of standard PPP in the late 1990s and early 2000s: limited bandwidth per physical connection and the lack of built-in quality of service (QoS) support. As data services on mobile and fixed networks evolved, there was a need to provide higher bandwidth connections by bonding together multiple lower-speed circuits, such as multiple ISDN lines or modem links. Standard Multi-Link PPP (MLPPP) provided this bundling but treated all aggregated traffic homogeneously.
The purpose of MCML was to extend MLPPP by adding traffic class differentiation. This was motivated by the growing need to carry mixed traffic types—especially real-time voice (VoIP) alongside traditional data—over the same aggregated link. Without class differentiation, voice packets could be delayed behind large data packets, degrading call quality. MCML solved this by allowing network equipment to prioritize traffic classes, ensuring better performance for delay-sensitive applications. In the 3GPP context, it provided a standardized method for mobile stations to negotiate and use multiple traffic classes over bundled links towards the network, supporting early QoS concepts for packet-switched services in releases like Rel-4 and Rel-5.
Classification
Evolution Across Releases
Initial adoption and reference of MCML (Multi-Class Multi-Link PPP) within 3GPP specifications, particularly for supporting packet data services in the GSM/EDGE and UMTS framework. It provided a mechanism for mobile stations to establish multi-link connections with traffic class support for early QoS differentiation.
Explore further
Broader topics and technologies where MCML plays a role.
Defining Specifications
3GPP specifications that define or reference MCML, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TR 21.905 vj00 | 3GPP Technical Terms and Definitions | Rel-19 |
| TS 27.060 vj00 | TE-MT Interworking for Packet Domain | Rel-19 |