P2P File Distribution
We begin our foray into P2P by considering a very natural application, namely, distributing a large file from a single server to a large number of hosts (called peers). The file might be a new version of the Linux operating system, a software patch for an existing operating system or application, an MP3 music file, or an MPEG video file. In client-server file distribution, the server must send a copy of the file to each of the peers – placing an enormous burden on the server and consuming a large amount of server bandwidth. In P2P file distribution, each peer can redistribute any portion of the file it has received to any other peers, thereby assisting the server in the distribution process. As of 2012, the most popular P2P file distribution protocol is BitTorrent. Originally developed by Bram Cohen, there are now many different BitTorrent clients confirming to the BitTorrent protocol, just as there are number of web browser clients that confirm to the HTTP protocol. In this subsection ,we first examine the self scalability of P2P architectures in the context of file distribution. We then describe BitTorrent in some detail. Highlighting its most important characteristics and features.