Page 1 of 1
min_window setting
Posted: Sat May 17, 2025 8:09 am
by Edward
I’m playing with a V8 Demo and I’m wondering what’s the best use of the min_window setting? When would I use it and why, or do I even care about it?
Re: min_window setting
Posted: Sat May 17, 2025 11:28 am
by Bob
min_window allows you to control the smallest window that will be used for shaping TCP traffic. The low window will be u sed on low priority traffic to keep it from clogging your network queues and when rules are over their limit. On a really fact end-to-end connection a connection may be able to get 1Mb/s with a min window; if you’re on a slow connection in a remote location it can be really slow. So you can tune it to a larger number if your connections are too slow.
Note that servers generally don’t send partial windows, so you need to keep this as a multiple of the MSS (1460 for an IPv4 packet). We use 1500 multiples to simplify it. The default is 1500. So you can raise it to 3000, 4500, 6000 etc. If you raise it too high you may not be able to shape the traffic to the limit.
Re: min_window setting
Posted: Sat May 17, 2025 12:07 pm
by Dennis
Be aware that you can also set the min_window below 1500 and the BWMGR will negotiate a smaller MSS. The can be used to slow connections even more than a 1 packet window.
A window of 1500 is essentially a window of 1 packet. It creates a send and wait situation; A packet is sent and another can’t be sent until an ACK is received. This is the slowest you can shape a connection without delaying any packets. Setting a lower window reduces the size of the 1 packet than can be sent. The throughput obtainable on a 1 packet window will vary depending on the round trip time required to receive the ACK.