| Imagine a file split into 100 blocks. You're the seeder. Initially you're the only one with all 100. And everybody's gonna download things sequentially. Imagine 300 peers grab block 1 from you. Gonna be pretty slow, each peer gets 1/300th of your bandwidth. Imagine those 300 peers finish block 1 and move onto block 2. Same bandwidth crunch. Although new peers can at least get block 1 from that initial cohort of 300 peers. But nobody can blocks 2 through 100 from anybody but you. Not ideal. Now repeat the process for 3 through 100. You're gonna be the bottleneck for a loooooooong time for those remaining pieces. ... ... ...now imagine we do it differently. Those 300 peers each grab a random block. This part's just as slow. But once they have their initial randomly-chosen blocks, our bandwidth explodes. Each of those 100 blocks is now available from ~4 sources (you, and roughly 3 others). And you could even log off at this point, since there is a complete (distributed) copy of your file out there. As more blocks are exchanged, the effective aggregate bandwidth rapidly increases even farther. |