Subject: Re: TCP/Westwood+ support.
To: Kentaro A. Kurahone <firstname.lastname@example.org>
From: Charles M. Hannum <email@example.com>
Date: 01/03/2005 17:11:35
> if (tp->snd_cwnd > ssthresh)
> tp->snd_cwnd = ssthresh;
> * Do the fast retransmit.
> tp->snd_recover = tp->snd_max;
> TCP_TIMER_DISARM(tp, TCPT_REXMT);
> tp->t_rtttime = 0;
> tp->snd_nxt = th->th_ack;
> (void) tcp_output(tp);
> if (SEQ_GT(onxt, tp->snd_nxt))
> tp->snd_nxt = onxt;
Whoops, I'm on crack. You do need to do the two separate settings of
snd_cwnd, like in the Reno code, to make sure you only send one packet.
OTOH, you certainly don't need to calculate the Reno ssthresh here, like you