Symptom
When using SRTP with higher ciphers, CUBE is inserting distortion in voice. Only if customer disables higher ciphers from the CUBE by using srtp-crypto voice class commands the audio issue does not happen.
It seems CUBE is unable to handle properly higher ciphers during SRTP, which is causing audio to get distorted.
Conditions
Issue is not happening if the customer uses "lower" ciphers in the CUBE, only appers when customer uses higher ciphers like (AEAD_AES_256_GCM)
Workaround
(To stop the CUBE from negotiating higher ciphers, the following workaround was suggested)
voice class srtp-crypto 100
crypto 1 AES_CM_128_HMAC_SHA1_32
crypto 2 AES_CM_128_HMAC_SHA1_80
!
voice service voip
sip
srtp-crypto 100
Further Problem Description
Issue has been experienced by the customer using 16.12.04, 16.12.06 and 17.3.5. Other versions have not been tested.
Call flow: User 1 --> PSTN --> RTP --> CUBE#1 --> SRTP --> CUBE#2 --> RTP --> PSTN --> IVR
In this scenario, customer is calling an IVR, voice is coming with no distortion from PSTN to CUBE#2, however, when CUBE#2 encrypts the audio and sends it to CUBE#1 using SRTP, the audio is getting distorted if CUBE#2 uses higher ciphers like AEAD_AES_256_GCM to encrypt the RTP.