Chapter 6. Peer-to-Peer in Practice

The goal of building large-scale P2P systems is challenging from an implementation perspective. Here we survey some of the key lessons that come from experience with existing overlays as well as general knowledge about network programming and protocol design for distributed systems. Details of protocols for Gnutella, BitTorrent, and structured overlays are discussed, followed by solutions to the crucial problem of NAT traversal. Practical techniques are presented for a peer to determine its capability and for bootstrapping a peer, needed for peers to self-organize and join an overlay. The chapter concludes with a review of P2P networking support in Microsoft Windows.

P2P Building Blocks

In previous chapters ...

Get P2P Networking and Applications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.