From owner-freebsd-net@FreeBSD.ORG Tue Dec 18 19:21:29 2007 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 F36A716A419; Tue, 18 Dec 2007 19:21:28 +0000 (UTC) (envelope-from fred@cisco.com) Received: from sj-iport-2.cisco.com (sj-iport-2-in.cisco.com [171.71.176.71]) by mx1.freebsd.org (Postfix) with ESMTP id B57DF13C44B; Tue, 18 Dec 2007 19:21:28 +0000 (UTC) (envelope-from fred@cisco.com) Received: from sj-dkim-2.cisco.com ([171.71.179.186]) by sj-iport-2.cisco.com with ESMTP; 18 Dec 2007 10:53:41 -0800 Received: from sj-core-1.cisco.com (sj-core-1.cisco.com [171.71.177.237]) by sj-dkim-2.cisco.com (8.12.11/8.12.11) with ESMTP id lBIIrfcu032120; Tue, 18 Dec 2007 10:53:41 -0800 Received: from xbh-sjc-211.amer.cisco.com (xbh-sjc-211.cisco.com [171.70.151.144]) by sj-core-1.cisco.com (8.12.10/8.12.6) with ESMTP id lBIIrC43016030; Tue, 18 Dec 2007 18:53:20 GMT Received: from xfe-sjc-211.amer.cisco.com ([171.70.151.174]) by xbh-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Tue, 18 Dec 2007 10:53:19 -0800 Received: from [10.32.244.220] ([10.32.244.220]) by xfe-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Tue, 18 Dec 2007 10:53:18 -0800 In-Reply-To: <4767C338.4070709@freebsd.org> References: <47675291.5070101@swin.edu.au> <4767C338.4070709@freebsd.org> Mime-Version: 1.0 (Apple Message framework v752.3) X-Gpgmail-State: !signed Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <7B13FFEE-F69D-4EBA-B734-356D8E63FDC7@cisco.com> Content-Transfer-Encoding: 7bit From: Fred Baker Date: Tue, 18 Dec 2007 10:53:18 -0800 To: Lawrence Stewart , Andre Oppermann , James Healy X-Mailer: Apple Mail (2.752.3) X-OriginalArrivalTime: 18 Dec 2007 18:53:18.0856 (UTC) FILETIME=[41284080:01C841A7] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; l=2180; t=1198004021; x=1198868021; c=relaxed/simple; s=sjdkim2002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=fred@cisco.com; z=From:=20Fred=20Baker=20 |Subject:=20Re=3A=20Modular/Pluggable=20TCP=20Congestion=20 Control=20for=20FreeBSD |Sender:=20; bh=PrIDNDY5OOtY96ZdDKlXD+LYA1mBGPx6zMFQfBB4M28=; b=c1ZdDhmlZgPbfNtHDkMmW3oByPaNB5QblYWwejzh5XG1lV4VVT2cKwyp/9 E6+YEAEVaxP1Fc5tMJqzgUOcfCwyHfHn2O/KsXG1yFzXuisFunFcpZxbPl0X t/4U+JwarM; Authentication-Results: sj-dkim-2; header.From=fred@cisco.com; dkim=pass ( sig from cisco.com/sjdkim2002 verified; ); X-Mailman-Approved-At: Tue, 18 Dec 2007 21:08:26 +0000 Cc: grenville armitage , freebsd-net@freebsd.org, Iccrg@cs.ucl.ac.uk, Randall Stewart , tmrg-interest@ICSI.Berkeley.EDU, end2end-interest@postel.org, David Malone , Douglas Leith , Robert Shorten , Larry Dunn Subject: Re: Modular/Pluggable TCP Congestion Control for FreeBSD 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, 18 Dec 2007 19:21:29 -0000 Thanks to each of you. On Dec 18, 2007, at 4:55 AM, Andre Oppermann wrote: > Lawrence Stewart wrote: >> Hi all, >> We've been involved in a research project to implement and test an >> emerging TCP congestion control algorithm under FreeBSD. As a part of >> this, we've put together a patch for FreeBSD 7.0-BETA4 that >> modularises >> the congestion control code in the TCP stack. It allows for new >> congestion control algorithms to be developed as loadable kernel >> modules. >> This improves FreeBSD's usefulness as a TCP research platform and >> makes >> it easier to customise the stack for specific scenarios like high >> bandwidth, long delay paths. >> There is an accompanying technical report "Light-Weight Modular >> TCP Congestion Control for FreeBSD 7" [1] that covers the design, >> features, kernel interface and usage of the framework. Also on our >> website is >> a beta release of a module that implements the H-TCP[2] congestion >> control >> algorithm proposed by the Hamilton Institute. >> We believe that modular congestion control is a worthwhile >> addition to >> FreeBSD. We've performed significant internal testing and there are >> currently no known issues or regressions with the implementation >> compared to a 'vanilla' FreeBSD 7.0-BETA4 kernel. We would welcome >> further review and testing from the wider community in the hope of >> getting this >> patch folded into FreeBSD 8-CURRENT. >> SIFTR [3], our tool for monitoring FreeBSD kernel TCP connection >> state, has also >> received a minor update to v1.1.5, with the addition of 6 new, >> useful variables. >> All code and documentation is available on our website[3]. > > I've started to completely overhaul tcp_input and tcp_output > including separating out the congestion control. Actually it > is similiar to the way you seem to do it. > > A quick glance at your patch shows a couple of style issues > and a complete lack of locking. > > Let me get you a Perforce account so we can develop and complete > this work together. I'll create a Perforce branch and import my > code and work in progress. > > -- > Andre