10 Media plane handling for MBMS

24.5813GPPMission Critical Video (MCVideo) media plane controlProtocol specificationRelease 18TS

10.1 General

A participating MCVideo function sending transmission control messages and RTP media packets over a MBMS bearer shall support the procedures in the following clauses.

The MBMS bearer can be used for transmissions in group calls. Prior to using the MBMS bearer the participating MCVideo function needs to activate the MBMS bearer and announce the MBMS bearer as described in clause 4.1.2.

Transmission control messages and RTP media packets received over the MBMS subchannel are used as input to the Transmission participant state machine in the same way as Transmission control messages and RTP media packets received over the unicast bearer.

Media plane security procedures for media and Transmission control messages sent over the MBMS subchannels are specified in clause 13.

The MCVideo function can apply FEC to the RTP media packets by generating repair packets to be sent over the MBMS subchannel, or can ask to the BM-SC to apply FEC, as described in 3GPP TS 23.280 [12].

10.2 MBMS subchannel control procedure for the participating MCVideo function

10.2.1 General

If the participating MCVideo function supports the MBMS subchannel control procedure, the participating MCVideo function shall support the behaviour implied by the state machine specified in this clause. The specifications are on the reception of transmission control messages from the controlling MCVideo function, sending of transmission control messages and the allocation/deallocation of MBMS subchannels for a transmission in a group session.

Figure 10.2.1-1 shows the participating MCVideo function MBMS subchannel control state diagram.

Figure 10.2.1-1: Participating MCVideo function MBMS subchannel control state diagram

If a transmission control message or RTP media packet arrives in a state where there are no procedures specified in the clauses below, the participating MCVideo function shall discard the message.

10.2.2 State: ‘Start-stop’

10.2.2.1 General

In this state:

– no instance of the ‘Participating MCVideo function MBMS subchannel control state machine exists;

– a pre-activated MBMS bearer may exist;

– no transmission using a MBMS subchannel control is active but a group session exists where a transmissionover the unicast channel may be ongoing; and

– the participating MCVideo function handles transmission control messages and RTP media packets as for during normal operations described in clause 6.4.

10.2.2.2 Send Map Group To Bearer message (R: Transmission Request, Media Transmission Notification)

Upon receiving a Transmission Request message or a Media Transmission Notification message and when the participating MCVideo function decides that an MBMS subchannel shall be used for a transmissionin an ongoing group session, the participating MCVideo function needs to determine if the MBMS bearer has sufficient capacity for the new conversation. If the new MBMS bearer has sufficient capacity the participating MCVideo function:

1. shall create an instance of the ‘Participating MCVideo function MBMS subchannel control’ state machine;

2. shall send a Map Group To Bearer message over the general purpose MBMS subchannel. The Map Group To Bearer message:

a. shall include TMGI;

b. shall include the identifier of the media stream; and

c. shall include the MCVideo Group identifier field;

3. shall start timer T300 (Transmission);

4. shall start timer T302 (Unmap Group To Bearer);

5. shall enter the ‘M: A transmission is active’ state;

6. if the Transmission Request message was received, shall perform actions as described in clause 6.4.2; and

7. if the Media Transmission Notification message was received, shall perform the actions described in clause 10.2.3.3.

If the MBMS bearer does not have sufficient capacity for the new conversation the participating MCVideo function:

1. may free capacity for the new conversation by transfering an existing conversation over an MBMS bearer to unicast bearers following the procedure in clause 10.2.3.13; or

2. may use the MBMS bearer for the signaling messages, while using unicast bearers for the media message.

10.2.3 State: ‘M: A transmission is active’

10.2.3.1 General

In this state a MBMS subchannel exists and can be used by a group call.

In this state a transmission is active and Media Transmission Notification and Transmission Idle messages and RTP media packets shall be sent over the MBMS subchannel.

In this state timer T300 (Transmission) and timer T301 (Map Group To Bearer re-transmit) are running.

