Description
SAMMO is a standardized message type defined within the 3GPP SAND (Server and Network Assisted DASH) architecture, specified in TS 26.946. It functions as a dedicated message container for conveying information pertinent to MBMS (Multimedia Broadcast Multicast Service) delivery to DASH (Dynamic Adaptive Streaming over HTTP) clients. The SAND framework itself establishes a data channel between a DASH client and network entities (like the SAND server), allowing for the exchange of messages that assist the client in making more informed adaptation decisions. SAMMO messages are a key component of this exchange when MBMS is involved.
Technically, a SAMMO message is a structured XML document conforming to a schema defined by 3GPP. It carries metadata and operational parameters related to MBMS bearer services. This can include detailed information about available MBMS sessions, their associated service areas, scheduled broadcast times, and the mapping between DASH Representations (different quality levels of the same content) and specific MBMS bearers. The message is generated by a network entity, typically a SAND server or a BM-SC (Broadcast Multicast Service Centre), and delivered to the DASH client via the SAND message channel, which can use protocols like HTTP.
Upon receiving a SAMMO message, the DASH client parses the information to understand the MBMS delivery landscape. For instance, it can learn when a high-bitrate version of the content will be broadcasted over MBMS, allowing it to schedule its reception and potentially switch from a unicast to a multicast stream, saving radio resources and improving efficiency. The client uses this information to populate its Media Presentation Description (MPD) processor and guide its adaptation logic. The architecture integrates the application-layer SAND framework with the lower-layer MBMS transport mechanisms, creating a cohesive cross-layer optimization for broadcast and multicast streaming services.
Purpose & Motivation
SAMMO was introduced to bridge the gap between efficient network-layer broadcast/multicast delivery (MBMS) and the application-layer adaptive streaming protocol (DASH). While MBMS provides an efficient method for delivering popular content to many users simultaneously, DASH clients were originally designed for unicast HTTP delivery and lacked standardized mechanisms to discover and utilize MBMS bearers intelligently. Without SAMMO, a client might not know an MBMS broadcast for desired content exists or when it is scheduled, leading to suboptimal use of network resources and user experience.
The creation of SAMMO, as part of the broader SAND framework in Release 12, was motivated by the need for network-assisted streaming optimizations, particularly for broadcast scenarios like live sports or news. It solves the problem of client awareness. By delivering structured MBMS operational data directly to the client application, SAMMO enables proactive and informed client behavior. This allows clients to opportunistically leverage broadcast streams for high-quality segments while potentially using unicast as a fallback, optimizing both network capacity utilization and ensuring a robust, high-quality streaming experience. It represents a key enabler for converged unicast-broadcast service delivery.
Key Features
- Standardized XML message format for MBMS delivery information
- Conveys MBMS session parameters, schedules, and service area details
- Maps DASH Representations to specific MBMS bearers
- Delivered over the SAND message channel (e.g., via HTTP)
- Enables DASH client to schedule reception of broadcast content
- Facilitates seamless switching between unicast and multicast delivery paths
Evolution Across Releases
Defining Specifications
| Specification | Title |
|---|---|
| TS 26.946 | 3GPP TS 26.946 |