SG Bandwidth*Delay Product Calculator

The SG RWIN/BDP Calculator is a tool provided for quick calculation of approximate RWIN (TCP Window) values using the BDP (Bandwidth*Delay Product).

To use the calculator, simply fill the maximum available bandwidth of your connection, and the maximum anticipated latency. The resulting BDP is a measure of what the TCP Window value should be approximately. It is still a good idea to make RWIN a multiple of MSS, and scaled appropriately as per RFC 1323. The BDP calculator simply provides an approximation of the maximum throughput (and approximate RWIN) for a given bandwidth and latency.

RWIN/BDP Calculator
Bandwidth:
x Delay:
= RWIN/BDP

Notes:
If all fields above are filled, it might be necessary to clear the form to calculate new values.
Keep in mind in data communication 1 kilobit = 1000 bits, while in data storage 1 Kilobyte = 1024 Bytes.
The TCP Window values in the Windows Registry (and in Linux /proc/sys/net/core/...) are in bytes.
If using to approximate a RWIN value, remember to use the maximum anticipated latency, and maximum available bandwidth.

To determine the exact optimal TCP Receive Window (RWIN) value from the above BDP result, you can use the SG TCP Analyzer and pick one of the recommended optimal values close to/larger than the above BDP result. Alternatively, to determine the optimal RWIN manually, you can perform the following calculations:

1. Determine MSS (displayed by the SG TCP Analyzer), maximum anticipated latency and advertised maximum bandwidth.
(for example, 1460 MSS, 300ms max latency, 6Mbit/s max bandwidth).

2. Find the unscaled RWIN value (largest even multiple of MSS less than 65535):
65535 / 1460 (MSS) = 44.9
round down to even number = 44
44 x 1460 = 64240 (this is the optimal unscaled RWIN value for broadband connections)

3. Multiply the unscaled RWIN by 2 until it is larger than BDP
Our BDP for 6Mbps @ 300 latency is:
6000 kbps x 300ms = 1800000 / 8 = 225000
64240 (unscaled RWIN) x 2 x 2 ... = 256960 (number larger than BDP, this is the optimal RWIN)