After installing Windows 7 I noticed a slight increase in network latency in several online games. It wasn’t a big deal – I’m talking 200-300ms, but this is on a connection that was reliably < 100ms in the past. Beyond the obvious settings in Windows or on your router, here’s a list of tweaks that may help quite a bit. It involves disabling Nagle’s algorithm, also commonly known as TCP no delay, which is basically an optimization of network traffic that tries to reduce overall packet volume but can cause extra latency in the connection. This should work on Windows 7 or Vista, though the same principle can probably applied to other operating systems as well.
- From a command prompt (usually in All Programs -> Accessories -> Command Prompt) run “regedit”
- Browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces
- Browse the items under interfaces until you find one that has an IPAddress entry matching the network interface you want to affect (typically LAN IP addresses start with 192.168 or 10.0); 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
- Right-click on the interface and select New > DWORD (32-bit) Value, name it “TcpAckFrequency”
- Right-click the new TcpAckFrequency value and select Modify, enter “1″ (Hexadecimal radio button should be selected)
- Right-click on the interface and select New > DWORD (32-bit) Value, name it “TCPNoDelay” (note that TCP is all uppercase this time – that’s intentional)
- Right-click the new TCPNoDelay value and select Modify, enter “1″ (Hexadecimal radio button should be selected)
- Verify that both TcpAckFrequency and TCPNoDelay now show up in the adapter’s property list with types REG_DWORD and values 0×00000001
- Exit regedit and reboot (reboot is necessary for the changes to take effect!)
- Play a game and enjoy your new low ping
This decreased my ping in most games from 200-300ms to 50-60ms, which matches the latency I would see via a tracert to the game’s server.
#1 by fish on May 2, 2010 - 9:17 pm
This works amazingly well. I couldn’t game on my laptop at all till I did this.
#2 by Summer Lewis on May 7, 2010 - 12:39 am
I’m pretty much impressed with the stability of Windows 7. It is better than windows Vista which hogs my memory and cpu.~~*
#3 by Lauren Stewart on May 9, 2010 - 12:34 pm
Windows Vista is good but it can hog your CPU and Memory.:~’
#4 by Adale on May 16, 2010 - 4:44 pm
This “UseZeroBroadcast” thing came up for me after doing this, should I leave it, delete or what?
Here is a screenshot of it
http://tinypic.com/r/opmmwy/5
#5 by Grey on May 23, 2010 - 4:25 am
On step 4, what interface are you talking about? because no matter where i right click, i can’t see new or anything resembling it whatsoever.
#6 by Grey on May 23, 2010 - 4:27 am
Sorry Man, got it now, just beein a bit of noob
#7 by Alejandro on June 4, 2010 - 9:13 pm
3.Browse the items under interfaces until you find one that has an IPAddress entry matching the network interface you want to affect (typically LAN IP addresses start with 192.168 or 10.0); 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
what is the network interface…..and how do u find it……can some 1 help me out…the lagging is getting annoying
#8 by Dan on June 4, 2010 - 10:22 pm
I have both these issues. On the other hand, both does mean they are one and the same because they describe my road block: I have a router, and my interface options come out as {C0EDBEE7-29B9-4C32-97B6-D13154373B4F}. I have three interface options to choose from that have this same kind of identification. So, I do not know where to go from here.
Actually, after closer inspection, I think I solved my own problem. Tomas and Brady, open each one of the files that you have and look at everything that you have in each. I discovered that only one of mine contained all the related info to my Network Connection Details. The important one is the file that does contain your IP Address. That’s the one you want to create the file in, according to this:
#9 by Alejandro on June 5, 2010 - 5:34 pm
Anyone?
#10 by Grimboozie on June 11, 2010 - 7:40 am
Fantastic!! Really works found i went from constant 400-500 ms to 200-250ms and sometimes under 200 ms in Dalaran. Noticed the difference straight away. Thank you great post!!
#11 by Gabriell on June 12, 2010 - 5:02 am
no happy times 4 me started out at 2k ms prior 2 the fixes and now i’m 700 ms which is 300 ms higher than i was pre windows 7. any extra help 4 me?
#12 by Olivia on June 22, 2010 - 12:42 pm
I did all of this, and It’s not helping :[
I was also a bit confused at step #3 on how to find this address. Do I look somewhere on my wireless router, or is it somewhere on the computer? After searching “IP address” in the search bar, I still didn’t find anything. I entered the new entries in each of the interfaces, rebooted my computer, and went back to the game. The lag was still the same.
I’m also a complete noob at things like this, so help would be greatly appreciated.
#13 by asdasd on June 27, 2010 - 5:18 pm
nem müxik
#14 by furn on June 29, 2010 - 6:58 am
It didn’t worked for me, my pings is still at 100-200 on Left 4 Dead and 350 on WoW. Im running Win7(32 bit i think)
#15 by Ratcab on June 30, 2010 - 6:43 am
I don’t have the TcpAckFrequency (at least i don’t see it in the same list as the TCPnodelay)
Is this a problem?
Do i have to make that one myself too?
#16 by reimu on July 5, 2010 - 6:12 am
may i ask,the SWORD is make at the ip file we found or at the interface,which onli have default only?fast rely,thx
#17 by Sylvester Lee Womack on July 6, 2010 - 4:02 pm
This fix doesn’t work on Windows 7. It is the same fix that people have put out for Windows XP and thought that you could utilize it in Windows 7 as well. I’ve even gotten wow addons that were supposed to fix latency issues to the point of ignoring people who use gearscore and my latency still goes between 200-400ms and disconnects me.
#18 by Benjamin on July 7, 2010 - 7:50 pm
well thanks for posting this i love that people post things that is helping some people. But from what is see my ping is around the normal and im running win7 64bit maby i have to make mine dword 64 bit?
#19 by Dustin on July 7, 2010 - 7:55 pm
This fix does work on Windows 7. I’ve used it successfully on multiple computers as have thousands of people who have read about it here and elsewhere. There are certainly many other factors that can cause bad network latency (the main one being how you’re connected to the internet to begin with), but be careful generalizing that a solution doesn’t work on an OS just because it didn’t help you.
#20 by Benjamin on July 8, 2010 - 6:19 am
it kinda said that it worked on win7 and vista but kk
#21 by Your Sister on July 16, 2010 - 8:56 am
Thank very much!
)
My ping went from 400 to 100
#22 by julian on July 22, 2010 - 12:37 am
wow, amzing!! im on a wirless g and my ping on world of warcraft is now 120ms it sometimes would get up to 4000, this is amazing, very well done! now i can have fun stealing all the bandwith from my sister:p
#23 by julian on July 22, 2010 - 12:38 am
and on pingtest.net, my line went from a grade d to a, sometimes b.
#24 by sdklfjhklshdf on July 31, 2010 - 9:37 pm
well any one who says win 7 is better then vista has no fuckin clue how to run an OS and more then likly should have no say on the matter.. so stfu and keep you opinions to your self about windows vista.. its not the OS that sucks its the user..
#25 by sdklfjhklshdf on July 31, 2010 - 9:40 pm
Retards
#26 by Chris on August 3, 2010 - 8:23 am
If i right click the ip that i found, it doesn’t say new, only modify and other stuff
#27 by charles on August 5, 2010 - 5:27 pm
how about step 8? where can i see this? what adapter’s property list?
#28 by funerals-pc on August 10, 2010 - 9:10 pm
i try it but i say…. >>> “cannot create value:error writing to the registry.”
HELP ME PLEASE…… X_X
#29 by bvswbfsw on August 18, 2010 - 5:10 pm
i cant find a IP address starting with 192.168 or 10.0?
#30 by o_o on August 18, 2010 - 6:24 pm
All i have is a DhcpIPAddress REG_SZ 0.0.0.0 cant find a IPAddress with192.168 or 10.0?what am i supose to do now x.x?!
#31 by charles on August 22, 2010 - 12:47 am
is there one like this for winXP? if yes, can you give me a link. thanks
#32 by marc on August 23, 2010 - 9:34 am
can anyone tell if this will work on 64 bit w7
#33 by marc on August 25, 2010 - 5:53 am
what should i choose Dword32 or Dword 64… im using W7 64 bit
#34 by TheGERGuy on August 26, 2010 - 11:25 am
You have to right-click where nothing is (white field)
Maybe you don’t have admin rights?
If you look at “Interfaces” there are a couple (or maybe only 1) of numbers, like that:
{1B17040B-2EC1-4968-9880-DA021678DBF6}
Left-Click on them, and on the right look at DhcpIPAdress, or IPAdress, until you found the right one (192.168 or 10.0)
Look at this picture if you still have trouble!:
http://www.bilder-upload.eu/show.php?file=0sOkHC99HRJSbw6.png
You can do the same with windows xp
#35 by TheGERGuy on August 26, 2010 - 11:29 am
If you still don’t know how to create a new registry entry, have a look at the upper left corner.
Go to:
Edit—->New—->DWORD(32bit) Value( I don’t know if its called so, my registry is in german)