<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.21 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-boucadair-tcpm-rst-diagnostic-payload-10" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title abbrev="AC Glue for VPN Models">TCP RST Diagnostic Payload</title>
    <seriesInfo name="Internet-Draft" value="draft-boucadair-tcpm-rst-diagnostic-payload-10"/>
    <author fullname="Mohamed Boucadair">
      <organization>Orange</organization>
      <address>
        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>
    <author fullname="Tirumaleswar Reddy">
      <organization>Nokia</organization>
      <address>
        <postal>
          <country>India</country>
        </postal>
        <email>kondtir@gmail.com</email>
      </address>
    </author>
    <author fullname="Jason Xing">
      <organization>Tencent</organization>
      <address>
        <email>kerneljasonxing@gmail.com</email>
      </address>
    </author>
    <date year="2024" month="December" day="11"/>
    <area>WIT</area>
    <workgroup>tcpm</workgroup>
    <keyword>Service diagostc</keyword>
    <abstract>
      <?line 51?>

<t>This document specifies a diagnostic payload format returned in TCP
   RST segments.  Such payloads are used to share with an endpoint the
   reasons for which a TCP connection has been reset.  Sharing this
   information is meant to ease diagnostic and troubleshooting.</t>
    </abstract>
  </front>
  <middle>
    <?line 58?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>A TCP connection <xref target="RFC9293"/> can be reset by a peer for various
   reasons, e.g., received data does not correspond to an active
   connection.  Also, a TCP connection can be reset by an on-path
   service function (e.g., Carrier Grade NAT (CGN) <xref target="RFC6888"/>, NAT64
   <xref target="RFC6146"/>, or firewall) for several reasons.  Typically, a Network
   Address Translator (NAT) function can generate an RST segment to
   notify an endpoint upon the expiry of the lifetime of the
   corresponding mapping entry or because an RST segment was received
   from a peer (<xref section="2.2" sectionFormat="of" target="RFC7857"/>).  A TCP connection can also be
   closed by a user or an application at any time.  However, the peer
   that receives an RST segment does not have any hint about the reason
   that led to terminating the connection.  Likewise, the application
   that relies upon such a TCP connection may not easily identify the
   reason for the connection closure.  Troubleshooting such events at
   the remote side of the connection that receives the RST segment may
   not be trivial.</t>
      <t>This document fills this void by specifying a format of the
   diagnostic payload that is returned in an RST segment.  Returning
   such data is consistent with the provision in <xref section="3.5.3" sectionFormat="of" target="RFC9293"/> for RST segments, especially:</t>
      <blockquote>
        <t>"TCP implementations <bcp14>SHOULD</bcp14> allow a received RST segment to
 include data (SHLD-2)."</t>
      </blockquote>
      <t>This document does not change the conditions under which an RST
   segment is generated (<xref section="3.5.2" sectionFormat="of" target="RFC9293"/>).</t>
      <t>The generic procedure for processing an RST segment is specified in
   <xref section="3.5.3" sectionFormat="of" target="RFC9293"/>.  Only the deviations from that procedure
   to insert and validate a diagnostic payload is provided in <xref target="payload"/>.
   <xref target="examples"/> provides a set of examples to illustrate the use of TCP RST
   diagnostic payloads.</t>
      <t>This document specifies the format and the overall approach to ease
   maintaining the list of codes while allowing for adding new codes as
   needed in the future and accommodating any existing vendor-specific
   codes.  An initial version of error codes is available in Table 2.
   However, the authoritative source to retrieve the full list of error
   codes is the IANA-maintained registry (<xref target="causes"/>).</t>
      <t>Preliminary investigation based on some major CGN vendors revealed
   that RSTs with data are not discarded and are translated according to
   any matching mapping entry.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>This document makes use of the terms defined in <xref section="4" sectionFormat="of" target="RFC9293"/>.</t>
    </section>
    <section anchor="payload">
      <name>RST Diagnostic Payload</name>
      <t>The RST diagnostic payload <bcp14>MUST</bcp14> be encoded using Concise Binary
   Object Representation (CBOR) Sequence <xref target="RFC8742"/>.  The Concise Data
   Definition Language (CDDL) <xref target="RFC8610"/> for the diagnostic payload is
   shown in <xref target="cddl"/>.</t>
      <figure anchor="cddl">
        <name>Structure of the RST Diagnostic Payload</name>
        <sourcecode type="CDDL"><![CDATA[
    ; This defines an array, the elements of which are to be used
    ; in a CBOR Sequence. There is exactly one occurrence.
    diagnostic-payload = [magic-cookie, reason]
    ; Magic cookie to identify a payload that follows this specification
    magic-cookie = 12345
    ; Reset reason details:
    reason= {
      ? reason-code: uint,
      ? pen:uint,
      ? reason-description: tstr,
    }
]]></sourcecode>
      </figure>
      <t>The RST diagnostic payload comprises a magic cookie that is used to
   unambiguously identify an RST payload that follows this
   specification.  It <bcp14>MUST</bcp14> be set to the RFC number to be assigned to
   this document.</t>
      <ul empty="true">
        <li>
          <t>Note to the RFC Editor: Please replace "12345" with the RFC number
