The Slides from Robert Watson's networking talk at MeetBSD 2008 would make the start of a nice TCP chapter to the Developer's Handbook. This should probably go in the Interprocess Communication <part> of the book. Robert is exporting the diagrams from his slides into EPS so they could be used for this purpose. If someone has time to work with Robert, and to a lesser extent, myself, I think this would be a great addition to our online documentation corpus.
The arrival of high CPU core density, with commodity quad-core notebooks and 32-core servers, combined with 10gbps networking have transformed network design principles for operating systems. This talk will describe changes in the FreeBSD 6.x, 7.x, and forthcoming 8.x network stacks required to exploit multiple cores and serve 10gbps networks. The goal of the session will be to introduce the audience to general strategies used to improve performance, their rationales, and their impact on applications and users:
Introduction to the SMPng Project and the follow-on Netperf Project
Workloads and performance measurement
Efficient primitives to support modern network stacks
Multi-core and cache-aware network memory allocator
Fine-grained network stack locking
Load-balancing and contention-avoidance across multiple CPUs
CPU affinity for network stack data structures
TCP performance enhancements including TSO, LRO, and TOE
Zero-copy Berkely Packet Filter (BPF) buffers
Direct network stack dispatch from interrupt handlers
Multiple input and output queues
Take the content from those slides, mark it up in DocBook, and submit it as a new chapter to the developers handbook covering TCP.
For bugs matching the following criteria:
Status: In Progress Changed: (is less than) 2014-06-01
Reset to default assignee and clear in-progress tags.
Mail being skipped