Description
Asynchronous Layered Coding is a protocol designed within the 3GPP Multimedia Broadcast Multicast Service (MBMS) framework to provide reliable multicast transport for file delivery and streaming services. It operates as an application layer protocol that sits above UDP/IP and below the MBMS user service layer, specifically designed to overcome the limitations of traditional IP multicast in wireless environments. ALC employs a combination of layered coding, congestion control, and asynchronous transmission to enable efficient, scalable content distribution to potentially millions of mobile devices simultaneously.
The protocol architecture consists of several key components: the ALC protocol itself, which defines packet formats and session description; the Layered Coding Transport (LCT) building block, which provides session management and congestion control; and Forward Error Correction (FEC) building blocks that enable reliable delivery without requiring feedback from receivers. ALC sessions are identified by a combination of source IP address, destination port, and Transport Session Identifier (TSI). The protocol uses multiple layers or channels that can be independently subscribed to by receivers, allowing for bandwidth adaptation and service differentiation.
ALC works by dividing content into objects that are transmitted using multiple layers. Each layer carries encoded data using FEC techniques, typically Raptor or RaptorQ codes specified in 3GPP. Receivers can subscribe to different combinations of layers based on their capabilities, network conditions, or subscription levels. The asynchronous nature means receivers can join sessions at any time and still receive complete content, as the transmission uses carousel-based repetition where content objects are repeatedly transmitted. This eliminates the need for synchronization between sender and receivers.
In the MBMS architecture, ALC operates within the BM-SC (Broadcast Multicast Service Center) for content delivery and in the UE for reception. The BM-SC uses ALC to package content into ALC packets that are then forwarded through the MBMS bearer network. The protocol includes built-in congestion control mechanisms that adapt transmission rates based on network conditions, ensuring efficient use of radio resources. ALC also supports file repair procedures through additional repair symbols transmitted in separate layers, enabling reliable delivery even in challenging radio conditions.
The protocol's design specifically addresses the challenges of wireless multicast: varying channel conditions across different receivers, limited feedback capabilities (to avoid feedback implosion), and efficient use of broadcast radio resources. By combining layered coding with FEC, ALC enables receivers in poor coverage areas to receive content through longer reception times while receivers in good coverage get content quickly. This graceful degradation characteristic makes ALC particularly suitable for mobile broadcast services where user equipment experiences widely varying signal conditions.
Purpose & Motivation
ALC was created to address the fundamental challenges of reliable multicast content delivery in mobile networks, particularly for MBMS services. Traditional IP multicast protocols were designed for wired networks and didn't account for the specific characteristics of wireless environments: high packet loss rates, varying channel conditions across receivers, limited uplink capacity for feedback, and the need for efficient radio resource utilization. Before ALC, attempts to deliver broadcast content to mobile devices either used unicast approaches (which don't scale) or simple broadcast without reliability guarantees.
The primary motivation for developing ALC was to enable commercial broadcast services like mobile TV, where service providers need to guarantee content delivery to paying subscribers. Previous approaches either required excessive radio resources (through repetition) or couldn't guarantee delivery in cell edge conditions. ALC solves these problems through its combination of layered coding and FEC, allowing receivers to accumulate data over time and recover from losses without requiring retransmissions from the source.
Another key problem ALC addresses is the 'feedback implosion' problem in traditional reliable multicast protocols. In mobile networks with potentially millions of receivers, having each device send acknowledgments or negative acknowledgments would overwhelm the network. ALC's design eliminates the need for receiver feedback through its use of proactive FEC and carousel-based transmission. This makes the protocol scalable to very large receiver populations while maintaining reliability guarantees. The protocol also enables service differentiation through its layered approach, allowing premium users to receive higher quality content or faster delivery through subscription to additional layers.
Key Features
- Layered coding enabling bandwidth adaptation and service differentiation
- Asynchronous operation allowing receivers to join sessions at any time
- Built-in Forward Error Correction using Raptor/RaptorQ codes
- Carousel-based content repetition for reliable delivery
- Congestion control mechanisms for efficient network utilization
- Scalable design supporting millions of simultaneous receivers without feedback implosion
Evolution Across Releases
Initial introduction of ALC as part of the enhanced MBMS (eMBMS) framework. Defined the basic protocol architecture with layered coding, FEC support using Raptor codes, and asynchronous operation. Specified integration with MBMS bearer services and session description mechanisms. Established the foundation for file delivery and streaming services over broadcast networks.
Defining Specifications
| Specification | Title |
|---|---|
| TS 26.346 | 3GPP TS 26.346 |
| TS 26.517 | 3GPP TS 26.517 |
| TS 26.946 | 3GPP TS 26.946 |
| TS 26.947 | 3GPP TS 26.947 |
| TS 29.414 | 3GPP TS 29.414 |