How to Download Torrents


The Pirate Bay logo
Image via Wikipedia


Downloading large files directly from the internet from a random website can be a real pain in the butt. Http and ftp transfers work, but they are often slow and can be quite problematic, especially if the server hosting the download is slow or very busy. Thankfully, there is a better way to download and share large files that is much more robust, speedy, and dependable than http or ftp. This is, of course, bittorrent. If you are interested in how bittorrent works, check out the wikipedia article on it. If you just want to get started, read on.

Finding Torrents


The first step is to find the torrents you need. This can be as easy as a search away, or it could be a practicably impossible task. Thankfully, some very helpful individuals have anticipated your needs and have tailored various search sites just for torrents. Keep in mind that some of these sites host torrents that point to both legal & illegal materials (depending on your location).

Downloading Torrents


utorrentAccessing the wealth of information contained in the many & various torrents requires a client designed to read the .torrent files and download the data to which they point. Thankfully, there is a wonderful program written for windows and mac (or WINE in linux) that, in my opinion,  is the best torrent downloader available.

µTorrent offers a lightweight and full featured client that is currently unmatched by any other program. Once you have downloaded and installed µTorrent, you will be ready to optimize your system for the fastest download speeds.

How to Maximize Your Download Speeds


The most important factor for having blazing fast download speeds is having a fast internet connection. If you are working off of a 256k connection, you are boned and no amount of tweaking can help.

Determining Your Base Speed


There are two separate parts to your internet connection: upload speed & download speed. These are unfortunately neither equal nor unlimited and we need to find out what the limits are to optimize your downloads.

Head on over to speedtest.net and run their test to find your max up and down speeds. Once you have your maximums, divide each of them by 8 to find the speeds in kB/s. For example, if you have a 3 Mbit connection and speedtest.net gives you a max down speed of 3198 kbps and a max up speed of 540 kbps, your speeds will be 400 kBps down ( 3198 / 8 ) and 67 kBps down ( 540 / 8 ). Remember that 8 kbps = 1 kBps. These new numbers will be the ones you you are working with from now on.

Optimizing µTorrent


µTorrent actually does a decent job of auto-setting your bittorrent settings. With µTorrent open, head to the Options menu and go to Speed Guide. Next to connection type, select the speed that equals your max upload speed. For this setting use the speed in kbps, not kBps. For our example above, the correct choice would be "xx/512k" since the max upload speed was 540 kbps.

The first tweak is setting your maximum upload speed. You don't want to set this to your maximum because it will cripple your downloads. Set it to about 80% of your max upload speed. From the example above, I would set my upload speed to about 50 kbps (67 kBps x 0.80 = 53.6 kBps). Head to the Options menu and go to Preferences. Click on the bandwidth tab and enter your calculated upload speed in the Maximum upload rate box. Make sure Automatic is deselected.

Next we will set your maximum download speed. Just like the upload speed, we don't want µTorrent maxing out your connection as this will make your regular internet usage sub-par. Your download speed should be set at around 90-95% of your max download. From the example above, the download speed should be set at 380 kBps (400 kBps * 0.95). For slow connections, I would recommend setting it lower than 95%. In the bandwidth tab in the preferences window, enter your calculated download speed in the maximum download speed. If you have a fast connection, you can try setting your rate to unlimited, but I would not suggest this for anything under a 3Mbit connection (like in the example).

To properly optimize your downloads, you also need to correctly configure the number of connections that can be made.  To find your max number of connected peers per torrent, take your upload speed and multiply by 1.5 . For our example above, the calculated upload was set at 50 kBps so our max peers per torrent would be 75 (1.5 x 50). In the bandwidth tab in the preferences window, enter your max peers per torrent in the max number of connected peers per torrent box. There is some leeway in this setting but I would no't suggest going too far from this number as both high and low numbers will hurt your downloads.

Next, to find the global maximum number of connections take your max peers per torrent and multiply by the max number of active torrents that is found in the queueing tab. Enter this number in the global maximum number of connections box in the bandwidth tab.

In the bandwidth tab, set the number of upload slots per torrent to 2 and make sure the use additional upload slots box is selected.

