Diameter: CLF

The Oracle Communications Session Border Controller supports the e2 interface over a Diameter connection acting as a P-CSCF communicating with a CLF. The application ID field must be set to 16777231 to run the e2 reference point.

A Connectivity Location Function (CLF) maintains mappings between endpoints with dynamically assigned IP addresses and their physical location. The Oracle Communications Session Border Controller, acting as a P-CSCF, is the intermediary device between a registering endpoint and a CLF. The CLF thus validates and tags a registering endpoint, and the Oracle Communications Session Border Controller applies the CLF's actions.

CLF Behavior

The Oracle Communications Session Border Controller and a CLF only interact with each other when an endpoint registers or re-registers. The Oracle Communications Session Border Controller, acting as the P-CSCF, is the first SIP device that the REGISTER message reaches. Upon receiving the REGISTER message(1), the Oracle Communications Session Border Controller queries the CLF using the Diameter protocol. The endpoint's (public) IP address and port, and the Oracle Communications Session Border Controller's IP information are sent to the CLF in a Diameter User-Data-Request (UDR) message(2).

The CLF responds to the Oracle Communications Session Border Controller with a Diameter User-Data-Answer (UDA) message(3). If the request is approved, then the CLF also sends a location-string value to be inserted in one of the SIP headers. The Oracle Communications Session Border Controller inserts a P-Access-Network-Info header containing the location-string into the incoming REGISTER message and forwards this message(4) to the SIP registrar/I/S-CSCF.

Depicts a call flow with an endpoint registering to a registrar.

The Oracle Communications Session Border Controller inserts this P-Access-Network-Info header into all subsequent SIP messages from this endpoint as they are forwarded into the core network. The P-Access-Network-Info header is inserted into all SIP requests and responses except for ACK and CANCEL messages. For all boundaries where SIP messages pass from trusted to untrusted SIP interfaces or session agents, the Oracle Communications Session Border Controller will strip out the P-Access-Network-Info header as expected.

Depicts the components used for registration within a CLF.

If the CLF responds with a Reject UDA message, the Oracle Communications Session Border Controller rejects the registration, and sends a 503 - Service Unavailable message back to the registering endpoint. In this way, the CLF can be used for admission control.

The Oracle Communications Session Border Controller communicates with the CLF solely for retrieving location information from the CLF, and not for notifying the CLF about an endpoint's registration state or activity. When an endpoint's registration ends, either through a normal expiration, getting rejected by the registrar, or through specific de-registering or error conditions, the Oracle Communications Session Border Controller deletes the locally cached registration location string. The Oracle Communications Session Border Controller does not inform the CLF about any registrations that have been deleted.

P-Access-Network-Info Header Handling

The P-Access-Network-Info header is created and populated according to the following rules:

  1. If the CLF returns an Accept UDA message with a location string, the Oracle Communications Session Border Controller inserts the location string into a P-Access-Network-Info header in the outgoing REGISTER message.
  2. If the CLF returns an Accept UDA message without a location string, the Oracle Communications Session Border Controller inserts the configured default string into a P-Access-Network-Info header in the outgoing REGISTER message.
  3. If the CLF returns an Accept UDA message without a location string and no location string is configured on Oracle Communications Session Border Controller, the outgoing REGISTER message is forwarded out of the Oracle Communications Session Border Controller, but no P-Access-Network-Info header is created for the REGISTER message.

P-CSCF PANI Enhancements

The Oracle Communications Session Border Controller always adds PANI headers to the egress SIP message with the value set to either:

  • The location of information recieved from the remote CLF agent
  • The default-location-string

When you enable allow-pani-for-trusted-only in the SIP config configuration element, the Oracle Communications Session Border Controller only forwards PANI headers to and from trusted sources or if access-info does not have network-provided in the header. A trusted domain is determined by the trust-level of the corresponding realm or SIP interface.

CLF Re-registration

The Oracle Communications Session Border Controller will send a new UDR message to the CLF to request a new location string if any of the following events occur:

  1. The endpoint's contact address changes.
  2. The SIP Register message's Call-ID header changes.
  3. The endpoint's public IP Address or UDP port changes.
  4. The endpoint connects to a different SIP interface, port, or realm on the Oracle Communications Session Border Controller than it did in the initial REGISTER message.
  5. The registration expires in the Oracle Communications Session Border Controller's registration cache.

CLF Failures

If a Diameter connection fails, the Oracle Communications Session Border Controller will continually try to re-establish the connection. Endpoints that are already registered will stay registered unless they timeout or if the registrar rejects their refreshes. When the Diameter connection has not been established, and an endpoint registers on a SIP interface that is configured to use CLF, the Oracle Communications Session Border Controller forwards new REGISTER messages to the registrar using the default location string.

CLF Emergency Call Handling

The Oracle Communications Session Border Controller allows emergency calls into the network even if the endpoint that places the emergency call is not registered. In the expected fashion, the Oracle Communications Session Border Controller will query the CLF first for an incoming emergency call sourced from an unregistered endpoint. If the CLF response is successful, then the Oracle Communications Session Border Controller will insert the string returned from the CLF into a P-Access-Network-Info header, and insert this header into the emergency call's REGISTER message. If no location string is returned with a successful CLF response, the default location string is inserted into P-Access-Network-Info header.

If the CLF's response is to reject the emergency call, the Oracle Communications Session Border Controller will insert the configured default location string into the P-Access-Network-Info header and forward the emergency call's REGISTER message toward the registrar. For emergency calls where the endpoint has already successfully registered, the call will be routed into the network using the expected methods for emergency call routing.

Depicts CLF deployment components supporting emergency calls.

If the Diameter connection to the CLF is down, emergency calls from un-registered endpoints are still allowed into the network using the default string inserted into the emergency messages.