In this section:
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:
The SBC applies the Cause Code Mapping profile in the following order:
If a policy response contains a profile name and a locally configured profile exists with the same name, SBC applies the same profile.
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).
SBC applies a default profile name if none of the above two cases match.
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.
To create the IP Signaling Profile, execute the following command:
% set profiles signaling ipSignalingProfile IPSP1
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
% 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
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
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 Map | SIP Response Code |
---|---|
TrunkGroupOutOfService | 503 |
TrunkGroupBlockedIncoming | 500 |
TrunkGroupBlockedBoth | 503 |
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.
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
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.
The SIP Cause Code Mapping profile names are received from External PSX in the policy response.
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
% 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
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