Cable/DSL Tweak Guide
Posted: September 17, 2000
Written by: Dustin "TimmyC" Jones

Introduction

Editor's Note: While this tweak guide is technically written for cable modems, most of these tweaks will work with xDSL as well. Back up all settings before changing. Keep in mind that some users may experience loss of performance, but most should experience a gain in performance from this guide. This is why we recommend that you back up settings before proceeding.

Ahh broadband; every gamer's dream... I'm sure you have seen all the ads on TV or heard them on the radio: "Cable modems are up to 100x faster than your conventional dial-up." "It's instant, it's faster video, it's richer graphics, better sound." Blah blah blah. So you finally decided to fork over the cash (or nag your parents => ) to get a cable modem installed. The big day arrived finally ( I had a 2-month wait for the first setup I got.) And you got it all installed and BOOM!! (Hehe) You fell off your seat because of the speed. Pages which seemed to take forever took seconds, downloads were near instant, and your gaming, most importantly of all, was smooth and awesome; without noticeable lag. This is why all those lpb's are so good...

But all good things must come to an end. As I’m sure lots of you have experienced, slowdowns became common. As more and more people signed up, it got slower. Your 100kb/s downloads slowly became 20 or even 10.. Pings began to soar higher and higher.. You start to thirst for something faster. You have begun to regress into your modem state again. You feel the need for speed.

What Happened?

This is a question that I'm sure many ponder. Well there are many reasons, but the most common would be local traffic and Internet traffic, period. Local traffic is the biggest speed cap that plagues cable modems. Cable modems work on a network/grid that connects to a T3 router running at 45 Megabits per second. Each area is a grid (a few blocks). Depending on where you live, you could have a busy grid, or a not-so-busy one. My grid for example, isn't really that busy; so I get a lot of speed. But others may not get much speed at all because there are lots of people signed up in their area using up a percentage of that T3's resources, causing it to slow down. This is the biggest fallback of cable Internet technology. The problem lies with the cable companies' lack of upgrades to their equipment to meet the needs of the consumer. There isn't much you can do besides maybe write angry letters.

Then there is Internet traffic. You can't help that either. Your best bet if you really need the speed is to pick a time where not as many people are on. I know that's hard because the whole world is connected, but if you use it at 2 AM, you really do notice a difference over say 6 PM.

Your computer's performance does affect your Internet performance as well. If your computer isn't running the best, neither will your Internet. After a format, it goes much better for me. Tweak your computer! Keep that computer clean!





What Can I Do?

Unlike old fashioned dial-up modems, there isn't a whole lot you can do to increase the speed of your cable connection. There are tweaks that make enough of a difference though. One of the single most important ones is tweaking the way your Cable connection sends the data/packets back and forth. You may have heard of things like MTU, RWin, TTL, MaxMSS, and more. If you have no clue what they are or what they do, I have made some short definitions:

MTU: Maximum Transmission Unit; MTU is the largest packet of data that can be sent at one time on the network. Raising it will allow to send more at once, but also can cause fragmentation of that data if the size requirement is not met.

RWIN: Receive Window; How much data can be sent out before the other server sends a response.

TTL: Time to Live; The total number of hops that a packet will be allowed to take.

MSS: Max segment guide; This is the largest size of a TCP send that Winsock will accept. This is set automatically though, so don't fret this.

If you are new to this whole thing, there are a plethora of great programs out there that will automatically set the best values for your connection. There are also a bunch of great 'patches' created by speedguide.net which will do the same thing. For starting, I would suggest either a program or patch, it doesn't really matter since they both do just about the same thing. Some of the most popular programs are:

EasyMTU
I-Speed
Intelli Dial-Up
Smartalec Smartplay
(Thanks Tweakfiles!)

But if a fancy program doesn't float your boat, there are the alternative speedguide patches which come in Windows 95, 98 and 2000 flavors. If you are using windows 98, use the sguide_tweak_98.zip file. You can get them here.

Editor's Note: I highly recommend downloading the @home speed patch from the cable patches section at SpeedGuide.net, even if you do not have @home!





What Can I Do? Tweaks... (cont.)

You can also do this manually through the windows registry, but this is only suggested for advanced users that know what to do in the registry, so if you don't know what the registry is or none of this make sense, skip over the next section. Okay here goes...

First, open up a dos prompt. Then type: ping -f -l #### www.yourcableprovider.com (Ex. Rogers hosts mine, so I would do www.rogers.com ) Where the pound symbols are, substitute 1000 there. Ignore the ping numbers, but focus on wether all 4 packets were received. If 1000 is fine, move up 100 and keep doing that until you get some packet loss. When you find the highest number possible, add 28 to it, and make it your MTU setting. I have found 1460 is around where I start to lose packets so 1490 is my MTU. This is around the regular size for MTUs.

