Date: 18 Aug 2002 18:32:33 -0400 From: Joe Marcus Clarke <marcus@marcuscom.com> To: Matt Dillon <dillon@FreeBSD.org> Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/netinet tcp_subr.c tcp_timer.c tcp_timer.h Message-ID: <1029709953.354.7.camel@shumai.marcuscom.com> In-Reply-To: <200208162216.g7GMGd6i085952@freefall.freebsd.org> References: <200208162216.g7GMGd6i085952@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-N8s2wdH6i5hPgdSem7/F Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Fri, 2002-08-16 at 18:16, Matt Dillon wrote: > dillon 2002/08/16 15:16:39 PDT >=20 > Modified files: (Branch: RELENG_4) > sys/netinet tcp_subr.c tcp_timer.c tcp_timer.h=20 > Log: > MFC sysctls to control the TCP retransmit timer. Temporarily default > net.inet.tcp_rexmit_min to 1000ms (1 second) to maintain prior -stable > behavior. The default net.inet.tcp_rexmit_slop (extra time always adde= d to > the timeout calculation) is 200ms, but effectively obscured by the 1000= ms > minimum. Setting net.inet.tcp_rexmit_min to a low value such as 12 wil= l > get you -current's behavior. Matt, maybe I'm missing something, but I find on -stable, net.inet.tcp.rexmit_min is 10 by default, and setting it to 12 has no effect (i.e. keeps the value at 10). net.inet.tcp.rexmit_slop is 200 by default on -stable already. On -CURRENT rexmit_min is 30 by default and rexmit_slop is 200. My test machines are: FreeBSD shumai.marcuscom.com 4.6-STABLE FreeBSD 4.6-STABLE #1: Sun Aug 18 18:14:07 EDT 2002 =20 marcus@shumai.marcuscom.com:/usr/obj/usr/src/sys/SHUMAI i386 and FreeBSD jclarke-pc.cisco.com 5.0-CURRENT FreeBSD 5.0-CURRENT #0: Mon Aug 12 15:14:07 EDT 2002 =20 marcus@jclarke-pc.cisco.com:/usr/obj/usr/src/sys/JCLARKE-PC i386 Joe > =20 > This can be somewhat confusing. The minimum is an unconditional lower = bound > on the retransmit timeout calculation. The slop is unconditionally add= ed > to the retransmit timeout calculation PRIOR to the minimum being enforc= ed. > On faster networks the SRTT calculation becomes less dependable as a me= ans > of preventing unnecessary retransmissions. The best protection against= this > is to use the slop parameter to control your nominal interactive > responsiveness/recovery-base in the face of non-congestion related pack= et > loss (e.g. on a wireless network). > =20 > Generally speaking current RFCs regarding TCP retransmit behavior want > a 1 second minimum, but they are so focused on streaming behavior that = they > completely ignore the disaster this causes on faster ( < 500ms ping ) > connections operating interactively, such as when typing in a remote sh= ell > over a wireless network. Linux uses a far more reasonable 200ms minimu= m > and our -current now does the equivalent (or better) by using 200ms of = slop. > Hopefully -stable will follow with a change to 200ms of slop in the > near future. For the moment, if you care, please set net.inet.tcp.rexm= it_min > to a low value (such as 12) in your /etc/sysctl.conf. > =20 > Revision Changes Path > 1.73.2.27 +3 -1 src/sys/netinet/tcp_subr.c > 1.34.2.13 +8 -0 src/sys/netinet/tcp_timer.c > 1.18.2.1 +15 -3 src/sys/netinet/tcp_timer.h >=20 --=-N8s2wdH6i5hPgdSem7/F Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQA9YCCBb2iPiv4Uz4cRAq16AKCCMAW9Vg8K2WTCgh/13QQUAdNdEQCggzPN Gl3h32psXZ8qv+dqxSnXyNk= =h5/R -----END PGP SIGNATURE----- --=-N8s2wdH6i5hPgdSem7/F-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1029709953.354.7.camel>