In this state the timer T302 (Unmap Group To Bearer) may be running.

10.2.3.2 Send Transmission Idle message (R: Transmission Idle)

When a Transmission Idle message destined to a transmission participant listening to the MBMS subchannel is received, the participating MCVideo function:

1. shall set the acknowledgment bit to ‘0’ as specified in clause 9.2.2, if not already set; and

2. shall send the received Transmission Idle message over the MBMS subchannel;

3. if the received Transmission Idle message indicates that a Transmission Ack message is expected (i.e. the acknowledgment bit is set to ‘1’ as specified in clause 9.2.2), shall send a Transmission Ack message towards the controlling MCVideo function. The Transmission Ack message:

a. shall include the Message Type field set to ’15’ (Transmission Idle); and

b. shall include the Source field set to ‘1’ (participating MCVideo function is the source);

5. shall restart timer T300 (Transmission); and

6. shall remain in the ‘M: A transmission is active’ state.

10.2.3.3 Send Media Transmission Notification message (R: Media Transmission Notification)

When a Media Transmission Notification message destined to a transmission participant listening to the MBMS subchannel is received, the participating MCVideo function:

1. shall set the acknowledgment bit to ‘0’ as specified in clause 9.2.2, if not already set; and

2. shall send the Media Transmission Notification message over the MBMS subchannel; and

3. if the received Media Transmission Notification message indicates that a Transmission Ack message is expected (i.e. the acknowledgment bit is set to ‘1’ as specified in clause 9.2.2), shall send a Transmission Ack message towards the controlling MCVideo function The Transmission Ack message:

a. shall include the Message Type field set to ‘6’ (Media Transmission Notification); and

b. shall include the Source field set to ‘1’ (participating MCVideo function is the source);

5. shall restart timer T300 (Transmission); and

6. shall remain in the ‘M: A transmission is active’ state.

10.2.3.4 Send any other transmission control message (R: Any other message)

When a transmission control message other than the Media Transmission Notification and Transmission Idle message is received from a transmission participant or received from the transmission control server, the participating MCPVideo function:

1. shall forward the transmission control message as specified in clause 6.4;

2. shall restart timer T300 (Transmission); and

3. shall remain in the ‘M: A transmission is active’ state.

10.2.3.5 Send RTP media packet over the MBMS subchannel (R: RTP packet)

When receiving a RTP media packet destined to one of the MCVideo client listening to the MBMS subchannel, the participating MCVideo function:

NOTE: An RTP media packet not destined to an MCVideo client listening to the MBMS subchannel is forwarded to the MCVideo client over the unicast bearer.

1. shall check if the media packet is already sent over the MBMS subchannel or not;

2. if the RTP media packet is already sent over the MBMS subchannel, shall discard the RTP media packet;

3. if the RTP media packet is not already sent over the MBMS sub channel, shall instruct the media distribution function to send the RTP media packet over the MBMS subchannel;

NOTE: if the media is protected by FEC and the FEC encoding is done by the participation MCVideo function, the media distribution function encodes the RTP media packet before delivery over the MBMS subchannel as specified in clause 10.4.2.

4. shall restart timer T300 (Transmission); and

5. shall remain in the ‘M: A transmission is active’ state.

10.2.3.7 Timer T300 (Transmission) expired

Upon expiry of timer T300 (Transmission), the participating MCVideo function shall:

1. if the application indicates that there is no longer an MCVideo client listening to the MBMS bearer,

a. shall release the instance of the ‘Participating MCVideo function MBMS subchannel management’ state machine used for the transmission; and

b. shall enter the ‘Start-stop’ state; and

2. if the application indicates that there are MCVideo client still listening to the MBMS bearer:

a. shall send the Unmap Group To Bearer message over the MBMS subchannel. The Unmap Group To Bearer message:

i. shall include the MCVideo Group ID field;

