Internet DRAFT - draft-bonica-intarea-lossless-pmtud

draft-bonica-intarea-lossless-pmtud







INTAREA WG                                                     R. Bonica
Internet-Draft                                                  M. Nayak
Intended status: Experimental                           Juniper Networks
Expires: May 3, 2020                                           B. Newton
                                                                H. Alpan
                                                           R. Rosborough
                                                            M. President
                                                     Harvey Mudd College
                                                        October 31, 2019


                  Lossless Path MTU Discovery (PMTUD)
                 draft-bonica-intarea-lossless-pmtud-01

Abstract

   This document describes alternative IPv4 PMTUD procedures that do not
   prevent IP fragmentation and do no rely on the network's ability to
   deliver ICMP Destination Unreachable messages to the source node.
   This document also defines a new ICMP message.  IPv4 nodes emit this
   new message when they reassemble a fragmented packet.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on May 3, 2020.

Copyright Notice

   Copyright (c) 2019 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



Bonica, et al.             Expires May 3, 2020                  [Page 1]

Internet-Draft               Lossless PMTUD                 October 2019


   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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Requirements Language . . . . . . . . . . . . . . . . . . . .   4
   3.  The ICMP Packet Reassembly Message  . . . . . . . . . . . . .   4
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   5
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   5
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   6
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   6

1.  Introduction

   For reasons described in [RFC1191], IPv4 source nodes estimate the
   Path MTU (PMTU) between themselves and destination nodes.  An
   extremely conservative source node estimates the PMTU for each path
   to be equal to the IPv4 Minimum Link MTU (See Note 1).  While such
   conservative estimates are guaranteed to be less than or equal to the
   actual PMTU, they are likely to be much less than the actual PMTU.
   This may adversely affect upper-layer protocol performance.

   By executing PMTU Discovery (PMTUD) [RFC1191] procedures, IPv4 source
   nodes can maintain less conservative PMTU estimates.  In PMTUD, the
   source node produces an initial PMTU estimate.  This initial estimate
   is equal to the MTU of the first link along the path to the
   destination node.  It can be greater than the actual PMTU.

   Having produced an initial PMTU estimate, the source node sends non-
   fragmentable packets to the destination node (see NOTE 2).  If one of
   these packets is larger than the actual PMTU, a downstream router
   will not be able to forward the packet through the next link along
   the path.  Therefore, the downstream router drops the packet and
   sends an Internet Control Message Protocol (ICMP) [RFC0792]
   Destination Unreachable message to the source node.  The Code field
   in the ICMP message is set to (4) "fragmentation needed".  The ICMP
   message also indicates the MTU of the link through which the packet
   could not be forwarded.  The source node uses this information to
   refine its PMTU estimate.





Bonica, et al.             Expires May 3, 2020                  [Page 2]

Internet-Draft               Lossless PMTUD                 October 2019


   PMTUD produces a running estimate of the PMTU between a source node
   and a destination node.  Because PMTU is dynamic, the PMTU estimate
   can be larger than the actual PMTU.  In order to detect PMTU
   increases, PMTUD occasionally resets the PMTU estimate to its initial
   value and repeats the procedure described above.

   Ideally, PMTUD operates as described above.  However, PMTUD relies on
   the network's ability to deliver ICMP Destination Unreachable
   messages to the source node.  If the network cannot deliver ICMP
   Destination Unreachable messages to the source node, PMTUD fails and
   connectivity may be lost.

   This document describes alternative PMTUD procedures that do no rely
   on the network's ability to deliver ICMP Destination Unreachable
   messages to the source node.  In these procedures, the source node
   produces an initial PMTU estimate.  This initial estimate is equal to
   the MTU of the first link along the path to the destination node.  It
   can be greater than the actual PMTU.

   Having produced an initial PMTU estimate, the source node sends
   fragmentable packets to the destination node.  If one of these
   packets is larger than the actual PMTU, a downstream router will not
   be able to forward the packet, in one piece, through the next link
   along the path.  Therefore, the downstream router fragments the
   packet and forwards each fragment to the destination node.  The
   destination node reassembles the packet and sends an informational
   ICMP message to the source node.  The informational message indicates
   that a packet has been reassembled.  It also indicates the size of
   the largest fragment received and contains as much of the original
   packet as possible without causing the ICMP message to exceed its
   maximum allowable size (i.e., 576 bytes).

   The source node should use information contained by the message to
   refine its PMTU estimate.  Having refined its PMTU estimate, the
   source node should refrain from sending packet long enough to require
   fragmentation.  However, the message may be lost by the network or
   ignored by the source node.  In this case, the source node may
   continue to send packets that require fragmentation and reassembly.

   In order to detect PMTU increases, the above-mentioned PMTUD
   procedures occasionally resets the PMTU estimate to its initial value
   and repeat the procedure described above.

   This document defines the new ICMP message, mentioned above.  The
   PMTUD procedures described herein are applicable to IPv4 only,
   because [RFC8200] does not allow fragmentation by transit nodes.





Bonica, et al.             Expires May 3, 2020                  [Page 3]

