2ndOpinion.FYI中文
genius.wiki

#941 2001 · BitTorrent (Bram Cohen) · Peer-to-peer networking / internet protocols

BitTorrent made every downloader also an uploader by refusing free riders

the problem

Earlier file-sharing networks collapsed under free-riding: most users downloaded without ever sharing bandwidth back

background

Bram Cohen had worked at MojoNation, a peer-to-peer project that tried to fix file-sharing's core weakness — the vast majority of users on networks like the early Napster and Gnutella downloaded content while contributing little or no upload bandwidth back to the network. With demand for bandwidth wildly outstripping willing supply, popular files became slow or unavailable exactly when the most people wanted them, and no amount of asking users nicely to leave their client open and seeding afterward meaningfully changed behavior, since sharing cost the sharer bandwidth and got them nothing extra in return.

Cohen left MojoNation in 2001 to build BitTorrent from scratch, aiming to solve the free-rider problem not through policy, moderation, or user goodwill, but through the protocol's own mechanics, so that selfish behavior by individual users would still add up to a functioning network rather than degrading it.

what everyone would do

The available fixes for free-riding on file-sharing networks were social — reputation systems, guilt-based appeals to leave the client seeding, or centrally rationing bandwidth — none of which changed the fact that uploading cost the sharer resources while downloading was free, so most users kept taking without giving.

what they saw

Free-riding was not a behavior problem, it was a design flaw: uploading was pure cost, downloading pure benefit. Making upload speed the price of download speed made self-interest and network health point the same way.

the move

BitTorrent splits a file into many small pieces and has each downloading peer immediately begin serving the pieces it has already received to other peers, while a built-in tit-for-tat algorithm continuously favors sending data to whichever peers are reciprocating fastest and chokes off connections to peers who take without giving back, alongside 'optimistic unchoking' that periodically tests new or slow peers in case they turn out to be worth trading with.

why it works

The mechanism works because it makes cooperation the dominant self-interested strategy rather than a moral choice: peers who upload generously get prioritized access to pieces they still need, while peers who withhold get throttled by everyone they're connected to, so selfishness is automatically redirected into reciprocity without any central authority monitoring behavior. It also scales in exactly the direction that used to break networks — as a file gets more popular, it gets more simultaneous downloaders, each of whom is also now a source, so capacity grows with demand instead of being overwhelmed by it.

the payoff

Each downloader instantly became a source too, so capacity grew with popularity; it came to carry a large share of global internet traffic.

where it breaks

The mechanism needs many simultaneous peers interested in the same content at once — it offers little advantage for rare, unpopular files with few peers to trade with, where a traditional server can outperform it. It also depends on peers actually being reachable to trade with each other, which firewalls, NAT restrictions and asymmetric home-internet upload speeds can all undermine, and it says nothing about the legality of what's being shared, which became BitTorrent's more persistent and separate problem.

what came after

The tit-for-tat, swarm-based distribution model BitTorrent popularized was later adopted for legitimate large-scale distribution by companies including Blizzard, Facebook and Twitter for pushing software and data-center updates, and it remains the reference example in networking research for using local incentive rules to produce good outcomes without central coordination.

references

  1. [1]The BitTorrent EffectWired, 2005wired.com
  2. [2]Incentives Build Robustness in BitTorrentBitTorrent.org (Bram Cohen), 2003bittorrent.org

keep it