Re: [tsvwg] UDP REQ/RES Options - per segment or per datagram

Joseph Touch <touch@strayalpha.com> Sat, 31 July 2021 00:21 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 EA7003A1944 for <tsvwg@ietfa.amsl.com>; Fri, 30 Jul 2021 17:21:12 -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 KgWFxgsHPnGw for <tsvwg@ietfa.amsl.com>; Fri, 30 Jul 2021 17:21:07 -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 658AC3A1941 for <tsvwg@ietf.org>; Fri, 30 Jul 2021 17:21:06 -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=/LPIY9KlaC37BLtE1PXMDNTeW4ClH1tn6/dkZewwIrY=; b=JvQokE4xoMWBYITXpNtx7VRcsv cdJH8Wl0cG0ytzWC5c/glVt5EUtVuTqrHrf2/8iWrprBJ3HhcgEZm4AdbW/ZFaXIsiXn3Z1i+oZMO /xXQCF//WeI6tk+L/xImhOk6BwzHHb5hDL4tbJXCULByv3EH1BbVSp0nBWmnQmpxtq4RC/cTT5zaP K7fHsm5RlYeO+coefC6iICDzUSnfxO7xcoD2YQ3a3daVDb5isoPYJJKL4X1967plphC+Yd71GDEdF IejoE6zEjXVdImtcClzm7iue7gk8+4BrkQ+PPn0Scx2dnHvzDo7OMoW4chK4d427FgK7h+kDBW2ls Wk7o3hTA==;
Received: from cpe-172-114-237-88.socal.res.rr.com ([172.114.237.88]:58299 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 1m9ckP-0036J6-9j; Fri, 30 Jul 2021 20:21:05 -0400
Content-Type: multipart/alternative; boundary="Apple-Mail=_854233F4-55A5-47CB-AD9B-5D77D46F9D4B"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
From: Joseph Touch <touch@strayalpha.com>
In-Reply-To: <CACL_3VEptfAQzS9i2YnYdv-28t7oHfwut8gj2J6CqUow-V_QXg@mail.gmail.com>
Date: Fri, 30 Jul 2021 17:20:59 -0700
Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>, Tom Jones <tom@erg.abdn.ac.uk>, TSVWG <tsvwg@ietf.org>
Message-Id: <2F4E3004-5976-45B7-BCAA-71517A49BA19@strayalpha.com>
References: <CACL_3VG9w3xsoOFqit_YHB5gTztWMQrcYo6km2cRtWmwGjHAjg@mail.gmail.com> <60AAD6ED-4506-4C06-BA2D-A918C8197CFB@strayalpha.com> <CACL_3VHCdvkCf-zqbLvsmBZ+964ecUhBuJEiJZi7MFS2dxDMww@mail.gmail.com> <47F0F088-F252-4DB9-AC20-2A1B0D4AE6FF@strayalpha.com> <CACL_3VGWa3Wcu-r_1CWx06h9DXz9PMBd5wDUmmmL7newdtSUDA@mail.gmail.com> <82241751-E157-4535-82D6-D8DBE15430C7@strayalpha.com> <CACL_3VEptfAQzS9i2YnYdv-28t7oHfwut8gj2J6CqUow-V_QXg@mail.gmail.com>
To: "C. M. Heard" <heard@pobox.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/_MICN4odgRlwc2qK2uJem92yt_E>
Subject: Re: [tsvwg] UDP REQ/RES Options - per segment or per datagram
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: Sat, 31 Jul 2021 00:21:13 -0000

Hi, Mike,

Although I agree with the general principle that we should keep things simple, IMO that’s also on the user. If they want to use any option per-fragment, it’s on them if that over complicates their work. AFACIT, these options are largely opaque at the UDP layer - they don’t authomatically do anything unless it’s defined - as per Gorry’s draft. It’s up to him to decide if there’s a limit to his API and algorithms that use REQ/RES; others can do otherwise.

Again, UDP is all about the U.

Joe

> On Jul 30, 2021, at 5:05 PM, C. M. Heard <heard@pobox.com> wrote:
> 
> On Wed, Jul 7, 2021 at 9:44 PM Joseph Touch wrote:
> Hi, Mike,
> 
> I’ll try to take this in one shot, but it might be useful to followup in separate threads.
> 
> I am following up in separate threads as suggested. This one is for the REQ/REs options.
> 
>> On Jun 26, 2021, at 4:53 PM, C. M. Heard wrote:
> 
>> The REQ and RES options exist for the benefit of DPLPMTUD and are intended to be sent on a PLPMTU Probe Packet, which itself must not be further fragmented (the probe packet will not serve its purpose if it is fragmented to make it get to its destination). Ideally, these options are used on packets with padding only and no user data; such packets would be generated and consumed entirely within the transport layer or a shim. As they are not subject to fragmentation, they can be considered complete datagrams.
> 
> You assume these are not UDP fragmented; I do not. DPLPMTUD could be used to determine ways to avoid IP fragmentation but that doesn’t mean it prohibits the use of UDP fragmentation. All that is required is that the probes are not *IP* fragmented.
> 
> I want to hear what the authors of draft-fairhurst-tsvwg-udp-options-dplpmtud have to say about this, but I don't see a use case for sending dplpmtud probe packets that use UDP fragmentation. Indeed, that seems to be a completely useless and unnecessary complication.
> 
>  
>> In addition, it seems to me that there is little or no value in taking a REQ option from the user and replicating it on every fragment of a datagram that needs to be fragmented; this causes duplicate REQ tokens. Gorry, any thoughts? (*)
> 
> I don’t see UDP as replicating options without direction from the application layer. This isn’t like IP where there was never intended to be such control. For UDP, we should assume that options are included per fragment or per datagram *at the discretion of the upper layer*.
> 
> What is the reason and benefit of providing that level of control and responsibility? How will the application use the information on responses to UD{ fragments?
> 
> I am reminded of the words of one of my mentors, who described such an excess of flexibility as "independently steerable front wheels".
> 
> We do not need that. We need this spec to be as simple as possible and unambiguous to implement. Making UDP fragments visible to the protocol running on top of UDP without a clear reason to do so is a clear violation of those principles.
> 
> Mike Heard