diff options
| author | Jonathan Lemon <jlemon@FreeBSD.org> | 2000-11-04 15:59:39 +0000 |
|---|---|---|
| committer | Jonathan Lemon <jlemon@FreeBSD.org> | 2000-11-04 15:59:39 +0000 |
| commit | 8735719e4359369d060031e43c33a4154b862cc6 (patch) | |
| tree | c09661268b59e5b8cb9787af8eb50a1a442aa1f8 /sys/netinet/tcp_input.c | |
| parent | f18c4450ac639a3c09c578ab87febd1fb6a50a80 (diff) | |
Notes
Diffstat (limited to 'sys/netinet/tcp_input.c')
| -rw-r--r-- | sys/netinet/tcp_input.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index f49a7f429d26..1f7d0fb2776b 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -1935,7 +1935,12 @@ process_ACK: if (cw > tp->snd_ssthresh) incr = incr * incr / cw; - if (tcp_do_newreno == 0 || SEQ_GEQ(th->th_ack, tp->snd_recover)) + /* + * If t_dupacks != 0 here, it indicates that we are still + * in NewReno fast recovery mode, so we leave the congestion + * window alone. + */ + if (tcp_do_newreno == 0 || tp->t_dupacks == 0) tp->snd_cwnd = min(cw + incr,TCP_MAXWIN<<tp->snd_scale); } if (acked > so->so_snd.sb_cc) { |
