BitTorrent can be fun, as long as you get decent speeds. Not satisfied with your current speeds? These suggestions might help to optimize your download pleasure

1. Hack the max half-open TCP connections

If you’re on XP sp2, your TCP connections are limited to a maximum of 10. This might hurt your downloading speed because it wont let you connect to as much peers as you want. It is supposed to slow down viruses because their spreading strategy is to connect to a high amount of ip numbers, but it could cripple your torrent downloads.

A nice way to fix this is to download this patch.

Note: Some people report that their antivir reports the patch to be a Virus, This is not the case. Check out http://www.lvllord.de/ for more details on this

The patch allows you to set the maximum allowed connections to any number you want. Any number between 50 and 100 is ok (more is NOT always better).

Next you need to configure your torrent client to allow 50-100 max half-open TCP connections

uTorrent: Options > Preferences > Advanced options > net.max_halfopen

Bitcomet: Options > Preferences > Connection > max half-open TCP

Now you’re ready to go…

A third point of interest is that some “windows updates” revert your tweaked tcp connections back to 10. So it’s wise to check this every now and then. You can check this by going to (in windows xp) Start > Control Panel > Administrative Tools > Event Viewer > System… Look for event 4226 (sort by event).

For more details about Windows XP SP2 and Event ID 4226 read David Kaspar’s excellent post

If there are a lot of daily occurences it’s likely that the max amount of half-open tcp connections was set back to 10. Or you’re infected with some nasty spyware…

2. Torrent Client Configuration

In order to apply these tips you need to know your maximum up- and download speed. You can test your bandwidth over here (stop all download activity while testing). Also make sure that you applied the tips provided in our previous posts.

Note that there’s a difference between kb/s (kilobits/second) and kB/s (kilobytes/second). To be precise, kB/s = kb/s divided by 8. In this tutorial we use kB/s (like most torrent clients do). This means that you might need to calculate your max speed in kB/s yourself if the speedtest only gives you the results in kb\s (so divide by 8 then).

Settings 1-4 can be found in the options, settings or preference tab of most torrent clients.

1. Maximum upload speed

Probably the most important setting there is. Your connection is (sort of) like a pipeline, if you use you maximum upload speed there’s not enough space left for the files you are downloading. So you have to cap your upload speed.

Use the following formula to determine your optimal upload speed…

80% of your maximum upload speed

so if your maximum upload speed is 40 kB/s, the optimal upload rate is 32kB/s

But keep seeding!

2. Maximum download speed

Although setting your maximum download speed to unlimited may sound interesting, in reality it will only hurt your connection. If you still want to be able to browse properly, set your maximum download speed to:

95% of your maximum download speed

so if your maximum download speed is 400 kB/s, the optimal download speed is 380kB/s

3. Maximum connected peers per torrent

Yet another setting that you don’t want to max out. I experimented quite a lot with the max connected peers settings and came to the conclusion that both high and low number hurt the download speed of a torrent. The following setting worked best for me.

upload speed * 1.3

so if your maximum upload speed is 40 kB/s, the optimal amount of connected peers per torrent is

40 * 1.3 = 52

I didn’t noticed a difference for fast or slow connections here.

4. Maximum upload slots

1 + (upload speed / 6)

so if your maximum upload speed is 30 kB/s, the optimal number of upload slots is

1 + (30 / 6) = 6

3. More Tips

Check seeds and peers

A simple tip, but very important. Always look for torrents with the best seed/peer ratio. The more seeds (compared to peers) the better (in general). So 50 seeds and 50 peers is better than 500 seeds and 1000 peers. So, be selective.

Change the default port.

By default, BitTorrent uses a port 6881-6999. BitTorrent generates a lot traffic (1/3), so isp’s like to limit the connection offered on the these ports. So, you should change these to another range. Good clients allow you to do this, just choose anything you like. If you’re behind a router, make sure you have your ports forwarded (portforward.com) or UPnP enabled.

Disable Windows Firewall

It sucks. Windows Firewall hates P2P and often leads a life of it’s own. So disable it and get yourself a decent (free) firewall, Kerio or Zone Alarm for example.

Turn on Encryption

Encrypting your torrents will prevent throttling ISP’s from limiting your BitTorrent traffic. Check out how to enable encryption in Azureus, uTorrent, and Bitcomet, the three most popular torrent clients.

Optimize your internet connection

The TCP optimizer is a freeware utility that optimizes your internet connection. I found it very useful and it helped speeding up my connection for regular internet activity and for downloading torrents. Just download it, and move the slidebar to your maximum download rate (note that it’s in kb/s). Don’t try to set it higher because that will hurt your download speeds!

Last but not leastâ€¦ Buy a faster connectionâ€¦

Happy Torrenting!

(this post is a compilation of previous “speed up” posts)