Why BitTorrent uploads simultaneously? [duplicate]
Possible Duplicate:
How does Bittorrent work?
While downloading torrent, I notice that BitTorrent simultaneously uploads and downloads. Download is obvious, but why upload?
Solution 1:
Why upload? Your "upload" is somebody else's "download". If nobody uploads, then nobody can download.
Why simultaneously? Because, if it waited until you had the whole file before making it available to others, then anyone who turns off their client when they're not actively downloading would never upload, and the network would suffer for it.
Solution 2:
Well, why not? Torrents have no central server - the data is not produced by magic bunny rabbits or the toothfairy - bitorrent is a peer to peer networking system - basically your computer goes "say old chap, would you happen to have chunk 1234? " and another computer goes "sure, old chap, I have that" and sends it. The only way this works is that people share chunks they have with those who don't.
The only reason Bitorrent works at all* is that uploading occurs after all.
*not entirely true. Webseeds are an exception.
Solution 3:
Bittorent uses a decentralized Peer to Peer protocol, it works because you (a peer) upload the already downloaded part of the file to other peers which also are uploading their already downloaded parts to the peers who need it to complete the file.