Tuesday, February 23, 2010

Broadband Internet Connection Tweaking

If you are reading this then you are looking to maximize your bandwidth by tweaking your computers registry and other settings. There are a few things you must know and understand prior to optimizing your connection.

• Your goal in tweaking is to get 90% of your ISPs bandwidth caps, but remember that sometimes due to factors beyond your control such as routers, nodes, distance from your CO or congestion etc. you WILL NOT obtain that goal.

• You need to know your ISPs caps in kilobits, for example I have Cox Internet Service and my caps are 3000/256. This information is usually found on your ISPs website.

• You need to download CableNut from here, it is the most comprehensive internet connection tweaking app available.

• You need to know what your maximum anticipated latency is by following the instructions here.

• Once you know what your ISPs caps and your maximum anticipated latency are you just need to input it into the CableNut Live webpage. Our own Moderator here j79zlr made this page and it uses the proper formula for finding all you optimum registry settings.

• You need to make sure your MTU (maximum transmission unit) is set properly since other settings are based on this, to check yours do a TCP/IP Analyzer Test. This will tell you what your current TCP/IP registry settings are. The proper MTU values are as follows, make sure yours is set accordingly: Cable – 1500, Normal DSL – 1500, PPPoE DSL – 1492, XP Native PPPoE DSL – 1480.

If you are using XP's native PPPoE setup and your MTU is not set to 1480 then copy and paste the following and make it a .reg file and merge it into your regstry to correct it:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NdisWan\Parameters\Protocols]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NdisWan\Parameters\Protocols\0]

"ProtocolType"=dword:00000800
"PPPProtocolType"=dword:00000021
"ProtocolMTU"=dword:000005c8

• It is important to test your speed properly, the most accurate test is to download a large file from a fast reliable FTP server such as the following two:

OOL FTP TEST

AOL FTP TEST

RoadRunner FTP Test (Tampa FL)

Another fairly reliable test is from Speakeasy, it is a java based test and isn’t as accurate but if you do multiple tests from around the US it will give you a fairly accurate result. Here is a full list of their test sites:

New York City
Chicago
Washington D.C.
San Francisco
Denver
Dallas
Atlanta
Boston
Philadelphia
Los Angeles
Cleveland
Houston
Miami
Minneapolis/St. Paul
Seattle

Make sure you clear your browsers cache prior to each test.

For all the definitions to the values in CableNut read here.

The Windows 2000 White Papers – The official Microsoft papers on how TCP/IP works in Windows 2000 & XP.

Along with properly optimizing your TCP/IP & AFD values there are also a number of other things you can do to help maximize your bandwidth.

• Setting your NIC (Ethernet card) duplex mode properly. Duplex modes are as follows:

Cable Modem – 10mb half duplex*
DSL – ISP dependant
If using a router set it to 100mb full duplex.
*OOL users should set their duplex mode to 100mb full duplex

To set yours do the following:

Open your control panel – select the network icon – right click on your LAN connection and select properties - under the ethernet adapter icon click the button configure - select the advanced tab - in the property box, the property name to be selected varies according to model of ethernet card. Examples are: Network Link Selection, Media Type, Connection Type, Duplex Mode, or any similarly named property which can have Values looking like Auto-Negotiation, or 10BT, or 10BaseT - in the Value box, select a value which either (a) explicitly says half-duplex or semi-duplex, or (b) at least does not say full-duplex [e.g. 10BaseT on its own is OK] – if there is a choice between 10 and 100 with half-duplex, choose the 10. Do not choose 10Base5, 10Base2, or AUI - click OK to exit the Adapter settings - click OK to exit the connection properties.

• Setting your TCP/IP metric setting properly, it should be set to a value of 1. To do so do the following:

Open your control panel – select the network icon – right click on your LAN connection and select properties – highlight Internet Protocol TCP/IP and select properties – advanced – select the IP settings tab – in the interface metric box put the value 1 – ok.

• Speeding up network browsing.

Open regedit and navigate to:

HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer/RemoteComputer/NameSpace

Delete the key: {D6277990-4C6A-11CF-8D87-00AA0060F5BF}

• Faster webpage tweak by giving priority to DNS lookup.

Copy and paste the following and make it a .reg file and merge it into your regstry:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider]

"DnsPriority"=dword:00000001
"HostsPriority"=dword:00000001
"LocalPriority"=dword:00000001
"NetbtPriority"=dword:00000001

• Forward buffer memory tweak, this controls how much RAM TCP/IP uses for storing packet data in the router packet queue.

Copy and paste the following and make it a .reg file and merge it into your regstry:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]

"ForwardBufferMemory"=dword:00024a00
"NumForwardPackets"=dword:0000024a
"MaxForwardBufferMemory"=dword:00024a00
"MaxNumForwardPackets"=dword:0000024a

• By default Windows 2K & XP cache everything in the DNS cache service, both correct and faulty DNS lookups. To increase performance by eliminating the caching of faulty DNS lookups, copy and paste the following and make it a .reg file and merge it into your regstry:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters]

"NegativeCacheTime"=dword:00000000
"NetFailureCacheTime"=dword:00000000
"NegativeSOACacheTime"=dword:00000000

• Internet Explorer important settings:

Open Internet Explorer and select Tools - Internet Options - under the General tab in the Temporary Internet files section select the Settings button.

Select "Every visit to the page" and set the amount of disk space to use: to no more than 80MB. Now select the Connections tab and select LAN Settings make sure EVERYTHING there is unchecked and select OK.

For IE6 ONLY - select the Privacy tab and choose Advanced check the box "Override automatic cookie handling" and for First-party Cookies - Accept, Third-party Cookies - Block and check "Always allow session cookies. Now NO MORE SPYWARE COOKIES.

Another thing to do about once a week if you modem is on 24/7 is to power cycle your modem, just completely disconnect power from it for at least 15 seconds and then power it back on.

Set your temporary internet files to 80mb and delete them regularly.

• DSL users may want to check out the DSL Wiring Guide for possibly increasing your DSL speed.

DSL users also want to make sure they do not have any halogen lights close to their modems or 900mhz or 2.4ghz phones in the same room.

• Always connect your modem via ethernet (Network Interface Card) instead of USB, ethernet is faster and much more stable. Also ALWAYS make sure you have the latest drivers for your NIC from the manufacturer NOT Microsoft, usually the drivers from the manufacturer have advanced settings that help optimize the performance of your NIC that the native Microsoft drivers don't have. If you are using a router always keep your firmware up to date.

• Remove any uneeded protocols:

Open your control panel – right click your LAN connection - properties - general tab, uninstall all the protocols there that you do not need. If you are a stand alone pc then all you need Internet Protocol TCP/IP. If you are on a network then you will need them except QoS Packet Scheduler, it is never needed.

Broadband Tools To Measure System Performance And More

If you are in a quandry over how to test the performance of your computer network you're in luck. A little research lead me to an amazing set of tools online availabe to everyone as a free service. You can pretty much measure or analyze anything broadband related with the tools provided via the online techie community forum at SpeedGuide.net. Whatever it is you need to look at.....performance or design related.....you can get it done with the free SpeedGuide tools. Nice little resource you should take advantage of.

Here's a list of what they have available to you:

* SG TCP/IP Analyzer

The SpeedGuide TCP/IP Analyzer is a program designed to display your Internet connection parameters, extracted directly from TCP packets sent by your browser to their server. The Analyzer program then displays recommendations based on the settings extracted from the headers of those packets.

* SG TCP Optimizer

The TCP Optimizer is a free Windows program designed to help optimize your Internet connection. The program makes it easy to find the best MaxMTU value, test latency and tweak the important Registry Parameters. The Optimizer can be helpful with tuning any Internet connection type, from dialup to Gigabit+ :) If you need help with the program, check the TCP Optimizer Documentation, read their broadband tweaking articles and the related FAQs, and/or visit their Forums.

