TCP Segmentation Offload
Andrew Gallatin
gallatin at cs.duke.edu
Mon Sep 8 06:38:10 PDT 2003
Luigi Rizzo writes:
> On Fri, Sep 05, 2003 at 04:47:22PM -0400, Andrew Gallatin wrote:
> >
> > I've been reading a little about TCP Segmentation Offload (aka TSO).
> > We don't appear to support it, but at least 2 of our supported nics
> > (e1000 and bge) apparently could support it.
>
> i believe there is more commercial hype than actual savings in doing
> TCP Segmentation Offload.
>
> With delayed acks (or better, "ack every second packet"),
> the sender's TCP typically sends out two
> packets at a time. Without delayed acks, it is just one at a
> time. So yes, you avoid looping in tcp_output() twice, but
I think that the loop in tcp_output() is not such a big deal. IMHO,
the bigger savings is from not making extra trips through the driver,
and from allowing the adapter to perform a smaller number of large
DMAs.
Naturally, this is all just speculation until there's an actual
implementation which can be profiled ;)
Drew
More information about the freebsd-net
mailing list