Landslide IMS, PGW, MME, SGW and Wifi Offload Gateway Nodal test cases support preconditions and it is mandatory for a UE that is connected to IMS Network. IMS Node also supports preconditions.
NOTE:
|
SIP Preconditions ensure network resources are reserved for a SIP session using pre-defined reservation mechanisms before beginning a session.
SIP/SDP preconditions mechanism allows a UE to delay completion of a SIP session establishment until one or both ends have successfully completed their resource reservation process. This ensures that resources for the SIP session are reserved before the called party is alerted. This extension to SIP and SDP is mandatory, and is supported by every UE connecting to the IMS network.
A precondition is a set of constraints of the SIP session introduced in the SDP offer. The recipient of the offer generates an answer, but does not alert the user or proceed with session establishment. The session establishment process occurs only when the preconditions are met. A local event such as SIP UPDATE message confirms a resource reservation.
The precondition mechanism is a part of SDP protocol and is based on two states that affect a particular media stream: current status and desired status. A SIP session establishment stops until the current status reaches the desired status. Once this threshold is reached the session establishment resumes.
The following shows the test cases and settings to support preconditions. The MME, PGW, SGW and Wifi Offload Gateway Nodal Test Cases (VoLTE) emulates SIP subscribers that are connected to IMS network. Hence, it is mandatory that preconditions mechanism be supported for VoLTE in the test cases (MME, PGW, SGW and Wifi Offload Gateway Nodal). In IMS Nodal, Preconditions is supported when Mw or ISC interface is selected.
MME/PGW/SGW/Wifi Offload Gateway
Nodal –
IMS Node/Proxy (Mobile-to-Mobile)
|
|
MME/PGW/SGW/Wifi Offload Gateway
Nodal – IMS
Node/Endpoint
|
Preconditions are maintained per media type. In the case of multiple negotiated media types, SDP message includes multiple sets of preconditions attributes. The attributes are the same for voice and video media type.
The table below shows the supported preconditions attributes.
current-status
|
"a=curr:" precondition-type SP status-type SP direction-tag |
desired-status | "a=des:" precondition-type SP strength-tag SP status-type SP direction-tag |
confirm-status | "a=conf:" precondition-type SP status-type SP direction-tag |
precondition-type | "qos" | token |
strength-tag | ("mandatory" | "optional" | "none" | "failure" | "unknown") |
status-type | ("e2e" | "local" | "remote") |
direction-tag | ("none" | "send" | "recv" | "sendrecv") |
NOTE: The current implementation supports as follows:
|
SIP Messages |
SDP Filler and description |
|||
SDP Offer (SIP: INVITE) |
m=audio 6000 RTP/AVP 0 a=rtpmap:0 PCMU a=curr:qos local none a=curr:qos remote none a=des:qos mandatory local sendrecv a=des:qos none remote sendrecv
|
|||
SDP Answer (SIP: 183) | Now the called terminal is local and the calling terminal is remote. m=audio 6000 RTP/AVP 0 a=rtpmap:0 PCMU SDP Answer (SIP: 183) a=conf:qos remote sendrecv a=conf:qos remote sendrecv The calling terminal (remote) should send a confirmation (conf) at the moment the resources (qos) have been reserved in the sending and receiving directions (sendrecv). This is a new line that the called end adds to SDP. It is a necessary addition because the called terminal is not intended to ring the called user or to start sending media until both ends have reserved the resources. |
|||
SDP Offer (SIP: UPDATE) | m=audio 6000 RTP/AVP 0 a=rtpmap:0 PCMU a=curr:qos local sendrecv a=curr:qos remote none a=des:qos mandatory local sendrecv a=des:qos mandatory remote sendrecv a=curr:qos local sendrecv The calling terminal (local) notifies that resources have now been successfully reserved in both the sending and receiving directions. |
|||
SDP Answer (SIP: 200 OK for UPDATE) | m=audio 6000 RTP/AVP 0 a=rtpmap:0 PCMU a=curr:qos local sendrecv a=curr:qos remote sendrecv a=des:qos mandatory local sendrecv a=des:qos mandatory remote sendrecv All the current states for resource reservation match the desired states; so, the preconditions negotiation has been successful and has completed. |