Internet-Draft               Lossless PMTUD                 October 2019


   This document does not update [RFC1191].  A source node can executed
   the PMTUD procedures described herein in addition to [RFC1191]
   procedures or instead of [RFC1191] procedures.

   NOTE 1: In IPv4, every host must be capable of receiving a packet
   whose length is equal to 576 bytes.  However, the IPv4 minimum link
   MTU is not 576.  Section 3.2 of [RFC0791] states that the IPv4
   minimum link MTU is 68 bytes.  But for practical purposes, many
   network operators consider the IPv4 minimum link MTU to be 576 bytes.
   So, for the purposes of this document, we assume that the IPv4
   minimum link MTU is 576 bytes.

   NOTE 2: The DF-bit in the IPv4 header distinguishes fragmentable IPv4
   packets from non-fragmentable IPv4 packets.  If the DF-bit is equal
   to 0, the packet is fragmentable.  If the DF-bit equals 1, the packet
   is not fragmentable.

2.  Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  The ICMP Packet Reassembly Message

   IPv4 nodes can emit an ICMP Packet Reassembly message when they
   reassemble a packet.  Figure 1 depicts the ICMP Packet Reassembly
   message.

        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |     Type      |     Code      |          Checksum             |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |     Unused    |    Length     |       Largest Fragment        |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                      Original Datagram                        |
       |                                                               |
       |                           //                                  |
       |                                                               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



               Figure 1: The ICMP Packet Reassembly Message




Bonica, et al.             Expires May 3, 2020                  [Page 4]

Internet-Draft               Lossless PMTUD                 October 2019


   o  Type (8 bits) - Packet Reassembly.  Value 253 (Experiment 1)

   o  Code (8-bits) - No Error (0), or Reassembly Error (1).

   o  Checksum (16 bits) - See [RFC0792].

   o  Unused (8 bits) - SHOULD be set to zero by sender.  MUST be
      ignored by receiver.

   o  Length (8 bits) - Length of the padded "original datagram" field,
      measured in 32-bit words.

   o  Largest Fragment (16-bits) - Size of the largest fragment
      received, measured in bytes,

   o  Original Datagram (variable length) - As much of the original
      packet as possible, without exceeding the maximum size of an ICMP
      message (576 bytes).  Must be padded to 32-bit boundary.  If Code
      equals Reassembly Error, this field contains the first fragment.

   As per [RFC1812], all ICMP messages, including the ICMP Packet
   Reassembly message, SHOULD be rate limited.

   The Code field is included for informational purposes only.  The
   receiving node SHOULD refine its PMTU estimate, regardless of the
   value contained by the code field.

4.  Security Considerations

   Security considerations for the procedures described herein are
   identical to those described for PMTUD.  See Section 8 of [RFC1191].
   [RFC5927]offers mitigations.

5.  IANA Considerations

   This document requires no IANA actions.

6.  Acknowledgements

   Thanks to TBD for their careful review of this document.

7.  References

7.1.  Normative References

   [RFC0791]  Postel, J., "Internet Protocol", STD 5, RFC 791,
              DOI 10.17487/RFC0791, September 1981,
              <https://www.rfc-editor.org/info/rfc791>.



Bonica, et al.             Expires May 3, 2020                  [Page 5]

Internet-Draft               Lossless PMTUD                 October 2019


   [RFC0792]  Postel, J., "Internet Control Message Protocol", STD 5,
              RFC 792, DOI 10.17487/RFC0792, September 1981,
              <https://www.rfc-editor.org/info/rfc792>.

   [RFC1191]  Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191,
              DOI 10.17487/RFC1191, November 1990,
              <https://www.rfc-editor.org/info/rfc1191>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8200]  Deering, S. and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", STD 86, RFC 8200,
              DOI 10.17487/RFC8200, July 2017,
              <https://www.rfc-editor.org/info/rfc8200>.

7.2.  Informative References

   [RFC1812]  Baker, F., Ed., "Requirements for IP Version 4 Routers",
              RFC 1812, DOI 10.17487/RFC1812, June 1995,
              <https://www.rfc-editor.org/info/rfc1812>.

   [RFC5927]  Gont, F., "ICMP Attacks against TCP", RFC 5927,
              DOI 10.17487/RFC5927, July 2010,
              <https://www.rfc-editor.org/info/rfc5927>.

Authors' Addresses

   Ron Bonica
   Juniper Networks
   2251 Corporate Park Drive
   Herndon, Virginia  20171
   USA

   Email: rbonica@juniper.net










Bonica, et al.             Expires May 3, 2020                  [Page 6]

Internet-Draft               Lossless PMTUD                 October 2019


   Manoj Nayak
   Juniper Networks
   Bangalore, KA  560103
   India

   Email: manojnayak@juniper.net


   Bradley Newton
   Harvey Mudd College
   340 Foothill Blvd.
   Claremont, California  91711
   USA

   Email: bnewton@hmc.edu


   Hakan Alpan
   Harvey Mudd College
   340 Foothill Blvd.
   Claremont, California  91711
   USA

   Email: halpan@hnc.edu


   Radon Rosborough
   Harvey Mudd College
   340 Foothill Blvd.
   Claremont, California  91711
   USA

   Email: rrosborough@hmc.edu


   Miles President
   Harvey Mudd College
   340 Foothill Blvd.
   Claremont, California  91711
   USA

   Email: mpresident@hmc.edu









Bonica, et al.             Expires May 3, 2020                  [Page 7]