From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-12-ewr.dyndns.com (mxout-068-ewr.mailhop.org [216.146.33.68]) by lists.bufferbloat.net (Postfix) with ESMTP id 9DCA72E00FC for ; Sun, 30 Jan 2011 18:44:53 -0800 (PST) Received: from scan-11-ewr.mailhop.org (scan-11-ewr.local [10.0.141.229]) by mail-12-ewr.dyndns.com (Postfix) with ESMTP id A8DA793392F for ; Mon, 31 Jan 2011 02:44:52 +0000 (UTC) X-Spam-Score: 0.1 () X-Mail-Handler: MailHop by DynDNS X-Originating-IP: 75.145.127.229 Received: from gw.co.teklibre.org (75-145-127-229-Colorado.hfc.comcastbusiness.net [75.145.127.229]) by mail-12-ewr.dyndns.com (Postfix) with ESMTP id C7437933465 for ; Mon, 31 Jan 2011 02:44:47 +0000 (UTC) Received: from cruithne.co.teklibre.org (unknown [IPv6:2002:4b91:7fe5:1::20]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "cruithne.co.teklibre.org", Issuer "CA Cert Signing Authority" (verified OK)) by gw.co.teklibre.org (Postfix) with ESMTPS id 3B3CF5E86A for ; Sun, 30 Jan 2011 19:44:47 -0700 (MST) Received: by cruithne.co.teklibre.org (Postfix, from userid 1000) id A993B122124; Sun, 30 Jan 2011 19:44:46 -0700 (MST) From: d@taht.net (Dave =?utf-8?Q?T=C3=A4ht?=) To: bloat-devel@lists.bufferbloat.net Subject: First Post! Organization: Teklibre - http://www.teklibre.com Date: Sun, 30 Jan 2011 19:44:46 -0700 Message-ID: <87zkqhdc69.fsf@cruithne.co.teklibre.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailman-Approved-At: Sun, 30 Jan 2011 18:46:37 -0800 X-BeenThere: bloat-devel@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Developers working on AQM, device drivers, and networking stacks" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Jan 2011 02:44:54 -0000 I've assembled a list of the bloated device drivers on just the gear I have and can test against. It's at: http://www.bufferbloat.net/projects/bloat/wiki/Bloated_Driver_List I'd like to see people poking into the drivers they have available either via source code analysis or via empirical means, and adding to this list. I was astonished at how easy it was to take a first pass at the bufferbloat problem in the Linux source tree. All you have to do is look for TX_RING or TX_QUEUE in the device's header files, and the parameters in place leap out at you. Any number bigger than one is suspect, and my working definition of "truly bloated" is currently 32, based on the analysis performed in this paper: http://www.cs.clemson.edu/~jmarty/papers/PID1154937.pdf So I'm trying to tackle the low hanging fruit by aiming at the drivers I have, and can test, and trying the safest looking minimum value, and trying to come up with better-than-adhoc testing tools to confirm the results. I took a first pass at two of the drivers in my stack and was really pleased with the results. VOIP became feasible with the ath9k - still not ideal as I ended up moving the bottleneck to the ethernet side and the card in my laptop! One hard thing about bufferbloat is as soon as you reduce it somewhere on the path, it crops up elsewhere. In helping getting bufferbloat.net up I've been distracted from this work. I'm looking forward to others poking into the problem(s), and coming up with a good way of getting patches out the door. Many of these patches are going to be *trivial*. Others, like coming up with a good wireless qdisc, or adding more knobs to twist, or statistics to gather - are going to require work! At the moment I'm open to ideas as to how to get more patches out there, tested and accepted, and am reluctant to go around forking trees. While it is VERY important to improve latency, I strongly suspect that patches reducing the dma tx ring to its ideal (1) will hurt peak throughput. Finding reasonable compromises between latency and throughput would be good. What sorts of devices and OSes are y'all working on? It's extremely important to be trying to work across all OSes and devices. As for me... I primarily work on x86/64, arm, and mips based Linux based systems the days, openwrt on the embedded side, ubuntu/redhat on the server/side. I'm pretty google-able, but I note that for most of my life I've been under gnarly NDAs and haven't been able to work in public like this. This is the first time, ever, I've got a "first post" on a mailing list or web site, not that it matters to me. In keeping with first post tradition, I was thinking of keeping this email entirely content-free, but couldn't do that. -- Dave Taht http://nex-6.taht.net