Re: [tsvwg] New Version Notification for draft-herbert-udp-space-hdr-01.txt

Tom Herbert <tom@herbertland.com> Wed, 10 July 2019 23:24 UTC

Return-Path: <tom@herbertland.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 20625120073 for <tsvwg@ietfa.amsl.com>; Wed, 10 Jul 2019 16:24:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.602
X-Spam-Level:
X-Spam-Status: No, score=-0.602 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, PDS_NO_HELO_DNS=1.295, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=herbertland-com.20150623.gappssmtp.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 Sowc23YMCTs3 for <tsvwg@ietfa.amsl.com>; Wed, 10 Jul 2019 16:24:27 -0700 (PDT)
Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com [IPv6:2a00:1450:4864:20::530]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 348A5120019 for <tsvwg@ietf.org>; Wed, 10 Jul 2019 16:24:27 -0700 (PDT)
Received: by mail-ed1-x530.google.com with SMTP id r12so3790917edo.5 for <tsvwg@ietf.org>; Wed, 10 Jul 2019 16:24:27 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=herbertland-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=lmoLe593qd6sd59FZbEiYyoQauo1qeW2R1+vNaUW7c8=; b=Cgz6BsRNAGvwsrAlsg83mDTCqUxlQU3/7CCLPqJX9G2z+HqJde5fQc7Rkh+/fcWXk6 snXAGWGrxgc3hbZu5d9KTl7V9Egwf2/SpcIo/zTLMfDQGihJYkM3D/2wzJJPdHdaqmPv 7EnZxwZH0H2jOjRtpSN2pP8F3WbzC6fpYzf6x3Hgtw63ve+gTS9fPC40+i5/QkiGyGOI 7VaBp2KSWezolhR5BRA1HYxx1vLCWElFa8oQ0y0MblFi2NKxraCNQRHYz6frXmrfBY6B 7+cPn8x9Cu/YAQBsGPYbhfKf+mFLr4+Dab9YBjvECOC0DP9cMr8QSSZe86LrL13EVayq 5UdA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=lmoLe593qd6sd59FZbEiYyoQauo1qeW2R1+vNaUW7c8=; b=qyiwZbNPAgIvL5v84tp6VRfejKjZCre5d/fSzLOdL8DgBLvIMBWTm2P33jczFrE4qt l1qyLrf6T9sTU6nlR18h+r8IJEM8OFn4phswjJWJpUNHIxVUs7FvkXqEuHDiXsvcgP7a lqgqr3/w6tverZuwDbj3asl3sOkJGlhyPmwE17oj4jnBxXEMKty/p8ITkczlvQP1Acke aY0oPMZFZ4mYGO2VbwcpJJ4/cOiRTixmwxuR2/RJ2uQTRofIetE5AlvyRDHmnXe8mADg idwWVepUBvfoyNRVfCw2pWWrbNfatNjvvQAaAa0KdEsEZMXE4O0HhHFRwQCy94W/fAsk VfgQ==
X-Gm-Message-State: APjAAAUfHfPHZ/bEKeKzOOL0YLFHlg7tJInBHHEbsvipWsC7RjM+4irG 74D0ibSlV7S6ITvtv6PVJssjdgjKTbvE0iPbcCbKOneA
X-Google-Smtp-Source: APXvYqwk7MpPKanSI/FO04FlLwYhFb8yh95WsikPiisUrP+ZLNtLzm8i+wNIjxmKyfBPnnPX65RGyOVgWc4B9Lr/guY=
X-Received: by 2002:a17:906:5806:: with SMTP id m6mr607188ejq.80.1562801065575; Wed, 10 Jul 2019 16:24:25 -0700 (PDT)
MIME-Version: 1.0
References: <156262970360.865.13042807682366763561.idtracker@ietfa.amsl.com> <CAPDqMeoMqsB8=tH5TBaq5Tw-sLW3HNc8tpfUU3htV=sWo7pJcA@mail.gmail.com> <D7E52D2B-3912-4897-80C6-0150CDE10218@strayalpha.com> <CAPDqMep9MYqjFvvJSVbqYwo-xJ1pUocYszNukveaZODhf9+75A@mail.gmail.com> <e73919f08202937bf45418cbf8bcc38c@strayalpha.com> <CAPDqMeoh3n5fL1k6Fw9D8rCpy4a9eWyUZvgStyzYfFuJbuWudw@mail.gmail.com> <3f6f54e0b828e2628af964d6ee7f33e1@strayalpha.com> <CALx6S37rt7OJtH5a2ZH23R21ATETuwTeFS-mZQECtgxPQ3nSZA@mail.gmail.com> <ccc386aa429bfe301998f39eb7fccfbf@strayalpha.com> <140f11c854e0ad96c51639f830cbb688@strayalpha.com>
In-Reply-To: <140f11c854e0ad96c51639f830cbb688@strayalpha.com>
From: Tom Herbert <tom@herbertland.com>
Date: Wed, 10 Jul 2019 16:24:14 -0700
Message-ID: <CALx6S35MC_fj+fL6Ax9a-9=-QX0-mHLmMQ7cUs2Rir+AvYE=zA@mail.gmail.com>
To: Joe Touch <touch@strayalpha.com>
Cc: Tom Herbert <tom@quantonium.net>, tsvwg <tsvwg@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/oxWXZ7zwF3jfOD4vLd0GECk06U4>
Subject: Re: [tsvwg] New Version Notification for draft-herbert-udp-space-hdr-01.txt
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
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: Wed, 10 Jul 2019 23:24:29 -0000

