The BitTorrent Protocol

As I was talking some time ago about torrent, I was asked what exactly that is and how it works. So I just came up with writing a post about it, as I figured out that there are a lot persons who still don’t know BitTorrent, because they never heard of it, or they do not know how it works and don’t know where to look for information.

To follow this article, you should have a basic understanding of what Client/Server Architecture means. If you don’t, you could have a look at the Jabber Guide I wrote some years ago (unfortunately in German only). Beside this you do not really have to have technical background (at least I hope – as my intention is to reach those of you who don’t – all the others won’t need a post like this, anyway 😉 ).

The Name BitTorrent is made up by the words bit and torrent, and this name was chosen by the developers as this protocol is ideal with transferring big amounts of data in no time.

The idea behind BitTorrent is that not only the server coordinates and distributes the download, but the clients can also do it by themselves. This reduces the traffic of the server, and distributes the net load over the group of clients that actually download a File. So as soon as a client starts downloading a file in a BitTorrent network, he is also uploading these parts for others. As this leads to a better overall bit rate, also the clients may profit from this (see below for an explanation with example).

Continue reading