Jump to content


Possible fix for a lot of users 'lag' - *UPDATED* TCP affects UDP packet loss

lag latency stutter tcp udp packet loss

  • Please log in to reply
109 replies to this topic

Dublin_Gunner #1 Posted 03 June 2014 - 03:15 PM

    Warrant Officer

  • Beta Tester
  • 17139 battles
  • 901
  • Member since:
    07-12-2010

UPDATE

 

View PostDublin_Gunner, on 04 June 2014 - 10:09 AM, said:

I had a theory that optimising the TCP settings as outlined below, may indirectly improve UDP packet loss by helping to reduce congestion caused by TCP flow control mechanisms.

 

After a bit of research, I found a study done on this very subject:

Characteristics of UDP Packet Loss: Effect of TCP traffic

 

Which suggests:

  • increasing UDP packet size (as the game has done recently)  can increase the UDP packet loss rate - when combined with flow control mechanisms employed by TCP, such as aggressively setting the Receive Window.
  • the optimisations I've outlined have decreased the packet loss / lag for some users; by optimising TCP (reducing instances of fragmentation / retransmission etc), it doesn't hog the bandwith available to UDP, therefore decreasing UDP packet loss.

 

 

 

 


I've posted this a couple of times now, but have decided it may deserve a thread of its own. Please try the following fixes, and see if it improves the lag / stutter for you. I'd like if people would post back their results (no need to be technical or post logs etc just whether the lag appears reduced / fixed for ou).

 

I cured the terrible lag I was getting since update 9 by turning of the windows auto adjusting of the receive window. It was setting it too aggressively.

 

In particular disabling Windows Scaling Heuristics.

 

Here's my post on another thread about it:

 

http://forum.worldof...95#entry8237695

 


Link

View PostDublin_Gunner, on 17 May 2014 - 05:04 PM, said:

 

I'd like to add that 1 thing I changed did make a difference, disabling Windows Scaling heuristics.  This basically prevents Windows from auto-tuning the TCP window, often lower than what the user might have set to tune their own connection.

 

More info:

http://www.speedguid...008-tweaks-2574

 

Block Quote

 

Disable Windows Scaling heuristics

 

To prevent that behavior and enforce any user-set TCP Window auto-tuning level, you should execute the following command:

netsh int tcp set heuristics disabled

possible settings are: disabled,enabled,default (sets to the Windows default state)
recommended: disabled (to retain user-set auto-tuning level)

Note this should be executed in elevated command prompt (with admin priviledges) before setting the autotuninlevel in next section. If the command is accepted by the OS you will see an "Ok." on a new line.

The corresponding Registry value (not necessary to edit if setting via netsh) is located in:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters
EnableWsd=0
   (default: 1, recommended: 0)

 

After this has been disabled you can manually set the auto tuning level to 'normal' (which allows the TCP window to grow as its needed)

 

Block Quote

 

TCP Auto-Tuning

To turn off the default RWIN auto tuning behavior, (in elevated command prompt) type:

netsh int tcp set global autotuninglevel=disabled

The default auto-tuning level is "normal", and the possible settings for the above command are:

disabled: uses a fixed value for the tcp receive window. Limits it to 64KB (limited at 65535).
highlyrestricted: allows the receive window to grow beyond its default value, very conservatively
restricted: somewhat restricted growth of the tcp receive window beyond its default value
normal: default value, allows the receive window to grow to accommodate most conditions
experimental: allows the receive window to grow to accommodate extreme scenarios (not recommended, it can degrade performance in common scenarios, only intended for research purposes. It enables RWIN values of over 16 MB)

