Shared CAC for SIP Forked Calls

A forked call is one which has multiple INVITEs for the same call. For example, if an Application Server in the provider core network forks a call attempt, the application server sends several INVITEs for the same call toward the Oracle® Enterprise Session Border Controller. Each INVITE is destined for a unique device that belongs to the same user. Ideally, that user will only answer one device. The Oracle® Enterprise Session Border Controller treats each INVITE as a unique call request.

By default, each of the multiple INVITE forks are checked against CAC bandwidth limits, and thus they each consume bandwidth resources when they are received, even though only one of the forks will succeed in establishing a permanent session. Therefore, for many operators the CAC behavior of the SD is too restrictive and results in rejected call attempts which should have been allowed.

The following diagram shows a forked call scenario. The total bandwidth counted against the realm is 60 kbps. If the realm has a bandwidth ceiling of 50 kbps, one of the INVITEs will be rejected.

You can, however, enable the system to enforce CAC limits only once for SIP forked calls as long as the calls are identified as such, meaning that they will use the same bandwidth resources. The Oracle® Enterprise Session Border Controller counts the forked call’s most bandwidth-hungry codec at the time it arrives at the Oracle® Enterprise Session Border Controller. In the above diagram, with shared bandwidth for forked calls enabled, the Oracle® Enterprise Session Border Controller counts 30 kbps against the realm’s total bandwidth after that INVITE arrives, even after the first two INVITES have passed into the final realm.