Checksum offloading
Michael Tüxen
Michael.Tuexen at lurchi.franken.de
Sat Dec 20 13:31:43 PST 2008
Dear all,
I'm currently analyzing how TCP/UDP checksum offloading works
to find the best way to add SCTP checksum offloading.
sys/mbuf.h has constants:
#define CSUM_IP 0x0001 /* will csum IP */
#define CSUM_TCP 0x0002 /* will csum TCP */
#define CSUM_UDP 0x0004 /* will csum UDP */
which are used to signal which offloading is supported by the drive.
But, if I understand the code correctly, this only
applies to UDP/IPv4 and TCP/IPv4.
What about IPv6? Would this require flags like CSUM_TCP6 and CSUM_UDP6
to signal that also offloading of UDP/IPv6 and TCP/IPv6 is supported?
I'm asking this because we want to add CRC offloading for SCTP/IPv4
and SCTP/IPv6. We could only add one flag CSUM_SCTP and use it
for IPv4 and IPv6 ar two flags CSUM_SCTP4 and CSUM_SCTP6...
Best regards
Michael
More information about the freebsd-net
mailing list