<?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.11 (Ruby 3.2.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-opsawg-ipfix-tcpo-v6eh-12" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title abbrev="New TCP and IPv6 EH IPFIX IEs">Extended TCP Options and IPv6 Extension Headers IPFIX Information Elements</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-opsawg-ipfix-tcpo-v6eh-12"/>
    <author fullname="Mohamed Boucadair">
      <organization>Orange</organization>
      <address>
        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>
    <author fullname="Benoit Claise">
      <organization>Huawei</organization>
      <address>
        <email>benoit.claise@huawei.com</email>
      </address>
    </author>
    <date year="2024" month="May" day="14"/>
    <area>Operations and Management</area>
    <workgroup>OPSAWG</workgroup>
    <keyword>IPFIX</keyword>
    <abstract>
      <?line 68?>

<t>This document specifies new IP Flow Information Export (IPFIX) Information Elements (IEs) to solve issues with existing ipv6ExtensionHeaders and tcpOptions IPFIX IEs, especially the ability to export any observed IPv6 extension headers or TCP options.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Operations and Management Area Working Group Working Group mailing list (opsawg@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/opsawg/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/boucadair/ipfix-tcpoptions-and-v6eh"/>.</t>
    </note>
  </front>
  <middle>
    <?line 72?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document specifies new IP Flow Information Export (IPFIX) <xref target="RFC7011"/> Information Elements (IEs) to solve a set of issues encountered with the specifications of ipv6ExtensionHeaders (to export IPv6 extension headers) and tcpOptions (to export TCP options) IEs <xref target="IANA-IPFIX"/>. More details about these issues are provided in the following sub-sections.</t>
      <section anchor="sec-eh-issues">
        <name>Issues with ipv6ExtensionHeaders Information Element</name>
        <t>The specification of the ipv6ExtensionHeaders IPFIX IE (64) does not:</t>
        <ul spacing="normal">
          <li>
            <t>Cover the full extension headers' range (<xref section="4" sectionFormat="of" target="RFC8200"/>).</t>
          </li>
          <li>
            <t>Specify the procedure to follow when all bits are exhausted.</t>
          </li>
          <li>
            <t>Specify a means to export the order and the number of occurrences of a given extension header.</t>
          </li>
          <li>
            <t>Specify how to automatically update the IANA IPFIX registry (<xref target="IANA-IPFIX"/>) when a new value is assigned in the IPv6 Extension Header Types registry <xref target="IANA-EH"/>. Only a frozen set of extension headers can be exported using the ipv6ExtensionHeaders IE. For example, the ipv6ExtensionHeaders IE can't report some IPv6 EHs, specifically EHs for Host Identity Protocol (139), Shim6 Protocol (140) or extension headers for experimentation and testing.</t>
          </li>
          <li>
            <t>Specify whether the exported values match the full enclosed values or only up to a limit imposed by hardware or software (e.g., <xref section="1.1" sectionFormat="of" target="RFC8883"/>). Note that some implementations may not be able to export all observed extension headers in a Flow because of a hardware or software limit (see, e.g., <xref target="I-D.ietf-6man-eh-limits"/>). The specification of the ipv6ExtensionHeaders Information Element does not discuss whether it covers all enclosed extension headers or only up to a limit.</t>
          </li>
          <li>
            <t>Specify how to report the length of IPv6 extension headers.</t>
          </li>
          <li>
            <t>Optimize the encoding.</t>
          </li>
          <li>
            <t>Explain the reasoning for reporting values which do not correspond to extension headers (e.g., "Unknown Layer 4 header" or "Payload compression header").</t>
          </li>
          <li>
            <t>Specify how to report extension header chains or aggregate extension headers length.</t>
          </li>
        </ul>
        <t><xref target="sec-eh"/> addresses these issues.</t>
        <t>This specification deprecates the ipv6ExtensionHeaders IPFIX IE in favor of the new IEs defined in this document.</t>
      </section>
      <section anchor="sec-tcp-issues">
        <name>Issues with tcpOptions Information Element</name>
        <t>The specification of the tcpOptions IPFIX IE (209) does not:</t>
        <ul spacing="normal">
          <li>
            <t>Describe how some observed TCP options in a Flow can be exported using IPFIX. Only TCP options having a Kind &lt;= 63 can be exported in a tcpOptions IE.</t>
          </li>
          <li>
            <t>Allow reporting the observed Experimental Identifiers (ExIDs) that are carried in shared Experimental TCP options (Kind=253 or 254) <xref target="RFC6994"/>.</t>
          </li>
          <li>
            <t>Optimize the encoding.</t>
          </li>
        </ul>
        <t><xref target="sec-tcp"/> addresses these issues.</t>
        <t>This specification deprecates the tcpOptions IE in favor of the new IEs defined in this document.</t>
      </section>
    </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 uses the IPFIX-specific terminology (Information Element, Template Record,
   Flow, etc.) defined in
   <xref section="2" sectionFormat="of" target="RFC7011"/>. As in <xref target="RFC7011"/>, these IPFIX-specific terms
   have the first letter of a word capitalized.</t>
      <t>Also, the document uses the terms defined in IPv6 <xref target="RFC8200"/> and TCP <xref target="RFC9293"/> specifications.</t>
      <t>In addition, the document makes use of the following term:</t>
      <dl>
        <dt>Extension header chain:</dt>
        <dd>
          <t>Refers to the chain of extension headers that are present in an IPv6 packet.</t>
        </dd>
        <dt/>
        <dd>
          <t>This term should not be confused with the IPv6 header chain, which includes
the IPv6 header, zero or more IPv6 extension headers,
and zero or a single Upper-Layer Header.</t>
        </dd>
        <dt>Flow with varying extension header chain:</dt>
        <dd>
          <t>Refers to a Flow where distinct extension header chains are observed. Concretely, different packets in such a Flow will have a different sequence of extension header type codes.</t>
        </dd>
      </dl>
    </section>
    <section anchor="sec-eh">
      <name>Information Elements for IPv6 Extension Headers</name>
      <section anchor="sec-v6ehtype">
        <name>ipv6ExtensionHeaderType Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeaderType</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD1</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>Type of an IPv6 extension header observed in packets of this Flow.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>unsigned8</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>identifier</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See <xref target="IANA-EH"/> for assigned extension header types.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref section="4" sectionFormat="of" target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-v6ehcount">
        <name>ipv6ExtensionHeaderCount Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeaderCount</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD2</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>The number of consecutive occurrences of the same extension header type in a Flow.</t>
          </dd>
          <dt/>
          <dd>
            <t>The type of the extension header is provided in the ipv6ExtensionHeaderType Information Element.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>unsigned8</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>totalCounter</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See <xref target="IANA-EH"/> for assigned extension header types.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref section="4" sectionFormat="of" target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-v6full">
        <name>ipv6ExtensionHeadersFull Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeadersFull</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD3</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>IPv6 extension headers observed in packets of this Flow. The
information is encoded in a set of bit fields.  For each IPv6
extension header, there is a bit in this set. The bit is set to 1 if
any observed packet of this Flow contains the corresponding IPv6
extension header.  Otherwise, if no observed packet of this Flow
contains the respective IPv6 extension header, the value of the
corresponding bit is 0.</t>
          </dd>
          <dt/>
          <dd>
            <t>The IPv6 extension header associated with each bit is provided in
[NEW_IPFIX_IPv6EH_SUBREGISTRY]. Bit 0 corresponds to the least-significant bit
in the ipv6ExtensionHeadersFull IE while bit 255 corresponds to the most-significant bit of the IE.
In doing so, few octets will be needed to encode common IPv6 extension headers when observed in a Flow.</t>
          </dd>
          <dt/>
          <dd>
            <t>The "No Next Header" (59) value (<xref section="4.7" sectionFormat="of" target="RFC8200"/>) is used if there is no upper-layer header in an IPv6 packet.
Even if the value is not considered as an extension header as such, the corresponding
bit is set in the ipv6ExtensionHeadersFull IE whenever that value is encountered in the Flow.</t>
          </dd>
          <dt/>
          <dd>
            <t>Extension headers observed in a Flow with varying extension header chain
<bcp14>MAY</bcp14> be aggregated in one single ipv6ExtensionHeadersFull Information Element or
be exported in separate ipv6ExtensionHeadersFull IEs, one for each extension header chain.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>unsigned256</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>flags</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See the assigned bits to each IPv6 extension header type in [NEW_IPFIX_IPv6EH_SUBREGISTRY].</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="IANA-EH"/> for assigned extension header types.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref section="4" sectionFormat="of" target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
        <ul empty="true">
          <li>
            <t>Note to the RFC Editor: Please replace [NEW_IPFIX_IPv6EH_SUBREGISTRY] with the link to the "ipv6ExtensionHeaders Bits" registry (<xref target="sec-iana-eh"/>).</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-v6count">
        <name>ipv6ExtensionHeaderTypeCountList Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeaderTypeCountList</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD4</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>As per <xref section="4.1" sectionFormat="of" target="RFC8200"/>, IPv6 nodes must accept and attempt to process extension headers
occurring any number of times in the same packet. This Information Element echoes the
order of extension headers and number of consecutive occurrences of the same extension header type in a Flow.</t>
          </dd>
          <dt/>
          <dd>
            <t>This Information Element is a subTemplateList of ipv6ExtensionHeaderType and ipv6ExtensionHeaderCount Information Elements.</t>
          </dd>
          <dt/>
          <dd>
            <t>Each header chain in Flow with varying extension header chain <bcp14>MUST</bcp14> be exported in a separate  IE.</t>
          </dd>
          <dt/>
          <dd>
            <t>The same extension header type may appear several times in an ipv6ExtensionHeaderTypeCountList Information Element.
For example, if an IPv6 packet of a Flow includes a Hop-by-Hop Options header, a Destination Options header, a Fragment header,
and Destination Options header, the ipv6ExtensionHeaderTypeCountList Information Element will report:</t>
            <ul spacing="normal">
              <li>
                <t>the count of Hop-by-Hop Options header,</t>
              </li>
              <li>
                <t>the occurrences of the Destination Options header that are observed before the Fragment header,</t>
              </li>
              <li>
                <t>the occurrences of the Fragment header, and</t>
              </li>
              <li>
                <t>the occurrences of the Destination Options header that are observed right after the Fragment header.</t>
              </li>
            </ul>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>subTemplateList</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>list</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See the assigned IPv6 extension header types in <xref target="IANA-EH"/>.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-v6limit">
        <name>ipv6ExtensionHeadersLimit Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeadersLimit</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD5</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>When set to "false", this Information Element indicates that the exported extension
headers information (e.g., ipv6ExtensionHeadersFull or ipv6ExtensionHeaderTypeCountList) does
not match the full enclosed extension headers, but only up to a
limit that is typically set by hardware or software.</t>
          </dd>
          <dt/>
          <dd>
            <t>When set to "true", this Information Element indicates that the exported extension
header information matches the full enclosed extension headers.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>boolean</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>default</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See <xref section="4" sectionFormat="of" target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC8883"/> for an example of IPv6 packet processing due to limits on extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-v6aggr">
        <name>ipv6ExtensionHeadersChainLength Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeadersChainLength</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD6</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>In theory, there are no limits on the number of IPv6 extension headers that may
be present in a packet other than the path MTU. However, it was regularly
reported that IPv6 packets with extension headers are often dropped in the Internet.</t>
          </dd>
          <dt/>
          <dd>
            <t>As discussed in <xref section="1.2" sectionFormat="of" target="RFC8883"/>, some hardware devices implement
a parsing buffer of a fixed size to process packets, including all the headers.
When the aggregate length of headers of an IPv6 packet exceeds that size, the packet will be discarded or deferred to a slow path.</t>
          </dd>
          <dt/>
          <dd>
            <t>The ipv6ExtensionHeadersChainLength IE is used to report, in octets, the length of
an extension header chain observed in a Flow.  The length is the sum of the length of all extension headers of the chain. Exporting such information might help identifying root causes of performance degradation, including packet drops.</t>
          </dd>
          <dt/>
          <dd>
            <t>Each header chain length of a Flow with varying extension header chain <bcp14>MUST</bcp14> be exported in a separate ipv6ExtensionHeadersChainLength IE.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>unsigned32</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>identifier</t>
          </dd>
          <dt>Units:</dt>
          <dd>
            <t>octets</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See <xref section="4" sectionFormat="of" target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC9098"/> for an overview of operational implications of IPv6 packets with extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-v6chain-list">
        <name>ipv6ExtensionHeaderChainLengthList Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>ipv6ExtensionHeaderChainLengthList</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD7</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>This Information Element is used to report the chains and their length as observed in a Flow with varying extension header chain.</t>
          </dd>
          <dt/>
          <dd>
            <t>This Information Element is a subTemplateList of ipv6ExtensionHeadersFull and ipv6ExtensionHeadersChainLength Information Elements.</t>
          </dd>
          <dt/>
          <dd>
            <t>If several extension header chains are observed in a Flow, each header
chain <bcp14>MUST</bcp14> be exported in a separate ipv6ExtensionHeaderChainLengthList IE.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>subTemplateList</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>list</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See the assigned IPv6 extension header types in <xref target="IANA-EH"/>.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC8200"/> for the general definition of IPv6 extension headers.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="sec-tcp">
      <name>Information Elements for TCP Options</name>
      <section anchor="sec-tcpfull">
        <name>tcpOptionsFull Information Element</name>
        <t>This section specifies a new IE to cover the full TCP options range.</t>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>tcpOptionsFull</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD8</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>TCP options in packets of this Flow.  The information is encoded
    in a set of bit fields.  For each TCP option, there is a bit in
    this set.  The bit is set to 1 if any observed packet of this Flow
    contains the corresponding TCP option.  Otherwise, if no observed
    packet of this Flow contains the respective TCP option, the value
    of the corresponding bit is 0.</t>
          </dd>
          <dt/>
          <dd>
            <t>Options are mapped to bits according to their option numbers.
TCP option Kind 0 corresponds to the least-significant bit
in the tcpOptionsFull IE while Kind 255 corresponds to the most-significant bit of the IE. This approach allows
an observer to export any observed TCP option even if it does support
that option and without requiring updating a mapping table.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>unsigned256</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>flags</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See the assigned TCP option Kinds at <xref target="IANA-TCP"/>.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC9293"/> for the general definition of TCP options.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-ex">
        <name>tcpSharedOptionExID16 Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>tcpSharedOptionExID16</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD9</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>Any observed 2-byte Experiments IDs (ExIDs) in a shared
    TCP option (Kind=253 or 254)  in a Flow.  The information is encoded in a set of
    16-bit fields.  Each 16-bit field carries an observed 2-byte ExID in a
    shared option.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>octetArray</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>identifier</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See assigned ExIDs at <xref target="IANA-TCP-EXIDs"/>.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC9293"/> for the general definition of TCP options.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC6994"/> for the shared use of experimental TCP Options.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
      <section anchor="sec-ex32">
        <name>tcpSharedOptionExID32 Information Element</name>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>tcpSharedOptionExID32</t>
          </dd>
          <dt>ElementID:</dt>
          <dd>
            <t>TBD10</t>
          </dd>
          <dt>Description:</dt>
          <dd>
            <t>Any observed  4-byte Experiments IDs (ExIDs) in a shared
TCP option (Kind=253 or 254)  in a Flow.  The information is encoded in a set of
32-bit fields. Each 32-bit field carries an observed 4-byte ExID in a
shared option.</t>
          </dd>
          <dt>Abstract Data Type:</dt>
          <dd>
            <t>octetArray</t>
          </dd>
          <dt>Data Type Semantics:</dt>
          <dd>
            <t>identifier</t>
          </dd>
          <dt>Additional Information:</dt>
          <dd>
            <t>See assigned ExIDs at <xref target="IANA-TCP-EXIDs"/>.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC9293"/> for the general definition of TCP options.</t>
          </dd>
          <dt/>
          <dd>
            <t>See <xref target="RFC6994"/> for the shared use of experimental TCP Options.</t>
          </dd>
          <dt>Reference:</dt>
          <dd>
            <t>This-Document</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <section anchor="op-eh">
        <name>IPv6 Extension Headers</name>
        <t>The value of ipv6ExtensionHeadersFull IE should be encoded in fewer octets as per the guidelines in <xref section="6.2" sectionFormat="of" target="RFC7011"/>.</t>
        <t>If an implementation determines that an observed packet of a Flow includes an extension header (including an extension header that it does not support), then the exact observed code of that extension header <bcp14>MUST</bcp14> be echoed in the ipv6ExtensionHeaderTypeCountList IE (<xref target="sec-v6count"/>). How an implementation disambiguates between unknown upper-layer protocols vs. extension headers is not IPFIX-specific. Readers may refer, for example, to <xref section="2.2" sectionFormat="of" target="RFC8883"/> for a behavior of an intermediate node that encounters an unknown Next Header type. It is out of the scope of this document to discuss those considerations.</t>
        <t>The ipv6ExtensionHeadersFull Information Element <bcp14>SHOULD NOT</bcp14> be exported if ipv6ExtensionHeaderTypeCountList Information Element is also present because of the overlapping scopes between these two IEs. If both IEs are present, then ipv6ExtensionHeaderTypeCountList Information Element takes precedence.</t>
        <t>The ipv6ExtensionHeadersLimit IE (<xref target="sec-v6limit"/>) may or may not be present when the ipv6ExtensionHeadersChainLength IE (<xref target="sec-v6aggr"/>) is also present as these IEs are targeting distinct properties of extension headers handling.</t>
      </section>
      <section anchor="op-tcp">
        <name>TCP Options</name>
        <t>The value of tcpOptionsFull IE should be encoded in fewer octets as per the guidelines in <xref section="6.2" sectionFormat="of" target="RFC7011"/>.</t>
        <t>Implementations of tcpSharedOptionExID16 and tcpSharedOptionExID32 IEs are assumed to be provided with a list of valid Experiment IDs <xref target="IANA-TCP-EXIDs"/>. How that list is maintained is implementation-specific. Absent that list, an implementation can't autonomously determine whether an ExID is present and, if so, whether it is 2- or 4-byte length.</t>
        <t>If a TCP Flow contains packets with a mix of 2-byte and 4-byte Experiment IDs, the same Template Record is used with both tcpSharedOptionExID16 and tcpSharedOptionExID32 IEs.</t>
      </section>
    </section>
    <section anchor="sec-examples">
      <name>Examples</name>
      <t>This section provides a few examples to illustrate the use of some IEs defined in this document.</t>
      <section anchor="ipv6-extension-headers">
        <name>IPv6 Extension Headers</name>
        <t><xref target="ex-eh1"/> provides an example of reported values in an ipv6ExtensionHeadersFull IE for an IPv6 Flow in which only
the     IPv6 Destination Options (0) header is observed. One octet is sufficient to report these observed options. Concretely, the ipv6ExtensionHeadersFull IE will be set to 0x01. The bits are set following the table provided in <xref target="sec-initial"/>.</t>
        <figure anchor="ex-eh1">
          <name>A First Example of Extension Headers</name>
          <artwork align="center"><![CDATA[
MSB                                                      LSB
                     1                          25
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 ... 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+-+-+-+
|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|   |0|0|0|0|0|0|0|1|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t><xref target="ex-eh2"/> provides another example of reported values in an ipv6ExtensionHeadersFull IE for an IPv6 Flow in which
the     Destination Options (0), IPv6 Hop-by-Hop Options (1), and Routing (5) headers are observed. One octet is sufficient to report these observed options. Concretely, the ipv6ExtensionHeadersFull IE will be set to 0x23.</t>
        <figure anchor="ex-eh2">
          <name>A Second Example of Extension Headers</name>
          <artwork align="center"><![CDATA[
MSB                                                      LSB
                     1                          25
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 ... 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+-+-+-+
|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|   |0|0|1|0|0|0|1|1|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
      </section>
      <section anchor="tcp-options">
        <name>TCP Options</name>
        <t>Given TCP Kind allocation practices and the option mapping defined in <xref target="sec-tcpfull"/>, fewer octets are likely to be used for
Flows with common TCP options.</t>
        <t><xref target="ex-tcp1"/> shows an example of reported values in a tcpOptionsFull IE for a TCP Flow in which End of Option List (0), Maximum Segment Size (2), and Window Scale (3) options are observed. One octet is sufficient to report these observed options. Concretely, the tcpOptionsFull IE will be set to 0x0D.</t>
        <figure anchor="ex-tcp1">
          <name>An Example of TCP Options</name>
          <artwork align="center"><![CDATA[
MSB                                                      LSB
                     1                          25
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 ... 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+-+-+-+
|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|   |0|0|0|0|1|1|0|1|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+...+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>Let us consider a TCP Flow in which shared options with ExIDs 0x0348 (HOST_ID) <xref target="RFC7974"/>, 0x454E     (TCP-ENO) <xref target="RFC8547"/>, and 0xE2D4C3D9  (Shared Memory communications over RMDA protocol)       <xref target="RFC7609"/> are observed. As shown in <xref target="ex-tcp2"/>, two TCP shared IEs will be used to report these observed ExIDs:</t>
        <ol spacing="normal" type="1"><li>
            <t>The tcpSharedOptionExID16 IE set to 0x0348454E to report observed 2-byte ExIDs:  HOST_ID and TCP-ENO ExIDs.</t>
          </li>
          <li>
            <t>The tcpSharedOptionExID32 IE set to 0xE2D4C3D9 to report the only observed 4-byte ExID.</t>
          </li>
        </ol>
        <figure anchor="ex-tcp2">
          <name>Example of TCP Shared IEs</name>
          <artwork align="center"><![CDATA[
tcpSharedOptionExID16 IE:

MSB                                                          LSB
                     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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              0x0348           |             0x454E            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

tcpSharedOptionExID32 IE:

MSB                                                          LSB
                     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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           0xE2D4C3D9                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>IPFIX security considerations are discussed in <xref section="11" sectionFormat="of" target="RFC7011"/>.</t>
      <t>ipv6ExtensionHeadersChainLength and ipv6ExtensionHeadersLimit IEs can be exploited by an unauthorized observer as a means to deduce the processing capabilities of nodes. <xref section="8" sectionFormat="of" target="RFC7012"/> discusses the required measures to guarantee the integrity and confidentiality of the exported information.</t>
      <t>This document does not add new security considerations for exporting IEs other than those already discussed in <xref section="8" sectionFormat="of" target="RFC7012"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="deprecate-ipv6extensionheaders-and-tcpoptions-information-elements">
        <name>Deprecate ipv6ExtensionHeaders and tcpOptions Information Elements</name>
        <t>This document requests IANA to update the "IPFIX Information Elements" registry under the "IP Flow Information Export (IPFIX) Entities" registry group <xref target="IANA-IPFIX"/> as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Update the ipv6ExtensionHeaders IE (64) entry by marking it as deprecated in favor of the ipv6ExtensionHeadersFull IE defined in this document. This note should also be echoed in the "Additional Information" of the ipv6ExtensionHeaders IE.</t>
          </li>
          <li>
            <t>Update the tcpOptions IE (209) entry by marking it as deprecated in favor of the tcpOptionsFull IE defined in this document. This note should also be echoed in the "Additional Information" of the tcpOptions IE.</t>
          </li>
        </ul>
        <t>IANA is also requested to update the reference of ipv6ExtensionHeaders IE (64) and tcpOptions IE (209) to point to this document.</t>
      </section>
      <section anchor="new-ipfix-information-elements">
        <name>New IPFIX Information Elements</name>
        <t>This document requests IANA to add the following new IPFIX IEs to the "IPFIX Information Elements" registry under the "IP Flow Information Export (IPFIX) Entities" registry group <xref target="IANA-IPFIX"/>:</t>
        <table anchor="iana-new-ies">
          <name>New IPFIX Information Elements</name>
          <thead>
            <tr>
              <th align="left">Value</th>
              <th align="left">Name</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD1</td>
              <td align="left">ipv6ExtensionHeader</td>
              <td align="left">
                <xref target="sec-v6ehtype"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD2</td>
              <td align="left">ipv6ExtensionHeaderCount</td>
              <td align="left">
                <xref target="sec-v6ehcount"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD3</td>
              <td align="left">ipv6ExtensionHeadersFull</td>
              <td align="left">
                <xref target="sec-v6full"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD4</td>
              <td align="left">ipv6ExtensionHeaderTypeCountList</td>
              <td align="left">
                <xref target="sec-v6count"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD5</td>
              <td align="left">ipv6ExtensionHeadersLimit</td>
              <td align="left">
                <xref target="sec-v6limit"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD6</td>
              <td align="left">ipv6ExtensionHeadersChainLength</td>
              <td align="left">
                <xref target="sec-v6aggr"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD7</td>
              <td align="left">ipv6ExtensionHeaderChainLengthList</td>
              <td align="left">
                <xref target="sec-v6chain-list"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD7</td>
              <td align="left">tcpOptionsFull</td>
              <td align="left">
                <xref target="sec-tcpfull"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD8</td>
              <td align="left">tcpSharedOptionExID16</td>
              <td align="left">
                <xref target="sec-ex"/> of This-Document</td>
            </tr>
            <tr>
              <td align="left">TBD9</td>
              <td align="left">tcpSharedOptionExID32</td>
              <td align="left">
                <xref target="sec-ex32"/> of This-Document</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="new-ipfix-information-element-data-type">
        <name>New IPFIX Information Element Data Type</name>
        <t>This document requests IANA to add the following new abstract data type to the "IPFIX Information Element Data Types" registry under the "IP Flow Information Export (IPFIX) Entities" registry group <xref target="IANA-IPFIX"/>:</t>
        <table anchor="iana-new-dt">
          <name>New IPFIX Information Element Data Type</name>
          <thead>
            <tr>
              <th align="left">Value</th>
              <th align="left">Description</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">TBD10</td>
              <td align="left">unsigned256</td>
              <td align="left">This-Document</td>
            </tr>
          </tbody>
        </table>
        <t>The type "unsigned256" represents a non-negative integer value in the
range of '0' to '2^256 - 1'. Similar to <xref section="6.1.1" sectionFormat="of" target="RFC7011"/>, this type <bcp14>MUST</bcp14> be encoded using the default canonical format in network byte order. Reduced-Size encoding (<xref section="6.2" sectionFormat="of" target="RFC7011"/>) applies to this data type.</t>
      </section>
      <section anchor="sec-iana-eh">
        <name>IPFIX Subregistry for IPv6 Extension Headers</name>
        <t>This document requests IANA to create a new registry entitled "ipv6ExtensionHeaders Bits" under the IANA IPFIX registry group <xref target="IANA-IPFIX"/>.</t>
        <t>When a new code is assigned to an IPv6 EH in <xref target="IANA-EH"/>, the next available free bit is selected by IANA for this EH from "ipv6ExtensionHeaders Bits" registry and the registry is updated with the details that mirror the assigned EH. The "Label" mirrors the "keyword" of an EH as indicated in <xref target="IANA-Protocols"/>, while the "Protocol Number" mirrors the "Protocol Number" in <xref target="IANA-EH"/>. IANA is requested to add the following note to <xref target="IANA-EH"/>:</t>
        <ul empty="true">
          <li>
            <dl>
              <dt>Note:</dt>
              <dd>
                <t>When a new code is assigned to an IPv6 Extension Header, the next available free bit in [NEW_IPFIX_IPv6EH_SUBREGISTRY] is selected for this new Extension Header. [NEW_IPFIX_IPv6EH_SUBREGISTRY] is updated accordingly. Modifications to existing registrations must be mirrored in [NEW_IPFIX_IPv6EH_SUBREGISTRY].</t>
              </dd>
            </dl>
          </li>
        </ul>
        <ul empty="true">
          <li>
            <t>Note to the RFC Editor: Please replace [NEW_IPFIX_IPv6EH_SUBREGISTRY] with the link used by IANA for this new registry.</t>
          </li>
        </ul>
        <t>Otherwise, the registration policy for the registry is Expert Review (<xref section="4.5" sectionFormat="of" target="RFC8126"/>). See more details in <xref target="sec-de"/>.</t>
        <section anchor="sec-initial">
          <name>Initial Values</name>
          <t>The initial values of this registry are provided in <xref target="iana-new-eh"/>.</t>
          <table anchor="iana-new-eh">
            <name>Initial Values of the IPv6 Extension Headers IPFIX Subregistry</name>
            <thead>
              <tr>
                <th align="left">Bit</th>
                <th align="left">Label</th>
                <th align="left">Protocol Number</th>
                <th align="left">Description</th>
                <th align="left">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">DST</td>
                <td align="left">60</td>
                <td align="left">Destination Options for IPv6</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">1</td>
                <td align="left">HOP</td>
                <td align="left">0</td>
                <td align="left">IPv6 Hop-by-Hop Options</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">2</td>
                <td align="left">NoNxt</td>
                <td align="left">59</td>
                <td align="left">No Next Header for IPv6</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">3</td>
                <td align="left">UNK</td>
                <td align="left"> </td>
                <td align="left">Unknown Layer 4 header (compressed, encrypted, not supported)</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">4</td>
                <td align="left">FRA0</td>
                <td align="left">44</td>
                <td align="left">Fragment header - first fragment</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">5</td>
                <td align="left">RH</td>
                <td align="left">43</td>
                <td align="left">Routing header</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">6</td>
                <td align="left">FRA1</td>
                <td align="left">44</td>
                <td align="left">Fragmentation header - not first fragment</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">7 to 11</td>
                <td align="left"> </td>
                <td align="left"> </td>
                <td align="left">Unassigned</td>
                <td align="left"> </td>
              </tr>
              <tr>
                <td align="left">12</td>
                <td align="left">MOB</td>
                <td align="left">135</td>
                <td align="left">Mobility Header</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">13</td>
                <td align="left">ESP</td>
                <td align="left">50</td>
                <td align="left">Encapsulating Security Payload</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">14</td>
                <td align="left">AH</td>
                <td align="left">51</td>
                <td align="left">Authentication Header</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">15</td>
                <td align="left"> </td>
                <td align="left"> </td>
                <td align="left">Unassigned</td>
                <td align="left"> </td>
              </tr>
              <tr>
                <td align="left">16</td>
                <td align="left">HIP</td>
                <td align="left">139</td>
                <td align="left">Host Identity Protocol</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">17</td>
                <td align="left">SHIM6</td>
                <td align="left">140</td>
                <td align="left">Shim6 Protocol</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">18</td>
                <td align="left"> </td>
                <td align="left">253</td>
                <td align="left">Use for experimentation and testing</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">19</td>
                <td align="left"> </td>
                <td align="left">254</td>
                <td align="left">Use for experimentation and testing</td>
                <td align="left">This-Document</td>
              </tr>
              <tr>
                <td align="left">20 to 255</td>
                <td align="left"> </td>
                <td align="left"> </td>
                <td align="left">Unassigned</td>
                <td align="left"> </td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="sec-de">
          <name>Guidelines for the Designated Experts</name>
          <t>It is suggested that multiple designated experts be appointed for registry change requests.</t>
          <t>Criteria that should be applied by the designated experts include determining whether the proposed registration duplicates existing entries and whether the registration description is clear and fits the purpose of this registry.</t>
          <t>Within the review period, the designated experts will either approve or deny the registration request, communicating this decision to the IANA. Denials should include an explanation and, if applicable, suggestions as to how to make the request successful.</t>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="IANA-IPFIX" target="https://www.iana.org/assignments/ipfix/ipfix.xhtml">
          <front>
            <title>IP Flow Information Export (IPFIX) Entities</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="IANA-EH" target="https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-1">
          <front>
            <title>Internet Protocol Version 6 (IPv6) Parameters, IPv6 Extension Header Types</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="IANA-TCP" target="https://www.iana.org/assignments/tcp-parameters/tcp-parameters.xhtml#tcp-parameters-1">
          <front>
            <title>Transmission Control Protocol (TCP) Parameters, TCP Option Kind Numbers</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="IANA-TCP-EXIDs" target="https://www.iana.org/assignments/tcp-parameters/tcp-parameters.xhtml#tcp-exids">
          <front>
            <title>Transmission Control Protocol (TCP) Parameters, TCP Experimental Option Experiment Identifiers (TCP ExIDs)</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="IANA-Protocols" target="https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml">
          <front>
            <title>Protocol Numbers</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="RFC7011">
          <front>
            <title>Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information</title>
            <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
            <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
            <author fullname="P. Aitken" initials="P." surname="Aitken"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document specifies the IP Flow Information Export (IPFIX) protocol, which serves as a means for transmitting Traffic Flow information over the network. In order to transmit Traffic Flow information from an Exporting Process to a Collecting Process, a common representation of flow data and a standard means of communicating them are required. This document describes how the IPFIX Data and Template Records are carried over a number of transport protocols from an IPFIX Exporting Process to an IPFIX Collecting Process. This document obsoletes RFC 5101.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="77"/>
          <seriesInfo name="RFC" value="7011"/>
          <seriesInfo name="DOI" value="10.17487/RFC7011"/>
        </reference>
        <reference anchor="RFC8200">
          <front>
            <title>Internet Protocol, Version 6 (IPv6) Specification</title>
            <author fullname="S. Deering" initials="S." surname="Deering"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="July" year="2017"/>
            <abstract>
              <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="86"/>
          <seriesInfo name="RFC" value="8200"/>
          <seriesInfo name="DOI" value="10.17487/RFC8200"/>
        </reference>
        <reference anchor="RFC6994">
          <front>
            <title>Shared Use of Experimental TCP Options</title>
            <author fullname="J. Touch" initials="J." surname="Touch"/>
            <date month="August" year="2013"/>
            <abstract>
              <t>This document describes how the experimental TCP option codepoints can concurrently support multiple TCP extensions, even within the same connection, using a new IANA TCP experiment identifier. This approach is robust to experiments that are not registered and to those that do not use this sharing mechanism. It is recommended for all new TCP options that use these codepoints.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6994"/>
          <seriesInfo name="DOI" value="10.17487/RFC6994"/>
        </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="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="RFC7012">
          <front>
            <title>Information Model for IP Flow Information Export (IPFIX)</title>
            <author fullname="B. Claise" initials="B." role="editor" surname="Claise"/>
            <author fullname="B. Trammell" initials="B." role="editor" surname="Trammell"/>
            <date month="September" year="2013"/>
            <abstract>
              <t>This document defines the data types and management policy for the information model for the IP Flow Information Export (IPFIX) protocol. This information model is maintained as the IANA "IPFIX Information Elements" registry, the initial contents of which were defined by RFC 5102. This information model is used by the IPFIX protocol for encoding measured traffic information and information related to the traffic Observation Point, the traffic Metering Process, and the Exporting Process. Although this model was developed for the IPFIX protocol, it is defined in an open way that allows it to be easily used in other protocols, interfaces, and applications. This document obsoletes RFC 5102.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7012"/>
          <seriesInfo name="DOI" value="10.17487/RFC7012"/>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8883">
          <front>
            <title>ICMPv6 Errors for Discarding Packets Due to Processing Limits</title>
            <author fullname="T. Herbert" initials="T." surname="Herbert"/>
            <date month="September" year="2020"/>
            <abstract>
              <t>Network nodes may discard packets if they are unable to process protocol headers of packets due to processing constraints or limits. When such packets are dropped, the sender receives no indication, so it cannot take action to address the cause of discarded packets. This specification defines several new ICMPv6 errors that can be sent by a node that discards packets because it is unable to process the protocol headers. A node that receives such an ICMPv6 error may use the information to diagnose packet loss and may modify what it sends in future packets to avoid subsequent packet discards.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8883"/>
          <seriesInfo name="DOI" value="10.17487/RFC8883"/>
        </reference>
        <reference anchor="I-D.ietf-6man-eh-limits">
          <front>
            <title>Limits on Sending and Processing IPv6 Extension Headers</title>
            <author fullname="Tom Herbert" initials="T." surname="Herbert">
              <organization>SiPanda</organization>
            </author>
            <date day="18" month="December" year="2023"/>
            <abstract>
              <t>   This specification defines various limits that may be applied to
   receiving, sending, and otherwise processing packets that contain
   IPv6 extension headers.  The need for such limits is pragmatic to
   facilitate interoperability amongst hosts and routers in the presence
   of extension headers, thereby increasing the feasibility of
   deployment of extension headers.  The limits described herein
   establish the minimum baseline of support for use of extension
   headers on the Internet.  If it is known that all communicating
   parties for a particular communication, including destination hosts
   and any routers in the path, are capable of supporting more than the
   baseline then these default limits may be freely exceeded.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-6man-eh-limits-12"/>
        </reference>
        <reference anchor="RFC9098">
          <front>
            <title>Operational Implications of IPv6 Packets with Extension Headers</title>
            <author fullname="F. Gont" initials="F." surname="Gont"/>
            <author fullname="N. Hilliard" initials="N." surname="Hilliard"/>
            <author fullname="G. Doering" initials="G." surname="Doering"/>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <author fullname="W. Liu" initials="W." surname="Liu"/>
            <date month="September" year="2021"/>
            <abstract>
              <t>This document summarizes the operational implications of IPv6 extension headers specified in the IPv6 protocol specification (RFC 8200) and attempts to analyze reasons why packets with IPv6 extension headers are often dropped in the public Internet.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9098"/>
          <seriesInfo name="DOI" value="10.17487/RFC9098"/>
        </reference>
        <reference anchor="RFC7974">
          <front>
            <title>An Experimental TCP Option for Host Identification</title>
            <author fullname="B. Williams" initials="B." surname="Williams"/>
            <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
            <author fullname="D. Wing" initials="D." surname="Wing"/>
            <date month="October" year="2016"/>
            <abstract>
              <t>Recent RFCs have discussed issues with host identification in IP address-sharing systems, such as address/prefix-sharing devices and application-layer proxies. Potential solutions for revealing a host identifier in shared address deployments have also been discussed. This memo describes the design, deployment, and privacy considerations for one such solution in operational use on the Internet today that uses a TCP option to transmit a host identifier.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7974"/>
          <seriesInfo name="DOI" value="10.17487/RFC7974"/>
        </reference>
        <reference anchor="RFC8547">
          <front>
            <title>TCP-ENO: Encryption Negotiation Option</title>
            <author fullname="A. Bittau" initials="A." surname="Bittau"/>
            <author fullname="D. Giffin" initials="D." surname="Giffin"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="D. Mazieres" initials="D." surname="Mazieres"/>
            <author fullname="E. Smith" initials="E." surname="Smith"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>Despite growing adoption of TLS, a significant fraction of TCP traffic on the Internet remains unencrypted. The persistence of unencrypted traffic can be attributed to at least two factors. First, some legacy protocols lack a signaling mechanism (such as a STARTTLS command) by which to convey support for encryption, thus making incremental deployment impossible. Second, legacy applications themselves cannot always be upgraded and therefore require a way to implement encryption transparently entirely within the transport layer. The TCP Encryption Negotiation Option (TCP-ENO) addresses both of these problems through a new TCP option kind providing out-of-band, fully backward-compatible negotiation of encryption.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8547"/>
          <seriesInfo name="DOI" value="10.17487/RFC8547"/>
        </reference>
        <reference anchor="RFC7609">
          <front>
            <title>IBM's Shared Memory Communications over RDMA (SMC-R) Protocol</title>
            <author fullname="M. Fox" initials="M." surname="Fox"/>
            <author fullname="C. Kassimis" initials="C." surname="Kassimis"/>
            <author fullname="J. Stevens" initials="J." surname="Stevens"/>
            <date month="August" year="2015"/>
            <abstract>
              <t>This document describes IBM's Shared Memory Communications over RDMA (SMC-R) protocol. This protocol provides Remote Direct Memory Access (RDMA) communications to TCP endpoints in a manner that is transparent to socket applications. It further provides for dynamic discovery of partner RDMA capabilities and dynamic setup of RDMA connections, as well as transparent high availability and load balancing when redundant RDMA network paths are available. It maintains many of the traditional TCP/IP qualities of service such as filtering that enterprise users demand, as well as TCP socket semantics such as urgent data.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7609"/>
          <seriesInfo name="DOI" value="10.17487/RFC7609"/>
        </reference>
      </references>
    </references>
    <?line 666?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Paul Aitken and Eric Vyncke for the reviews and comments. Special thanks to Andrew Feren for sharing data about scans of IPFIX data he collected.</t>
      <t>Thanks to Wesley Eddy for the tsvart review, Yingzhen Qu for the opsdir review, Dirk Von Hugo for intdir review, Joel Halpern for the genart review, and Tero Kivinen for the secdir review.</t>
      <t>Thanks to Thomas Graf for the Shepherd review.</t>
      <t>Thanks to Mahesh Jethanandani for the AD review.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
CvPxKLDjjo7tiP8GFu5phkh1AAA=

-->

</rfc>
