News
     Prices
     Order
     List
     Status
     Hardware Specs
     Admin
   Tiger
   Leopard
     Help / Info

UK Counter-Strike League
HLTV.org
WarFinder
More Forum Posts! More Server News! More Clan News! More Hosting News!

CHOKE - WHAT IS IT? WHY DOES IT HAPPEN? HOW CAN I PREVENT IT?

A small number of players have mentioned they see some choke when playing on our servers so I think an explanation of choke is needed. Please take the time to read and understand the information below. The information below was created mostly from my own findings and experience as both a player and server administrator. It does however contain authoritive information by other leading professionals.


WHAT IS CHOKE?

For a definitive explanation of choke I have selected a quote from from Yahn Bernier, Valve Software Engineer. It's not a fix, but an explanation of what happens when you get choke. To see if you're choking, in console type net_graph 3. This will display several stats including your choke. To turn off the net graph use net_graph 0 in console.

"choke occurs when the server, factoring in your rate setting, determines that it can't send you an update yet because doing so would start to flood your connection. The server checks back every frame until you are ready to receive an update and sends the next update as soon as possible.

The time when you get the next packet is computed right after the previous packet is sent:

Next packet time = current time + (bytes in packet + UDP header overhead) / rate setting (bytes per second).

In addition, the server won't even check the packet choke timer unless you have waited at least 1 / cl_updaterate seconds since the last update ( i.e., if you are getting 20 updates a second, packets will be spaced at least 50 ms apart and also subject to the packet choke timer ).

On a slow connection (modem), in a busy game, you'll probably see a lot of choked packets. Note that once the choke as held back a packet, you don't wait until the next 50 msec multiple, for the above example, but instead get the next update as soon as the choke timer has cleared."


WHY DO TAA SERVERS GIVE ME CHOKE BUT NOT OTHERS?

Primarily because our servers run at a higher frames per second (fps) than normal servers, around 100-200fps compared to 20-60fps. One of the benefits of high fps servers is they can send more server-to-client updates per second, providing more accurate and responsive gameplay. This increased number of available updates is also however the primary cause of choke.

Our servers are also configured with considerably higher rates than normal servers - sv_maxrate 25000 and sv_maxupdaterate 101. Most players will have raised their cl_updaterate from the default 20 (cl_updaterate controls the number of server-to-client packets the client wants to get per second). Using a higher setting may work just fine on normal servers because the server can only send one packet per frame to you, so when it's running at 20-30 fps you never get over 30 updates per second no matter how many you request. With high fps servers such as ours you will actually get sent the 101 packets per second that you requested and hence choke when your connection can't handle them.


WHAT CAN I DO TO PREVENT CHOKE?

The best compromise for in game responsiveness is using settings which push you very close to choking in the worst case scenario. This means you are receiving as many updates per second as possible without choking. It is possible to tweak these settings to provide best results for every client pc and server combination.

The way I tune starts with setting a good rate for my connection with very little bandwidth spare. For me on 64K ISDN I use 8000. Broadband users should use between 15000-25000 (the latter being the servers maxrate). Modemers 3000-4500 depending on connection speed. Then set your cl_updaterate to a high figure, I use 101 to start at.

Whilst playing watch the choke on net_graph 3 when several players are on screen and firing, this is the highest possible choke scenario. More action = more choke so be prepared to die whilst watching the choke level :) Gradually lower your cl_updaterate until choke shows 0 but sometimes flicks to 1.

Keep an eye on your choke whilst playing different maps but especially with high numbers of players. Adjust you cl_updaterate lower 1 at a time until your worst case scenerio in a fire fight is 1 choke. You now have optimal rates for that particular server. If you want you can lower a little further to reduce choke to 0 but I prefer to sacrifice the 1 choke in massive fire fights for knowing I'm optimal in all other scenarios but the worst.

Finally, even with my settings tuned I do still see 5-10 choke when spawning on most large maps with 12+ players. Considering all players are alive and purchasing weapons, a lot of information is being sent at this point. This choke rapidly drops to 0 within a few seconds of leaving spawn though. This is normal for configs tweaked using my above system.


CLAN PORT ADMIN NOTES

Server / clan port admins can solve choke problems by adjusting the sv_minupdaterate and sv_maxupdaterate in their server.cfg. Lowering these settings can eliminate choke at the sacrifice of 100% accurate gameplay. Using settings of sv_minupdaterate 0 and sv_maxupdaterate 60 are the default and used by most clan port providers. However even 60 on our servers may cause choke due to the high fps they run at. We have not seen any adverse affects of using standard (or even lower) settings and setting 30-35 will eliminate choke at the sacrifice of game accuracy and responsiveness. At the end of the day we do not force clans to use our settings and they are free to try any they like.

If any clans would like advice on their particular clan port configuration or need settings tweaking to suit their particular player base, please feel free to email support@taa-gaming.com and I'll be more than happy to assist.

The TAA | Gaming publics and match servers will remain configured using these high settings unless the majority of players request otherwise.


FINAL NOTES

I hope this clears up a few things. It does seem that most regular players and clans using our servers have figured this lot out by now but new players and clans may not have. Please feel free to point clans towards this page for details on resolving choke problems on our servers.




 


News | About | Forums | Clan | Servers | Hosting | Community
Copyright TAA-Online Limited Registered Company No. NI50990.  All rights reserved 2008.