Skip to main content
5G Multicast Broadcast Services (MBS)

MBS Broadcast - RAN Procedures

warning

This documentation is currently under development and subject to change. If you are interested in becoming a member of the 5G-MAG and actively participating in shaping this work, please contact the Project Office

Analysis of RAN procedures for MBS Broadcast

This page traces, step by step, how a UE finds and starts receiving an MBS broadcast service on the radio, and then lists the per-layer procedures and the signalling structures (ASN.1) involved. It is a detailed radio-side companion to the RAN Aspects summary.

The step sequence below (numbered 0 to 7) is the acquisition path, from reading the base station's system information down to decoding the broadcast traffic. The channels it refers to are: MIB (Master Information Block); SIB (System Information Block, here SIB20 and SIB21); MCCH (Multicast Control Channel), which carries the broadcast configuration; MTCH (Multicast Traffic Channel), which carries the broadcast data; PDCCH (Physical Downlink Control Channel) and PDSCH (Physical Downlink Shared Channel), the physical channels that schedule and carry the data; and the identifiers MCCH-RNTI and G-RNTI (Group Radio Network Temporary Identifier) used to address them.

    1. Acquiring PLMN and RAN Information
    1. Obtain MIB
    1. Obtain SIB1 (points to SIB20)
    1. SIB20 contains configuration of MCCH
    1. Demodulation of MCCH (PDSCH) via PDCCH (with MCCH-RNTI = FFFD)
    1. MCCH contains MBSBroadcastConfiguration
    1. Obtain configuration of MTCH within MBSBroadcastConfiguration and G-RNTIs via mbs-SessionInfoList within MBSBroadcastConfiguration
    1. Demodulation of MTCH (PDSCH) with G-RNTI

The chain is a series of pointers, each layer telling the UE where to find the next. System information (SIB1) advertises SIB20; SIB20 gives the MCCH configuration; the MCCH (scheduled on the PDSCH via a PDCCH scrambled with the fixed MCCH-RNTI, FFFD) carries the MBSBroadcastConfiguration; and that configuration lists the sessions, their G-RNTIs and the MTCH scheduling needed to decode the traffic. The important property is that every step is derivable from broadcast system information with no uplink and no per-UE state, which is exactly why a broadcast service (delivery mode 2) can be received in any RRC state, including RRC_IDLE and RRC_INACTIVE. The per-layer procedure sections further down are reference pointers into TS 38.331 and the related Layer-2 specifications for each of these steps.

Acquiring PLMN and RAN Information

For information on the MBS Broadcast Pre-Configuration Management Object (MO) refer to 3GPP TS 24.575.

A UE can support MBS to deliver content from a single source entity to all users in a broadcast service area (MBS broadcast communication), as defined in 3GPP TS 23.247. The UE may support pre-configuration of information for MBS services, containing a list of PLMNs; if pre-configured this way, the UE can discover and receive service data using the provisioned configuration. For each PLMN, the following information is included:

  • PLMN ID of the PLMN for which the configuration applies;
  • RAN information based on NR-ARFCN on which the broadcast communication service is available;
  • list of TMGI, on which the broadcast communication service is available, each associated with user service description (USD) information (3GPP TS 26.517) for the MBS broadcast service.
  • list of TMGI, on which the service announcement for broadcast communication service is available along with the associated USD information (see 3GPP TS 26.517) for the MBS user service announcement service

Obtention of MIB/SIB signaling

For definitions refer to 3GPP TS 38.331 Clause 6.2.2

SIB 20 - Acquisition MCCH/MTCH

SIB20 contains the information required to acquire the MCCH/MTCH configuration for MBS broadcast.

-- ASN1START
-- TAG-SIB20-START

SIB20-r17 ::= SEQUENCE {
mcch-Config-r17 MCCH-Config-r17,
cfr-ConfigMCCH-MTCH-r17 CFR-ConfigMCCH-MTCH-r17 OPTIONAL, -- Need S
lateNonCriticalExtension OCTET STRING OPTIONAL,
...,
[[
cfr-ConfigMCCH-MTCH-RedCap-r18 CFR-ConfigMCCH-MTCH-r17 OPTIONAL, -- Need S
mcch-ConfigRedCap-r18 MCCH-Config-r17 OPTIONAL -- Need S
]]
}

MCCH-Config-r17 ::= SEQUENCE {
mcch-RepetitionPeriodAndOffset-r17 MCCH-RepetitionPeriodAndOffset-r17,
mcch-WindowStartSlot-r17 INTEGER (0..79),
mcch-WindowDuration-r17 ENUMERATED {sl2, sl4, sl8, sl10, sl20, sl40,sl80, sl160} OPTIONAL, -- Need S
mcch-ModificationPeriod-r17 ENUMERATED {rf2, rf4, rf8, rf16, rf32, rf64, rf128, rf256,
rf512, rf1024, rf2048, rf4096, rf8192, rf16384, rf32768, rf65536}
}

