Adapting to NAT timeout values in P2P overlay networks

Nodes within existing P2P networks typically exchange periodic keep-alive messages in order to maintain network connections between neighbours. Keep-alive messages serve a dual purpose, they're used to detect node failures and to prevent idle connections from being expired by NAT devices. However despite being widely used, the interval between messages are typically fixed below the timeout value of most NAT devices based upon crude rules of thumb. Furthermore, although many studies have been conducted to traverse NAT devices and other studies seek to improve failure detection in P2P overlay networks; the limitations of NAT devices have received little research attention. This paper explores algorithms which allow nodes to adapt to the timeout values of individual NAT devices and investigates the resulting trade-offs.

[1]  John Kubiatowicz,et al.  Handling churn in a DHT , 2004 .

[2]  Emin Gün Sirer,et al.  Latency and bandwidth-minimizing failure detectors , 2007, EuroSys '07.

[3]  Seif Haridi,et al.  An Overview of Structured P2P Overlay Networks , 2005, Handbook on Theoretical and Algorithmic Aspects of Sensor, Ad Hoc Wireless, and Peer-to-Peer Networks.

[4]  Richard Price,et al.  Still Alive: Extending Keep-Alive Intervals in P2P Overlay Networks , 2009, Mobile Networks and Applications.

[5]  Miguel Castro,et al.  Controlling the Cost of Reliability in Peer-to-Peer Overlays , 2003, IPTPS.

[6]  Saikat Guha,et al.  Characterization and measurement of TCP traversal through NATs and firewalls , 2005, IMC '05.

[7]  Randy H. Katz,et al.  On failure detection algorithms in overlay networks , 2005, Proceedings IEEE 24th Annual Joint Conference of the IEEE Computer and Communications Societies..

[8]  网行者 最“变态”的下载:BitTorrent , 2003 .

[9]  Daniel Stutzbach,et al.  Understanding churn in peer-to-peer networks , 2006, IMC '06.

[10]  Bernhard Sick,et al.  Cooperative Keep-Alives: An Efficient Outage Detection Algorithm for P2P Overlay Networks , 2007 .

[11]  David R. Karger,et al.  Chord: A scalable peer-to-peer lookup service for internet applications , 2001, SIGCOMM '01.

[12]  Krishna P. Gummadi,et al.  Measuring and analyzing the characteristics of Napster and Gnutella hosts , 2003, Multimedia Systems.

[13]  Robert T. Braden,et al.  Requirements for Internet Hosts - Communication Layers , 1989, RFC.