<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.11 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-kuehlewind-tcpm-flags-registry-00" category="std">

  <front>
    <title abbrev="Registration Policy for TCP Flags">Registration Policy for TCP Header Flags</title>

    <author initials="M." surname="Kuehlewind" fullname="Mirja Kuehlewind">
      <organization>Ericsson</organization>
      <address>
        <email>mirja.kuehlewind@ericsson.com</email>
      </address>
    </author>

    <date year="2019" month="November" day="18"/>

    
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>RFC2780 specifies the registration policy for reserved TCP header flags as Standards Action. 
RFC3168 created an IANA registry for these header flags and registered bit 8 (CWR) and 9 (ECE).
This draft changes the registration policy of the registration to IETF Review as usually
new TCP mechanisms that could use the remaining reserved flags will be first specified as 
experimental. Not noting any of those experiments in the registry would undermine the purpose
of having a registry. However, care must be taken, as only a few reserved flags are left 
and if a new (experimental) mechanism sees deployment in the Internet, the flag cannot be
unassigned anymore or used for something else.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t><xref target="RFC2780"/> specifies the registration policy for reserved TCP header flags as Standards Action. 
In section 9.2 (Reserved Bits in TCP Header) is says:</t>

<figure><artwork><![CDATA[
    "The reserved bits in the TCP header are assigned following a Standards Action process."
]]></artwork></figure>

<t>Earlier on, in section 2 (Temporary Assignments) it also says</t>

<figure><artwork><![CDATA[
    "From time to time temporary assignments are made in the values for fields in these headers for use in experiments.  IESG Approval is required for any such temporary assignments."
]]></artwork></figure>

<t>However, it does not specify what exactly is meant with a temporary assignment and how this
could work for TCP header given they can hardly be re-purposed once deployed on the Internet.</t>

<t><xref target="RFC3168"/> created a IANA registry for these header flags and registered bit 8 (CWR) and 9 (ECE).
<xref target="RFC3540"/> assigned bit 7 to the experimental ECN Nonce extension and <xref target="RFC8311"/> recently declared 
RFC3540 as historic and changed the assignment to reserved, as ECN Nonce was not deployed 
on the Internet. The purpose of RFC8311 was to concentrate updates to Standard Track RFCs
in one document in oder to enable new experimentation with various ECN-related mechanisms. 
However, RFC8311 does not provide any recommendation of the use of bit 7 and the TCP flags registry.</t>

</section>
<section anchor="notation" title="Notation">

<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”,
“SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”, “MAY”, and “OPTIONAL” in this
document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="registration-policy-for-tcp-header-flags" title="Registration Policy for TCP Header Flags">

<t>This draft changes the registration policy of the registration to IETF Review as usually
new TCP mechanisms that could use the remaining reserved flags will be first specified as 
experimental. Not noting any of those experiments in the registry would undermine the purpose
of having a registry. However, assignments based on experimental RFC should be marked as
such in the “Comments” field and potentially even provide hints about the nature of the 
experiment or provide a pointer to a section in an RFC where the experiment is explained.</t>

<t>Further, care must be taken, when assigning TCP header flags for experimental use, as a) only a few reserved flags are left, 
and b) if a new (experimental) mechanism sees deployment in the Internet, the flag cannot be
unassigned anymore or used for something else. Therefore, any experimental RFC that registers 
a reserved flags in the TCP flags registry MUST provide ways to alter the proposed
mechanism at the end of the experimental phase without using additional TCP header flags.
E.g. it would be possible to add an additional negotiation mechanism after the TCP handshake
that would make it possible to use different versions of the general mechanism/extension
that was negotiated or indicated during the TCP handshake using the newly assigned flag. 
Further, any experimental extension
SHOULD discussion the scope of the experiment and potential failure cases or open questions
that need to be answered when running the experiment and explain how these could be addressed
in an updated version.</t>

<t>TCP flags can only be de-assigned if no deployment of an experimental extension happened.
This should be evaluated some years after the assignment to an experimental extension, in order to change the 
registry entry back to “RESERVED” and move the respective experimental RFC to history, or 
assign it permanently. This 
might be done by IESG Approval or based on an Standards track document. However, even when 
reversed to “RESERVED”, the experiment
should still be noted (as failed and over) in the “Comments” field of the registry entry.</t>

</section>
<section anchor="iana-considerations" title="IANA Considerations">