Now, in regedit go to: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans and look through the 000# categories. If there is more than 1 with MaxMTU settings in there, use the 1st one, which is probably 0000. Remember your number? Well go on down to MaxMTU and put it in there. The same goes for IPMTU. Now for MaxMSS: it should get set automatically, so you don't need to touch this one. But for the sake of information, it should be set 40 lower than your MTU. :-)



Now point yourself to: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP and take a look at the TTL number. You remember the definition right? Well this is pretty self explanatory, just make it the number you want, I prefer 64, but I'm recommending 128 just to be safe. For Rwin, the best setting is to make it a multiple of your MSS setting. This one is kind of iffy, because if it's set too large you can get a lot of packet loss, but if it's set too small, it will run very slow. I have mine set to 250x higher than the MSS setting. If you play a lot of online games, setting a smaller Rwin will give you lower pings. Play with this setting a little bit to find your own 'sweet spot'. Make sure SackOpts is set to 1 (on) and PMTUDiscovery is set to 0 (off) as well.





What Can I Do? Tweaks... (cont.)

Wow, you should be feeling pretty good already. Now we are going to improve the way IE downloads data from web pages. If you are using Netscape, shame on you! Er, skip over this next little section. This next tweak causes IE to use more connections to the server (web page) you are viewing. This will logically make for quicker downloads of the page and connections. There are a few programs out there which do this for you as well. There's the speedguide.net web page patch, and there is a program called IE Boost. Both work very well and noticeably improve the speed of your IE browsing. Now for a manual edit, head on over to: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings. Where it says MaxConnectionsPerServer and MaxConnectionsPer1_0Server set those to the number you would like. 4 is the default. Setting the connections really high won't make a difference, I found that on my machine 20 is the highest it goes. I'm currently set to 16 for both. Once again, experiment a little.



Also, I suggest a web browser called Voyager 5000 made by Smartalec Corp. It's an IE based browser with skins support, lots of screen space, and is much faster than regular IE. it's well worth the 500k download. Go give it a try.

We are done with the registry now, so close regedit.

Now for the biggest increase in speed I have noticed since writing this guide, drivers... Updating the drivers on your NIC (Network Interface Card) can give you the most noticeable speed boost above everything else. Some good places to check for drivers would be: www.drivershq.com, www.download.com, and even www.altavista.com. Update those drivers for sure. To find out what kind of NIC you have, go to your control panel, system, device manager. Go down to network adapters and it will have the company and brand name if your card. Now in the same spot, highlight your NIC click properties. Then click on resources and get the IRQ (Interrupt Request) number. Close that down. Now go to Start, run, and type sysedit (hit OK). Open the system.ini window and scroll down to a header that says [386enh] and anywhere under that header put Irq##=4096 (Where ## equals the number of your NIC's IRQ) Close that down and save it. You have now allocated 4mb of memory to your network card, this should speed things up a bit.

Editor's Note: In some tests, this specific tweak has not been shown to be affective. If you find that it doesn't help performance, simply remove the entry.



Another great web browsing tweak is the hosts file. The hosts file is used to store the IP addresses of sites. This saves a lot of time for your connection because it doesn't have to go through a bunch of routers to get to the site, it just goes directly to the IP. This one takes a little bit of time to do though, but it's been well worth it for me. 1st, go into your windows directory and look for the hosts.sam (It will appear as just hosts) and make a backup of it. Then, open up a DOS prompt. (There should be a link in your start menu, but if there isn't, go to run: and type dosprmpt.) Go into the windows directory by typing cd windows at the c:\> prompt. Now, rename the hosts.sam file to just plain old hosts by typing: rename hosts.sam hosts and press enter. Now you need to open hosts. There are a couple ways to do it: You could use the edit command at the DOS prompt, or you could open it in notepad or wordpad. Since it's easier to copy paste in notepad/wordpad, go ahead and open it in that. You should now see something like this:

Now, go back to your DOS prompt, and type ping www.tweak3d.net. Using the dotted line box, highlight the IP address and press the button beside it. (The one with 2 pieces of paper)

Now go to the hosts file you have saved and paste the IP address, then press tab and enter the name of the site. Continue to do this for all of your favorite sites. (Note: This tends not to work for some site names like www.blah.com/yaya. Instead, just do www.blah.com and it will work.) After you are done, just save it and have fun browsing! If you have a problem with it, simply just restore it with the backup you made.

And lastly, there's another patch you need to get. Head on over to: Speedguide again and get the VTcp.386 patch, following the instructions there. Install that and reboot. This will speed up your TCP performance because Microsoft made a math error in the first vtcp.386 file.

Conclusion

Aww, it's over! Well hopefully your cable modem should be running faster than ever before and downloads will be nearly instant (Hey, we can all dream). I'd like to thank the whole gang at TweakFiles (You know who you are) for their little tid bits of help. Have any questions or comments? Please e-mail me: timmythec@home.com

Want to return to the normal guide? Click here!

All Content Copyright ©Dan Kennedy; 1998-2000