From owner-cvs-all Wed Jul 17 22: 6:41 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A7FA37B400; Wed, 17 Jul 2002 22:06:36 -0700 (PDT) Received: from iguana.icir.org (iguana.icir.org [192.150.187.36]) by mx1.FreeBSD.org (Postfix) with ESMTP id 32AF543E6A; Wed, 17 Jul 2002 22:06:36 -0700 (PDT) (envelope-from rizzo@iguana.icir.org) Received: (from rizzo@localhost) by iguana.icir.org (8.11.6/8.11.3) id g6I56Uh17817; Wed, 17 Jul 2002 22:06:30 -0700 (PDT) (envelope-from rizzo) Date: Wed, 17 Jul 2002 22:06:30 -0700 From: Luigi Rizzo To: Matthew Dillon Cc: Mike Silbersack , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/netinet tcp_timer.h Message-ID: <20020717220630.A17698@iguana.icir.org> References: <20020717220320.F83856-100000@patrocles.silby.com> <200207180445.g6I4jkD4006497@apollo.backplane.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <200207180445.g6I4jkD4006497@apollo.backplane.com>; from dillon@apollo.backplane.com on Wed, Jul 17, 2002 at 09:45:46PM -0700 Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Wed, Jul 17, 2002 at 09:45:46PM -0700, Matthew Dillon wrote: > Ok, how about this: > > #define TCPTV_MIN ( hz / 50 <= 3 ? 3 : hz / 50 ) /* minimum allowable value */ > > 20 milliseconds or 3 ticks, whichever is greater. The idea > being that 20 ms compensates for operating system variability > and/or polling issues. as someone mentioned, one big source of variability in RTT measurements are delayed acks, which depend on the other side. I think that it is nice to be able to control the min. timeout, but you should put it into a sysctl variable, and use a very conservative value (200...1000)ms as default. You can handle it in a way similar to sched_quantum, so you read/write it in terms of fractions of second but the internal value is stored in ticks, and you can apply some consistency checks on the values passed by userland. What is the point of recomputing hz/50 all the times? just a side comment -- "polling issues" are resolved within 1 tick, but 1 tick on the sender side, so local HZ values do not count. cheers luigi To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message