Bootstrapping in Gnutella: A Measurement Study

To join an unstructured peer-to-peer network like Gnutella, peers have to execute a bootstrapping function in which they discover other on-line peers and connect to them. Until this bootstrapping step is complete, a peer cannot participate in file sharing activities. Once completed, a peer’s search and download experience is strongly influenced by the choice of neighbor peers resulting from the bootstrapping step. Despite its importance, there has been very little attention devoted to understanding the behavior of this bootstrapping function. In this paper, we study the bootstrapping process of a peer in the Gnutella network. We find that (1) there is considerable variation among various servent implementations, and hence in their bootstrapping performance. (2) The neighbors of a peer, which are the outcome of the bootstrapping process, play a very important role in the peer’s search and download performance. (3) Even though the GWebCache system for locating peers is designed to operate as a truly distributed caching system, it actually operates more like a centralized infrastructure function, with significant load imbalance. (4) The GWebCache system is subject to significant misreporting of peer and GWebCache availability, due to stale data and absence of validity checks.

[1]  Hui Zhang,et al.  Measurement-based optimization techniques for bandwidth-demanding peer-to-peer systems , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[2]  Stefan Saroiu,et al.  A Measurement Study of Peer-to-Peer File Sharing Systems , 2001 .

[3]  Jacky C. Chu,et al.  Availability and locality measurements of peer-to-peer file systems , 2002, SPIE ITCom.

[4]  James F. Doyle,et al.  Peer-to-Peer: harnessing the power of disruptive technologies , 2001, UBIQ.