b. shall start timer T302 (Unmap Group To Bearer) and initialise counter C17 (Unmap Group To Bearer) to 1; and

c. shall remain in the ‘M: A transmission is active’ state.

10.2.3.8 Timer T301 (Map Group To Bearer) expired

Upon expiry of timer T301 (Map Group To Bearer), the participating MCVideo function:

1. shall send a Map Group To Bearer message over the general purpose MBMS subchannel. The Map Group To Bearer message:

a. shall include a TMGI field;

b. shall include a MBMS Subchannel field; and

c shall include the MCVideo Group identifier field;

2. shall restart timer T301 (Map Group To Bearer); and

3. shall remain in the ‘M: A transmission is active’ state.

10.2.3.9 Timer T302 (Unmap Group To Bearer) expired

Upon expiry of timer T302 (Unmap Group To Bearer) less than the upper limit of counter C17 (Unmap Group To Bearer) times, the participating MCVideo function:

1. shall send the Unmap Group To Bearer message over the MBMS subchannel. The Unmap Group To Bearer message:

a. shall include the MCVideo Group ID field; and

2. shall restart the timer T302 (Map Group To Bearer re-transmit) and increment counter C17 (Unmap Group To Bearer) by 1.

10.2.3.10 Timer T302 (Unmap Group To Bearer) expired Nth time

Upon expiry of timer T302 (Unmap Group To Bearer) by the upper limit of counter C17 (Unmap Group To Bearer), the participating MCVideo function:

1. shall send the Unmap Group To Bearer message over the MBMS subchannel. The Unmap Group To Bearer message:

a. shall include the MCVideo Group ID field; and

2. shall release the instance of the ‘Participating MCVideo function MBMS subchannel management’ state machine used for the transmission.

10.2.3.11 End transmission over the MBMS bearer (End transmission)

Upon receiving an indication from the application and signalling plane that all MCVideo clients now listens to the unicast channel, the participating MCVideo function:

1. shall release the instance of the ‘Participating MCVideo function MBMS subchannel management’ state machine used for the transmission.

10.2.3.12 Group call released

If the control and signalling plane indicates that the group call session is released, the participating MCVideo function:

1. shall send the Unmap Group To Bearer message over the MBMS subchannel. The Unmap Group To Bearer message:

a. shall include the MCVideo Group ID field;

2. shall stop timer T300 (Transmission), timer T301 (Map Group To Bearer) and timer T302 (Unmap Group To Bearer), if running; and

3. shall release the instance of the ‘Participating MCVideo function MBMS subchannel management’ state machine used for the transmission.

10.2.3.13 Move conversation to unicast

If the participating MCVideo server decides that an ongoing conversation over an MBMS bearer shall start using unicast bearers, the pariticpating MCVideo function may send an Application Paging message over the MBMS subchannel associated with this converstation.

NOTE: The Application Paging message can be sent at the same time as the conversation is started using unicast bearers, this will improve the MCVideo access time since the Application Paging message in most cases will reach the client quicker than using normal paging procedures.

10.3 MBMS subchannel control procedure for the MCVideo client

10.3.1 General

An MCVideo client that supports receiving transmission control messages and RTP media packets over an MBMS bearer shall support the procedures in the following clauses.

The procedures in the following clauses assume that an MBMS bearer is active and announced as described in clause 4.1.2.

10.3.2 Transmission over a pre-activated MBMS bearer is started

When receiving a Map Group To Bearer message over the general purpose MBMS subchannel, the MBMS interface in the MCVideo client:

1. shall associate the TMGI in the TMGI field, the MBMS subchannels for video, audio, transmission control and FEC with the MCVideo group identity in the MCVideo Group ID field.

2. if the video and audio media are protected by FEC, as declared within the MBMS bearer announcement (3GPP TS 24.281 [2]), shall instantiate a FEC decoder for this subchannel as specified in suclause 8.2.2 of 3GPP TS 26.346 [13].