In the bittorrent tab, change protocol encryption to enabled and make sure the allow incoming legacy connections box is selected.

In the queueing tab, I suggest that your max number of active downloads is 1 less than the max number of active torrents. This will ensure that you are always uploading at least 1 torrent. Also make sure that the seed while ratio is set at 100 or higher.

Optomizing Windows'  TCP Connections


tcp-patchNext, if you are running Windows, there is another little trick that you can use to increase your speeds. Microsoft decided with XPsp2 that they would try to stem the tide of viruses and spyware by limiting the number of half-open tcp connections. Unfortunately, this can also affect our bittorrent connections! Thankfully, we have an easy way to fix this problem.

If you are using Windows XP and have SP2 or greater installed, just grab this file and unzip it to a folder of your choice. Run the unzipped .exe and run through the prompts to set your limit to 50 (or 100 if you have a really good connection) max half-open tcp connections. Don't set the connections any higher than this! In this case, higher is not necessarily better.

If you are using Windows Vista check out this guide at torrent freak.

Configuring Port Forwarding


Next, we need to make sure that µTorrent can see the outside world properly. To do this, we will need to set up a port forwarding rule. First we need to select a port that we are going to use to let µTorrent get through our firewalls and routers. I suggest a number somewhere between 39000 and39700. Why? Not much reason besides changing the port from the default.

Next, if you are connecting to the internet through a router, head on over to portforward.com, select your router, and follow the instructions to set up port forwarding.

CheckIf you are connecting to a controlled network (like a university), then unfortunately, there is not much you can do to forward a port.

Once you have your port forwarding set up, there is an easy way to check to make sure it is working correctly. In µTorrent, look at the bottom status bar. You will see an icon that indicates whether your ports are correctly forwarded or not.  If your port forwarding is working, you will see a green circle with a check mark. If you don't, head on back to portforward.com to get it set up correctly.

PeerGuardian


peerguardian-2The next step is to protect yourself from various  groups and individuals on the net that don't want you downloading. There is a nifty little program that will keep track of bad ip addresses and make sure that you can't connect to them. This will keep your computer from connecting to known to be sending bad data and slowing down your connection or groups that track the activities of bittorrent users.

Head on over to phoenix labs and grab the latest version of PeerGuardian. Once it is installed, you will need to tell PeerGuardian what lists to subscribe to for updates.


To show you how to add a list to PeerGuardian, we will walk through adding a list. At I-BlockList, click on the link to the "Hacker" list provided by DCHubAd (about halfway down the page) and copy the update url on this new page. Go to your PeerGuardian window and click on list manager. In the list manager window, click add. Fill in a description and select add url. Paste the update url you copied earlier and click ok.

The lists I recommend are as follows (these link to the info page, not the lists):

Go to the settings tab in PeerGuardian & hit the next button. Change the auto-update interval to 1 day and change the auto-close update window after to 1 second. This will make PeerGuardian update every day (if you reboot) and will automatically close the update window. If we don't tell PeerGuardian to auto close the update window, it will just sit there on startup and do nothing until you tell it to. We want it to get started protecting us as soon as we can. (update: it has come to my attention that peerguardian may not be updating your lists as often as you set it for. Until the awesome folks over at phoenix labs fix it, you will need to manually click the update button as often as you want peerguardian to update.)

Remember, with PeerGuardian, you will be safer, but not bulletproof. No one can keep up with every individual or organization that wants to kill bittorrent, but PeerGuardian will help.

Checking Your Setup


ubuntu-logoThe best way that I have found to consistently max out your connection is to download a copy of Linux. Linux torrents are usually popular and well seeded. Grab the .torrent file for Ubuntu at linuxtracker.org and start downloading. After a minute or two, you should find that your download speed is at or approaching your max download speed. If it is not, you may have some more tweaking to do before you are optimized.

Have fun & remember, downloading copyrighted materials without permission is illegal in the United States.

Disclaimer: This is a discussion on how to use a file-sharing technology to download legally shared material. The author has no liability if a reader uses the information herein in an inappropriate manner.


Enhanced by Zemanta