assigned to this document.</t>
        </li>
      </ul>
      <t>All parameters in the reason component of an RST diagnostic payload
   are mapped to their CBOR key values as specified in <xref target="cbor"/>.  The
   description of these parameters is as follows:</t>
      <dl>
        <dt>reason-code:</dt>
        <dd>
          <t>This parameter takes a value from an available registry
such as the "TCP Failure Causes" registry (<xref target="causes"/>).</t>
        </dd>
        <dt>pen:</dt>
        <dd>
          <t>Includes a Private Enterprise Number
<xref target="Private-Enterprise-Numbers"/>.  This parameter <bcp14>MAY</bcp14> be included when
the reason code is not taken from the IANA-maintained registry
(<xref target="causes"/>), but from a vendor-specific registry.</t>
        </dd>
        <dt>reason-description:</dt>
        <dd>
          <t>Includes a brief description of the reset reason
encoded as UTF-8 <xref target="RFC3629"/>.  This parameter <bcp14>SHOULD NOT</bcp14> be included
if a reason code is supplied.  This parameter is useful only for
reset reasons that are not yet registered or for application-
specific reset reasons.</t>
        </dd>
      </dl>
      <t>At least one of "reason-code" and "reason-description" parameters
   <bcp14>MUST</bcp14> be included in an RST diagnostic payload.  The "pen" parameter
   <bcp14>MUST</bcp14> be omitted if a reason code from the IANA-maintained registry
   (<xref target="causes"/>) fits the reset case.</t>
      <t>Malformed RST diagnostic payload messages that include the magic
   cookie <bcp14>MUST</bcp14> be silently ignored by the receiver.</t>
      <t>A peer that receives a valid diagnostic payload may pass the reset
   reason information to the local application in addition to the
   information (<bcp14>MUST</bcp14>-12) described in <xref section="3.6" sectionFormat="of" target="RFC9293"/>.  That
   information may also be logged locally, unless a local policy
   specifies otherwise.  How the information is passed to an application
   and how it is stored locally is implementation-specific.</t>
      <t>As per <xref section="3.6" sectionFormat="of" target="RFC9293"/>, one or more RST segments can be sent
   to reset a connection.  Whether a TCP endpoint elects to send more
   than one RST with only a subset of them that include the diagnostic
   payload is implementation-specific.</t>
    </section>
    <section anchor="examples">
      <name>Some Examples</name>
      <t>To ease readability, the CBOR diagnostic notation (<xref section="8" sectionFormat="of" target="RFC8949"/>)
   with the parameter names rather than their CBOR key values
   in <xref target="cbor"/> is used in Figures 3, 4, 5, and 6.</t>
      <t><xref target="fig-2"/> depicts an example of an RST diagnostic payload that is
   generated to inform the peer that the TCP connection is reset because
   an ACK was received from that peer while the connection is still in
   the LISTEN state (<xref section="3.10.7.2" sectionFormat="of" target="RFC9293"/>).</t>
      <figure anchor="fig-2">
        <name>Example of an RST Diagnostic Payload with Reason Code (CBOR Encoding)</name>
        <sourcecode type="CDDL"><![CDATA[
   19 3039 # unsigned(12345)
   A1    # map(1)
      01 # unsigned(1)
      02 # unsigned(2)
]]></sourcecode>
      </figure>
      <t><xref target="fig-3"/> depicts the same RST diagnostic payload as the one shown in
   <xref target="fig-2"/> but following the CBOR diagnostic notation.</t>
      <figure anchor="fig-3">
        <name>Example of an RST Diagnostic Payload with Reason Code (Diagnostic Notation)</name>
        <sourcecode type="CDDL"><![CDATA[
   [
     12345,
     {
       "reason-code": 2
     }
   ]
]]></sourcecode>
      </figure>
      <t><xref target="fig-4"/> shows an example of an RST diagnostic payload that includes
   a free description to report a case that is not covered by an
   appropriate code from the IANA-maintained registry (<xref target="causes"/>).</t>
      <figure anchor="fig-4">
        <name>Example of an RST Diagnostic Payload with Reason Description (Diagnostic Notation)</name>
        <sourcecode type="CDDL"><![CDATA[
   [
     12345,
     {
       "reason-description": "brief human-readable description"
     }
   ]
]]></sourcecode>
      </figure>
      <t>An RST diagnostic payload may also be sent by an on-path service
   function.  For example, the following diagnostic payload is returned
   by a NAT function upon expiry of the mapping entry to which the TCP
   connection is bound (<xref target="fig-5"/>).</t>
      <figure anchor="fig-5">
        <name>Example of an RST Diagnostic Payload to Report Connection Timeout (Diagnostic Notation)</name>
        <sourcecode type="CDDL"><![CDATA[
   [
     12345,
     {
       "reason-code": 8
     }
   ]
]]></sourcecode>
      </figure>
      <t><xref target="fig-6"/> illustrates an RST diagnostic payload that is returned by a
   peer that resets a TCP connection for a reason code 1234 defined by a
   vendor with the private enterprise number 32473.</t>
      <figure anchor="fig-6">
        <name>Example of an RST Diagnostic Payload to Report Vendor-Specific Reason Code (Diagnostic Notation)</name>
        <sourcecode type="CDDL"><![CDATA[
   [
     12345,
     {
       "reason-code": 1234,
       "pen": 32473
     }
   ]
]]></sourcecode>
      </figure>
      <t><xref target="fig-6"/> uses the Enterprise Number 32473 defined for documentation
   use <xref target="RFC5612"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="cbor">
        <name>RST Diagnostic Payload CBOR Key Values</name>
        <t>IANA is requested to create a new registry titled "RST Diagnostic
   Payload CBOR Key Values" under the "Transmission Control Protocol
   (TCP) Parameters" registry group <xref target="IANA-TCP"/>.</t>
        <t>The key value <bcp14>MUST</bcp14> be an integer in the 1-255 range.</t>
        <t>The assignment policy for this registry is "IETF Review" (<xref section="4.8" sectionFormat="of" target="RFC8126"/>).</t>
        <t>The structure of this subregistry and the initial values are provided
   below:</t>
        <table anchor="sub">
          <name>Initial CBOR Keys</name>
          <thead>
            <tr>
              <th align="center">Parameter Name</th>
              <th align="center">CBOR  Key</th>
              <th align="center">CBOR Major Type &amp; Information</th>
              <th align="center">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">reason-code</td>
              <td align="center">1</td>
              <td align="center">0 unsigned</td>
              <td align="center">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">pen</td>
              <td align="center">2</td>
              <td align="center">0 unsigned</td>
              <td align="center">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">reason-description</td>
              <td align="center">3</td>
              <td align="center">3 text string</td>
              <td align="center">[ThisDocument]</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="causes">
        <name>New Registry for TCP Failure Causes</name>
        <t>This document requests IANA to create a new registry entitled "TCP
   Failure Causes" under the "Transmission Control Protocol (TCP)
   Parameters" registry group <xref target="IANA-TCP"/>.</t>
        <t>Values are taken from the 1-65535 range.</t>
        <t>The assignment policy for this registry is "Expert Review"
   (<xref section="4.5" sectionFormat="of" target="RFC8126"/>).</t>
        <t>The designated experts may approve registration once they checked
   that the new requested code is not covered by an existing code and if
   the provided reasoning to register the new code is acceptable.  A
   registration request may supply a pointer to a specification where
   that code is defined.  However, a registration may be accepted even
   if no permanent and readily available public specification is
   available.</t>
        <t>The registry is initially populated with the values listed in
   <xref target="initial"/>.</t>
        <table anchor="initial">
          <name>Initial TCP Failure Causes</name>
          <thead>
            <tr>
              <th align="center">Value</th>
              <th align="left">Description</th>
              <th align="left">Specification (if available)</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">1</td>
              <td align="left">Illegal Option</td>
              <td align="left">
                <xref section="3.1" sectionFormat="of" target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">2</td>
              <td align="left">Desynchronized state</td>
              <td align="left">
                <xref section="3.5.1" sectionFormat="of" target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">3</td>
              <td align="left">New data is received after CLOSE is called</td>
              <td align="left">Sections 3.6.1 and  3.10.7.1 of <xref target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">4</td>
              <td align="left">ABORT Process</td>
              <td align="left">
                <xref section="3.10.5" sectionFormat="of" target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">5</td>
              <td align="left">Unexpected ACK received by non-synchronized state connection</td>
              <td align="left">
                <xref section="3.10.7" sectionFormat="of" target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">6</td>
              <td align="left">Unexpected SYN in the window</td>
              <td align="left">
                <xref section="3.10.7" sectionFormat="of" target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">7</td>
              <td align="left">Unexpected security compartment</td>
              <td align="left">
                <xref section="A.1" sectionFormat="of" target="RFC9293"/></td>
            </tr>
            <tr>
              <td align="center">8</td>
              <td align="left">Malformed Message</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">9</td>
              <td align="left">Not Authorized</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">10</td>
              <td align="left">Resource Exceeded</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">11</td>
              <td align="left">Network Failure</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">12</td>
              <td align="left">Reset received from he peer</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">13</td>
              <td align="left">Destination Unreachable</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">14</td>
              <td align="left">Connection Timeout</td>
              <td align="left">[ThisDocument]</td>
            </tr>
            <tr>
              <td align="center">15</td>
              <td align="left">Too much outstanding data</td>
              <td align="left">
                <xref section="3.6" sectionFormat="of" target="RFC8684"/></td>
            </tr>
            <tr>
              <td align="center">16</td>
              <td align="left">Unacceptable performance</td>
              <td align="left">
                <xref section="3.6" sectionFormat="of" target="RFC8684"/></td>
            </tr>
            <tr>
              <td align="center">17</td>
              <td align="left">Middlebox interference</td>
              <td align="left">
                <xref section="3.6" sectionFormat="of" target="RFC8684"/></td>
            </tr>
          </tbody>
        </table>
        <t>Note that codes in the 8-14 range can be used by service functions (Carrier Grade NAT (CGN), firewall, proxy, etc.).
   such as translators.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t><xref target="RFC9293"/> discusses TCP-related security considerations.  In
   particular, RST-specific attacks and their mitigations are discussed
   in <xref section="3.10.7.3" sectionFormat="of" target="RFC9293"/>.</t>
      <t>In addition to these considerations, it is <bcp14>RECOMMENDED</bcp14> to control the
   size of acceptable diagnostic payload and keep it as brief as
   possible.  The <bcp14>RECOMMENDED</bcp14> acceptable maximum size of the RST
   diagnostic payload is 255 octets.</t>
      <t>Also, it is <bcp14>RECOMMENDED</bcp14> to avoid leaking privacy-related information
   as part of the diagnostic payload (e.g., including a description such
   as "user X resets explicitly the connection" is not recommended).
   The "reason-description" string, when present, should not include any
   private information that an observer would not otherwise have access
   to.</t>
      <t>The presence of vendor-specific reason codes (Section 3) may be used
   to fingerprint hosts.  Such a concern does not apply if the reason
   codes are taken from the IANA-maintained registry.  Implementers are,
   thus, encouraged to register new codes within IANA instead of
   maintaining specific registries.</t>
      <t>The reason description, when present, is not intended to be displayed
   to end users, but to be consumed by applications.  Such a description
   may carry a malicious message to mislead the end-user.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC9293">
          <front>
            <title>Transmission Control Protocol (TCP)</title>
            <author fullname="W. Eddy" initials="W." role="editor" surname="Eddy"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document specifies the Transmission Control Protocol (TCP). TCP is an important transport-layer protocol in the Internet protocol stack, and it has continuously evolved over decades of use and growth of the Internet. Over this time, a number of changes have been made to TCP as it was specified in RFC 793, though these have only been documented in a piecemeal fashion. This document collects and brings those changes together with the protocol specification from RFC 793. This document obsoletes RFC 793, as well as RFCs 879, 2873, 6093, 6429, 6528, and 6691 that updated parts of RFC 793. It updates RFCs 1011 and 1122, and it should be considered as a replacement for the portions of those documents dealing with TCP requirements. It also updates RFC 5961 by adding a small clarification in reset handling while in the SYN-RECEIVED state. The TCP header control bits from RFC 793 have also been updated based on RFC 3168.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="7"/>
          <seriesInfo name="RFC" value="9293"/>
          <seriesInfo name="DOI" value="10.17487/RFC9293"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8742">
          <front>
            <title>Concise Binary Object Representation (CBOR) Sequences</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document describes the Concise Binary Object Representation (CBOR) Sequence format and associated media type "application/cbor-seq". A CBOR Sequence consists of any number of encoded CBOR data items, simply concatenated in sequence.</t>
              <t>Structured syntax suffixes for media types allow other media types to build on them and make it explicit that they are built on an existing media type as their foundation. This specification defines and registers "+cbor-seq" as a structured syntax suffix for CBOR Sequences.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8742"/>
          <seriesInfo name="DOI" value="10.17487/RFC8742"/>
        </reference>
        <reference anchor="RFC8610">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document proposes a notational convention to express Concise Binary Object Representation (CBOR) data structures (RFC 7049). Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
        <reference anchor="RFC3629">
          <front>
            <title>UTF-8, a transformation format of ISO 10646</title>
            <author fullname="F. Yergeau" initials="F." surname="Yergeau"/>
            <date month="November" year="2003"/>
            <abstract>
              <t>ISO/IEC 10646-1 defines a large character set called the Universal Character Set (UCS) which encompasses most of the world's writing systems. The originally proposed encodings of the UCS, however, were not compatible with many current applications and protocols, and this has led to the development of UTF-8, the object of this memo. UTF-8 has the characteristic of preserving the full US-ASCII range, providing compatibility with file systems, parsers and other software that rely on US-ASCII values but are transparent to other values. This memo obsoletes and replaces RFC 2279.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="63"/>
          <seriesInfo name="RFC" value="3629"/>
          <seriesInfo name="DOI" value="10.17487/RFC3629"/>
        </reference>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC8684">
          <front>
            <title>TCP Extensions for Multipath Operation with Multiple Addresses</title>
            <author fullname="A. Ford" initials="A." surname="Ford"/>
            <author fullname="C. Raiciu" initials="C." surname="Raiciu"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="O. Bonaventure" initials="O." surname="Bonaventure"/>
            <author fullname="C. Paasch" initials="C." surname="Paasch"/>
            <date month="March" year="2020"/>
            <abstract>
              <t>TCP/IP communication is currently restricted to a single path per connection, yet multiple paths often exist between peers. The simultaneous use of these multiple paths for a TCP/IP session would improve resource usage within the network and thus improve user experience through higher throughput and improved resilience to network failure.</t>
              <t>Multipath TCP provides the ability to simultaneously use multiple paths between peers. This document presents a set of extensions to traditional TCP to support multipath operation. The protocol offers the same type of service to applications as TCP (i.e., a reliable bytestream), and it provides the components necessary to establish and use multiple TCP flows across potentially disjoint paths.</t>
              <t>This document specifies v1 of Multipath TCP, obsoleting v0 as specified in RFC 6824, through clarifications and modifications primarily driven by deployment experience.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8684"/>
          <seriesInfo name="DOI" value="10.17487/RFC8684"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="IANA-TCP" target="https://www.iana.org/assignments/tcp-parameters/tcp-parameters.xhtml#">
          <front>
            <title>Transmission Control Protocol (TCP) Parameters</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="Private-Enterprise-Numbers" target="https://www.iana.org/assignments/enterprise-numbers">
          <front>
            <title>Private Enterprise Numbers</title>
            <author>
              <organization/>
            </author>
            <date year="2020" month="May"/>
          </front>
        </reference>
        <reference anchor="RFC6888">
          <front>
            <title>Common Requirements for Carrier-Grade NATs (CGNs)</title>
            <author fullname="S. Perreault" initials="S." role="editor" surname="Perreault"/>
            <author fullname="I. Yamagata" initials="I." surname="Yamagata"/>
            <author fullname="S. Miyakawa" initials="S." surname="Miyakawa"/>
            <author fullname="A. Nakagawa" initials="A." surname="Nakagawa"/>
            <author fullname="H. Ashida" initials="H." surname="Ashida"/>
            <date month="April" year="2013"/>
            <abstract>
              <t>This document defines common requirements for Carrier-Grade NATs (CGNs). It updates RFC 4787.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="127"/>
          <seriesInfo name="RFC" value="6888"/>
          <seriesInfo name="DOI" value="10.17487/RFC6888"/>
        </reference>
        <reference anchor="RFC6146">
          <front>
            <title>Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers</title>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="P. Matthews" initials="P." surname="Matthews"/>
            <author fullname="I. van Beijnum" initials="I." surname="van Beijnum"/>
            <date month="April" year="2011"/>
          </front>
          <seriesInfo name="RFC" value="6146"/>
          <seriesInfo name="DOI" value="10.17487/RFC6146"/>
        </reference>
        <reference anchor="RFC7857">
          <front>
            <title>Updates to Network Address Translation (NAT) Behavioral Requirements</title>
            <author fullname="R. Penno" initials="R." surname="Penno"/>
            <author fullname="S. Perreault" initials="S." surname="Perreault"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="S. Sivakumar" initials="S." surname="Sivakumar"/>
            <author fullname="K. Naito" initials="K." surname="Naito"/>
            <date month="April" year="2016"/>
            <abstract>
              <t>This document clarifies and updates several requirements of RFCs 4787, 5382, and 5508 based on operational and development experience. The focus of this document is Network Address Translation from IPv4 to IPv4 (NAT44).</t>
              <t>This document updates RFCs 4787, 5382, and 5508.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="127"/>
          <seriesInfo name="RFC" value="7857"/>
          <seriesInfo name="DOI" value="10.17487/RFC7857"/>
        </reference>
        <reference anchor="RFC5612">
          <front>
            <title>Enterprise Number for Documentation Use</title>
            <author fullname="P. Eronen" initials="P." surname="Eronen"/>
            <author fullname="D. Harrington" initials="D." surname="Harrington"/>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document describes an Enterprise Number (also known as SMI Network Management Private Enterprise Code) for use in documentation. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5612"/>
          <seriesInfo name="DOI" value="10.17487/RFC5612"/>
        </reference>
        <reference anchor="RFC7252">
          <front>
            <title>The Constrained Application Protocol (CoAP)</title>
            <author fullname="Z. Shelby" initials="Z." surname="Shelby"/>
            <author fullname="K. Hartke" initials="K." surname="Hartke"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained (e.g., low-power, lossy) networks. The nodes often have 8-bit microcontrollers with small amounts of ROM and RAM, while constrained networks such as IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) often have high packet error rates and a typical throughput of 10s of kbit/s. The protocol is designed for machine- to-machine (M2M) applications such as smart energy and building automation.</t>
              <t>CoAP provides a request/response interaction model between application endpoints, supports built-in discovery of services and resources, and includes key concepts of the Web such as URIs and Internet media types. CoAP is designed to easily interface with HTTP for integration with the Web while meeting specialized requirements such as multicast support, very low overhead, and simplicity for constrained environments.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7252"/>
          <seriesInfo name="DOI" value="10.17487/RFC7252"/>
        </reference>
      </references>
    </references>
    <?line 380?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The "diagnostic payload" name is inspired by <xref section="5.5.2" sectionFormat="of" target="RFC7252"/>
  that was cited by Carsten Bormann in the tcpm mailing list.</t>
      <t>Thanks to Jon Shallow for the comments.  Thanks also to Li Jinghui
   for the discussion.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
zYqIZ1Dl4Vn21jwz/T+0NNQyMT0AAA==

-->

</rfc>