* SG Security Scanner

The SpeedGuide.net Security Scanner audits certain ports on your computer detecting potential vulnerabilities.

Note: Some firewalls might log a potential attack from their server if you choose to test the security of your system since they are testing for vulnerabilities.

* SG Speed Test

A quick download speed test to estimate your connection speed at the time.

* SG Network Tools

The SG Network tools section includes many common network tools such as PING, TRACEROUTE, WHOIS, etc.

* SG Bits/Bytes Conversion Calculator

The Bits/Bytes calculator is a useful tool for quickly converting bits/bytes, etc. It takes into consideration the different conventons while calculating data communication rates and storage space.

* SG RWIN/BDP Calculator

The RWIN/BDP calculator can be used to estimate TCP Window values, based on the Bandwidth

*Delay Product (BDP for short).

It can also calculate maximum bandwidth based on RWIN and latency values, and perform a number of different conversions as well.

Drop in at SpeedGuide.net and test out (no pun intended) these tools. At the very least you may learn something about your current system needs or performance. While you're there I suggest you also check out their community forum. Great place to ask questions and get answers for whatever broadband issues you may have.

Improving broadband speeds

Vista has a different TCP/IP (Transmission Control Protocol/Internet Protocol) stack than Windows XP. What's a TCP/IP stack, you ask? TCP/IP is the basic language that allows your computer to communicate with other machines. The TCP/IP stack is the software and protocols that make up TCP/IP.

For example, Vista's TCP/IP stack stores configuration settings differently than Windows XP. So, you won't be able to tweak the settings like you can in XP Professional. That's a bummer. But, fortunately, Vista optimizes your broadband connections. It will maximize your broadband speed automatically.

If you're still not happy with your broadband speed, there is another solution. You can upgrade to a faster tier. My tip will help you decide on the right broadband tier. Of course, providers sometimes overstate broadband speeds. To find your connection speed, visit my site. I have a tool that will test your broadband speed quickly and easily.

Internet connection tweaking

Whether you've got a dial-up modem or a broadband Internet connection, chances are you can get a bit - or maybe a lot - more performance out of it. Here's a few pointers.

The two speed measures for Internet connections are bandwidth and latency. Bandwidth is how much data you can send in a given period of time; latency is how long data takes to travel. "Round-trip latency" is how long you have to wait before whatever you're communicating with hears you and sends a message back; it's equal to your upstream (send) latency, plus your downstream (receive) latency, plus however long the thing you're communicating with takes to make the data ready to send to you. Broadband connection technologies like cable, ISDN and DSL give you lots of bandwidth and nice low latency for your connection to your ISP.

Bandwidth's more important than latency for ordinary Web browsing. Nobody minds much if a Web server takes a second to acknowledge your link-click and start sending you a page, as long as the download itself doesn't take five minutes. Pretty much all other "serious" Internet applications are also fairly latency-insensitive.

If you're playing action games, though, latency is much more important, and bandwidth less crucial. The quicker the response of the connection between your computer and the server, the closer will be the synchronisation between the game world you see and what's really going on. One second of "lag" is not acceptable for action games.

On a modem connection, you don't have enough bandwidth for good action games. A "56K" modem connection has a top speed of about five kilobytes per second downstream (from the Internet to you) and about three kilobytes per second upstream (from you to the Internet). Game designers are very ingenious at reducing the amount of data that has to be sent and received, but about four times the bandwidth is still needed for really smooth play.

Four times the bandwidth is only 15 to 20 kilobytes per second each way, though. This is well within the capabilities of a basic 128 kilobit per second ISDN link, for instance. If you're running a game server then you may need a lot of bandwidth, but client machines need low latency much more than they need high bandwidth.

So what can you do to make dial-up and broadband connections better?

Read on.
Modem tweaking

If you have an ordinary all-hardware phone line modem, it's unlikely that there's anything you can do to it to make it perform better. You can get firmware updates for older modems which allow some of them that shipped with support for older 56K standards, like X2, to work with the later V.90, if necessary. But apart from that, updates make little difference.

