A team copies a dataset between two regions over a ten-gigabit link and measures a little over a megabit a second. The link is not the problem, the disks are not the problem, and nothing is broken. The transfer is using one TCP connection over a 100 ms round trip with one percent packet loss, and that combination has a ceiling.
Definition · Mathis boundFor a loss rate p, a maximum segment size MSS and a round-trip time RTT, a single congestion-controlled flow sustains at most approximately (MSS / RTT) × (1 / √p). It is a bound on the average rate over many congestion cycles, derived from the sawtooth of window growth and halving; it ignores timeouts, receive-window limits and the slow-start phase, so a real flow achieves this or less.
MSS = 1460 B RTT = 100 ms p = 1% = 1/100
MSS / RTT = 1460 B / 0.1 s = 14 600 B/s
1 / √p = 1 / √0.01 = 10
bound = 14 600 × 10 = 146 000 B/s
= 146 000 × 8 / 10⁶ = 1.168 Mbit/s
link 10 000 Mbit/s
streams = ⌈10 000 / 1.168⌉ = 8 562
The bound is 1.168 Mbit/s and the link is 10 Gbit/s. The flow is using about one ten-thousandth of the capacity that was bought, and buying more capacity changes the numerator of nothing. What would change the answer is a shorter round trip, a lower loss rate, a larger segment, or more flows — and the 8 562 figure prices the last of those exactly.
The square root, and why it matters more than it looks
- p = 0.1% — bound 3.694 Mbit/s, 2 708 streams to fill the link
- p = 0.5% — bound 1.652 Mbit/s, 6 054 streams
- p = 1% — bound 1.168 Mbit/s, 8 562 streams
- p = 2% — bound 0.826 Mbit/s, 12 108 streams
- p = 5% — bound 0.522 Mbit/s, 19 145 streams
Loss enters as 1/√p, so a factor of two in loss is a factor of √2 in throughput, not a factor of two. Going from 1% to 2% takes the bound from 1.168 to 0.826 Mbit/s — it multiplies by 1/√2 ≈ 0.707, and a reader who expected 0.584 has applied the wrong rule. Going the other way is the same story in reverse: halving the loss buys 41% more throughput, not 100% more, which is why loss reduction has diminishing returns and round-trip reduction does not.
Example · The two levers, priced against each otherAt 1460 B and 1% loss, moving the round trip from 100 ms to 10 ms — a nearer region — takes the bound from 1.168 to 11.680 Mbit/s, exactly ten times, because RTT is in the denominator linearly. Moving the loss from 1% to 0.1% — a tenfold improvement in a much harder quantity — takes it to 3.694 Mbit/s, a factor of √10 ≈ 3.16. Distance is the more powerful lever by a factor of three, and it is also the one “The Speed-of-Light Floor” said was the only one physics cares about.
One honesty note about the arithmetic, because this lesson is the exception on this course. Every other figure in these eleven labs is an exact fraction: percentiles are ranks, convolutions are enumerated pairs, and budgets are subtractions. This bound contains √p, and a square root of a rational is usually irrational — √(1/50), the root needed at two percent loss, has no rational value at all. So the mathis mode computes its root by Newton’s method to fifteen decimal places and says on its face that it has done so. Every figure on that panel inherits the rounding, and no other page on the course does.
Two limits on the model itself. It is a bound on the average rate, so a real flow reaches it at best and usually less: retransmission timeouts, a receive window too small for the bandwidth-delay product, and slow start all cost more. And it describes loss-based congestion control; a flow using a rate-based or delay-based controller is not governed by this sawtooth and is not described by this formula. Read it as the ceiling a classical flow cannot pass, which is exactly the use it gets put to.
The misconception it exists to correct is short enough to state in one sentence: a ten-gigabit link does not give a ten-gigabit flow. The link capacity is a bound on the aggregate; a single connection is bounded by its own round-trip time and loss rate, and those two numbers were never on the invoice.