3GPP TR 23.701: Technical Report
3GPP TR 23.701: Technical Report
3GPP TR 23.701: Technical Report
Stage 2
(Release 12)
The present document has been developed within the 3rd Generation Partnership Project (3GPP TM) and may be further elaborated for the purposes of 3GPP.
The present document has not been subject to any approval process by the 3GPP Organizational Partners and shall not be implemented.
This Specification is provided for future development work within 3GPP only. The Organizational Partners accept no liability for any use of this
Specification.
Specifications and reports for implementation of the 3GPP TM system should be obtained via the 3GPP Organizational Partners' Publications Offices.
Release 12 2 3GPP TR 23.701 V12.0.0 (2013-12)
Keywords
3GPP, IMS, LTE, Real-Time, Web
3GPP
Postal address
Internet
http://www.3gpp.org
Copyright Notification
© 2013, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TTA, TTC).
All rights reserved.
UMTS™ is a Trade Mark of ETSI registered for the benefit of its members
3GPP™ is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners
LTE™ is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners
GSM® and the GSM logo are registered and owned by the GSM Association
3GPP
Release 12 3 3GPP TR 23.701 V12.0.0 (2013-12)
Contents
Foreword.....................................................................................................................................................6
1 Scope.................................................................................................................................................7
2 References.........................................................................................................................................7
3 Abbreviations....................................................................................................................................8
4 Assumptions and architectural requirements....................................................................................9
4.1 Assumptions................................................................................................................................................9
4.2 Architectural requirements........................................................................................................................10
5 Solutions..........................................................................................................................................10
5.1 Solution 1..................................................................................................................................................11
5.1.1 Overview.............................................................................................................................................11
5.1.2 Description of the solution - Procedures.............................................................................................11
5.1.2.0 General Assumptions.....................................................................................................................11
5.1.2.1 Registration....................................................................................................................................12
5.1.2.1.1 WebRTC client-initiated registration.......................................................................................12
5.1.2.1.2 IWF acting as an IP-PBX.........................................................................................................13
5.1.2.2 Session handing.............................................................................................................................14
5.1.2.2.0 Assumptions.............................................................................................................................14
5.1.2.2.1 Handling of outgoing sessions.................................................................................................14
5.1.2.2.2 Handling of incoming sessions................................................................................................15
5.1.2.3 Extended role of the P-CSCF to handle interoperability between a WebRTC client and an
existing 3GPP UE..........................................................................................................................15
5.1.3 Impact on existing entities and interfaces...........................................................................................16
5.1.4 Solution evaluation..............................................................................................................................16
5.2 Solution 2..................................................................................................................................................16
5.2.1 Overview.............................................................................................................................................16
5.2.2 Description of the solution - Procedures.............................................................................................16
5.2.2.1 Functions of the WebRTC Signalling Function............................................................................16
5.2.2.2 Functions of the WebRTC Media Function...................................................................................18
5.2.2.3 Functions of the PCC framework..................................................................................................18
5.2.2.4 IMS registration and authentication...............................................................................................19
5.2.2.4.0 General.....................................................................................................................................19
5.2.2.4.1 Registration: WebRTC client uses SIP over WebSockets.......................................................19
5.2.2.4.2 Registration: WebRTC client uses Web Authentication..........................................................22
5.2.2.5 Origination and termination...........................................................................................................22
5.2.3 Impact on existing entities and interfaces...........................................................................................23
5.2.4 Solution evaluation..............................................................................................................................23
5.3 Solution 3..................................................................................................................................................23
5.3.1 Overview.............................................................................................................................................23
5.3.1.1 Assumptions...................................................................................................................................23
5.3.1.2 Requirements.................................................................................................................................23
5.3.1.2.0 Introduction..............................................................................................................................23
5.3.1.2.1 Supported access networks......................................................................................................23
5.3.1.2.2 Media processing.....................................................................................................................24
5.3.1.2.3 QoS...........................................................................................................................................24
5.3.1.2.4 User identity and authentication...............................................................................................24
5.3.1.2.5 Service architecture..................................................................................................................24
5.3.1.2.6 Subscriber data management....................................................................................................24
5.3.1.3 Signalling architecture...................................................................................................................24
5.3.1.4 Functional entities..........................................................................................................................25
5.3.1.4.1 WIC (WebRTC IMS Client)....................................................................................................25
5.3.1.4.2 WWSF (WebRTC Web Server Function)................................................................................25
5.3.1.4.3 WAAF (WebRTC Access Aggregator Function)....................................................................26
5.3.1.4.4 P-CSCF....................................................................................................................................26
5.3.1.4.5 AGW (Access GateWay).........................................................................................................26
3GPP
Release 12 4 3GPP TR 23.701 V12.0.0 (2013-12)
3GPP
Release 12 5 3GPP TR 23.701 V12.0.0 (2013-12)
3GPP
Release 12 6 3GPP TR 23.701 V12.0.0 (2013-12)
Foreword
This Technical Report has been produced by the 3rd Generation Partnership Project (3GPP).
The contents of the present document are subject to continuing work within the TSG and may change following formal
TSG approval. Should the TSG modify the contents of the present document, it will be re-released by the TSG with an
identifying change of release date and an increase in version number as follows:
Version x.y.z
where:
y the second digit is incremented for all changes of substance, i.e. technical enhancements, corrections,
updates, etc.
z the third digit is incremented when editorial only changes have been incorporated in the document.
3GPP
Release 12 7 3GPP TR 23.701 V12.0.0 (2013-12)
1 Scope
The present document contains a study on the potential modifications of the IMS architecture and stage 2 procedures as
required by the support of Web Real Time Communication (WebRTC) clients access to IMS.
For this purpose the present document addresses (non exhaustive list):
- Architectural impacts for the support of different kinds of clients (operator / Third party) in different scenarios.
- The architecture (including the support of WebRTC clients access to IMS for clients on a 3GPP UE that are
roaming at access level) for following scenarios:
- when the UE is not roaming at access level or when home-routed access is used (these scenarios have priority
for the work).
- architectural impacts related to the use of specific codecs: the study addresses transcoding aspects but also
the case where the use of 3GPP codecs is possible from the UE.
NOTE: How a WebRTC client / the browser can access to 3GPP codecs on the UE is out of the SA WG2 study
scope.
- Charging.
- PCC aspects.
- Usage of the 3GPP Packet Core Network to support WebRTC clients access to IMS.
For example the following points had been studied: the PDN connection / PDP context to be used by WebRTC traffic
especially in roaming cases and the QoS control, e.g. how a WebRTC client can use the QoS supported / delivered by
the 3GPP Packet Core.
2 References
The following documents contain provisions which, through reference in this text, constitute provisions of the present
document.
- References are either specific (identified by date of publication, edition number, version number, etc.) or
non-specific.
- For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including
a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same
Release as the present document.
3GPP
Release 12 8 3GPP TR 23.701 V12.0.0 (2013-12)
[5] OMA Work Item 0284: "RESTful Network API for VVoIP".
[7] IETF RFC 5761: "Multiplexing RTP Data and Control Packets on a Single Port".
[9] 3GPP TS 24.229: "IP multimedia call control protocol based on Session Initiation Protocol (SIP)
and Session Description Protocol (SDP); Stage 3".
[12] IETF RFC 5763: "Framework for Establishing a Secure Real-time Transport Protocol (SRTP)
Security Context Using Datagram Transport Layer Security (DTLS)".
[13] 3GPP TS 22.228: "Service requirements for the Internet Protocol (IP) multimedia core network
subsystem (IMS); Stage 1".
[14] 3GPP TS 33.203: "3G security; Access security for IP-based services".
[15] IETF RFC 6714: "Connection Establishment for Media Anchoring (CEMA) for the Message
Session Relay Protocol (MSRP)".
[16] IETF RFC 5389: "Session Traversal Utilities for NAT (STUN)".
3 Abbreviations
For the purposes of the present document, the abbreviations given in TR 21.905 [1] and the following apply. An
abbreviation defined in the present document takes precedence over the definition of the same abbreviation, if any, in
TR 21.905 [1].
3GPP
Release 12 9 3GPP TR 23.701 V12.0.0 (2013-12)
4.1 Assumptions
- SDP offer/answer exchange is the mechanism used for media plane feature negotiation.
- In this release, the architecture does not support media multiplexing that is defined for WebRTC clients.
NOTE 1: A JS downloaded in a WIC accessing to IMS services is not expected to allow usage of media
multiplexing in the browser. If an SDP offer with media multiplexing was nevertheless sent to the
network the part of the SDP offer associated with media multiplexing would be removed at the entry of
the IMS network.
- In this release, WebRTC specific media plane extensions will be handled at the access edge and will not be
propagated to other IMS functions.
- In this release, in case of a network based interworking between WebRTC and IMS, for 3GPP and EPC access
from a WebRTC client:
- There is no assumption on the APN being used by the WebRTC client, e.g. the signalling sent by the
WebRTC client may use the same APN than the one used for plain Internet service.
- Subject to inter-operator agreement and appropriate network configuration, EPC/GPRS roaming is supported
for WebRTC client access using any available APN. Either LBO or home routing can be used subject to
reachability.
- Use of available techniques to select preferred access technologies and APNs, and to provide IP address
continuity, are allowed but not described.
- When the WebRTC client is served by an IP-CAN in a configuration that supports PCC, it shall be possible
to request QoS within the IP-CAN for WebRTC media.
NOTE 2: To ensure full end to end QoS support, proper IP forwarding policies should be set in the path between
the PGW and the Functions supporting media interworking to the IMS.
3GPP
Release 12 10 3GPP TR 23.701 V12.0.0 (2013-12)
- QoS can be provided in configurations where the IMS can identify the transport (TCP-UDP/IP) addresses
handled by the PCEF and where based on this information PCC functions can identify the UE media flows to
prioritize.
- WebRTC clients shall have access to the IMS through one or more mediation function(s) for signalling and
media.
- The later normative work on WebRTC shall support WebRTC client access to the following media protocols (in
addition to audio and video): MSRP, BFCP and T.140.
Editor's note: For 3GPP and EPC access, the assumptions of the underlying EPC network usage is FFS (including
EPC roaming, LBO, APN handling/selection, access network selection, mobility issues etc).
The following requirements for the signalling plane between WebRTC and IMS are defined:
- The architecture shall support control plane interworking procedures between a WebRTC client and IMS.
- The architecture shall support negotiation to ensure that RTP streams are not multiplexed onto the same port if
entities anchoring the session media path in the IMS domain do not support that capability.
- The architecture shall support negotiation to ensure that RTP and RTCP flows of an RTP stream are not
multiplexed onto the same port if entities anchoring the session media path in the IMS domain do not support
that capability.
- The architecture shall support negotiation of media plane interworking between WebRTC and IMS.
- The architecture shall support negotiation of ICE procedures towards the WebRTC client to enable connectivity
checks for establishing the media path.
The following requirements for the media plane between WebRTC and IMS are defined:
- The architecture shall support transcoding that may be required for audio and video traffic.
- The architecture shall support any necessary interworking between media plane security mechanisms provided
by WebRTC and IMS.
- The architecture may support (de)multiplexing of RTP and RTCP flows onto the same port.
- The architecture shall support STUN for the WebRTC "consent freshness" feature.
NOTE: Any interworking between disparate media plane procedures require e2ae procedures.
The architecture shall fulfil the following PCC related impacts for WebRTC media transport:
5 Solutions
Editor's note: The solution description needs to be updated to other agreed requirements.
3GPP
Release 12 11 3GPP TR 23.701 V12.0.0 (2013-12)
5.1 Solution 1
5.1.1 Overview
In this alternative depicted in Figure 5.1.1-1, the WebRTC client communicates at the control plane with an
InterWorking Function (IWF), the rtcWeb IWF, via the Gweb reference point.
The rtcWeb IWF communicates with the P-CSCF via the Gm reference point.
The rtcWeb IWF unit is typically owned by the IMS service provider, but may be owned by a third party as well.
- The webRTC client has a downloaded Java script that supports the sip webSocket protocol.
- The rtcWeb IWF shall support all the necessary interworking aspects at the control plane to interwork with the
P-CSCF.
- The P-CSCF shall support the necessary extensions to support rtcWeb clients.
- All interworking aspects at the media plane, in support of the webRTC client, are implemented within the IMS
access gateway, where the media is anchored.
- The protocol between the webRTC client and IWF is out of cope.
- IMS Access Gateway shall support DTLS /SRTP and perform necessary media adaptation.
3GPP
Release 12 12 3GPP TR 23.701 V12.0.0 (2013-12)
5.1.2.1 Registration
The call flow for this case depicted in Figure 5.1.2.1.1-1 has the following assumptions:
- The WebRTC client is aware of the IMS identity (IMPU) allocated to it as well as the associated credentials. The
acquisition of the above by the WebRTC client is out of scope.
- Digest-Based authentication scheme is used between the WebRTC client and IWF, and between IWF and the
IMS network.
- The WebRTC has only WebRTC subscription with the IMS service provider.
- The WebRTC client initiates registration by sending a Register request to the IWF that includes the IMPU as the
username.
- Steps 2 to 6c are identical to a regular IMS registration procedure according to TS 24.229 [9].
- In step 6d, the WebRTC client is challenged. Note that in step 4a the I-CSCF derives the IMPI as specified in
TS 24.229 [9].
- In step 7, the WebRTC client resends the Register Request with the proper authentication information.
3GPP
Release 12 13 3GPP TR 23.701 V12.0.0 (2013-12)
Assumptions
- The WebRTC client has an IMS identity allocated to it by the IWF. The IWF maintains the binding between the
WebRTC client user name and the IMS IMPU identity.
- The IWF is a regular IMS user and initiates IMS registration in steps 1 till 10c. These steps are identical to an
IMS registration according to TS 24.229 [9].
- In step 10c, the IWF receives the wIMPU allocated to the IWF within the ISR.
- In step 12, the WebRTC client registers with the IWF and includes its username and appropriate credentials,
such as a password. These are access related credentials.
- After successful authentication, the IWF creates a binding between the username and the specific IMPU
allocated to the WebRTC client. The IWF then sends a success response to the WebRTC client.
Editor's note: It is FFS whether the allocated specific IMPU by the IWF is returned to the WebRTC client.
3GPP
Release 12 14 3GPP TR 23.701 V12.0.0 (2013-12)
5.1.2.2.0 Assumptions
The call flows depicted in Figures 5.1.2.2.1-1, and 5.1.2.2.1-2 assumes the following:
- The P-CSCF is conformant to TS 24.229 [9] clause 5.7.2.7 (IMS-ALG in P-CSCF for support for ICE) and thus
performs ICE procedures towards the IWF/WebRTC client. The IMS Access gateway, having via P-CSCF
received ICE credentials from the WebRTC client and having sent its own back, intercepts and responds to all
ICE STUN messages received from the WebRTC client.
- The IMS Access Gateway shall be able to receive a STUN request for consent freshness and responds to it.
- The signalling between the WebRTC client and the IWF includes the necessary addressing information to enable
ICE connectivity checks to be performed between the WebRTC Client and the IMS Access Gateway.
- The signalling between the WebRTC client and the IWF includes the necessary addressing information to enable
STUN consent signalling towards the IMS Access Gateway.
- In step 1, the WebRTC client initiates an IMS session by sending a Setup Session request to the IWF that
includes the target user.
- Steps 2 to 8 follow regular IMS session setup procedures according to TS 24.229 [9].
- In step8b, the WebRTC client receives a confirmation that session has been accepted. ACK is not shown for
brevity.
3GPP
Release 12 15 3GPP TR 23.701 V12.0.0 (2013-12)
- Steps 1 to 6 represent an incoming IMS session to a WebRTC client according to TS 24.229 [9].
- In step 7, the IWF sends an Incoming Session Request to the WebRTC client.
- Steps 9 to 10b follow regular IMS session setup procedure according to TS 24.229 [9].
- At reception of an offer from IWF/WebRTC client that includes information that the offerer prefers multiplexing
an RTP stream and its related RTCP stream if the answerer also can do this, then the P-CSCF shall downgrade
the offer to not indicate preference for such multiplexing.
- At reception of an offer from IWF/WebRTC client that includes information that the offerer prefers multiplexing
the offered RTP streams if the answerer also can do this, then the P-CSCF shall downgrade the offer to not
indicate preference for such multiplexing.
- The P-CSCF additionally will handle all necessary changes to the SDP offer received from the WebRTC client,
if applicable, in accordance with operator policies and supported codecs.
3GPP
Release 12 16 3GPP TR 23.701 V12.0.0 (2013-12)
5.2 Solution 2
5.2.1 Overview
NOTE 1: Over the Gwebrtc interface several protocol options are possible, e.g. SIPoWebSockets, REST.
NOTE 2: It is an implementation decision whether to implement the WebRTC Signalling Function as a standalone
entity or collocated with an existing entity such as the P-CSCF.
NOTE 3: It is an implementation decision whether to implement the WebRTC Media Function as a standalone entity
or collocated with an existing entity such as the IMS-AGW.
NOTE 4: Enhancements to Rx, Gx and Iq interfaces may be required, which is why the figure 5.2.1-2 shows Rx(+),
Gx(+) and Iq(+).
NOTE 5: The architecture the uses 3GPP access via EPC, but in principle the architecture supports any IP-CAN.
Gx(+) might not be applicably for all IP-CANs.
1. The WebRTC Signalling Function shall perform interworking between the protocol used on the Gwebrtc
interface and SIP used on the Mw interface.
3GPP
Release 12 17 3GPP TR 23.701 V12.0.0 (2013-12)
NOTE 1: WebRTC does not define a signalling protocol; it just defines that SDP and offer/answer exchanges must
be used, such that the endpoints can agree on the actual media flows to be exchanged (see draft-ietf-
rtcweb-jsep-03 [3]).
2. SDP mediation
a. Signalling of RTP multiplexing [6]. The WebRTC Signalling Function shall either negotiate with the UE that
RTP multiplexing is not used or shall negotiate RTP multiplexing towards the UE, but not towards the IMS.
b. Use of the SDP extension for signalling of RTP and RTCP multiplexing [7]. The WebRTC Signalling
Function may either negotiate with the UE that RTP and RTCP multiplexing is not used or may negotiate
RTP and RTCP multiplexing towards the UE, but not towards the IMS UE.
c. ICE handling: The WebRTC Signalling Function shall negotiate the usage of ICE with the UE. It is
anticipated that procedures similar to those described in TS 24.229 [9] clause 5.7 can be used.
d. Possible support of trickle ICE signalling [8]. The WebRTC Signalling Function shall either negotiate with
the UE that trickle ICE is not used or shall negotiate that trickle ICE is used towards the UE, but not towards
the IMS.
Editor's note: The support for trickle ICE (which is not mandatory but speeds up session set-up) is FFS.
e. Transcoding: The WebRTC Signalling Function may offer transcoding between audio codecs used in the UE
and used by the IMS.
f. The WebRTC Signalling Function shall configure the WebRTC Media Function according to the negotiated
capabilities.
3GPP
Release 12 18 3GPP TR 23.701 V12.0.0 (2013-12)
3. The WebRTC Media Function shall terminate DTLS-SRTP and mediate towards the RTP variant used in the
IMS.
4. The WebRTC Media Function may perform congestion control towards the UE as defined in draft-ietf-avtcore-
rtp-circuit-breakers-02 [10] (using "RTP circuit breakers").
5. The WebRTC Media Function shall support STUN usage to signal consent to keep receiving media streams from
the remote peer (see draft-muthu-behave-consent-freshness-03 [11]).
NOTE 2: References for DTLS-SRTP in IETF RFC 5763 [12], Circuit breakers in draft-ietf-avtcore-rtp-circuit-
breakers-02 [10], STUN consent freshness in draft-muthu-behave-consent-freshness-03 [11].
1. The PCC system is used to support the establishment of bearers for real-time media of WebRTC users.
2. The PCC system requires the WebRTC Signalling GW to act as an AF in the sense of the 3GPP PCC
architecture and support the Rx interface - or a variant of the Rx interface.
3GPP
Release 12 19 3GPP TR 23.701 V12.0.0 (2013-12)
5.2.2.4.0 General
The role of the WebRTC Signalling Function is similar to a P-CSCF. The WebRTC Signalling Function uses the Mw
interface towards the IMS.
Editor's note: Third Party WebRTC Signalling Function support needs further study.
Editor's note: The WebRTC Signalling Function needs to be renamed to avoid ambiguity with other solutions.
- The WebRTC client uses SIP over WebSockets to register with the IMS.
- The WebRTC client performs authentication with the WebRTC Signalling function and the WebRTC Signalling
function performs registration with the IMS.
3GPP
Release 12 20 3GPP TR 23.701 V12.0.0 (2013-12)
Figure 5.2.2.4.1-1: Registration using SIP over WebSockets (S-CSCF performs authentication)
0. The WebRTC client establishes a secure WebSocket connection with the WebRTC Signalling Function as
described in draft-ietf-sipcore-sip-websocket-09 [4].
1. The UE sends REGISTER, containing the IMPI or IMPU towards the WebRTC Signalling Function.
Editor's note: Whether the same or a different IMPI/IMPU is used as for regular IMS registration is FFS.
2. The request is being forward from the WebRTC Signalling Function to the I-CSCF in the home domain via Mw.
The request requires that sufficient information for authentication in IMS is provided.
NOTE 2: Network specific information that the S-CSCF expects in the REGISTER is the same as for P-CSCF, e.g.
visited network identifier, and can be configured.
3GPP
Release 12 21 3GPP TR 23.701 V12.0.0 (2013-12)
3. The I-CSCF requests the HSS for information related to the Subscriber registration status. The HSS returns the
S-CSCF required capabilities and the I-CSCF uses this information to select a suitable S-CSCF.
5. As the REGISTER request was sent without integrity protection to the WebRTC Signalling Function, the S-
CSCF shall challenge the request and requires the necessary information from the HSS.
6. The S-CSCF selects an authentication vector for use in the authentication challenge according TS 33.203 [14].
7-8. The authentication challenge is sent in the 401 Unauthorized responses towards the WebRTC Signalling
Function.
9. The WebRTC Signalling Functions sends the authentication challenge to the UE.
10. Upon receiving the Unauthorized response, the UE extracts the relevant information and calculates the
authentication challenge response.
11. The authentication challenge response is sent to the WebRTC Signalling Function.
12. The authentication challenge response is put into the Authorization header and sent back towards the registrar in
the REGISTER request.
14. The I-CSCF requests information related to the Subscriber registration status and the HSS returns the
S-CSCF name which was previously selected in step 3.
15. The S-CSCF checks the received challenge response. If the check is successful then the user has been
authenticated and the public user identity is registered in the S-CSCF.
16. The S-CSCF informs the HSS that the user has been registered at this instance.
17-18. The S-CSCF sends a 200 (OK) response to the I-CSCF and the WebRTC Signalling Function indicating that
registration was successful.
19. The WebRTC Signalling Function informs the UE that registration was successful.
3GPP
Release 12 22 3GPP TR 23.701 V12.0.0 (2013-12)
Figure 5.2.2.4.2-1: Registration using Web Authentication (WebRTC Signalling Function performs
authentication)
1. The UE starts the web authentication procedure with WebRTC Signalling Function for requesting registration
with the IMS (e.g. using HTTP Digest). The UE provides a username/password or an access token; the WebRTC
Signalling Function validates them and authenticates the user by means outside the scope of this specification. It
maps the user identity obtained during authentication to the corresponding IMS credentials.
2. The WebRTC Signalling Function provides the UA role for SIP REGISTER and determines the IMPI and IMPU
assigned to the user (e.g. via a data base query) before sending the REGISTER towards the I-CSCF in the home
domain via Mw. In addition the WebRTC Signalling Function indicates that no authentication of the user by the
IMS is required as the WebRTC Signalling Function is part of the trust domain.
3. The I-CSCF requests the HSS for information related to the subscriber registration status. The HSS returns the S-
CSCF required capabilities and the I-CSCF uses this information to select a suitable S-CSCF.
5. As the REGISTER request indicates that the user has already been authenticated the S-CSCF informs the HSS
that the user has been registered at this instance.
3GPP
Release 12 23 3GPP TR 23.701 V12.0.0 (2013-12)
5.3 Solution 3
5.3.1 Overview
5.3.1.1 Assumptions
In clause 5.3, the word " UE" may correspond to a non-3GPP terminal.
This clause include assumptions specific to this solution and are in addition to those listed in clause 4.1.
- The UE architecture includes a JS execution environment (typically a browser) that supports the WebRTC APIs.
The WebRTC IMS client is a JS application that is downloaded from the network as needed.
- For session signalling between the UE and the network, only the information exchange needed to enable the
supported options for user identification, authentication and registration in IMS will be standardized.
Other aspects of the signalling protocol between the UE and the network will not be standardized in Release 12.
For example, SIP over WebSockets and RESTful HTTP are two possible options.
NOTE 1: For ease of specification and similarity to Gm, the call flows associated with the architecture assume the
use of SIP over WebSockets as the signalling protocol between the client and the network. This does not
preclude the use of signalling protocol alternatives.
- The web server hosting and downloading the WebRTC client resides within the home IMS or a supported third
party network.
NOTE 2: This restriction is due to the need for a business relationship between the home IMS operator and the third
party to ensure use of a compatible client application and to establish the necessary security relationships.
5.3.1.2 Requirements
5.3.1.2.0 Introduction
The following clauses include requirements specific to this solution and are in addition to those listed in clause 4.2.
Only the solution requirements in clause 5.3.1.2.4 on user identity and authentication are crucial to the basic
architecture. All other solution requirements describe additional capabilities/characteristics of the architecture that can
be modified without significantly impacting the basic architecture.
- For signalling and media via 3GPP or EPC access, the WebRTC IMS client shall be able to use the ("default")
APN for "internet".
3GPP
Release 12 24 3GPP TR 23.701 V12.0.0 (2013-12)
- The WebRTC IMS client shall be able to function regardless of breakout location (i.e., location of PGW/GGSN)
in HPLMN or VPLMN.
- The architecture shall support the WebRTC IMS client use of the following protocols over DataChannels (as
defined for WebRTC) and shall support interworking at the access edge with the transport options supported for
these protocols by IMS: MSRP, BFCP and T.140.
5.3.1.2.3 QoS
- The WebRTC IMS architecture shall allow for PCC access and control for the provision of appropriate QoS to
WebRTC media flows using the internet APN via 3GPP access networks.
NOTE: Media flows using the internet APN can only receive priority treatment within the access network and not
in the internet. While the access network without QoS is usually the largest potential contributor to
service problems for media flows, lack of QoS in the internet remains an issue.
- The architecture shall support the option for the WebRTC IMS client to use a standard web
identity/authentication mechanism for IMS registration, with the following characteristics:
- The architecture shall allow either the IMS operator or an authorized third party to identify and authenticate
the user of a WebRTC IMS client for access to IMS.
- The architecture shall support use of any standard web identity/authentication mechanism that satisfies the
security requirements of the IMS operator and/or third party. No particular mechanism will be specified.
- The architecture shall support assignment of IMS identities to a WebRTC IMS client based on the
corresponding authenticated web identity. The assigning entity shall only be able to assign valid IMS
identities allocated to it by the IMS. The method of assigning IMS identities is a matter of local policy for the
assigning entity.
NOTE 1: All network entities shown are functional entities and are not intended to suggest any physical realization.
Individual functional entities (e.g., WWSF, WAAF, and existing IMS functions) may be co-located in any
reasonable combination depending on the absence/presence of a third party.
3GPP
Release 12 25 3GPP TR 23.701 V12.0.0 (2013-12)
NOTE 2: The presence of dashed elements in the figure depends on the configuration. The W2 reference point is
only applicable to the web identity/authentication scenario in scenario 3 of clause 5.3.2.1.1.
PCC functional elements are present only for 3GPP access with QoS.
The corresponding PCC elements for fixed access are also optionally supported but not shown.
The NAT in figure 5.3.1.3-1 is meant for the access to IMS over a Wireline Access.
- The WWSF is located either in the home IMS or a third party network authorized by the home IMS;
- The WWSF provides the web page presenting the user interface to the user for IMS access;
- The WWSF provides for the downloading of the JS WIC application to the browser on the UE;
- If the WIC does not enforce the use of IMS digest authentication for the user, the WWSF arranges for
identification and authentication of the user using web procedures;
- The WWSF manages the correct and consistent allocation of authorized IMS identities to WICs associated with
authenticated web identities;
3GPP
Release 12 26 3GPP TR 23.701 V12.0.0 (2013-12)
- The WAAF is usually located in the home IMS but can be located in an authorized third party network if the
WWSF is also in the third party network;
- The WAAF aggregates signalling traffic (e.g. SIP over WSS) from multiple WICs towards the P-CSCF (e.g. in
scenario 3 of clause 5.3.2.1.1);
- The WAAF can act as the SIP registrar for WICs that are allocated IMS identities by a third party from wildcard
identities assigned to the third party;
- The WAAF verifies the correct allocation of IMS identities by a third party;
- When located in a third party network, the WAAF can optionally provide communication services to the WIC in
addition to those provided by IMS.
5.3.1.4.4 P-CSCF
The P-CSCF is enhanced to control the AGW functions needed to adapt the WIC bearer flows for IMS.
The P-CSCF is enhanced with the following characteristics and functions to support WICs:
- The P-CSCF maintains secure transport connections to known WAAF entities in the home and third party
networks;
- The P-CSCF controls the media plane interworking functions provided by the AGW, including those additional
media plane functions specific to WebRTC.
NOTE 1: WebRTC only supports audio and video media using RTP transport, and data media using WebRTC
DataChannels. Hence any media plane protocol other than audio and video must use WebRTC
DataChannels or HTTP for transport.
- The AGW performs e2ae procedures for media protocols specific to WebRTC, including ICE, media consent,
and DTLS-SRTP.
- The AGW performs any transcoding needed for audio and video codecs supported by the browser.
- When GTT service is requested, the AGW performs transport level interworking between T.140 over
DataChannels and other T.140 transport options supported by IMS.
- When MSRP is requested, the AGW performs as an MSRP B2BUA between MSRP over DataChannels and the
other MSRP transport options supported by IMS.
NOTE 2: IETF RFC 6714 [15] describes the CEMA (Connection Establishment for Media Anchoring) MSRP
extension to enable the use of transport-only relays between MSRP endpoints. Without the CEMA
extension, an MSRP endpoint shall signal an URI or path of URIs through which it is reachable.
As described in IETF RFC 6714 [15], since IMS does not require support of CEMA for MSRP nodes, the
architecture requires an MSRP B2BUA to interwork an endpoint using MSRP over DataChannels with
endpoints using other MSRP transport options.
- When BFCP service is requested for conference floor control, the AGW performs transport level interworking
between BFCP over DataChannels and other BFCP transport options supported by IMS.
3GPP
Release 12 27 3GPP TR 23.701 V12.0.0 (2013-12)
Gm provides for transport of SIP messages between a WAAF and a P-CSCF for all WICs managed by the WAAF.
W3 carries the user plane between the UE and the network (see clause 5.3.1.6).
5.3.1.6.0 General
The AGW is the media plane interworking element with the functions described in clause 5.3.1.4.5.
The AGW provides e2ae media procedures for ICE, periodic consent, DTLS-SRTP, transcoding, and DataChannels as
needed in support of MSRP, BFCP and T.140.
DataChannel transport is selected over other available HTTP-based options for transport of all non-audio and non-video
media plane protocols to avoid one or more of the following limitations:
- HTTP transport options typically will not allow setup of direct transport connections between peers due to
possible presence of NAT/firewall and probable lack of DNS entries for the endpoints.
- The forced insertion of an intermediary removes the option of providing end-to-end media security.
- Since HTTP transport options are typically not signalled using SDP, a gateway will need to provide in-band to
out-of-band signalling interworking for interoperation with legacy servers and endpoints that do not support the
transport option.
3GPP
Release 12 28 3GPP TR 23.701 V12.0.0 (2013-12)
- Some HTTP transport options have functional restrictions compared to the standard end-to-end media transport
options. For example, MSRP file transfer using Restful APIs requires temporary file storage at an intermediary
rather than direct peer-to-peer file transfer.
- WebRTC mechanisms for ICE, media security, media endpoint identification and media multiplexing are only
available for audio media, video media and DataChannels.
The AGW provides an MSRP B2BUA to allow interoperation with existing MSRP peer endpoints.
Use of TLS between the AGW and peer is optional, as indicated by an asterisk (*) in the figure.
The AGW provides a transport relay function from DataChannel to TLS/TCP to allow interoperation with existing
BFCP peer endpoints. Use of TLS between the AGW and peer is optional, as indicated by an asterisk (*) in the figure.
The AGW provides a transport relay function from DataChannel to RTP/SRTP to allow interoperation with existing
T.140 peer endpoints. Use of SRTP between the AGW and peer is optional as an alternative to RTP.
3GPP
Release 12 29 3GPP TR 23.701 V12.0.0 (2013-12)
SRTP between the UE and the AGW relies on keying material negotiated via DTLS.
5.3.2.1 Registration
5.3.2.1.1 Introduction
The WebRTC IMS architecture supports three different IMS registration scenarios that differ in the authentication
method, type of IMPU being registered (i.e., with separate HSS entry or as a member of a wildcard IMPU range), and
ownership of the WWSF and WAAF (i.e. home IMS or third party).
Scenario 1: The user has a subscription with an individual IMPU and uses IMS digest to authenticate with
IMS. The WAAF is located within the home IMS and the home IMS trusts the WWSF to perform
its services. Clause 5.3.2.1.2 provides detailed procedures for scenario 1.
Scenario 2: The user has a subscription with an individual IMPU but uses a web identity and authentication
scheme to authenticate with the WWSF. The WWSF assigns IMS identities to the user based on
the user's web identity (e.g., via database lookup or other translation). The WAAF is located
within the home IMS and the home IMS trusts the WWSF to perform its services. Clause 5.3.2.1.3
provides detailed procedures for scenario 2.
3GPP
Release 12 30 3GPP TR 23.701 V12.0.0 (2013-12)
Scenario 3: The user uses a web identity and authentication scheme to authenticate with the WWSF. The
WWSF is located in a third party network and has a subscription with IMS for a wildcard IMPU.
The WAAF registers the wildcard IMPU with IMS on behalf of the WWSF. The WWSF assigns
an IMS identity to each individual user from its assigned wildcard IMPU. The WAAF acts as the
SIP registrar for WICs assigned individual IMPUs from the wildcard IMPU range. The WAAF
can be located either in the home IMS or a third party network. Clauses 5.3.2.1.4 and 5.3.2.1.5
provide detailed procedures for scenario 3.
5.3.2.1.2 WIC registration of individual IMPU with IMS using IMS digest
To support WIC registration using IMS digest, the WAAF must be located in the home IMS.
The home IMS trusts the WWSF to provide the WIC application and redirect the WIC to the WAAF for service.
The user enters information needed for IMS registration (e.g. IMPI and IMPU) to the WIC via unspecified means.
For example, this information might be stored in cookies or local browser storage after visiting a secure web site
provided by the IMS operator.
NOTE: The WAAF is restricted to being located in the home IMS for this scenario to avoid the potential for a
man-in-the-middle attack via a compromised third party WAAF.
Figure 5.3.2.1.2-1 shows a registration call flow where IMS digest is used to register the WIC.
Figure 5.3.2.1.2-1: WIC registration of individual IMPU with IMS using IMS digest
1. From within a WebRTC-enabled browser, the user accesses a URI to the WWSF to initiate an HTTPS
connection to the WWSF. The TLS connection provides one-way authentication of the server based on the server
certificate. The browser downloads and initializes the WIC from the WWSF.
2. The WIC opens a WSS connection to the WAAF using standard cross-origin resource sharing (CORS)
procedures to ensure that the WIC originated from a WWSF authorized to access this WAAF.
3-6. The WIC initiates a registration transaction with IMS via the WAAF by sending a REGISTER request to the
WAAF via the WSS connection. The REGISTER request includes IMS Digest authentication parameters, IMPI,
IMPU and other information as needed for proper IMS registration. This request is translated in the IMS Core
into an IMS registration process. This process leverages user credentials in HSS.
5.3.2.1.3 WIC registration of individual IMPU with IMS based on web authentication
To support WIC registration based on web authentication, the WAAF located in the home IMS trusts the WWSF to
authenticate and assign IMS identities to the WIC. The WWSF belongs to the operator or to a trusted Third party
NOTE: The WAAF is restricted to being located in the home IMS for this scenario since IMS must trust the
authentication-less REGISTER requests from the WAAF in step 4 below.
Figure 5.3.2.1.3-1 shows a registration call flow where the WIC registers with IMS based on web authentication with
the WWSF.
3GPP
Release 12 31 3GPP TR 23.701 V12.0.0 (2013-12)
1. From within a WebRTC-enabled browser, the user accesses a URI to the WWSF to initiate an HTTPS
connection to the WWSF. The TLS connection provides one-way authentication of the server based on the server
certificate. The browser downloads and initializes the WIC from the WWSF. The WWSF authenticates the user
using a common web authentication procedure, determines the IMPI and IMPU assigned to the user (e.g. via an
LDAP query to an identity database {not shown} using the authenticated identity as key), issues a security token
for the user (e.g. where the security token is a JSON Web Token) and returns the IMS identities as claims within
the security token to the WIC.
2. The WIC opens a WSS connection to the WAAF using CORS procedures (http://www.w3.org/TR/cors/,
http://www.w3.org/wiki/CORS_Enabled#What_is_CORS_about.3F) to ensure that the WIC originated from a
WWSF authorized to access this WAAF.
3. The WIC sends a REGISTER request to the WAAF via the WSS connection. The request includes the user
identity extracted from the claims in the security token, as well as the security token received from the WWSF as
an attachment to the request.
4. The WAAF validates the contents of the security token and confirms that the IMS identities being registered are
authorized by the security token. The WAAF then forwards the authorized REGISTER request to IMS via the P-
CSCF to initiate authentication-less IMS registration. As the P-CSCF trusts the WAAF, it forwards the
registration with an indication that the authentication has already been carried out
5. IMS returns a OK response to the WIC to confirm the successful IMS registration.
NOTE: WAAF location in a third party network can enable the third party network to offer communications
services in addition to those offered by the IMS. Extra security precautions are needed to ensure proper
assignment of identities to WICs and proper IMS service authorization. The definition of third party
services that a WAAF might offer is out of scope.
Figure 5.3.2.1.4-1 shows a registration flow where the WWSF requests the WAAF to register a wildcard IMPU range
on its behalf with IMS.
- A static mode where the IMS identities (wildcard IMPU range) associated with the WWSF are pre- registered
(on IMS) by configuration and the WAAF interfaces an IBCF;
- A registration mode where the IMS identities (wildcard IMPU range ) associated with the WWSF are
dynamically registered on IMS and the WAAF interfaces a P-CSCF.
3GPP
Release 12 32 3GPP TR 23.701 V12.0.0 (2013-12)
1. The third party WWSF establishes a TLS connection to the WAAF with bilateral authentication based on server
certificates. The WWSF sends a message to the WAAF requesting that the WAAF register on its behalf with
IMS. The message includes the block of IMS identities associated with the WWSF that are to be delegated to the
WAAF and IMS digest authentication parameters.
2. In the static mode case, the associated IMS identities are already registered with IMS by configuration, so the
WAAF bypasses steps 2 and 3, and continues with step 4. In registration mode, the WAAF initiates an IMS
registration transaction by sending a SIP REGISTER request to the P-CSCF and S-CSCF to register the block of
IMS identities asserted by the WWSF.
4. In static mode, the WAAF directly challenges the request in step 1. In registration mode, the WAAF forwards
the challenge received from the S-CSCF in step 3.
5. The WWSF resends the IMS registration request to the WAAF with the IMS digest credentials.
6. In registration mode, the WAAF sends another SIP REGISTER request to the P-CSCF and S-CSCF that includes
the IMS digest credentials from the WWSF.
7. In registration mode, the S-CSCF responds with a SIP 200 OK response if the credentials are accepted.
8. In static mode, the WAAF verifies the credentials from the WWSF directly. In registration mode, the WAAF
waits for successful IMS registration. After success in either case, the WAAF sends an OK response to the
WWSF to confirm that the WAAF has successfully registered the block of IMS identities with IMS on behalf of
the WWSF.
Figure 5.3.2.1.5-1 shows the registration flow for a WIC being assigned an individual IMPU from a wildcard IMPU
range assigned to the WWSF.
3GPP
Release 12 33 3GPP TR 23.701 V12.0.0 (2013-12)
Figure 5.3.2.1.5-1: WIC registration of individual IMPU from wildcard IMPU range
1. From within a WebRTC-enabled browser, the user accesses a URI to the WWSF to initiate an HTTPS
connection to the WWSF. The TLS connection provides one-way authentication of the third party server based
on the server certificate. The browser downloads and initializes the WIC from the WWSF. The WWSF may
authenticate the user via unspecified means, assigns IMPI and IMPU to the user from those identities that the
IMS operator has assigned to the WWSF, issues a security token for the user (e.g., where the security token is a
JSON Web Token) and returns the IMS identities as claims within the security token to the WIC.
Unauthenticated users are anonymous to the third party but may still be authorized for IMS service.
2. The WIC opens a WSS connection to the WAAF using CORS procedures to ensure that the WIC originated
from a WWSF authorized to access this WAAF.
3. The WIC sends a REGISTER request to the WAAF via the WSS connection. The request includes the IMPI and
IMPU in the security token, received from the WWSF as an attachment to the request.
4. The WAAF validates the contents of the security token and confirms that the IMS identities being registered are
authorized by the security token. The WAAF also verifies that the IMS identities being registered are assigned to
the third party based either on 1) configuration data identifying the IMPUs associated with the third party that
the WWSF is allowed to assign to users accessing IMS via the WAAF (e.g., static mode operation) or 2) explicit
prior WWSF request for the WAAF to perform IMS registration of a block of IMPUs on behalf of the third party
(i.e., registration mode operation). The WAAF then returns a OK response to the WIC to confirm successful
registration.
3GPP
Release 12 34 3GPP TR 23.701 V12.0.0 (2013-12)
5.4 Solution 4
5.4.1 Overview
NOTE: The WebRTC Client can be co-located with an IMS client (i.e. on an IMS UE) or standalone on a device
that does not support IMS UE functionality.
RTC2 Reference point between a WebRTC client and a WebRTC Media Function. It is used to define the
Media plane interaction between WebRTC client and WebRTC Media Function.
RTC3 Reference point between a WebRTC Signalling Function and a P-CSCF. It is used to define the
interactions between a WebRTC Signalling Function and the IMS.
NOTE: RTC3 is not required if the WebRTC Signalling Function is incorporated with P-CSCF
functionality.
RTC5 Reference point between a WebRTC Signalling Function and a WebRTC Portal/Unified Auth
System. It conveys the user information stored in WebRTC portal/Unified Auth System to
WebRTC Signalling Function .
RTC6 Reference point between a WebRTC client and a WebRTC portal/Unified Auth System. It is used
to support the authentication of user identity provided by the WebRTC Client.
RTC9 Reference point between a WebRTC Signalling Function and a WebRTC Media Function. It is
used by WebRTC Signalling Function to control WebRTC Media Function.
3GPP
Release 12 35 3GPP TR 23.701 V12.0.0 (2013-12)
- Convert the signalling received from WebRTC client (e.g. HTTP/HTTPS/Websocket signalling) to SIP
signalling, and then forward the SIP request towards the IMS.
- Implement a limited STUN server functionality to support the STUN keep-alive usage as defined in
IETF RFC 5389 [16] which is used by the UE to maintain the NAT bindings. (Similar to the STUN function
provided by P-CSCF).
- Communicate with Policy and Charging Rules Function (PCRF) by Rx interface to authorize the bearer
resources and manage QoS.
- Communicate with Web portal/Unified Auth System to verify user authorization and retrieve IMS identities (e.g.
IMPU that stored in Web portal/Unified Auth System).
- Support existing P-CSCF functionality when RTC3 is removed (i.e. when WebRTC Signalling Function is
incorporated with P-CSCF).
- Convert the voice and video media between SRTP and RTP.
- Authenticate the user identification and then generate user security information (e.g. Token) for access control.
- Validate user security information sent from the WebRTC Signalling Function. The WebRTC portal/Unified
Auth System provides the WebRTC Signalling Function with additional user information (e.g. IMPU) to map to
the user identity used by the WebRTC client in the case where the WebRTC client uses an identity different from
IMPU.
- Provide the UE with Web-based application JavaScript library and WebRTC Signalling Function IP address.
3GPP
Release 12 36 3GPP TR 23.701 V12.0.0 (2013-12)
5.5 Solution 5
5.5.1 Overview
NOTE 1: In the above WebRTC architecture, the WSF acts as an Application Function to perform the Rx session
with the PCRF, and the existing Rx interface between P-CSCF and PCRF is not used for the WebRTC
session.
NOTE 2: In the above architecture it is assumed there exists a trust relationship between the WSF and IMS core
network entities.
W3 Reference point between a WebRTC Signalling Function and a WebRTC Web Server Function.
It conveys the user information stored in WebRTC Web Server Function to WebRTC Signalling
Function and verifies the security info (e.g. Token) from WSF and WWS.
W4 Reference point between a WebRTC Signalling Function and a WebRTC Media Function.
It is used by WebRTC Signalling Function to control WebRTC Media Function.
W5 Reference point between a WebRTC client and a WebRTC Media Function. It is used to define the
media plane interaction between WebRTC client and WebRTC Media Function.
3GPP
Release 12 37 3GPP TR 23.701 V12.0.0 (2013-12)
W6 Reference point between WebRTC Media Function and IMS Access Gateway.
NOTE: W1 is provided here for information only and is considered out of scope of the later normative work.
Editor's note: Whether the W2, W3, W5 interfaces need to be specified is FFS.
The functionality of the WebRTC Signalling Function includes but is not restricted to:
- Perform conversion between WebRTC signalling (e.g. HTTP/HTTPS/Websocket signalling) and SIP signalling.
- Implement a limited STUN server functionality to support the STUN keep-alive usage as defined in
IETF RFC 5389 [16] which is used by the UE to maintain the NAT bindings. (similar to the STUN function
provided by P-CSCF).
- Communicate with Policy and Charging Rules Function (PCRF) by Rx interface to authorize the bearer
resources and manage QoS.
- Communicate with WebRTC Web Server Function to verify user authorization and retrieve IMS identities (e.g.
IMPU that stored in WebRTC Web Server Function).
- Detect if there is NAT between the WebRTC client and WSF and perform the necessary procedures for NAT
traversal (e.g. the P-CSCF procedures related for NAT traversal according to Annex G of TS 23.228 [2]).
- Generation of CDRs.
The functionality of the WebRTC Media Function includes but is not restricted to:
- Convert the voice and video media between SRTP and RTP.
The functionality of the WebRTC Web Server Function includes but is not restricted to:
- Authenticate the user identification and then generate user security information (e.g. Token) for access control.
- Validate user security information sent from the WebRTC Signalling Function. The WebRTC Web Server
Function provides the WebRTC Signalling Function with additional user information (e.g. IMPU) to map to the
3GPP
Release 12 38 3GPP TR 23.701 V12.0.0 (2013-12)
user identity used by the WebRTC client in the case where the WebRTC client uses an identity different from
IMPU.
- Provide the UE with Web-based application JavaScript library and WebRTC Signalling Function IP address.
5.5.2.0 General
The following clauses describe the high-level operation, procedures and information flows for the solution described
above in clause 5.5.1.
5.5.2.1 Registration
5.5.2.1.1 Introduction
The scenarios of this solution are depicted as follows, mainly categorized by the type of identities used to access to
IMS.
Scenario 1: The WebRTC client is an IMS subscriber, and uses operator provided credentials:
- Using web identities to access to WebRTC service. In this scenario, the authentication of
username is done in the operator provided WWS and also the mapping between IMS identities
and Web identities are stored in operator provided WWS. Clause 5.5.2.1.2.1 provides detailed
procedure to this scenario.
- Using IMS credential to access to WebRTC service. In this scenario, the authentication of
username is done in the IMS network. Clause 5.5.2.1.2.2 provides detailed procedure to this
scenario.
Scenario 2: The WebRTC client uses a web identity. The WebRTC Web Server belongs to the enterprise
domain. The operator assigns a range of IMPUs to the WWS and the registration will be done by
the WWS on behalf of its users. Clause 5.5.2.1.3 provides detailed procedure to this scenario.
5.5.2.1.2.0 General
In this scenario, the user uses operator provided credentials to login to the WebRTC server. The operator provided
credentials can be either operator provided Web identities or IMS credentials.
Figure 5.5.2.1.2.1.1 shows the registration flow when a WebRTC client registers with operator provided Web
identification based on web authentication.
3GPP
Release 12 39 3GPP TR 23.701 V12.0.0 (2013-12)
1-3. The user inputs the WebRTC Web Server URL to the WebRTC-capable browser, and downloads the
WebRTC JavaScript from the WebRTC Web Server. Then the User login with the operator provided Web ID
and password, the WebRTC Web Server authenticates the Web ID according to existing web authentication
procedures, returns the security information (e.g. token) to the WebRTC client.
4. The WebRTC client opens the security WebSocket between the WebRTC client and the WebRTC signalling
function.
NOTE 1: The WebSocket can be opened after successful completion of registration procedures if the signalling
protocol between the WebRTC client and WSF is not dependent on WebSocketS.
Step 4 is necessary when for example SIP over WebSocketS is used to send a SIP request from the
WebRTC client to the WSF.
5. The WebRTC client sends the Register request to the WebRTC Signalling Function via WebSoceketS, including
the token received from WWS.
6-7. Upon receipt of the Register request, the WSF sends a message to WWS to verify the token. After validating
the token, the WWS determines the IMPU/IMPI assigned to the user by querying a database (e.g. the WWS or a
standalone entity {not shown}) which the mapping of Web identities and IMPUs/IMPIs are stored, returns the
IMPU and IMPI mapped to the operator provided Web ID. As an alternative to the message flow in steps 6-7,
token verification can occur via other methods, for example, an encryption method.
NOTE 2: The WWS doesn't need to return IMPU and IMPI in step 7, if the WWS returns the IMS identities as
claims within the security information (e.g. token) in step 3 and the Register request in step 5 includes IMPU and
IMPI extracted from the token.
8-9. The WSF forwards the Register request to IMS via the P-CSCF to initiate IMS registration after the
validation from the WWS.
Editor's note: The authentication mechanism between the WSF and S-CSCF used in steps 8-9 is for FFS.
10-12. The S-CSCF returns 200 OK to the WebRTC client to confirm successful IMS registration.
Figure 5.5.2.1.2.2-1 shows the registration flow when a WebRTC client registers with IMS credential. In the below call
flow, it is assumed that the WebRTC Web Server belongs to the IMS operator or a trusted entity.
3GPP
Release 12 40 3GPP TR 23.701 V12.0.0 (2013-12)
1-3. The user inputs the WebRTC Web Server URL to the WebRTC-capable browser, and downloads the WebRTC
JavaScript from the WebRTC Web Server. Then the User login with IMS credential and password. The
WebRTC Web Server checks that it cannot authenticate the IMS credential for the reason that there is no
authentication information and returns response to the WebRTC client to indicate that the authentication needs to
be done in IMS core.
NOTE 1: If the WebRTC client differentiates between Web ID and IMPU (for example different input fields), steps
2 and 3 can be omitted and IMS credentials are included in the Register request of step 5.
4. The WebRTC client opens the security WebSocket between the WebRTC client and the WebRTC signalling
function.
NOTE 2: The WebSocket can be opened after successful completion of registration procedures if the signalling
protocol between the WebRTC client and WSF is not dependent on WebSocketS. Step 4 is necessary
when for example SIP over WebSocketS is used to send a SIP request from the WebRTC client to the
WSF.
5-7. The WebRTC client sends the Register request to IMS via the WebRTC Signalling Function via
WebSoceketS. The Register request includes IMS Digest authentication parameters, IMPI, IMPU and other
information as needed to access IMS.
8-11. The S-CSCF initiates normal authentication procedure and send a 401 message towards WSF. On receiving a
401 (Unauthorized) response to the REGISTER request, the WSF will behave according to existing UE
procedures when UE receives a 401.
NOTE 3: The response of the 401 auth_challenge to the WSF makes the client simpler and removes the
dependency on the client to support specific authentication mechanisms.
NOTE 4: If SIP (SIP over WebSocketS) is supported by the WebRTC client, the 401 auth_challenge can be sent
towards the WebRTC client, else the WSF is required to store additional user credential information if the
401 auth_challenge is terminated by the WSF.
Editor's note: Whether or not the above procedure where the 401auth_ challenge is not sent to the WebRTC client
causes a security issue is FFS.
3GPP
Release 12 41 3GPP TR 23.701 V12.0.0 (2013-12)
12-14. The S-CSCF returns 200 OK to the WebRTC client to confirm successful IMS registration.
5.5.2.1.3.1 General
The following clauses describe the scenario where the WebRTC Web Server belongs to the enterprise domain.
The operator assigns a range of IMPUs to the WWS and the registration will be done by the WWS on behalf of its
users. WebRTC client uses a web identity.
5.5.2.1.3.2 Registration of IMPU range when WWS registers on behalf of its users
The WWS obtains a block of IMS identities which will be assigned to individual client. The WWS is usually located in
third party network authorized by the IMS operator.
Figure 5.5.2.1.3.2-1 shows the registration flow when the IMS identities are managed by WWS and the WWS registers
on behalf of its users. These steps are for the WWS to register a set of identities with the IMS and that this can happen
at any time before the user registration, i.e. when the WWS is deployed for example.
Figure 5.5.2.1.3.2-1 Registration of IMPU range Web ID when WWS registers on behalf of its users
1. The WWS initiates an IMS registration procedure by sending a Register request to the WSF requesting that the
WSF register on its behalf with IMS. The message includes the block of IMS identities associated with the WWS
and IMS digest authentication parameters.
2-3. In the static mode, the associated IMS identities are already registered with IMS by configuration, so the
WSF bypasses steps 2 to 5, and continues with step 6. In registration mode, the WSF initiates an IMS
registration transaction by sending a Register request to the P-CSCF and S-CSCF to register the block of IMS
identities asserted by the WWS.
5-6. In static mode, the WSF directly challenges the request in step 1. In registration mode, the WSF forwards the
challenge received from the S-CSCF.
7. The third party WWS resends the Register request to the WSF with the IMS digest credentials.
8-9. In registration mode, the WSF sends another Register request to the P-CSCF and S-CSCF that includes the
IMS credentials from the WWS. And the S-CSCF authenticates as normal procedure.
10-11. In registration mode, the S-CSCF responds with a 200 OK message if the credentials are accepted.
3GPP
Release 12 42 3GPP TR 23.701 V12.0.0 (2013-12)
12. In static mode, the WSF verifies the credentials from the WWS directly. In registration mode, the WSF waits for
successful IMS registration. After success in either case, the WSF sends a 200 OK response to the WWS to
confirm that the block of IMS identities has successfully registered.
5.5.2.1.3.3 WebRTC Client registration of individual IMPU from wildcard IMPU range
Based on the procedure in clause 5.5.2.1.3.2, the WWS can assign individual IMPUs from the block of IMPUs to
WebRTC clients under its control.
Figure 5.5.2.1.3.3-1 shows the registration flow for a WebRTC client being assigned an individual IMPU from a block
of IMPU range assigned to the WWS.
Figure 5.5.2.1.3.3-1 WebRTC Client registration of individual IMPU from wildcard IMPU range
1-3. The user inputs the third party WebRTC Web Server URL to the WebRTC-capable browser, and downloads
the WebRTC JavaScript from the WebRTC Web Server. Then the user login with the third party provided Web
ID and password. The WWS authenticates the Web ID according to existing web authentication procedures and
returns the security information (e.g. token) to the WebRTC client.
4. The WebRTC client opens the security WebSocket between the WebRTC client and the WebRTC signalling
function.
NOTE 1: The WebSocket can be opened after successful completion of registration procedures if the signalling
protocol between the WebRTC client and WSF is not dependent on WebSocketS. Step 4 is necessary
when for example SIP over WebSocketS is used to send a SIP request from the WebRTC client to the
WSF.
5. The WebRTC client sends the Register request to the WebRTC Signalling Function via WebSoceketS, including
the token received from WWS.
6-7. Upon receipt of the Register request, the WSF sends a message to the WWS to check if the token is valid.
After validating the token, the WWS determines the IMPU/IMPI assigned to the user by querying a database
(e.g. the WWS or a standalone entity {not shown}) which the mapping of Web identities and IMPUs/IMPIs are
stored, returns the IMPU and IMPI mapped to the operator provided Web ID. The WSF also verifies that the
IMS identities being registered are assigned to the third party based on the procedure depicted in
clause 5.5.2.1.3.2 either in static mode operation or in registration mode operation. As an alternative to the
message flow in steps 6-7, token verification can occur via other methods, for example, an encryption method.
NOTE 2: The WWS doesn't need to return IMPU and IMPI in step 7, if the WWS returns the IMS identities as
claims within the security information (e.g. token) in step 3 and the Register request in step 5 includes
IMPU and IMPI extracted from the token.
3GPP
Release 12 43 3GPP TR 23.701 V12.0.0 (2013-12)
8. The WebRTC Signalling Function sends 200 OK to the WebRTC client to confirm successful IMS registration.
5.6 Solution 6
5.6.1 Overview
Figure 5.6.1-1 shows an IP PBX emulation architecture with standard IMS business trunking interfaces. The WebRTC
signalling and media mediation functions provide interworking between the WebRTC client and standard IMS
signalling and media protocols. The UE can be of any type, supporting any IP-CAN(s), including EPC roaming options.
The WebRTC client on the UE, the PBX emulation functions, and the interfaces between the UE and the PBX
emulation functions are unspecified by 3GPP except for the signalling and media interfaces to IMS functions shown in
the figure.
The functions providing PBX emulation can be located anywhere within an enterprise, a third party network or within
the operator network. Since the functions providing PBX emulation conform to standard IMS business trunking
interfaces, there is no impact to IMS. In particular, the WebRTC signalling function ensures that SIP on Gm or Ici is
conformant to IMS SIP for business trunking on these interfaces. Media extensions not supported by IMS (e.g.
unsupported codecs, trickle ICE, consent signalling, DTLS-SRTP) are terminated by the WebRTC media function.
The media protocols seen at the AGW or TrGW need to be IMS compliant.
The functions providing PBX emulation register blocks of IMS user identities with IMS using either static mode or
registration mode.
IMS has no knowledge of individual WebRTC clients and no responsibility to provide services such as security,
identity, individual registration state, or QoS, directly to the clients. The clients are authenticated by the PBX emulation
functions. The PBX emulation functions perform a role equivalent to a SIP registrar for individual clients.
The PBX might provide communication services to the clients before forwarding signalling associated with the clients
to/from IMS.
Since the PBX emulation functions must anchor media to provide the necessary e2ae media procedures, IMS cannot
provide QoS via Rx on the P-CSCF. The PBX emulation functions might directly use an OMA REST or XML interface
to PCC for QoS, bypassing IMS, but the details are out of scope.
3GPP
Release 12 44 3GPP TR 23.701 V12.0.0 (2013-12)
NOTE: The vertical line depicts the split between IMS and the non-IMS world and does not mean any ownership
of the PBX emulation functions.
The PBX emulation functions are responsible for all interaction with the WebRTC client, such as client download,
authentication, location tracking for service terminations, and arranging for QoS, where possible. Detailed QoS
procedures are out of scope.
The PBX emulation functions provide signalling and media interfaces that conform to standard IMS business trunking
interfaces and procedures.
5.7 Solution 7
5.7.1 Overview
5.7.1.1 Assumptions
This clause include assumptions specific to this solution and are in addition to those listed in clause 4.1.
- The UE architecture includes a JS execution environment that supports the WebRTC APIs.
- The UE architecture includes an IMS client. The UE can register for IMS based services in the HPLMN. The
solution requires neither modifications to IMS specification nor modifications to IMS functions deployed in the
network.
3GPP
Release 12 45 3GPP TR 23.701 V12.0.0 (2013-12)
- The browser may or may not support 3GPP codecs (AMR-WB/NB, H.264) in addition to those defined by IETF
WebRTC. In case the browser does not support 3GPP codecs, the UE needs to implement transcoding from/to
WebRTC codecs and 3GPP codecs.
- The web server providing the HTML and the WebRTC App resides in the HPLMN as an operator provided
service.
- This UE based solution does not require browser customizations (beyond the support of 3GPP codecs, refer to
clause 5.7.3), instead it keeps a generic Web Browser.
The UE can be of any type, supporting any IP-CAN(s), and the WebRTC client can have access to capabilities available
to a native IMS client on the device, and has the same restrictions.
Since the UE configuration uses a standard IMS client on the device, there is no impact to the IMS network.
In particular, the UE provides Gm and media interfaces fully compliant to the standard IMS interfaces.
Since the WebRTC client has access to all of the functions of a native IMS client, webRTC services running on the UE
benefit from the following characteristics:
- Access to a UICC that might be present in the device for IMS credentials.
- IMS can authenticate and register the WebRTC client using standard IMS registration procedures according to
the IMS subscription information in the UICC, if present, or as otherwise presented depending on the type of
UE.
- The UE can be configured for all IMS functions appropriate to a native IMS client, including APN selection (i.e.
IMS APN), IMS roaming, Gm ciphering, SRVCC, QoS, etc.
Due to the above characteristics, this solution cannot address all of the use cases described for WebRTC IMS access in
TS 22.228 [13]. The solution only provides WebRTC access for IMS subscribers using existing IMS procedures, in
particular existing IMS authentication procedures. The solution cannot provide for web authentication options and
cannot support allocation of IMS identities to WebRTC clients by a third party.
3GPP
Release 12 46 3GPP TR 23.701 V12.0.0 (2013-12)
There is no generic browser nowadays that has an interface through which it may access the IMS credentials on a UE.
In order to allow a mechanism that permits a user to certify to a web server using IMS credentials and with no browser
modifications, the solution proposes a two steps approach based on a new terminal component: WebRTC Web Proxy
Function (WWPF). The role of the WWPF is to act as a middle layer between the WWSF component detailed in
clause 5.3.1.3 and the local IMS client. It provides the IMS based credentials in the authentication exchange with the
Web Server without requiring changes in the generic browser. WWPF implements basic web proxy functionalities and
it interacts with the IMS client on the device as well as with the generic browser.
Editor's note: How the HTTP proxy can modify the HTTPS content when TLS is used is FFS.
In this approach, the key information that needs to be exchanged is the multimedia session description, which specifies
the necessary transport and media configuration information necessary to establish the media plane.
Although JSEP allows a large flexibility regarding the signalling plane that may be used there are currently one
signalling protocol that may be good contenders to be used in the context of WebRTC operator provided services: SIP.
In the case of SIP, the SIF function is a simple pass-through, while if SIP is not used, SIF needs to do the conversion
between the JSEP SDP offer/answer and the SIP SDP that is carried over the IMS infrastructure.
The media mediation on the UE must be treated based on two scenarios: a) operator controlled cases in which the web
page is provided by the operator or is on a server under the operator control and b) Third party or OTT cases in which
the operator does not have the control of the original JS download.
This solution addresses the Operator controlled cases and it may require either:
1. use UE-based DNS proxy to resolve TURN server to local UE-hosted instance or
The communication channel for WebRTC assumes SRTP to be used by each peer. In order to allow the operator to have
control of the media that it is exchanged over the channel, the RMF function must be able to access the SRTP data and
convert it into a format supported by the operator.
5.7.2.0 General
This clause describes the high-level operation, procedures and information flows for the solution.
The UE-resident functions providing IMS features authenticate and register IMS identities associated with an IMS
subscription according to standard IMS UE procedures.
The UE-resident functions have access to all capabilities available to a native IMS client on the device, including APN
selection (i.e. IMS APN), IMS roaming, Gm ciphering, SRVCC, QoS, etc.
The UE-resident functions provide signalling and media interfaces that conform to a standard native IMS client.
An example of how user registration onto IMS may work is shown in following figure:
3GPP
Release 12 47 3GPP TR 23.701 V12.0.0 (2013-12)
The WebRTC client in this scenario uses its IMS credentials to authenticate itself although the Web browser on the
device does not have an interface to the IMS credentials. The following steps are followed in the interaction between
the WebRTC client when accesses a web page as it is shown in Figure 5.7.2-1.
1. The JS above the Generic Web Browser initiates WebRTC app access to HTTP Operator Server ; the request is
redirected to the local HTTP proxy.
2. HTTP Redirection to local HTTP proxy/client (in the WebRTC Signalling Function).
3. Request made to local HTTP proxy/client (in the WebRTC Signalling Function) as a result of HTTP Redirect.
6. Once client is authenticated, the local HTTP proxy/client (in the WebRTC Signalling Function) request for RTC
Page.
Step 0: Load UE STUN/TURN/DNS Proxy. Load WebRTC application and Initiate ICE candidate gathering.
Step 1: Solve the STUN and/or TURN FQDN to a local STUN and/or TURN proxy IP.
3GPP
Release 12 48 3GPP TR 23.701 V12.0.0 (2013-12)
Step 2: On STUN UE proxy for operator controlled cases the ICE initiates TURN allocation TURN allocation.
Step 3: In operator controlled case, authenticate UE against UE TURN proxy; in OTT case with IMS peer, skip
TURN authentication. Allocate media resources on TURN server.
Step 4: On UE TURN proxy: on ICE connectivity checks, use IMS network to check availability on TURN peer
proxy.
Each of the terminal devices creates the candidate build up list as described in clause5.7.2.1. The two peers use SDP
attributes to exchange the candidates on each part of the connection through a sequence of INVITE/183Session In
Progress/PRACK/200OK/ messages. At the end of the exchange the media transmission path is established between the
peers. An example of this exchanged is detailed in Figure 5.7.2.2-2.
3GPP
Release 12 49 3GPP TR 23.701 V12.0.0 (2013-12)
3GPP
Release 12 50 3GPP TR 23.701 V12.0.0 (2013-12)
If the browser does not support 3GPP codecs the MIF function provides the conversion functionality.
The proposed solution shows one mechanism of implementing signalling and media interworking of WebRTC traffic
within a device. There could be other implementation specific architectures to achieve similar interworking.
The solution allows the reuse of IMS credentials and IMS authentication mechanisms already standardized in the 3GPP.
The solution does not require any changes to the operators IMS Core Network.
It uses UE STUN proxy and/or TURN proxy. It requires a local DNS proxy or DNS custom function in the operator
network.
It forces ICE to use UE internal TURN server to achieve direct UDP connectivity over IMS . The UE-based
STUN/TURN proxy embeds IMS client signalling functionality. The TURN component acts as a redirection
mechanism of the WebRTC traffic toward the IMS connectivity.
In operator controlled cases, if IMS infrastructure is being used peers may be able to control the use of SRTP. The DNS
proxy resolves the operator provided STUN/TURN server to local UE-hosted instance.
On the media path this Solution proposes that the browser should support all the 3GPP codecs available on the device.
If there is no browser support for this codecs this Solution uses MIF.
6 Evaluation
Editor's note: This clause contains the overall evaluation of various solutions.
7 Conclusions
Annex A captures the decisions reached in Release 12 as a result of the study with regard to network-based solutions,
and provides source text that can be used for CRs to TS 23.228 [2] for Release 12 to populate it with normative text for
the WebRTC access to IMS feature. This annex is comprised of elements of all network-based solutions in the TR and
supersedes them in Release 12.
It is also concluded that UE-based solutions do not have any standard impact.
3GPP
Release 12 51 3GPP TR 23.701 V12.0.0 (2013-12)
Annex A:
WebRTC access to IMS - network-based architecture
A.1 Overview
A.1.1 Assumptions
- In this annex, the word "UE" can correspond to either a 3GPP or a non-3GPP terminal.
- The JS execution environment that executes the WIC has no standardized way to access an ISIM/USIM on any
terminal.
- This Release specifies an option to use a signalling interface from the UE to the network based on SIP over
WebSocket, which is used as the information model on which other options are expected to be based. Options
other than SIP over WebSocket are allowed in this Release, such as a REST based interface, JSON over
WebSocket, XMPP, but are not described in this document. Any enhancements required to accommodate an
unspecified signalling interface are considered compliant to the Release as long as other defined interfaces in the
architecture are not impacted.
- At the discretion of the CT groups, it is recommended that stage 3 documentation include information describing
the elements of the message sequences and information model for SIP over WebSocket that need to be present
for any alternative signalling interface.
- SDP offer/answer exchange is the mechanism used for media plane feature negotiation.
- In this Release, the architecture does not support media multiplexing that is defined for WebRTC clients.
NOTE 1: A JS downloaded in a WIC accessing IMS services is not expected to allow usage of media multiplexing
in the browser. If an SDP offer with media multiplexing was nevertheless sent to the network the part of
the SDP offer associated with media multiplexing would be removed at the entry of the IMS network.
- In this Release, WebRTC specific media plane extensions will be handled at the access edge and will not be
propagated to other IMS functions.
- This Release specifies DataChannel transport options for MSRP, BFCP and T.140. Other options are allowed in
this Release, but are not described in this document.
- In this Release, in case of a network based interworking between WebRTC and IMS, for 3GPP and EPC access
from a WebRTC client:
- Use of available techniques to select preferred access technologies and APNs, and to provide IP address
continuity, are allowed but not described.
- When the WebRTC client is served by an IP-CAN in a configuration that supports PCC, it is possible to
request QoS within the IP-CAN for WebRTC media.
NOTE 2: To ensure full end to end QoS support, proper IP forwarding policies should be set in the path between
the PGW and the Functions supporting media interworking to the IMS.
- QoS can be provided in configurations where the IMS can identify the transport (TCP-UDP/IP) addresses
handled by the PCEF and where based on this information PCC functions can identify the UE media flows to
prioritize.
3GPP
Release 12 52 3GPP TR 23.701 V12.0.0 (2013-12)
(generally by clicking on a link or entering a URL into the browser). The P-CSCF enhanced for WebRTC (eP-CSCF) is
the endpoint for the signalling connection from the client and is located in the operator network.
NOTE 1: The presence of dashed elements in the figure depends on the configuration.
PCC functional elements are present only for 3GPP access with QoS.
The corresponding PCC elements for fixed access are also optionally supported but not shown.
The NAT in figure A.1.2-1 is meant for non-cellular access to IMS.
NOTE 2: A reference point between the WWSF and eP-CSCF might be considered in future Releases.
NOTE 3: W3 corresponds to the output of the IETF RTCWEB discussions.
NOTE 4: The enhanced network entities, such as the eP-CSCF, might be decomposed into multiple network
elements (e.g., P-CSCF and WebRTC Signalling Function) in future Releases to address additional use
cases and configurations.
- The WWSF is located either in the operator network or a third party network authorized by the operator network.
- The WWSF provides the Web page presenting the user interface to the user for IMS access.
- The WWSF provides the JS WIC application for downloading to the browser on the UE.
- If the WIC does not enforce the use of IMS authentication for the user, the WWSF manages the correct and
consistent allocation of authorized IMS identities to WICs associated with authenticated Web identities. The JS
application downloaded from the WWSF controls which authentication mode applies.
3GPP
Release 12 53 3GPP TR 23.701 V12.0.0 (2013-12)
NOTE: The WWSF represents a collection of functions that might be further split across servers or networks, so
long as they behave in the aggregate as described.
- The eP-CSCF supports at least one WebRTC UE-to-network signalling protocol, e.g. SIP over WebSocket,
JSON over WebSocket, XMPP over WebSocket, HTTP/REST interface.
- The eP-CSCF verifies any UE authentication performed by the WWSF and performs Trusted Node
Authentication (TNA), as defined in TS 33.203, in IMS for UEs already authenticated by the WWSF.
- For Web authentication scenarios, the eP-CSCF verifies that the WWSF is authorized to allocate IMS identities
that it assigns to a WIC.
- The eP-CSCF performs IMS registration for WICs using either IMS or Web authentication schemes.
- The eP-CSCF controls the media plane interworking functions provided by the eIMS-AGW, including those
additional media plane functions specific to WebRTC.
- The eP-CSCF ensures via signalling that RTP streams are not multiplexed onto the same port if entities
anchoring the session media path in the IMS domain do not support that capability.
- The eP-CSCF ensures via signalling that RTP and RTCP flows of an RTP stream are not multiplexed onto the
same port if entities anchoring the session media path in the IMS domain do not support that capability.
NOTE 1: WebRTC only supports audio including DTMF and video media using SRTP transport, and data media
using WebRTC DataChannels. Hence any media plane protocol other than audio and video will use
WebRTC DataChannels for transport.
- The eIMS-AGW supports the media plane interworking extensions as needed for WICs.
- The eIMS-AGW performs e2ae procedures for media protocols specific to WebRTC, including ICE, media
consent, and DTLS-SRTP.
- The eIMS-AGW performs any transcoding needed for audio and video codecs supported by the browser.
- When GTT service is requested, the eIMS-AGW performs transport level interworking between T.140 over
DataChannels and other T.140 transport options supported by IMS.
- When MSRP is requested, the eIMS-AGW performs as an MSRP B2BUA between MSRP over DataChannels
and the other MSRP transport options supported by IMS.
NOTE 2: If CEMA extensions for transport-level interworking for MSRP are supported in IMS, the eIMS-AGW
will also support this option. In this case, clause A.1.5.1 will also include a protocol architecture showing
transport-level interworking for MSRP based on CEMA.
- When BFCP service is requested for conference floor control, the eIMS-AGW performs transport level
interworking between BFCP over DataChannels and other BFCP transport options supported by IMS.
3GPP
Release 12 54 3GPP TR 23.701 V12.0.0 (2013-12)
The eIMS-AGW provides an MSRP B2BUA to allow interoperation with existing MSRP peer endpoints.
Use of TLS between the eIMS-AGW and peer is optional, as indicated by an asterisk (*) in the figure.
3GPP
Release 12 55 3GPP TR 23.701 V12.0.0 (2013-12)
The eIMS-AGW provides a transport relay function from DataChannel to TLS/TCP to allow interoperation with
existing BFCP peer endpoints.
Use of TLS between the eIMS-AGW and peer is optional, as indicated by an asterisk (*) in the figure.
The eIMS-AGW provides a transport relay function from DataChannel to RTP/SRTP to allow interoperation with
existing T.140 peer endpoints. Use of SRTP between the eIMS-AGW and peer is optional as an alternative to RTP.
3GPP
Release 12 56 3GPP TR 23.701 V12.0.0 (2013-12)
A.2 Procedures
A.2.1 Registration
A.2.1.1 Introduction
NOTE 1: SA WG3 must validate the registration scenarios and provide additional details related to security aspects
of the architecture. In particular, SA WG3 should verify for all scenarios the security properties of at least
the following aspects: the use of TLS, WSS and CORS at the relevant reference points; the use of IMS
digest, TNA, and/or potentially other IMS authentication mechanisms; how to provide IMS digest
authentication and registration information to the WIC; the potential use of a security token if the origin
of the WWSF cannot be verified; the required trust relationships between functional entities for the
scenarios; the mechanisms used to verify the required trust relationships between functional entities; and
whether there are any constraints on network locations of the functional entities of the architecture in the
scenarios.
The WebRTC IMS architecture supports two different IMS registration scenarios that differ in the authentication
method, and ownership of the WWSF (i.e. operator network or third party). For these scenarios, the eP-CSCF verifies
that the UE is executing a WIC from an authorized WWSF.
NOTE 2: The example procedures in the following clauses are intended to demonstrate a way of realizing the
scenarios. These procedures are not intended to constrain the security solutions provided by SA WG3
within the context of the agreed architecture and use cases.
Scenario 1: The user has a subscription with an individual IMPU and uses an IMS authentication mechanism (e.g. IMS
digest) to authenticate with IMS. Clause A.2.1.2 provides detailed procedures for scenario 1.
Scenario 2: The user has a subscription with an individual IMPU but uses a web identity and authentication scheme to
authenticate with the WWSF. The WWSF assigns IMS identities to the user based on the user's web
identity (e.g. via database lookup or other translation means). Clause A.2.1.3 provides detailed procedures
for scenario 2.
NOTE 3: A third scenario described here is also under consideration for inclusion in the Release but details will be
investigated during the normative work. In this scenario, the user uses a web identity and authentication
scheme to authenticate with the WWSF. The WWSF is located in a third party network and has a
subscription with IMS for a wildcard IMPU. The WWSF assigns an IMS identity to each individual user
from its assigned wildcard IMPU. The WIC uses the assigned IMS identity to access IMS services.
NOTE 4: This Release does not include support for either of the following optional enhancements to the third
scenario: dynamic WWSF configuration; and provision for the third party to offer its communication
services in addition to IMS services.
3GPP
Release 12 57 3GPP TR 23.701 V12.0.0 (2013-12)
A.2.1.2 WIC registration of individual IMPU with IMS using IMS digest
The WIC obtains information needed for IMS registration (e.g. IMPI and IMPU) via unspecified means. For example,
some of this information might be stored in cookies or local browser storage after visiting a secure web site provided by
the IMS operator.
Figure A.2.1.2-1 shows a registration call flow where IMS digest is used to register the WIC.
Figure A.2.1.2-1: WIC registration of individual IMPU with IMS using IMS digest
1. From within a WebRTC-enabled browser, the user accesses a URI to the WWSF to initiate an HTTPS
connection to the WWSF. The TLS connection provides one-way authentication of the server based on the server
certificate. The browser downloads and initializes the WIC from the WWSF.
2. The WIC opens a WSS connection to the eP-CSCF using standard cross-origin resource sharing (CORS,
http://www.w3.org/TR/cors/) procedures to ensure that the WIC originated from a WWSF authorized to access
this eP-CSCF.
3-6. The WIC initiates a registration transaction with IMS via the eP-CSCF by sending a REGISTER request to
the eP-CSCF via the WSS connection. The REGISTER request includes IMS Digest authentication parameters,
IMPI, IMPU and other information as needed for proper IMS registration. This request is translated in the IMS
Core into an IMS registration process. This process leverages user credentials in HSS.
1. From within a WebRTC-enabled browser, the user accesses a URI to the WWSF to initiate an HTTPS
connection to the WWSF. The TLS connection provides one-way authentication of the server based on the server
3GPP
Release 12 58 3GPP TR 23.701 V12.0.0 (2013-12)
certificate. The browser downloads and initializes the WIC from the WWSF. The WWSF authenticates the user
using a common web authentication procedure, determines the IMPI and IMPU assigned to the user (e.g., via an
LDAP query to an identity database {not shown} using the authenticated identity as key), issues a security token
for the user (e.g., where the security token is a JSON Web Token) and returns the IMS identities as claims within
the security token to the WIC.
2. The WIC opens a WSS connection to the eP-CSCF using CORS procedures to ensure that the WIC originated
from a WWSF authorized to access this eP-CSCF.
3. The WIC sends a REGISTER request to the eP-CSCF via the WSS connection. The request includes the user
identity extracted from the claims in the security token, as well as the security token received from the WWSF as
an attachment to the request.
4. The eP-CSCF validates the contents of the security token and confirms that the IMS identities being registered
are authorized by the security token. The eP-CSCF then forwards the authorized REGISTER request to IMS to
initiate authentication-less IMS registration using TNA procedures, with an indication that the authentication has
already been carried out.
5. IMS returns a OK response to the WIC to confirm the successful IMS registration.
3GPP
Release 12 59 3GPP TR 23.701 V12.0.0 (2013-12)
Annex B:
Change history
Change history
Date TSG # TSG Doc. CR Rev Subject/Comment Old New
2013-12 SP-62 SP-130543 - - MCC Editorial update for presentation to TSG SA for approval 0.3.0 1.0.0
2013-12 SP-62 SP-130706 - - Remove empty sections, renumber sections and update 1.0.0 1.0.1
references; resolve hanging paragraphs.
2013-12 SP-62 - - - MCC Editorial update to version 12.0.0 after TSG SA Approval. 1.0.1 12.0.0
3GPP