How long does it take to transfer 1 TB over a WAN with 100 ms latency? The TCP window trap

By TechCompare · Updated · How we check

This fixed unscaled 64 KiB example takes about 17.7 days. The ideal 2.2-hour link-rate floor requires a receive window of at least 12.5 MB, plus adequate storage and no other throughput bottleneck.

A 1 TB transfer over a 1 Gbps WAN at 100 ms RTT takes about 17.7 days in this fixed, unscaled 64 KiB window scenario. The calculator caps the unscaled window at 65,535 bytes, giving about 5.24 Mbps. This is a deliberately constrained example with scaling disabled and a fixed window of about 64 KiB, not a general OS default.

Windows normally enables receive-window autotuning, and Linux enables receive-buffer autotuning by default. A small initial advertised window need not remain a persistent cap.

Transfer time
17d 15h 51m 42s
Window-limited to 5.2 Mbps
File size
1 TB
1000 GB
Link speed
1 Gbps
Gigabit Ethernet
Effective throughput
5.2 Mbps
at 100 ms RTT
Link utilized
0.52%
Bottleneck: TCP window

How this is calculated

The ideal link-rate calculation is 1 TB times 8 divided by 1 Gbps, or 2 hours 13 minutes 20 seconds. With 65,535 bytes available in flight and a 0.1-second RTT, the window-limited ceiling is 65,535 times 8 divided by 0.1, or about 5.24 Mbps.

The bandwidth-delay product is link rate times RTT, or 12.5 MB here. The receive window must reach at least that size to avoid this window limit. Window scaling permits larger windows, but turning it on alone does not enlarge the entered window.

Verdict

Treat 17.7 days as the result of the constrained window scenario, not as the expected time for every WAN transfer.

At 100 ms RTT, a 65,535-byte receive window limits this 1 Gbps link to about 5.24 Mbps. In the calculator, enable scaling and enter at least 12.5 MB (about 12,208 KiB) to remove the modeled window bottleneck. The 2 hours 13 minutes 20 seconds figure remains an ideal floor, with protocol overhead, packet loss, congestion, and storage performance able to increase it.

More WAN scenarios

100 GB over USB 3.0
A 100 GB transfer over USB 3.0 works out to 2 minutes 40 seconds at the interface's 5 Gbps peak rate.
View details
1 TB over USB 3.0
A 1 TB transfer over USB 3.0 works out to 26 minutes 40 seconds at the interface's 5 Gbps peak data rate.
View details
4 GB over USB 2.0
A 4 GB transfer over USB 2.0 works out to 1 minute 6 seconds at the interface's 480 Mbps peak rate.
View details

Frequently asked questions

Why does 1 TB take 17.7 days over a 1 Gbps WAN link?
That result assumes a fixed unscaled window of about 64 KiB, not typical OS defaults. At 100 ms RTT, the calculator's 65,535-byte cap gives about 5.24 Mbps and 17.7 days for 1 TB. With a sufficiently large window and no other bottlenecks, the ideal link-rate floor is 2 hours 13 minutes 20 seconds.
How do I fix the TCP window bottleneck on a WAN transfer?
Check the effective receive window and confirm window scaling is negotiated. Windows and Linux normally autotune receive buffers, but disabled tuning, pinned socket buffers, or blocked TCP options can constrain them. In the calculator, enable scaling and increase the entered window to at least the bandwidth-delay product. Parallel streams may help, but cannot remove storage or link limits.
What is the bandwidth-delay product for a 1 Gbps link at 100 ms?
1 Gbps times 0.1 seconds is 100 million bits, or 12.5 MB. A receive window at least that large avoids the modeled window bottleneck. This page deliberately uses a fixed unscaled window near 64 KiB, not the larger buffer a modern autotuned connection may use.