From owner-freebsd-net@FreeBSD.ORG Wed Sep 26 18:55:14 2012 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CB1101065670 for ; Wed, 26 Sep 2012 18:55:14 +0000 (UTC) (envelope-from oppermann@networx.ch) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id 2A9028FC18 for ; Wed, 26 Sep 2012 18:55:13 +0000 (UTC) Received: (qmail 20239 invoked from network); 26 Sep 2012 20:38:05 -0000 Received: from c00l3r.networx.ch (HELO [127.0.0.1]) ([62.48.2.2]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 26 Sep 2012 20:38:05 -0000 Message-ID: <50634F85.50901@networx.ch> Date: Wed, 26 Sep 2012 20:55:01 +0200 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120907 Thunderbird/15.0.1 MIME-Version: 1.0 To: Andrey Zonov References: <505AC500.6060903@FreeBSD.org> <505F2C2D.5050904@FreeBSD.org> In-Reply-To: <505F2C2D.5050904@FreeBSD.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" , "Eggert, Lars" Subject: Re: [patch] sysctls for TCP timers X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Sep 2012 18:55:14 -0000 On 23.09.2012 17:35, Andrey Zonov wrote: > On 9/20/12 11:35 AM, Eggert, Lars wrote: >> Hi, >> >> On Sep 20, 2012, at 9:25, Andrey Zonov wrote: >>> Some of them may be read google's article about tuning TCP parameters >>> [1]. I convert most of TCP timers to sysctls [2] and we are using this >>> patch for few months. We tuned net.inet.tcp.rtobase and >>> net.inet.tcp.syncache.rexmttime and it gives good results (especially in >>> conjunction with cc_htcp(4)). >> >> can you share some measurements that quantify the results? >> > > When we set net.inet.tcp.syncache.rexmttime=200 and > net.inet.tcp.syncache.rexmtlimit=7 for our external web service, the > number of duplicated SYN was reduced in four times. This isn't surprising. You're simply trading retransmits by the client with retransmits by the server. Whether this is within the overall packet conservation principle is not clear. On the timeline it may be an advantage. I'm not comfortable with the rather low retransmit time you've chosen here. Considering higher RTT's (e.g. Hawaii or JP/CN) and the bufferbloat problem this may be too low. When it is to be tuned, then something in the range of 500-1000ms may be more realistic to avoid spurious retransmits. When a SYN or SYN/ACK retransmit happens, the initial CWND should be reduced per the applicable RFC's as this indicates packet loss on the downstream. -- Andre