svn commit: r211312 - stable/8/sys/netinet

Andre Oppermann andre at FreeBSD.org
Sat Aug 14 19:36:49 UTC 2010


Author: andre
Date: Sat Aug 14 19:36:48 2010
New Revision: 211312
URL: http://svn.freebsd.org/changeset/base/211312

Log:
  MFC r210666:
  
    Fix a bug in syncache where the initial CWND for new incoming connections
    was limited to one segment under the faulty assumption of a retransmit.
    Due to this the opportunity to initialize the increased congestion window
    according to RFC3390 was missed.

Modified:
  stable/8/sys/netinet/tcp_syncache.c

Modified: stable/8/sys/netinet/tcp_syncache.c
==============================================================================
--- stable/8/sys/netinet/tcp_syncache.c	Sat Aug 14 18:58:05 2010	(r211311)
+++ stable/8/sys/netinet/tcp_syncache.c	Sat Aug 14 19:36:48 2010	(r211312)
@@ -804,8 +804,9 @@ syncache_socket(struct syncache *sc, str
 
 	/*
 	 * If the SYN,ACK was retransmitted, reset cwnd to 1 segment.
+	 * NB: sc_rxmits counts all SYN,ACK transmits, not just retransmits.
 	 */
-	if (sc->sc_rxmits)
+	if (sc->sc_rxmits > 1)
 		tp->snd_cwnd = tp->t_maxseg;
 	tcp_timer_activate(tp, TT_KEEP, tcp_keepinit);
 


More information about the svn-src-stable-8 mailing list