[cjtoolbox name=’ThroughputCalculator.js’][/cjtoolbox][cjtoolbox name=’ThroughputCalculator.form’ ][/cjtoolbox]
In the above text fields, you can enter values for TCP window size,
latency and throughput. Enter values and click anywhere outside the
text boxes to run calculations.
Throughput Calculator will check that valid numbers are entered in the
text fields. You will be promoted to change entries.
Note that invalid entries will be ignored
Click “Reset” to clear the current text fields.
When troubleshooting issues like data replication through a WAN it
is handly to keep in mind the behavor of TCP sessions. TCP utilizes
flow control via window sizing. The sending host can only send so
much data before it must wait for an ACK. Latency through a WAN will
slow a TCP session down considerably (exponential decay). For example
if you double your latency, you cut your throughtput in half for TCP.
How to Calculate TCP throughput:
TCP-Window-Size-in-bits / Latency-in-seconds = Bits-per-second-throughput
64KB = 65536 Bytes. 65536 * 8 = 524288 bits, 524288 bits / 0.030 seconds = 17476266
How to calculate the optimal TCP window size:
Bandwidth-in-bits-per-second * Round-trip-latency-in-seconds = TCP window size in bits / 8 = TCP window size in bytes
1,000,000,000 bps * 0.030 seconds = 30,000,000 bits / 8 = 3,750,000 Bytes