10.3.3 Receive transmission control messages, RTP media packets and FEC repair packets over a MBMS subchannel

If the MBMS interface receives RTP media packets or transmission control messages over the MBMS subchannel, the MBMS interface in the MCVideo client:

1. if there is an association between the TMGI and the MBMS subchannels to an ongoing transmission in a group session:

a. shall forward the received transmission control messages to the transmission participant in the transmission; and

b. if the media is protected by FEC, shall forward the RTP media packet to the FEC decoder as specified in 10.4.3;

c. if the media is not protected by FEC, shall forward the RTP media packet to the media mixer.

d. shall forward the FEC repair packet to the FEC decoder.

2. if there is no such association:

a. shall ignore the received transmission control message or received RTP media packet.

10.3.4 Transmission ended

When receiving the Unmap Group To Bearer message over a MBMS subchannel, the MBMS interface in the MCVideo client:

1. shall remove the association between the TMGI, the MBMS subchannels from the transmission in the group session identified by the MCVideo Group ID field, if such an association exists.

10.3.5 Receive Application Paging message

When receiving an Application Paging message over an MBMS subchannel, an MCVideo client in idle mode shall make a service request to enter RRC Connected mode.

10.3.6 Receive MBMS bearer announcement over MBMS bearer

When receiving an MBMS bearer announcement message over an MBMS subchannel, an MCVideo client shall acknowledge this message by sending an MBMS bearer listening status report as as specified in 3GPP TS 24.379 [2] clause 14.2.3.

10.4 Forward error correction

10.4.1 General

Video and audio RTP media packets delivered over a MBMS subchannel can be protected against loss by the application of FEC.

FEC encoding is done after media plane encryption and FEC decoding is done before media plane decryption.

10.4.2 Participating MCVideo function procedure for FEC

If the participating MCVideo function decides to apply FEC to protect a given MBMS subchannel, the participating MCVideo function:

1) shall declare the usage of FEC within the MBMS bearer announcement, as specified in 3GPP TS 24.281 [2];

2) if the participating MCVideo function does the FEC encoding,

a) the participating MCVideo function shall encode video and audio RTP packets as specified in clause 8.2.2.4 of 3GPP TS 26.346 [13] before sending them over the MBMS subchannel;

b) shall generate repair packets according the mechanism specified in clause 8.2.2 of 3GPP TS 26.346 [13] with the UDP flow identity for video set to 1 and the UDP flow identity for audio set to 2; and

c) send these repair packets over the MBMS subchannel on the destination port given into the Map Group To Bearer message.

10.4.3 MCVideo client procedure for FEC

If usage of FEC is declared within the MBMS bearer announcement, as specified in 3GPP TS 24.281 [2], the MC Video client:

1) shall decode the received video and audio RTP packets according the mechanism specified in clause 8.2.2 of 3GPP TS 26.346 [13] with the UDP flow identity for video set to 1 and the UDP flow identity for audio set to 2; and2) shall forward the decoded RTP media packets to the media mixer.

10.5 Additional MBMS procedures

10.5.1 Group dynamic data notifications

Prior to using the MBMS bearer the participating MCVideo function needs to activate the MBMS bearer and announce the MBMS bearer as described in clause 4.1.2.1. The participating MCVideo function uses the listening status reports to decide for which users the participating MCVideo function sends the group dynamic data notifications over MBMS, and for which users the participating MCVideo function continues to use unicast bearers.

This procedure is used when MCVideo clients subscribe to group dynamic data. When the terminating participating function receives a SIP NOTIFY request towards a user listening to the MBMS subchannel that comes from the controlling MCVideo function and is related to a subscription for group dynamic data, the participating MCVideo function shall:

1. respond to the SIP NOTIFY request with a SIP 200 (OK) request;

2. map the information in the SIP NOTIFY request to the information elements in clause 9.4.3; and

3. send the Group Dynamic Data Notify message over the MBMS bearer.