RFC 8899 - Packetization Layer Path MTU Discovery for Datagram Transports
Basic Information
- RFC Number: 8899
- Title: Packetization Layer Path MTU Discovery for Datagram Transports
- Publication Date: September 2020
- Status: Standards Track
- Updates: RFC 4821, RFC 4960, RFC 6951, RFC 8085, RFC 8261
- Authors:
- G. Fairhurst (University of Aberdeen)
- T. Jones (University of Aberdeen)
- M. Tüxen (Münster University of Applied Sciences)
- I. Rüngeler (Münster University of Applied Sciences)
- T. Völker (Münster University of Applied Sciences)
Abstract
This document specifies Datagram Packetization Layer Path MTU Discovery (DPLPMTUD). This is a robust method for Path MTU Discovery (PMTUD) for datagram Packetization Layers (PLs). It allows a PL, or a datagram application that uses a PL, to discover whether a network path can support the current size of datagram. This can be used to detect and reduce the message size when a sender encounters a packet black hole. It can also probe a network path to discover whether the maximum packet size can be increased. This provides functionality for datagram transports that is equivalent to the PLPMTUD specification for TCP, specified in RFC 4821, which it updates. It also updates the UDP Usage Guidelines to refer to this method for use with UDP datagrams and updates SCTP.
The document provides implementation notes for incorporating Datagram PMTUD into IETF datagram transports or applications that use datagram transports.
This specification updates RFC 4960, RFC 4821, RFC 6951, RFC 8085, and RFC 8261.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/rfc8899.
Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
Contents
- 1. Introduction
- 1.1. Classical Path MTU Discovery
- 1.2. Packetization Layer Path MTU Discovery
- 1.3. Path MTU Discovery for Datagram Services
- 2. Terminology
- 3. Features Required to Provide Datagram PLPMTUD
- 4. DPLPMTUD Mechanisms
- 4.1. PLPMTU Probe Packets
- 4.2. Confirmation of Probed Packet Size
- 4.3. Black Hole Detection and Reducing the PLPMTU
- 4.4. The Maximum Packet Size (MPS)
- 4.5. Disabling the Effect of PMTUD
- 4.6. Response to PTB Messages
- 4.6.1. Validation of PTB Messages
- 4.6.2. Use of PTB Messages
- 5. Datagram Packetization Layer PMTUD
- 5.1. DPLPMTUD Components
- 5.1.1. Timers
- 5.1.2. Constants
- 5.1.3. Variables
- 5.1.4. Overview of DPLPMTUD Phases
- 5.2. State Machine
- 5.3. Search to Increase the PLPMTU
- 5.3.1. Probing for a Larger PLPMTU
- 5.3.2. Selection of Probe Sizes
- 5.3.3. Resilience to Inconsistent Path Information
- 5.4. Robustness to Inconsistent Paths
- 5.1. DPLPMTUD Components
- 6. Specification of Protocol-Specific Methods
- 6.1. Application Support for DPLPMTUD with UDP or UDP-Lite
- 6.1.1. Application Request
- 6.1.2. Application Response
- 6.1.3. Sending Application Probe Packets
- 6.1.4. Initial Connectivity
- 6.1.5. Validating the Path
- 6.1.6. Handling of PTB Messages
- 6.2. DPLPMTUD for SCTP
- 6.2.1. SCTP/IPv4 and SCTP/IPv6
- 6.2.2. DPLPMTUD for SCTP/UDP
- 6.2.3. DPLPMTUD for SCTP/DTLS
- 6.3. DPLPMTUD for QUIC
- 6.1. Application Support for DPLPMTUD with UDP or UDP-Lite
- 7. IANA Considerations
- 8. Security Considerations
- 9. References
- 9.1. Normative References
- 9.2. Informative References
- Acknowledgments
- Authors' Addresses
Quick Navigation
-
Main Sections:
-
Key Concepts:
- PLPMTU (Packetization Layer PMTU): Estimated Path MTU at the packetization layer
- DPLPMTUD: Datagram Packetization Layer Path MTU Discovery
- MPS (Maximum Packet Size): Maximum application data size per datagram
- Probe Packet: Packet used to test if a path supports a specific size
- Black Hole: Situation where packets are dropped without sender's knowledge
Use Cases
This RFC applies to:
- Applications using UDP
- SCTP protocol implementations
- QUIC protocol implementations
- Other datagram-based transport protocols
- Scenarios requiring optimization of packet size for network efficiency
Related RFCs
- Updated RFCs: RFC 4821, RFC 4960, RFC 6951, RFC 8085, RFC 8261
- Related RFCs: RFC 1191 (IPv4 PMTUD), RFC 8201 (IPv6 PMTUD), RFC 4443 (ICMPv6)