Project

General

Profile

Actions

ConnectivityProblems » History » Revision 20

« Previous | Revision 20/31 (diff) | Next »
Adrian Georgescu, 07/21/2013 10:31 PM


Connectivity Problems

Real-time communication using SIP protocol between end-points may fail. Real-time communications, regardless of protocol used (XMPP is no different), is a complex topic, for each session several IP addresses, port and protocols combinations are used in both directions. What are the possible reasons for such failures? Here is a checklist that can help eliminate possible causes:

Software version

  • Upgrade to the latest version of your application, very often a problem may have already been solved even if the changeling does not explicitly list it. Unfortunately, there is also a risk of breaking existing functionality when installing a new version that contains a bug.

Local Computer

  • Firewall software installed. Check if no software blocks access to the ports used by your application or enable the use of the proper ports in the firewall configuration.

Internet Router

  • SIP ALG enabled. Your router re-writes the content of your SIP packets and breaks the communication. Check of the router has any so called SIP support and disable it.
  • Firewall enabled. Check if no firewall is configured in the router to block access to the ports used by your application or enable the use of the proper ports in the firewall configuration.

Internet Provider

  • Policy that blocks either SIP signalling or RTP media. You can try use another SIP service provider that provides access over TCP or TLS instead of UDP or is using custom ports. Otherwise use another ISP.
  • Provider does not allow the use of ICE for NAT traversal and forces a media relay instead. Turn of ICE in the client.

SIP Service Provider

  • Provider requires use of STUN protocol so that the SIP devices uses a public IP address in the Contact header. This is wrong and unreliable, such behaviour is explicitly discouraged by the standards
  • Provider does does not support certain audio or video codecs. Instead of rejecting such sessions with an appropriate code, they simply won't answer.

Updated by Adrian Georgescu over 11 years ago · 20 revisions