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

Joe Touch <touch@strayalpha.com> Sun, 05 January 2020 21:57 UTC

Return-Path: <touch@strayalpha.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 F218812007C for <tsvwg@ietfa.amsl.com>; Sun, 5 Jan 2020 13:57:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.22
X-Spam-Level:
X-Spam-Status: No, score=-1.22 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NEUTRAL=0.779] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=strayalpha.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 rlB8B6wh85d6 for <tsvwg@ietfa.amsl.com>; Sun, 5 Jan 2020 13:57:07 -0800 (PST)
Received: from server217-3.web-hosting.com (server217-3.web-hosting.com [198.54.115.226]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8C1CB12006E for <tsvwg@ietf.org>; Sun, 5 Jan 2020 13:57:07 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=strayalpha.com; s=default; h=To:References:Message-Id: Content-Transfer-Encoding:Cc:Date:In-Reply-To:From:Subject:Mime-Version: Content-Type:Sender:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=PD1ZEqgJouAWdxV9aX6FmiDkQi8hXwnpUEKt1arh0WQ=; b=611zaFXuKl4tKbuhdOu/pugWf 7776lhWzbhvPcmOIgglfHfghbPLED0ZTpA1aqxkTMLAMvrAPMuzfi/UmniT8WL9dLb+8Ti7llZ4tb 1y5PU7i1wR5lmPN+AuyYZZIgZVbyjaVWprLUUvYSuFVZ8bJVZX643hEoeEAPy+Z2SXtJjEWzF4xf3 +0jaVaqRkpPAFMwQ49DMh7pQJb122kXAVXsFldkMB2AzZeUHI4k2pDMzCvBXcLsIYVBKKc0P5S8KB f0t1OL0iU7IxW00Fl7swlmvYeEdS0sVADNxiRlpjlmgwzNxDdBPlFldHyaqo6kEWUmNvfwDYCMAxz kFVUF9wjw==;
Received: from cpe-172-250-225-198.socal.res.rr.com ([172.250.225.198]:51554 helo=[192.168.1.10]) by server217.web-hosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92) (envelope-from <touch@strayalpha.com>) id 1ioDtO-00047G-H7; Sun, 05 Jan 2020 16:57:06 -0500
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.0 \(3608.40.2.2.4\))
From: Joe Touch <touch@strayalpha.com>
In-Reply-To: <CALx6S35jhAoKHttijzqQNxQL8WJfbu=fun3EivCCOmxfXcw0QA@mail.gmail.com>
Date: Sun, 05 Jan 2020 13:57:01 -0800
Cc: TSVWG <tsvwg@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <49C20EDE-9AD1-4577-B097-2ED2BB7CFC19@strayalpha.com>
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>
To: Tom Herbert <tom@herbertland.com>
X-Mailer: Apple Mail (2.3608.40.2.2.4)
X-OutGoing-Spam-Status: No, score=-1.0
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server217.web-hosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - strayalpha.com
X-Get-Message-Sender-Via: server217.web-hosting.com: authenticated_id: touch@strayalpha.com
X-Authenticated-Sender: server217.web-hosting.com: touch@strayalpha.com
X-Source:
X-Source-Args:
X-Source-Dir:
X-From-Rewrite: unmodified, already matched
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/OgUCUQBnG0HItNiPdFFlH5jds3M>
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: Sun, 05 Jan 2020 21:57:09 -0000


> On Jan 5, 2020, at 1:17 PM, Tom Herbert <tom@herbertland.com> wrote:
> 
>> 
>> You keep citing network protocols, not transport.
>> 
> Because, just like UDP, IPv6 is a stateless, connectionless, datagram
> protocol that works over unicast, multicast, anycast, and broadcast.

IPv6 is two things UDP is or should not be:

1. a network protocol, not a transport
	network protocols rely on ways to inform the intermediate hops
	transports can and should rely on the endpoints 

2. overbuilt
	if we learned anything with IPv6, it’s that adding the kitchen sink helps delay adoption

The lesson to follow here is TCP and TCP SYNs in particular. There is no TCP option that causes a received packet to be IGNORED (there could easily have been).

> They have all the same pertinent properties. If you know of a
> transport protocol with options having these same properties then we
> can look at that (note, that protocol is not TCP!).

It is TCP SYNs. They have to be interpreted without context.

> 
>> Transport protocols don’t have this behavior - and it’s IMPOSSIBLE to implement for legacy UDP receivers.
>> 
> It's not impossible, I've already suggested the necessary text and
> requirements to prevent a receiver from incorrectly processing an
> unknown options that cannot be ignored.

That code never affects legacy receivers.

> I claim that this protocol
> works for all use cases of UDP in order to satisfy the requirement the
> requirement. If you dispute this claim, then please provide the exact
> scenario where you think it fails.

First, it fails to be motivated by an example.

> Here again are the requirements to
> ensure:
> 
> "
> Options that cannot be ignored by a receiver due to side effects or
> other requirements MAY be sent. An option that cannot be ignored is
> indicated by

The rest of this is not a requirement, it’s an implementation...

> ...
> If an option that cannot be ignored is received by a node that does
> not recognize the option then the packet MUST be dropped.

Fail. That causes the same packet to be silently dropped by option-aware receivers and received as zero-length by legacy receivers.

That’s a non-starter. There is no justification for needing that behavior.

> The
> following requirements ensure this:
> 
>  - Options that cannot be ignored MUST NOT be sent in packets that do
> not use FRAG+LITE format. This prevents a legacy receiver from
> incorrectly ignoring an unknown option.

This does NOT ensure that legacy receivers and option-aware function the same way. Legacy would receive zero-length packets. Option-aware should do the same.

>  - 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.

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.

Joe