Knowledge base: Download Area > ByteBlower > Tools
Background: Calculate the optimal TCP windowscale value
Posted by Admin Kayako, Last modified by Craig Godbold on 29 November 2023 11:50 AM

The window size in a TCP connection is a very important parameter. It has a huge influence on the performance, because the receive is the amount of data a host can accept without acknowledging the sender. If the sender has not received acknowledgement for the first packet it sent, it will stop and wait and if this wait exceeds a certain limit, it may even retransmit. If the receive window is too small, a server will wait too often. If a window is too big, chances are higher that a server will send too fast and packet loss will happen.

The optimal value for the receive window is often called the bandwidth-delay product. It is the amount of data which can be sent over a link during the time the server sends the first packet and the time the server receives an acknowledgement for this packet.

So:

Bandwidth-delay product = RTT x BandWidth

Now, to optimize the TCP performance, the calculated optimal receive window should be at least this size and a multiple of the MTU of the link. But, there is also a third important parameter: or TCP, the receive window is announced by two parameters: the windows size in the TCP header, and if supported, the windows scale factor.  This means the ideal receive window must be a value which can be expressed by a window size and scale value.

To calculate the optimized value for a TCP connection, we have created an spreadsheet where you can just enter the different parameters, and you will get the optimal values for both the announced windowsize and windows scale.

[[SecureDownload:ByteBlower/Tools/tcp/TCPWindowScaling.xlsx:Download Spreadsheet.]]

(0 vote(s))
Helpful
Not helpful

Comments (0)

We to help you!