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

Sebastian Moeller <moeller0@gmx.de> Mon, 02 August 2021 18:55 UTC

Return-Path: <moeller0@gmx.de>
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 5C77B3A164B for <tsvwg@ietfa.amsl.com>; Mon, 2 Aug 2021 11:55:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.648
X-Spam-Level:
X-Spam-Status: No, score=-1.648 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=gmx.net
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 o8CkQ1UPzuYa for <tsvwg@ietfa.amsl.com>; Mon, 2 Aug 2021 11:55:35 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) (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 F39E73A164A for <tsvwg@ietf.org>; Mon, 2 Aug 2021 11:55:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1627930515; bh=a1YF/La2kOCj7CFrdOu4VCL5FmD6V5qkaPqKL8GfuSs=; h=X-UI-Sender-Class:Subject:From:In-Reply-To:Date:Cc:References:To; b=YEF5Ygnf5zQgBxq48c1iNaw5B2wMk3mTVevy1d4neaImE9MaSSR4C6GCE7D1CAQ+6 QS5reDf/O7hVxcGdrN5/2HqUDDhIUQf79h7saR1mkmrZI83pAotkFIIiRIPw+qHkKG m199M/gmGrq3URetMU59YNcgrwAkY+xg08seSmqw=
X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c
Received: from [192.168.42.229] ([95.112.33.166]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mz9Z5-1n6pua0k0R-00wDdy; Mon, 02 Aug 2021 20:55:15 +0200
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.21\))
From: Sebastian Moeller <moeller0@gmx.de>
In-Reply-To: <CACL_3VGBp5ZcCvYRtmzxjC9X_Sov39QdJWjbShSdwKxiKCZPTw@mail.gmail.com>
Date: Mon, 02 Aug 2021 20:55:13 +0200
Cc: Tom Herbert <tom@herbertland.com>, Joseph Touch <touch@strayalpha.com>, TSVWG <tsvwg@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <87881B84-5FFE-43EE-BF26-66E265C63D09@gmx.de>
References: <A0932E7C-183B-41EF-B2AA-838FC45A087E@strayalpha.com> <28339CB5-2C9D-4870-9F25-07D6BBF43BDD@strayalpha.com> <CACL_3VEo75pKTOhizO1AhvqW7vCkOnaerDi6UNRA6e5K5mKYfQ@mail.gmail.com> <F35E0828-1F8F-4D7C-A570-32A2F47F773F@strayalpha.com> <CACL_3VFdzrTXZ8rAGPF=hXJ56zwy9KRxqERO_9doVUB4wFft4g@mail.gmail.com> <CALx6S37XLfGBFVMCAhbFjKfsRrevbzOPxP9CT28cpzmzQRBwPw@mail.gmail.com> <CACL_3VGBp5ZcCvYRtmzxjC9X_Sov39QdJWjbShSdwKxiKCZPTw@mail.gmail.com>
To: "C. M. Heard" <heard@pobox.com>
X-Mailer: Apple Mail (2.3445.104.21)
X-Provags-ID: V03:K1:a3LobGZNstIJvNs4ONydhwQYPmk63lW38npgNMlsrroufIGSP94 ZwnX/3hYQJfuzku+XaUdXKeX9kAhnVo5RJb1So7eDjqcYarXxAilXr2MSHdpcqzqN+/nzKr t5dAqKNm/tVqeF1LX/gS8DU2cjOpOoKeo8AAYzfXVkAIzrw0ufFHKGM2vOigNg34ykzXpKc HdFJhPl7qivr/OByyZohg==
X-UI-Out-Filterresults: notjunk:1;V03:K0:uiWteH2N6lc=:uupF8I1qnrSkGEyBdrSm6B 1Ht7GQHo9xIPfNtEAPq4DdfEy59I4LNwYx70zVeZ5vwtmbII02YYiCwxxe+bOnbWK640rtVQt 75ItJ7LgTULgc+hYnRp/vPWF8QTN/eZ9sPs0LafassSKVw0rxolWgkrvT0xZvwYptcgSuOYuV oNdpiGqwC6mq7HhlNMq0+k3lTNmdvmXnHDtpOX4Uq3AW9SGh9/PwBPcgT/GrnPAa1zH0uvCcn xSssZitzZcsbLDuMXrJl9vt8Y67sgzHsMoeZUaI68amtPEW3bkchK0jA3nDmQjbJELG+xI/1E lxWd0YHPjxVb0Hff8z2xy9W5p0TJ0weIrqIMins7RGvKYJsCB1PtLSa2/OJXAdtaey/tKsfPg l7fRlTzg5QBknDbckDknTeAaTSi7iSpMGzA6hHF6lfjQ94paZXBr9J7347W19tb+zGOrDakkU 4KfDFKDF1uRB+Wxa+jgtPtxTDGO0324KkSp9p9yaTDlkd2ORxWaGYggg/CSmgciggXmfFXb4j 9hi1yZe2sDgdQjnBMoAhflYczn5XoJ+fosjF1Cf6MiXB35zfVRUzC8yomN9LDOyXsMwNjdl3i i3onQHOhu0k6WiyKJ85u/31eq/w01KHdvX19P0zHGYb0/GtJQxwR0Eo3bFSedcCKOkqjjwM1F YVEwvSmJ67PMC6vYPpezvEAFJjEtafPEJfgi3f/FJfzZGUsmv5BQhU3NIv50atzgos5HTpApm M3RR7IBlShOvDzEK0a/KkEyCEwueUOXFyLBBpoQWKkz+qDexzh42vOEtVOAX1414VjRyKpEbD z27ne7d78UaQKgbJSEMlFJg3bDnO7avc1+PoFJCQvaNLEpiZihWFwgwX9FByksfcnjHOp2s3F t8Qwi6dg/5kZsw/pH78LqeYjuhfpeGv+cZVfL7qBumNNycJ1jplfbg15LqxR1gTCeKY9hEq+s RrauYjIwZKYGvvksgP9LNetKub2S5oR9aafOTiO8YwoTc6Wyj2rLkYCic9wzggPXZoP5z7UYq WUyjh81Ou+iT73a24kabZm8J9A4M4fhFC/v6RodFidvVbHN6jW8BsDXHLYw12qtBHtBo0bsuU Y8MAdYLGLy+I2tcrwIvhqLDoENiGfosDeH2
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/nkVjEu6j7lZZ4ES45IOcbjgv8YI>
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 18:55:40 -0000

