SIP Per-User CAC

The Oracle® Enterprise Session Border Controller’s call admission control (CAC) supports an enhanced degree of granularity for SIP sessions.

Without this feature enabled, the Oracle® Enterprise Session Border Controller performs call admission control (CAC) based on:

  • Bandwidth limits configured in realms and nested realms
  • Number of media flows available through the steering pool per realm
  • Number of inbound sessions configured for a SIP session agent
  • Number of total sessions (inbound and outbound) per SIP session agent
  • Use of the Oracle® Enterprise Session Border Controller’s support for common open policy service (COPS), allowing the Oracle® Enterprise Session Border Controller to perform CAC based on the policies hosted in an external policy server

These methods provide a basic level of call admission control in order to ensure that a SIP session agent’s capacity is not exceeded. You can also ensure that signaling and media bandwidth capacities are not exceeded for physical trunks and peers.

With this feature enabled, the Oracle® Enterprise Session Border Controller changes behavior so that it will only allow the configured number of calls or total bandwidth to and from each user in a particular realm. The overall realm bandwidth and steering pool limits still apply, and as before, the Oracle® Enterprise Session Border Controller still rejects users who might be within their CAC limitations if accepting them with exceed the bandwidth limitations for parent or child realms and steering pools.

For SIP sessions, the Oracle® Enterprise Session Border Controller now keeps track of the amount of bandwidth a user consumes and the number of active sessions per address of record (AoR) or per IP address, depending on the CAC mode you select (either aor or ip). When an endpoint registers with the Oracle® Enterprise Session Border Controller, theOracle® Enterprise Session Border Controller allots it a total amount of bandwidth and total number of sessions.

This section describes the details of how SIP per user CAC works.

You should note that the functionality this section describes only works if you enable registration caching on your Oracle® Enterprise Session Border Controller.

For SIP sessions, the Oracle® Enterprise Session Border Controller now keeps track of the amount of bandwidth a user consumes and the number of active sessions per address of record (AoR) or per IP address, depending on the CAC mode you select (either aor or ip). When an endpoint registers with the Oracle® Enterprise Session Border Controller, the Oracle® Enterprise Session Border Controller allots it a total amount of bandwidth and total number of sessions.

Per User CAC Modes

There are three modes that you can set for this feature, and each has an impact on how the other two per-user-CAC parameters are implemented:

  • none—No per user CAC is performed for users in the realm.
  • aor—The Oracle® Enterprise Session Border Controller performs per user CAC according to the AoR and the contact associated with that AoR for users in the realm.
  • ip—The Oracle® Enterprise Session Border Controller performs per user CAC according to the IP address and all endpoints that are sending REGISTER messages from the IP address for users in the realm.

Per User CAC Sessions

You can set the number of CAC for sessions per user in the realm configuration. Depending on the CAC mode you set, the sessions are shared between contacts for the same AoR or the endpoints behind the same IP address.

When it receives an INVITE, the Oracle® Enterprise Session Border Controller determines the registration entry for the calling endpoint and the registration for the called endpoint. It then decides if session can be established between the two. If it can, the Oracle® Enterprise Session Border Controller establishes the session and changes the active session count for the calling and called endpoints. The count is returned to its original value once the session is terminated.

Per User CAC Bandwidth

You can set the per user CAC bandwidth in realm configuration, too, and it is handled much the same way that the sessions are handled. That is, depending on the CAC mode you set, the bandwidth is shared between contacts for the AoR or the endpoints behind the same IP address. All endpoints must be registered with the Oracle® Enterprise Session Border Controller.

When it receives a Request with SDP, the Oracle® Enterprise Session Border Controller checks to see if there is enough bandwidth for the calling endpoint and for the called endpoint. The Oracle® Enterprise Session Border Controller assumes that the bandwidth usage is symmetric, and it uses the maximum bandwidth configured for the codec that it finds in the Request. In the event that there are multiple streams, the Oracle® Enterprise Session Border Controller determines the total bandwidth required for all of the streams. If the required bandwidth exceeds what is available for either endpoint, the Oracle® Enterprise Session Border Controller rejects the call (with a 503 error response). If the amount of available bandwidth is sufficient, then the used bandwidth value is increased for both the registered endpoints: calling and called. Any mid-session requests for changes in bandwidth, such as those caused by modifications in codec use, are handled the same way.

The Oracle® Enterprise Session Border Controller also keeps track of the bandwidth usage on a global level. When the call terminates, the bandwidth it was consuming is returned to the pool of available bandwidth.

Notes on HA Nodes

This feature has been implemented so that a newly active system is able to perform SIP per user CAC. The standby Oracle® Enterprise Session Border Controller is updated with the appropriate parameters as part of the SIP session update.

SIP per User CAC Configuration

Note that you must enable registration caching for this feature to work.

To configure SIP per user CAC:

  1. In Superuser mode, type configure terminal and press Enter.
    ORACLE# configure terminal
  2. Type media-manager and press Enter.
    ORACLE(configure)# media-manager
    ORACLE(media-manager)#
  3. Type realm-config and press Enter. The system prompt changes to let you know that you can begin configuring individual parameters.
    ORACLE(media-manager)# realm-config
    ORACLE(realm-config)#
  4. Select the realm where you want to want to add SIP per user CAC.
    ORACLE(realm-config)# select
  5. user-cac-mode—Set this parameter to the per user CAC mode that you want yo use. The default value is none. The valid values are:
    • none—No user CAC for users in this realm

    • aor—User CAC per AOR

    • ip—User CAC per IP

  6. user-cac-sessions—Enter the maximum number of sessions per user for dynamic flows to and from the user. The default is 0. Leaving this parameter set to its means that there is unlimited sessions, meaning that the per user CAC feature is disabled in terms of the constraint on sessions. The valid range is:
  7. Minimum—0
  8. Maximum—999999999
  9. user-cac-bandwidth—Enter the maximum bandwidth per user for dynamic flows to and from the user. The default is 0 and leaving this parameter set to the default means that there is unlimited bandwidth, meaning that the per user CAC feature is disabled in terms of the constraint on bandwidth. The valid range is:
    • Minimum—0

    • Maximum—999999999