Changing the modem for a whole new one will help, if your current modem doesn't support the same 56K standard your ISP does. Pretty much every ISP uses v.90 modems now, though, so that's only an issue if you've got an old modem that can't be upgraded to v.90. But there can be other reasons to trade in your modem. All modems are not alike, and the biggest difference is between hardware and software, or "host based", modems.

All of the current crop of super-cheap internal modems, and a few external USB ones, are host based - they use the computer's CPU to do the grunt work, instead of having their own on-board hardware. This means that many of them only work with Windows, although there are now Linux drivers for many of the more popular chipsets. These modems are commonly referred to as "Winmodems".

Host based modems can have compatibility problems, which sometimes manifest as being unable to connect at all to some other kinds of modem. Which can be a big pain, if the thing you can't connect to is your ISP. More commonly, host based modem compatibility problems simply give you a lower connection speed than you'd get from a better modem.

Winmodems, unlike hardware modems, have complicated driver software. Driver upgrades can thus make a significant difference to Winmodem performance. If you use a Winmodem, check the manufacturer's Web site to see if you can get a later driver.

There are many ways you can tweak the software settings for a modem Internet connection. Most of them are a complete waste of time.

There are lots of voodoo TCP/IP settings you can fiddle with, but almost none of them will make any appreciable difference - well, not any appreciable positive difference - to any normal Internet connection. There are reasons for some people doing some specialised things to fiddle with these settings, but for most applications there's no reason to.

The only modem tweak that does significantly affect both latency and bandwidth is the port speed setting.

Go to Device Manager and look at the Properties for your modem. The "Modem" tab of the Properties is where you set the port speed.

This, for all ordinary serial external modems, is how fast the computer-to-modem connection is over the serial cable. It is only indirectly related to how fast bits can be sent between two modems.

If the port speed is, say, 57600 bits per second, and you've got a "56K" modem that's connected at a download speed of 48000 bits per second (56K modems never connect at "full speed", and their upload speed is only ever 31200 bits per second), then when you're downloading compressible data with compression turned on (which it is, by default) your port speed will probably be limiting the speed of your modem.

How much the speed is limited depends on the compressibility of the data you're downloading. Things like GIF and JPG images are basically uncompressible; they're already as small as they can get. HTML and text files, on the other hand, are very compressible; modem compression can let you double your effective download speed for this sort of content.

Wind up the port speed to 115200 bits per second, and you'll thus see a slight overall bandwidth improvement, thanks to compression. The ISP's modem squishes the data down and sends it down the 48000 bit per second link; your modem unsquishes it and squirts it to the computer over the 115200 bit per second serial link.

Winding up the port speed will also give you a slight latency improvement, because the faster port speed lets data get into and out of the modem buffers slightly faster. The difference isn't big - probably less than 10 milliseconds - but modem gamers need all the help they can get.

Don't bother setting your port speed above 115200 bits per second, if your computer even supports higher speeds. Most serial ports and modems don't properly support higher than 115200, and the incremental latency difference is unmeasurably small.

Compression is hardly ever going to give you enough data to use any bandwidth above 115,200, anyway, The compression standard used by v.90 modems is called v.42bis, and its maximum theoretical performance is 4:1 compression. In reality, 3:1 is about the best you're ever likely to see, and 115,200 bits per second is already 2.4 times the 48,000 bits per second that can be pumped down the v.90 connection. Since a significant part of the 48,000 is taken up by framing data and other inter-modem chit-chat, 115,200 actually pretty neatly matches the maximum amount of user data a modem's likely to be able to move.

Various people say you should turn off all forms of compression for a modem Internet connection, because compressing data increases the connection latency - the modems have to take a little time compressing data before they can send it.

This might have been true at some point, for some modems (especially host-based ones on slow computers) but it's not true now.

