- MBS User Services: the MBSF (control plane) and MBSTF (user plane) in the network, the optional MBS AF, MBS AS and MBSSF, and the MBS Client in the UE.
- APIs: the Nmbsf and Nmbstf service APIs, plus protocols for announcement, repair and key retrieval at the MBS reference points.
Media Streaming sessions over MBS User Services (TS 26.501)
TS 26.501 Clause 4.9 ("Downlink 5G Media Streaming via MBS") is a full, normative architecture for running 5G Media Streaming (5GMS) downlink delivery on top of MBS User Services (TS 26.501 V20.0.0 clause 4.9).
- Provisioning: the 5GMSd AF configures delivery of 5GMS content to an MBS Client in the UE by provisioning an MBS User Service (TS 26.502 Clause 4.5.1), invoking the Nmbsf service at Nmb10 (or Nmb5+N33) (TS 26.501 V20.0.0 clause 4.9.1 item 1, 4.9.3.1 to 4.9.3.5). The 5GMSd Application Provider must additionally authorise via M1 that its content may be distributed via MBS (TS 26.501 V20.0.0 clause 4.9.2.1 to 4.9.2.9).
- Content ingest: the MBSTF ingests content from the 5GMSd AS at Nmb8 by pull. Push-based ingest by the MBSTF at Nmb8 is not enabled in the current release; 5GMS only supports pull-based content acquisition at reference point M4 (TS 26.501 V20.0.0 clause 4.9.1 note 1, 4.9.3.1 to 4.9.3.5).
- Distribution and announcement: the MBS User Services and Distribution Methods carry the content as real-time object streaming (TS 26.502 Clause 6.1), and the User Service Announcement describes it (TS 26.502 Clause 4.2.4) (TS 26.501 V20.0.0 clause 4.9.3.1 to 4.9.3.5).
- Reception in the UE: the 5GMSd Client itself acts as the MBS-Aware Application, controlling the MBS Client via the MBS-6 API, including reception reporting. The MBSTF Client's Media Server subfunction exposes the entry-point document and the received (and possibly repaired) objects to the 5GMSd Client's Media Player via MBS-7 (TS 26.501 V20.0.0 clause 4.9.1 items 2 and 4, 4.9.3.1 to 4.9.3.5).
- 5GMS reference points: the existing 5GMS reference points (M1, M2d, M3d, M4d, M5, M6d, M7d, M8d, M11d) are used or adapted for this scenario (TS 26.501 V20.0.0 clause 4.9.2.1 to 4.9.2.9).
MBS User Services (TS 26.502)
The primary goal of the MBS User Services architecture specified in TS 26.502 is to provide a higher-level abstraction on top of MBS Services that is more useful to a Content Service Provider, referred to in TS 26.502 as an MBS Application Provider (TS 26.502 V19.6.0 clause 1, 4.2.2). This entity plays the role of the AF/AS in the lower-level MBS Services architecture defined in TS 23.247 and described below (TS 26.502 V19.6.0 clause 4.2.2).
The MBS User Services abstraction comprises three principal data entities (TS 26.502 V19.6.0 clause 4.5.1, 4.5.2):
- The MBS User Service includes basic top-level metadata about itself, such as a type (broadcast or multicast) name, description and main service language (TS 26.502 V19.6.0 clause 4.5.3).
- Each MBS User Service defines a set of MBS User Data Ingest Sessions. These optionally define a time schedule for activation (if they are not intended to run 24/7) as well as a set of MBS Distribution Sessions, one for each service component or regional variant of the parent MBS User Service (TS 26.502 V19.6.0 clause 4.5.2, 4.5.5).
- Each MBS Distribution Session corresponds to one MBS Session in the MB-SMF. In the case of regional variations, the MBS Distribution Session is provisioned with a target region and, as a result, each one maps to a location-specific MBS Service (TS 26.502 V19.6.0 clause 4.5.2 steps 2 and 4).
The overall system architecture for MBS User Services (green) and MBS Services (not highlighted) is depicted below. The (green) MBS User Services functions are optional in an MBS System: it is valid to omit them entirely, in which case the AF/AS must provision low-level MBS Services directly with the MB-SMF at reference point Nmb13 (or N33+N29mb, if outside the trusted network), and then inject MBS data directly into the MB-UPF at reference point N6mb (TS 23.247 V20.0.0 clause 5.1 note 1, 5.3.1, annex A; TS 26.502 V19.6.0 clause 4.2.1).
As with existing Network Functions in the 5G Core, the additional control plane entities (top half of the figure) communicate using service-based interfaces based on HTTP/2-based RESTful interactions defined using OpenAPI schemas. In the data plane (bottom half of the figure), individual protocols are defined at each reference point (TS 29.580 V20.0.0 clause 6.1.2.1; TS 29.581 V20.0.0 clause 6.1.2.1; TS 26.517 V19.3.0 clause 1).
Functions
- MBSF: receives provisioning and control from the MBS Application Provider, directly at Nmb10 or through the NEF at Nmb5. It invokes MBS Session operations on the MB-SMF at Nmb1 and configures the MBSTF at Nmb2. It compiles the User Service Announcement for each MBS User Data Ingest Session and manages its updates (TS 26.502 V19.6.0 clause 4.3.2, 4.3.1).
- MBSTF: receives user plane data at Nmb8 and sends MBS data packets to the MB-UPF at Nmb9. It acts as a user plane anchor when it sources IP multicast traffic. It receives its Distribution Session configurations from the MBSF at Nmb2 and sends notification events back, for example data ingest failure, session terminated or delivery started. For the Object Distribution Method its subfunctions are object ingest, object segmentation into payload units, optional Application Layer FEC (AL-FEC), packetisation and packet scheduling to a target bit rate. To support Object Repair, it may also forward ingested objects to the MBS AS, or let the MBS AS fetch them, at MBS-12 (added in Release 19) (TS 26.502 V19.6.0 clause 4.3.1, 4.3.3.1, 4.3.3.2, 4.3.4; TS 26.502 V18.7.0 clause 4.3.4 (comparison)).
- MBS AF (optional): serves User Service Announcements to the MBSF Client by unicast at MBS-5, and object manifests and announcements to the MBSTF at MBS-11. The MBSF configures it at MBS-3, an interaction TS 26.502 does not define further.
- MBS AS (optional): provides a byte-range Object Repair service to the MBSTF Client at MBS-4-UC, for the Object Distribution Method. To support it, the MBS AS may be configured for each MBS Distribution Session to ingest content from the MBSTF at MBS-12, by pull or by push. It also hosts a time service the MBS Client may use to synchronise its clock. Both are added in Release 19. It may stand alone or be co-located with the MBSTF or with a 5GMS AS (TS 26.502 V19.6.0 clause 4.3.4, 4.2.7, 4.3.1; TS 26.502 V18.7.0 clause 4.3.4 (comparison)).
- MBSSF (optional): the MBS Security Function. It provides a security anchor at MBS-10, realising the user plane security procedure of TS 33.501, and may be co-located with the MBSF or the MBSTF.
- MBS Client, in the UE, split into two subfunctions. The MBSF Client communicates with the MBS AF at MBS-5 on User Service control, and with the MBSSF at MBS-10. The MBSTF Client receives from the MBSTF at MBS-4-MC and from the MBS AS at MBS-4-UC, and provides an MBS Application Data Session to the application (TS 26.502 V19.6.0 clause 4.3.5).
- In the case of an MBS Distribution Session provisioned to use the packet distribution method, the received packets are exposed directly to the MBS-Aware Application via a client API at reference point MBS-7 (TS 26.502 V19.6.0 clause 4.4.1, 6.2).
- In the case of an MBS Distribution Session provisioned to use the object distribution method, the objects are reconstructed by the MBSTF to the best of its ability from the received MBS data (FLUTE packets) before exposing them to the MBS-Aware Application at reference point MBS-7, for example via a local HTTP server (TS 26.502 V19.6.0 clause 4.4.1; TS 26.501 V20.0.0 clause 4.9.1 item 4). Prior to object exposure, the MBSTF Client may interact with the MBS AS at reference point MBS-4-UC to perform HTTP-based object repair (TS 26.502 V19.6.0 clause 4.3.5, 5.6.1). (If there is insufficient time to do this, or if reference point MBS-4-UC is not instantiated in the MBS System deployment, incomplete objects are returned to the MBS-Aware Application and it may then use higher-level object repair functionality to recover lost data (TS 26.501 V20.0.0 clause 4.9.1 item 5).)
- MBS-Aware Application: uses the MBS Client at MBS-6 and MBS-7 (TS 26.502 V19.6.0 clause 4.3.6).
- MBS Application Provider: plays the role of the AF/AS. Outside the trusted data network it reaches the MBSF through the NEF at N33 instead of Nmb10 (TS 26.502 V19.6.0 clause 4.2.2, 4.3.1 note).
The functions are shown as standalone. In deployments they may be co-located with other functions (TS 26.502 V19.6.0 clause 4.3.1).
Reference points
TS 26.502 reuses seven reference points of TS 23.247 (Nmb1, Nmb2, Nmb5, Nmb8, Nmb9, Nmb10 and Nmb12) and adds its own.
Reference points of MBS User Services
| Reference point | Between | Purpose | Specified |
|---|---|---|---|
| Nmb10 | MBS Application Provider (AF/AS) and MBSF | Provisioning of MBS User Services, by invoking the Nmbsf service | TS 26.502 cl. 7.2; TS 29.580 |
| Nmb5 | NEF and MBSF | The same Nmbsf service, for an AF/AS outside the trusted domain | TS 26.502 cl. 7.2; TS 29.580 |
| Nmb1 | MBSF and MB-SMF | MBS Session operations (Nmbsmf) | TS 23.247 cl. 9.1 |
| Nmb2 | MBSF and MBSTF | Configuration and control of the distribution methods (Nmbstf); push of object manifests | TS 26.502 cl. 7.3; TS 29.581 |
| Nmb8 | MBS Application Provider and MBSTF | Content ingest by the MBSTF, pull or push | TS 26.502 cl. 4.3.3 |
| Nmb9 | MBSTF and MB-UPF | MBS data packets towards the MB-UPF | TS 23.247 cl. 5.3.1 |
| Nmb12 | MBSF and PCF | QoS for the MBS Session, set from the provisioned 5QI | TS 26.502 table 4.5.6-1 |
| MBS-1 | MBS AF and MBS Application Provider | Exposure of the User Service Announcement for private advertisement at MBS-8 | TS 26.517 cl. 8A |
| MBS-3 | MBSF and MBS AF | Configuration of the MBS AF and publication of announcements to it (TS 26.502 V19.6.0 clause 4.4.1). Not described further | none |
| MBS-4-MC | MBSTF and MBS Client | Unidirectional multicast distribution of content | TS 26.517 cl. 6 and 7 |
| MBS-4-UC | MBSTF Client and MBS AS | Time synchronisation and file-based unicast repair | TS 26.517 cl. 5.2.11 and 10 |
| MBS-5 | MBSF Client and MBS AF | User plane interactions for control and service handling | TS 26.517 cl. 9 |
| MBS-6 | MBS-Aware Application and MBSF Client | API to manage and control MBS User Services | none (TS 26.502 V19.6.0 clause 4.4.1) |
| MBS-7 | MBS-Aware Application and MBSTF Client | API to receive the distributed user data | none (TS 26.502 V19.6.0 clause 4.4.1) |
| MBS-8 | MBS Application Provider and MBS-Aware Application | Announcement of MBS User Services (TS 26.502 V19.6.0 clause 4.4.1). Beyond the scope of 3GPP | none |
| MBS-9 | MBSF and MBS AS | Configuration of the MBS AS (TS 26.502 V19.6.0 clause 4.4.1). Not described further | none |
| MBS-10 | MBSF Client and MBSSF | Authorisation of access to security-protected MBS data | TS 26.517 cl. 11 |
| MBS-11 | MBSTF and MBS AF | Retrieval of object manifests and the announcements they list | TS 26.502 cl. 4.3.3.2 |
| MBS-12 | MBS AS and MBSTF | Ingest of objects by the MBS AS from the MBSTF, to support unicast Object Repair. Added in Release 19 | TS 26.502 cl. 4.3.4 |
Two more reference points, MBS-6′ and MBS-7′, sit inside the MBS Client between the MBSF Client and the MBSTF Client. They are outside the scope of MBS User Services (TS 26.502 V19.6.0 clause 4.4.1).
Services and APIs
The MBSF exposes two services and the MBSTF one. An MBS Application Provider outside the trusted data network reaches the MBSF services through the NEF, as Nnef_MBSUserService and Nnef_MBSUserDataIngestSession. The protocol and data model of each service are specified in TS 29.580 (Nmbsf) and TS 29.581 (Nmbstf); TS 29.580 calls the Destroy operation of TS 26.502 "Delete".
Services, operations and resources
| Service | Operations (TS 26.502) | Consumer | Resources (stage 3) |
|---|---|---|---|
| Nmbsf_MBSUserService | Create, Retrieve, Update, Destroy | AF, NEF | TS 29.580 cl. 6.1: /mbs-user-services, /mbs-user-services/{mbsUserServId} |
| Nmbsf_MBSUserDataIngestSession | Create, Retrieve, Update, Destroy, StatusSubscribe, StatusUnsubscribe, StatusNotify, StatusSubscribeMod | AF, NEF | TS 29.580 cl. 6.2: /sessions, /sessions/{sessionId}, /status-subscriptions, /status-subscriptions/{subscriptionId} |
| Nmbstf_MBSDistributionSession | Create, Retrieve, Update, Destroy, StatusSubscribe, StatusUnsubscribe, StatusNotify, StatusSubscribeMod | MBSF | TS 29.581 cl. 6.1: /dist-sessions, /dist-sessions/{distSessionRef}, /dist-sessions/{distSessionRef}/subscriptions, /dist-sessions/{distSessionRef}/subscriptions/{subscriptionId} |
| Reference point | API or protocol | TS 26.517 |
|---|---|---|
| MBS-1 | MBS User Service Announcement bundle retrieval API, exposed by the MBS AF to the MBS Application Provider | cl. 8A |
| MBS-5 | User Service Description retrieval API, exposed by the MBS AF, base path {apiRoot}/3gpp-mbs-user-service-discovery/{apiVersion}/ | cl. 9 |
| MBS-4-UC | Unicast Object Repair protocol, between the MBSTF Client and the MBS AS: post-session, and in-session (added in Release 19) | cl. 10.2, 10.3 |
| MBS-4-UC | Time service hosted by the MBS AS, identified by a DASH UTC timing scheme (SNTP, or an HTTP resource giving the current date-time). Added in Release 19 | cl. 5.2.11, C.3 |
| MBS-10 | MBS Service Key retrieval from the MBSSF, using the protocol of TS 33.246 clause 6.3 | cl. 11 |
| Nmb8 | General HTTP provisions for the MBSTF endpoint that receives pushed objects | cl. 8.2.1.3 |
Distribution methods
| Method | What it delivers | Operating modes (TS 26.502 tables 6.1-1 and 6.2-1) |
|---|---|---|
| Object Distribution Method | Discrete binary objects, in real time or not, including media segments | OBJECT_SINGLE: each ingested object is distributed once. OBJECT_COLLECTION: a set of objects described by a manifest, distributed once. OBJECT_CAROUSEL: a set of objects repeated as the manifest specifies, with changes reflected at the next opportunity. OBJECT_STREAMING: a sequence of objects streamed in real time, for example on the schedule of a DASH MPD |
| Packet Distribution Method | Application Data Units, delivered transparently | PACKET_FORWARD_ONLY: the payloads of ingested IP packets are forwarded to the MB-UPF in new IP packets (Layer 3 proxying). PACKET_PROXY: the payloads of ingested UDP packets are forwarded in new UDP packets (Layer 4 proxying). RTP packets can be distributed in either mode |
When FLUTE realises the Object Distribution Method, the MBS Distribution Session conforms to the MBMS Download Profile of TS 26.346 clause L.4, with the additions of TS 26.517 clause 6.2. TS 26.517 recommends the OBJECT_STREAMING mode for streaming DASH or HLS content to a Media Player in the UE. The Packet Distribution Method combines three delivery methods of TS 26.346, the MBMS Streaming, Group Communication and Transparent Delivery Methods, with modifications.
For the Object Distribution Method, ingest at Nmb8 is pull-based (the MBSTF fetches objects from the MBS Application Provider) or push-based (the MBS Application Provider sends them) (TS 26.502 V19.6.0 clause 4.3.3.2).
Sessions and their life cycle
An MBS Application Provider provisions an MBS User Service, and within it time-bound MBS User Data Ingest Sessions. Each ingest session has one or more MBS Distribution Sessions; an ingest session without any is not valid. A Distribution Session uses an MBS Session for delivery, identified by a TMGI or a Source-Specific Multicast (SSM) address. It has one MBS Session Context, unless several target service areas are specified (TS 26.502 V19.6.0 clause 4.5.2, 4.5.5, 4.5.6).
An ingest session may carry a set of active periods. If none is given, it and its Distribution Sessions are active until further notice. The Service type (multicast or broadcast) of an MBS User Service cannot be changed; the other parameters assigned by the provider can be updated at any time (TS 26.502 V19.6.0 clause 4.5.3, 4.5.5).
| State of a Distribution Session | What happens (TS 26.502 clause 4.6.1) |
|---|---|
| INACTIVE | The state when the session is first provisioned in the MBSF, and its replica in the MBSTF |
| ESTABLISHED | Shortly before the start of the active period, the MBSF reserves resources with the MB-SMF and establishes the session in the MBSTF, which may start ingesting data but not distributing it. The MBSF advertises the session |
| ACTIVE | At the start time, the MBSTF starts sending MBS data packets to the MB-UPF at Nmb9, and MBS Clients that activated reception start receiving at MBS-4-MC |
| DEACTIVATING | At the end time, or on a severe error, the MBSF stops advertising the session, deactivates and releases it in the MBSTF, and releases the resources with the MB-SMF |
How a User Service is provisioned and announced
TS 26.502 clauses 5.3 to 5.5, condensed, with the step numbers:
- Optional TMGI pre-allocation (step 1). The MBS Application Provider may pre-allocate a TMGI with Nmbsmf_TMGI_Allocate on the MB-SMF at Nmb13 (or N33+N29mb through the NEF) (TS 26.502 V19.6.0 clause 5.3 step 1).
- User Service (step 2). It invokes Nmbsf_MBSUserService_Create at Nmb10 (or N33+Nmb5) (TS 26.502 V19.6.0 clause 5.3 step 2).
- Ingest session (steps 3 and 4). It invokes Nmbsf_MBSUserDataIngestSession_Create, with the details of one or more Distribution Sessions, and subscribes to its status events (TS 26.502 V19.6.0 clause 5.3 steps 3 and 4).
- MBS Session (steps 6 to 9). Shortly before the active period, the MBSF may allocate a TMGI, then invokes Nmbsmf_MBSSession_Create on the MB-SMF at Nmb1. The MB-SMF can allocate the TMGI as a side effect (TS 26.502 V19.6.0 clause 5.3 steps 6 to 9). The MBSF invokes Nmbstf_MBSDistributionSession_Create at Nmb2, a mirror of its own entity. For the Packet Distribution Method and pull-based Object acquisition, the MBSTF tries to establish content ingest at Nmb8; on success the session becomes ESTABLISHED (TS 26.502 V19.6.0 clause 5.3 steps 10 to 15, 10a, 10b, 9a).
- Announcement (clause 5.4). The MBSF compiles an MBS User Service Announcement describing the current Distribution Sessions. It is delivered by unicast at MBS-5, in the MBS User Service Announcement Channel at MBS-4-MC (an MBS Distribution Session in OBJECT_CAROUSEL mode), or exposed by the MBS AF to the MBS Application Provider at MBS-1, for private advertisement at MBS-8 (TS 26.502 V19.6.0 clause 5.4, 4.2.4, 5.3A).
- Activation (clause 5.5.1). At the start time, for a multicast service, the MBSF activates the Multicast MBS Session in the MB-SMF so that UEs can join. It then sets the Distribution Session to ACTIVE in the MBSTF with Nmbstf_MBSDistributionSession_Update (TS 26.502 V19.6.0 clause 5.5.1 steps 1 and 3).
- Reception (clause 5.5.2). The MBS-Aware Application asks the MBSF Client at MBS-6 to activate the User Service; the MBSTF Client receives the MBS data at MBS-4-MC (TS 26.502 V19.6.0 clause 5.5.2 steps 11 and 13).
- Deactivation (clause 5.5.4). At the end time, the MBSF tears down the MBS Session for a broadcast service, or for the last period. For a multicast service with further periods, it only deactivates the MBS Session (TS 26.502 V19.6.0 clause 5.5.4 steps 20 and 21).
In addition, the MBSF compiles an MBS Distribution Session Announcement for each MBS Distribution Session provisioned in the activated MBS User Data Ingest Session and bundles them into an MBS User Service Announcement (TS 26.502 V19.6.0 clause 3.1, 4.5.2 step 6, 4.5.7). This is then made available for unicast retrieval by MBS Clients at reference point MBS-5 and/or for carouselling over an MBS User Service Announcement Channel at reference point MBS-4-MC (TS 26.502 V19.6.0 clause 4.2.4, 4.3.2). The configuration of MBS User Service Announcement Channel(s) – in band with each MBS Distribution Session or out of band in a special-purpose MBS Distribution Session with its own TMGI – may vary between deployments of the MBS System (TS 26.502 V19.6.0 clause 4.3.2, 5.3A).
The syntax for MBS User Service Announcements is specified in TS 26.517 Clause A.2.1 ("MBS User Service Announcement schema"), a JSON-based representation described by a YAML schema file (TS 26.517 V19.3.0 clause A.2.1). (Annex A.1, which would have held an XML-based representation, is marked "Void" in the current Release 19 text; no XML schema is defined (TS 26.517 V19.3.0 clause A.1; Release 17 issues up to TS 26.517 V17.4.0 held the XML schema in clause A.1.1).) This schema allows MBS User Service Announcements for several different MBS User Services currently active in the MBS System to be bundled together for more efficient delivery at reference point MBS-5 and/or MBS-4-MC (TS 26.517 V19.3.0 clause A.2.1; TS 26.502 V19.6.0 clause 4.2.4).
Sources for this page
- MBS User Services, functions and reference points: TS 26.502 V19.6.0, clauses 4.2.1, 4.2.2, 4.2.7, 4.3.1 to 4.3.6 and 4.4.1, table 4.5.6-1; TS 23.247 V20.0.0, clauses 5.3.1 and 9.1.
- Services and APIs: TS 26.502 V19.6.0, clause 7 and tables 7.2-1 and 7.3-1; TS 29.580 V20.0.0, clauses 1, 5.2, 5.3, 6.1.3 and 6.2.3; TS 29.581 V20.0.0, clauses 1, 4.1 and 6.1.3; TS 26.517 V19.3.0, clauses 5.2.11, 8.2.1.3, 8A, 9, 10, 11 and C.3; OpenAPI files of TS 29.580 V20.0.0 and TS 29.581 V20.0.0.
- Distribution methods: TS 26.502 V19.6.0, clauses 3.1, 4.3.3.2, 6.1 and 6.2; TS 26.517 V19.3.0, clauses 6.2.1, 6.2.3.5 and 7.2.1.
- Sessions and their life cycle; provisioning and announcement: TS 26.502 V19.6.0, clauses 3.1, 4.5.2 to 4.5.6, 4.6.1, 5.3, 5.3A, 5.4, 5.5.1, 5.5.2 and 5.5.4.
- Media streaming over MBS: TS 26.501 V20.0.0, clause 4.9.
- Figures: TS 26.502 V19.6.0, figures 4.2.1-1, 4.2.2-1, 4.3.1-1, 4.3.3.2-1, 4.3.3.3-1, 4.5.1-1 and 4.6.1-1.