tweaks

If you have found this page then you want either more speed or have problems with your ADSL connection of one sort or another. If you are not interested in the history or my ramblings on this subject you may just want to check out the Quick Tweaks pages, which just list what you need to do with no explanation.

Why Tweak?

For one reason or another the default settings for ADSL connections in the UK are sub optimal. Changing them ever so slightly can produce major improvements in speed. There is one reported instance of speeds going from somewhere in the 220Kbps range to 460Kbps plus. No it isn't a universal panacea to all speed problems but since it's so easy to do it can't hurt to try it.

Dr TCP

So how do you accomplish this improvement then?

Well there is only one way, change some settings in your registry. Now don't panic. It's a lot easier than it sounds as the nice kind people at Broadband Reports.com have made available a tool for doing the registry changes for you totally free of charge. It's called Dr TCP and you should get the latest one available from the page I have linked to. For the purposes of this guide I am using DrTCP version 2.1

First however you need to get a speed-test done so you know if you have have improved things or made them worse. Because you are testing across the web a lot of things can make the values you get for a speed-test very arbitrary, so single speed tests are somewhat meaningless. Where speed-tests come into their own is when you do a series of them and compare like for like. This means that the conditions you run the speed test under are very critical to get the most accurate data. Make sure:-

One of the best speed-tests is hosted by ADSL Guide. Run a base line speed-test from there first and save the results somewhere so you know exactly what they were. After each tweak and reboot go back to the speed-test and re-run it.

Basic Setup


DrTCP first use When you first run DrTCP it will look like it does on the right.

The drop down list of adapters will be totally different for everyone. In my case the only option is my Ethernet card but for users with a USB or PCI ADSL modem it will be either blank or list lots strange adapters that are of no further interest. (For the record it depends on what your PC has with TV adapters and Fire-wire being reported by many)

In The Beginning


DrTCP first settingsWhen the problem was first diagnosed by BT they suggested setting MTU to 1458. Since the theory goes that RWIN should go hand in glove with MTU using the formula

RWIN = n * ( MTU - 40 )

where n is a whole number. It doesn't mean that you can use a value of 30 for n unfortunately as if RWIN is too high it begins to corrupt packets. The value of n found by many people to work best with an MTU of 1458 is 9. This gives a grand total of 12762. So as you can see on the left I put 1458 in the two boxes labeled MTU and the 12762 in the Tcp Receive Window.

Strictly speaking I only need to put the 1458 in the box next to my Ethernet adapter as that is the one that needs it with my router.

If you have a USB or PCI ADSL modem that uses a dial-up adapter similar to normal 56K dial-up then you only need to enter the 1458 in the Dial Up (RAS) MTU box.

Then reboot your PC for the changes to take effect. (There are reports that you do not need to reboot your PC for this to work, and indeed under Windows 2000 for me this is the case. It is safer to reboot though as it is guaranteed to work.)

And Then There Were Two


DrTCP alternate settingsHowever like all things once people were alerted to this possibility of changing the values to attain better performance, they soon began to experiment. While an MTU of 1458 was perfect for some other values were found to be best for others.

Another popular set of values is

MTU: 1430
RWIN: 13900

Neither set of values is right and neither set of values is wrong, just what is proved fastest for your particular circumstances.

Don't forget to reboot if you need to and don't forget which box you need to place the MTU value in.

Advanced Settings


Hopefully by now your ADSL connection is purring along somewhere in the mid to high 470Kbps. If you are really lucky it will be in the 480Kbps plus region but this is rare as you are approaching the maximum values anyway and there are always overheads involved.

DrTCP advanced settings So, you might be wandering what all those other settings are for like I did? After lots of reading on various forums and sites, mainly ADSL Guide and Broadband Reports, I arrived at the settings on the right. This works for me, it may not work for you though. My connection reports rock solid speeds that never vary no matter what time of the day or night I check them. That's good enough for me, but you can make your own mind up just by testing things a little if you want to.

Most of the values on the right are defaults anyway but if you want the real nitty gritty detail checkout the Broadband Reports Tweaks FAQ page.

The Need For Speed


The visible effects of all this tweaking, as has been alluded too already, can be quite dramatic. Unfortunately for me this was not the case but a respectable speed increase was seen. I will show you the speeds I get for each tweak.

Un-tweaked

Direction Actual Speed True Speed (estimated)
Downstream 463 Kbps (57.9 KB/sec) 500 Kbps (inc. overheads)
Upstream 244 Kbps (30.5 KB/sec) 263 Kbps (inc. overheads)

MTU 1458 - RWIN 12762

Direction Actual Speed True Speed (estimated)
Downstream 470 Kbps (58.8 KB/sec) 507 Kbps (inc. overheads)
Upstream 241 Kbps (30.1 KB/sec) 260 Kbps (inc. overheads)

MTU 1430 - RWIN 13900

Direction Actual Speed True Speed (estimated)
Downstream 477 Kbps (59.6 KB/sec) 515 Kbps (inc. overheads)
Upstream 245 Kbps (30.6 KB/sec) 264 Kbps (inc. overheads)


Ok, so nothing earth shattering and hardly worth doing you might think. However there is another reason for doing the tweaks that hasn't been mentioned yet. Because of the way the BT equipment causing the problem functions any data packets from un-tweaked systems can cause the router to hold onto the packet for longer than a packet from a tweaked system. This puts load on the router CPU. If enough packets from un-tweaked systems hit the router at once it causes massive slow downs for not just you but everyone else using that same router. Therefore by doing this tweak you will be helping not just yourself but also your fellow surfers in this giant beta test that everyone is calling broadband.


There is also another final twist to this sorry tale of misconfigured routers. If you don't tweak, this doesn't happen to everyone, it can affect which web pages will load and which wont. There have been instances where people report that half the web stops working for no apparent reason. This has been found to be because of the problem of packet sizes to these sites being to large. Tweaking the MTU solves this one every time. There is a very complex reason for why this happens but it's not one I feel has ever been explained well enough to me for me to feel confident I would get it right here. Easier to just tweak if this is the problem and if you are really interested hunt down what explanations there are. It's probably quite boring and not worth the effort as you will still be able to view the web pages if you don't know any of the reasoning behind why.