Proxy-Call Session Control Function
The Proxy-Call Session Control Function (P-CSCF) is the first contact point for the users of the IMS. (SGSN and the GGSN are part of the GPRS network and not the IMS.) As its name implies, the P-CSCF functions as a proxy server for the UE; all SIP signaling traffic to/from the UE must go through the P-CSCF. This means that the P-CSCF validates and then forwards requests from the UE and that the P-CSCF processes and forwards the responses to the UE.
In addition, the P-CSCF can also function as a user agent (UA) in the context of the SIP operating procedures. For example, if an abnormal condition arises in a session, the P-CSCF can unilaterally release the session for the UE. The UA role can also come in handy to generate independent SIP messages required during the registration such as sending the user’s public and private identities. There may be more than one P-CSCF in the operator’s network based on survivability, number of users, expected traffic, and network topology. The P-CSCF is nothing more than a special server; in some cases it is referred to as the SIP server.
The functions performed by the P-CSCF are listed below. In some cases, these functions have considerable amount of detail that is beyond the scope of our discussion. For the details, obtain a copy of the IMS Release 6 standard.
- Forward SIP REGISTER requests to I-CSCF: The SIP REGISTER request sent to the P-CSCF contains the UE’s home domain. The P-CSCF validates the request (e.g., resolves the home domain address, checks for valid security associations, and then forwards it to the I-CSCF).
- Forward SIP transactions to S-CSCF: Once the S-CSCF for the requested service has been resolved by the I-CSCF, the P-CSCF validates and forwards SIP messages from the UE to the appropriate S-CSCF. For example, validation could simply be verification that the user identity in the message is valid.
- Forward SIP transactions to the UE: SIP messages destined for the UE are processed and forwarded by the P-CSCF. For example, the process could be to compress the message before forwarding it to the UE.
- Detect emergency session establishment requests: This refers to sessions for E911 calls. The challenge comes from the fact that all services are governed by the S-CSCF assigned by the I-CSCF in the user’s home network. In the case of the roaming user, this is the incorrect S-CSCF for the emergency server. The solution is to allow the P-CSCF to set off the emergency session by choosing the appropriate S-CSCF in the visited network. Note: E911 call establishment is still being perfected as part of IMS Release 7.
- Send accounting information to CCF: Things like user ID, session type, and session start times need to be sent to the CCF.
- Provide integrity and security of signaling: Message integrity between the UE and the P-CSCF is provided by the IP Security (IPSec) Encapsulating Security Payload (ESP). Release 6 also provides for confidentiality of the SIP messages.
- Decompress and compress SIP messages: The P-CSCF supports three forms of signaling compression based on three different RFCs.
- Subscribe to a registration event package: This capability deals with operations of the user’s registrar in the S-CSCF. Specifically, it covers downloading implicitly registered public user identities and getting notification of network-initiated deregistration events.
- Execute media policing: The P-CSCF is given the capability to examine the contents of the Session Description Protocol (SDP) payload. Specifically, the P-CSCF is looking for media types and codecs that are not allowed for the user. When the SDP does not fit the operator’s policy, the P-CSCF rejects the request and sends the UE an error message. This capability is helpful for operators that wish to limit bandwidth usage by roaming users.
- Maintain session timers: The P-CSCF has access to all session timers so that it can detect and release resources used by hanging sessions. An example of a hanging session is moving out of a cell without notification.
- Interact with policy decision function (PDF): The PDF is responsible for implementing the service: based local policy. The PDF used to be part of the P-CSCF, but it became a separate entity in Release 6.
The basic philosophy of IMS is to empower the P-CSCF to make the critical UE-related decisions. Specifically, the P-CSCF will either route the messages into the IMS or deny access to the IMS.