rfc9268v3.txt   rfc9268.txt 
skipping to change at line 213 skipping to change at line 213
mean that the Min-PMTU value does not account for all links along a mean that the Min-PMTU value does not account for all links along a
path. path.
2. Motivation and Problem Solved 2. Motivation and Problem Solved
The current state of Path MTU Discovery on the Internet is The current state of Path MTU Discovery on the Internet is
problematic. The mechanisms defined in [RFC8201] are known to not problematic. The mechanisms defined in [RFC8201] are known to not
work well in all environments. It fails to work in various cases, work well in all environments. It fails to work in various cases,
including when nodes in the middle of the network do not send ICMPv6 including when nodes in the middle of the network do not send ICMPv6
PTB messages or rate-limited ICMPv6 messages or do not have a return PTB messages or rate-limited ICMPv6 messages or do not have a return
path to the source host. path to the source host. This results in many transport-layer
connections being configured to use smaller packets (e.g., 1280
This results in many transport-layer connections being configured to bytes) by default and makes it difficult to take advantage of paths
use smaller packets (e.g., 1280 bytes) by default and makes it with a larger PMTU where they do exist. Applications that send large
difficult to take advantage of paths with a larger PMTU where they do packets are forced to use IPv6 fragmentation [RFC8200], which can
exist. Applications that send large packets are forced to use IPv6 reduce the reliability of Internet communication [RFC8900].
fragmentation [RFC8200], which can reduce the reliability of Internet
communication [RFC8900].
Encapsulations and network-layer tunnels further reduce the payload Encapsulations and network-layer tunnels further reduce the payload
size available for a transport protocol to use. Also, some use cases size available for a transport protocol to use. Also, some use cases
increase packet overhead, for example, Network Virtualization Using increase packet overhead, for example, Network Virtualization Using
Generic Routing Encapsulation (NVGRE) [RFC7637] encapsulates Layer 2 Generic Routing Encapsulation (NVGRE) [RFC7637] encapsulates Layer 2
(L2) packets in an outer IP header and does not allow IP (L2) packets in an outer IP header and does not allow IP
fragmentation. fragmentation.
Sending larger packets can improve host performance, e.g., avoiding Sending larger packets can improve host performance, e.g., avoiding
limits to packet processing by the packet rate. An example of this limits to packet processing by the packet rate. An example of this
skipping to change at line 304 skipping to change at line 302
Option Type (see Section 4.2 of [RFC8200]): Option Type (see Section 4.2 of [RFC8200]):
BB 00 Skip over this Option and continue processing. BB 00 Skip over this Option and continue processing.
C 1 Option Data can change en route to the packet's final C 1 Option Data can change en route to the packet's final
destination. destination.
TTTTT 10000 Option Type assigned from IANA [IANA-HBH]. TTTTT 10000 Option Type assigned from IANA [IANA-HBH].
Length: 4 The size of the value field in Option Data Length: 4 The size of the value field in Option Data
field supports PMTU values from 0 to 65,534 octets, the field supports PMTU values from 0 to 65,534
maximum size represented by the Path MTU Option. octets, the maximum size represented by the
Path MTU Option.
Min-PMTU: n 16-bits. The minimum MTU recorded along the path Min-PMTU: n 16-bits. The minimum MTU recorded along the path
in octets, reflecting the smallest link MTU that in octets, reflecting the smallest link MTU that
the packet experienced along the path. the packet experienced along the path.
A value less than the IPv6 minimum link A value less than the IPv6 minimum link
MTU [RFC8200] MUST be ignored. MTU [RFC8200] MUST be ignored.
Rtn-PMTU: n 15-bits. The returned Path MTU field, carrying the 15 Rtn-PMTU: n 15-bits. The returned Path MTU field, carrying the 15
most significant bits of the latest received Min-PMTU most significant bits of the latest received Min-PMTU
field for the forward path. The value zero means that field for the forward path. The value zero means that
skipping to change at line 493 skipping to change at line 492
* The MinPMTU HBH Option can be used with ICMPv6 [RFC4443]. This * The MinPMTU HBH Option can be used with ICMPv6 [RFC4443]. This
requires a response from the remote node and therefore is requires a response from the remote node and therefore is
restricted to use with ICMPv6 echo messages. The MinPMTU HBH restricted to use with ICMPv6 echo messages. The MinPMTU HBH
Option could provide additional information about the PMTU that Option could provide additional information about the PMTU that
might be supported by a path. This could be used as a diagnostic might be supported by a path. This could be used as a diagnostic
tool to measure the PMTU of a path. As with other uses, the tool to measure the PMTU of a path. As with other uses, the
actual supported PMTU is only confirmed after receiving a response actual supported PMTU is only confirmed after receiving a response
to a subsequent probe of the PMTU size. to a subsequent probe of the PMTU size.
* A datagram transport can utilize Datagram Packetization Layer PMTU * A datagram transport can utilize DPLPMTUD [RFC8899]. For example,
Discovery (DPLPMTUD) [RFC8899]. For example, QUIC (see QUIC (see Section 14.3 of [RFC9000]) can use DPLPMTUD to determine
Section 14.3 of [RFC9000]) can use DPLPMTUD to determine whether whether the path to a destination will support a desired maximum
the path to a destination will support a desired maximum datagram datagram size. When using the IPv6 MinPMTU HBH Option, the Option
size. When using the IPv6 MinPMTU HBH Option, the Option could be could be added to an additional QUIC PMTU probe that is of minimal
added to an additional QUIC PMTU probe that is of minimal size (or size (or one no larger than the currently supported PMTU size).
one no larger than the currently supported PMTU size). Once the Once the return Path MTU value in the MinPMTU HBH Option has been
return Path MTU value in the MinPMTU HBH Option has been learned, learned, DPLPMTUD can be triggered to test for a larger PLPMTU
DPLPMTUD can be triggered to test for a larger PLPMTU using an using an appropriately sized PLPMTU probe packet (see
appropriately sized PLPMTU probe packet (see Section 5.3.1 of Section 5.3.1 of [RFC8899]).
[RFC8899]).
* The use of this Option with DNS and DNSSEC over UDP is expected to * The use of this Option with DNS and DNSSEC over UDP is expected to
work for paths where the PMTU is symmetric. The DNS server will work for paths where the PMTU is symmetric. The DNS server will
learn the PMTU from the DNS query messages. If the Rtn-PMTU value learn the PMTU from the DNS query messages. If the Rtn-PMTU value
is smaller, then a large DNSSEC response might be dropped and the is smaller, then a large DNSSEC response might be dropped and the
known problems with PMTUD will then occur. DNS and DNSSEC over known problems with PMTUD will then occur. DNS and DNSSEC over
transport protocols that can carry the PMTU ought to work. transport protocols that can carry the PMTU ought to work.
* This method also can be used with anycast to discover the PMTU of * This method also can be used with anycast to discover the PMTU of
the path, but the use needs to be aware that the anycast binding the path, but the use needs to be aware that the anycast binding
skipping to change at line 988 skipping to change at line 986
----Probe size d ----------------------------------------> ----Probe size d ---------------------------------------->
<---------------------------------- ACK of probe -------- <---------------------------------- ACK of probe --------
----Packets of data size d ------------------------------> ----Packets of data size d ------------------------------>
<---------------------------------- ACK of probe -------- <---------------------------------- ACK of probe --------
... ...
----Probe size e --------------X ----Probe size e --------------X
X----ICMPv6 PTB d' ----| X----ICMPv6 PTB d' ----|
----Packets of data size d ------------------------------> ----Packets of data size d ------------------------------>
----Probe size e --------------X (again) ----Probe size e --------------X (again)
X----ICMPv6 PTB d' ----| X----ICMPv6 PTB d' ----|
----Packets of data size d ------------------------------- ----Packets of data size d ------------------------------>
... ...
etc. until MaxProbes are unsuccessful and search phase completes. etc. until MaxProbes are unsuccessful and search phase completes.
----Packets of data size d ------------------------------> ----Packets of data size d ------------------------------>
Figure 3 Figure 3
The second example considers DPLPMTUD with the MinPMTU HBH Option set The second example considers DPLPMTUD with the MinPMTU HBH Option set
on a connectivity probe packet. on a connectivity probe packet.
The IPv6 Option is sent end to end, and the Min-PMTU is updated by a The IPv6 Option is sent end to end, and the Min-PMTU is updated by a
skipping to change at line 1033 skipping to change at line 1031
connectivity probe packet is dropped. connectivity probe packet is dropped.
In this case, the packet with the MinPMTU HBH Option is not received. In this case, the packet with the MinPMTU HBH Option is not received.
DPLPMTUD searches using probe packets of increasing size, increasing DPLPMTUD searches using probe packets of increasing size, increasing
the PLPMTU when the probes are confirmed. An ICMPv6 PTB message is the PLPMTU when the probes are confirmed. An ICMPv6 PTB message is
received when the probed size exceeds the actual PMTU, indicating a received when the probed size exceeds the actual PMTU, indicating a
PTB_SIZE of d'. DPLPMTUD immediately sends a probe packet of the PTB_SIZE of d'. DPLPMTUD immediately sends a probe packet of the
target size d'. If the probe packet is confirmed for the path, the target size d'. If the probe packet is confirmed for the path, the
PLPMTU is updated, allowing the source to use data packets up to size PLPMTU is updated, allowing the source to use data packets up to size
d'. If the ICMPv6 PTB message is not received, the DPLPMTU will be d'. If the ICMPv6 PTB message is not received, the DPLPMTU will be
the last confirmed probe size d. the last confirmed probe size, which is d.
----Packets of data size a -------------------------------> ----Packets of data size a ------------------------------->
----Connectivity probe with MinPMTU --------X ----Connectivity probe with MinPMTU --------X
----Packets of data size a -------------------------------> ----Packets of data size a ------------------------------->
----Probe size b -----------------------------------------> ----Probe size b ----------------------------------------->
<---------------------------------- ACK of probe -------- <---------------------------------- ACK of probe --------
----Packets of data size b -------------------------------> ----Packets of data size b ------------------------------->
----Probe size c -----------------------------------------> ----Probe size c ----------------------------------------->
<---------------------------------- ACK of probe -------- <---------------------------------- ACK of probe --------
----Packets of data size c -------------------------------> ----Packets of data size c ------------------------------->
 End of changes. 5 change blocks. 
23 lines changed or deleted 21 lines changed or added

This html diff was produced by rfcdiff 1.48.