Re: [tsvwg] Rregarding soft-state and UDP options

Tom Herbert <tom@herbertland.com> Mon, 06 January 2020 16:20 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 1AC5412088B for <tsvwg@ietfa.amsl.com>; Mon, 6 Jan 2020 08:20:13 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham 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 2z3Z9a_kDVhC for <tsvwg@ietfa.amsl.com>; Mon, 6 Jan 2020 08:20:10 -0800 (PST)
Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) (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 A5E8D1208A7 for <tsvwg@ietf.org>; Mon, 6 Jan 2020 08:20:00 -0800 (PST)
Received: by mail-ed1-x52e.google.com with SMTP id bx28so47843462edb.11 for <tsvwg@ietf.org>; Mon, 06 Jan 2020 08:20:00 -0800 (PST)
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:content-transfer-encoding; bh=aNSzpa/xjUWfAEawVkpd/GOS+rZdRQ3LyY3yle+O8Yw=; b=yB2YRPmfMAkaR/ytIctG4Yx0jQMDCpDpj+uLUB6QpG2bhl4VdWXFnyqZE24q5fL0A6 4C7v5vxHptjKGUtVSOE2Cts1P9QnKqcr0QbA57eRu6vYydXJu1I40HbkyfYqiLMz2Z4x 92T/JrimIblgw3rY3WDr3HMgeFZMWnhCg67A7MVBKGtTbAJu9miLXlfihl8UBjlmvHpm GmoPTqGT6fZDirRWeqp/ByexLo/yQCfNRomEITM/cG2kmX22DbwerOA5pXlxH0H8tbDQ 0JxiHqzp2yXVj+W9ExXz0CdfuNX6/Ymaukb63LDEJzmRM64+xq2+sUahZGIrHgvzbe4Q UrQg==
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:content-transfer-encoding; bh=aNSzpa/xjUWfAEawVkpd/GOS+rZdRQ3LyY3yle+O8Yw=; b=MNEB44OGJflJ4wZH3mhmN6rpX5f8SQePQzaM/Hiz6UDkf9rrnJg0Cq1kVHmgzuQaQC FuUW8aPxcfOZH8W3OlfY9tVlDta951OiNxIUJ8B5cR55DPuM17zP7VkIOuWOKOtWzYQa BPFc2CZE+ObqT/omcWR7ebR70JxMAwVORSgJyr1mhEV7i6zEDkNvkEEhInAyoaRXJNWn vwBvq1TOy6MHrGim1XzM9kS6eZZBR0WL11SFvOoY7KgjV1yiohcPfvIUWmQxUzUcaLOM jX8wDFgJd7qoFDo8fqdtXP4NNmda4OVdPwnN+spylxi2jurd4nIA9x40VrcfVhJl+DBl C6uA==
X-Gm-Message-State: APjAAAURW8fnjrBlkBD0U+CUxKEOdi7deUGAZ6y/orzN/dxXkPIWQC1T nZgOGz7EopaL/RgRQQSSOLbhZ8b0/9BIumcYb9+LdAbf
X-Google-Smtp-Source: APXvYqzg0hAfSTMKzag8yUGBizADde9ZH98qIB2VV347lJHvfdSSQ15H58bf8mszyqYqcCZ1DxVpmh+vpBmB8bObnB0=
X-Received: by 2002:a50:9e29:: with SMTP id z38mr107804567ede.62.1578327598965; Mon, 06 Jan 2020 08:19:58 -0800 (PST)
MIME-Version: 1.0
References: <CALx6S37oZK8urwN-TCpZxs9F_+QXzobT8-rObPH112NkqSpUVQ@mail.gmail.com> <418EE20D-387B-48C1-BC08-614D28D7849E@strayalpha.com> <CALx6S372xi1rTiAw6ZmLAU-yN6RvF7PEcg6sNqS=WcNVvYMTZw@mail.gmail.com> <FEFC49BC-0D34-419D-818E-D80A85B1C74E@strayalpha.com> <CALx6S35jhAoKHttijzqQNxQL8WJfbu=fun3EivCCOmxfXcw0QA@mail.gmail.com> <49C20EDE-9AD1-4577-B097-2ED2BB7CFC19@strayalpha.com> <CALx6S36Og0c73eQUW57M4ZH0BL=82CciJAmKujP=gJ3XbhcWwA@mail.gmail.com> <2365408B-9216-47FB-BBAC-B64A60CD58B5@strayalpha.com>
In-Reply-To: <2365408B-9216-47FB-BBAC-B64A60CD58B5@strayalpha.com>
From: Tom Herbert <tom@herbertland.com>
Date: Mon, 06 Jan 2020 08:19:46 -0800
Message-ID: <CALx6S347g2FMj-SsNRmL4HcTG8kcKpaUyjvHoZ8VwvZUTixmfw@mail.gmail.com>
To: Joe Touch <touch@strayalpha.com>
Cc: TSVWG <tsvwg@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/BEWcEkWOdHOuiu7T_I4Te91Xfp0>
Subject: Re: [tsvwg] Rregarding soft-state and UDP options
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: Mon, 06 Jan 2020 16:20:13 -0000

On Sun, Jan 5, 2020 at 4:37 PM Joe Touch <touch@strayalpha.com> wrote:
>
>
>
> On Jan 5, 2020, at 3:28 PM, Tom Herbert <tom@herbertland.com> wrote:
>
> On Sun, Jan 5, 2020 at 1:57 PM Joe Touch <touch@strayalpha.com> wrote:
>
>
> ...
> It is TCP SYNs. They have to be interpreted without context.
>
>
> TCP SYNs is the best you could come up with? One small part of a
> protocol that typically doesn't carry user data, doesn't work with
> multicast and is part of a stateful protocol 3WHS. Nope, IPv6 is the
> better model.
>
>
> TCP SYNs are transport and stateless. Yes, they’re the right model.
>
TCP SYNs are a protocol fragment, not a protocol. Also, they don't
carry any data so I'm not even sure how you could say they are
transport seeing that they don't transport anything. Has it occurred
to you that the reason all options can be ignored in a TCP SYN is that
there's no data that could be incorrectly delivered to the
application?

> IPv6 is largely designed for intermediate devices - that’s not what we’re designing for here.

The design is adding options to a stateless, connectionless, datagram
protocol that works over unicast, multicast, anycast, and broadcast.
IPv6, RFC8200 specifically which is full Internet standard, shows
exactly how to do this.

>
> ...
> First, it fails to be motivated by an example.
>
> Encryption option.
>
>
> We already have a solution for that with FRAG+LITE.
>
> Is there any example of a packet whose contents aren’t modified but MUST NOT be accepted if the option fails?

Any form of integrity checks that sender has set up and requested.
This includes checksums, ACS, HMACs, etc. This includes the
possibility to add new algorithms in the future per evolving needs.
For instance, the current ACS is CRC32c, that is a strong integrity
check however could very well be prohibitive to support on low powered
IoT devices. For this reason ACS should not be required to be
implemented, and the possibility of adding a CRC check more feasible
to these devices should not be precluded.

A virtual network identifier, anycast instance identifier, or any
other ancillary information that provides more specific information to
correctly deliver the packet than that in the IP header and ports.
Ignore a virtual identifier for instance, and the packet is allowed to
cross virtual networks thereby breaking required isolation.

UDP options compression option. Similar to Van Jacobson compression in
PPP, when the same options are used repeatedly they could be
compressed to save overhead.

These are the ones I can think of now. However, there is no reason to
believe that this could an exhaustive list. Once the protocol is
deployed new options may be needed that we can't even conceive
beforehand. This happens for other protocols that have options, and
will happen for UDP options if it achieves considerable deployment.
Fundamentally, it's the essence of an extensible protocol to allow the
protocol to adapt beyond the limited view of how things will evolve
when the protocol is first designed.

Tom


>
> ...
> Fail. That causes the same packet to be silently dropped by option-aware receivers and received as zero-length by legacy receivers.
>
>
> There is no such requirement.
>
>
> I’m claiming there should be a requirement to behave the same in these cases and I explained why.
>
> And as I pointed out if there were the
> draft would need to be changed to eliminate all cases where packets
> are dropped on error since that too  "causes the same packet to be
> silently dropped by option-aware receivers and received as zero-length
> by legacy receivers."
>
>
> I already said that text was being changed.
>
> ...
>
>
>
> - If an option is received with [he needed signal]
>
>
> (again, the rest of this sentence is implementation, not requirement)
>
> and the receiver does not recognize the option,
> then the packet MUST be dropped.
>
>
> Same problem. Different behavior for legacy and option-aware.
>
>
> Same response. Show me the requirement established by consensus of the
> WG that this violates.
>
>
> We’re designing a system that has to work with legacy receivers. Having two distinctly different behaviors in those cases creates protocol complexity.
>
>
>
> Declaring that an option CANNOT BE IGNORED affects ONLY THAT OPTION. We can decide to make it trash all other options, but we can’t make it drop a packet as a whole.
>
> The whole point of an option that cannot be ignored is that it is
> incorrect to process the packet if ignored.
>
>
> The whole point is that it is incorrect to process the OPTIONS if ignored. Not the packet We can’t claim that it’s incorrect to process a packet if options are ignored - exactly because that’s what legacy receivers already do.
>
> Joe
>