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

Tom Herbert <tom@herbertland.com> Thu, 18 July 2019 17:26 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 A5DEF120A62 for <tsvwg@ietfa.amsl.com>; Thu, 18 Jul 2019 10:26:01 -0700 (PDT)
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 upnUiMyTm7oP for <tsvwg@ietfa.amsl.com>; Thu, 18 Jul 2019 10:26:00 -0700 (PDT)
Received: from mail-ed1-x541.google.com (mail-ed1-x541.google.com [IPv6:2a00:1450:4864:20::541]) (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 10310120A6B for <tsvwg@ietf.org>; Thu, 18 Jul 2019 10:25:59 -0700 (PDT)
Received: by mail-ed1-x541.google.com with SMTP id m10so31189317edv.6 for <tsvwg@ietf.org>; Thu, 18 Jul 2019 10:25:59 -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:content-transfer-encoding; bh=RIIVQeluAWa79JY+iGe5c2BhBNmwgFDN3qa0FFeLw0M=; b=qalCGBlzId9C3Zu2d/p8M4OH2IR2KzFI961fUwqH2n4u7nwIdIS1Wp1Wpt/cqqxPBa X+qLIEiZt8dyW+iAmrQ/7JUOCTvEmMuVP8J6Jx6K45SAin+z1orVYZPdk/CKnWUGjtM3 zq2B4LgfveCcqZqlPohkehYtNuf1Qf1s89I5ls4ho+egFrjwxtWRWKkz4Kw3trVw1tF9 AwHrRlqM8yAAqeF82stIiN5tO2LRmuW65L+Nbq6b93xuuGjzV+HBnXaGL3I53Vb0Pxwb s7C9FbmDcy7B9vyMB4KcaUXu5rjTQTtZ8/y42o5JEdl8SSwndkRj8dTZ12wxnYZ/VQm8 FX7w==
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=RIIVQeluAWa79JY+iGe5c2BhBNmwgFDN3qa0FFeLw0M=; b=MY07Zan7J6gJImqvHssPES/2Bjk4jQNSej/ycnYNlMUmHJK1ZSzHleGqDaW2SA5Il8 +VgBSNk95hdS76PTUzly7w3sv/+o6SRiUVUaT5V/dRDKuFdJk40Yy0ovPm0f7V7HI8SG garKgxthRDM6/SXtXx3XLaP5RjEkkbts1RJlavSAL/8KcMG6DMmYaqZk+Z38D2GBXEfp 4NtKN2C2LRruVqehM0XEh06eENVjlY5w0q0HX0bvFrc2R2wvkS/VkDZmSGMF5cUC9JdD f8ivsWMfVfi8n4AO2ZyEkmrcxJbq1hIVt+sNhV4N9S1jzlwrixXsCXQJhHfrSf11tpBY /jSA==
X-Gm-Message-State: APjAAAXdK87qVLuy+DuhvPAWv3ULsQlZ6df5Trgo9ZBLIwa05w9l54+7 RT4m7Xe2cOQj1qlrqaSVxPAh5OJhu1OX3a9MRDdtYQ==
X-Google-Smtp-Source: APXvYqxJ6phM23swhs0wND+kslRYYXyZvgEAe9YUJWKX9YpNegfab7OZmL/dqdIOWSHtnglOJl2oSZBsX1O/VxmShM0=
X-Received: by 2002:a17:906:fcb8:: with SMTP id qw24mr37218974ejb.239.1563470758351; Thu, 18 Jul 2019 10:25:58 -0700 (PDT)
MIME-Version: 1.0
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> <718EBD34-5B4A-4458-B9B4-0A94C33E019E@strayalpha.com> <CACL_3VGL2irCkZeEcP+9HLBHqtqaMPZM66youUsatzosUu=Aew@mail.gmail.com> <A07EA390-1A3A-4AE9-AFD7-2F22CD4B0E31@strayalpha.com> <CALx6S34oOza3Z4Ymjsp+HLXnSTOKwh+SAQO8mt=a-1AbTTB0GQ@mail.gmail.com> <177233bb33272ce3b64298a005254724@strayalpha.com>
In-Reply-To: <177233bb33272ce3b64298a005254724@strayalpha.com>
From: Tom Herbert <tom@herbertland.com>
Date: Thu, 18 Jul 2019 10:25:46 -0700
Message-ID: <CALx6S36ZBa4Bioj=0KYn7wcFi08VeAg8sHUHLRNGURsrUN673w@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/pmzZTNq-Ty-AyZYvYJlY7n6F0u8>
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 17:26:02 -0000

On Thu, Jul 18, 2019 at 9:56 AM Joe Touch <touch@strayalpha.com> wrote:
>
>
>
>
>
> On 2019-07-18 08:35, Tom Herbert wrote:
>
> ...
>
> A single bit in the option type to indicate that the option can be
> skipped if unrecognized should be sufficient.
>
> Tom
>
>
>
> That bit has two meanings:
>
> - for legacy receivers, it's simply ignored for legacy data
>
> - for option-aware, if the flag is set, what does it mean?
>   - it should never mean drop the legacy data, otherwise an options-aware endpoint can't decide to act as legacy
>   - it could mean drop non-legacy data
>
> Right now, the onus is on the receiver to decide what to do with the data. The info is passed to the user - NOT decided by UDP.
>
> I.e., cuurrently:
>
> - unknown options are ignored by both legacy and option-aware endpoints
> - UDP processing skips over all such options
> - users can decide/negotiate what to do with those options on a per endpoint basis
>
> Note: the first time you send something, if you want a response to help you know what the endpoint will do, you need to set "ignore" anyway, which is what the default does. Otherwise you won't get a response and won't know why (the packet could have been dropped).
>
> So this only makes sense for negotiated soft-state anyway, at which point the user can either configure the endpoint UDP socket to drop if unknown or accept.
>
> Why would we NOT give the user this choice?
>
Joe,

Consider that someone invents the compression option a year from now.
The option cannot be ignored by a receiver since delivering compressed
data to the application would be jibberish. So someone starts using
compression and performs a "soft-state" negotiation with a timeout of
30 seconds in the example algorithm you previously described for
soft-state negotiation. So the sender is sending compression option to
some receiver. But, at some point, say 10 seconds into a timeout
period, the receiving host changes to a different configuration that
doesn't support the compression option-- maybe the host address is
virtual IP and packets are now routed to a different backend, or maybe
someone reboots the receiving hosts with a new configuration. The
sender doesn't know the receiver has changed and continues sending the
compression option. The new receiver sees the options but doesn't
recognize it. If the receiver ignores the option and delivers the data
to the application then that's data corruption. That's not robust.

The "drop packet on unknown option" is the conventional and cheap way
to avoid situations like this and make stateless options robust.

Tom

> Joe
>
>