Subject: Re: NetBSD SACK, Rate-Halving and ECN
To: Rui Paulo <phlox-netbsd-net@fnop.net>
From: Matt Mathis <mathis@psc.edu>
List: tech-net
Date: 10/30/2004 12:04:08
Be aware that our SACK code predates NewReno, ECN and other improvements to TCP 
congestion control.  It is not too hard to get our patch to go into current 
kernels, but as a consequence of dueling algorithms, the resulting code is 
definitely not correct.  (or so we have been told).

Also Rate-Halving has proven to have some problematic corner cases, which is 
why the work was never finished....  Although I still believe that it is the 
correct (probably even optimal) algorithm if the network it the bottleneck, it 
does the wrong thing if the window is limited by something else, such as disks.

It pains me greatly that NetBSD is now a non-starter for a number of key 
applications, because the TCP implementation does not support SACK.

We have not worked on NetBSD for more than 5 years now, and can not take up a 
serious new development project. It would be a good thing for somebody in the 
NetBSD community to take this up.   I would be happy to offer advice and help 
any way I can, short of hacking the code myself.

Thanks,
--MM--
-------------------------------------------
Matt Mathis      http://www.psc.edu/~mathis
Work:412.268.3319    Home/Cell:412.654.7529
-------------------------------------------
Evil is defined by people who think they know
"The Truth" and use force to apply it to others.

On Sat, 30 Oct 2004, Rui Paulo wrote:
5~
> Greetings,
> After reading a mail about ECN support under NetBSD mailing lists I
> found SACK, RH (Rate-Halving) and ECN implementations at the Pittsburgh
> Supercomputer Center (Advanced Networking group). Despite the fact that
> they are really OLD, I think we can use them and incorporate them in
> the tree if it's worth.
>
> http://www.psc.edu/networking/projects/tcp/
>
> Regards.
>
> --
> Rui Paulo                          "Simplicity is the ultimate sophistication."
>                                      -- Leonardo da Vinci
>