Overview
The Packet Service Profile supports up to four audio encoding entries, or Codecs, using ERE. The SBC Core will negotiate a Codec from the list of Codecs allowed in the Packet Service Profile. One example of a negotiation scenario occurs when a call comes into the SBC from an H.323 peer. The SBC preferred coding may be G.711, while the H.323 gateway at the far end may prefer G.729A coding because that gateway has limited bandwidth to access the IP network.
In order to properly handle a call compression negotiation such as that described above, it is necessary to examine the codec list on both the local and remote gateway to find one or more codecs that are common to both. The precedence of the resultant codecs is controlled by the local precedence setting, or the precedence of the remote peer. This provisioning directive is provided by the honorRemotePrecedence
parameter.
Refer to Packet Service Profile Provisioning Examples for provisioning examples.
Audio Transparency
The SBC Core supports audio transparency in relaying unknown attributes and a subset of known attributes, such as rtpmap
, fmtp
, and T38
fax
. The SBC also manages bandwidth for audio streams in pass-through calls. Audio transparency is controlled by the following PSP and Trunk Group parameters/flags.
Packet Service Profile:
Enable transcoderFreeTransparency
for the session (enable on either of the PSPs)
Configure audioTransparency
settings
Enable/disable reserveBwForPreferredAudioCommonCodec
SIP Trunk Group:
Refer to SBC SIP Transparency Implementation Guide for transparency implementation details.
IMPORTANT
Ribbon recommends using the Transparency Profile to configure transparency on the SBC Core 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.
Granular Control of HD Codecs in Offers or Answers
Both the SBC ERE and PSX provide control over HD codec prioritization through Packet Service Profile options. ERE functionality is described in this section.
- Prioritization of an HD codec over a non-HD codec in the offer when the peer supports both HD and NB codecs, even if transcoding is required
- Prioritization of a HD codec over a non-HD codec in the answer
- Support of a narrowband (NB) codec list only toward a peer supporting HD and NB codecs, for backward compatibility
The following SBC flags are configurable in the Packet Service Profile to control HD codec prioritization:
- HDCodec Preferred
- Prefer NBPassthru Over HDTranscode
- Match Offered Codec Group If Nb Only
- Force Route PSPOrder
Packet Service Profile
Command Syntax
% set profiles media packetServiceProfile <unique_profile_name>
aal1PayloadSize <0-999>
audioTransparency <unknownCodecBitRate | unknownCodecPacketSize>
codec <codecEntry1-codecEntry12> <codec>
dataCalls
initialPlayoutBufferDelay <5-50>
packetSize <10 | 20 | 30 | 40>
preferredRtpDataPayloadType <0-127>
dtls
dtlsCryptoSuiteProfile <profile name>
dtlsFlags
allowDtlsFallback <disable | enable>
dtlsSctpRelay <disable | enable>
dtlsSrtpRelay <disable | enable>
enableDtlsSrtp <disable | enable>
flags
honorRemotePrecedence <disable | enable>
mediaPacketCos <0-7>
nonRtpStream
maxNonRtpBandwidth <0-8000>
packetToPacketControl
peerAbsenceAction <none | peerAbsenceTrap | peerAbsenceTrapAndDisconnect>
preferredRtpPayloadTypeForDtmfRelay <0-128>
qosValues
applicationDscp <0-63>
dtlsSctpDscp <0-255>
msrpDscp <0-255>
t140Dscp <0-63>
rtcpOptions rtcp <disable | enable>
secureRtpRtcp
cryptoSuiteProfile <profile_name>
flags
allowFallback <disable | enable>
allowPassthru <disable | enable>
enableSrtp <disable | enable>
resetEncDecROCOnDecKeyChange <disable | enable>
resetROCOnKeyChange <disable | enable>
updateCryptoKeysOnModify <disable | enable>
sendRoutePSPPrecedence <disable | enable>
silenceFactor <0-50>
silenceInsertionDescriptor
g711SidRtpPayloadType <0-127>
heartbeat <disable | enable>
t38
dataRateManagementType <type1LocalGenerationOfTcf | type2TransferOfTcf>
ecm ecmPreferred <disable | enable>
lowSpeedNumberOfRedundantPackets <0 | 1 | 2>
maxBitRate <2.4Kbits_s | 4.8Kbits_s | 9.6Kbits_s | 14.4Kbits_s>
numberOfRedundantPackets <0 | 1 | 2>
protocolVersion <0 | 3>
typeOfService <0-255>
videoCalls
audioOnlyIfVideoIsPrevented <disable | enable>
codecListProfile <name>
ieee8021QVLanCos <0-7>
ipv4Tos <0-255>
ipv6TrafficClass <0-255>
maxVideoBandwith <0-50000 kbps>
videoBandwidthReductionFactor <0-100>
voiceInitialPlayoutBufferDelay <1-200 ms>
Command Parameters
The Packet Service Profile parameters are described below:
Packet Service Profile Parameters
Parameter | Length/Range | Description |
---|
packetServiceProfile
| N/A | Specifies a unique identifier (name) for packet service profile. You can define any name or use Default as the parameter. |
aal1PayloadSize
| 0-999 | The ATM Adaption Layer Type 1 (AAL-1) payload size (default = 47). |
audioTransparency | N/A | Use this object to configure Audio Transparency settings. unknownCodecBitRate – The bit rate, in Kilobytes/second, required for bandwidth computation of unknown audio codecs. (range: 1-1000 KB/sec / default = 124)unknownCodecPacketSize – The packet size, in milliseconds, required for Bandwidth computation of unknown audio codecs. (range: 5-100 ms / default = 10)
NOTE: If the bandwidth is not configured, the unknownCodecPacketSize and unknownCodecBitRate are used for the pass-through call. |
codec
| codecEntry1-codecEntry12 | <codecEntry ID> <codec_name> – Defines the codec entry priorities and codec names. See Codec Parameters table below for details.
Up to 12 codec configurations are supported by the SBC for PSX, and Advanced ERE deployment scenarios (refer to Routing and Policy Management for a description of the different routing configurations). |
dataCalls
| N/A | Data calls pertaining to restricted or unrestricted digital data. initialPlayoutBufferDelay – Used for G.711 only. This is the initial playout delay for calls with a data bearer channel, for example, ISDN 64K data calls. This value is configured separately from the initial playout delay for voice channels (voiceInitialPlayoutBufferDelay ) so providers can trade off delay on data calls versus the likelihood of jitter causing delay changes while the playout buffer adapts. Some data bearer calls are very sensitive to delay changes (such as H.320 video conferencing), so a higher initial delay should reduce the chance of jitter bursts causing problems. (range: 5-50 / default = 50).packetSize <10 | 20 | 30 | 40> – The maximum data packet size (Kilobits).
preferredRtpDataPayloadType – The RTP Payload Type included in the RTP header of the data packet. (range: 0-127 / default = 56)
|
dtls | N/A | Use this object to control DTLS-SRTP and DTLS fall-back behavior in this Packet Service Profile. dtlsCryptoSuiteProfile <profile name> – Name of Crypto Suite Profile to attach to this Packet Service Profile.dtlsFlags
NOTE: DTLS-SRTP relay is a licensed feature and requires an SRTP license to be installed on the SBC. NOTE: When a session contains DTLS-SRTP video stream or DTLS/SCTP application stream and there is no audio stream specified, the SBC allows the session when the ingress and egress Packet Service Profiles (PSP) are configured as audio pass-through. If ICE is part of session establishment in WebRTC (WRTC) scenario, the relay mechanism implemented for DTLS-SRTP and DTLS/SCTP is supported independent of ICE processing. Refer to Configuring SBC for WRTC for additional WebRTC configuration details. |
flags
| N/A | See Packet Service Profile Flags table below for flag descriptions. |
honorRemotePrecedence
| N/A | Flag to set precedence of audio encoding priority order of the local packet service profile over the remote peers audio encoding priority order when creating the priority order of the audio encodings that are common to both. Options are: disable (default) – Applies precedence to local audio encoding priority order, local Secure RTP/RTCP settings and crypto suite priority order.enable – Applies precedence to the remote peer's audio encoding priority order. For ingress call legs, also applies precedence to remote peer's Secure RTP/RTCP settings and crypto suite priority order.
|
mediaPacketCos
| 0-7 | Specifies Class of Service (COS) value to be set in the IEEE 802.1D User Priority field of media packets transmitted on a call leg that uses this Packet Service Profile. This parameter only has an effect if the network interface supports 802.1Q tagged Ethernet frames. (default = 0 which is interpreted as best effort). |
nonRtpStream | N/A | Use this object to configure Non-RTP Stream settings. maxNonRtpBandwidth - This attribute is added in the packet service profile to define the maximum allowed bandwidth for Non-RTP stream. NOTE
|
packetToPacketControl
| N/A | Use this object to define the packet-to-packet control parameters. See Packet to Packet Control Parameters table below for details. |
peerAbsenceAction
| N/A | Specifies the action to take when mediaPeerInactivity timer expires (refer to Media System - CLI page). none – (default) Inactivity detection is disabled.peerAbsenceTrap – Choose this option to generate a trap if RTP inactivity is detected.peerAbsenceTrapAndDisconnect – Choose this option to generate a trap and tear down the call if RTP inactivity is detected.
|
preferredRtpPayloadTypeForDtmfRelay | 0-128 | Specifies the preferred RTP payload type in the RTP header of audio packets for this encoding. (default = 128). This parameter is only used for 8 kHz clock rate. DTMF payload type of each subsequent clock rate (16 kHz, 24 kHz, etc.) is incremented by 1. NOTE: Using the default value of "128" for preferredRtpPayloadTypeForDtmfRelay implies that the preferred DTMF value (from the system configurable) is used for this profile. NOTE: If interworkDtmfWithoutTranscoding is enabled, ensure preferredRtpPayloadTypeForDtmfRelay is set to a valid value (96-127). If preferredRtpPayloadTypeForDtmfRelay value is invalid (set to "128"), the system may fail to pick up the value configured using "set system dspPad rtpDtmfRelay " command because DSPs are not used for the call. NOTE: The SBC uses the preferredRtpPayloadTypeForDtmfRelay configuration as the payload type for 8 kHz DTMF when not used by any other codec. For wideband (16 kHz) DTMF, the SBC uses the next available payload type (to the configured preferredRtpPayloadTypeForDtmfRelay value). |
qosValues | N/A | Use this object to configure the Quality of Service (QoS) DSCP value for this Packet Service Profile. applicationDscp - Attribute for configuring qosValues for Application media type.dtlsSctpDscp – Use this attribute to set the DSCP value in the Differentiated Services Field of the IP header for DTLS/SCTP packets that egress the SBC. (range: 0-255 / default = 0)msrpDscp – Use this attribute to set the DSCP value to use for egressing MSRP packets (range: 0-255 / default = 0).t140Dscp – Use this parameter to specify the DSCP value for T.140 packets. Note: If the call type is t140 , then configure the DSCP value as DSCP T140 in the QOSValues parameter. (Range: 0-63 / default = 0).
|
rtcpOptions
| N/A | Use this object to specify Real Time Control Protocol (RTCP) options for the call. RTCP is used to report network traffic congestion data. Various actions (for example call disconnect) may be taken when congestion threshold settings are exceeded. See RTCP Options Parameters table below for details. |
secureRtpRtcp
| N/A | Specifies whether secure RTP Real Time Control Protocol (SRTP) is enabled for the call: cryptoSuiteProfile <profile name> – A unique identifier for the Cryptographic Suite Profile.flags – Possible values are disable/enable . The default value of each flag below is "disable ".
allowFallback – Enable flag to allow fallback to standard RTP/RTCP when crypto attribute negotiation fails.allowPassthru – Enable flag to allow the SBC to pass-through SRTP media without authenticating, decrypting, or encrypting it internally. The SBC will prioritize SRTP pass-through media over terminated SRTP media. When this flag is disabled, the SBC terminates all SRTP and SRTCP media for authentication, encryption, or decryption.
NOTE: To use this flag, enableSrtp flag must be enabled. enableSrtp – Enable this flag to enable secure RTP/RTCP.resetEncDecROCOnDecKeyChange – Enable flag to reset Roll Over Counter for both encryption and decryption when decryption key changes.resetROCOnKeyChange – Enable flag to reset the SRTP Roll Over Counter when the session key changes.updateCryptoKeysOnModify – For an SRTP call, if this flag is enabled in Packet Service Profile and call leg mode is changed from sendonly/inactive/recvonly to sendrecv, the SBC generates a new set of crypto attributes.
|
sendRoutePSPPrecedence
| N/A | Use this flag to allow audio encoding order preference in outgoing messages only. |
silenceFactor
| N/A | The percentage of call time that silence is expected. This parameter is used to reduce expected call bandwidth. (range: 0-50 / default = 40). |
silenceInsertionDescriptor
| N/A | Use this object to define the Silence Insertion Descriptor (SID) attributes. g711SidRtpPayloadType – Specifies the G.711 Silence Insertion Descriptor (SID) RTP payloadType. (range: 0-127 / default = 19).heartbeat – By default, this flag is enabled to allow SID packets to be sent within a minimal interval during a silence period (at least one SID packet must be sent within a SID maximum packet time frame).
|
t38
| N/A | Use this object to specify T.38 data rate attributes using following parameters: dataRateManagementType :type1LocalGenerationOfTcf – Type 1 data rate management requires that the Training Check Frame (TCF) training signal is generated locally by the receiving gateway. Data rate management is performed by the emitting gateway based on training results from both PSTN connections. Type 1 is used for TCP implementations and is optionally used with UDP implementations.type2TransferOfTcf – (default) Type 2 data rate management requires that the TCF is transferred from the sending gateway to the receiving gateway rather than having the receiving gateway generate it locally. Speed selection is done by the gateways in the same way as they would on a regular PSTN connection. Data rate management type 2 requires the use of UDP and is not recommended for use with TCP.
ecm – Use this flag to allocate DSP resources, when available, for T.38 Error Correction Mode (ECM) calls.disable – (default) use normal resource allocation.enable
lowSpeedNumberOfRedundantPackets – This field specifies the number of redundant IFP messages sent in a UDP packet for T.38 low speed fax transmission, and applies only if the T.38 error correction type is redundancy. (range: 0-2 / default = 1).maxBitRate – Use this object to select the T.38 Maximum Bit Rate which controls and manipulates bits 11, 12, 13, and 14 in the DIS command received by the SBC from either the TDM circuit interface or the T.38 packet interface:2.4Kbits_s – For modem type ITU-T V.27ter fall-back mode.4.8Kbits_s – For modem type ITU-T V.27ter.9.6Kbits_s – For modem types ITU-T V.27ter and V.29.14.4Kbits_s – (default) For modem types ITU-T V.27ter, V.29, and V.17. This setting is used to constrain the type of modem modulation schemes.
numberOfRedundantPackets – Use this parameter for high-speed fax relay to specify the number of redundant Internet Facsimile Protocol (IFP) messages sent in a User Datagram Packet (UDP) for fax transmission. (range: 0-2 / default = 1).protocolVersion – Use this parameter to specify the T.38 Fax protocol version to use.
|
typeOfService
| 0-255 | Use this object to set the six most significant bits of the "Type of Service" byte in the IP header. Default value is 0. |
videoCalls
| N/A | Use this object to define video call parameters. audioOnlyIfVideoIsPrevented – By default, this flag is enabled to allow call to continue with the audio only portion if the video cannot be established for any reason.codecListProfile – Name of the Codec List profile used to store precedence and purge lists of video codec MIME sub-types.ieee8021QVLanCos – IEEE-802 1Q VLAN Class of Service. (range: 0-7 / default = 0)ipv4Tos – IPv4 type of service. (range: 0-255 / default = 0)ipv6TrafficClass – IPv6 traffic class. (range: 0-255 / default = 0) NOTE: ipv6TrafficClass is not supported with H.323 calls.
maxVideoBandwith – The maximum allowable session bandwidth (in kbps) for a call that includes video streams. This value Includes the bandwidth for all streams in the call (audio, video, BFCP, and so on). If "0" is set as the value, video calls are not allowed; and only audio calls can be set up following the normal allocation process (range: 0-50000 kbps / default = 10).videoBandwidthReductionFactor – The amount, as a percentage, to reduce the session bandwidth allocation for calls that include video streams. This setting only affects the internal allocation of bandwidth used for the calls (does not affect the signaling). For example: if the reduction factor is "20", the bandwidth allocated for calls is reduced by 20%. In other words, if the normal bandwidth allocation for calls is 1000 kbps, a 20% reduction equates to a new 800 kbps bandwidth. (range: 0-100 / default = 0).
|
voiceInitialPlayoutBufferDelay
| 1-200 | Use this parameter to configure the initial playout buffer delay value (in milliseconds). Select a value just slightly greater than the maximum expected packet jitter across the network.The value must be in increments of 1 ms. (default = 10). NOTE: Using a value above 50 ms is not recommended during normal operation. |
Codec
Command Syntax
% set profiles media packetServiceProfile <unique_profile_name> codec <codecEntry1-codecEntry12> <codec name>
Command Parameters
Parameter | Description |
---|
codecEntry1 <codec name> | Codec entry with a priority of "1" |
codecEntry2 <codec name> | Codec entry with a priority of "2" |
codecEntry3 <codec name> | Codec entry with a priority of "3" |
codecEntry4 <codec name> | Codec entry with a priority of "4" |
codecEntry5 <codec name> | Codec entry with a priority of "5" |
codecEntry6 <codec name> | Codec entry with a priority of "6" |
codecEntry7 <codec name> | Codec entry with a priority of "7" |
codecEntry8 <codec name> | Codec entry with a priority of "8" |
codecEntry9 <codec name> | Codec entry with a priority of "9" |
codecEntry10 <codec name> | Codec entry with a priority of "10" |
codecEntry11 <codec name> | Codec entry with a priority of "11" |
codecEntry12 <codec name>
| Codec entry with a priority of "12". |
For each codecEntry ID, choose a <codec name> . Example default codec names are: G711-DEFAULT (default codec)
G711SS-DEFAULT G711_NONE
G723-DEFAULT G723A-DEFAULT G726-DEFAULT G729A-DEFAULT G729AB-DEFAULT
|
Flags
% set profiles media packetServiceProfile <unique_profile_name> flags
HDCodecPreferred <disable | enable>
MatchOfferedCodecGroupIfNbOnly <disable | enable>
allowAudioTranscodeForMultiStreamCall <disable | enable>
allowMidCallSSRCModification <disable | enable>
digitDetectSendEnabled <disable | enable>
disallowDataCalls <disable | enable>
dscpPassthrough <disable | enable>
forceRoutePSPOrder <disable | enable>
generateAndSignalSSRCAndCname <disable | enable>
interworkDtmfWithoutTranscoding <disable | enable>
preferNBPassthruOverHDTranscode <disable | enable>
reserveBwForPreferredAudioCommonCodec <disable | enable>
ssrcRandomize <disable | enable>
t140Call <disable | enable>
useDirectMedia <disable | enable>
validatePeerSupportForDtmfEvents <disable | enable>
Command Parameters
Packet Service Profile Flags
Parameter | Description |
---|
HDCodecPreferred | Enable flag to set HD codecs as preferred codec over non-HD codecs even if transcoding is required. When flag is disabled, continue with existing PSP/IPSP behavior. disabled (default)enabled
When enabled, the following behavior is exhibited: If... | Then... |
---|
the ingress Offer contains any valid HD codecs | HD codecs are sorted to the top of the list while sending out the Offer. | all NB codecs are present | the SBC reorders the codec entries with NB first, followed by HD codecs. |
Codec selection priority from Answer message: - HD-HD pass-through
- HD-HD transcoding
- NB-NB pass-through
- NB-NB transcoding
- HD-NB transcoding
NOTE: This flag only applies when the SBC is configured with an external PSX. NOTE: If forceRoutePSPOrder flag is enabled, this flag does not affect the ordering of outgoing offer. NOTE: The flag transcoderFreeTransparency overrides this flag. If transcoderFreeTransparency is enabled, this flag is ignored. |
MatchOfferedCodecGroupIfNbOnly
| Enable this flag to allow the SBC to send only NB in outgoing offer if only NB is received in the ingress offer. Otherwise, do nothing. While sending the offer, this flag becomes is ignored if either HD-only or (HD+NB) is received in incoming offer. If this flag is disabled, the SBC uses existing behavior. NOTE: The flag transcoderFreeTransparency overrides this flag. If transcoderFreeTransparency is enabled, this flag is ignored. |
allowAudioTranscodeForMultiStreamCall | Use this flag to specify whether or not to allow audio transcoding when a session contains other media streams, such as a video stream. Options are: disable (default) – When this flag is disabled in either the ingress or egress PSP, and the egress INVITE request contains video codecs, the SBC removes transcoding codecs from the INVITE request. enable – When this flag is enabled in both ingress and egress PSPs, the SBC allows video codecs to be sent in egress INVITE requests and in 200 OK responses sent to the ingress leg.
|
allowMidCallSSRCModification
| Enable this flag so that in call hold/resume scenarios the SBC modifies the SSRC and associated attributes after the call resumes. The SBC sends both the previous and updated SSRC in SDP signaling and includes the new SSRC iin RTP/RTCP streams. Options are: Note: You must enable the generateAndSignalSSRCAndCname flag before you can enable this flag. Note: If you enable the IP Signaling profile common IP attributes flag minimizeRelayingOfMediaChangesFromOtherCallLegAll , you must also enable the relayDataPathModeChangeFromOtherCallLeg flag to have the SSRC modification processing take effect. |
digitDetectSendEnabled | Enable this flag to allow digit detection for pass-through calls on digits sent to the network. NOTE: Enable this flag to allow interworking without DSP resources for this Packet Service Profile. INFO: See Digit Detect Send Enabled Settings for KPML table below to understand which PSP leg to enable this flag for the desired KPML functionality. |
disallowDataCalls | Enable flag to disallow data calls. |
dscpPassthrough | When enabled on both the Ingress and Egress call leg, the DSCP value in the IP header of the media packets is transparently passed through the system. Once media is received from the peer, any value set in the typeOfService field on the Packet Service Profile has no effect when dscpPassthrough is configured on both legs for the associated call. |
forceRoutePSPOrder
| Enable this flag to send the outgoing offer in the same order as egress route Packet Service Profile irrespective of HD/NB priorities. NOTE: If this flag is enabled, HDCodecPreferred flag does not affect the ordering of outgoing offer. NOTE: The flag transcoderFreeTransparency overrides this flag. If transcoderFreeTransparency is enabled, this flag is ignored. |
generateAndSignalSSRCAndCname | Enable this flag to generate an SSRC value and associated attributes and include them in SDP signaling and RTP/RTCP streams. Options are: disabled (default)enabled
Note: This flag takes precedence over the Packet Service Profile ssrcRandomize flag. |
interworkDtmfWithoutTranscoding | Enable flag to interwork DTMF with out-of-band RFC2833 without the use of transcoding (DSP resources). NOTE: If interworkDtmfWithoutTranscoding is enabled, ensure preferredRtpPayloadTypeForDtmfRelay is set to a valid value (96-127). If preferredRtpPayloadTypeForDtmfRelay value is invalid (set to "128"), the system may fail to pick up the value configured using "set system dspPad rtpDtmfRelay" command because DSPs are not used for the call. |
mediaLockDownForPassThrough | This flag is deprecated. |
policeOnHeaviestAudioCodec | When enabled, the SBC reserves the worst case common codec bandwidth on trunk groups and interfaces, but polices on maximum bandwidth for all codecs from Offer or Answer in a pass-through call. NOTE: This configuration applies to all pass-through calls. It works independently from the Audio Transparency feature and reserveBwForPreferredAudioCommonCodec flag. |
preferNBPassthruOverHDTranscode
| Enable this flag to allow the SBC to choose NB-NB pass-through over HD-HD transcoded call. When disabled, the SBC prefers HD-HD transcoded call over NB-NB pass-through. NOTE: This flag is valid only if HDCodecPreferred flag is enabled, and is applied when selecting a codec from answer. NOTE: The flag transcoderFreeTransparency overrides this flag. If transcoderFreeTransparency is enabled, this flag is ignored. |
reserveBwForPreferredAudioCommonCodec | By default, the SBC reserves the worst case common audio codec bandwidth for pass-through calls on trunk groups and IP interfaces, and polices the same bandwidth. Use this flag to reserve the bandwidth associated with the preferred common codec and police on the worst case codec. This flag applies to both known and unknown codecs, and can be used independently or in conjunction with Audio Transparency feature. NOTE: This flag is active for a call when both the PSPs have this flag enabled. If this flag is disabled in any of the PSPs, the flag is not applied. |
ssrcRandomize | Enable flag to generate a new SSRC (using a random value) along with a new timestamp on a new RTP stream whenever a resource is reactivated (due to change in codec, etc.). SSRC randomization reduces the probability of collision in large groups and simplifies the process of group sampling that depends on uniform distribution of SSRCs. |
t140Call | Enable flag to allow text media calls using T.140 codec. NOTE: The SBC does not validate, prioritize, or purge any codec or attributes received for the text media. Any required validation is performed by the endpoints. Refer to Text Codecs for additional details of text codec support. |
useDirectMedia | Enable flag to use direct media as needed. |
validatePeerSupportForDtmfEvents
| Flag to validate peer support for DTMF events. Enable this flag for all peer devices that support RFC 4733. disable (default) – SBC does not validate the presence of DTMF events in the offer or answer from the peer. If DTMF relay is enabled, SBC transmits DTMF digits received from the other leg to this peer using the named event RTP payload.enable – The SBC validates the presence of DTMF events in the offer or answer from peers that support RFC 4733. If DTMF Relay is enabled and events 0-15 are received (with no other combination or subset of events), the SBC forwards the events in the egress leg to this peer using the named event RTP payload. When the SBC is configured for a pass-through call and it receives DTMF events other than 0-15 from the ingress peer, it does not offer any DTMF events to the egress endpoint.
|
Digit Detect Send Enabled Settings for KPML
Use the following table for guidance in setting the Digit Detect Send Enabled flag on each PSP leg to achieve the desired Key Press Markup Language (KPML) functionality.
Digit Detect Send Enabled Settings for KPML
Ingress PSP | Egress PSP | KPML Subscription Leg |
---|
Enable | Enable | Egress / Ingress |
Disable | Enable | Egress / Ingress with stream reverse |
Enable | Disable | Ingress / Egress with stream reverse |
Disable | Disable | None |
Packet to Packet Control
Command Syntax
% set profiles media packetServiceProfile <unique_profile_name> packetToPacketControl
codecsAllowedForTranscoding
otherLeg <amr | efr | evrc | g711a | g711u | g722 | g726 | g729 | g7221 | g7222 | g7231 | ilbc | opus | t38>
thisLeg <amr | efr | evrc | g711a | g711u | g722 | g726 | g729 | g7221 | g7222 | g7231 | ilbc | opus | t38>
conditionsInAdditionToNoCommonCodec
applyFaxToneTreatment <disable | enable>
different2833PayloadType <disable | enable>
differentDtmfRelay <disable | enable>
differentPacketSize <disable | enable>
differentSilenceSuppression <disable | enable>
honorAnswerPreference <disable | enable>
honorOfferPreference <disable | enable>
transcode <conditional | determinedByPspForOtherLeg | only | transcoderFreeTransparency>
Command Parameters
Packet to Packet Control Parameters
Parameter | Description |
---|
codecsAllowedForTranscoding | Use this parameter to specify codecs allowed for transcoding, and which leg to apply them to. otherLeg <codec> (see codec list below)thisLeg <codec> (see codec list below)
Codec list: amr | efr | evrc | g711a | g711u | g722 | g726 | g729 | g7221 | g7222 | g7231 | ilbc | opus | silk | t38
|
conditionsInAdditionToNoCommonCodec | The SBCperforms transcoding when any of the specified conditions are met, including no common codec on ingress and egress legs. applyFaxToneTreatment – Apply fax tone treatment. different2833PayloadType – Enable this option to allow the SBC to transcode media when RFC2833 payload type received from ingress is different from the preferred DTMF payload type configured in egress PSP.differentDtmfRelay – Enable this flag to perform transcoding when the ingress and egress call legs use different DTMF relay methods.differentPacketSize – Enable this flag to perform transcoding when the ingress and egress call legs use different packet sizes.differentSilenceSuppression –Enable this flag to perform transcoding when the ingress and egress call legs use different silence suppression methods.honorAnswerPreference – The SBC triggers a new offer towards the other side when an answer is received for a re-INVITE from this side. The re-INVITE generated on the other side carries all possible codecs in Route Packet Service Profile that causes the most preferred codec of the other side peer to be modified. Enable this Honor Answer Preference (HAP) flag to lock down the most preferred codec towards the peer irrespective of re-INVITE received for mid-call modification from this side. (See the table below describing SBC behavior when this flag is enabled/disabled).honorOfferPreference – Enable this Honor Offer Preference (HOP) flag to honor the codec preference of the peer's offer when the 'Honor Remote Preference' flag on the PSX is enabled. This option is available only when transcode = conditional . (See honorAnswerPreference vs. honorOfferPreference table below describing SBC behavior when this flag is enabled/disabled).
|
transcode | Transcode options: conditional (default)determinedByPspForOtherLeg only transcoderFreeTransparency
NOTE: If using Transcoder Free Transparency option "transcoderFreeTransparency" , you must also set lateMediaSupport to ‘passthru ’ (refer to SIP Trunk Group - Media - CLI) NOTE: Transcoder Free Transparency takes precedence over Packet Service Profile flags when enabled on either the ingress trunk group or egress trunk group PSP leg allowing the SBC to bypass transcoding and codec policies that result in removing/deleting codecs. |
NOTE: The SBC, when configured with the appropriate codecs, transcodes for differences in the codecs. Use ‘transcode conditional
’ option to allow the SBC to transcode for certain conditions in addition to differences in codecs. For example, if the codecs are the same on both legs and this option is selected, by applying additional settings for the particular call scenarios, the SBC will trigger transcoding for those scenarios, such as:
- Transcode for DTMF differences. For example, when both legs have same codec, but one uses inband for DTMF and the other RFC 2833.
- Transcode for Silence Suppression differences.
- Transcode for Packet Size differences.
- Transcode for RFC2833/4733 Payload differences. For example, when codecs are the same on both legs, but one side uses 101 as the Payload Type for DTMF and the other uses 102.
- Transcode always.
honorAnswerPreference vs. honorOfferPreference
HOP Flag State | HAP Flag State | SBC Behavior |
---|
enable | disable | The SBC selects a codec order of precedence in the offered SDP, irrespective of whether it is a pass-through or transcoded codec (if transcoding is defined for that codec). The SBC as part of media lock-down may send a re-INVITE to egress peer. Note that the preference on the answer side is given to a pass-through codec. |
enable | enable | The SBC gives preference to HAP over HOP in case of conflict. The Honor Remote Preference (HRP) flag on the answer leg decides the preference order. Based on that preference list, the SBC selects a codec with highest preference from answer SDP that can be used even if it requires transcoding. Note that this may cause the selection of a codec on the other side leg not to be honored. This happens in case of a pass-through call. |
disable | enable | The SBC gives preference to answer codec order that is created based on HRP flag. The most preferred codec is chosen as received in the answer SDP, irrespective of whether it is a pass-through or a transcoded codec (if transcoding is defined for that codec). |
RTCP Options
Command Syntax
% set profiles media packetServiceProfile <unique_profile_name> rtcpOptions rtcp <disable | enable>
enableRTCPForHeldCalls <disable | enable>
generateRtcpForT140IfNotReceivedFromOtherLeg <disable | enable>
packetLossAction <none | packetLossTrap | packetLossTrapAndDisconnect>
packetLossThreshold <0, 400-32767>
rrBandwidth <100-4000>
rsBandwidth <100-3000>
rtcpMux <disable | enable>
rtcpXr <disable | relay | relayOrTerminate>
terminationForPassThrough <disable | enable>
Command Parameters
Parameter | Length/Range | Description |
---|
rtcp | N/A | Enable flag to use RTCP for the call. NOTE: The below attributes are only available to configure RTCP once this flag is enabled. |
enableRTCPForHeldCalls | N/A | If this flag is enabled, the SBC ignores the configured RR/RS values in the Packet Service Profile (PSP) and sends RR/RS = 0 in the offer/answer, plus disables RTCP when the call is active. When the call is HELD, and a RE-INVITE is sent, the SBC uses the configured values in the PSP for RTCP bandwidth and enables RTCP. When the call is RESUMED, the SBC again disables RTCP by sending RR/RS=0 in the RE-INVITE. |
generateRtcpForT140IfNotReceivedFromOtherLeg | N/A | The SBC generates RTCP for T140 media streams if RTCP is not received from peer. Note: To enable this parameter, ensure that the t140Call parameter is set to enable ,
For more information, refer to Text Over IP and TTY Support.
|
packetLossAction | N/A | Packet loss action to take when packet threshold is exceeded:none – Take no action.packetLossTrap – Generate trap.packetLossTrapAndDisconnect – Generate trap and disconnect.
|
packetLossThreshold | 0, 400-32767 | Enter a value to specify the packet loss threshold value to trigger a packet loss action (default = 0). This parameter is required if RTCP is enabled. When set to “0”, no packet loss inactivity detection is performed. See Command Examples below for an example configuration. This setting can be used in conjunction with mediaPeerInactivity (refer to mediaPeerInactivity parameter in Media System - CLI page). |
rrBandwidth | 100-4000 | <rrBandwidth value> – The RTCP bandwidth allocated to active data senders (default = 250). |
rsBandwidth | 100-3000 | <rsBandwidth_value> – The RTCP bandwidth allocated for receivers (default = 250). |
rtcpMux | N/A | Enable this flag for the ingress or egress Packet Service Profile for the SBC to use RTCP-Mux on the respective call leg. When the SBC Core triggers the RTP interception on an RTCP-Mux call (for example, lawful intercept), the SBC forks the RTP and RTCP streams to a single port towards the mediation server. If the intercept is performed in an RTCP-Mux session, the stream sent towards the mediation server is also multiplexed with RTP and RTCP sent over the same port. Refer to SDP Support for additional RTCP Mux details. NOTE: This flag is only applicable for SIP Trunk Groups. |
rtcpXr | N/A | Specifies control of RTCP-XR block processing and statistics collection. disable (default) - retains existing default behavior (no statistics collection).relay - Allows end-to-end XR block relay (only) and statistics collection if end-to-end peer negotiation for RTCP-XR (a=rtcp-xr:voip-metrics) relay is successful; otherwise XR block is dropped.relayOrTerminate - Allows end-to-end XR block relay or per-leg termination if end-to-end negotiation for RTCP-XR relay is not successful (only one leg supports RTCP-XR). This setting guarantees XR block termination and statistics collection on any call leg where XR blocks are received.
|
terminationForPassThrough
| N/A | Use this flag to specify RTCP termination behavior for pass-through calls. disable (default) – RTCP is relayed between the end points for pass-through calls. enable – Enable flag (as well as rtcp flag) on one leg to terminate RTCP sessions on each leg for pass-through calls. If RTCP and RTCP termination is enabled on one leg of a pass-through call, RTCP is terminated and originated for that leg. If RTCP is enabled on both legs on the pass-through call, irrespective of terminationForPassThrough settings, RTCP is always relayed.
|
Command Examples
To configure RTCP options:
% set profiles media packetServiceProfile PSP-1 rtcpOptions rtcp enable
% set profiles media packetServiceProfile PSP-1 rtcpOptions packetLossAction packetLossTrap
% set profiles media packetServiceProfile PSP-1 rtcpOptions packetLossThreshold 10000
% commit
% show profiles media packetServiceProfile PSP-1
rtcpOptions {
rtcp enable;
packetLossThreshold 10000;
packetLossAction packetLossTrap;
}
To configure PSP to transcoderFreeTransparency
on both legs:
% set profiles media packetServiceProfile PSP_INT packetToPacketControl transcode transcoderFreeTransparency
% set profiles media packetServiceProfile PSP_EXT packetToPacketControl transcode transcoderFreeTransparency
To configure audioTransparecy feature on both legs:
% set profiles media packetServiceProfile PSP_INT audioTransparency unknownCodecBitRate 124
% set profiles media packetServiceProfile PSP_EXT audioTransparency unknownCodecBitRate 124
% set profiles media packetServiceProfile PSP_INT audioTransparency unknownCodecPacketSize 10
% set profiles media packetServiceProfile PSP_EXT audioTransparency unknownCodecPacketSize 10
% set profiles media packetServiceProfile PSP_INT flags reserveBwForPreferredAudioCommonCodec enable
% set profiles media packetServiceProfile PSP_EXT flags reserveBwForPreferredAudioCommonCodec enable
To allow secure RTP plus relaying of SRTP audio and video streams and SCTP packet streams, and then to set the DSCP value in the Differentiated Services Field of the IP header for DTLS/SCTP packets that egress the SBC.
% set profiles media packetServiceProfile DEFAULT dtls dtlsFlags enableDtlsSrtp enable dtlsSrtpRelay enable dtlsSctpRelay enable
% set profiles media packetServiceProfile DEFAULT qosValues dtlsSctpDscp 100
% commit
% exit
> show table profiles media packetServiceProfile DEFAULT dtls
dtlsFlags {
allowDtlsFallback enable;
enableDtlsSrtp enable;
dtlsSrtpRelay enable;
dtlsSctpRelay enable;
}
> show table profiles media packetServiceProfile DEFAULT qosValues
msrpDscp 100;
dtlsSctpDscp 100;
To avoid possible interoperability issue in deployments with Kandy Link WebRTC gateways, the Packet Service profile assigned to the trunk group facing the Kandy network should enable the flags that generate and modify SSRC values. Refer to Generate or Replace SSRC Values for Calls Toward a Kandy Link WebRTC Gateway.
For example, use the following commands to configure the flags, in the DEFAULT Packet Service profile, that enable generating SSRC values and allow modification of SSRC values in call hold/resume scenarios. You must enable the generateAndSignalSSRCAndCname
flag first.
% set profiles media packetServiceProfile DEFAULT flags generateAndSignalSSRCAndCname enabled
% set profiles media packetServiceProfile DEFAULT flags allowMidCallSSRCModification enabled
% commit
To configure the SBC to generate RTCP for T140 media streams if it does not receive RTCP from peer:
% set profiles media packetServiceProfile INGRESS rtcpOptions rtcp enable generateRtcpForT140IfNotReceivedFromOtherLeg enable
% commit
% set profiles media packetServiceProfile INGRESS flags t140Call enable
% commit
% set profiles media packetServiceProfile INGRESS qosValues t140Dscp 63
% commit