Skip to main content
USENIX
  • Conferences
  • Students
Sign in

connect with us


  •  Twitter
  •  Facebook
  •  LinkedIn
  •  Google+
  •  YouTube

twitter

Tweets by @usenix

usenix conference policies

  • Event Code of Conduct
  • Conference Network Policy
  • Statement on Environmental Responsibility Policy

You are here

Home ยป Peer-to-Peer Communication Across Network Address Translators
Tweet

connect with us

Peer-to-Peer Communication Across Network Address Translators

Abstract: 

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.

Bryan Ford, Massachusetts Institute of Technology

Pyda Srisuresh, Caymas Systems, Inc.

Dan Kegel

BibTeX
@inproceedings {269417,
author = {Bryan Ford and Pyda Srisuresh and Dan Kegel},
title = {{Peer-to-Peer} Communication Across Network Address Translators},
booktitle = {2005 USENIX Annual Technical Conference (USENIX ATC 05)},
year = {2005},
address = {Anaheim, CA},
url = {https://www.usenix.org/conference/2005-usenix-annual-technical-conference/peer-peer-communication-across-network-address},
publisher = {USENIX Association},
month = apr
}
Download

Links

Paper: 
http://usenix.org/publications/library/proceedings/usenix05/tech/general/full_papers/ford/ford.pdf
Paper (HTML): 
http://usenix.org/publications/library/proceedings/usenix05/tech/general/full_papers/ford/ford_html/index.html
  • Log in or    Register to post comments

© USENIX

  • Privacy Policy
  • Contact Us