Our recommendation: normal  (unless you're experiencing problems).

If you're experiencing problems with your NATrouter or SPIfirewall, try the "restricted", "highlyrestricted", or even "disabled" state.

 

 

 

 


Edited by Dublin_Gunner, 04 June 2014 - 10:25 AM.


TankkiPoju #2 Posted 03 June 2014 - 03:21 PM

    Lieutenant General

  • Player
  • 20993 battles
  • 6,417
  • [-PJ-] -PJ-
  • Member since:
    05-20-2011
So... how come these settings don't affect any other game besides WoT?

TheDrownedApe #3 Posted 03 June 2014 - 03:22 PM

    Major General

  • Player
  • 44627 battles
  • 5,640
  • [IDEAL] IDEAL
  • Member since:
    03-27-2013

wow seems something i would like to try.

 

Now if only i could understand it:amazed:

 

How do i access this "elevated command prompt"?

 

Can i break anything if i mess around with this?


Edited by brownape, 03 June 2014 - 03:24 PM.


Dublin_Gunner #4 Posted 03 June 2014 - 03:25 PM

    Warrant Officer

  • Beta Tester
  • 17139 battles
  • 901
  • Member since:
    07-12-2010

View PostTankkiPoju, on 03 June 2014 - 03:21 PM, said:

So... how come these settings don't affect any other game besides WoT?

 

I never said it it only applies to WoT.

 

These settings should improve your broadband connection in general, but it so happens that this can help latency issues caused by recent updates. It has to do with the increase in packet size / packet fragmentation / dropped packets / retransmission.

 

 



Dublin_Gunner #5 Posted 03 June 2014 - 03:30 PM

    Warrant Officer

  • Beta Tester
  • 17139 battles
  • 901
  • Member since:
    07-12-2010

View Postbrownape, on 03 June 2014 - 03:22 PM, said:

wow seems something i would like to try.

 

Now if only i could understand it:amazed:

 

How do i access this "elevated command prompt"?

 

Can i break anything if i mess around with this?

 

Open a command prompt (as administrator) and input the lines in bold. Right click on command prompt and choose 'run as administrator'.

 

netsh int tcp set heuristics disabled (press return)

 

netsh int tcp set global autotuninglevel=normal (press return)

 

Oh - and NO, you won't break anything :)

 

 

 


Edited by Dublin_Gunner, 03 June 2014 - 03:35 PM.


krautjaeger #6 Posted 03 June 2014 - 03:51 PM

    Captain

  • Player
  • 13727 battles
  • 2,308
  • Member since:
    05-17-2014
I would also do a standard traceroute and out-of-game ping to the server if the game lags as well. :-) It's good that the OP brings the topic up because there's a lot that can be going on between the users computer and the server.

TheDrownedApe #7 Posted 03 June 2014 - 04:32 PM

    Major General

  • Player
  • 44627 battles
  • 5,640
  • [IDEAL] IDEAL
  • Member since:
    03-27-2013

View PostDublin_Gunner, on 03 June 2014 - 03:30 PM, said:

 

Open a command prompt (as administrator) and input the lines in bold. Right click on command prompt and choose 'run as administrator'.

 

netsh int tcp set heuristics disabled (press return)

 

netsh int tcp set global autotuninglevel=normal (press return)

 

Oh - and NO, you won't break anything :)

 

 

 

Now thats better. I'll try it tonight and report back tomorrow. I only have a wireless dongle and suffer lag horrendously so any improvement will be welcomed (although i think i may suffer).

 

Thanks



RePlayBoy101 #8 Posted 03 June 2014 - 04:36 PM

    Second Lieutenant

  • Player
  • 20411 battles
  • 1,406
  • Member since:
    12-30-2011
i think  need to upgrade ur internet ... 

DanloJr #9 Posted 03 June 2014 - 04:59 PM

    Warrant Officer

  • Player
  • 11916 battles
  • 765
  • [WUN-2] WUN-2
  • Member since:
    07-22-2012

Is this now permanently set or do we have to redo every time we relaunch windows?

 



Ceeb #10 Posted 03 June 2014 - 05:03 PM

    Major General

  • Beta Tester
  • 30881 battles
  • 5,396
  • [BULL] BULL
  • Member since:
    01-14-2011
Even if its not, a simple batch file can be made

Joat #11 Posted 03 June 2014 - 05:05 PM

    Warrant Officer

  • Player
  • 6109 battles
  • 889
  • Member since:
    07-29-2011
Another thing that can make you lag is if you are running a Asus motherboard and/or have an AMD-cpu and have automatic turbo/EPG/power optimization enabled. What this means is that the frequency the CPU is running at will change dynamically depending on load and this is something WoT doesn't seem to like for some hardware configurations and you will experience unexplainable lags and 999 pings.

Edited by Joat, 03 June 2014 - 05:05 PM.


DanloJr #12 Posted 03 June 2014 - 05:11 PM

    Warrant Officer

  • Player
  • 11916 battles
  • 765
  • [WUN-2] WUN-2
  • Member since:
    07-22-2012
Just had a battle after above changes - seems to be noticeably less lag - my PZ1c had a ball

Dublin_Gunner #13 Posted 03 June 2014 - 06:10 PM

    Warrant Officer

  • Beta Tester
  • 17139 battles
  • 901
  • Member since:
    07-12-2010

View PostDanloJr, on 03 June 2014 - 04:59 PM, said:

Is this now permanently set or do we have to redo every time we relaunch windows?

 

 

