Re: [tsvwg] Fwd: New Version Notification for draft-touch-tsvwg-udp-options-05.txt

Tom Herbert <tom@herbertland.com> Tue, 28 February 2017 23:02 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 449AF1297C2 for <tsvwg@ietfa.amsl.com>; Tue, 28 Feb 2017 15:02:27 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] 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 REakIg4orB7Q for <tsvwg@ietfa.amsl.com>; Tue, 28 Feb 2017 15:02:26 -0800 (PST)
Received: from mail-qk0-x234.google.com (mail-qk0-x234.google.com [IPv6:2607:f8b0:400d:c09::234]) (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 B77791297BC for <tsvwg@ietf.org>; Tue, 28 Feb 2017 15:02:25 -0800 (PST)
Received: by mail-qk0-x234.google.com with SMTP id n186so42144270qkb.3 for <tsvwg@ietf.org>; Tue, 28 Feb 2017 15:02:25 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=herbertland-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=j3sltFUaULLJQAgQNA9LJ1MhregnpM6wLPUEd2ddq3M=; b=dBo2YlVDG34hQr6RNMdqL9nwYR3YPJcoVEWjSi8Zn+vhIuXoEJfZHbz79zaGcYNzpN zYCns8PBUYqtZ/AHYutjiLq9IHX/cNuui1wIiUcAIFxa8/E8vLt577W02bazVB5+kMrF xlgRO+auam0K6YyQ/rRvklyAphiDJAwd6UGVFCIqT/7c+eObRzs1BQQ5yoC/DIqRBaMB zIyj0uO/s0oRga/Wh1unnRKsN3M1YmXxsYLti7XjVl4iLwqQTamKL49C31xBgelutq7I V2HAhcuSw3YQFfM9VouqAE3AnBsUhTLTWBd0qrXWCXAC8n7v7AJximVvjDZp2gR8TZX7 oIbg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=j3sltFUaULLJQAgQNA9LJ1MhregnpM6wLPUEd2ddq3M=; b=U4vpyPcQzQt/sHMi9ibP6oX2h2C4y98qL5NuTHaE+QvAw4B5P20gxtlxsUQ3n2nY34 zR3KVCeMHHlkFB6xfSfbX3Swr4zWW0X0cWKZyyLH01d0oHyTqqfzwbGnqJg9cYOEvX+F kh9py9ajX/SlrCCEMdDXnC0dh1+Yf4NZVUEgfZJF3LhOLLZ/WME6y0juN7XnttRS5wa0 URykDMDi0he87KntzA+gbc16BEUyB1r/AMZkrYko5FIIHxp4FV09BsrjWHz47uZguVUn Z19OYZ4mgiCybNm5fznx7+44mKKORn8wbQSp7l5M7kSK+SkYr/dtRc0yVGLq1cr2b15n pjRg==
X-Gm-Message-State: AMke39lKIBFnyHFnxIYQl05lnXYBWpFxMuJMQwrJSuSqU5CHY18ZzU0TkJK53X7aPa389iAAKI5dUrYiN+1vXQ==
X-Received: by 10.55.7.7 with SMTP id 7mr4009624qkh.228.1488322944915; Tue, 28 Feb 2017 15:02:24 -0800 (PST)
MIME-Version: 1.0
Received: by 10.237.55.232 with HTTP; Tue, 28 Feb 2017 15:02:24 -0800 (PST)
In-Reply-To: <800de1a6-cb9b-f22b-946a-8b6832fc9a05@isi.edu>
References: <148823787288.13843.6091386736320524682.idtracker@ietfa.amsl.com> <800de1a6-cb9b-f22b-946a-8b6832fc9a05@isi.edu>
From: Tom Herbert <tom@herbertland.com>
Date: Tue, 28 Feb 2017 15:02:24 -0800
Message-ID: <CALx6S34stwtPAnDo-CSt02bvtnds82TB19VqV=ac_vXpuqYdvA@mail.gmail.com>
To: Joe Touch <touch@isi.edu>
Content-Type: multipart/alternative; boundary="001a114c88d871794905499f3042"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/67LRT600iVcGW1TKAYNL0DMOw4k>
Cc: tsvwg <tsvwg@ietf.org>
Subject: Re: [tsvwg] Fwd: New Version Notification for draft-touch-tsvwg-udp-options-05.txt
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.17
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: Tue, 28 Feb 2017 23:02:27 -0000

On Mon, Feb 27, 2017 at 3:30 PM, Joe Touch <touch@isi.edu> wrote:

> Hi, all,
>
> A new version of the UDP options proposal has been posted.
>
> It adds:
>
>     - fragmentation based on IPv6's mechanism (thanks to Mark Smith)
>
>     - MSS (thanks to Mark Smith) and TS based on TCP's mechanism
>
>     - auth/encryption based on TCP-AO and its extensions
>
> It clarifies the report of a non-compliant legacy device (thanks to Mike
> Heard).
>
> It also adds a discussion on control block caching, ala RFC2140 for TCP.
> Feedback welcome.
>
>
Joe,

>From section 9:

"It is useful that the above requirements prevent using UDP options to
implement transport-layer fragmentation and reassembly unless that
capability has been negotiated with an endpoint in advance for a socket
pair. Legacy systems would need to be able to interpret the transport
payload fragments as individual transport datagrams."

This can probably more broadly be worded as saying that any option that
cannot be safely ignored requires the capability to be negotiated. So that
clearly includes fragmentation, encryption, and any other option that
modifies the payload of the original UDP packet. We can also include
authentication in that list since that needs key negotiation also. So
probably the next question is whether a checksum or CRC can be ignored by a
receiver.

Note, VXLAN and LISP have already taken liberty to allow a non-zero
received UDP checksum to be ignored, however this contrary to RFC1122 which
says:

"If a UDP datagram is received with a checksum that is non-zero and
invalid, UDP MUST silently discard the datagram."

There is similar wording for IP and TCP checksums.

I think this is the correct and robust policy for checksum/CRC. If a sender
took the time to compute them and set them in the packet then it should be
incumbent on the receiver to verify them. The whole point of enabling
integrity checks is to catch errors and corruption, if we don't catch the
errors at this layer we can only hope that they are caught later on but
there's no guarantee. What's worse if I'm debugging an issue and snoop
packets on the wire and see that sender is sending checksums but receiver
is not catching bad packets then this is completely misleading. Allowing a
receiver to ignore checksums undermines usefulness of the mechanism.

So IMO, checksums and CRCs are in the class of options that cannot be
ignored by a receiver and would need to be negotiated. That leaves TS and
MSS options which probably can be safely ignored.

Tom