Changes in the network interface queueing handoff model

Andrew Gallatin gallatin at cs.duke.edu
Tue Aug 1 12:41:07 UTC 2006


Robert Watson writes:

 >   The immediate practical benefit is 
 > clear: if the queueing at the ifnet layer is unnecessary, it is entirely 
 > avoided, skipping enqueue, dequeue, and four mutex operations.  

This is indeed nice, but for TCP I think the benefit would be far
greater if somebody would PLEASE, PLEASE, PLEASE implement TSO (aka
LSO).

Consider a 1460 byte mss and 64KB of data that is ready to be sent.
With the current model, that is 45 separate calls to if_output(),
and 45*4 (queuing) + 45 (tx routine) == 225 mutex operations.

Using your model, we're down to 45 mutex operations.

Using TSO, we have 4 + 1 == 5 mutex operations with the old
model, and 1 with the your model.

This is not even considering all the other overhead involved
in 45 transmits vs TSO...

Just something to think about..

Drew


More information about the freebsd-net mailing list