CFT: TCP Appropriate Byte Counting (RFC3465) Patch

Lawrence Stewart lastewart at swin.edu.au
Sun Dec 28 12:33:47 UTC 2008


Hi all,

The first chunk of work from the FreeBSD Foundation sponsored "Improving 
the FreeBSD TCP Implementation" project [1] is ready for some public 
review and testing. Being my first project related email, I'll point out 
to anyone interested that you can track the overall project via [2,3].

TCP appropriate byte counting (ABC) [4] addresses a congestion control 
related issue introduced by the early TCP specifications. It suggests 
increasing the congestion window by the number of bytes acknowledged by 
a TCP ACK, as opposed to the current scheme which relies on an 
approximation driven by ACK clocking.

ABC will most commonly benefit FreeBSD by improving TCP sender 
performance when communicating with a delayed acknowledgement enabled 
receiver.

The patch against 8-CURRENT svn rev 186471 can be found at [5] along 
with a readme [6] covering all the necessary juicy bits in more detail.

I welcome all feedback and reports of both success or failure. I'm 
currently working on analysing the small-scale dynamic behaviour effects 
of the patch in detail, so I'm not asking you to go into minute detail 
with your testing.

I'd like to hear that running with an ABC enabled kernel allows TCP to 
work as it did previously and is not negatively impacting throughput for 
any particular TCP workloads you have available for testing.

I aim to commit this within the next week or so assuming nothing bad 
turns up in this round of testing.


Cheers,
Lawrence

http://caia.swin.edu.au/



[1] http://www.freebsdfoundation.org/project%20announcements.shtml#Lawrence

[2] http://svn.freebsd.org/viewvc/base/projects/tcp_ffcaia2008_8.x/

[3] http://lists.freebsd.org/mailman/listinfo/svn-src-projects

[4] http://www.rfc-editor.org/rfc/rfc3465.txt

[5] 
http://people.freebsd.org/~lstewart/patches/tcp_ffcaia2008/tcp_abc_8.x.r186471.patch

[6] 
http://people.freebsd.org/~lstewart/patches/tcp_ffcaia2008/tcp_abc_8.x.r186471.patch.readme


More information about the freebsd-net mailing list