TGEP (TCP goodput estimation program): a fluid simulator for Reno TCP

Author: Nedo Celandroni

Date: 2004

License: MIT

Source: TGEP.nb (20 KB)

 

TGEP is written in the Mathematica language. It emulates the behaviour of one or more long-lived connections sharing a long fat pipe, that is, a link with high delay-bandwidth product (10 segments at least) preceded by a buffer.

The buffer has capacity B and the transmission rate of the bottleneck link is μ segments/s. The complete round-trip time is the sum of the link latency ll and the segment service time: τ = ll + 1/μ. The normalized buffer size is defined as β = B/(μτ).

Given the number of connections nc sharing a link of capacity μ [segments/s], the segment loss rate q (binomial distribution), the normalised buffer size β, the link latency ll and the number b of segments acknowledged by each ACK, TGEP estimates the long-term goodput within a chosen confidence interval at a chosen confidence level.

TGEP does not model TCP timeouts nor does it model the behaviour of Reno TCP when packet losses are spaced less than τ. It is very accurate provided that the random loss rate q is << 1, which is the significant case for a high delay-bandwidth product.