Mmmh, I have  a quick question, actually two.


a) who is the intended audience of the fragmentation feature? And why is IP or application level "fragmentation? not enough?

b) instead of a trailer just add a bit to each option to denote per fragment or per aggregate, sure each option gets one bit longer, but on the flip side no trailer...

Regards
	Sebastian




> On Aug 2, 2021, at 20:12, C. M. Heard <heard@pobox.com> wrote:
> 
> On Mon, Aug 2, 2021 at 7:38 AM Tom Herbert wrote:
> > No, it's not simpler for an implementation. In the current design
> > options are in trailers for legacy mode and headers in non-legacy mode
> > so by definition we need divergent code paths code paths for those two
> > case. In the non-legacy mode case we need to support both options in
> > headers and options in trailers within the same packet which
> > contradicts the principle of having fewer ways to do the same thing.
> > In any case, having divergent code paths isn't a problem for
> > implementations, the real complication to implementations would be the
> > requirement to process protocol trailers.
> 
> Actually, in non-legacy mode options may appear BOTH in headers (for
> per-fragment options) AND in trailers (for the per-datagram options),
> and in the current draft the latter can fill a complete fragment. An
> upcoming revision is pending that will change this to allow the options
> trailer to span multiple fragments.
> 
> As I understand it, the procedure (in concept) is to create a datagram
> in legacy format with its per-datagram options, and then split that up
> into fragments, each of which can have its own per-fragment options.
> The per-fragment options precede the corresponding fragment data; in
> the current draft, the  per-datagram options follow the data in the
> final fragment.
> 
> The upcoming revision will change this a bit ... FRAG END in the
> terminal FRAG option will be replaced with USER DATA LENGTH. In this
> case the per-datagram options will be carried within the fragment
> data. It won't be possible, in general, to tell where the user data
> ends and the options begin until the reassembly process is complete.
> 
> Joe: please offer corrections if I have misrepresented your intent in
> the thumbnail sketch above.
> 
> WG: I understand Joe's point about conceptual simplicity in a common
> format for all cases, but I have to agree with Tom's point that having
> divergent code paths isn't the main problem for implementations,
> overall complexity is, and I remain concerned about what I perceive as
> the ever-growing complexity of the fragmentation and reassembly
> specification for UDP options.
> 
> Mike Heard