Pretty much all current modems seem to have enough processing power that they compress and uncompress data faster than they can send or receive it. Furthermore, the v.42bis standard allows modems to detect when data isn't particularly compressible, and not try to compress it at all. So turning off compression just reduces your Web surfing speed a bit, and does nothing for your latency.

Another kind of compression, "IP Header Compression", will actually improve your latency, provided your ISP supports it. It greatly reduces the size of IP packet headers, and can make a substantial difference. It's turned on by default in Windows. To see this setting in Win98, right-click the appropriate connection icon in My Computer -> Dial-Up Networking, select Properties, select the Server Types tab, and click TCP/IP Settings. There's no reason not to leave IP Header Compression turned on all the time.

The most effective way to tweak really slow dial-up connections is by changing not your hardware, and not your settings, but your ISP. Different dial-up ISPs have different speed connections to the Internet, and share their links between different numbers of customers.

If you want to play on-line action games, an ISP that provides local servers for whatever takes your fancy will give you a much more satisfying experience than you'll get on just about any other server. Provided there's someone decent to play against, that is.
Updating antiques

If you're using a dial-up modem and still have Windows 95 with a version of Dial-Up Networking below 1.3, you can increase performance by getting the 1.3 update from here.

If you aren't, don't.
Broadband tweaking

If you thought there was a lot of voodoo tweaking done by modem users, you ain't seen nothing yet. Various cable, DSL, ISDN and other broadband connection users tweak TCP/IP within an inch of its life.

And, again, the tweaks are mostly pointless. There's only one TCP/IP tweak that's likely to be worthwhile for normal users.

When you've got all the bandwidth in the world, but high latency - as happens in most Web surfing from a broadband connection, when you're connecting to distant servers that are many network "hops" away from you - you can improve throughput by increasing the TCP/IP DefaultRcvWindow setting. DefaultRcvWindow is 8192 bytes, as standard, but can be set to anything you like. Making it larger increases the amount of data that can be sent before the other end has to acknowledge receipt, which can speed up downloads from high latency servers.

You can change your DefaultRcvWindow setting without manual Registry editing by using a utility like EasyMTU for Win98, 98 and NT. As the name suggests, EasyMTU also lets you change your Maximum Transfer Unit (MTU), setting, and lets you tweak TTL (Time To Live) as well. You can do that if you want, but it won't help. MTU and TTL are, for ordinary Internet users, a couple of those pointless tweaks I've been talking about.

Latency isn't likely to be a problem if you've got a broadband connection, like a cable modem. Well, not a problem you can fix, anyway; you can't change the speed of a slow server somewhere else no matter what you set on your computer. Servers not many hops away from you, though, will have very low latency, if you've got a cable modem or DSL or ISDN connection.

There is one other worthwhile broadband tweak you can perform, though. It involves being rude to the HTTP specification.

According to HTTP v1.1, you can only make two simultaneous requests to any one server. Only two simultaneous downloads, for instance; ask for a third file and the download won't start until one of the others finishes. The HTTP v1.0 specification has a less official, but widely accepted, four connection limit.

This doesn't affect Web browsing much, as one request for a Web page via HTTP v1.1 can ask for file after file after file without closing the request. But if you've got broadband and don't feel too bad about violating the specification, you can wind up the limit as far as you like, by changing a couple of Registry settings (Start -> Run, then type "regedit"). Microsoft themselves explain the keys you need to change, right here. If you're scared of registry editing, you can pump up the settings the easy way by using a canned Registry tweak file like this one.

Doing this on a computer with a low-bandwidth Internet connection isn't a great idea, because requesting a zillion files at once will just max out the connection and give you lots of timeouts. On broadband, though, it can considerably accelerate multi-window Web surfing.

Can you max out your connection speed?

Your PC may not be tuned properly to take full advantage your full connection speed. For those with high speed connections (faster cable networks, FiOS, etc), tuning your TCP stack is necessary if you wish to fully utilise the available bandwidth in one single download.

