6 Object Delivery Method

26.5173GPP5G Multicast-Broadcast User ServicesProtocols and FormatsRelease 17TS

6.1 General

The Object Distribution Method supports the transmission of media segments, e.g. CMAF media segments [7] and also non-real-time objects.

The MBS Distribution Session shall be provisioned to accommodate the bit rate of the aggregated object flow, accounting for in-band carriage of metadata units, protocol header overheads, and FEC redundancy (if configured).

6.2 Usage of FLUTE for Object Distribution Method

6.2.1 General

If FLUTE [12] is used to realise the Object Distribution Method, the MBS Distribution Session shall conform to the MBMS Download Profile as defined in clause L.4 of TS 26.346 [7] with the additional requirements in clause 6.2 of the present document.

The usage of this distribution method is identified in the MBS Session Description metadata unit as defined in clause 6.2.3, in particular by the indication of the protocol FLUTE/UDP in combination with the MBS service type.

The MBSTF shall use the Profiled FDT Schema according to clause L.6 of TS 26.346 [7] to describe the object list currently being transmitted in the MBS Distribution Session.

Generally, the end of transmission of an object is the expiry time for the latest FDT instance describing the object. Objects shall be described in an FDT Instance with the Expires attribute. Depending on the operating mode (clause 6.2.4), different settings of the expiry time and different numbers of objects per FDT Instance are recommended.

Inclusion of the @Content-MD5 and @File-ETag FDT Instance attributes is optional.

– The @File-ETag represents the value of the HTTP entity tag as defined in section 3.11 of RFC 2616 [13] which may also serve as the version identifier of the File object described by the FDT Instance.

In order to fetch missing portions of an object, the MBS Client may use the Object Repair services. The Object Repair service is realized as a Byte-Range based File Repair, as specified in clause 9.3.6.2 of TS 26.346 [7].

NOTE: The use of Alternate-Content-Location-1 and Alternate-Content-Location-2 is not supported.

6.2.2 Session Description metadata unit

6.2.2.1 General

The Session Description metadata unit contains the needed information to activate the reception of an Object Distribution Method. The Session Description metadata unit is formatted according to the Session Description Protocol [8]. The Session Description metadata unit for the Object Distribution Method is based on the Session Description parameters as defined in clause 7.3 of TS 26.346 [7] with the following restrictions and extensions.

Restrictions:

– The Mode of MBMS bearer per media parameter (clause 7.3.2.7 of [7]) shall not be used.

– The QoE Metrics (as defined in clauses 7.3.2.0 of [7]) shall not be used

– The Service-language(s) per media (clause 7.3.2.9 of [7]) shall not be used. It is assumed that the service languages are described within an application manifest.

– The Alternative TMGI (clause 7.3.2.12 of [7]) shall not be used.

– The Start time and End time of the session (SDP t-line) shall indicate a superset of the active times specified in the MBS Schedule Description metadata unit, if present. If there is no schedule specified, both values should be set to zero indicating undefined times.

Extensions:

– When an MBS Session is of MBS Service Type Broadcast or when the Multicast MBS Session Type uses a TMGI as MBS Session ID, the MBS service type of MBS Session declaration attribute as defined in clause 6.2.2.2 shall be present in the Session Description.

6.2.2.2 MBS service type of MBS Session

A new MBS service type declaration attribute is defined which results in, e.g.:

– a=mbs-servicetype:broadcast 123869108302929

or:

– a=mbs-servicetype:multicast 123869108302929

The MBS service type declaration attribute shall be used in Session Description metadata to indicate the type of the corresponding MBS Distribution Session as defined in table 6.2.2.2‑1.

Table 6.2.2.2‑1: Assignment of mbs-servicetype attribute value

Attribute value

Meaning

multicast

The MBS Distribution Session is delivered using a Multicast MBS Session.

broadcast

The MBS Distribution Session is delivered using a Broadcast MBS Session.

The MBS service type attribute shall be declared at session level in the Session Description metadata unit. The session level attribute applies to all media entries without a media-level occurrence of the mbs-servicetype attribute. The Session Description metadata unit shall include only a single instance of MBS service type declaration attribute.

Definition:

– mbs-service-type-declaration-line = "a=mbs-servicetype:" ("broadcast"/"multicast" SP tmgi) CRLF

– tmgi = 1*15DIGIT

EXAMPLE:

UK MCC = 234 (MCC Digit 1 = 2; MCC Digit 2 = 3 and MCC Digit 3 = 4)

Vodafone UK MNC = 15

and, with padding, Vodafone UK MNC = 15F (MNC Digit 1 = 1; MNC Digit 2 = 5 and MNC Digit 3 = F)

MBS Service ID = 70A886

Therefore, TMGI = 70A886 32F451 (Hex) or 123869108302929 (Decimal)

The Temporary Mobile Group Identity (tmgi) information element is defined in TS 24.008 [11] including the coding of the fields. Octets 3 to 8 (MBS Service ID, MCC and MNC) shall be placed in the tmgi attribute of the MBS service type declaration line, and are encoded as a decimal number. Octet 3 is the most significant octet. Because this is encoded as a decimal number, leading zeros of the MBS Service ID field may be omitted.

6.2.2.3 SDP examples for FLUTE Session

Listing 6.2.2.3‑1 provides a full example of an SDP description describing a FLUTE-based MBS Distribution Session using the Object Distribution Method with a TMGI as MBS Session Id:

Listing 6.2.2.3‑1: Session Description metadata unit for
FLUTE-based MBS Distribution Session with TMGI

v=0

