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

Tom Herbert <tom@quantonium.net> Thu, 11 July 2019 01:30 UTC

Return-Path: <tom@quantonium.net>
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 3A4FA120019 for <tsvwg@ietfa.amsl.com>; Wed, 10 Jul 2019 18:30:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.601
X-Spam-Level:
X-Spam-Status: No, score=-0.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, 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=quantonium-net.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 9t_fUYSyWzlo for <tsvwg@ietfa.amsl.com>; Wed, 10 Jul 2019 18:30:08 -0700 (PDT)
Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) (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 1608B120018 for <tsvwg@ietf.org>; Wed, 10 Jul 2019 18:30:07 -0700 (PDT)
Received: by mail-wr1-x436.google.com with SMTP id f9so4323744wre.12 for <tsvwg@ietf.org>; Wed, 10 Jul 2019 18:30:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quantonium-net.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=VRIN2JIVJF/MYtcKcZ+ozylvPX8u9pv+ZVEfPRfy4Sc=; b=gui5B5ukTufog7BCA7QJRZ/7LUVwMTD8fA/WdeKi1O/nTc4Yw8Q2ZYZD1nAilawCob dAVndh2zEUd7RR+J3MWyIp+VA2eKTzE/PPe8aD0kP30MPaNYvBz0f+MZOKFirgTDFcvF 1VT0i3gwpY7j5Cjdk6aTIq6SbdBVkzoCav/Vra2dvB5FvjiUVzA4KCUlO8+IgA1GLpY2 Qqw7UZeCqYE8L2nk5T1K8p3Q7E3uKIC39BWJQESvwAi8WPmNNTXR5h3q5D09k/xdyYWG YgrQge8m3Znute7KP7atcdvNUuNjXjMcLRPYDmlcHHaxMnhFiwsaCSv1urFYz/M3TOIi HPYg==
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=VRIN2JIVJF/MYtcKcZ+ozylvPX8u9pv+ZVEfPRfy4Sc=; b=oDFrIW+BRWITl29gsIFCjhmccPKTyjgeJcKqS7qhtYpvqhLJ5TNczp/rE/EqN3yh0l MiaqMTv48GudG9Bsq6SGINL8qXKj2fryjU/5iH9eBdrdofycQetQlQEfqHEe1tdVKY95 4ot2Y0PewibWqDpGQax6/fjHVrB9/8y/x/RWZbQeOFTs98vEuqWk5eY0UEQElxZxnAcQ vYUqMQ6Aazq7kSC290VJURqf5VTPrJSPdt3Lq4u4JWdmuobL00u/MqNh94OwS49orSQY KzuGT4WKAeCXzIyPjObuBX5LQr3Nj2y1RI1MNw2qp6VbIgFltTRRc7Tiu/zEthXEZQ6v HkBQ==
X-Gm-Message-State: APjAAAVZZ95oqVsOsEDSs/KNgrP1q2hJxuPPmo1PzoG6bHqJOuJEtwnr xMaLdu4Mpo1sttoHDLlXBG17AFw477U4yeD8zrw=
X-Google-Smtp-Source: APXvYqwgUhZ/R4o4HDyMreBY1vDqQBpZT72fMilh3ZeWQXlmPKpEf4O915x+36OPyZobqjTsddnvE1fL99GU2IHoyW4=
X-Received: by 2002:a5d:56d0:: with SMTP id m16mr549243wrw.276.1562808606373; Wed, 10 Jul 2019 18:30:06 -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> <CALx6S35MC_fj+fL6Ax9a-9=-QX0-mHLmMQ7cUs2Rir+AvYE=zA@mail.gmail.com> <5b35e91dd510119672a0836f868ade24@strayalpha.com> <CALx6S36AVbKfvb-6dj07rcGjsVsCz0daFM9qZOBSSstZOM-Ukg@mail.gmail.com> <8A584FFF-6C86-4154-8D9D-CF407CA77145@strayalpha.com>
In-Reply-To: <8A584FFF-6C86-4154-8D9D-CF407CA77145@strayalpha.com>
From: Tom Herbert <tom@quantonium.net>
Date: Wed, 10 Jul 2019 18:29:54 -0700
Message-ID: <CAPDqMeq9GjEQKukH1pZOTdE50e_rc3U6gpdxT-5qrS5phD0RGw@mail.gmail.com>
To: Joe Touch <touch@strayalpha.com>
Cc: Tom Herbert <tom@herbertland.com>, tsvwg@ietf.org
Content-Type: multipart/alternative; boundary="000000000000d5cc0f058d5dbbcb"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/R8TYlCYd9JVehABYWqx3clW5CeI>
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: Thu, 11 Jul 2019 01:30:10 -0000

On Wed, Jul 10, 2019, 5:21 PM Joe Touch <touch@strayalpha.com> wrote:

>
>
> > On Jul 10, 2019, at 5:07 PM, Tom Herbert <tom@herbertland.com> wrote:
> >
> >> On Wed, Jul 10, 2019 at 4:45 PM Joe Touch <touch@strayalpha.com> wrote:
> >>
> >>
> >>
> >>
> >>
> >> On 2019-07-10 16:24, Tom Herbert wrote:
> >>
> >> On Wed, Jul 10, 2019 at 3:49 PM Joe Touch <touch@strayalpha.com> wrote:
> >>
> >> ...
> >>
> >> 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)
> >>
> >>
> >> The first one doesn't "say" anything per se, but yes, it could be
> extended to make it more clear. As I noted, this was mentioned already on
> the list and is on the pending items.
> >>
> >>
> >> 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
> >>
> >>
> >>
> >> It's a choice, just as whether to use checksums in IPv4 UDP. It's the
> user's choice and it saves bytes when not desired. The default is to use
> it, though.
> >
> > The checksum field in UDP is *not* optional, it is in every UDP
> > header.
>
> This isn’t a new header. We’ve already covered that.
>
> > Use of the checksum is optional only by the sender setting the
> > field to zero in IPv4, it is not optional in IPv6. The risk of
> > undetected corruption, other than the unfortunate situation where
> > mutliple bit corruptions occur that cancel out each other in the one's
> > complement sum, is if a non-zero checksum gets flipped to be zero then
> > then will be accepted by an IPv4 stack (not IPv6). Contrast this to
> > the situation where the type field of checksum option gets corrupted.
> > A receiver will no longer see the checksum. Barring some other
> > mechanism to detect a corrupted checksum, a corrupted packet is
> > accepted.
>
> Receivers who care can require the checksum.
>
> >
> >>
> >>
> >>
> >> 2) The checksum option is at least three bytes, or four bytes if
> >> alignment is required. A fixed checksum only consumes two bytes.
> >>
> >>
> >>
> >> Yes, and we've been around that block before too. A fixed checksum
> could take 2-4 bytes too - due to the same alignment issues. So we're
> talking about 1 byte and the design is based on the principle that ALL
> options are optional in UDP - there is no "default" header.
> >>
> >>
> >>
> >> 3) A fixed checksum disambiguates uses standard uses from legacy uses
> >> of the surplus space. An optional checksum doesn't help with that.
> >>
> >>
> >>
> >> Yes, it does. Optionally. However, note that we still have exactly ZERO
> legacy uses discovered. And if - or when - we get comfortable with that, it
> can be optionally omitted.
> >
> > No it doesn't. I suggest you send your implementation of UDP options a
> > bunch of random bytes in surplus space and see what happens. As far as
> > the fact that zero legacy uses have been discovered, that does not
> > mean that in the forty year history of UDP that no one else though out
> > using the surplus. The space was NEVER reserved, so if anyone is using
> > the space then we can't break them. The checksum is a reasonable
> > defense against that.
>
> And you can require it if this keeps you up at night. The rest of us don’t
> need to be stuck with it forever.
>

Yes, that's why checksum is in the fixed header. The benefits far outweigh
the cost.


> We’re not designing a Byzantine robust protocol here.
>
> Joe
>
>