Overview

The SBC supports configuring and applying Cause Mapping profiles locally during call processing. Additionally, the PSX supports configuring its IP Signaling Profile (IPSP) to specify the Cause Code Mapping profile names and return the Cause Code profile names in the Policy response to SBC. The SBC then uses these Cause Code profile names specified by PSX.

The following IPSP configurations are included in the PSX's SIP Cause Mapping section:

  • Internal to SIP Cause Mapping Profile Name
  • SIP to Internal Cause Mapping Profile Name

The SBC applies the Cause Code Mapping profile in the following order:

  1. If a policy response contains a profile name and a locally configured profile exists with the same name, SBC applies the same profile.

  2. If a policy response does not contain a profile name or if the profile name does not match with any local profile, SBC applies the local Cause Mapping profile attached to the SIP Trunk Group (if configured).

  3. SBC applies a default profile name if none of the above two cases match.


IMPORTANT

Ribbon recommends using the Transparency Profile to configure transparency on the SBC Core for new deployments, as well as applying additional transparency configurations to existing deployments. Do not use IP Signaling Profile flags in these scenarios because the flags will be retired in upcoming releases.

Refer to the SBC SIP Transparency Implementation Guide for additional information.

SBC ERE Configuration

Create IP Signaling Profile

To create the IP Signaling Profile, execute the following command:

% set profiles signaling ipSignalingProfile IPSP1

Create Cause Code Mapping Profile

To create the Cause Coding Mapping Profile, execute the following command:

% set profiles signaling ipSignalingProfile IPSP1 egressIpAttributes sipCauseMapping 
% set profiles signaling ipSignalingProfile IPSP1 egressIpAttributes sipCauseMapping internalToSipCauseMappingProfileName ERE_CPC2SIP
% set profiles signaling ipSignalingProfile IPSP1 egressIpAttributes sipCauseMapping sipToInternalCauseMappingProfileName ERE_SIP2CPC

Create Profile to Map CPC and SIP

% set profiles signaling sipCauseCodeMapping sipToCpcCauseMapProfile ERE_SIP2CPC baseProfile defaultSipCpc causeMap 482 cpcCause 70
% set profiles signaling sipCauseCodeMapping cpcToSipCauseMapProfile ERE_CPC2SIP baseProfile defaultCpcSip causeMap 70 sipCause 405

Attach Cause Code Mapping Profile to Trunk Groups

To associate the created profiles with Ingress and Egress Trunk Groups, execute the following commands:

Ingress

% set addressContext default zone Zone1 sipTrunkGroup SIPTG_2 signaling causeCodeMapping sipCpcCauseMappingProfile ERE_SIP2CPC
% set addressContext default zone Zone1 sipTrunkGroup SIPTG_2 signaling causeCodeMapping cpcSipCauseMappingProfile ERE_CPC2SIP

Egress

% set addressContext default zone Zone2 sipTrunkGroup SIPTG_1 signaling causeCodeMapping sipCpcCauseMappingProfile ERE_SIP2CPC
% set addressContext default zone Zone2 sipTrunkGroup SIPTG_1 signaling causeCodeMapping cpcSipCauseMappingProfile ERE_CPC2SIP

Error Response For INVITE/OPTIONS

The SBC ends a response code for any internal errors or failures encountered by defining a new error string in an existing profile that consists of mapping of error strings to SIP response codes. The SBC defines a unique error string for each location in the code from where the error originates. The SBC then maps the error string to the configurable SIP response code using the existing profile.

Prior to SBC Core version 8.1, if a trunk group was in Out-of-Service state and the SBC received the INVITE message on that trunk group, it rejected the INVITE message with a fixed error code. 

For example:

Figure 1: Mapping of an error string to SIP Response Code

Error String/Cause MapSIP Response Code
TrunkGroupOutOfService503
TrunkGroupBlockedIncoming500
TrunkGroupBlockedBoth503
When the SBC encounters one of the error strings as defined in the InternalSipCauseMapProfile, it processes a SIP request outside the context of an existing dialog and sends the SIP error response according to mapping entry defined in InternalSipCauseMapProfile profile. The SBC then fetches the profile attached to trunk group or zone through which it sends the error response.


The SBC gives higher preference to the InternalSipCauseMapProfile profile compared to  the CPC to SIP response code mapping profile.