MCCH-RepetitionPeriodAndOffset-r17 ::= CHOICE {
rf1-r17 INTEGER(0),
rf2-r17 INTEGER(0..1),
rf4-r17 INTEGER(0..3),
rf8-r17 INTEGER(0..7),
rf16-r17 INTEGER(0..15),
rf32-r17 INTEGER(0..31),
rf64-r17 INTEGER(0..63),
rf128-r17 INTEGER(0..127),
rf256-r17 INTEGER(0..255)
}

-- TAG-SIB20-STOP
-- ASN1STOP

SIB 21 - Service continuity

SIB21 supports service continuity: it lists the MBS Frequency Selection Area Identities (FSAIs), for the current frequency and for neighbouring frequencies, that let a UE find the same broadcast service on other cells or carriers. The ASN.1 below shows the intra-frequency and inter-frequency FSAI lists.

SIB21-r17 ::= SEQUENCE {
mbs-FSAI-IntraFreq-r17 MBS-FSAI-List-r17 OPTIONAL, -- Need R
mbs-FSAI-InterFreqList-r17 MBS-FSAI-InterFreqList-r17 OPTIONAL, -- Need R
lateNonCriticalExtension OCTET STRING OPTIONAL,
...
}
MBS-FSAI-List-r17 ::= SEQUENCE (SIZE (1..maxFSAI-MBS-r17)) OF MBS-FSAI-r17
MBS-FSAI-InterFreqList-r17 ::= SEQUENCE (SIZE (1..maxFreq)) OF MBS-FSAI-InterFreq-r17
MBS-FSAI-InterFreq-r17 ::= SEQUENCE {
dl-CarrierFreq-r17 ARFCN-ValueNR,
mbs-FSAI-List-r17 MBS-FSAI-List-r17
}
MBS-FSAI-r17 ::= OCTET STRING (SIZE (3))

Control Plane Procedures

The control-plane sections below summarise, per protocol layer (RRC, PDCP, RLC, MAC), the TS 38.331 and related procedures a UE follows to acquire and maintain a broadcast MRB. They are reference pointers into the specifications rather than standalone descriptions.

RRC: MBS Broadcast

Acquisition of MBS Broadcast information via MCCH

  • Procedures in 3GPP TS 38.331 Clause 5.9
    • Acquisition of MCCH: via SIB20, included in SIBTypeInfo in SIB1. MCCH transmission indicated via PDCCH (MCCH-RNTI)
    • Configuration information in MCCH via MBSBroadcastConfiguration
  • SIB20 in 3GPP TS 38.331 Clause 6.2.2: SIB20 contains the information required to acquire the MCCH/MTCH configuration for MBS broadcast. ASN.1 definition in 3GPP TS 38.331 Clause 6.2.2.
  • MBSBroadcastConfiguration in 3GPP TS 38.331 Clause 6.2.2: The MBSBroadcastConfiguration message contains the control information applicable for MBS broadcast services transmitted via broadcast MRB. ASN.1 definition in 3GPP TS 38.331 Clause 6.2.2.
  • MBS information elements in 3GPP TS 38.331 Clause 6.3.6

Broadcast MRB configuration

  • Procedures in 3GPP TS 38.331 Clause 5.9.3

  • Broadcast MRB establishment in 3GPP TS 38.331 Clause 5.9.3.3

    • Upon a broadcast MRB establishment, the UE shall:
      • establish a PDCP entity and an RLC entity in accordance with MRB-InfoBroadcast for this broadcast MRB included in the MBSBroadcastConfiguration message and the configuration specified in 3GPP TS 38.331 Clause 9.1.1.7;
      • configure the MAC layer in accordance with the mtch-SchedulingInfo (if included);
      • configure the physical layer in accordance with the mbs-SessionInfoList, searchSpaceMTCH, and pdsch-ConfigMTCH, applicable for the broadcast MRB;
      • receive DL-SCH on the cell where the MBSBroadcastConfiguration message was received for the established broadcast MRB using g-RNTI and mtch-SchedulingInfo (if included) in this message for this MBS broadcast service;
      • if an SDAP entity with the received mbs-SessionId does not exist:
        • establish an SDAP entity as specified in 3GPP TS 37.324 clause 5.1.1.
        • indicate the establishment of the user plane resources for the mbs-SessionId to upper layers.
  • Broadcast MRB release in 3GPP TS 38.331 Clause 5.9.3.4

    • Upon broadcast MRB release for MBS broadcast service, the UE shall:
      • release the PDCP entity, RLC entity as well as the related MAC and physical layer configuration;
      • if the SDAP entity associated with the corresponding mbs-SessionId has no associated MRB:
        • release the SDAP entity, as specified in 3GPP TS 37.324 clause 5.1.2;
        • indicate the release of the user plane resources for the mbs-SessionId to upper layers.

