P-CSCF: An introduction.

The P-CSCF is the entry point to the IMS domain and serves as the outbound proxy server for the UE. The UE attaches to the P-CSCF prior to performing IMS registrations and initiating SIP sessions. The P-CSCF may be in the home domain of the IMS operator, or it may be in the visiting domain, where the UE is currently roaming. For attachment to a given P-CSCF, the UE performs the P-CSCF discovery procedures. Attachment to the P-CSCF is necessary for the UE for initiating IMS registrations and sessions.


In these procedures, the UE first establishes the IP connectivity access network (IP-CAN) bearer. Then, the UE sends a query to the DHCP server for retreiving the IP addresses and FQDN (Fully Qualified Domain Name) of the P-CSCF. After the DHCP query, the UE performs a DNS query on the FQDN received from the DHCP server. In response to the DNS query, the IP address of the P-CSCF is returned. This is known as the DHCP-DNS procedure for P-CSCF discovery. However, in some cases, it may be possible that the FQDN of the P-CSCF is pre-configured in the UE. In these scenarios, the UE can directly query the DNS server and get the IP address of the P-CSCF.

Subsequent to P-CSCF discovery, the UE can send a SIP REGISTER request to register itself in the IMS core network. The P-CSCF sets up IPSec security associations with the UE, which are facilitated with the two-way registration handshake (i.e. REGISTER-401-REGISTER-200 OK). The IPSec security assocaiations (SAs) setup four protected ports between the UE and the P-CSCF and ensure that all subsequent signaling traffic passes through the protected ports. The four protected ports negotiated during IMS registration are: The protected server port at the P-CSCF, the protected server port at the UE, the protected client port at the P-CSCF and the protected client port at the UE. The Protected client ports are used by the UE and P-CSCF to send requests while the server ports are used to receive incoming requests. IMS registration will be discussed seperately in another post.

The P-CSCF also translates the SDP body contained in the SIP INVITE message from the UE into DIAMETER over the Rx interface and sends it to the PCRF. The PCRF is responsible for policy control in the IMS core network. If the SDP offer contains a codec or any other media characteristics that are not allowed as per the policies of the IMS operator, the operator can choose to disallow that session setup.

Subsequent posts will dicuss the P-CSCF and PCRF interaction in more detail.


7 Responses to “P-CSCF: An introduction.”

  1. Stefano Says:

    Hi, I’m in error or is it possible to perform a PCSCF discovery not only by DHCP server but also through an SGSN (UMTS) ?

    REgards, Stefano.

  2. theimsjungle Says:

    Hi Stefano,
    In my knowledge, P-CSCF discovery is only possible by DHCP and DNS procedures. Talking of SGSN, it acts as an access network RAN for the UE. Just like for GPRS access to IMS, SGSN and GGSN act as the access network. Same is true for WCDMA access to IMS.

  3. Srinath Says:

    Hi Stefano,
    you are right!!!!!. It is possible to discover the P-CSCF address during PDP context establishment. The IP address will be returned in PCO.
    The method you suggested is also one of the options but this requires the APN to be configured in the UE.

  4. Nicolas Says:

    With the DHCP and DNS procedures, is it possible to select a P-CSCF equipment close to the P-GW? or is it unecessary since it is signalling plane?

  5. theimsjungle Says:

    1) It is not advisable to discover the P-CSCF using PDP contexts. PDP contexts are best used for reserving bearer resources. IMS clients dont do so.

    2) In most commercial and practical deployments, the UE needs to connect to the IMS core using an access point (Eg a WiFi access point). Then it is assigned an IP address by a DHCP server. The UE subsequently establishes the IPCAN (PDP context).

    3) After that, through a pre-configured DHCP-DNS (based on the visited domain name of the network), the outbound proxy for that domain is discovered (P-CSCF).

  6. sheng Says:

    Everyone is talking that the P-CSCF translates the SDP body contained in the SIP INVITE message from the UE into DIAMETER over the Rx interface and sends it to the PCRF. Any idea how that happens? Where we can find a mapping table between the SDP and and the Rx?

  7. theimsjungle Says:

    Please look at TS 29.214 here: http://www.3gpp.org/ftp/Specs/html-info/29214.htm

    For codecs in the SDP body and QoS..sspecially note the explanation for the following AVPs:

    1. Codec-Data AVP
    2. Flow-Status AVP
    3. Flow-Usage AVP
    4. Max-Requested-Bandwidth-DL AVP
    5. Max-Requested-Bandwidth-UL AVP
    6. Media-Component-Description AVP
    7. Media-Component-Number AVP
    8. Media-Sub-Component AVP
    9. Media-Type AVP

    Refer to Annex-A to understand how the data is provisioned in the P-CSCF, and Annex-B for the SDP mappings and examples.

    Hope this helps.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: