Last Line of Defense

In IPv4, the UDP checksum field is optional (can be set to zero to skip the check). In IPv6, this is no longer the case. Why did IPv6 make the UDP checksum mandatory?

A

IPv6 requires checksums for all protocols to support IPsec authentication

B

IPv6 packets are larger, so corruption is more likely and must be detected

C

IPv6 removed the IP-layer header checksum, so UDP's checksum is the only protection against corrupted headers in the delivery path

D

IPv6 uses a different checksum algorithm that has zero overhead