Description
The Temporary Multicast Group Identifier (TMGI) is a critical identifier within the 3GPP Multimedia Broadcast Multicast Service (MBMS) architecture. It uniquely identifies a specific MBMS session within a PLMN (Public Land Mobile Network) or across PLMNs. A TMGI is not a permanent address but is temporarily assigned for the duration of a specific MBMS service session. Its structure, defined in 3GPP TS 23.003, typically includes a Mobile Country Code (MCC), a Mobile Network Code (MNC), and a service-specific group ID, allowing for global or network-specific uniqueness.
The TMGI's primary function is to act as a handle for the entire MBMS service delivery chain. Service announcement procedures, which inform User Equipment (UE) about available MBMS content, include the TMGI. When a UE wishes to receive a service, it uses the TMGI to initiate a join procedure towards the network, indicating its interest in the specific multicast group. Within the core network, the BM-SC (Broadcast Multicast Service Center) allocates the TMGI and uses it to identify the bearer and session towards the access network. In the radio access network (RAN), the TMGI is used to identify the common radio resources (like an MBMS Point-to-Multipoint Control Channel) allocated for that session, enabling multiple UEs to efficiently receive the same data stream.
From a protocol perspective, the TMGI is carried in multiple layers. It appears in NAS (Non-Access Stratum) signaling messages for session management, in RRC (Radio Resource Control) messages for multicast group management in the RAN, and is integral to the IP multicast addressing scheme used for the data plane. The network uses the TMGI to map the MBMS service to a specific IP multicast address and port combination for data distribution. This end-to-end binding ensures that from the service originator (BM-SC) to the receiving UE, all network elements can correctly identify and process the data flow associated with a particular broadcast or multicast session.
Purpose & Motivation
The TMGI was created to solve the fundamental problem of identifying and managing multicast sessions in a cellular environment. Unlike unicast, where a connection is unique to a single UE, multicast involves delivering the same content to potentially millions of devices. A unique, session-specific identifier was needed to allow UEs to signal their interest (join/leave), for the network to allocate shared resources efficiently, and to distinguish between multiple concurrent MBMS services.
It addresses the limitations of using only IP multicast addresses for this purpose in a mobile context. An IP multicast group address alone does not contain the necessary network routing context (e.g., home network) and is not ideal for signaling in mobile-specific control planes. The TMGI provides a structured, mobile-network-friendly identifier that incorporates PLMN identity, enabling network-based service discovery, access control, and roaming support. Its creation was motivated by the introduction of MBMS in Release 6, which aimed to enable efficient mass content delivery (like mobile TV) over 3GPP networks, requiring a robust session management and identification mechanism tailored for cellular architectures.
Key Features
- Globally unique identifier for an MBMS service session
- Structure includes MCC, MNC, and a service group ID
- Used in service announcement for UE discovery
- Key parameter for UE join/leave procedures to a multicast group
- Identifies the session for resource allocation in the RAN and core network
- Maps to an IP multicast address for data plane distribution
Evolution Across Releases
Introduced as the core identifier for the new Multimedia Broadcast Multicast Service (MBMS). Defined its structure and its role in service announcement, session joining, and resource management to enable efficient point-to-multipoint content delivery in UMTS networks.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.246 | 3GPP TS 23.246 |
| TS 23.247 | 3GPP TS 23.247 |
| TS 23.280 | 3GPP TS 23.280 |
| TS 23.379 | 3GPP TS 23.379 |
| TS 23.468 | 3GPP TS 23.468 |
| TS 23.479 | 3GPP TS 23.479 |
| TS 23.768 | 3GPP TS 23.768 |
| TS 23.780 | 3GPP TS 23.780 |
| TS 23.792 | 3GPP TS 23.792 |
| TS 23.795 | 3GPP TS 23.795 |
| TS 24.008 | 3GPP TS 24.008 |
| TS 24.281 | 3GPP TS 24.281 |
| TS 24.334 | 3GPP TS 24.334 |
| TS 24.379 | 3GPP TS 24.379 |
| TS 24.380 | 3GPP TS 24.380 |
| TS 24.501 | 3GPP TS 24.501 |
| TS 24.575 | 3GPP TS 24.575 |
| TS 24.578 | 3GPP TS 24.578 |
| TS 24.581 | 3GPP TS 24.581 |
| TS 24.587 | 3GPP TS 24.587 |
| TS 24.588 | 3GPP TS 24.588 |
| TS 25.304 | 3GPP TS 25.304 |
| TS 25.367 | 3GPP TS 25.367 |
| TS 25.401 | 3GPP TS 25.401 |
| TS 25.413 | 3GPP TS 25.413 |
| TS 25.423 | 3GPP TS 25.423 |
| TS 25.931 | 3GPP TS 25.931 |
| TS 26.346 | 3GPP TS 26.346 |
| TS 26.517 | 3GPP TS 26.517 |
| TS 26.802 | 3GPP TS 26.802 |
| TS 26.804 | 3GPP TS 26.804 |
| TS 26.849 | 3GPP TS 26.849 |
| TS 26.852 | 3GPP TS 26.852 |
| TS 26.880 | 3GPP TS 26.880 |
| TS 26.946 | 3GPP TS 26.946 |
| TS 26.981 | 3GPP TS 26.981 |
| TS 29.061 | 3GPP TS 29.061 |
| TS 29.116 | 3GPP TS 29.116 |
| TS 29.244 | 3GPP TS 29.244 |
| TS 29.468 | 3GPP TS 29.468 |
| TS 29.522 | 3GPP TS 29.522 |
| TS 29.532 | 3GPP TS 29.532 |
| TS 29.549 | 3GPP TS 29.549 |
| TS 29.580 | 3GPP TS 29.580 |
| TS 31.102 | 3GPP TR 31.102 |
| TS 32.273 | 3GPP TR 32.273 |
| TS 33.880 | 3GPP TR 33.880 |
| TS 33.883 | 3GPP TR 33.883 |
| TS 36.300 | 3GPP TR 36.300 |
| TS 36.579 | 3GPP TR 36.579 |
| TS 36.868 | 3GPP TR 36.868 |
| TS 37.579 | 3GPP TR 37.579 |
| TS 38.331 | 3GPP TR 38.331 |
| TS 43.246 | 3GPP TR 43.246 |
| TS 48.018 | 3GPP TR 48.018 |