[R-C] Simplifying the TCP throughput algorithm

Fred Baker fred at cisco.com
Thu Mar 29 13:37:14 CEST 2012


Personally, I tend to think in terms of the upper bound on goodput, which is

             cwnd * pmtu
     rate = -------------
                 rtt

Yes, actual goodput measured over the life of the session is a little less as described in the equation. In samples I have taken, my observation is that there might be hundreds to thousands of RTTs, and we drop a single digit number of packets - on the order of 1% of the RTTs have an actual throughput rate that differs from the upper bound. To my small mind, the impact of competing with a variable amount of competitive traffic has a much larger effect on goodput than loss.

YMMV

On Mar 29, 2012, at 1:04 PM, Harald Alvestrand wrote:

> I did some extremely rough numerical experiments with the TCP throughput algorithm.
> 
> Results for TCP throughput in bits/sec at MSS=1440 bytes at various loss rates:
> 
> 0.001% loss: Throughput 4.5 Mbits/sec (HD can survive)
> 0.01% loss: Throughput 1.4 Mbits/sec
> 0.1% loss: Throughput 458 Kbits/sec (VGA can survive)
> 1% loss: Throughput 144 Kbits/sec (good audio can survive)
> 10% loss: Throughput 43 Kbits/sec (crappy audio can survive)
> 
> These are stable in the first 2 digits over a large range of RTT (1 ms to 100 ms).
> 
> Interesting numerical result: In all cases, the second term of the TCP throughput denominator is less than 1% of the first term, so a reasonable approximation is:
> 
> T = s / sqrt(p * 2/3)
> 
> That's a simple formula.
> 
>                 Harald
> 
> _______________________________________________
> Rtp-congestion mailing list
> Rtp-congestion at alvestrand.no
> http://www.alvestrand.no/mailman/listinfo/rtp-congestion



More information about the Rtp-congestion mailing list