What causes 32 seconds disconnection?
A 32-second disconnection issue is usually caused by a broken ACK.
- The SIP server will be sending 200ok Messages to confirm a call has been answered and is expecting an ACK message for its 200ok which will acknowledge that the UA is ready to accept the call.
- The ACK messages are not send beyond the first hop as the SIP server did not accept its format.
Instead, the SIP server continues to send 200ok messages until it receives a correctly build ACK message.
The ACK message is broken. - After 32 seconds, the SIP server will give up and will send a BYE message that terminates the call.
If you have another (brand) device, please try if that has the same issue.
Alternative reasons why you may expericnce the 32-second issue could be:
NAT (Network Address Translation) Issues
- NAT devices (routers or firewalls) can block or drop SIP or RTP packets if they don’t see proper port mappings or keep-alive mechanisms. This can lead to the call being dropped.
Solution: Configure NAT Traversal Mechanisms
- Disable SIP ALG (Application Layer Gateway) on the router, or enable if recommended for your setup, it if it’s causing interference.
- Ensure port forwarding is set up for SIP and RTP traffic if using a NAT environment
Firewall Timeouts
- Some firewalls or session border controllers (SBCs) terminate inactive or unacknowledged SIP sessions after a default timer (commonly 32 seconds).
Solution: Increase Firewall Session Timers
- Adjust firewall session timers to prevent premature disconnections.
- Configure stateful firewall rules to allow SIP and RTP traffic to flow without interruption.
SIP Timer Expiry (Timer B or Timer C)
- SIP timers may not receive the expected responses (e.g.,
200 OK
orBYE
) within the configured interval, causing the session to terminate.
Solution: Implement SIP Keep-Alives
- Use mechanisms like SIP OPTIONS or periodic re-INVITEs to keep the session alive.
- Ensure both endpoints support and are configured to use keep-alive mechanisms.
RTP or Media Path Issues
- If RTP packets (media) are not received within a certain interval, the SIP stack may assume the session is inactive and terminate the call.
Solution: Check RTP Flow
- Use packet capture tools to analyze RTP streams and ensure packets are flowing correctly between endpoints.
- Verify that the media path is not being blocked or interrupted.
Mismatch in Session Timers
- Session Timers (RFC 4028) manage the keep-alive mechanism for long SIP sessions. A mismatch in these timers between endpoints can cause disconnections.
Solution: Review and Adjust Session Timers
- Ensure both SIP devices or servers agree on session refresh intervals.
- Disable or adjust
Session-Expires
headers to a higher value or ensure compatibility.
Codec Negotiation Issues
- If the negotiated codec is unsupported or fails mid-call, it may lead to dropped sessions.
Solution: Inspect and Test Codecs
- Ensure both endpoints support the selected codec and there are no issues with transcoding or compatibility.
Test with SIP Traces:
Use SIP debugging tools (e.g., Wireshark, to capture and analyze SIP packets and RTP streams) to trace SIP signaling and identify the exact cause of the disconnection.
Check for Updates or Bug Fixes:
Upgrade firmware or software on SIP devices, PBX systems, or VoIP servers to resolve potential bugs causing the issue.
If you can't get it solved on your side, do get in touch with us and we can try and help you solve this.
Last updated: 27/11/2024
© Voyced
All information provided is copyrighted and purely informative in nature. It is maintained by Voyced with the greatest of care using reliable sources only.
Given the fast evolution of the telecom sector, Voyced does not offer any guarantee about the accuracy and completeness of the information offered.
We explicitly do not give anyone permission to use this information in any other way than to inform themselves about what (legal) requirements there may be and they need to comply with when registering Services and/or DIDs with Voyced.