On Wed, Jul 10, 2019 at 3:49 PM Joe Touch <touch@strayalpha.com> wrote:
>
> Re-sending the full response this time:
>
> On 2019-07-10 15:17, Tom Herbert wrote:
>
> On Wed, Jul 10, 2019 at 12:24 PM Joe Touch <touch@strayalpha.com> wrote:
>
>
> On 2019-07-10 11:36, Tom Herbert wrote:
>
>
> ...
> The UDP surplus header provides alignment,
>
>
> UDP options already has NOPs for that.
>
> The NOPs align the options to the start of surplus. If the surplus
> space is unaligned to begin with then there's no point to using NOPs
> to align individual options.
>
>
> That's already supported in the UDP options. They can start with NOPs too.
>
>
>
>
>
> integrity check,
>
>
> UDP options already has a OCS for that.
>
>
> A one byte optional checksum is next to useless as an integrity check.
> This has already been brought up in reference to OCS.
>
>
> It was changed to 2 bytes before the last IETF, between v5 and v6 (we're on v7; the doc table does need to be updated, but the text is accurate and no longer talks about folding it over).
>
>
>
>
>
> disambiguation for other uses of surplus space,
>
>
> This isn't needed. It won't support existing uses (not that any are known) because they won't follow the format.  UDP options already allows for experimental uses and other standards-track extensions through codepoint assignment.
>
>
> If the checksum fails then surplus space isn't processed. So,
> probability of misinterpretation of some random use of surplus space
> is < 0.0015%.
>
>
>
> See above.
>
>
>
>
>
> a means to extend the UDP header,
>
>
> Actually, it hinders UDP options by limiting them to 1020 bytes, as with all "other uses".
>
> That is intentional. Allowing unlimited options is a path towards DOS attack.
>
>
> There are only 256 codepoints; options you don't support you skip over. And only NOPs can be repeated and only up to 3x in a row.
>
> And if you see enough of these with options you don't know or care about, maybe you should throttle.
>
> One thing we do know is that any fixed size limit WILL be insufficient.
>
>
>
>
> friendliness with HW and SW implentations,
>
>
> It has no benefit vs. the existing approach in this regard.
>
> The checksum ensures that the surplus space sums to zero...
>
>
> We've already been over this and the updated text already does EXACTLY the same thing, except that it doesn't need alignment to work.
>
>
>
> ... Along similar lines, a per packet checksum is
> much better than the fragmentation checksum since we can offload the
> former and not the latter.
>
>
>
> That remains one of the items that we're waiting for others to comment on, ones we're NOT discussing because we're still wasting time on this.
>
> ---
>
> In summary, please look at the current draft and note that OCS is now 3 bytes. That is incorrect in the table (we already noted that on the list; it's in the next round of opdates) but not in the text of the OCS section.
>
Actually, there are two places that say it is a one byte checksum:

+--------+--------+
| Kind=2 |checksum|
 +--------+--------+

2*      2         Option checksum (OCS)

Assuming that this is supposed to be a two byte checksum:

1) An optional checksum cannot protect against corruption of the type
field containing the option. I've have mentioned this several times
and there has never be a reasonable response as to why this isn't a
problem
2) The checksum option is at least three bytes, or four bytes if
alignment is required. A fixed checksum only consumes two bytes.
3) A fixed checksum disambiguates uses standard uses from legacy uses
of the surplus space. An optional checksum doesn't help with that.

> Joe
>
>