Yes its permanent (unless you run 'troubleshoot problems' which will reset your network settings), you can check by opening another cmd prompt (with admin privileges) and typing the following:

 

netsh int tcp show global



Pansenmann #14 Posted 03 June 2014 - 06:20 PM

    Field Marshal

  • Player
  • 34542 battles
  • 12,799
  • [WJDE] WJDE
  • Member since:
    08-17-2012

View Postbrownape, on 03 June 2014 - 04:32 PM, said:

Now thats better. I'll try it tonight and report back tomorrow. I only have a wireless dongle and suffer lag horrendously so any improvement will be welcomed (although i think i may suffer).

 

Thanks

Wifi connections are known for packet loss, especially if you have bad signal strength or a bad SNR.

Wired connections are preferred, since the WoT client is quite picky when it comes to lost packets.

 

Fiddling with the receive window/MTU sizes and adaptive techniques of your network interface can result in unpredicted results,

if you don't know what you are doing there.

 

I highly suggest you take a full system backup if you change registry and network settings and don't know how to revert manually if thing go wrong.


Edited by Pansenmann, 03 June 2014 - 06:23 PM.


Dublin_Gunner #15 Posted 03 June 2014 - 06:24 PM

    Warrant Officer

  • Beta Tester
  • 17139 battles
  • 901
  • Member since:
    07-12-2010

View PostPansenmann, on 03 June 2014 - 06:20 PM, said:

Wifi connections are known for packet loss, especially if you have bad signal strength or a bad SNR.

Wired connections are preferred, since the WoT client is quite picky when it comes to lost packets since it heavily relies on synced datagram streams.

 

Fiddling with the receive window/MTU sizes and adaptive techniques of your network interface can result in unpredicted results,

if you don't know what you are doing there.

 

I highly suggest you take a full system backup if you change registry and network settings and don't know how to revert manually if thing go wrong.

 

Actually, the results are quite predictable - and can be calculated. These settings are also easily reverted to default.



nuc_luc_ #16 Posted 03 June 2014 - 07:36 PM

    Lieutenant Сolonel

  • Player
  • 32318 battles
  • 3,136
  • [TKBS] TKBS
  • Member since:
    07-04-2011
what about World of Tanks (and videogames in general) use UDP and not TCP ?

Tacticalfu #17 Posted 03 June 2014 - 10:02 PM

    Sergeant

  • Player
  • 12857 battles
  • 260
  • Member since:
    10-18-2013

wont even bother to read. but i wil say this.

world of tanks is the only game that i have high ping in it.

 

i play only multiplayer games and i got lags and high ping only in WOT.

 

BF3, works fine.

BF4 works fine.

WT works fine.

arma 3 works fine.

arma 2 works fine.

Dayz works fine.

 

so why it should be at my end with WOT? wargaming need to fix this *******. its not the players\users job to fix this kinda of stuff


Edited by Chibs500, 03 June 2014 - 10:03 PM.


Dublin_Gunner #18 Posted 04 June 2014 - 01:21 AM

    Warrant Officer

  • Beta Tester
  • 17139 battles
  • 901
  • Member since:
    07-12-2010

View Postnuciluc, on 03 June 2014 - 07:36 PM, said:

what about World of Tanks (and videogames in general) use UDP and not TCP ?

 

Are you sure?



UnknownError #19 Posted 04 June 2014 - 03:08 AM

    Corporal

  • Player
  • 14425 battles
  • 165
  • [BEXF] BEXF
  • Member since:
    08-18-2011

View PostDublin_Gunner, on 03 June 2014 - 05:24 PM, said:

 

 These settings are also easily reverted to default.

Yes but I want to do things other than WOT all the time. While it's okay for users to try this out but it isn't acceptable that it's a problem in the first place. It isn't really fair to place the blame on people in the thread title. :sceptic:


Edited by UnknownError, 04 June 2014 - 03:08 AM.


nuc_luc_ #20 Posted 04 June 2014 - 09:20 AM

    Lieutenant Сolonel

  • Player
  • 32318 battles
  • 3,136
  • [TKBS] TKBS
  • Member since:
    07-04-2011

View PostDublin_Gunner, on 04 June 2014 - 02:21 AM, said:

 

Are you sure?


yes

https://eu.wargaming.net/support/Knowledgebase/Article/View/44/18/what-types-of-internet-connection-issues-exist-and-how-to-fix-them

 

UDP is for game.. and it suffer packet loss

TCP can not have packet loss


Edited by nuciluc, 04 June 2014 - 09:23 AM.






Also tagged with lag, latency, stutter, tcp, udp, packet loss

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users