How to use the bandwidth delay product calculator
- Enter the link speed and choose its unit.
- Enter the round trip time in milliseconds, for example from a ping.
- Enter the window size and choose its unit. The window is the amount of data the sender may have in flight without an acknowledgment.
- Read the bandwidth delay product, the throughput your window allows and the share of the link it can use.
Formula
bandwidth delay product (bytes) = speed (bits per second) x round trip time (seconds) / 8
window throughput (bits per second) = window (bytes) x 8 / round trip time (seconds)
share of the link = window throughput / link speed, at most 100%
A speed in megabits uses 1,000,000 bits. The window can be in bytes, KiB (1,024 bytes) or MiB (1,048,576 bytes). The classic TCP window field holds at most 65,535 bytes.
A 100 Mbps link with a 50 ms round trip
The bandwidth delay product is 100,000,000 x 0.05 / 8 = 625,000 bytes, which is 610.35 KiB. A window of 64 KiB (65,536 bytes) allows only 65,536 x 8 / 0.05 = 10.4858 Mbps, so it uses 10.49 percent of the link. The window would need a scale shift of 4 to be big enough.
A gigabit link with a 140 ms round trip needs 17,500,000 bytes in flight. A 4 MiB window allows 239.6745 Mbps there, which is 23.97 percent of the link. On a 5 Mbps mobile link with a 120 ms round trip, the product is 75,000 bytes and a 64 KiB window reaches 4.3691 Mbps, 87.38 percent of the link.
What the number means
The bandwidth delay product is the amount of data that fits in the network pipe at one moment. To keep the pipe full, the sender needs to have at least that much data sent but not yet acknowledged. If its window is smaller, it must pause and wait, and the link sits partly idle however fast it is.
Long links with fast speeds, such as a gigabit link across an ocean, need very large windows. The TCP window scale option makes this possible by multiplying the 16 bit field by a power of two, up to 2 to the 14th.
Limits of the estimate
The result is an upper bound. Packet loss, slow start, shared links and the speed of the disks at each end all lower real speeds. Use it to see whether window size is a likely cause of slow transfers on a distant link. To estimate transfer times, use the File Transfer Time Calculator, and to plan monthly traffic, use the Monthly Data Usage Calculator. For addresses and masks, use the Subnet Calculator.
Assumptions and limits
- The link is fully available to one connection and has no packet loss.
- The round trip time is constant.
- Window sizes use bytes, KiB (1,024) or MiB (1,048,576), and speeds use 1,000 for each step.
- The speeds and times shown when the page opens are examples.
Frequently asked questions
What is the round trip time?
It is the time for a message to reach the other end and for the reply to return. A ping command reports it in milliseconds.
What is the window scale shift?
It is how many times the 16 bit window field is doubled. A shift of 4 multiplies the field by 16, so 65,535 becomes up to 1,048,560 bytes. The largest allowed shift is 14.
Why does a faster link not help my transfer?
If the window is smaller than the bandwidth delay product, the speed is capped by the window and the round trip time, not by the link.
Is this specific to TCP?
The idea applies to any protocol that waits for acknowledgments. The window scale facts at the end of the results are specific to TCP.