Usurp: Distributed NAT Traversal for Overlay Networks

  • Salman Niazi
  • Jim Dowling
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6723)


Many existing overlay networks are not practical on the open Internet because of the presence of Network Address Translation (NAT) devices and firewalls. In this paper, we introduce Usurp, a message routing infrastructure that enables communication between private nodes (behind NATs or firewalls) either by direct connectivity or relaying messages via public nodes (nodes that support direct connectivity). Usurp provides fully distributed NAT-type identification and NAT traversal services using a structured overlay network (SON) built using the public nodes in the system. Private nodes do not join the SON, instead, each private node is assigned a key in the SON’s address space and the public node(s) responsible for its key acts as both a rendezvous and relay server to the private node. Usurp is designed as a middleware that existing overlay networks can be built over, enabling them to function correctly in the presence of NATs. We evaluate Usurp using a gossip-based peer sampling service (PSS). Our results show that the PSS running over Usurp preserves its randomness properties and remains connected even in scenarios with high churn rates and where 80% of the nodes are behind NATs. We also show that Usurp only adds a low and manageable overhead to public nodes.


Destination Node Overlay Network Hole Punch Direct Connectivity Node Descriptor 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Arad, C., Dowling, J., Haridi, S.: Developing, simulating, and deploying peer-to-peer systems using the kompics component model. In: COMSWARE 2009: Proceedings of the Fourth International ICST Conference on COMmunication System softWAre and middlewaRE, pp. 1–9. ACM, New York (2009)CrossRefGoogle Scholar
  2. 2.
    Audet, F., Jennings, C.: Network address translation (nat) behavioral requirements for unicast udp (2007)Google Scholar
  3. 3.
    Boykin, P.O., Bridgewater, J.S.A., Kong, J.S., Lozev, K.M., Rezaei, B.A., Roychowdhury, V.P.: A symphony conducted by brunet. CoRR abs/0709.4048 (2007)Google Scholar
  4. 4.
    Broadbent, T., Bryan, D.A.: P2psip,
  5. 5.
    Drost, N., Ogston, E., van Nieuwpoort, R.V., Bal, H.E.: Arrg: real-world gossiping. In: HPDC 2007: Proceedings of the 16th International Symposium on High Performance Distributed Computing, pp. 147–158. ACM, New York (2007)Google Scholar
  6. 6.
    Ford, B., Srisuresh, P., Kegel, D.: Peer-to-peer communication across network address translators. In: ATEC 2005: Proceedings of the Annual Conference on USENIX Annual Technical Conference, p. 13. USENIX Association, Berkeley (2005)Google Scholar
  7. 7.
    Ganjam, A., Zhang, H.: Connectivity restrictions in overlay multicast. In: NOSSDAV 2004: Proceedings of the 14th International Workshop on Network and Operating Systems Support for Digital Audio and Video, pp. 54–59. ACM, New York (2004)Google Scholar
  8. 8.
    Guha, S., Biswas, K., Ford, B., Sivakumar, S., Srisuresh, P.: RFC 5382: NAT Behavioral Requirements for TCP (October 2008)Google Scholar
  9. 9.
    Guha, S., Daswani, N., Jain, R.: An Experimental Study of the Skype Peer-to-Peer VoIP System. In: IPTPS 2006: The 5th International Workshop on Peer-to-Peer Systems. Microsoft Research (2006),
  10. 10.
    Guha, S., Francis, P.: Characterization and measurement of tcp traversal through nats and firewalls. In: Proceedings of the 5th ACM SIGCOMM Conference on Internet Measurement, IMC 2005, p. 18. USENIX Association, Berkeley (2005), Google Scholar
  11. 11.
    Gummadi, K.P., Saroiu, S., Gribble, S.D.: King: Estimating latency between arbitrary internet end hosts. In: SIGCOMM Internet Measurement Workshop (2002)Google Scholar
  12. 12.
    Hatonen, S., Nyrhinen, A., Eggert, L., Strowes, S., Sarolahti, P., Kojo, M.: An experimental study of home gateway characteristics. In: ACM SIGCOMM Internet Measurement Conference (IMC) (2010)Google Scholar
  13. 13.
    Huang, Y., Fu, T.Z.J., Chiu, D.M., Lui, J.C.S., Huang, C.: Challenges, design and analysis of a large-scale p2p-vod system. SIGCOMM Comput. Commun. Rev. 38(4), 375–388 (2008), CrossRefGoogle Scholar
  14. 14.
    Huitema, C.: Teredo: Tunneling ipv6 over udp through network address translations (nats) (2006)Google Scholar
  15. 15.
    Hutchison, F.: Nat traversal in maidsafe dht (2010), (accessed November 2010)
  16. 16.
    Kermarrec, A.M., Pace, A., Quema, V., Schiavoni, V.: Nat-resilient gossip peer sampling. In: ICDCS 2009: Proceedings of the 2009 29th IEEE International Conference on Distributed Computing Systems, pp. 360–367. IEEE Computer Society, Washington, DC, USA (2009), CrossRefGoogle Scholar
  17. 17.
    Leitão, J., van Renesse, R., Rodrigues, L.: Balancing gossip exchanges in networks with firewalls. In: International Workshop (IPTPS 2010), San Jose, CA (April 2010)Google Scholar
  18. 18.
    Lu, Y., Fallica, B., Kuipers, F.A., Kooij, R.E., Mieghem, P.V.: Assessing the quality of experience of sopcast. Int. J. Internet Protoc. Technol. 4(1), 11–23 (2009)CrossRefGoogle Scholar
  19. 19.
    MacDonald, D., Lowekamp, B.: Skype: Nat behavior discovery using session traversal utilities for nat (stun). IETF RFC 5780 (May 2010)Google Scholar
  20. 20.
    Rosenberg, J., Weinberger, J., Huitema, C., Mahy, R.: Stun - simple traversal of user datagram protocol (udp) through network address translators (nats) (2003)Google Scholar
  21. 21.
    Rosenburg, J.: Interactive connectivity establishment (ice). In: IETF Internet Draft (October 2007),
  22. 22.
    Roverso, R., Ansary, S.E., Haridi, S.: Natcracker: Nat combinations matter. In: International Conference on Computer Communications and Networks, vol. 0, pp. 1–7 (2009),
  23. 23.
    Roverso, R., Naiem, A., Reda, M., El-Beltagy, M., El-Ansary, S., Franzen, N., Haridi, S.: On the feasibility of centrally-coordinated peer-to-peer live streaming. In: Consumer Communications and Networking Conference (2011)Google Scholar
  24. 24.
    Saint-Andre, P., Smith, K., Tronçon, R.: XMPP: The Definitive Guide: Building Real-Time Applications with Jabber Technologies. O’Reilly Media, Inc., Sebastopol (May 2009)Google Scholar
  25. 25.
    Schutt, T., Schintke, F., Reinefeld, A.: Structured overlay without consistent hashing: Empirical results. In: Proceedings of the Sixth IEEE International Symposium on Cluster Computing and the Grid, CCGRID 2006, p. 8. IEEE Computer Society, Washington, DC, USA (2006), Google Scholar
  26. 26.
    Stoica, I., Adkins, D., Zhuang, S., Shenker, S., Surana, S.: Internet indirection infrastructure. In: SIGCOMM, pp. 73–86 (2002)Google Scholar
  27. 27.
    Thaler, D.: Teredo extensions (2011)Google Scholar
  28. 28.
    Voulgaris, S., Gavidia, D., Steen, M.V.: Cyclon: Inexpensive membership management for unstructured p2p overlays. Journal of Network and Systems Management 13, 2005 (2005)Google Scholar
  29. 29.
    Wolinsky, D.I., St. Juste, P., Boykin, P.O., Figueiredo, R.J.O.: Addressing the p2p bootstrap problem for small overlay networks. In: Peer-to-Peer Computing, pp. 1–10. IEEE, Los Alamitos (2010), Google Scholar
  30. 30.
    Takeda, Y.: Symmetric nat traversal using stun (June 2010),
  31. 31.
    Zhu, Y., Hu, Y.: Efficient, proximity-aware load balancing for dht-based p2p systems. IEEE Trans. Parallel Distrib. Syst. 16, 349–361 (2005), CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2011

Authors and Affiliations

  • Salman Niazi
    • 1
  • Jim Dowling
    • 1
  1. 1.Swedish Institute of Computer Science (SICS)Sweden

Personalised recommendations