[Iccrg] CUBIC congestion control module for FreeBSD

Lawrence Stewart lastewart at swin.edu.au
Sat Sep 19 00:46:43 BST 2009

Hi All,

Late last year I wrote to the list with some feedback [1] on the CUBIC 
draft, based on my work hacking on a clean-room implementation of CUBIC 
for FreeBSD. I recently got around to cleaning up the code and releasing 
it after numerous distractions since that correspondence with the list. 
I also spoke at the IETF 75 ICCRG meeting in Stockholm [2] about some of 
this work and various thoughts/observations.

The code was developed to fully implement the algorithm specified in 
[3], and my initial testing indicates the code is working in accordance 
with the spec. Directly comparing the FreeBSD CUBIC dynamics to those 
seen with Linux reveals some interesting differences, which would be 
good to investigate further.

The FreeBSD modular congestion control framework and HTCP/CUBIC 
congestion control modules are available as patches from [4]. The work 
is being carried out in the main FreeBSD Subversion repository, 
available from [5,6], which is where you can always find the latest code.

The work will be incorporated into the mainline FreeBSD source tree in 
the not too distant future. In the meantime, I encourage people to 
experiment with the code and other tools available from [4], and welcome 
any feedback, comments and suggestions.


[1] http://oakham.cs.ucl.ac.uk/pipermail/iccrg/2008-October/000580.html

[2] http://www.ietf.org/proceedings/75/slides/iccrg-3.pdf

[3] http://tools.ietf.org/id/draft-rhee-tcpm-cubic-02.txt

[4] http://caia.swin.edu.au/urp/newtcp/tools.html

[5] http://svn.freebsd.org/viewvc/base/projects/tcp_cc_8.x/

[6] http://svn.freebsd.org/viewvc/base/projects/tcp_cc_7.x/

More information about the Iccrg mailing list