How NAT-compatible are VoIP applications?

Today, the Internet is very diversified, further complicating the classic NAT traversal problems. In order to solve these problems, there are many proposed methods classified into two categories. One enhances the NAT traversal techniques of applications, and the other tries to modify the behavior of NATs. In this article we focus on the former because NATs have been installed, and their behavior cannot be altered through endpoint users. Accordingly, in order to test NAT traversal techniques of five VoIP applications (Skype, MSN, Google Talk, X-Lite, and Linphone), three network topologies have been designed with two endpoints behind the same, different, or multilevel NATs. Through a series of experiments and from the experiment results, we observe that these VoIP applications use some traversal techniques, such as NAT mappedaddress probe, peer discovery, path check, and relay first, proposed by STUN, TURN, and ICE to make a direct connection when endpoints are behind the same or different NATs with independent mapping rules. However, with multilevel NATs, no endpoints can establish a direct connection when they use the above mentioned techniques, even if hairpin behavior is supported by NATs.

[1]  Paul Francis,et al.  The IP Network Address Translator (NAT) , 1994, RFC.

[2]  Bryan Ford,et al.  State of Peer-to-Peer (P2P) Communication across Network Address Translators (NATs) , 2008, RFC.

[3]  Jean-Charles Grégoire,et al.  VoIP and NAT/firewalls: issues, traversal techniques, and a real-world solution , 2006, IEEE Communications Magazine.

[4]  Jonathan D. Rosenberg,et al.  Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN) , 2020, RFC.

[5]  Tong Li,et al.  A New Algorithm for Network Anomaly Detection , 2006, 2006 International Multi-Conference on Computing in the Global Information Technology - (ICCGI'06).

[6]  Junzhong Gu,et al.  Research on Symmetric NAT Traversal in P2P applications , 2006, 2006 International Multi-Conference on Computing in the Global Information Technology - (ICCGI'06).

[7]  Bryan Ford,et al.  Peer-to-Peer Communication Across Network Address Translators , 2005, USENIX Annual Technical Conference, General Track.

[8]  Bruce Lowekamp,et al.  NAT Behavior Discovery Using Session Traversal Utilities for NAT (STUN) , 2010, RFC.

[9]  Pyda Srisuresh,et al.  Traditional IP Network Address Translator (Traditional NAT) , 2001, RFC.

[10]  Remi Denis-Courmont Test Vectors for Session Traversal Utilities for NAT (STUN) , 2010, RFC.

[11]  Dan Wing,et al.  Session Traversal Utilities for NAT (STUN) , 2020, RFC.

[12]  Jonathan D. Rosenberg,et al.  Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal for Offer/Answer Protocols , 2010, RFC.