How and Why BitTorrent Works, a Visualization


As with most technology, viewing a simple simulator depicting the inner working of BitTorrent is much easier than having to plow through pages of technicalities and insider lingo. So, for those who never got to read up on what’s under the hood of a BitTorrent client, this visualization comes in handy.

The nifty BitTorrent swarm visualization uses processing.js to represent how a BitTorrent swarm works. In particular it may help novices get a grasp on how BitTorrent functions and why it’s capable of sending a gigabyte of data to millions of people in only a few minutes.

As most tech-savvy users know, BitTorrent starts with chopping a file into small pieces. The person who starts sharing the file sends those small pieces to available peers in the swarm. The BitTorrent protocol makes sure that the seed sends pieces to everyone, so they can immediately exchange these pieces with each other.

What follows is a sharing fest of bits and bytes. Your BitTorrent client tries to find the rarest piece that’s available among the peers in the swarm to avoid getting stuck at 99% and sharing relies on fair trading principles (tit-for-tat).

In general BitTorrent transfers go faster if the number of seeders in the entire swarm is higher. This means that a torrent with 20 seeders and 50 leechers should result in a better download speed compared to a torrent with 50 seeders and 250 leechers.

The BitTorrent simulation is a simplified visualizations of this process. It works in all up-to-date browsers except Internet Explorer. Seeds can be added to the swarm with the “s” key and peers with the “p” key. The “r” key allows you to delete seeds or peers from the swarm at random.

In 2006 we wrote about an earlier version of this “BitTorrent simulator,” but because the original is no longer online and since many more people use BitTorrent nowadays, the update is appreciated.

Tagged in: ,

Share this post

Share on Google+

You May Also Like

c There are 36 comments. Add yours?

comment policy