Subject: Thought on IPv6 Zero UDP Checksums

From: Margaret Wasserman <[email-masked]>
Date: Mon, 9 Nov 2009 13:13:31 +0900

I had a thought on the use of zero UDP checksums in IPv6...

What if we allowed the use of zero checksums for UDP as a _negotiated  
option_ in IETF tunneling protocols?  Those protocols could default to  
the use of UDP Lite (or UDP with non-zero checksums if their designers  
prefer) and negotiate the use of Zero UDP checksums when both sides  
support it.

Margaret

---

From: Gorry Fairhurst <[email-masked]>
Date: Mon, 09 Nov 2009 06:34:09 +0000

Using UDP-Lite would be fine. I'm not sure how a transition to UDP with 
no checksum would help the transport concerns with mis-delivery, etc.

Gorry

Margaret Wasserman wrote:
> --------------------------------------------------------------------
> IETF IPv6 working group mailing list
> [email-masked]
> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> --------------------------------------------------------------------
> 
>

---

From: "Joel M. Halpern" <[email-masked]>
Date: Mon, 09 Nov 2009 04:15:23 -0500

(Sorry, I will not be able to participate in the 6man discussion at the 
meeting, as I have to be in another session.)

It appears likely that it is impossible to meet all of the relevant 
constraints.  But less us not pretend that solutions likely this are 
obviously sufficient.

One of the major drivers of the UDP checksum question is tunnel 
protocols where the tunneling is being handled by high end routers with 
large volumes of traffic.
1) Many of such routers are designed such that it is difficult, 
expensive, or sometimes even impossible to calculate a per-byte checksum 
across the entire encapsualted packet when encapsuatling a packet for 
tunneling.
2) When there is high volume, it is clearly desirable that the resulting 
packets be able to be load balanced using the existing Internet core 
hardware to spread packets across equal cost paths of link groups, while 
keeping individual packet streams to single paths.  Currently, this is 
support for UDP and TCP packets, but not for SCTP or UDP-Lite. 
(Effective traffic distribution across link groups is very important in 
real deployments.)
2') There is an argument that the right way to handle this balancing for 
IPv6 would be to use the flow label.  But that is not the current 
practice in either the use of the label field or the implementation of 
the balancing logic.

I understand that there is a reasonable concern that if such tunnel 
packets are redirected due to packet corruption they may get sent to 
devices which do not understand what is happening, and may be 
potentially confused if we allow the non-use of UDP checksums.
If that is indeed the primary problem, then solutions like negotiation 
are addressing secondary issues. (Of course, not everyone may agree as 
to what the "primary" problem is.)

Yours,
Joel M. Halpern