We understand that UDP checksums being optional in IPv4 and mandatory in IPv6 creates a problem for IPv4 to IPv6 translators: (1) To completely translate from v4 to v6 a UDP datagram having a zero checksum, a complete computation of the datagram checksum is necessary. (2) If the datagram has several fragments, this cannot be done statelessly.

A simple solution would IMHO be to complement to the UDP rule in IPv6 as follows: - IPv6 hosts MUST create UDP datagrams with non-zero checksums. (Nothing new here.) - IPv6 hosts SHOULD accept UDP datagrams with zero checksum. (Application of the classic principle "be strict in what you send, tolerant in what you receive"). - IPv4 to IPv6 translators that receive UDP datagrams having zero checksums MAY keep these checksums in translated datagrams. (On one hand, computing the UDP checksum still provides a better connectivity than without it, as long as there are IPv6 hosts that discard UDP datagrams having zero checksum. On the other hand, there may be tradeoffs to be made between maximum connectivity in all cases and scalability, DOS attack protection etc.)

Thoughts?

RD



--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to