Re: [tsvwg] A review of draft-ietf-tsvwg-udp-options-12

Joseph Touch <touch@strayalpha.com> Tue, 15 June 2021 17:54 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 B3B563A3818 for <tsvwg@ietfa.amsl.com>; Tue, 15 Jun 2021 10:54:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.318
X-Spam-Level:
X-Spam-Status: No, score=-1.318 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, 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 DiXdOlmITdzs for <tsvwg@ietfa.amsl.com>; Tue, 15 Jun 2021 10:54:21 -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 08EC93A37EB for <tsvwg@ietf.org>; Tue, 15 Jun 2021 10:54:20 -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=uHX8hhM2Lal6dZma246zRWN0XEaOqYIdPEAEXa+N+54=; b=KoKoiQgl6xkK/kGozX52DuU3wg XPCKnZZdi33mii2vuDYXKtjaajlE5QkfHluKzzBRY98FxB1+sVfh4QuuHD2UZCb3I8AlhXZQuskS+ 8gWarhb4rP0GklfEVD/zu2D1C2KsvEghhcwufge8ZwYnuS+1/1DWgjT/09DG5eXboiYqjiJJoXSeB 9zLQDblRybGhKEtZSzPsDxnjiU9xUEGS1hduuZVJRBt3QqqiR26iI6tP0uI5qNT9JP54ahojZSq+r bJhFJ23yKlmrQkOvqRGUHJLbRcX8QtP5drj684u4JsNVt7/qMEGLzhRnPtk10PtJgCIC/R7Lk8Q7P l4gooC4A==;
Received: from cpe-172-250-225-198.socal.res.rr.com ([172.250.225.198]:61593 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 1ltDGR-001HdR-1w; Tue, 15 Jun 2021 13:54:19 -0400
Content-Type: multipart/alternative; boundary="Apple-Mail=_2D4BE618-2EA2-427D-9435-0A7310F5FFAE"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.100.0.2.22\))
From: Joseph Touch <touch@strayalpha.com>
In-Reply-To: <CALx6S345AtooNGPiV4-TxZPURVcsJ27pMMQ9dYL09V7aHcVCNg@mail.gmail.com>
Date: Tue, 15 Jun 2021 10:54:14 -0700
Cc: TSVWG <tsvwg@ietf.org>
Message-Id: <05A7EA28-946E-413A-9750-A1791D316696@strayalpha.com>
References: <CACL_3VGb_9P5SfPGRJtf1ZBvEhgywc2ZEGr-qbgNOMXV20rFeA@mail.gmail.com> <CACL_3VHyoRr5ju8203DiLTUo-658DCj7ud+1dQE2o0hUPVhF0A@mail.gmail.com> <7D766992-AEEB-434F-BB1D-3817EE07DE61@strayalpha.com> <1BBDBD80-3A53-4700-A79F-9A3AE4876F2B@strayalpha.com> <CACL_3VEXCT-sSNhtncVK26DPQefDLJhqEijgDke4Q7DmhRrpTQ@mail.gmail.com> <67E79ED1-14DE-4127-83AF-D17E8C72F362@strayalpha.com> <CACL_3VGOVTjzOBBCS4b+4X_cTFX6T=gYO4_htvr2idzQGUP+oQ@mail.gmail.com> <C67EE01E-A41F-4BF5-BE1E-33E9F01D0B72@strayalpha.com> <CALx6S360gGWGicLAj1QJheHRyqvbkWx3KE7VrTyUSJ83cqkffA@mail.gmail.com> <B355DEDE-561E-4910-87D5-5C5F0D984BE6@strayalpha.com> <CALx6S345AtooNGPiV4-TxZPURVcsJ27pMMQ9dYL09V7aHcVCNg@mail.gmail.com>
To: Tom Herbert <tom@herbertland.com>
X-Mailer: Apple Mail (2.3654.100.0.2.22)
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/NNN0IH4jOrxTudrWW15afglhBsc>
Subject: Re: [tsvwg] A review of draft-ietf-tsvwg-udp-options-12
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: Tue, 15 Jun 2021 17:54:26 -0000


> On Jun 15, 2021, at 9:58 AM, Tom Herbert <tom@herbertland.com> wrote:
> 
>> And, FWIW, trailers are just as easy if not *EASIER* for zero-copy to handle; they just DMA the user data first then the UDP options.
> 
> Joe,
> 
> I am dubious of that statement.

Zero-copy matters for the body, not the options.

For TCP, you have to start your DMA after the variable-length header.

For UDP with FRAG, the same thing happens. 
For UDP without FRAG, you start the DMA 8 bytes after the IP header.

> You'll have to show running code and
> performance results.

If the above won’t convince you, a demo won’t help.

> Software stacks and hardware have long been
> designed around the fact that networking protocols are in headers; UDP
> options is an outlier in that regard.

Again, not for FRAG; FRAG works exactly the same way.

And again, doing otherwise for non-FRAG is not a viable path forward due to legacy constraints.

> While it is certainly possible
> to make a functional stack to handle trailers, it is going to be hard
> if not impossible to leverage many implementation optimizations and
> techniques we've done over the years.

*That* statement really needs proof by running code and performance, IMO.

Either you can do DMA from an known offset for a known length or you can’t. 

Joe