Posted on 1 Comment

Speeding up networking – Van Jacobson’s modest proposal

Van Jacobson… a modest man. But you may know his name from the TCP header compresson, and the traceroute and tcpdump tools. He’s here at LCA 2006, and presented a neat new idea.

As different components of our systems and networks speed up, bottlenecks shift. It is wise to shift processing “outward” as that’s where most of the processing power is. This reduces contention on the systems in the middle. A wise lesson on its own. Scale out.

Back with the original story, (multi-)gigabit ethernet is actually faster than many components of our computers. You can increase bandwidth, but latency becomes a problem. Adding more cores to the computer currently also increases the overhead, it isn’t the solution (on its own).

Jacobson “solves” the problem through a new queueing mechanism in the Linux kernel, basically some minor modifications at the various levels of the network stack. I put “solves” in quotes because of course there’s no final solution. We can merely keep shifting the various boundaries and that’s exacty what Jacobson has done – very simple and elegantly.
The results are impressive and actually significantly reduce the number of lines of code in say the network drivers as functionality is pushed upward and becomes generic (and easier to handle).

Reference:
A modest proposal to help speed up & scale up the linux networking stack – Van Jacobson.

Posted on 1 Comment

1 thought on “Speeding up networking – Van Jacobson’s modest proposal

  1. Arjen! Don’t tell me that you’ve succummbed to livejournal as well!

Comments are closed.