Want to know how to reduce your latency in Windows 7, because you are always losing due to a poor ping? There are a few tricks that can help you to significantly improve your latency for certain (not all) games.
Windows is sending out ACK messages to confirm network packages. Some games are waiting until they receive that confirmation message before they send you another network package. The problem is, that Windows 7 is configured to wait for at least 2 network packages or 200ms before sending out a confirmation (ACK). That setting is trying to prevent a flood of ACK messages, but can increase your latency in Windows 7 by up to 200ms.
Windows 7 Latency Registry Fix
Because every PC has a different Interface key, you will have to do this manually or I’d have exported the key for you. So, follow the instructions and you’ll possibly improve your latency. It has been confirmed that this works great for games like WoW.
1. StepOpen the notepad and insert the text below:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\{8B175340-8986-4A4B-922C-B324F903FA8E}]
“TcpAckFrequency”=dword:00000001
“TcpNoDelay”=dword:00000001
2. Step Uncollapse [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces].
3. Step Write down the name of the subfolder with the most entries in the right pane, e.g. {8B175340-8986-4A4B-922C-B324F903FA8E}
4. StepReplace the key {8B175340-8986-4A4B-922C-B324F903FA8E} with the key that your wrote down in step 3.
5. StepSave it as “.reg” file (extension .reg).
6. Step Execute the registry file.
Reduce Latency in WoW
If you want to reduce your latency in WoW, read this guide dedicated to WoW:
Improve Latency in WoW
good tip , but cant make it work.
i made every steps but qhen i double click the .reg file windows 7 give me an error windows saying “cannot import C;/……….reg:the specified file is not a registry script. You can only import bynary registry files from within the registry editor”.
Any idea hoe to fix it ?
sry im a noob at computers and such can u make like a vid on how to do this ??
DWORD is a 32-bit value, would you still use it on a 64-bit OS or would you use QWORD?
Adam, on 64-bit systems you also use DWORD for your registry keys. Most registry key values are stored as 32-bit values if I am not mistaken. So, most registry keys are identical.
I can probably make a video for this I guess.
Oliver on point 2 of Windows 7 Latency Registry Fix you say Uncollapse, what does this mean,sorry but you need to dumb it down some :)
Im getting the same thing as diego. i went through the steps no problem and saved it as a .reg file but it says cannot import this file, only imports “registry” files. which if it does work does this just add new settings to the already existing key or does it replace everything in the right pane with just these two settings? need a lil help if youve got time. im still learning this regisry stuff. thanks!
James, did you select “All files” from the dropdown when you saved the .reg file? If you don’t this won’t work.
It will only replace the keys that are found in the registry key file, which means it will ONLY change
“TcpAckFrequency”=dword:00000001
“TcpNoDelay”=dword:00000001
Also make sure to replace “ with ” or it won’t work. Because there IS a difference.
I hope you can find out how it works. This latency fix helped a lot of wow players so far. You can also download my file and check the content manually by opening it via notepad.
Hey guys! Thanks for the nice tut Oliver.
Don’t know if its of any use with COD:MW2 (Yes, am still playing MW2), but I gave it a try ‘nyways!
just mention that by expand you meant via regedit, for any n00bs (hey no pun :p)
you know what I’ve got nothing to do, so I’m gonna “n00bify” this tut!
(Disclaimer: you should always be carefull while f’ing around with regedit! so as always, any damage done during this tut blah blah is your own fault! Don’t think so? Sue my a$$, I AM A LAWYER!!)
This method is more direct than yours @sOliver (btw oliver, u r d admin, so wats with the funky name?)!
so here goes:
——————————————————————–
STEP 1: Got to run (windows key+ R) and type “regedit” without quotes!
[ becareful what you here, coz the registry is like the h0ly sanctum of the OS, fu## it here and “Gods’wrath is poured on you like fire” although its going to be more of steve ballmers wrath!]
——————————————————————–
——————————————————————–
STEP 2: Now navigate your way through the folder tree to the left side as ↓
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\
——————————————————————–
——————————————————————–
STEP 3: Browse though the items under interfaces until you find one that has an IPAddress entry matching yours!
Typically LAN IP addresses start with 192.168 or 10.0 so look for the entry in left which has the key having your IP address in the right side!
In most cases with any luck, there would only be one entry, so n00bs, God’s with you!
——————————————————————–
(if %user%!=’noob’)
{ Note that if your IP address is automatically assigned by a DHCP server you may need to look for a matching DhcpIPAddress instead of IPAddress }
//p.s if you can’t understand something, its not for you!
——————————————————————–
STEP 4: Right click the interface and select “New > DWORD (32-bit) Value”, and name it “TcpAckFrequency”
Right-click theis entry TcpAckFrequency value and select Modify, enter “1”
(All WITHOUT quotes and DON’T CHANGE CASE and Hexadecimal radio button should be selected)
——————————————————————–
——————————————————————–
STEP 5: Right-click on the interface and select “New > DWORD (32-bit) Value”, name it “TCPNoDelay”
Right-click the new TCPNoDelay value and select Modify, enter “1”
(Note that TCP is all uppercase this time – that’s intentional and Hexadecimal radio button should be selected)
——————————————————————–
——————————————————————–
STEP 6: verify that both TcpAckFrequency and TCPNoDelay now show up in the adapter’s property list with types REG_DWORD and values 0×00000001
——————————————————————–
——————————————————————–
STEP 7: Exir regedit and reboot (reboot is necessary for the changes to take effect!)
——————————————————————–
STEP 8: Now go out there and crash the living sh#t out of all there!
A Piece of advice, if you see a guy TEAMSEVENZ out there, don’t F with him! ‘coz that the last thing you’ll see!
if (%user%_still_=’n00b’)
{ printf (“I can’t live with death; He’s always leaving the toilet seat up.”); }
’till then addidas amigos! B)
Arjun, thanks for this great tutorial I’m sure it will help some people to reduce their latency!
Also, great website man, I like your photos a lot, hopefully you can go pro!
hi sOliver, many thanx for your tutorial. very clever!
jusr a question: where i should to save the file .reg?
sophie
Sophie, save the reg file whereever you want, then double-click on it. Just make sure when you save it, to select “All files” from dropdown
This is the worst advice I have seen in months. Delayed ACKs and Nagle’s algorithm were added to the TCP stack because they solve serious problems. Disabling them globally just to have a number appear a bit lower (even though the actual time the data takes is the same) is mind-numbingly stupid.
In fact, while this may make the ping time appear lower (because the ACK is sent sooner), the actual latency will be worse. The latency is dependent on the time it takes packets to move in each direction and the only affect this can have on that is to make the same data take more packets. More packets means more headers, which means more time to put the packets on the wire and more time waiting in queues to get transmitted. So the actual latency will be slightly worse with these changes.
The number may appear lower though, because this change does make latency measurements more accurate. They normally include measurement error due to Nagling and delayed ACK and this will remove some of that error.
In sum:
1) Your latency number will be lower.
2) Your latency number will be more accurate.
3) Your actual latency will be higher.
4) You may cause catastrophic decreases in performance — the very problems delayed ACK and Nagle’s algorithm were included in the TCP stack to fix.
Bad, BAD idea.