Why peer-to-peer is efficientLink
When a user wishes to download a file from a website, the submit a HTTP GET request. This request for the file uses a single TCP socket, and communicates with a single server which transfers the entire file. By contrast, a P2P protocol creates TCP connections with multiple hosts and makes many small data requests to each. The P2P client then combines the chunks to recreate the file. A single file host will usually have limited upload capacity, but connecting to many servers simultaneously allows for higher file transfers, and disperses the costs associated with data transfers amongst many peers. Moreover, a client mid-way through downloading the file also acts as a server, hosting the bits to others which they have already downloaded. These differences from traditional HTTP GET requests allow for lower costs and higher redundancy since many people are sharing the files.
I write books. My latest is a YA science fiction novel called Homeland (it's the sequel to Little Brother). More books: Rapture of the Nerds (a novel, with Charlie Stross); With a Little Help (short stories); and The Great Big Beautiful Tomorrow (novella and nonfic). I speak all over the place and I tweet and tumble, too.