Re: [tsvwg] UDP options and header-data split (zero copy)

Joseph Touch <touch@strayalpha.com> Mon, 02 August 2021 01:56 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 AEE7C3A0A7E for <tsvwg@ietfa.amsl.com>; Sun, 1 Aug 2021 18:56:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.317
X-Spam-Level:
X-Spam-Status: No, score=-1.317 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, 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 l6MRpvCh_cij for <tsvwg@ietfa.amsl.com>; Sun, 1 Aug 2021 18:56:27 -0700 (PDT)
Received: from server217-4.web-hosting.com (server217-4.web-hosting.com [198.54.116.98]) (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 211873A0A79 for <tsvwg@ietf.org>; Sun, 1 Aug 2021 18:56:26 -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:Cc:Date:In-Reply-To: From:Subject:Mime-Version:Content-Type:Sender:Reply-To: Content-Transfer-Encoding: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=6IjbtYrlHskkaPINfQI3x2s5QT1KOYakL2a4Z7f5q8Y=; b=N6yVzaaLgn20QVJ7+rbsGbQHE1 l7OHGUnxdW7yIir+yPQ3b425gF2rDDlZ3yamIe/VgTrSK1hv9Ng0oTirCFp0pIY5R5Bnw/RP6H3D3 CaqRRJfyJKJNksd1HpWamXsedDtoZ44Uo7pknTFXWE/yDrDDuDMKAALSw0Rq66MlRa/87xAlYw/8G qHt59MjW2xbf9gJnrWw/nST+5QnBcP1KXF+iBBMoEQYsQDhNHOAll8iaIAdcJWcHbR5KJNyYcAyiN Gl1BhwNMTpwAR4YIsd4fbMJA9/ap+y18VuwAR5jAbvQ3UaqV/fnfyuxKY3dh3dRQf6eQqgkLpAdFw 4aPoDIzQ==;
Received: from cpe-172-114-237-88.socal.res.rr.com ([172.114.237.88]:51290 helo=smtpclient.apple) by server217.web-hosting.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from <touch@strayalpha.com>) id 1mANBm-001cs9-Bh; Sun, 01 Aug 2021 21:56:26 -0400
Content-Type: multipart/alternative; boundary="Apple-Mail=_079927E6-A07D-49A8-928B-3119516849AD"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
From: Joseph Touch <touch@strayalpha.com>
In-Reply-To: <CALx6S34ZGbzjqhuiV++txbZVhACeN32jKWHnoZXEDv7FBi+tvA@mail.gmail.com>
Date: Sun, 01 Aug 2021 18:56:21 -0700
Cc: Michael Tuexen <michael.tuexen@lurchi.franken.de>, tsvwg <tsvwg@ietf.org>
Message-Id: <1BBBC878-9AE1-4464-B8C4-707EA2159A25@strayalpha.com>
References: <058C1360-D1BF-4C15-A0E3-D1C98DC8C45F@lurchi.franken.de> <04C250F8-7C10-4300-862B-7FFD739CA8B3@strayalpha.com> <C65F0BB6-BA2D-49F3-A473-32EEDF6C9467@lurchi.franken.de> <CALx6S36a66Ty6EUa9nRdvSQjaxepA7g1Np5T16iXuoTC3ZCd+g@mail.gmail.com> <48A4AB1F-A5E2-447E-8C20-AEC532269BFD@strayalpha.com> <CALx6S37wXiXhb9arG3BOw8RZUmGSX=a0KKKgS8MhyuKv52T+5Q@mail.gmail.com> <8EF9AB38-202D-4207-BCEA-24D65D208F09@strayalpha.com> <CALx6S34ZGbzjqhuiV++txbZVhACeN32jKWHnoZXEDv7FBi+tvA@mail.gmail.com>
To: Tom Herbert <tom@herbertland.com>
X-Mailer: Apple Mail (2.3654.120.0.1.13)
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/IX2-rqB69_7S3IC7cNIAdt8C3B8>
Subject: Re: [tsvwg] UDP options and header-data split (zero copy)
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, 02 Aug 2021 01:56:32 -0000


> On Aug 1, 2021, at 6:45 PM, Tom Herbert <tom@herbertland.com> wrote:
> 
> 
> 
> On Sun, Aug 1, 2021, 6:13 PM Joseph Touch <touch@strayalpha.com <mailto:touch@strayalpha.com>> wrote:
> 
> RFC 9000 talks about DF being set for IPv4, but that’s the default for IPv6 (no on-path fragmentation).
> 
> It does say "no fragmentation at the IP layer”, which presumably also prohibits IP source fragmentation, though it’s not at all clear why, other than to avoid black-holing through NAT. DF being set in IPv4 is critical to RFC1191 path MTU discovery, but that does not prohibit use of source fragmentation as long as DF is set. 
> 
> Path MTU discovery doesn't work if the source fragments.

It does - it depends on what the transport wants to do.

> For instance, if a host fragments a 1500 byte packet into three packets of 500 bytes then we're probing the path with 500 bytes not 1500 which is what the transport protocol expects.

And if the packets get through, then there’s no issue. If they fail, the source will get back a PTB with the size that works at the IP layer, which informs transport.

So it will work fine - IF the user wants to let IP do source fragmentation. The only requirement is that the IP set DF, which is always implicit for IPv6.

> However, that does not prevent use of UDP fragmentation - which would both be opaque to avoiding IP fragmentation and QUIC, as well as would traverse NATs because of the replicated UDP header in UDP fragments.
> 
> UDP fragmentation similarly breaks pmtud.

It would be a layer that adapts to it in lieu of the user - if that’s what the user wants (i.e., if they ask for UDP fragmentation to be used).

Joe