Home/Computer Science/Networking/TCP Throughput Estimate (Mathis Formula)

Formula & Calculator

TCP Throughput Estimate (Mathis Formula)

Estimates the maximum achievable TCP throughput given packet loss rate, round-trip time, and maximum segment size.

Computer ScienceNetworkingTCP/IP

TCP Throughput Estimate CalculatorMathis Formula

Throughput ≈ (MSS · C) / (RTT · √p)
MSS (bytes)  ·  RTT (s)  ·  p (loss ratio)  ·  C ≈ 1.22
⟹ ThroughputMSS, RTT, p, C
bytes
ms
%
Mbps
RTT unit:
Loss unit:
Solve for:
Common:
Throughput
✓ Copied!
Throughput Level
Low (<1 Mbps) Medium (1–10 Mbps) High (10–100 Mbps) Very High (100–1000 Mbps) Extreme (>1 Gbps)
Throughput vs. Lossfixed MSS, RTT, C
Throughput(loss) Computed point
Throughput ≈ (MSS · C) / (RTT · √p)  ·  C ≈ 1.22 (Mathis)

Interpretation

Mathis formula estimates TCP throughput: Throughput ≈ (MSS × C) / (RTT × √p), where C is a constant (typically 1.22) and p is packet loss rate. Example: MSS=1460 bytes, RTT=0.1 s, p=0.001 → throughput ≈ (1460×1.22)/(0.1×√0.001) ≈ 1781/0.00316 ≈ 563,000 B/s ≈ 0.56 MB/s.

Throughput ≈ (MSS * C) / (RTT * sqrt(p))
TCP Throughput Estimate (Mathis Formula)

Variables

SymbolQuantityUnit
ThroughputEstimated TCP throughputbytes/s
MSSMaximum segment sizebytes
CConstant (~1.22)
RTTRound-trip times
pPacket loss probability

What it means

The Mathis formula is a simple yet powerful model for estimating TCP throughput based on the packet loss rate and round‑trip time (RTT). It is derived from the TCP congestion control mechanism, particularly Reno, and is given by Throughput ≈ (MSS * C) / (RTT * √p), where MSS is the maximum segment size, C is a constant (often 1.22 for TCP Reno), and p is the packet loss probability. The formula shows that throughput is inversely proportional to RTT and the square root of the loss rate. This implies that even small packet losses can severely impact throughput, especially over long RTT links. It is widely used to predict the performance of TCP connections over error‑prone links (e.g., wireless) and to dimension network buffers. The formula is an approximation; it assumes that losses are due to congestion and not corruption. It is also used in evaluating the impact of TCP options like SACK and window scaling. Understanding this formula helps network engineers diagnose poor performance and choose appropriate congestion control algorithms.

Worked example

TCP Throughput (Mathis) – Two Examples

Real‑World
Scenario 1 – Good Connection: TCP has MSS = 1460 bytes, RTT = 50 ms, packet loss rate p = 0.001 (0.1%). Estimate throughput.
ParameterValue
MSS1460 bytes = 11,680 bits
RTT50 ms = 0.05 s
p0.001
1Throughput ≈ (MSS × C) / (RTT × √p), where C ≈ 1.22
2≈ (11680 × 1.22) / (0.05 × √0.001) = 14249.6 / (0.05 × 0.03162) = 14249.6 / 0.001581 ≈ 9,013,000 bps ≈ 9.0 Mbps
Result ≈ 9.0 Mbps ✓ Good throughput
Scenario 2 – High Loss, Long RTT: MSS = 1460, RTT = 200 ms, p = 0.01 (1% loss). Estimate throughput.
ParameterValue
MSS11,680 bits
RTT0.2 s
p0.01
1Throughput ≈ (11680 × 1.22) / (0.2 × √0.01) = 14249.6 / (0.2 × 0.1) = 14249.6 / 0.02 ≈ 712,480 bps ≈ 0.71 Mbps
Result ≈ 0.71 Mbps ⚠️ Low throughput
Key insight: TCP throughput drops dramatically with packet loss – it's proportional to 1/√p. Reducing loss is crucial for high‑speed networks.

Common mistakes

  • Constant C: Usually 1.22 for TCP Reno; different congestion control algorithms have different constants.
  • MSS units: Maximum segment size in bytes – convert to bits if needed.
  • Packet loss p: Must be a fraction (e.g., 0.01 for 1% loss) – not a percentage.
  • RTT: In seconds – not milliseconds without conversion.
  • Assumptions: The formula assumes no timeouts and limited window growth; it is an approximation.