If the  InternalSipCauseMapProfile is attached to both the zone and the trunk group, the SBC gives higher preference to profile attached to  the trunk group, if that trunk group is not in a disabled state or Out-of-Service state.

Create the internalSipCauseMapProfile and map it with cause map to the sipcause by executing the command:

set profiles signaling sipCauseCodeMapping internalSipCauseMapProfile internalSIPcause1 causeMap PeerIncomingBlocked sipCause                                                                             
Possible completions:
<SIP Cause value for a given Internal cause>
Enter value in range of 300-606.>550

Attach the sipInternalCauseMappingProfile to the trunk group by executing the command:

% set addressContext default zone INGRESS_ZONE sipTrunkGroup SipTRunkGroup1 signaling causeCodeMapping                                                                            
Possible completions:
  cpcSipCauseMappingProfile             - The name of the CPC to SIP  mapping profile.                                        
  sipCpcCauseMappingProfile             - The name of the SIP to CPC cause mapping profile                                        .
  sipInternalCauseMappingProfile        - The name of internal cause to SIP mapping profile                                          
  useNonDefaultCauseCodeforARSBlackList - When enabled uses cause code 168 for mapping profile mapping profile

set addressContext default zone INGRESS_ZONE sipTrunkGroup SipTG1 signaling causeCodeMapping sipInternalCauseMappingProfile internalSIPcause1

Attach the SIPInternalCause1 profile to the zone by executing the command:

% set addressContext default zone INGRESS_ZONE causeCodeMapping                                                                            
Possible completions:
 sipInternalCauseMappingProfile - The name of internal cause to SIP mapping profile                                          

% set addressContext default zone INGRESS_ZONE causeCodeMapping sipInternalCauseMappingProfile internalSIPcause1

The SBC uses the existing profile InternalSipCauseMapProfile to define new mapping entries of internal errors/failures to SIP response code.

Note

Make sure to attach sipInternalCauseMappingProfile at both the TG and Zone levels to map all errors correctly.


View the mapping entries by executing the command:

show profiles signaling sipCauseCodeMapping internalSipCauseMapProfile internalSIPcause1                                                                

External PSX Configuration

Create IP Signaling Profile

Figure 2: IP Signaling Profile



For “SIP in Core” SBC deployments, if the cause code received at egress SBC requires to be passed on to ingress SBC, either “Include Reason Header” flag in IP Signaling Profile needs to be enabled or a “Sip Cause Code Mapping Profile” need to be attached to SIP Core Trunk Groups.

Create Cause Code Mapping Profile

The SIP Cause Code Mapping profile names are received from External PSX in the policy response.

Note

The PSX sends the SIP_USED_IN_CORE flag with the policy response to the egress SBC. If the egress SBC receives the SIP_USED_IN_CORE flag and the ingress zone of the egress SBC is in the default signaling zone, the egress SBC does not allow SIP Cause Code Mapping for CPC to SIP because the scenario is SIP In Core. If the PSX either is not present or does not enable the SIP_IN_CORE flag, then SIP Cause Code Mapping for CPC to SIP functions as if the SBC uses a non-default signaling zone. For more information, refer to SIP Profiles.

Figure 3: Cause Code Mapping Profile



Create Profile to Map CPC and SIP

% set profiles signaling sipCauseCodeMapping sipToCpcCauseMapProfile PSX_SIP2CPC baseProfile defaultSipCpc causeMap 482 cpcCause 70
% set profiles signaling sipCauseCodeMapping cpcToSipCauseMapProfile PSX_CPC2SIP baseProfile defaultCpcSip causeMap 70 sipCause 405

Attach Cause Code Mapping Profile to Trunk Groups

To associate the created profiles with Ingress and Egress Trunk Groups, execute the following commands:

Ingress

% set addressContext default zone Zone1 sipTrunkGroup SIPTG_2 signaling causeCodeMapping sipCpcCauseMappingProfile PSX_SIP2CPC
% set addressContext default zone Zone1 sipTrunkGroup SIPTG_2 signaling causeCodeMapping cpcSipCauseMappingProfile PSX_CPC2SIP

Egress

% set addressContext default zone Zone2 sipTrunkGroup SIPTG_1 signaling causeCodeMapping sipCpcCauseMappingProfile PSX_SIP2CPC
% set addressContext default zone Zone2 sipTrunkGroup SIPTG_1 signaling causeCodeMapping cpcSipCauseMappingProfile PSX_CPC2SIP