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

Gorry Fairhurst <gorry@erg.abdn.ac.uk> Tue, 31 August 2021 10:27 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 8C51F3A3F3E for <tsvwg@ietfa.amsl.com>; Tue, 31 Aug 2021 03:27:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-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 Fml-JoXbmve6 for <tsvwg@ietfa.amsl.com>; Tue, 31 Aug 2021 03:27:10 -0700 (PDT)
Received: from pegasus.erg.abdn.ac.uk (pegasus.erg.abdn.ac.uk [137.50.19.135]) by ietfa.amsl.com (Postfix) with ESMTP id 587563A3F28 for <tsvwg@ietf.org>; Tue, 31 Aug 2021 03:27:10 -0700 (PDT)
Received: from GF-MBP-2.lan (fgrpf.plus.com [212.159.18.54]) by pegasus.erg.abdn.ac.uk (Postfix) with ESMTPSA id 614A81B00193; Tue, 31 Aug 2021 11:27:06 +0100 (BST)
To: "tsvwg@ietf.org" <tsvwg@ietf.org>
Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>
From: Gorry Fairhurst <gorry@erg.abdn.ac.uk>
Message-ID: <8f653c56-592a-62f9-4b25-d382eac607e9@erg.abdn.ac.uk>
Date: Tue, 31 Aug 2021 11:27:05 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:78.0) Gecko/20100101 Thunderbird/78.13.0
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/nrvmF9wCzsQq4Cjnhz9tGtw8ucY>
Subject: [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: Tue, 31 Aug 2021 10:27:23 -0000

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).
===
“ 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).
===
    >> 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?)
===
    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?)
===
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?
===