o=user123 2890844526 2890842807 IN IP6 2201:056D::112E:144A:1E24

s=Object Distribution session example

i=More information

t=2873397496 2873404696

a=mbs-servicetype:broadcast 123869108302929

a=FEC-declaration:0 encoding-id=1

a=source-filter: incl IN IP6 * 2001:210:1:2:240:96FF:FE25:8EC9

a=flute-tsi:3

m=application 12345 FLUTE/UDP 0

c=IN IP6 FF1E:03AD::7F2E:172A:1E24/1

b=1000

a=lang:EN

a=FEC:0

Listing 6.2.2.3‑2 provides a second example of an SDP description describing a FLUTE-based MBS Distribution Session using the Object Distribution Method and which indicates that 25% redundant FEC protection is applied to the FEC encoding of the video Segments of the associated DASH-formatted content:

Listing 6.2.2.3‑2: Session Description metadata unit for
FLUTE-based MBS Distribution Session with TMGI and 25% FEC redundancy

v=0

o=user123 2890844526 2890842807 IN IP6 2201:056D::112E:144A:1E24

s=Object Distribution session carrying 2-hour DASH-packaged programme

i=More information

t=3615124600 3615131800

a=mbs-servicetype:broadcast 123869108302929

a=FEC-declaration:0 encoding-id=1

a=FEC-redundancy-level:0 redundancy-level=25

a=source-filter: incl IN IP6 * 2001:210:1:2:240:96FF:FE25:8EC9

a=flute-tsi:5

m=video 10111 FLUTE/UDP 0

c=IN IP6 FF1E:03AD::7F2E:172A:1E24/1

b=2048

a=lang:EN

6.2.3 Operating modes for Object Distribution Method

6.2.3.1 Introduction

The operating modes for the Object Distribution Method are defined in clause 6.1 of TS 26.502 [6]. Operating modes primarily describe the operation of the MBSTF to convert ingest data into an MBS Distribution Session. The following clauses specify how FLUTE is used for each operating mode.

6.2.3.2 Single object operating mode

Single object operating mode (OBJECT_SINGLE) refers to the case in which a single object is distributed via the Object Distribution Method.

No specific aspects beyond the general provisions in clauses 6.1, 6.2.1 and 6.2.2 apply to this operating mode.

6.2.3.3 Object collection operating mode

Object collection operating mode (OBJECT_COLLECTION) refers to the case in which multiple objects are distributed via the Object Distribution Method.

In this operating mode, the FDT Instance should describe all objects that are part of the collection.

6.2.3.4 Object carousel operating mode

Object carousel operating mode (OBJECT_CAROUSEL) refers to the case in which one or multiple objects are distributed via the Object Distribution Method in a repeated fashion.

The list of objects described in the manifest may be updated over time.

In this operating mode, the FDT Instance should describe all objects that are currently available in the FLUTE Session, considering the potential object update interval.

6.2.3.5 Segment streaming operating mode

Segment streaming operating mode (OBJECT_STREAMING) refers to the case for which a sequence of objects, typically representing timed segments from a timed presentation, are distributed using the Object Distribution Method. The sequence of objects is referred to as an object flow. This operating mode is recommended for streaming DASH or HLS content to a Media Player in the UE using MBS User Services.

NOTE: This operating mode may also be used for non-media object flows, e.g. in the absence of an Application Service Description.

For each object associated with the object flow to be delivered in the MBS distribution session the following information shall be maintained by the MBSTF in an object list:

– The URL used by the MBS-Aware Application to request the object, derived from the object ingest URL.

– The object’s latest availability start time at the MBS Client. After this time, the MBS-Aware Application may request the full object from the MBSTF Client by using the URL of the object.

This value is determined for each object based on an availability start time at the point of ingest (i.e. reception of first byte of the object) combined with a configured distribution offset.

– The object’s availability end time from the MBSTF Client. After this time, the object may no longer be requested by the MBS-Aware Application.

This value is determined for each object based on an availability start time at the point of ingest (i.e. reception of first byte of the object) combined with a configured clean-up time.

The object list is typically extended over time, for example as new objects (e.g. media segments) become available.

The object list may, for example, be provided by an explicit object distribution manifest.

NOTE: An object distribution manifest format is not defined in the present document.

The object list may also be defined by a presentation manifest (e.g. DASH MPD), for example in the case of an Application Service, for which the manifest is provided as part of the User Service Description.

When the Application Service Entry Point document is a DASH MPD, this document is used by the MBSTF to update the object list. The DASH MPD may itself be included in the object list, and hence be delivered in band with the media segment objects it describes on the same MBS Distribution Session. If the content of the Application Service Entry Point document changes during an MBS User Data Ingest Session, the updated document shall be reflected in the MBS Distribution Session at the soonest opportunity.

For the segment streaming operating mode, the MBSTF acts as follows based on the object list:

– The MBSTF shall transmit each object in the object list such that the last packet of the delivered FLUTE transmission object (including any FEC recovery packets, when configured) is available at the MBSTF Client latest at its latest availability start time.

– An FDT Instance object should be sent frequently by the MBSTF, describing all objects of the object list that are not yet fully transmitted.

– The Content-Location element in the FDT Instance shall match the URL of the corresponding object in the object list. The URL may be rewritten by the MBSTF using the Object distribution base URL property of the MBS Distribution Session.

– The File@Expires attribute for each object shall be set such that it is equal to or earlier than its latest availability start time.

– The Cache-Control@Expires attribute shall be used to indicate the availability end time of the object.

– Content-MD5 and File-ETag may optionally be used.