svn commit: r211313 - stable/7/sys/netinet

Andre Oppermann andre at FreeBSD.org
Sat Aug 14 20:03:33 UTC 2010


Author: andre
Date: Sat Aug 14 20:03:32 2010
New Revision: 211313
URL: http://svn.freebsd.org/changeset/base/211313

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/7/sys/netinet/tcp_syncache.c

Modified: stable/7/sys/netinet/tcp_syncache.c
==============================================================================
--- stable/7/sys/netinet/tcp_syncache.c	Sat Aug 14 19:36:48 2010	(r211312)
+++ stable/7/sys/netinet/tcp_syncache.c	Sat Aug 14 20:03:32 2010	(r211313)
@@ -821,8 +821,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-all mailing list