Re: [tsvwg] draft-ietf-tsvwg-udp-options-13: Comments concerning Fragments

Gorry Fairhurst <gorry@erg.abdn.ac.uk> Wed, 02 March 2022 15:58 UTC

Return-Path: <gorry@erg.abdn.ac.uk>
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 9AC023A0D14 for <tsvwg@ietfa.amsl.com>; Wed, 2 Mar 2022 07:58:47 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 dsXz0mQ-Wq39 for <tsvwg@ietfa.amsl.com>; Wed, 2 Mar 2022 07:58:42 -0800 (PST)
Received: from pegasus.erg.abdn.ac.uk (pegasus.erg.abdn.ac.uk [137.50.19.135]) by ietfa.amsl.com (Postfix) with ESMTP id E5CC63A0C35 for <tsvwg@ietf.org>; Wed, 2 Mar 2022 07:58:39 -0800 (PST)
Received: from [192.168.1.64] (fgrpf.plus.com [212.159.18.54]) by pegasus.erg.abdn.ac.uk (Postfix) with ESMTPSA id 689431B0015C; Wed, 2 Mar 2022 15:58:35 +0000 (GMT)
Content-Type: multipart/alternative; boundary="------------xGkDFcqq9c6rSI1tC0k6377f"
Message-ID: <cd6e8e06-e5d6-163b-b3f9-aee5e3028da6@erg.abdn.ac.uk>
Date: Wed, 02 Mar 2022 15:58:34 +0000
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:91.0) Gecko/20100101 Thunderbird/91.6.1
To: "touch@strayalpha.com" <touch@strayalpha.com>
Cc: "tsvwg@ietf.org" <tsvwg@ietf.org>
References: <8f653c56-592a-62f9-4b25-d382eac607e9@erg.abdn.ac.uk> <2504CC9C-001D-4386-9B85-A7D5FD5E6F21@strayalpha.com>
From: Gorry Fairhurst <gorry@erg.abdn.ac.uk>
In-Reply-To: <2504CC9C-001D-4386-9B85-A7D5FD5E6F21@strayalpha.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/5Okjt2z4S_GuBhS2DxWJYAe6YaI>
Subject: Re: [tsvwg] draft-ietf-tsvwg-udp-options-13: Comments concerning Fragments
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: Wed, 02 Mar 2022 15:58:56 -0000

On 02/03/2022 04:50, touch@strayalpha.com wrote:
> Hi, all,
>
> Not sure I addressed these specifically, so here goes (as there’s an 
> update coming)…
>
> Joe
> —
> Dr. Joe Touch, temporal epistemologist
> www.strayalpha.com <http://www.strayalpha.com>
>
>> On Aug 31, 2021, at 3:27 AM, Gorry Fairhurst <gorry@erg.abdn.ac.uk> 
>> wrote:
>>
>> I reviewed the latest revision (13) of the draft and have the 
>> following questions relating to the use of Fragments.
>>
>> Best wishes,
>>
>> Gorry
>>
>> (as an individual)
>> ===
>> In section 5.5
>>
>> “   Legacy receivers interpret FRAG messages as zero-length payload
>>    packets (i.e., UDP Length field is 8, the length of just the UDP
>>    header), which would not affect the receiver unless the presence of
>>    the packet itself were a signal.”
>> - can you supply a reference here? (If no other then sect 5 of RFC8085).
>
> Done.
>
>> ===
>> “ This allows either pre-reassembly or post-reassembly
>>    UDP option effects.”
>> - I think I understand a use case and it would be nice to have an 
>> example of using both per-fragment and per-datagram options: could 
>> this be used with fragments req/res options to determine a suitable 
>> PMTU, and the time options used per reassembled datagram (since in 
>> many case this needs to measure the time across the reassembled 
>> end-to-end datagram path).
>
> Done.
>
>> ===
>>    >> UDP reassembly space limits SHOULD NOT be implemented as an
>>    aggregate, to avoid cross-socketpair DOS attacks.
>> - Please explain “aggregate” (is this across multiple socket-pairs?)
>
> Done:
>
> >> UDP reassembly space limits SHOULD NOT be computed as a shared 
> resource across multiple sockets, to avoid cross-socketpair DOS attacks.
>
>
>> ===
>>    Any additional UDP options, if used, follow the FRAG option in the
>>    final fragment and would be included in the reassembled packet.
>> - I don’t like the word “additional” here, can you find a better word 
>> (per-datagram?)
>
> Done.
>
>> ===
>> 5.7. Maximum Reassembled Segment Size (MRSS)
>> - I’m going to make a suggestion here, that was earlier brought up by 
>> Tom Jones: Why don’t we fix the DEFAULT MRSS to 2 packets when MRSS 
>> is supported. Larger values might be supported, which would be fine, 
>> but the case of 2 might have some immediate benefit:
>> - A receiver can then fragment a UDP packet to tunnel of include UDP 
>> options, likely in many current cases a second fragment will be enough.
>> - A receiver can greatly simplify its processing if it tries to 
>> reassemble whenever it receives a second fragment of the same 
>> datagram. The simplification here mitigates some worry about attacks 
>> that target reassembly buffers or processing costs. He previously had 
>> not implemented fragment support because it was cumbersome to include 
>> in the OS he worked with.
>> - Thoughts?
>> ===
>
> We later converged on 3000 bytes or 2 fragments.
>
Thanks for looking at this carefully, This all sounds like what was 
discussed off-list.

Best wishes,

Gorry