How does FreeBSD handle tcp checksum offloading
Chuck Swiger
cswiger at mac.com
Thu May 24 19:26:10 UTC 2007
On May 24, 2007, at 12:10 PM, Andrew Falanga wrote:
> I'm curious as to how FreeBSD handles checksum offloading for TCP
> packets. Is this on by default?
If a particular NIC supports checksum offloading, it is typically
enabled by default.
> It seems that it's only relevant for specific drivers rather than
> something that's just assumed.
That's correct. Most of the gigabit NICs support it, but few of the
older NICs do.
> How can I determine if this is supported for the hardware I'm
> running? Is it
> common for tcp checksum offloading to be in the fxp driver? Can one
> turn it off (though, it honestly sounds like no one would wish to do
> so)?
You can use ifconfig to see whether the RXCSUM & TXCSUM options are
listed, and you can use ifconfig to enable or disable it:
rxcsum, txcsum
If the driver supports user-configurable checksum
offloading,
enable receive (or transmit) checksum offloading on the
inter-
face. Some drivers may not be able to enable these
flags inde-
pendently of each other, so setting one may also set
the other.
The driver will offload as much checksum work as it can
reliably
support, the exact level of offloading varies between
drivers.
-rxcsum, -txcsum
If the driver supports user-configurable checksum
offloading,
disable receive (or transmit) checksum offloading on
the inter-
face. These settings may not always be independent of
each
other.
I don't believe that the fxp NICs support checksum offloading.
--
-Chuck
More information about the freebsd-questions
mailing list