From owner-freebsd-net@FreeBSD.ORG Tue Nov 2 22:30:16 2010 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0DAEA10656E0 for ; Tue, 2 Nov 2010 22:30:16 +0000 (UTC) (envelope-from andre@freebsd.org) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id D39F28FC14 for ; Tue, 2 Nov 2010 22:30:08 +0000 (UTC) Received: (qmail 1343 invoked from network); 2 Nov 2010 22:15:52 -0000 Received: from localhost (HELO [127.0.0.1]) ([127.0.0.1]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 2 Nov 2010 22:15:52 -0000 Message-ID: <4CD090EF.4020402@freebsd.org> Date: Tue, 02 Nov 2010 23:30:07 +0100 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.12) Gecko/20101027 Thunderbird/3.1.6 MIME-Version: 1.0 To: Maxim Dounin , Lawrence Stewart References: <20100512124702.GJ2679@rambler-co.ru> <20100713140051.GV99657@mdounin.ru> <4C5BCE48.5070504@freebsd.org> <20100913172453.GG99657@mdounin.ru> <20100927081217.GM44164@mdounin.ru> <4CA09987.8020205@freebsd.org> <20101102001134.GP44164@mdounin.ru> In-Reply-To: <20101102001134.GP44164@mdounin.ru> Content-Type: multipart/mixed; boundary="------------020604060703050200000809" Cc: freebsd-net@freebsd.org, Igor Sysoev Subject: Re: net.inet.tcp.slowstart_flightsize in 8-STABLE 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: Tue, 02 Nov 2010 22:30:16 -0000 This is a multi-part message in MIME format. --------------020604060703050200000809 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 02.11.2010 01:11, Maxim Dounin wrote: > Hello! > > On Mon, Sep 27, 2010 at 03:17:59PM +0200, Andre Oppermann wrote: > >> On 27.09.2010 10:12, Maxim Dounin wrote: >>> Hello! >>> >>> On Mon, Sep 13, 2010 at 09:24:53PM +0400, Maxim Dounin wrote: >>> >>> [...] >>> >>>> Andre, could you please take a look at one more patch as well? >>>> >>>> Igor reported that it still sees 100ms delays with rfc3465 turned >>>> on, and it turns out to be similar issue (setting cwnd to 1*MSS) >>>> for hosts found in hostcache. >>>> >>>> The problem with setting cwnd from hostcache was already reported >>>> here: >>>> >>>> http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/92690 >>>> http://lists.freebsd.org/pipermail/freebsd-net/2007-July/014780.html >>>> >>>> As using larger cwnd from hostcache may cause problems on >>>> congested links (see second thread) I changed code to only use >>>> cached cwnd as an upper bound for cwnd (instead of fixing current >>>> code). This is also in-line with what we do on connection >>>> restarts. >>>> >>>> We may later consider re-adding usage of larger cwnd from >>>> hostcache. But I believe it should be done carefully and >>>> probably behind sysctl, off by default. >>> >>> Ping. >> >> Thanks for the reminder. I'll disable priming CWND from hostcache. > > Ping again. > > I would like to see the patch in question[1] committed and MFC'ed > somewhere before 8.2. > > Andre, if you are just too busy to do it yourself - please say so, > I'll ask somebody else to commit it. Thanks for the reminder. After EuroBSDCon Developer Summit I was busy with other work and most of my tcp work was stalled due to review bandwidth issues. Lawrence, could you please spare a few seconds and take a quick look at the attached patch? -- Andre --------------020604060703050200000809 Content-Type: text/plain; name="tcp_input-nometricscwnd.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="tcp_input-nometricscwnd.diff" Index: tcp_input.c =================================================================== --- tcp_input.c (revision 214692) +++ tcp_input.c (working copy) @@ -3340,10 +3340,14 @@ * hostcache when cwnd collapses so next connection doesn't * overloads the path again. * + * XXXAO: Initializing the CWND from the hostcache is broken + * and in its current form not RFC conformant. It is disabled + * until fixed or removed entirely. + * * RFC3390 says only do this if SYN or SYN/ACK didn't got lost. * We currently check only in syncache_socket for that. */ -#define TCP_METRICS_CWND +/* #define TCP_METRICS_CWND */ #ifdef TCP_METRICS_CWND if (metrics.rmx_cwnd) tp->snd_cwnd = max(mss, --------------020604060703050200000809--