AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Source Servers (SRCDS) (https://forums.alliedmods.net/forumdisplay.php?f=130)
-   -   Solved server wide choking (https://forums.alliedmods.net/showthread.php?t=330004)

iGANGNAM 01-16-2021 14:26

server wide choking
 
Hello,

We are facing an issue with server-wide lags. Does anyone know how to identify the issue?

Dedicated server info:
Ram: 16gb used / 32gb total
CPU: AMD Ryzen 7 3800X 8-Core Processor ( 16 threads)
Linux kernel: 5.10.7-xanmod1
Tuned-adm profile: latency-performance
Linux load: load average: 4.19, 4.42, 4.45
14 CS:GO servers
MySQL instance is hosted there too
Using SSD.
1Gbit network
Map download files are on separate host
Playerbase around 80-120 at once on all 14 servers

We mostly see choke like 45-48% when there are 28-40 players on the server is it possible to fix it somehow?
Time from time var increase to 2 but doesn't feel any lag.

https://i.imgur.com/dkIRMl4.png

xSLOW 01-16-2021 18:24

Re: server wide choking
 
same problems. i switched to 64 tick and everything seems better
and added those settings to server.cfg:

// Tickrate
sv_maxrate "0"
sv_minrate "0"
sm_cvar sv_maxcmdrate "64"
sv_mincmdrate "64"
sv_minupdaterate "64"
sm_cvar sv_maxupdaterate "64"

does anybody have any ideea? the choke gets bigger when there are more players.
I noticed that changing from my csgo client console the rate to the biggest rate fixed the issue, but i cant increase sv_minrate to that number because of the clients with poor connections.

iGANGNAM 01-17-2021 07:40

Re: server wide choking
 
Quote:

Originally Posted by xSLOW (Post 2732882)
same problems. i switched to 64 tick and everything seems better
and added those settings to server.cfg:

// Tickrate
sv_maxrate "0"
sv_minrate "0"
sm_cvar sv_maxcmdrate "64"
sv_mincmdrate "64"
sv_minupdaterate "64"
sm_cvar sv_maxupdaterate "64"

does anybody have any ideea? the choke gets bigger when there are more players.
I noticed that changing from my csgo client console the rate to the biggest rate fixed the issue, but i cant increase sv_minrate to that number because of the clients with poor connections.

For us 64 tickrate is not solution.

paulo_crash 01-17-2021 08:52

Re: server wide choking
 
Quote:

Originally Posted by iGANGNAM (Post 2732856)
Hello,

We are facing an issue with server-wide lags. Does anyone know how to identify the issue?

Dedicated server info:
Ram: 16gb used / 32gb total
CPU: AMD Ryzen 7 3800X 8-Core Processor ( 16 threads)
Linux kernel: 5.10.7-xanmod1
Tuned-adm profile: latency-performance
Linux load: load average: 4.19, 4.42, 4.45
14 CS:GO servers
MySQL instance is hosted there too
Using SSD.
1Gbit network
Map download files are on separate host
Playerbase around 80-120 at once on all 14 servers

We mostly see choke like 45-48% when there are 28-40 players on the server is it possible to fix it somehow?
Time from time var increase to 2 but doesn't feel any lag.

https://i.imgur.com/dkIRMl4.png

As I understand it has 14 servers, correct that?

If you try to shut down all servers and connect 5 to the total see if it already solves.

I'm finding this processor weak for 14 servers, I may be mistaken, but do the test, connect only 5 servers and see if it improves, go on one by one until.

ThePwnt 01-17-2021 09:21

Re: server wide choking
 
Does it lag still, if you are running standard kernel without xanmod?

iGANGNAM 01-17-2021 12:43

Re: server wide choking
 
Choking was fixed by changing one cvar
sv_minrate 786432
it was 198k before

Quote:

Originally Posted by paulo_crash (Post 2732962)
As I understand it has 14 servers, correct that?

If you try to shut down all servers and connect 5 to the total see if it already solves.

I'm finding this processor weak for 14 servers, I may be mistaken, but do the test, connect only 5 servers and see if it improves, go on one by one until.

Processor load is 4.0 so it's not really bad. If it was 8.0+ yes thats is bad.

asdfxD 01-17-2021 13:37

Re: server wide choking
 
Bad idea to force players rate to the highest, lol.. it's not very good for players with a bad connection.

Sincronic 01-17-2021 16:37

Re: server wide choking
 
There is a fix for Choking server with 32+ slots ? on 128 tickrate ?
Now i have:
Code:

// 128 tick
sv_minrate "0" // Min Rate Value
sv_minrate "786432" // Min Rate Value
sv_maxrate "0" // Max Rate Value
sv_mincmdrate "128" // Min CmdRate
sv_minupdaterate "128" // Min UpdateRate Value
sv_maxupdaterate "128" // Max UpdateRate Value
sm_cvar sv_client_min_interp_ratio "2"
sm_cvar sv_client_max_interp_ratio "2"
sm_cvar net_maxcleartime 0.001

There is like 3-8% choke with ~32 players and more for over 32 players.
Beside on client side at 99999 there is another fix ? For server ?

ThePwnt 01-17-2021 16:42

Re: server wide choking
 
Quote:

Originally Posted by Sincronic (Post 2733009)
There is a fix for Choking server with 32+ slots ? on 128 tickrate ?
Now i have:
Code:

// 128 tick
sv_minrate "0" // Min Rate Value
sv_minrate "786432" // Min Rate Value
sv_maxrate "0" // Max Rate Value
sv_mincmdrate "128" // Min CmdRate
sv_minupdaterate "128" // Min UpdateRate Value
sv_maxupdaterate "128" // Max UpdateRate Value
sm_cvar sv_client_min_interp_ratio "2"
sm_cvar sv_client_max_interp_ratio "2"
sm_cvar net_maxcleartime 0.001

There is like 3-8% choke with ~32 players and more for over 32 players.
Beside on client side at 99999 there is another fix ? For server ?

Do you have 2x "minrate" setup? o_o

asdfxD 01-17-2021 16:52

Re: server wide choking
 
just use

sv_minrate "196608" // Min Rate Value
sv_maxrate "786432" or "0"

players who set their own rates wrong, will have choke......

just google it. if i remember, net_splitrate 2 and 2-3 more other cvars fix all choke issues.

Bacardi 01-18-2021 00:42

Re: server wide choking
 
People still try to use rates from cs 1.6 game and use old rate calculator http://www.reece-eu.net/drekrates.php

TF2 and CSGO games are sending more data over internet, so people are using too low rates.
Higher the tickrate -> more data is send in second.



ps.
Here is one rate calc http://ambaca.github.io/rate-calculator-2015/
But it's not flawless. :bee:

TomL. 01-18-2021 05:39

Re: server wide choking
 
If you are concerned about your traffic you wouldn't want to limit it just in the game server settings anyway.

Sincronic 01-20-2021 12:06

Re: server wide choking
 
Quote:

Originally Posted by Bacardi (Post 2733040)
People still try to use rates from cs 1.6 game and use old rate calculator http://www.reece-eu.net/drekrates.php

TF2 and CSGO games are sending more data over internet, so people are using too low rates.
Higher the tickrate -> more data is send in second.



ps.
Here is one rate calc http://ambaca.github.io/rate-calculator-2015/
But it's not flawless. :bee:

Nice rate calculator. I using from this one, this config. And is working a lot better.
Code:

sv_maxrate                "0" // Set this same as min. rate if you not have enough upload bandwidth
sv_minrate                "102400"
sv_maxupdaterate        "128"
sv_minupdaterate        "128"
//sv_maxcmdrate                "66" // Use if you like
sv_mincmdrate                "128"
net_splitpacket_maxrate                        "1048576"
//sv_competitive_minspec                        "1"
//sv_use_steam_voice                                "0"

And if anybody know what about this 2 ?

sv_force_transmit_players 1
net_maxcleartime 0.001

ThePwnt 01-20-2021 12:21

Re: server wide choking
 
Quote:

Originally Posted by Sincronic (Post 2733414)
Nice rate calculator. I using from this one, this config. And is working a lot better.
Code:

sv_maxrate                "0" // Set this same as min. rate if you not have enough upload bandwidth
sv_minrate                "102400"
sv_maxupdaterate        "128"
sv_minupdaterate        "128"
//sv_maxcmdrate                "66" // Use if you like
sv_mincmdrate                "128"
net_splitpacket_maxrate                        "1048576"
//sv_competitive_minspec                        "1"
//sv_use_steam_voice                                "0"

And if anybody know what about this 2 ?

sv_force_transmit_players 1
net_maxcleartime 0.001

sv_force_transmit_players
Code:

This command, if set to 1 (enabled), will transmit data about every player to clients regardless of whether or not a player is visible to the client. This is by default set to 0, meaning you will only receive data about a player if they should be visible - this is a feature to prevent wall hacks,etc from seeing across the entire map.
net_maxcleartime
Code:

From CSS: - Max # of seconds we can wait for next packets to be sent based on rate setting (0 == no limit).

Sincronic 01-23-2021 11:17

Re: server wide choking
 
Quote:

Originally Posted by ThePwnt (Post 2733417)
sv_force_transmit_players
Code:

This command, if set to 1 (enabled), will transmit data about every player to clients regardless of whether or not a player is visible to the client. This is by default set to 0, meaning you will only receive data about a player if they should be visible - this is a feature to prevent wall hacks,etc from seeing across the entire map.
net_maxcleartime
Code:

From CSS: - Max # of seconds we can wait for next packets to be sent based on rate setting (0 == no limit).


Thanks ! i have a new problem. Unknown command "net_splitpacket_maxrate" .

Why i get this error ?

TomL. 01-23-2021 11:25

Re: server wide choking
 
Quote:

Originally Posted by Sincronic (Post 2733939)
Thanks ! i have a new problem. Unknown command "net_splitpacket_maxrate" .

Why i get this error ?

Because net_splitpacket_maxrate is used in Counter-Strike: Source not Counter-Strike: Global Offensive :wink:

Sincronic 01-24-2021 15:14

Re: server wide choking
 
Quote:

Originally Posted by TomL. (Post 2733940)
Because net_splitpacket_maxrate is used in Counter-Strike: Source not Counter-Strike: Global Offensive :wink:

Thanks !
Now with 128 tickrate, 33 players and sv_minrate "102400" i have 54% choke. Sv_maxrate ia 0 why is happening this ? The rate calculator is saying to raise to 256000 minrate. I attached 2 pictures:
https://ibb.co/LQgjDPP
https://ibb.co/fkJfb4D

Bacardi 01-24-2021 15:40

Re: server wide choking
 
When ever you make server rate settings changes, change level.
Players need to connect or re-connect to server to accept server rate restrictions -> change level.

*edit
And it is not CHOKE, in your picture it is 50% LOSS.
I assume problem is on your end (your network). What kind of internet you have ?
I actually read wrong


You could also check current cvar values from console.
Code:

clear;sv_maxrate;sv_minrate;sv_minupdaterate;sv_mincmdrate;rate;cl_updaterate;cl_cmdrate

*edit
Maybe 33 players in 128 tick server is too much.

TomL. 01-24-2021 15:42

Re: server wide choking
 
Not sure why you want to modify those values.
In a normal environment you can just use
Code:

sv_minrate 786432
sv_maxrate 0


Sincronic 01-26-2021 02:41

Re: server wide choking
 
@bacardi
I don't understand how it works after all. There are many servers with 32 players in 128 tickrate and there is no choke.
Maybe 32 slots and 128 tickrate ia not for everyone ? Depends of every player PC and internet connection ?
I know some players that they had in there startup config 128000 rate for faceit. This can affect choke and gameplay on public servers that are over 10 slots ?

@TomL i had that configuration. some players complains about this.
Anyway.. i had 4-8% choke with sv_minrate 786432 and maxrate 0.

TomL. 01-26-2021 07:09

Re: server wide choking
 
I mean of course it depends on your connection.
If players cannot keep up with the server rates just try the default settings...
Code:

sv_minrate 16000

Bacardi 01-26-2021 07:51

Re: server wide choking
 
@Sincronic, looking again your second pic.
net_graph shows that data packs go up to in: 2884 byte all the time.

This already tell you that, your server is sending huge amount of information. You either have:
- Crap map, with lot of triggers, logics or physic entities.
- Lot of models / skins / maybe bad plugins.


You have calculate your rates to corresponding max value 2000 byte with updaterate 128
What happen is, if you get higher packet size than 2000 byte -> server start split packets -> you get CHOKE and updaterate slows down.
= Simple term, server is sending huge amount data to you -> you are limiting your data receive.

You have two options.
Increase rate
Decrease updaterate (or tickrate)


For your current situation 2900 byte per packet

2900 byte x 128 updaterate = sv_minrate 371200

or

256000 rate / 2900 byte = sm_cvar sv_maxupdaterate 88

paulo_crash 01-26-2021 08:55

Re: server wide choking
 
Quote:

Originally Posted by Sincronic (Post 2734291)
@bacardi
I don't understand how it works after all. There are many servers with 32 players in 128 tickrate and there is no choke.

Simple, the more slots and more tickrate the more processing you need, so you need very good hardware.

And from what I could see you have 14 CSGO servers and all 128 tickrate, correct?

Besides the use of their mysql database in the same dedicated, FastDL that players use to download materials, models and sounds that may have been customized on their server.

Maps from what I saw you use another network in this case.

I believe it is easier for you to post here a print of how your machine's resources are, so we can help you to identify what can be. Log in to your dedicated ssh root and use the top command and take a print.

Use this command with all your servers connected and preferably when you see that you are having the problems you mentioned.

Here is a print of how the information should be: https://prnt.sc/xns3bn


All times are GMT -4. The time now is 02:40.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.