[e2e] Are Packet Trains / Packet Bursts a Problem in TCP?

Craig Partridge craig at aland.bbn.com
Tue Sep 26 10:29:31 PDT 2006


In message <8f884bb031b3678c4b56874456ec25aa at mac.com>, rick jones writes:

>Maybe I'm trying to pick a nit, but was the underlying problem that it 
>was bursty in the initial transmission, or was the underlying problem 
>really that it continued to retransmit the bursts, without any (IIRC) 
>exponential backoff?

Hi Rick:

Excellent question, on which my memory is imperfect.  Here's my best
recollection.

Pre-1988 BSD TCP (and, indeed, I believe all TCPs) would start by sending
as close to an entire window's worth of traffic as they could (e.g. as fast
as the application could stuff the transmission queue, data got sent up
to the window size).

In case of loss, TCP retransmitted only the missing segments, but as soon as all
losses were recovered from, TCP resumed hammering full bursts.  So TCP was
not go-back-N, but had a sort of strange burstiness of the form:

    initial burst -- causing loss -- followed by recovery -- followed by
    new burst

Others who were there, please correct, update as appropriate.

Thanks!

Craig



More information about the end2end-interest mailing list