Re: [Taps] MTU / equivalent at the transport layer

Michael Tuexen <Michael.Tuexen@lurchi.franken.de> Fri, 09 December 2016 20:28 UTC

Return-Path: <Michael.Tuexen@lurchi.franken.de>
X-Original-To: taps@ietfa.amsl.com
Delivered-To: taps@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D73221296C3 for <taps@ietfa.amsl.com>; Fri, 9 Dec 2016 12:28:47 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.497
X-Spam-Level:
X-Spam-Status: No, score=-5.497 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-2.896, SPF_HELO_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 7EfdJDQ9lhwp for <taps@ietfa.amsl.com>; Fri, 9 Dec 2016 12:28:46 -0800 (PST)
Received: from drew.franken.de (mail-n.franken.de [193.175.24.27]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0337E1293E1 for <taps@ietf.org>; Fri, 9 Dec 2016 12:28:46 -0800 (PST)
Received: from [192.168.1.103] (p508F1379.dip0.t-ipconnect.de [80.143.19.121]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTPSA id 99322721E280D; Fri, 9 Dec 2016 21:28:43 +0100 (CET)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 10.1 \(3251\))
From: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
In-Reply-To: <e01aeb13-6cc5-c8b0-9fca-59afb1e5f4db@isi.edu>
Date: Fri, 09 Dec 2016 21:28:42 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <7F789A8B-54E0-435F-8AF7-7387E6A87970@lurchi.franken.de>
References: <5F2E34E4-7D32-4BDB-B762-2ADB7994672B@ifi.uio.no> <477E5339-173E-4483-913B-F7213AA9444B@lurchi.franken.de> <e01aeb13-6cc5-c8b0-9fca-59afb1e5f4db@isi.edu>
To: Joe Touch <touch@isi.edu>
X-Mailer: Apple Mail (2.3251)
Archived-At: <https://mailarchive.ietf.org/arch/msg/taps/2o845zUN_lf3N6NYJAI7QQQpbl0>
Cc: Michael Welzl <michawe@ifi.uio.no>, taps WG <taps@ietf.org>
Subject: Re: [Taps] MTU / equivalent at the transport layer
X-BeenThere: taps@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Discussions on Transport Services <taps.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/taps>, <mailto:taps-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/taps/>
List-Post: <mailto:taps@ietf.org>
List-Help: <mailto:taps-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/taps>, <mailto:taps-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Dec 2016 20:28:48 -0000

> On 9 Dec 2016, at 21:23, Joe Touch <touch@isi.edu> wrote:
> 
> 
> 
> On 12/9/2016 12:14 PM, Michael Tuexen wrote:
>>> On 7 Dec 2016, at 15:54, Michael Welzl <michawe@ifi.uio.no> wrote:
>>> 
>>> Hi all,
>>> 
>>> I have a problem with one particular primitive, or lack of it, in UDP, UDP-Lite and SCTP. It's something I just don't get.
>>> 
>>> Consider this text from draft-fairhurst-taps-transports-usage-udp:
>>> 
>>> "GET_INTERFACE_MTU:  The GET_INTERFACE_MTU function a network-layer
>>>     function that indicates the largest unfragmented IP packet that
>>>     may be sent."
>>> 
>>> Indeed, this is a network-layer function. It's about the interface, not about UDP. Does that mean that, to decide how many bytes fit in the payload of a packet, the programmer needs to know if it's IPv4 or IPv6, with or without options, and do the calculation?
>>> If so, isn't it extremely odd that UDP doesn't offer a primitive that provides a more useful number: the available space in its payload, in bytes?
>>> 
>>> I also have the same question for SCTP.  For TCP, it's obvious that the application shouldn't bother, but not for UDP or SCTP.
>> In the API description in https://tools.ietf.org/html/rfc6458 the MTU exposed to the application
>> via the API is "the number of bytes available in an SCTP packet for chunks." I think this is the best
>> we can do at that interface...
> AFAICT, that's 1) in my list, e.g., the largest chunk that SCTP can send
> without having SCTP coordinate frag/reassembly. That doesn't itself
You need to take the DATA or I-DATA chunk header into account...
It is "the number of bytes in the packet for chunks", not "the number
of bytes for the chunk value for DATA (or I-DATA) chunks".
> indicate whether it's SCTP doing the rest or the network layer.
As I said, that is what is exposed to the upper layer via the API.
SCTP itself has procedures to detect the PMTU (of each path).
It does PMTU discovery by interacting with the IP layer...

Best regards
Michael
> 
> Joe
> 
> _______________________________________________
> Taps mailing list
> Taps@ietf.org
> https://www.ietf.org/mailman/listinfo/taps