For a 3xx redirect response with multiple contacts (having host port as SBC SIP signaling IP address), if the trunk group is disabled or the CAC limit is reached for a previous contact's route the following applies:
- The subsequent contacts are tried.
For example, when A calls B, ERE/PSX returns three routes – Route1, Route2, and, Route3. The SBC sends INVITE towards B on Route1. B replies (3xx) with three contacts (Contact1, Contact2, and Contact3). The host port of all the three contacts is the SBC SIP signaling IP address. The ERE/PSX is checked for the route towards Contact1. A single route RouteA1 is returned. When RouteA1 trunk group is disabled or CAC call limit is reached, the subsequent contacts (contact2 and contact3) must be tried. Therefore, Invite is sent for contact2. - The subsequent routes in the original route set are tried if all the contacts are exhausted.
For example, when A calls B, ERE/PSX returns three routes – Route1, Route2, and Route3. The SBC sends INVITE towards B on Route1. B replies (3xx) with three contacts (Contact1, Contact2, and Contact3). The host port of all the three contacts is the SBC SIP signaling IP address. ERE/PSX is checked for the route towards Contact1. A single route RouteA1 is returned. When RouteA1 trunk group is disabled or CAC call limit is reached, the subsequent contacts (contact2 and contact3) must be tried. If all the contacts fail original routes, Route2 and Route3 must be tried.
The crankback functionality is triggered based on the presence, absence, or value of a SIP information element, for example, a proprietary header, parameter, or response code. This is provided by enhancing SMM capabilities.
To invoke crank back functionality, SMM is enhanced to include a predefined SMM variable for crank-back invocation. The SMM variable is assigned to one of the predefined action values. To invoke crank-back functionality, the SMM rule is added so that nextRouteActionOnCrankBack
is set to a predefined action value. Whenever the SMM rules are met, the SBC takes crank back action based on the action value. The user can assign value to this using SMM rules.
The parameter nextRouteActionOnCrankBack
is a predefined SMM operation parameter that configures crankback invocation for this feature.
SIP Redirect Handling
The SBC manages the process of trying "targets" to reach the destination of a SIP call. The targets consist of:
- Routes returned by the initial route lookup performed by the PES module.
- Explicit destinations received in 300 redirect response messages.
- Additional routes determined as a result of re-querying PSX PES, which is indicated in a 300 redirect response.
Re-querying occurs when the IP address of the redirect contact is sent from the SBC that sent the INVITE.
Important aspects of SBC SIP redirect processing are:
- The SBC maintains two lists, routes and redirect contacts. The merge/purge process applies only to redirect contacts, not the original routes.
- A PSX Signaling Profile drop-down allows the provisioner to configure one of the following:
- No redirection allowed.
- Multiple re-directions per route.
- A single redirection per route.
- The SBC processes only the first 8 contacts in any single redirect received.
- The SBC allows a maximum of 10 redirect attempts per route.
- If one of the redirects cause SBC to re-query PSX, all previously determined routes and redirects are purged. A maximum 10 such redirect re-queries of PSX are allowed per call.
The first redirect contact causes a PSX query (the host portion of the contact URI is the SBC SIP signaling IP address) and therefore the rest of the contacts are purged.