revjim.net Rotating Header Image

Outbound SIP Proxy?

Now that I have VoIP based telephone service, I've become incredibly interested in the Protocols that are used to support such a service — in my case, SIP and RTP. The fundamental problem, which is being discussed in SIP circles around the world, is NAT firewall traversal. In short, in order to establish communication between two peers, SIP is used to establish the details of that communication. This protocol looks a lot like HTTP and is able to travel through the firewall almost as easily.

After the initial handshaking portions of SIP are done and both ends agree to communicate, information regarding how to communicate is sent. This information specifies the CODEC to be used, and the IP address and PORT to communicate to using RTP. It is in this step that the greatest amount of trouble is found. Because the NATed client believes his IP address is something in the private address space (i.e. 192.168.100.143) this is the information it sends when negotiating the connection. Since NAT firewalls don't read this layer of the IP packet, this information is never translated. When the remote peer attempts to communicate to the private address, the results are not what is desired.

Many VoIP services use a SIP Registration Server. This allows users with constantly changing IP addresses or users who like to be reached in more than one location at any given time to be contacted. It, basically, proxies all of the SIP communication. However, once it is time to do RTP, communication is sent directly from peer to peer. If it wasn't, the proxy services would have to relay ALL of the bandwidth intensive data involved with the actual communication.

I'm not sure how my VoIP phone gets around this issue. There is VERY little documentation available. However, it seems that some other VoIP services use what is referred to as an "Outbound SIP Proxy". However, I can't find any information on how this process works.

Freeworld Dialup is a FREE VoIP service that allows users to connect to one another and communicate over the Internet for free. It, in simple terms, is a SIP Registration Server. By having a central location for registration and location lookups, it becomes much easer to communicate. To put it another way, it does for VoIP what DNS does for the Internet as a whole. Well… kind of. Close enough. The Freeworld Dialup service includes a Outbound SIP Proxy for users behind a NAT firewall, however, regardless of how hard I try, I can't seem to establish a connection.

I've got a lot more research to do, it seems. If any of you know anything about how an Outbound SIP Proxy works, please point me in the right direction.

Share and Enjoy:
  • Facebook
  • StumbleUpon
  • Digg
  • del.icio.us
  • Google
  • Reddit
  • Technorati
  • Furl
  • Spurl
  • Live
  • Pownce
  • TwitThis