TCP Window Sizes (Buffer Allocations) and Network Timeouts
-
Not sure if you have the ability in the app or not (as this is usually a kernel and/or system level change), yet have you ever looked at the TCP window sizes/max packet sizes allowed in the app and also timeout values and done any tweaking outside the default ranges? If not, definitely look into things as the TCP window sizes for apps that started development in the early 2000's isn't optimal in the 2020's anymore. Packet sizes were smaller, historically, which puts more load on servers and also clients. Large window sizes means less connections and more information in each packet (which might help).
Also, I suspect the game uses both TCP and UDP connections? (If not, any graphics should get displayed via UDP packets), and game information passed via TCP packets (which I suspect it already does as it looks like you wait 30 seconds (aka - forever) for a TCP session to expire when someone leaves the game). I'd adjust the TCP timeouts, and split the display code to go over UDP (if it can) and TCP just for game session information and get/put server requests.
-
A admin locked this topic on