From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-34-ewr.dyndns.com (mxout-133-ewr.mailhop.org [216.146.33.133]) by lists.bufferbloat.net (Postfix) with ESMTP id 16ACF2E0613 for ; Fri, 4 Feb 2011 09:33:35 -0800 (PST) Received: from scan-31-ewr.mailhop.org (scan-31-ewr.local [10.0.141.237]) by mail-34-ewr.dyndns.com (Postfix) with ESMTP id 1F4F770D23C for ; Fri, 4 Feb 2011 17:33:33 +0000 (UTC) X-Spam-Score: 0.0 () X-Mail-Handler: MailHop by DynDNS X-Originating-IP: 213.186.56.95 Received: from witko.kerneis.info (witko.kerneis.info [213.186.56.95]) by mail-34-ewr.dyndns.com (Postfix) with ESMTP id EC13370D1AE for ; Fri, 4 Feb 2011 17:33:22 +0000 (UTC) Received: from bob75-11-78-249-231-16.fbx.proxad.net ([78.249.231.16] helo=trurl.pps.jussieu.fr) by witko.kerneis.info with esmtpsa (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1PlPX7-0001mT-Ij; Fri, 04 Feb 2011 18:33:21 +0100 Received: from jch by trurl.pps.jussieu.fr with local (Exim 4.72) (envelope-from ) id 1PlPX1-0001Lz-LK; Fri, 04 Feb 2011 18:33:15 +0100 From: Juliusz Chroboczek To: Jim Gettys References: <87k4hgdte9.fsf@trurl.pps.jussieu.fr> <4D4C05A3.3000901@freedesktop.org> Date: Fri, 04 Feb 2011 18:33:15 +0100 In-Reply-To: <4D4C05A3.3000901@freedesktop.org> (Jim Gettys's message of "Fri, 04 Feb 2011 08:56:51 -0500") Message-ID: <871v3nemck.fsf_-_@trurl.pps.jussieu.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SA-Exim-Connect-IP: 78.249.231.16 X-SA-Exim-Mail-From: jch@pps.jussieu.fr X-SA-Exim-Scanned: No (on witko.kerneis.info); SAEximRunCond expanded to false Cc: bloat@lists.bufferbloat.net Subject: [Bloat] Buffer bloat at the sender [was: About Stochastic Fair Blue (SFB)] X-BeenThere: bloat@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: General list for discussing Bufferbloat List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Feb 2011 17:33:36 -0000 > Juliusz, have you thought about the host case at all? > One of the places we're getting insane buffering is in the operating > systems themselves (e.g. the experiment I did with a 100Mbps > switch). Yes. You have three to four layers of buffering: (1) the device driver's buffer; (2) the packet scheduler's buffer; (3) TCP's buffer; (4) the application's buffer. It will come as no surprise to the readers of this list that (1) and (2) are usually too large. For example, (1) the ath9k driver has a buffer of 200 packets; and (2) the default scheduler queue is 1000 packets (!). > My intuition is that we have to do AQM in hosts, not just routers. Hmm... I would argue that the sending host is somewhat easier than the intermediate router. In the sender, the driver/packet scheduler can apply backpressure to the transport layer, to cause it to slow down without the need for the lengthy feedback loop that dropping/delaying a packet in an intermediate router has to rely on [1]. Unfortunately, at least under Linux, most drivers do not apply backpressure correctly. Markus Kittenberger has recently determined [2] that among b43-legacy, ath5k, ath9k and madwifi, only the former two do the right thing. --Juliusz [1] Now why did we give up on source quench again? [2] http://article.gmane.org/gmane.network.olsr.user/4264