PDCP: MBS Broadcast

  • Procedures in 3GPP TS 38.323 Clause 5
    • A PDCP entity associated with MRB can be configured by upper layers 3GPP TS 38.331 to use header compression.
    • Protocol data units, formats, and parameters in 3GPP TS 38.323 Clause 6
    • State variables, constants, and timers in 3GPP TS 38.323 Clause 7

RLC: MBS Broadcast

MAC: MBS Broadcast

User Plane Procedures

The user-plane sections below summarise, per protocol layer (SDAP, PDCP), how received broadcast data is handled. As above, they point into the specifications rather than restating them.

SDAP: MBS Broadcast

  • SDAP architecture in 3GPP TS 37.324 Clause 4.2
    • The SDAP sublayer is configured for MRBs by RRC, and maps MBS QoS flows to MRBs for DL.
  • Data transfer DL in 3GPP TS 37.324 Clause 5.2.2
    • At the reception of an SDAP data PDU from lower layers for a QoS flow, the receiving SDAP entity shall:
      • if this SDAP data PDU is received from an MRB, retrieve the SDAP SDU from the DL SDAP data PDU as specified in 3GPP TS 37.324 Clause 6.2.2.1
  • Data PDU without SDAP header in 3GPP TS 37.324 Clause 6.2.2.1

User-plane PDCP handling for MBS Broadcast follows the same procedures as the control-plane PDCP subsection above (3GPP TS 38.323); it is not repeated here.


Other RRC Messages

The blocks below give the ASN.1 for the supporting configuration structures. The first, CFR-ConfigMCCH-MTCH, defines the common frequency resource (location and bandwidth) used to carry MCCH and MTCH.

-- ASN1START
-- TAG-CFR-CONFIGMCCH-MTCH-START

CFR-ConfigMCCH-MTCH-r17 ::= SEQUENCE {
locationAndBandwidthBroadcast-r17 LocationAndBandwidthBroadcast-r17 OPTIONAL, -- Need S
pdsch-ConfigMCCH-r17 PDSCH-ConfigBroadcast-r17 OPTIONAL, -- Need S
commonControlResourceSetExt-r17 ControlResourceSet OPTIONAL -- Cond NotSIB1CommonControlResource
}

LocationAndBandwidthBroadcast-r17 ::= CHOICE {
sameAsSib1ConfiguredLocationAndBW NULL,
locationAndBandwidth INTEGER (0..37949)
}

-- TAG-CFR-CONFIGMCCH-MTCH-STOP
-- ASN1STOP

The next block, PDSCH-ConfigBroadcast, defines the physical downlink shared channel configuration used for the broadcast (PTM) transmission.

-- ASN1START
-- TAG-PDSCH-CONFIGBROADCAST-START

PDSCH-ConfigBroadcast-r17 ::= SEQUENCE {
pdschConfigList-r17 SEQUENCE (SIZE (1..maxNrofPDSCH-ConfigPTM-r17) ) OF PDSCH-ConfigPTM-r17,
pdsch-TimeDomainAllocationList-r17 PDSCH-TimeDomainResourceAllocationList-r16 OPTIONAL, -- Need R
rateMatchPatternToAddModList-r17 SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPattern OPTIONAL, -- Need R
lte-CRS-ToMatchAround-r17 RateMatchPatternLTE-CRS OPTIONAL, -- Need R
mcs-Table-r17 ENUMERATED {qam256, qam64LowSE} OPTIONAL, -- Need S
xOverhead-r17 ENUMERATED {xOh6, xOh12, xOh18} OPTIONAL -- Need S
}

PDSCH-ConfigPTM-r17 ::= SEQUENCE {
dataScramblingIdentityPDSCH-r17 INTEGER (0..1023) OPTIONAL, -- Need S
dmrs-ScramblingID0-r17 INTEGER (0..65535) OPTIONAL, -- Need S
pdsch-AggregationFactor-r17 ENUMERATED {n2, n4, n8} OPTIONAL -- Need S
}

-- TAG-PDSCH-CONFIGBROADCAST-STOP
-- ASN1STOP

MBSBroadcastConfiguration

