An overview of how torrents work

Torrents are since years a very convenient way of sharing large files to a wide audience in an inexpensive way. Used and abused, they even made it in Facebook server deployment system for deploying updates.

Disclosure this blog post is unfinished and will likely stay this way for a long while. It doesn't have the tags to be readable for blind people or anything and I don't want to work on it anymore.

First, what does a Torrent file contains? Well, digital signatures of multiple slices of files, as well as their size and the way the reconstruct into a file. It also contains the tracker information, providing data on what tracker manages the transfers.

A tracker is a server that keeps track of connections in order to apply a fair sharing algorithm between all downloaders given that they upload too.

When a user wants to share a file, it happens that way:

The user creates a Torrent document from a file. Then the file is sent to the users, possibly using some features from the tracker (magnet links for example), or as a simple file.

A downloading user then connects to the tracker to get access to a list of peers working with the same torrent file.

They then initiate a direct connection to download the file part by part, parts are associated with their digital signatures to ensure the file is intact and unmodified.