Call Hangs up at 30 Seconds

This article applies for issue about the calls hang up at about 30 seconds including Linkus.

 

Symptom

Most of the users reported that the calls would hang up at 30 seconds.

This issue mostly happens on the SIP remote extension. Also it is possible for the extension registered from different segment of your local network, or VPN network.

The call made through SIP trunks might have the issue as well. Especially in the SIP dedicated trunk solution.

 

Analysis

Why it is 30 seconds?

Precisely, it should be 32 seconds. Well, 1-2 seconds is not big matter. As people usually would just count the estimated time.

Basically it is SIP timer issue.

There are three basic SIP timer parameters – T1, Timer B, and Timer F. 

  • T1 is the estimated round trip time of an IP packet. By default, T1 is set to 500 milliseconds which for many networks can be a little on the high side. 
  • Timer B is the maximum amount of time that a sender will wait for an INVITE message to be acknowledged.
  • Timer F is the maximum amount of time that a sender will wait for a non INVITE message to be acknowledged. SIP messages such as REFER, INFO, MESSAGE, BYE, and CANCEL fall into this category.

The way that Timer B and Timer F function is pretty straightforward. Both timers default to 64 times T1. So If you take the T1 default of 500ms, Timer B and Timer F will be 32 seconds. In other words, if an INVITE is sent and no response message is received, that INVITE will timeout in 32 seconds.

 

Typical Case

There are 3 major reasons for issue:

  • Incorrect SIP NAT settings in PBX.
  • Device in front of PBX modify the SIP packets.
  • SIP trunk doesn't reply the SIP packet from PBX.

1. Incorrect SIP NAT settings in PBX.

In the following example, the remote extension calls the other extension in local network. 

First to see the duration between answer and hang up is 32 seconds. Usually the 200 OK in the  SIP call represents answer. BYE, CANCEL packet mean hang up.

PCAP capture from PBX:

As you see, and if know SIP call flow well. You would know the 200 OK packets are abnormal.

Then we find the Contact header IP address in 200 OK is a private IP addresses. For the remote side it is not a reachable address in the Internet. So call would be hang up.

Solution

Configure the SIP NAT settings in the PBX. Including the correct external IP address and the local network identification especially the different local segment IP address. Or you refer the articles to setup the NAT settings.

S-Series: Configuring Remote Extensions

Other series: Configuring Remote Extensions

 

2. Device in front of PBX modify the SIP packets.

The device in front of PBX could VPN gateway, firewall, router and so on.

2.1 Contact Header IP address in 200 OK is changed to private.

Here is an case of Linkus (used in external network) call hangs up at 30 seconds. Linkus calls to the local extension.

First we can see PBX send 200 OK, but Linkus does reply ACK to PBX.

PCAP capture from PBX:

 

Then we capture the logs on Linkus mobile. 

We would find the Contact Header IP has been modified to a private IP address.  For the Linkus it is not a reachable address in the Internet. So call would be hang up.

Solution

Disable the SIP AlG option on the router.

Or you refer this article to see if you can find your router settings. The Router Settings Relevant with One Way Audio & 30 Seconds Call Hang up Issue

 

2.2 Contact Header IP address port in 200 OK is changed to the other.

This case is similar as above. Difference is that the port has been modified by the router.

ACK should be sent to PBX source SIP port 5060. BUt it was sent to port 1375.

See the PCAP capture from PBX:

On the remote phone side, we could check the 200 OK packet received.

(Sorry in this capture, we miss the Contact header. But actually the port has been changed to 3075.)

Solution

Disable the SIP AlG option on the router.

Or you refer this article to see if you can find your router settings. The Router Settings Relevant with One Way Audio & 30 Seconds Call Hang up Issue

 

3. SIP trunk doesn't reply the SIP packet from PBX.

Here is a case of inbound call hangs up at 30 seconds.

From the PBX PCAP capture, we could see PBX sent Re-INVITE after PBX answered the call.

While the SIP trunk doesn't accept the Re-INVITE. Then hangs up the call.

This issue happens on earlier version like 30.4.0.X.

Solution

Disable the Remote Party ID, PAI, Diversion option in the SIP Advanced settings.

However, the problem reason can be others. Like some headers in the specific SIP packet is not compatible with the SIP trunk provider. If the solution could not help. please go to the troubleshooting section to get logs for us.

 

Troubleshooting

Checklist

  1. Understand user's call scenario and network topology.
  2. Check the SIP NAT settings in PBX
  3. Refer the typical cases.
  4. If it is issue with SIP trunks, try to register the SIP trunk on a IP phone, or Softphone to see if you have the same issue.

Log & Packet Capture

If the issue persists, please post us the the following information.

  1. The result of the checklist
  2. Post us the PCAP capture both on PBX and SIP clients. For PBX capture How to Get PCAP Dump Capture, for Linkus log How to Get Linkus Debug Logs
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.