17 Roles for establishment of a collaborative session during session setup
24.3373GPPIP Multimedia (IM) Core Network (CN) subsystem IP Multimedia Subsystem (IMS) inter-UE transferRelease 17Stage 3TS
17.1 Introduction
This clause specifies the procedures for establishment of a collaborative session during both originating and terminating session setup. Procedures are specified for the controller capable UE and the SCC AS.
17.2 Originating session setup
17.2.1 Controller UE
To establish a collaborative session upon originating session setup the controller UE sends a SIP INVITE request to the remote party in accordance with the procedures specified in 3GPP TS 24.229 [7]. The controller UE shall populate the SIP INVITE request as follows:
1) the Request-URI set to the URI of the remote party; and
2) the SDP information as follows:
a) for the media component(s) served by itself, the port numbers of the UE; and
b) for the media component(s) to be established in the controllee UE, as follows:
– the port numbers set to non zero;
– the connection address set to 0.0.0.0 in case of IPv4 or set to domain name within the ".invalid" DNS top-level domain in case of IPv6 as described in IETF RFC 6157 [43]; and
– "a=3gpp.iut.controllee" attribute set to the SIP URI of controllee UE.
Upon receiving a SIP 200 (OK) response with the SDP answer from SCC AS, the controller UE shall send a SIP ACK request to the SCC AS.
17.2.2 SCC AS serving the collaborative session
Upon receiving a SIP INVITE request including SDP containing media with the "a=3gpp.iut.controllee" attribute, the SCC AS shall send a SIP INVITE request to the controllee UE including:
1) the Request-URI set to the URI of the controllee UE which is indicated in the "a= 3gpp. iut.controllee" attribute;
2) the P-Asserted-Identity header field set to the URI of the controller UE; and
3) the SDP information as follows:
a) for the media component(s) that are to be established on the controller UE containing the port number set to zero; and
b) for the media component(s) that are to be established on the controllee UE:
– set the connection address to 0.0.0.0 in case of IPv4 or set to domain name within the ".invalid" DNS top-level domain in case of IPv6 as described in IETF RFC 6157 [43];
– set the port number to non zero; and
– remove the attribute "a=3gpp.iut.controllee".
Upon receiving a SIP 18x provisional response or a SIP 2xx successful response from the controllee UE that includes an SDP answer, the SCC AS shall send a SIP INVITE request to the remote party including:
1) the Request-URI set to the URI of the remote party using the URI from the Request-URI of the original SIP INVITE request;
2) the P-Asserted-Identity header field set to the URI of the controller UE; and
3) the SDP information as follows:
a) for the media component(s) that are to be established on the controller UE containing the port number set to the port numbers of the controller UE; and
b) for the media component(s) that are to be established on the controllee UE containing the port number for the corresponding media received in the media line of the SDP received during the last successful SDP offer/answer exchange.
Upon receiving a SIP 18x provisional response or a SIP 2xx successful response from the remote UE, the SCC AS shall forward the SIP 18x provisional response or a SIP 2xx successful response to the controller UE and send a SIP re-INVTE/UPDATE request to the controllee UE to update the media description based upon the last successful SDP offer/answer exchange with the remote party.
Upon receiving a SIP 200 (OK) response from the controllee UE, the SCC AS shall send a SIP ACK request to the controllee UE.
Editor’s Note: When the SCC AS acts as the third party call controller, the relationship between the header fields received in a SIP message and those in the SIP message generated as a result needs to be described. In particular this needs to cover actions on the Privacy header field.
Upon receiving the second (and the subsequent) SIP 18X response from the second (and the subsequent) remote UE that includes a SDP answer, the SCC AS determines that the call is forked as specified in IETF RFC 3261 [30] and shall perform as follows:
1) if the SCC AS has not yet received any SIP 200 (OK) response from any remote UE for the collaborative session, the SCC AS shall save the SIP 18X response without sending a SIP re-INVITE/UPDATE message to the controllee UE and update the remote UE on the availability of resources at the controller UE and the controllee UE; and
2) if afterwards, the SCC AS receives a SIP 200 (OK) response from the second (or one of the subsequent) remote UE before or without receiving any SIP 200 (OK) response from any other remote UE, the SCC AS shall forward the SIP 200 (OK) respose to the controller UE and send a SIP re-INVTE/UPDATE request to the controllee UE for media re-negotiation with the remote UE based on the saved SIP 18X response from the remote UE that sends the SIP 200 (OK) response. Thus a collaborative session is established between the remote UE that first sends the SIP 200 (OK) response and the controller/controllee UE.
17.3 Terminating session setup
17.3.1 Controller capable UE
Upon receiving a SIP initial INVITE request from the remote party, the controller capable UE shall send a SIP 300 (Multiple Choices) response to the SIP initial INVITE request in accordance with the procedures specified in 3GPP TS 24.229 [7] as follows:
1) a Contact header field for each UE that is to be a participant in the collaborative session (including the controller capable UE if the controller capable UE is also a participant) containing the SIP URI of that UE
NOTE: The SIP URI of the UE needs to be a GRUU if any of the UEs that are participants of the collaborative session share the same public user identity.
2) a Content-Type header field containing the MIME type application/vnd.3gpp.iut+xml; and
3) an application/vnd.3gpp.iut+xml MIME body containing a <controlTransfer> element that contains:
i) an <activeController> element containing the SIP URI of the controller UE for the collaborative session and additionally containing the URI header field with the hname "body" containing SDP for the media type for each of the media (m=) lines in the session set as follows:
– media lines that are not being assigned to the controller capable UE with the port number set to zero
– media line(s) that are to be assigned to the controller capable UE containing the port number for the corresponding media types received in the media line of the SDP offer in the SIP INVITE request; and
ii) a <Controllee> element for each controllee UE that is to be a participant in the collaborative session containing the SIP URI of the controllee UE for the collaborative session and additionally containing the URI header field with the hname "body" containing SDP for the media type for each of the media (m=) lines in the session set as follows:
– media lines that are not being assigned to that controllee UE with the port number set to zero
– media line(s) that are to be assigned to that controllee UE containing the port number for the corresponding media types received in the media line of the SDP offer in the SIP INVITE request;
If the controller capable UE indicated in the SIP 300 (Multiple Choices) response that it will be a participant in the collaborative session then the controller capable UE will receive a SIP INVITE request containing an SDP offer . The controller capable UE shall handle the SIP INVITE request in accordance with the procedures specified in 3GPP TS 24.229 [7].
If the controller capable UE indicated in the SIP 300 (Multiple Choices) response that it will be the controller UE for the collaborative session then the controller capable UE shall when accepting the session behave as a controller UE of the collaborative session, otherwise the controller capable UE shall act as a controllee UE for the collaborative session.
17.3.2 SCC AS serving the collaborative session
When forwarding an initial SIP INVITE request from the remote party to the controller capable UE the SCC AS shall add an Accept header field containing the MIME type application/vnd.3gpp.iut+xml to the SIP INVITE request.
Upon receiving a SIP 300 (Multiple Choices) response containing the MIME body application/vnd.3gpp.iut+xml from the controller capable UE in response to the initial SIP INVITE request, the SCC AS shall:
1) send a SIP ACK request to the controller capable UE in accordance with the procedures specified in 3GPP TS 24.229 [7];
2) authorise the request for the collaborative session setup with the controllee UE(s) identified in the <controllee> element in the MIME body of the SIP 300 (Multiple Choices) response; and
3) consider the UE identified in <activeController> element in the MIME body of the SIP 300 (Multiple Choices) as the controller UE for the collaborative session.
If authorised the SCC AS shall send a SIP 183 (Session Progress) response to the remote UE containing an SDP answer as follows:
1) for all media lines indicated in the MIME body of the SIP 300 (Multiple Choices) response, set the port numbers to the discard port number "9" and set to "a=inactive"; and
2) for any media lines in the original SDP offer that are not indicated in the MIME body of the SIP 300 (Multiple Choices) response, set the port numbers to zero.
To establish the media the SCC AS shall send a SIP INVITE request to each UE identified in the Contact header fields of the SIP 300 (Multiple Choices) response including:
1) the Request-URI set to the URI of the UE from a Contact header field of the SIP 300 (Multiple Choices) response;
2) the P-Asserted-Identity header field containing the identity of the remote UE as received in the P-Asserted-Identity header field from the remote UE in the original SIP INVITE request; and
3) the SDP information for the media component to be transferred to that UE as follows:
a) the media type(s) from the media (m=) lines from the hname "body" URI header field in the corresponding SIP URI in the <activeController> element and <controllee> element(s) in the <controlTransfer> element of the application/vnd.3gpp.iut+xml MIME body of the SIP 300 (Multiple Choices) response; and
b) for media lines which have non zero port numbers the SDP parameters from the corresponding media lines as received in the SDP offer from the remote UE and extended with
i) sendonly directionality; and
ii) bandwidth information with RS set to zero and RR set to zero.
If the SIP final response was a non 2xx response then the SCC AS shall consider the transfer operation failed and the SCC AS shall send to the controller capable UE either a SIP re-INVITE request if a 2xx response has been received from the controller UE or a SIP UPDATE request if a final response has not yet been received from the controller capable UE following the procedures described in 3GPP TS 24.229 [7] as follows:
1) containing SDP reoffering the media component(s) that were offered to the UE that did not accept the SDP offer.
If a response containing an SDP answer is received from a local UE, the SCC AS shall send a SIP UPDATE request on the dialog for the remote leg to the remote UE as specified in 3GPP TS 24.229 [7]. The SCC AS shall:
1) send a SIP UPDATE request containing SDP information as follows:
a) for the transferred media component(s), set the SDP information as from the SDP answer received in the response from the UE; and
b) for all other media components in the collaborative session, include the SDP information as from the previous offer answer exchange with the remote leg.
Upon receipt of a 2xx response for the SIP UPDATE request sent to the remote UE, the SCC AS shall send a SIP UPDATE request to the local UE that terminates the media component accepted in the SDP answer from the remote UE following the procedures described in 3GPP TS 24.229 [7] and set the directionality (i.e. sendrecv/sendonly/recvonly/inactive) attributes associated to the transferred media component to according to the SDP answer received from the remote UE.
Upon receipt of a 2xx response for the SIP INVITE request sent to the controller capable UE, the SCC AS shall send a SIP 2xx response to the remote UE following the procedures described in 3GPP TS 24.229 [7] to establish the session with the remote UE.
Upon receiving a SIP ACK request from the remote UE, the SCC AS shall send a SIP ACK request to each local UE once a SIP 200 (OK) response has been received from the local UE.