<t>IANA is requested to change the registration policy of the “TCP Header Flags” registry
(https://www.iana.org/assignments/tcp-header-flags/tcp-header-flags.xhtml) to IETF Review 
or IESG Approval and note this accordingly on the registry page.</t>

<t>In addition, the registry should be updated with a new column called “Comments”. 
The text in the “name” field of the entry for bit 7 there should be moved into this new column
while the name will then only say “RESERVED”.
Further, bits 4, 5, 6 should be
added to the registry and marked as “RESERVED”.</t>

<t>Moreover, as a matter of cleaning-up, IANA is requested to move the registry to a sub-registry
on the Transmission Control Protocol (TCP) Parameters page 
(https://www.iana.org/assignments/tcp-parameters/tcp-parameters.xhtml).</t>

</section>
<section anchor="security-consideration" title="Security Consideration">

<t><list style='empty'>
  <t>TBD</t>
</list></t>

</section>
<section anchor="contributors" title="Contributors">

</section>
<section anchor="acknowledgments" title="Acknowledgments">

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC3168" target='https://www.rfc-editor.org/info/rfc3168'>
<front>
<title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
<author initials='K.' surname='Ramakrishnan' fullname='K. Ramakrishnan'><organization /></author>
<author initials='S.' surname='Floyd' fullname='S. Floyd'><organization /></author>
<author initials='D.' surname='Black' fullname='D. Black'><organization /></author>
<date year='2001' month='September' />
<abstract><t>This memo specifies the incorporation of ECN (Explicit Congestion Notification) to TCP and IP, including ECN's use of two bits in the IP header.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='3168'/>
<seriesInfo name='DOI' value='10.17487/RFC3168'/>
</reference>



<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<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" target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></author>
<date year='2017' month='May' />
<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="RFC2780" target='https://www.rfc-editor.org/info/rfc2780'>
<front>
<title>IANA Allocation Guidelines For Values In the Internet Protocol and Related Headers</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<author initials='V.' surname='Paxson' fullname='V. Paxson'><organization /></author>
<date year='2000' month='March' />
<abstract><t>This memo provides guidance for the IANA to use in assigning parameters for fields in the IPv4, IPv6, ICMP, UDP and TCP protocol headers.  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='37'/>
<seriesInfo name='RFC' value='2780'/>
<seriesInfo name='DOI' value='10.17487/RFC2780'/>
</reference>




    </references>

    <references title='Informative References'>





<reference  anchor="RFC8311" target='https://www.rfc-editor.org/info/rfc8311'>
<front>
<title>Relaxing Restrictions on Explicit Congestion Notification (ECN) Experimentation</title>
<author initials='D.' surname='Black' fullname='D. Black'><organization /></author>
<date year='2018' month='January' />
<abstract><t>This memo updates RFC 3168, which specifies Explicit Congestion Notification (ECN) as an alternative to packet drops for indicating network congestion to endpoints.  It relaxes restrictions in RFC 3168 that hinder experimentation towards benefits beyond just removal of loss.  This memo summarizes the anticipated areas of experimentation and updates RFC 3168 to enable experimentation in these areas.  An Experimental RFC in the IETF document stream is required to take advantage of any of these enabling updates.  In addition, this memo makes related updates to the ECN specifications for RTP in RFC 6679 and for the Datagram Congestion Control Protocol (DCCP) in RFCs 4341, 4342, and 5622.  This memo also records the conclusion of the ECN nonce experiment in RFC 3540 and provides the rationale for reclassification of RFC 3540 from Experimental to Historic; this reclassification enables new experimental use of the ECT(1) codepoint.</t></abstract>
</front>
<seriesInfo name='RFC' value='8311'/>
<seriesInfo name='DOI' value='10.17487/RFC8311'/>
</reference>



<reference  anchor="RFC3540" target='https://www.rfc-editor.org/info/rfc3540'>
<front>
<title>Robust Explicit Congestion Notification (ECN) Signaling with Nonces</title>
<author initials='N.' surname='Spring' fullname='N. Spring'><organization /></author>
<author initials='D.' surname='Wetherall' fullname='D. Wetherall'><organization /></author>
<author initials='D.' surname='Ely' fullname='D. Ely'><organization /></author>
<date year='2003' month='June' />
<abstract><t>This note describes the Explicit Congestion Notification (ECN)-nonce, an optional addition to ECN that protects against accidental or malicious concealment of marked packets from the TCP sender.  It improves the robustness of congestion control by preventing receivers from exploiting ECN to gain an unfair share of network bandwidth.  The ECN-nonce uses the two ECN-Capable Transport (ECT)codepoints in the ECN field of the IP header, and requires a flag in the TCP header.  It is computationally efficient for both routers and hosts.  This memo defines an Experimental Protocol for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='3540'/>
<seriesInfo name='DOI' value='10.17487/RFC3540'/>
</reference>




    </references>



  </back>

<!-- ##markdown-source:
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
AA==

-->

</rfc>

