What Happens When Everyone Becomes the Server? The BitTorrent Story

How to Architect a Scalable, Decentralized File Sharing System