The MBSBroadcastConfiguration message is the broadcast configuration carried on the MCCH. It lists the sessions available (mbs-SessionInfoList), neighbour-cell information, and the MTCH scheduling and physical-layer configuration a UE needs to receive them.

-- ASN1START
-- TAG-MBSBROADCASTCONFIGURATION-START

MBSBroadcastConfiguration-r17 ::= SEQUENCE {
criticalExtensions CHOICE {
mbsBroadcastConfiguration-r17 MBSBroadcastConfiguration-r17-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}

MBSBroadcastConfiguration-r17-IEs ::= SEQUENCE {
mbs-SessionInfoList-r17 MBS-SessionInfoList-r17 OPTIONAL, -- Need R
mbs-NeighbourCellList-r17 MBS-NeighbourCellList-r17 OPTIONAL, -- Need S
drx-ConfigPTM-List-r17 SEQUENCE (SIZE (1..maxNrofDRX-ConfigPTM-r17)) OF DRX-ConfigPTM-r17 OPTIONAL, -- Need R
pdsch-ConfigMTCH-r17 PDSCH-ConfigBroadcast-r17 OPTIONAL, -- Need S
mtch-SSB-MappingWindowList-r17 MTCH-SSB-MappingWindowList-r17 OPTIONAL, -- Need R
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}

-- TAG-MBSBROADCASTCONFIGURATION-STOP
-- ASN1STOP

The MBS-SessionInfoList below is the per-session detail referenced above: for each broadcast session it gives the session identity (TMGI), the G-RNTI used to address it, and the radio bearer (MRB) configuration.

-- ASN1START
-- TAG-MBS-SESSIONINFOLIST-START

MBS-SessionInfoList-r17 ::= SEQUENCE (SIZE (1..maxNrofMBS-Session-r17)) OF MBS-SessionInfo-r17

MBS-SessionInfo-r17 ::= SEQUENCE {
mbs-SessionId-r17 TMGI-r17,
g-RNTI-r17 RNTI-Value,
mrb-ListBroadcast-r17 MRB-ListBroadcast-r17,
mtch-SchedulingInfo-r17 DRX-ConfigPTM-Index-r17 OPTIONAL, -- Need S
mtch-NeighbourCell-r17 BIT STRING (SIZE(maxNeighCellMBS-r17)) OPTIONAL, -- Need S
pdsch-ConfigIndex-r17 PDSCH-ConfigIndex-r17 OPTIONAL, -- Need S
mtch-SSB-MappingWindowIndex-r17 MTCH-SSB-MappingWindowIndex-r17 OPTIONAL -- Cond MTCH-Mapping
}

DRX-ConfigPTM-Index-r17 ::= INTEGER (0..maxNrofDRX-ConfigPTM-1-r17)

PDSCH-ConfigIndex-r17 ::= INTEGER (0..maxNrofPDSCH-ConfigPTM-1-r17)

MTCH-SSB-MappingWindowIndex-r17 ::= INTEGER (0..maxNrofMTCH-SSB-MappingWindow-1-r17)

MRB-ListBroadcast-r17 ::= SEQUENCE (SIZE (1..maxNrofMRB-Broadcast-r17)) OF MRB-InfoBroadcast-r17

MRB-InfoBroadcast-r17 ::= SEQUENCE {
pdcp-Config-r17 MRB-PDCP-ConfigBroadcast-r17,
rlc-Config-r17 MRB-RLC-ConfigBroadcast-r17,
...
}

MRB-PDCP-ConfigBroadcast-r17 ::= SEQUENCE {
pdcp-SN-SizeDL-r17 ENUMERATED {len12bits} OPTIONAL, -- Need S
headerCompression-r17 CHOICE {
notUsed NULL,
rohc SEQUENCE {
maxCID-r17 INTEGER (1..16) DEFAULT 15,
profiles-r17 SEQUENCE {
profile0x0000-r17 BOOLEAN,
profile0x0001-r17 BOOLEAN,
profile0x0002-r17 BOOLEAN
}
}
},
t-Reordering-r17 ENUMERATED {ms1, ms10, ms40, ms160, ms500, ms1000, ms1250, ms2750} OPTIONAL -- Need S
}

MRB-RLC-ConfigBroadcast-r17 ::= SEQUENCE {
logicalChannelIdentity-r17 LogicalChannelIdentity,
sn-FieldLength-r17 ENUMERATED {size6} OPTIONAL, -- Need S
t-Reassembly-r17 T-Reassembly OPTIONAL -- Need S
}

-- TAG-MBS-SESSIONINFOLIST-STOP
-- ASN1STOP