Top
SRTP Troubleshooting
This document provides general tips on how to troubleshoot SRTP issues. Different scenarios are analysed and suggestion of possible solutions using the SRTP Preferences are proposed.
Top
Preparing Information for Troubleshooting
Please refer to the Preparing Information for Troubleshooting document about collecting diagnostic traces (syslogs) and network packets.
Top
Required Information to Report a Problem
When reporting a problem and to make sure that all the relevant information is given to the Mediatrix support team at once, the following information is required.
Required information | Checkmark |
---|---|
Mediatrix product name, release and build number. | |
Profile name | |
Serial number of the Mediatrix unit if a hardware problem is suspected. | |
Name/manufacturer/type of other VoIP devices along with their IP addresses. | |
Name/manufacturer/software version of the Proxy server (SIP). | |
Whenever possible, a diagram of the network or wiring setup. | |
Call flow/call scenario to reproduce the problem. | |
Is the call going through a NAT, Firewall, Bridge, VPN, Router, Soft switch, etc? | |
Export the complete configuration script of the Mediatrix device. Refer to the Exporting a Configuration Script to Your PC instructions. |
Top
Additional Information to Report a Problem with Secured Media
When reporting a problem with audio using secured media, the following additional information are demanded.
Additional information | Checkmark |
---|---|
Is the problem also observed when the media is unsecured? | |
Is the problem observed at the beginning of the call? | |
How long is the call before the problem is observed? | |
Can the problem be easily reproduced? If yes, how is it reproduced? | |
Is the problem present during the complete call? | |
Are session timers used with SIP reINVITE or SIP UPDATE messages? | |
Was the call put on hold prior to the problem been observed? | |
Is music on hold present during the call prior to the problem been observed? | |
Is the problem be reproduced when calling different VoIP devices? | |
Is the problem be reproduced while using other VoIP devices than Mediatrix devices? |
Top
Investigating SRTP Interoperability Issues
What to Observe
During an SRTP interoperability investigation, the following elements must be observed within the exchanged SDP payloads of SIP messages, the diagnostic traces (syslogs), and the header of SRTP packets. Those elements must be captured from the network traffic, as described in the Preparing Information for Troubleshooting document.
- the advertised address (IP and port) of the media (
c=
andm=
attributes) - the advertised crypto attribute (
a=crypto
attribute)
v=0 o=MxSIP 688350484195200802 174878181552902651 IN IP4 192.168.121.10 s=- --> c=IN IP4 192.168.121.10 t=0 0 a=sendrecv --> m=audio 5004 RTP/SAVP 8 a=rtpmap:8 PCMA/8000 --> a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:f2vJDBzqgo…
- The Synchronization Source (SSRC) identifier
- The Sequence number
--> Sequence number: 10142 [Extended sequence number: 75678] Timestamp: 1026635472 --> Synchronization Source identifier: 0x9ddb426e (2648392302) SRTP Encrypted Payload: e4cf7a734ea2f70c720849e… SRTP Auth Tag: 3684164878c1bd5012e8
Top
SRTP Test Protocol
- If no audio issue is observed during SIP calls, this means the SRTP behavior of the Mediatrix device matches with the VoIP network.
- If an audio issue is observed during SIP calls, changing the SRTP Preferences parameters may help to resolve the issue.
To help collecting the information during the investigation, the logging table available at the Result table section can be printed twice, one table for the caller's role and another the callee's role. The table is available to download on our documentation portal: TestProtocol_SRTP.xlsx
Top
Result table
The following table is provided to help with the investigation to write in the information relevant to the testing done for a single VoIP device. The table is also available for download on our documentation portal: TestProtocol_SRTP.xlsx
Device: _____________________________ IP address: ______________________ Call Role: ( Caller ) / ( Callee ) |
||||||||
---|---|---|---|---|---|---|---|---|
Test Protocol step number | Audio heard? | TX SSRC | RX SSRC | 1st TX Sequence Number | 1st RX Sequence Number | TX Key (first 6 characters) | RX Key (first 6 characters) | |
6 | Establish a call | |||||||
Call holding by the callee VoIP device | ||||||||
7 | The callee puts the call on hold | |||||||
8 | The callee resumes the call | |||||||
9 | The callee puts the call on hold again | |||||||
10 | The callee resumes the call | |||||||
Call holding by the caller VoIP device | ||||||||
11 | The caller puts the call on hold | |||||||
12 | The caller resumes the call | |||||||
13 | The caller puts the call on hold again | |||||||
14 | The caller resumes the call | |||||||
The sequence number of both SRTP streams must rollover | ||||||||
16 | Rollover occurred on both SRTP streams | |||||||
Call holding by the callee VoIP device | ||||||||
17 | The callee puts the call on hold | |||||||
18 | The callee resumes the call | |||||||
19 | The callee puts the call on hold again | |||||||
20 | The callee resumes the call | |||||||
Call holding by the caller VoIP device | ||||||||
21 | The caller puts the call on hold | |||||||
22 | The caller resumes the call | |||||||
23 | The caller puts the call on hold again | |||||||
24 | The caller resumes the call |
Top
How to Interpret the Result of the Test Protocol
- the advertised address (IP and port) of the media (
c=
andm=
attributes) - the advertised crypto attribute (
a=crypto
attribute)
- The Synchronization Source (SSRC) identifier
- The Sequence number
Observation | Recommended SRTP Preferences configuration |
---|---|
The Mediatrix gateway receives a different crypto key in the SDP offers and answers after a hold/resume scenario. |
Mipt.CryptoModeWhenSendingOffer = RegenerateAlways Mipt.CryptoModeWhenSendingAnswer = RegenerateAlways |
The Mediatrix gateway always receives the same crypto key in the SDP offers and answers after a hold/resume scenario. |
Mipt.CryptoModeWhenSendingOffer = KeepAlways Mipt.CryptoModeWhenSendingAnswer = KeepAlways |
The Mediatrix gateway receives a different media address in the SDP offers and answers OR The Mediatrix gateway receives an SRTP stream with different SSRC after a hold/resume scenario. |
Mipt.CryptoContextBehavior = ResetAlways |
The Mediatrix gateway receives the same media address in the SDP offers and answers AND The Mediatrix gateway receives an SRTP stream with the same SSRC after a hold/resume scenario. |
Mipt.CryptoContextBehavior = ResetNever |