Subject: Ronald Bonica's Yes on draft-ietf-6man-udpzero-06: (with COMMENT)

From: "Ronald Bonica" <[email-masked]>
Date: Fri, 12 Oct 2012 06:55:39 -0700

Ronald Bonica has entered the following ballot position for
draft-ietf-6man-udpzero-06: Yes

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)

Please refer to http://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.

----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

Would you be willing to add a short section in an Appendix that
illustrates the kind of analysis that you are requiring of a protocol
that wants to rely on UDPZero? I am thinking of something like the
following:

 Sample Text
 ===========
 Protocol Foo encapsulates an IP datagram within the following:

 - a foo header
 - a UDP header
 - an outer IPv6 header

 Because the UDP checksum is set to zero, the following fields are
unprotected:

 - foo header: field1
 - foo header: field2
 - UDP header: source port
 - UDP header: destination port
 - outer IPv6 header: source address
 - outer IPv6 header: destination  address

The consequence of corruption in field1 of the foo header is mumble. The
consequence of corruption in field2 of the foo header is grumble, but
only if some other condition is true. The consequence of corruption in
any other field is, at worst, loss of the packet.

Assume a tunnel with the following characteristics:

 - sustained data rate of 1 Gbps
 - Bit error rate of 10**-12 on each of 4 constituent links
 - average packet size equal to 1500 bytes

The bullet list, below, provides an estimate of the frequency with which
each of the above mentioned fields will be corrupted:

 - foo header: field1 (once per N seconds)
 - foo header: field2 (once per N seconds)
 - UDP header: source port (once per N seconds)
 - UDP header: destination port (once per N seconds)
 - outer IPv6 header: source address (once per N seconds)
 - outer IPv6 header: destination  address (once per N seconds)

 ==========================
 End sample text

Does this sound reasonable?