Re: [tsvwg] draft-ietf-udp-options issues from IETF 104

Joe Touch <touch@strayalpha.com> Thu, 18 July 2019 14:25 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 DA6B4120364 for <tsvwg@ietfa.amsl.com>; Thu, 18 Jul 2019 07:25:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.219
X-Spam-Level:
X-Spam-Status: No, score=-1.219 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, URIBL_BLOCKED=0.001] 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 5aYOgK680IAN for <tsvwg@ietfa.amsl.com>; Thu, 18 Jul 2019 07:25:12 -0700 (PDT)
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 530631203A0 for <tsvwg@ietf.org>; Thu, 18 Jul 2019 07:25:05 -0700 (PDT)
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=PkIWMZ2c5zLpk77tKH0MzP2gAAG+g2wBJxwuATQFqNE=; b=Pm7Ozjer96lxoAQyRanTc3mrc s/vKLdvyjduBrV9Ar22A5SrXNV6xZTfSv/MCUHfIRwuMon9sIXSGE9eTjG3hZYGPqCK1wQx/uI0kU +c4LRoylbVJOmHZghYNOmvON7DiLGoozi3ydpusDkQ0PD1TXrpA9qEIaRb64b47xQHhMh/hQTTBhd 5DARPHD9JR3GcGuclFVo2whPZQwYoBXs0gUBUe22M/QyqCFdA+8jYXd6rp5TR6UlLZ6g9Q14W4PmL 7XZOfl24uqnyRHllIlKglx6xCkvKrOxB80JpIXzwqF+xx43H2oV+CrZJ5TomCgiKRhrqzDcjnKEe1 Kt2Y5TvtQ==;
Received: from cpe-172-250-225-198.socal.res.rr.com ([172.250.225.198]:59649 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 1ho7L9-002SnI-Vd; Thu, 18 Jul 2019 10:25:04 -0400
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\))
From: Joe Touch <touch@strayalpha.com>
In-Reply-To: <20190718100109.GA86292@clarinet.employees.org>
Date: Thu, 18 Jul 2019 07:24:58 -0700
Cc: tsvwg <tsvwg@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <718EBD34-5B4A-4458-B9B4-0A94C33E019E@strayalpha.com>
References: <30c17e9c174f6b0da3ecc6b503a8cb17@strayalpha.com> <CACL_3VGs7j+y5vFNT3OL9OKX8ue4rv-Cxi467KR-vbhnMdx86g@mail.gmail.com> <2f71a292f924a9b8de4227c4bbc2f809@strayalpha.com> <CACL_3VGrF5UnbVsSzZZoy1i57WKiQKBX2T3a16UyEVHY=Kr3XA@mail.gmail.com> <CE03DB3D7B45C245BCA0D243277949363061EF7A@MX307CL04.corp.emc.com> <CACL_3VE7+3WD3Uzubf8X9uQX9ZYPnZVhXjheUOuL9EfjT1JkGQ@mail.gmail.com> <CALx6S35V-d3Rn_wjrhbHUHgS=_+dVjR4hbMJ0-JBsG-1BuFuZg@mail.gmail.com> <B5CCEF58-38CE-4973-9CFD-002B404E4EF3@strayalpha.com> <CACL_3VEnJoV9N9i59fJXG1Nyt=mMWT7SuB8B=C-Y9a9QLtqP7Q@mail.gmail.com> <BB3FD9A5-8D30-4600-A7A7-DA3030BD34A3@strayalpha.com> <20190718100109.GA86292@clarinet.employees.org>
To: Derek Fawcus <dfawcus+lists-tsvwg@employees.org>
X-Mailer: Apple Mail (2.3445.9.1)
X-OutGoing-Spam-Status: No, score=-0.5
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/fqJ9dnZyEsezofB-fDpj4TyYQT4>
Subject: Re: [tsvwg] draft-ietf-udp-options issues from IETF 104
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, 18 Jul 2019 14:25:14 -0000


> On Jul 18, 2019, at 3:01 AM, Derek Fawcus <dfawcus+lists-tsvwg@employees.org> wrote:
> 
> On Wed, Jul 17, 2019 at 05:18:10PM -0700, Joe Touch wrote:
>>> On Jul 17, 2019, at 1:13 PM, C. M. Heard <heard@pobox.com> wrote:
>>> As I have explained previously, fate-sharing, while unachievable with the protocol trailer format but can be achieved with a protocol header packet format.
>> 
>> It really can’t - again, you can’t force a receiver to act as options-aware.
> 
> That is not what I understand Mike to mean by fate sharing, and his proposed framing.
> 
> I see it as two cases:
> 
> 1) Packet with legacy UDP data, and UDP options.
> 
> In this case there is no fate sharing, a legacy receiver will only see the
> UDP data, and the options will be lost.

This is how legacy data is handled in the current draft, per sec 8.

> 2) Packet with zero-length UDP data, and UDP options carrying application data and options.
> 
> In this case a legacy receiver will simply receive a zero length UDP packet.
> However a new receiver will have fate sharing for the application data and options.

This is already how LITE data is handled in the current draft, per sec 8.

> ...In a request / response scenario, one can initially send packets in form 1,
> and then switch to form 2 if the responder supports such, maintaining soft
> state as necessary.
> 
> Mike DNS example being one where a request would be send in form 1,
> a legacy response would be received as pure UDP,
> but a DNS server on a new host could send its response in form 2.

Right. And the first packet only needs to include OCS. If OCS is received correctly, then the server can respond using FRAG directly (no need for FRAG+LITE).

> So in general there is no fate sharing between the options within a given
> packet (they can be understood or not per option),

Yes, but that opens a new can of worms. Currently, we shut that can by declaring that only a subset of the initially defined apps are ever “required to implement”; everything else MUST be designed to allow options-aware endpoints to silently ignore them if not implemented.

> but there is fate sharing
> between the presence of any options and application data in form 2.

Yes, but that’s just what LITE already does…

The point I was making is that there is no way to have both forms at the same time.

Either options share fate with data ONLY FOR OPTIONS-AWARE endpoints,
or legacy and options-aware endpoints share fate BUT OPTIONS ARE THEN OPTIONAL TO EVERYONE (technically, including options-aware endpoints).

> Mike was also further suggesting to carve the option id space such that there
> is a signalling bit.  Doing so would then allow for fate sharing across options
> if at least 1 'discard if not understood' option was present.

Oh, no - that’s a huge can of worms because there’s another bit to set: “all or none” or “ignore individually”.

Then what do you do if you have three that you want required “all or none as a set”. or ignored that way?

The control bits get out of control very fast…

Also, note that IPv6 included bits to encode whether ICMPs were sent (and whether the source is multicast).  We haven’t addressed that can of worms yet either...

Joe