How long should that transfer take? Bandwidth math for real links
You need to move 500 MB across a 10 Mbps WAN link. Your manager asks when it will arrive. You guess. That's not engineering. Bandwidth math is straightforward, but the gap between theory and reality trips up even experienced technicians. This guide walks you through the formulas, common pitfalls, and how to estimate real-world transfer times on actual links.
The core formula: time = size divided by bandwidth
The fundamental equation is simple: Transfer Time = Data Size divided by Bandwidth. The critical step is unit consistency. Bandwidth is advertised in bits per second (bps). File sizes are measured in bytes. One byte equals 8 bits. If you mix units, your answer will be wrong by a factor of 8.
Transfer Time (seconds) = Data Size (bits) / Bandwidth (bits per second) OR Transfer Time (seconds) = Data Size (bytes) * 8 / Bandwidth (bps) Example: 500 MB over 10 Mbps link 500 MB = 500,000,000 bytes = 4,000,000,000 bits 4,000,000,000 bits / 10,000,000 bps = 400 seconds = 6.67 minutes
Bandwidth vs. throughput: what you see vs. what you get
The 10 Mbps link rating is the theoretical maximum. Real throughput is always lower. Protocol overhead, retransmissions, congestion, and half-duplex behavior all reduce effective bandwidth. TCP/IP headers consume roughly 20 bytes per packet. Ethernet frames add another 18 bytes. On a 1500-byte MTU, that's about 12% overhead. On smaller packets, overhead is worse.
- →Advertised bandwidth: the ISP or vendor specification
- →Available bandwidth: what remains after other traffic and overhead
- →Effective throughput: what you actually measure with iperf or similar tools
- →Usable capacity: effective throughput minus protocol overhead
For planning, assume 70-85% of advertised bandwidth on clean, modern networks. On congested or older links, drop to 50-60%. Always measure before you commit to an SLA.
Common unit conversions and quick checks
1 byte = 8 bits 1 KB = 1,000 bytes (or 1,024 in binary) 1 MB = 1,000,000 bytes 1 Mbps = 1,000,000 bits per second 1 MBps = 8 Mbps (megabytes per second vs. megabits per second) Quick mental math: - 1 MB over 1 Mbps = 8 seconds - 1 GB over 100 Mbps = 80 seconds - 1 TB over 1 Gbps = 8,000 seconds (about 2.2 hours)
Real-world scenarios and adjustments
A 100 Mbps circuit rarely delivers 100 Mbps sustained. Latency, jitter, packet loss, and QoS policies all matter. If the link is shared or has competing traffic, your transfer will be slower. Asymmetric links (common in cable and DSL) have different upload and download speeds. Wireless links degrade with distance and interference. Always test with actual data and actual conditions before finalizing estimates.
For critical transfers, run a baseline test: send a known file size and measure the elapsed time. Divide actual bytes transferred by elapsed seconds to get real throughput. Use that number for future estimates on that link.