Applications

The Mathis formula estimates TCP throughput as a function of the maximum segment size (MSS), round‑trip time (RTT), and packet loss rate (p). It is widely used in network performance engineering to predict the achievable throughput of a TCP connection under lossy conditions. Engineers apply this formula to diagnose performance bottlenecks, to configure network equipment for high‑speed links, and to design congestion control enhancements. It also helps in capacity planning for data centres and WANs, where loss rates and RTTs vary. Understanding this formula is essential for troubleshooting slow file transfers and for optimising application performance over TCP.

  • Performance estimation of TCP connections
  • Network capacity planning and troubleshooting
  • Design of congestion control algorithms
  • Optimisation of satellite and mobile networks
  • Quality of service (QoS) analysis

Frequently Asked Questions

Q01What is the Mathis formula for TCP throughput and what does it estimate?
A01

The Mathis formula gives an estimate of the maximum achievable TCP throughput given the packet loss rate, RTT, and maximum segment size: Throughput ≈ (MSS × C) / (RTT × √p), where C is a constant (often taken as 1.22 or 1.5), MSS is the maximum segment size (bytes), RTT is the round‑trip time (seconds), and p is the packet loss probability (fraction).

Q02What assumptions does the Mathis formula make?
A02

It assumes:

  • TCP congestion control follows the standard additive increase/multiplicative decrease (AIMD).
  • Losses are independent and random (not correlated).
  • The window size is not limited by the receiver window.
  • Losses are the primary cause of throughput reduction.
It is most accurate for small loss rates (p < 0.01) and in steady state.

Q03What are the common mistakes when using the Mathis formula?
A03

  • Applying it to bursty loss – the formula assumes random, independent losses; bursty losses (e.g., due to router buffer overflow) can degrade performance more severely.
  • Using the wrong constant – the constant C may vary (e.g., 1.22 for TCP Reno, 1.5 for some versions).
  • Ignoring the effect of delayed ACKs – which can alter the throughput.
  • Using it for very high loss rates – for p > 0.1, the formula becomes inaccurate.

Q04How does the packet loss rate affect TCP throughput?
A04

Throughput is inversely proportional to √p. This means that even a small increase in loss rate significantly reduces throughput. For example, increasing loss from 0.01% to 0.04% doubles the loss, reducing throughput by half (since √0.0004 = 2×√0.0001).

Q05What is the role of RTT in the Mathis formula?
A05

Throughput is inversely proportional to RTT. Higher latency (RTT) reduces throughput for the same loss rate because the congestion window takes longer to recover. This is why long‑distance links require careful tuning.

Q06How can you increase TCP throughput according to the Mathis formula?
A06

To increase throughput, you can:

  • Reduce packet loss (improve link quality).
  • Reduce RTT (move servers closer).
  • Increase MSS (use larger packets, e.g., jumbo frames).
These are the main levers for improving TCP performance.

Q07What is the typical throughput for a 100 ms RTT link with 0.1% packet loss and MSS=1460 bytes?
A07

Using C=1.22: Throughput ≈ (1460 × 8 bits × 1.22) / (0.1 × √0.001) ≈ (1460 × 8 × 1.22) / (0.1 × 0.0316) ≈ (14249.6) / 0.00316 ≈ 4,509,000 bps ≈ 4.5 Mbps. This is much less than the link capacity, showing the impact of loss.

Q08What are the limitations of the Mathis formula?
A08

It does not account for:

  • Receiver window limitations.
  • Timeouts (RTO) – which can drastically reduce throughput.
  • Variations in RTT (jitter).
  • Slow start and other transient effects.
It is best used as a rough estimate for steady‑state TCP performance.

Q09What are some alternative formulas for TCP throughput?
A09

The Padhye formula is a more comprehensive model that includes timeouts and the effect of the receiver window. Another is the BIC/CUBIC throughput model for high‑speed TCP variants. The Mathis formula is the simplest and most widely used for quick estimates.

Q10How does the Mathis formula apply to modern TCP variants like CUBIC?
A10

CUBIC uses a different congestion control algorithm (cubic function) that allows faster recovery and better performance for high bandwidth‑delay products. The Mathis formula is less accurate for CUBIC; however, for moderate loss rates, it can still serve as a rough estimate. Specialised formulas exist for CUBIC.