[p2p-hackers] Final version of "P2P over NAT" paper available

Bryan Ford baford at mit.edu
Fri Feb 18 23:44:43 UTC 2005

Hi folks,

For those interested in P2P-over-NAT issues, I just wanted to announce that 
the final version of the following paper, to appear in USENIX '05, is now 

Peer-to-Peer Communication Across Network Address Translators, Bryan Ford, 
Pyda Srisuresh, and Dan Kegel. USENIX Annual Technical Conference, April 
(PDF) http://www.brynosaurus.com/pub/net/p2pnat.pdf
(HTML) http://www.brynosaurus.com/pub/net/p2pnat/

An earlier draft of this paper was announced on this list a few months ago.  
The final version includes, among other minor revisions, new "NAT Check" 
testing results based on almost twice the number of data points as the 
original draft.




Network Address Translation (NAT) causes well-known difficulties for 
peer-to-peer (P2P) communication, since the peers involved may not be 
reachable at any globally valid IP address. Several NAT traversal techniques 
are known, but their documentation is slim, and data about their robustness 
or relative merits is slimmer. This paper documents and analyzes one of the 
simplest but most robust and practical NAT traversal techniques, commonly 
known as ``hole punching.'' Hole punching is moderately well-understood for 
UDP communication, but we show how it can be reliably used to set up 
peer-to-peer TCP streams as well. After gathering data on the reliability of 
this technique on a wide variety of deployed NATs, we find that about 82% of 
the NATs tested support hole punching for UDP, and about 64% support hole 
punching for TCP streams. As NAT vendors become increasingly conscious of the 
needs of important P2P applications such as Voice over IP and online gaming 
protocols, support for hole punching is likely to increase in the future. 

More information about the P2p-hackers mailing list