Matthew Toseland wrote: > Fast retransmission = If I get acks for 2,3,4 but not 1, then I resend > 1, after X RTTs have elapsed?
TCP fast retransmits 1 when 2,3,4 have been acked, without considering the RTT. The simulator code also checks that 1 was last sent 1.5*RTT+MAX_DELAY seconds ago, but this is just to prevent 1 from being retransmitted again when 5 is acked. > Why would it be more than 4*RTT+MAX_DELAY? Think of a probability distribution with mean m - some part of the tail extends beyond 4*m. The question is, does that part of the tail contain more than 5% of the samples? It depends on the variance. We could change it to 10*RTT+MAX_DELAY, for example, and have a pretty good chance of avoiding unnecessary retransmissions - but the packets that were transmitted would arrive very late. Cheers, Michael