CAIA's recent work with the FreeBSD operating system's TCP stack revealed a number of areas for potential improvement. The FreeBSD Foundation's call for projects in August 2008 presented an opportunity to address some of the identified issues.
The project addresses three discrete issues:
Improving congestion window handling with RFC 3465 Appropriate Byte Counting. This improves TCP sender performance in many common scenarios and will better facilitate the adoption of next generation congestion control algorithms currently being evaluated within the IRTF/IETF and research communities.
Improving the reassembly queue to provide dynamic tuning on a per connection basis. This will improve system resource utilisation and overall TCP performance, particularly in multi-megabit-per-second environments.
Improving the fine grained TCP analysis and debugging facilities to aid research and development. CAIA's SIFTR tool has proven to be indespensible for our work to date. Integrating similar functionality into the FreeBSD base system will yield further wins for future research and development work.
- Implement TCP Appropriate Byte Counting support for FreeBSD 8.
- Implement per-connection dynamic tuning of the TCP reassembly queue for FreeBSD 8.
- Implement enhanced TCP data logging infrastructure for improved TCP debugging and development capabilities in FreeBSD 8.
- Provide updated/new documentation as appropriate for all developed patches.
- Evaluate and characterise the impact of developed patches in a series of CAIA technical reports.
The project will conclude in July 2009.