[tsvwg] Comments on draft-ietf-tsvwg-udp-options-02

"C. M. Heard" <heard@pobox.com> Sun, 06 May 2018 17:24 UTC

Return-Path: <heard@pobox.com>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 58BD4127909 for <tsvwg@ietfa.amsl.com>; Sun, 6 May 2018 10:24:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=pobox.com; domainkeys=pass (1024-bit key) header.from=heard@pobox.com header.d=pobox.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id MOqCjdY5Xdhy for <tsvwg@ietfa.amsl.com>; Sun, 6 May 2018 10:24:18 -0700 (PDT)
Received: from pb-smtp2.pobox.com (pb-smtp2.pobox.com [64.147.108.71]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 70125127876 for <tsvwg@ietf.org>; Sun, 6 May 2018 10:24:18 -0700 (PDT)
Received: from pb-smtp2.pobox.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 62B3CD5859 for <tsvwg@ietf.org>; Sun, 6 May 2018 13:24:16 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=mime-version :from:date:message-id:subject:to:cc:content-type; s=sasl; bh=fvK atnriahaf6xOOTkXXE6NIUnE=; b=ihHyWJ4AUQGF9SZUZytkfGghXTCuYgVqFyl urT1ynqgs8gKXMu3m9eCF0ppwgpCXj1MohW5p0B2ORuE4ISoDclOV64CJrAOxW0P Li/oiOjvDjaakWLSeTkKjUStvgXrXF1Y96oaY0pEzN5lm4KuEKjhXl7j5y1oPadv Q4bqT+OI=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=mime-version :from:date:message-id:subject:to:cc:content-type; q=dns; s=sasl; b= u4H5/97YvgMyMJgExoaddu835vpbZb/DePQWwLradYpmdIE+cdW85vj1Q5++p1Q8 K736cdUhgE0Uqh1G/h1wXGr76P9gkdwgaXa1dtzg4oITGxwnQZ70ofJ+1q+MCfmg xopRXJDsCRA+T2f8HT60O6lVa/y6vSoJFJEnnlGXxSM=
Received: from pb-smtp2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 5A5E7D5858 for <tsvwg@ietf.org>; Sun, 6 May 2018 13:24:16 -0400 (EDT)
Received: from mail-ot0-f182.google.com (unknown [74.125.82.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pb-smtp2.pobox.com (Postfix) with ESMTPSA id D2FF3D5857 for <tsvwg@ietf.org>; Sun, 6 May 2018 13:24:15 -0400 (EDT)
Received: by mail-ot0-f182.google.com with SMTP id g7-v6so29573872otj.11 for <tsvwg@ietf.org>; Sun, 06 May 2018 10:24:15 -0700 (PDT)
X-Gm-Message-State: ALQs6tCZgZ4G8WrQV4MWtapo1+9zTgXQ0MpyXvzHOIkLKparmSZae9Ub OuQ3cMH3QPlVrATpEUfx8lHaEjnkXkFLa+wJAkA=
X-Google-Smtp-Source: AB8JxZqcG44OnHCDj2EHxvUMNEJeO1MMl5/u2lSuXCnd6yFN0XYUQDIM0WGr5MEXI77SifQ1UyRZZL1tN2k09jpAaNM=
X-Received: by 2002:a9d:66f:: with SMTP id 102-v6mr12715879otn.106.1525627455224; Sun, 06 May 2018 10:24:15 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.74.136.198 with HTTP; Sun, 6 May 2018 10:23:54 -0700 (PDT)
From: "C. M. Heard" <heard@pobox.com>
Date: Sun, 06 May 2018 10:23:54 -0700
X-Gmail-Original-Message-ID: <CACL_3VHckarqxHkcqY_-+ehRU588gfB_2FoDDYL_buv9EjpTAw@mail.gmail.com>
Message-ID: <CACL_3VHckarqxHkcqY_-+ehRU588gfB_2FoDDYL_buv9EjpTAw@mail.gmail.com>
To: Joe Touch <touch@strayalpha.com>
Cc: tsvwg <tsvwg@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000873f4f056b8cd2b9"
X-Pobox-Relay-ID: 4D2E731A-5152-11E8-B2F3-67830C78B957-06080547!pb-smtp2.pobox.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/mWtNjDk5sTC0e7x5jvAXreYzyLk>
Subject: [tsvwg] Comments on draft-ietf-tsvwg-udp-options-02
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 06 May 2018 17:24:20 -0000

Greetings,

Some issues came to my attention during a recent off-list discussion with
someone from the DNS community.

Section 5.4, Alternate Checksum (ACS): since the option area is not
included in the ACS, the following text seems out of place:

   When ACS is computed, its checksum (CRC) area is zeroed. No other
   options are zeroed before computing ACS.


All that is needed is to stuff the remainder of the standard polynomial
long division in the ACS checksum area.

There are also some issues that need to nailed down for clarity. the usual
way that the specified polynomial is used is to invert the first 16 bits of
data and transmit the complement of the resulting polynomial division. If
that is not done here, it would probably be good to say so. Also, it is
necessary to specify whether the data polynomial is constructed as if the
bytes are transmitted most significant bit first or least significant bit
first. Finally, the polynomial is x^16 + x^12 + x^5 + 1 (which would be
0x11021, but that fact is not needed, and I recommend omitting it).

Section 5.5, LITE option: the following instruction

   3. Swap all four bytes of the LITE option with the first 4 bytes of
      the LITE data area (Figure 11).


works only if the LITE data area is at least four bytes long. However, the
option will work just fine with 0, 1, 2, or 3 bytes of LITE data if one
simply moves the option to the start of the LITE data area and moves the
displaced LITE bytes just past the end of the relocated LITE option. This
operation is then reversed on the receive side. In effect, one is swapping
the locations of the LITE option and the initial segment of the LITE data
area of length min(4, LITE offset).

Note that being able to use the LITE option with a length of zero is
important for option negotiation.

Section 5,8, FRAG option: it appears to me that the length of the the
terminal FRAG option is 10 bytes, not 12. This isn't stated, but the
inference I make is that the the checksum is the standard UDP checksum,
computed as if the datagram were sent unfragmented, but not including the
pseudo-header (to avoid issues created by NAT). If this isn't what was
intended, then the intent needs to be clearly spelled out. I note that if
the alternate checksum as defined in Section 5.4 does not admit the use of
the value zero to indicate that it is not present.

Section 5.8.1, Coupling FRAG with LITE: if the comments above about the
checksum field in the terminal FRAG option are correct, some text should be
added here that the final checksum in the reconstituted UDP header is not
taken directly from the terminal fragment, but is adjusted to include the
UDP pseudo-header.

Section 8, UDP options vs. UDP-Lite: Is the following paragraph left over
from a previous incarnation of the draft?

   UDP options support a similar service to UDP-Lite by terminating the
   UDP options with an EOL option. The additional data not covered by
   the UDP checksum follows that EOL option, and is passed to the user
   separately. The difference is that UDP-Lite provides the un-
   checksummed user data to the application by default, whereas UDP
   options can provide the same capability only for endpoints that are
   negotiated in advance (i.e., by default, UDP options would silently
   discard this non-checksummed data). Additionally, in UDP-Lite the
   checksummed and non-checksummed payload components are adjacent,
   whereas in UDP options they are separated by the option area -
   which, minimally, must consist of at least one EOL option.


It seems to me that this should be rewritten, because the service in
question is now provided by the LITE option.

I'm hoping that there is still enough interest in this draft to push it to
completion.

Thanks and regards,

Mike Heard