BitTorrent protocol primer, part 1: Infrastructure

For my next three blog posts I am going to take a close look at the BitTorrent protocol.  Since its implementation in 2001, it has become one of the most common protocols for sharing files on the Internet.  For this post I am going to take a look at the infrastructure that makes up a BitTorrent network.  I will then follow up with a post on how it operates and, for the final post in the series, I will look at how you can detect and monitor BitTorrent activity.

Sharing files using BitTorrent is also known as peer-to-peer file sharing (P2P). Traditional services for sharing data usually involved hosting the data on servers or website. Servers would become overloaded if too many users tried to download the data simultaneously. Recent developments with content delivery networks have improved on this model with multiple servers hosting the same data. However, you are still dependent on the availability of a few key servers. It also creates a problem for those who wish to share copyrighted material; centralized servers can be easily shut down if they are found to be hosting copyrighted material. This was the reason why services such as Napster were shut down a few years ago.

P2P networks which use the BitTorrent protocol don't rely on servers hosting data. Peers download data from other peers. As certain downloads get more popular, more and more copies become available. There are many types of BitTorrent clients available, from ones you can install on your PC to ones that can be installed on smartphones.

I think one of the most interesting developments recently is the inclusion of BitTorrent clients on home entertainment components like media players and storage devices. These devices will take care of your downloads without the need to keep your PC running. Some of these devices also have remote access features which allow you to control the downloading when you are away. If you try and download too many things simultaneously it will slow things down. I will have more on this in my next post.

The next element of a BitTorrent network is a tracker. A tracker does not host any of the shared data, it just maintains a list of who is downloading what. If I want to download a certain file, my BitTorrent client will contact a tracker to get a list of clients who have the file that I need. Once I have the list of clients, I can start to download pieces of the file from them. Individuals who host tracker servers will argue the point that they can't be shut down as there is nothing illegal hosted on them. You can also have distributed trackers, in this model each peer can also act as a tracker.

The third element of a BitTorrent network is a torrent file or magnet link. These are typically hosted on a website which is known as a torrent index. They are also form the link between human readable text and the unique text strings that are used by the BitTorrent clients. This text string is known as the info-hash.  For example, if I was to download a file called ubuntu-11.10-desktop-i386.iso, its info-hash would be 8ac3731ad4b039c05393b5404afa6e7397810b41. All transactions between my system and other peers would use this info-hash string, not the actual file name. This makes it more difficult to monitor what's being downloaded using BitTorrent networks. I will look at this in more detail in part 3 of this blog post.  

ISP's in some countries are starting to block access to these torrent index sites. An alternative to torrent files are magnet links. They contain the basic information that is needed to start a download. Magnet links are becoming more popular as they are harder to block with Internet filtering systems.

So that's the basics of the BitTorrent network. You need a client, a torrent file or magnet link and a tracker to let you know who has the data you need. In my next post on this topic I am going to look at the operation of BitTorrent in more detail. If there is anything specific you want me to cover please add a comment and I will try and include it in my next post.

 Darragh

Darragh Delaney is head of technical services at NetFort.  As Director of Technical Services and Customer Support, he interacts on a daily basis with NetFort customers and is responsible for the delivery of a high quality technical and customer support service. Follow Darragh on Twitter @darraghdelaney

Copyright © 2012 IDG Communications, Inc.

Bing’s AI chatbot came to work for me. I had to fire it.
Shop Tech Products at Amazon