I'm copy and pasting parts/confirming from other forums for this list for helping to reduce latency (esp during gaming). I figured since most people are getting new computers or are upgrading, will probably be using Windows 7 at this point. I hope this helps, and post feedback of your problems and successes.
I've highlighted critical information that must be *exact* in orange color.#1 -- Enabling Compound TCP in Windows 7Open a command prompt with admin rights. To do so, go to the following location:
Start Menu -> All Programs -> Accessories
And then right-click on Command Prompt and select "Run as Administrator". If you have disabled the UAC, then you can just open it normally.
Either type, or copy and paste, the following into the command prompt, and then press 'Enter' on your keyboard:
netsh int tcp set global congestionprovider=ctcpThis turns on Compound TCP, which increases the TCP window much quicker than the traditional TCP algorithms allow for. This means that when a sudden burst of larger packets comes in, or goes out, Windows adjusts its settings faster than normal to compensate for it, allow for faster data transfer on broadband connections and lower latency while gaming.
Warning: I highly recommend that you create a System Restore point before proceeding with the next three steps. Not that these changes are experimental, but helps to prevent problems if you happen to enter values or make changes incorrectly, at least you have an "undo button" with a fresh restore point.#2 -- Enabling Compound TCP in Windows 7Many of you have seen this before because it's been posted on numerous forums but here's it is if you missed it.
Click the 'Start' button, type regedit in the search field, and press 'Enter' on your keyboard. If you don't know how to edit the registry, then you may want to take a look at this article.
Navigate to the following registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\InterfacesWhen you click to expand 'Interfaces', you will see one or more subkeys with long names that looks like the following screenshot:
You will need to know what IP address your computer has on your local network (not on the Internet), and then find the subkey under 'Interfaces' that has the correct IP address. If you don't know how to find out the IP address on your local network, then check out
this tutorial. In most cases only one of the subkeys will have all of the information, so it should be easy to find even if you get confused.
Once you find it, you need to add two registry values to it. They are both
32-bit DWORD values. They are as follows:
TcpAckFrequency
TCPNoDelayAfter adding both of those, double-click on each one, and give them both a
hexadecimal value of 1.
Without getting too technical, forcing these values to 1 (they are defaulted to higher values) should greatly reduce your latency, esp. when playing games. You can read more information
about this entry here.#3a -- Enabling Microsoft Messaging Queue (MSMQ) Server in Windows 7Click on 'Start', click on "Control Panel", click on 'Programs' in the lower-left, and then click on "Turn Windows features on or off" under the "Programs and Features" section. You will want to expand "Microsoft Messaging Queue (MSMQ) Server" by clicking the little plus to it's left, and then expand "Microsoft Messaging Queue (MSMQ) Server Core" as well. After doing that, click all of the checkboxes under the "Microsoft Messaging Queue (MSMQ) Server" section. Then click "OK" and they will install. This will take a few minutes, so just be patient.
The Microsoft Messaging Queue Server is a feature developed I believe in Windows 2003 and is implemented in Windows 7. You can read more about this
service in this link.#3b -- Adding registry value for MSMQ Server in Windows 7If you closed regedit earlier, you will need to open it back up for this step.
Navigate to the following key in regedit:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\ParametersAll we need to do here is add
TCPNoDelay to the '
Parameters' key, with a
32-bit DWORD value of 1. This will work pretty much the same way that it did before.
#4 -- Disable TCP/IP Autotuning in Windows 7To disable TCP/IP autotuning, open a command prompt with admin rights. To do so, go to the following location:
Start Menu -> All Programs -> Accessories
And then right-click on Command Prompt and select "Run as Administrator". If you have disabled the UAC, then you can just open it normally. You will then need to type the following:
netsh interface tcp set global autotuning=disabledTo verify that it is disabled:
netsh interface tcp show globalTo set back to the default Windows 7 behavior:
netsh interface tcp set global autotuning=normalSome networking devices, such as SPI firewalls, some NAT routers, VPN endpoints, WiFi devices have problems with the way Windows 7 resizes the TCP Window. Possible symptoms include: web traffic ok, email timeouts on receiving only, slow or no network file server access, random network timeouts or connectivity problems, freezing or slow web browsing or VPN connections.
Note that disabling TCP Window autotuning limits the TCP Window to 65535, which may not be adequate for faster broadband internet connections.
Note to Windows Vista Users: Realize that Windows 7 is a polished version of Window's Vista. If you are using Window's Vista, many if not all of these tweaks should work, but don't come hunt me down if you try them in Vista and they don't work. You should double check to ensure these are valid in Windows Vista.
How do you know if any of these worked? Well of course you could log into your game and see if the numbers have dropped, but players get different latency in game at different times and under different conditions. I'd highly suggest running a series of latency tests in between tweaks to see if you notice any improvement in both the jitter, packet loss, and the raw avg. ping times.
Go to
Pingtest.net to run the tests. You can link them like this:
DON'T FORGET YOU MUST RESTART YOUR WINDOWS (computer) FOR THESE SETTINGS TO TAKE EFFECT.