1. The Protocol That Overturned the Common Sense of Downloading
What happens if tens of thousands of people try to download multi-gigabyte data simultaneously, such as Linux installation images or massive game update files? With a standard web server (HTTP download), the network bandwidth gets saturated, and the server goes down.
To solve this, instead of “companies paying to prepare multiple ultra-powerful servers (CDN),” a revolutionary method was devised: “borrowing the power of the downloading users’ own PCs to help each other download.” This is “BitTorrent,” developed by Bram Cohen in 2001.
BitTorrent is not just a tool for illegal downloading. It still accounts for a significant portion of the world’s internet traffic today, and is used by major IT companies for rapidly deploying massive data to their internal server clusters. It is one of the masterpieces of “distributed delivery algorithms” in computer science.
2. The Power of Pieces (Fragmentation) and Swarms
BitTorrent’s greatest invention is handling a single massive file by dividing it into “pieces” (usually small blocks of about 256KB to a few MB).
In conventional downloading, you receive the file sequentially from start to finish from the server. However, in BitTorrent, people participating in the download (a group called a swarm) constantly share information on “who has which piece.”
Then, while receiving pieces you don’t have from other users (peers), you simultaneously upload and pass the pieces you have already finished downloading to other users who don’t have them yet.
graph TD
Seed["Seed (100% Holder)"] -->|"Piece 1"| PeerA["Peer A (20% Complete)"]
Seed -->|"Piece 2"| PeerB["Peer B (40% Complete)"]
Seed -->|"Piece 3"| PeerC["Peer C (10% Complete)"]
PeerA <-->|"Exchange Pieces 1 and 2"| PeerB
PeerB <-->|"Exchange Pieces 2 and 3"| PeerC
PeerC <-->|"Exchange Pieces 3 and 1"| PeerA
Note over PeerA,PeerC: Users exchange pieces they don't have with each other like a puzzle
Through this mechanism, the original server (seed) no longer needs to send the full file to every participant. By handing each piece to just one person, the participants then multiply them by exchanging puzzle pieces with each other, creating a magical phenomenon where “the more participants there are, the faster the download speed of the entire network becomes.”
3. The Rarest First Algorithm
One of the reasons BitTorrent works so efficiently is a clever algorithm that determines the order of pieces to download, called “Rarest First.”
If everyone downloaded in order from the “first piece of the file,” the swarm would be filled with “people who only have the first half pieces,” and the number of people with the second half pieces would become extremely low. In this state, the moment the original seed disappears, no one would be able to complete the file to 100%.
Therefore, BitTorrent overlooks the entire swarm and enforces a rule on each peer to “prioritize downloading the rarest pieces that are currently the least circulated (smallest in number).” As a result, all pieces are evenly spread throughout the network, ensuring that even if the original seed disappears, the file can be completed simply by the remaining users exchanging with each other.
4. Tit-for-Tat Strategy: Eliminating Free Riders
The biggest challenge in a P2P network is the presence of selfish users (free riders) who “only receive data and do not upload (provide) anything to others.” If the network is full of them, the system collapses.
Against this problem, BitTorrent embedded a powerful countermeasure based on game theory called “Tit-for-Tat” at the protocol level.
The BitTorrent client software constantly measures “at what speed data is being uploaded to me” for each connected peer. Then, it automatically performs an action where it “preferentially sends its own data in return only to peers who give a lot of data to it (Choke/Unchoke).”
In other words, users who restrict uploads and “only receive” are judged by all other users as “they don’t give data, so we won’t give either,” causing their connections to be cut off, and resulting in their own download speeds dropping drastically. It is an astonishingly designed algorithm where acting altruistically (opening up uploads) becomes the optimal solution to fulfill selfish goals (making your own download faster).
5. Evolution from Trackers to DHT (The Ultimate Decentralization)
In the early days of BitTorrent, a central server called a “tracker” was necessary to manage a directory of “which IP addresses have this file.” It had a weakness where users could not find each other if the tracker went down.
However, modern BitTorrent has adopted a technology called DHT (Distributed Hash Table), making even the tracker server unnecessary (trackerless). By having millions of participating users’ own PCs cooperate to build a massive “distributed directory,” it has evolved into the ultimate decentralized system that can find people holding a specific file and start downloading completely without a central server.
6. Conclusion
BitTorrent is a technology that discards the 20th-century idea of “a massive central server distributing to everyone” and beautifully embodies the internet’s original philosophy of autonomous decentralization by “uniting the power of swarming individuals.”
The underlying logic of “shattering files into pieces,” “collecting the rare ones first,” and “rewarding those who cooperate” continues to have a profound impact on the design of today’s blockchain technologies and decentralized cloud storage.
