On Mon, Jan 05, 2015 at 09:25:37PM -0800, Matthew Hall wrote: > The same computation algorithm must be reused to calculate the IPV6 > Pseudoheader checksum when generating ICMPV6, UDPV6, and other L4 protocols > whose definitions were retroactively modified to include the IPV6 > pseudoheader, that happen to use the same checksum in L4 which IP used in L3.
To clarify, this is the part of the RFC which mentions it: https://tools.ietf.org/html/rfc2460#section-8.1 Also, somebody else mentioned using TSO (TCP Segmentation Offload). I did look at it but since it only seemed to work in TCP if I read everything right, that'd mean I had inconsistent code for IPv4 versus IPv6 stack, and inconsistent behavior for TCP from that for ICMP and UDP. I was trying to avoid writing too much of this messy code if possible. Matthew.