From owner-freebsd-net@FreeBSD.ORG Tue Feb 5 17:44:33 2013 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 18ECDAA4 for ; Tue, 5 Feb 2013 17:44:33 +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 80C0CC37 for ; Tue, 5 Feb 2013 17:44:32 +0000 (UTC) Received: (qmail 53944 invoked from network); 5 Feb 2013 19:03:25 -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 ; 5 Feb 2013 19:03:25 -0000 Message-ID: <511144FB.50807@freebsd.org> Date: Tue, 05 Feb 2013 18:44:27 +0100 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: John Baldwin Subject: Re: [PATCH] Add a new TCP_IGNOREIDLE socket option References: <201301221511.02496.jhb@freebsd.org> <201301301158.33838.jhb@freebsd.org> <510957B9.8070203@freebsd.org> <201302051211.43345.jhb@freebsd.org> In-Reply-To: <201302051211.43345.jhb@freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Sepherosa Ziehau , freebsd-net@freebsd.org, Bjoern Zeeb X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.14 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, 05 Feb 2013 17:44:33 -0000 On 05.02.2013 18:11, John Baldwin wrote: > On Wednesday, January 30, 2013 12:26:17 pm Andre Oppermann wrote: >> You can simply create your own congestion control algorithm with only the >> restart window changed. See (pseudo) code below. BTW, I just noticed that >> the other cc algos don't do not reset the idle window. > > *sigh* I am fully competent at maintaining my own local changes. The point > was to share this so that other people with similar workloads could make use > of it. Also, a custom CC algo is not the right approach as we would want this > change regardless of the CC algo used for handling non-idle periods (so that > this is an orthogonal knob). Linux also makes this an orthogonal knob rather > than requiring a separate CC algo. If everything Linux does is good, then go ahead and commit it. Discussing this change further then is pointless. I don't mind too much and I have stated my case why I think it's the wrong thing to do. I would prefer to encapsulate it into its own not-so-much-congestion-management algorithm so you can eventually do other tweaks as well like more aggressive loss recovery which would fit your objective as well. Since you have to modify your app anyways to do the sockopt call this seems a more complete solution to me. At least better than to do a non-portable hack that violates one of the most fundamental TCP concepts. -- Andre