If you are fortunate enough to have a broadband connection (DSL, Cable, Satellite, etc.), you may wonder how you can rate your real world connection speed and if there’s more that can be gained. You may also be concerned about security. Miscreants might not consider looking at a dial-up connection because of the speed and because dialup connections aren’t usually used on networks. This month we look at some things that can be done to check your connection and next month methods available to make that connection more secure.

Getting From Here to There

Before we get into the details, there’s an important point to note: any speed test is heavily dependent on the remote site as well as the overall traffic passing back and forth on the Internet. You can run the same test multiple times and get vastly different results. Keeping this in mind you can monitor the results and learn how your individual connection responds. For example, trying to access the Super Bowl web site while the game is on will be slower than accessing the site during the World Series. Also the method your ISP uses to get to a specific site can be a factor as the more hops or connections the packets take to get from here to there may create extra delays. The web is no different than anything else with finite available resources.

Connection Speedometers

ZDNet's Bandwidth test is a place to start. This link is actually two web pages: the one you initially access and the other that sends a known amount of data across the link and times the event. Based on the amount of time used, the page then determines how fast your connection is. In a perfect world, this is a great idea, but remember this is the Internet and can vary depending on when they happen. I suggest running this test multiple times, at different times of day to develop an average reading for your own connection. Do be aware that the server is a bit off the beaten path of terms of the Internet and you may get very low speeds depending on where you're located and your ISP's peering arrangements.

DSLReports is the next stop. It’s another speed test, with multiple sites to test against. This can help with quickly establishing a baseline average. This site will report both your upload and download speeds. Many systems put a cap on the upload speed because most traffic is downloading from a remote server to your computer. If you have ever wondered just how fast your upload speed is, this is the test you want.

mybc.com is another testing site. Here you can set what size file you wish to test. Most times this won’t make much of a difference, but I have heard reports where connections seem to "fall over" at times. This test may help determine if that’s happening to you.

Keep a diary on your results, either in a spreadsheet, notepad or even a piece of paper and prepare to make some notes as now we descend into tweaking madness. That may sound like a joke, but I’ve found that any time I start squeezing Windows there is rarely a one size fits all solution and finding the best setting involves a lot of trial and error with, of course, the obligatory reboot in between each change.

Make the Tweaks

OK, you’ve run the tests; averaged more numbers than a baseball scout and are looking for more. Now what? Windows defaults to using settings that work fine for a dial-up modem but aren’t optimized for a faster connection. Some settings exist that, if changed properly, can improve your results. The trick is finding these items and changing them properly. Warning: these settings are found in the Windows Registry, which makes some folks cringe. While it’s true that making random changes to the Registry without paying attention could render your system unbootable I’ve never had a problem with the speed tweaks other than hurting my results. Good notes of what you’ve changed will help you back out any bad results. Regardless, always back up your registry before making any changes.

DSLReports is the place to start for a semi-automatic registry change method. Click a button and watch the reports. You have a choice of just the facts, or lots of details. Mysterious things like MTU and RWIN are checked. If you’re not familiar with those terms or if you’re just curious, scroll down on the page. The main configuration options are listed, together with an explanation of what they mean. There are also Registry files you can download to make some changes as well as a downloadable program to access other Registry entries. This method works, but it requires some level of knowledge and care. Making the wrong settings can be worse than leaving everything alone.

Broadband Wizard makes the whole process a lot easier. You download a small program then install and run it. Click a few buttons and the program automatically tests your connection and suggests the optimal settings based on the test results. Click a couple of buttons and re-boot to reflect the changes and you’re done. It doesn’t get much easier than this. If you’re running a broadband connection, I highly recommend this program. It also includes methods of testing your connection and can be set to test in the background, which is great for determining your baseline average.

Or if you like to do your registry tweaks manually check out SpeedGuide.net for a full rundown on registry changes both common and obscure.

The Bottom Line

You may find this results in a lot of work, but if you run a broadband connection with the standard Windows settings chances are good you’re going to see a huge benefit for the trouble.