Re: comments on draft-ietf-tcpsat-stand-mech-04.txt

Mark Allman <mallman@lerc.nasa.gov> Mon, 22 June 1998 11:58 UTC

Message-Id: <199806221158.HAA03354@guns.lerc.nasa.gov>
To: Vern Paxson <vern@ee.lbl.gov>
From: Mark Allman <mallman@lerc.nasa.gov>
Reply-To: mallman@lerc.nasa.gov
Cc: Spencer Dawkins <Spencer.Dawkins.sdawkins@nt.com>, tcp-over-satellite@achtung.sp.trw.com
Subject: Re: comments on draft-ietf-tcpsat-stand-mech-04.txt
Organization: Late Night Hackers, NASA LeRC, Cleveland, Ohio
Song-Of-The-Day: The Joker
Date: Mon, 22 Jun 1998 07:58:53 -0400
Sender: owner-tcp-over-satellite@achtung.sp.trw.com
Precedence: bulk
Status: RO
Content-Length: 1525
Lines: 28

> Note: one of the arguments for cwnd=4 was that you then can
> retransmit the via fast retransmission instead of timeout, if
> there's loss in the initial window.  *This only works with
> ack-every-packet, which was assumed when making this argument!*

For the larger initial window draft I did some back of the envelope
analysis and a few quick simulations to try to make sure my thinking
was correct.  When IW=4 we can always recover from a single lost
segment with fast retransmit regardless of whether you are using
delayed ACKs or ACK-every-segment.  (The assumption is that the
receiver does not delay dupacks which is the recommended practice
according to RFC 1122).  For instance if the first packet of an
initial window of 4 packets is lost, the remaining 3 packets will
trigger duplicate ACKs (of the SYN) and therefore fast retransmit
will fire.  Now assume the third packet is lost and delayed ACKs are
used...  The first and second packet will trigger an ACK.  Upon
receipt of that ACK the sender will send packets 5, 6 and 7.  Now
there are plenty of packets in the pipe behind the missing segment
to trigger the fast retransmit algorithm.  I went through all single
loss scenarios when we were preparing the I-D and found that fast
retransmit worked in every case regardless of whether delayed ACKs
were employed or not (for IW=4).  For IW=3 fast retransmit works
sometimes (depends on which segments were lost and whether or not
delayed ACKs are being used).  For IW=2 you must rely on the
timeout.

allman