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


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-ietf-ccwg-rfc5033bis-01" category="bcp" consensus="true" submissionType="IETF" obsoletes="5033" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="New CC Algorithms">Specifying New Congestion Control Algorithms</title>

    <author initials="M." surname="Duke" fullname="Martin Duke" role="editor">
      <organization>Google LLC</organization>
      <address>
        <email>martin.h.duke@gmail.com</email>
      </address>
    </author>
    <author initials="G." surname="Fairhurst" fullname="Godred Fairhurst" role="editor">
      <organization>University of Aberdeen</organization>
      <address>
        <email>gorry@erg.abdn.ac.uk</email>
      </address>
    </author>

    <date year="2023" month="October" day="13"/>

    <area>General</area>
    <workgroup>CCWG</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 86?>

<t>The IETF's standard congestion control schemes have been widely shown
to be inadequate for various environments (e.g., high-speed networks,
wireless technologies such as 3GPP and WiFi, long distance satellite
links) and also in conflict with the needed, more isochronous,
behaviors of VoIP, gaming, and videoconferencing traffic.
Recent research has yielded many alternate congestion
control schemes that significantly differ from the IETF's congestion
control principles.
Using these new congestion control schemes in
the global Internet has possible ramifications to both the traffic
using the new congestion control and to traffic using the currently
standardized congestion control.
Therefore, the IETF must proceed
with caution when dealing with alternate congestion control
proposals.
The goal of this document is to provide guidance for
considering alternate congestion control algorithms within the IETF.</t>



    </abstract>



  </front>

  <middle>


<?line 106?>

<section anchor="introduction"><name>Introduction</name>

<t>This document provides guidelines for the IETF to use when evaluating
suggested congestion control algorithms that significantly differ
from the general congestion control principles outlined in <xref target="RFC2914"/>.
The guidance is intended to be useful to authors proposing alternate
congestion control and for the IETF community when evaluating whether
a proposal is appropriate for publication in the RFC series and for
deployment in the Internet.</t>

<t>This document updates the similarly titled <xref target="RFC5033"/> that was
published in 2007 as a Best Current Practice to evaluate new
congestion control algorithms as Experimental or Proposed Standard RFCs.</t>

<t>In 2007, TCP was the dominant consumer of this work, and proposals were
typically discussed in research groups, for example the
Internet Congestion Control Research Group (ICCRG).</t>

<t>Since RFC 5033 was published, many conditions have changed.
The set of protocols using these algorithms has spread beyond
TCP and SCTP to include DCCP, QUIC, and beyond.
Some congestion control algorithm proponents now have the opportunity
to test and deploy at scale without IETF review.
There is more interest in specialized use cases such as data centers and
real-time protocols.
Finally, the community has gained much more experience with indications
of congestion beyond packet loss.</t>

<t>Multiple congestion control algorithms
have been developed outside of the IETF, including at least two that saw
large scale deployment: Cubic <xref target="HRX08"/> and BBR <xref target="BBR-draft"/>.</t>

<t>Cubic was documented in a research publication in 2007 <xref target="HRX08"/>,
and then adopted as the default congestion control algorithm for
the TCP implementation in Linux. It was already used in a significant
fraction of TCP connections over the Internet before being documented
in an informational Internet Draft in 2015, being published as an
informational RFC in 2017 <xref target="RFC8312"/> and then as a proposed
standard in 2023 <xref target="RFC9438"/>.</t>

<t>BBR is developed as an internal research project by Google,
with the first implementation contributed to Linux kernel 4.19 in 2016.
It was described in an IRTF draft in 2018, and that draft is
regularly updated to document the evolving versions of the algorithm
<xref target="BBR-draft"/>. BBR is widely used for Google services using either
TCP or QUIC <xref target="RFC9000"/>, and is also largely deployed outside of
Google.</t>

<t>We cannot say now whether the original authors of <xref target="RFC5033"/>
expected that developers would be somehow waiting for IETF review
before widely deploying a congestion control algorithm over the
Internet, but the examples of Cubic and BBR teaches us that
deployment of new algorithms is not in fact gated by publication
of the algorithm as an RFC. Nevertheless, guidelines are
important, if only to remind potential inventors and developers of
the multiple facets of the congestion control problem.</t>

<t>The guidelines in this document are intended to be consistent with
the congestion control principles from <xref target="RFC2914"/> of preventing
congestion collapse, considering fairness, and optimizing the flow's
own performance in terms of throughput, delay, and loss.
<xref target="RFC2914"/>
also discusses the goal of avoiding a congestion control "arms race"
among competing transport protocols.</t>

<t>This document does not give hard-and-fast requirements for an
appropriate congestion control scheme.
Rather, the document provides
a set of criteria that should be considered and weighed by the
developers of congestion control algorithms and by the IETF
in the context of each proposal.
The high-order criteria for any new
proposal is that a serious scientific study of the pros and cons of
the proposal needs to have been done before a proposal is
considered for publication by the IETF or before it is deployed at
large scale.</t>

<t>After initial studies, we encourage authors to write a specification
of their proposals for publication in the RFC series to allow others
to concretely understand and investigate the wealth of proposals in
this space.</t>

</section>
<section anchor="document-status"><name>Document Status</name>

<t>Following the lead of HighSpeed TCP <xref target="RFC3649"/>, alternate congestion
control algorithms are expected to be published as "Experimental"
RFCs until such time that the community better understands the
solution space.
Traditionally, the meaning of "Experimental" status
has varied in its use and interpretation.
As part of this document
we define two classes of congestion control proposals that can be
published with the "Experimental" status.
The first class includes
algorithms that are judged to be safe to deploy for best-effort
traffic in the global Internet and further investigated in that
environment.
The second class includes algorithms that, while
promising, are not deemed safe enough for widespread deployment as
best-effort traffic on the Internet, but are being specified to
facilitate investigations in simulation, testbeds, or controlled
environments.
The second class can also include algorithms where the
IETF does not yet have sufficient understanding to decide if the
algorithm is or is not safe for deployment on the Internet.</t>

<t>Each alternate congestion control algorithm published is required to
include a statement in the abstract indicating whether or not the
proposal is considered safe for use on the Internet.
Each alternate
congestion control algorithm published is also required to include a
statement in the abstract describing environments where the protocol
is not recommended for deployment.
There may be environments where
the protocol is deemed <em>safe</em> for use, but still is not <em>recommended</em>
for use because it does not perform well for the user.</t>

<t>As examples of such statements, <xref target="RFC3649"/> specifying HighSpeed TCP
includes a statement in the abstract stating that the proposal is
Experimental, but may be deployed in the current Internet.  In
contrast, the Quick-Start document <xref target="RFC4782"/> includes a paragraph in
the abstract stating the mechanism is only being proposed for
controlled environments.  The abstract specifies environments where
the Quick-Start request could give false positives (and therefore
would be unsafe for incremental deployment where some routers
forward, but do not process the option).  The abstract also specifies environments
where packets containing the Quick-Start request could be dropped in
the network; in such an environment, Quick-Start would not be unsafe
to deploy, but deployment would not be recommended because it
could lead to unnecessary delays for the connections attempting to use
Quick-Start. The Quick-Start method is discussed as an example in <xref target="RFC9049"/>.</t>

<t>For authors of alternate congestion control schemes who are not ready
to bring their congestion control mechanisms to the IETF for
standardization (either as Experimental or as Proposed Standard), one
possibility would be to submit an internet-draft that documents the
alternate congestion control mechanism for the benefit of the IETF
and IRTF communities.  This is particularly encouraged in order to
ensure algorithm specifications are widely disseminated to facilitate
further research.  Such an internet-draft could also be
considered as an Informational RFC, as a first step in the process
towards standardization.  Such a document would be expected to
carry an explicit warning against using the scheme in the global
Internet.</t>

<t>Note: we are not changing the RFC publication process for non-IETF
produced documents (e.g., those from the IRTF or Independent
Submissions via the RFC-Editor).  However, we would hope the
guidelines in this document inform the IESG as they consider whether
to add a note to such documents.</t>

</section>
<section anchor="guidelines"><name>Guidelines</name>

<t>As noted above, authors are expected to do a well-rounded evaluation
of the pros and cons of proposals brought to the IETF.  The following
are guidelines to help authors and the IETF community.  Concerns that
fall outside the scope of these guidelines are certainly possible;
these guidelines should not be considered as an all-encompassing
check-list.</t>

<dl>
  <dt>(0)</dt>
  <dd>
    <t>Differences with Congestion Control Principles <xref target="RFC2914"/></t>
  </dd>
  <dt/>
  <dd>
    <t>Proposed congestion control mechanisms should include a clear
explanation of the deviations from <xref target="RFC2914"/>.</t>
  </dd>
  <dt>(1)</dt>
  <dd>
    <t>Impact on existing deployments of TCP <xref target="RFC9293"/>, SCTP <xref target="RFC9260"/>,
DCCP <xref target="RFC4340"/>, and QUIC <xref target="RFC9000"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>Proposed congestion control mechanisms should be evaluated when
competing with standard IETF congestion control <xref target="RFC5681"/>,
<xref target="RFC9260"/>, <xref target="RFC4340"/>, <xref target="RFC9002"/>, <xref target="RFC9438"/>.  Alternate
congestion controllers that have a significantly negative impact on
traffic using standard congestion control may be suspect and this aspect should
be part of the community's decision making with regards to the suitability of
the alternate congestion control mechanism. The community should also consider
other non-standard congestion controls known to be widely deployed,</t>
  </dd>
  <dt/>
  <dd>
    <t>We note that this bullet is not a requirement for strict Reno- or Cubic-
friendliness as a prerequisite for an alternate congestion
control mechanism to advance to Experimental.  As an example,
HighSpeed TCP is a congestion control mechanism that is
Experimental, but that is not TCP-friendly in all environments.
When a new algorithm is deployed, the existing major deployments need to be
considered to avoid severe performance degradation.
We also note that this guideline does not constrain the interaction with
non-best-effort traffic.</t>
  </dd>
  <dt/>
  <dd>
    <t>As an example from an Experimental RFC, fairness with standard
TCP is discussed in Sections 4 and 6 of <xref target="RFC3649"/> (HighSpeed TCP)
and using spare capacity is discussed in Sections 6, 11.1, and 12
of <xref target="RFC3649"/>.</t>
  </dd>
  <dt>(2)</dt>
  <dd>
    <t>Wireless links</t>
  </dd>
  <dt/>
  <dd>
    <t>While the early Internet was dominated by wired links, the properties
of wireless links have become extremely important to Internet performance.
In particular, congestion controllers should be evaluated in situations
where some packet losses are due to radio effects, rather than router
queue drops; the link capacity varies over time due to changing link conditions;
and media access delays and link-layer retransmission lead to increased jitter
in round-trip times. See <xref target="RFC3819"/> and Section 16 of <xref target="Tools"/> for further
discussion of wireless properties.</t>
  </dd>
  <dt>(3)</dt>
  <dd>
    <t>Difficult Environments.</t>
  </dd>
  <dt/>
  <dd>
    <t>The proposed algorithms should be assessed in difficult
environments.  We note that there is still much to be desired in
terms of the performance of TCP in some of these difficult
environments.  For congestion control mechanisms with explicit
feedback from routers, difficult environments can include paths
with non-IP queues at layer-two, IP tunnels, and the like.  A
minimum goal for experimental mechanisms proposed for widespread
deployment in the Internet should be that they do not perform
significantly worse than TCP in these environments.</t>
  </dd>
  <dt/>
  <dd>
    <t>While it is impossible to enumerate all the possible "difficult
environments", we note that the IETF has previously grappled with
paths with long delays <xref target="RFC2488"/>, high delay bandwidth products
<xref target="RFC3649"/>, high packet corruption rates <xref target="RFC3155"/>, packet
reordering <xref target="RFC4653"/>, and significantly slow links <xref target="RFC3150"/>.
Aspects of alternate congestion control that impact networks with
these characteristics should be detailed.</t>
  </dd>
  <dt/>
  <dd>
    <t>As an example from an Experimental RFC, performance in difficult
environments is discussed in Sections 6, 9.2, and 10.2 of
<xref target="RFC4782"/> (Quick-Start).</t>
  </dd>
  <dt>(4)</dt>
  <dd>
    <t>Investigating a Range of Environments.</t>
  </dd>
  <dt/>
  <dd>
    <t>Similar to the last criteria, proposed alternate congestion
controllers should be assessed in a range of environments.  For
instance, proposals should be investigated across a range of
capacities, round-trip times, levels of traffic on the reverse
path, and levels of statistical multiplexing at the congested
link.  Similarly, proposals should be investigated for robust
performance with different queueing mechanisms in the routers,
especially Random Early Detection (RED) <xref target="FJ03"/> and Drop-Tail.
This evaluation is often not included in the internet-draft
itself, but in related papers cited in the draft.</t>
  </dd>
  <dt/>
  <dd>
    <t>A particularly important aspect of evaluating a proposal for
standardization is in understanding where the algorithm breaks
down.  Therefore, particular attention should be paid to
characterizing the areas where the proposed mechanism does not
perform well.</t>
  </dd>
  <dt/>
  <dd>
    <t>As an example from an Experimental RFC, performance in a range of
environments is discussed in Section 12 of <xref target="RFC3649"/> (HighSpeed
TCP) and Section 9.7 of <xref target="RFC4782"/> (Quick-Start).</t>
  </dd>
  <dt>(5)</dt>
  <dd>
    <t>Protection Against Congestion Collapse</t>
  </dd>
  <dt/>
  <dd>
    <t>The alternate congestion control mechanism should either stop
sending when the packet drop rate exceeds some threshold
<xref target="RFC3714"/>, or should include some notion of "full backoff".  For
"full backoff", at some point the algorithm would reduce the
sending rate to one packet per round-trip time and then
exponentially backoff the time between single packet
transmissions if congestion persists.  Exactly when either "full
backoff" or a pause in sending comes into play will be
algorithm-specific.  However, as discussed in <xref target="RFC2914"/>, this
requirement is crucial to protect the network in times of extreme
congestion.</t>
  </dd>
  <dt/>
  <dd>
    <t>If "full backoff" is used, this bullet does not require that the
full backoff mechanism must be identical to that of TCP
<xref target="RFC2988"/>.  As an example, this bullet does not preclude full
backoff mechanisms that would give flows with different round-
trip times comparable caapcity during backoff.</t>
  </dd>
  <dt>(6)</dt>
  <dd>
    <t>Protection Against Bufferbloat</t>
  </dd>
  <dt/>
  <dd>
    <t>The alternate congestion control mechanism should reduce its sending
rate if the round trip time (RTT) significantly increases. Exactly how
the algorithm reduces its sending rate is algorithm specific.</t>
  </dd>
  <dt/>
  <dd>
    <t>Bufferbloat <xref target="Bufferbloat"/> refers to the building of long queues in
the network. Many network routers are configured with very large buffers.
If congestion starts happening, classic TCP congestion control algorithms
<xref target="RFC5681"/> will continue sending at a high rate until the buffer fills
up completely and packet losses occur. Every connection going through
that bottleneck will experience high latency.
This is particularly bad for highly interactive applications like games,
but it also affects routine web browsing and video playing.</t>
  </dd>
  <dt/>
  <dd>
    <t>This problem became apparent in the last decade and was not discussed in
the Congestion Control Principles published in September 2002 <xref target="RFC2914"/>.
The classic congestion control algorithm <xref target="RFC5681"/> and the widely deployed
Cubic algorithm <xref target="RFC9438"/> do not address it, but newly designed congestion
control algorithms have the opportunity to improve the state of the art.</t>
  </dd>
  <dt>(7)</dt>
  <dd>
    <t>Fairness within the Alternate Congestion Control Algorithm.</t>
  </dd>
  <dt/>
  <dd>
    <t>In environments with multiple competing flows all using the same
alternate congestion control algorithm, the proposal should
explore how the capacity is shared among the competing flows.</t>
  </dd>
  <dt>(8)</dt>
  <dd>
    <t>Performance with Misbehaving Nodes and Outside Attackers.</t>
  </dd>
  <dt/>
  <dd>
    <t>The proposal should explore how the alternate congestion control
mechanism performs with misbehaving senders, receivers, or
routers.  In addition, the proposal should explore how the
alternate congestion control mechanism performs with outside
attackers.  This can be particularly important for congestion
control mechanisms that involve explicit feedback from routers
along the path.</t>
  </dd>
  <dt/>
  <dd>
    <t>As an example from an Experimental RFC, performance with
misbehaving nodes and outside attackers is discussed in Sections
9.4, 9.5, and 9.6 of <xref target="RFC4782"/> (Quick-Start).  This includes
discussion of misbehaving senders and receivers; collusion
between misbehaving routers; misbehaving middleboxes; and the
potential use of Quick-Start to attack routers or to tie up
available Quick-Start bandwidth.</t>
  </dd>
  <dt>(9)</dt>
  <dd>
    <t>Responses to Sudden or Transient Events.</t>
  </dd>
  <dt/>
  <dd>
    <t>The proposal should consider how the alternate congestion control
mechanism would perform in the presence of transient events such
as sudden congestion, a routing change, or a mobility event.
Routing changes, link disconnections, intermittent link
connectivity, and mobility are discussed in more detail in
Section 17 of <xref target="Tools"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>As an example from an Experimental RFC, response to transient
events is discussed in Section 9.2 of <xref target="RFC4782"/> (Quick-Start).</t>
  </dd>
  <dt>(10)</dt>
  <dd>
    <t>Incremental Deployment.</t>
  </dd>
  <dt/>
  <dd>
    <t>The proposal should discuss whether the alternate congestion
control mechanism allows for incremental deployment in the
targeted environment.  For a mechanism targeted for deployment in
the current Internet, it would be helpful for the proposal to
discuss what is known (if anything) about the correct operation
of the mechanism with some of the equipment installed in the
current Internet, e.g., routers, transparent proxies, WAN
optimizers, intrusion detection systems, home routers, and the
like.</t>
  </dd>
  <dt/>
  <dd>
    <t>As a similar concern, if the alternate congestion control
mechanism is intended only for specific environments (and not the
global Internet), the proposal should consider how this intention
is to be carried out.  The community will have to address the
question of whether the scope can be enforced by simply stating
the restrictions or whether additional protocol mechanisms are
required to enforce the scoping.  The answer will necessarily
depend on the change being proposed.</t>
  </dd>
  <dt/>
  <dd>
    <t>As an example from an Experimental RFC, deployment issues are
discussed in Sections 10.3 and 10.4 of <xref target="RFC4782"/> (Quick-Start).</t>
  </dd>
</dl>

</section>
<section anchor="minimum-requirements"><name>Minimum Requirements</name>

<t>This section suggests minimum requirements for a document to be
approved as Experimental with approval for widespread deployment in
the global Internet.</t>

<t>The minimum requirements for approval for widespread deployment in
the global Internet include the following guidelines on: (1)
assessing the impact on standard congestion control, (2) performance in
wireless environments, (4)
investigation of the proposed mechanism in a range of environments,
(5) protection against congestion collapse, and (10) discussing
whether the mechanism allows for incremental deployment.</t>

<t>For other guidelines, the author must
perform the suggested evaluations and provide recommended analysis.
Evidence that the proposed mechanism has significantly more problems
than those of TCP should be a cause for concern in approval for
widespread deployment in the global Internet.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This document does not represent a change to any aspect of the TCP/IP
protocol suite and therefore does not directly impact Internet
security.  The implementation of various facets of the Internet's
current congestion control algorithms do have security implications
(e.g., as outlined in <xref target="RFC5681"/>).  Alternate congestion control
schemes should be mindful of such pitfalls, as well, and should
examine any potential security issues that may arise.</t>

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

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>



<reference anchor="RFC2914">
  <front>
    <title>Congestion Control Principles</title>
    <author fullname="S. Floyd" initials="S." surname="Floyd"/>
    <date month="September" year="2000"/>
    <abstract>
      <t>The goal of this document is to explain the need for congestion control in the Internet, and to discuss what constitutes correct congestion control. 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="41"/>
  <seriesInfo name="RFC" value="2914"/>
  <seriesInfo name="DOI" value="10.17487/RFC2914"/>
</reference>

<reference anchor="RFC5033">
  <front>
    <title>Specifying New Congestion Control Algorithms</title>
    <author fullname="S. Floyd" initials="S." surname="Floyd"/>
    <author fullname="M. Allman" initials="M." surname="Allman"/>
    <date month="August" year="2007"/>
    <abstract>
      <t>The IETF's standard congestion control schemes have been widely shown to be inadequate for various environments (e.g., high-speed networks). Recent research has yielded many alternate congestion control schemes that significantly differ from the IETF's congestion control principles. Using these new congestion control schemes in the global Internet has possible ramifications to both the traffic using the new congestion control and to traffic using the currently standardized congestion control. Therefore, the IETF must proceed with caution when dealing with alternate congestion control proposals. The goal of this document is to provide guidance for considering alternate congestion control algorithms within the IETF. 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="133"/>
  <seriesInfo name="RFC" value="5033"/>
  <seriesInfo name="DOI" value="10.17487/RFC5033"/>
</reference>

<reference anchor="RFC9438">
  <front>
    <title>CUBIC for Fast and Long-Distance Networks</title>
    <author fullname="L. Xu" initials="L." surname="Xu"/>
    <author fullname="S. Ha" initials="S." surname="Ha"/>
    <author fullname="I. Rhee" initials="I." surname="Rhee"/>
    <author fullname="V. Goel" initials="V." surname="Goel"/>
    <author fullname="L. Eggert" initials="L." role="editor" surname="Eggert"/>
    <date month="August" year="2023"/>
    <abstract>
      <t>CUBIC is a standard TCP congestion control algorithm that uses a cubic function instead of a linear congestion window increase function to improve scalability and stability over fast and long-distance networks. CUBIC has been adopted as the default TCP congestion control algorithm by the Linux, Windows, and Apple stacks.</t>
      <t>This document updates the specification of CUBIC to include algorithmic improvements based on these implementations and recent academic work. Based on the extensive deployment experience with CUBIC, this document also moves the specification to the Standards Track and obsoletes RFC 8312. This document also updates RFC 5681, to allow for CUBIC's occasionally more aggressive sending behavior.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9438"/>
  <seriesInfo name="DOI" value="10.17487/RFC9438"/>
</reference>

<reference anchor="RFC9000">
  <front>
    <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
    <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
    <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
    <date month="May" year="2021"/>
    <abstract>
      <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9000"/>
  <seriesInfo name="DOI" value="10.17487/RFC9000"/>
</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="RFC9260">
  <front>
    <title>Stream Control Transmission Protocol</title>
    <author fullname="R. Stewart" initials="R." surname="Stewart"/>
    <author fullname="M. Tüxen" initials="M." surname="Tüxen"/>
    <author fullname="K. Nielsen" initials="K." surname="Nielsen"/>
    <date month="June" year="2022"/>
    <abstract>
      <t>This document describes the Stream Control Transmission Protocol (SCTP) and obsoletes RFC 4960. It incorporates the specification of the chunk flags registry from RFC 6096 and the specification of the I bit of DATA chunks from RFC 7053. Therefore, RFCs 6096 and 7053 are also obsoleted by this document. In addition, RFCs 4460 and 8540, which describe errata for SCTP, are obsoleted by this document.</t>
      <t>SCTP was originally designed to transport Public Switched Telephone Network (PSTN) signaling messages over IP networks. It is also suited to be used for other applications, for example, WebRTC.</t>
      <t>SCTP is a reliable transport protocol operating on top of a connectionless packet network, such as IP. It offers the following services to its users:</t>
      <t>The design of SCTP includes appropriate congestion avoidance behavior and resistance to flooding and masquerade attacks.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9260"/>
  <seriesInfo name="DOI" value="10.17487/RFC9260"/>
</reference>

<reference anchor="RFC4340">
  <front>
    <title>Datagram Congestion Control Protocol (DCCP)</title>
    <author fullname="E. Kohler" initials="E." surname="Kohler"/>
    <author fullname="M. Handley" initials="M." surname="Handley"/>
    <author fullname="S. Floyd" initials="S." surname="Floyd"/>
    <date month="March" year="2006"/>
    <abstract>
      <t>The Datagram Congestion Control Protocol (DCCP) is a transport protocol that provides bidirectional unicast connections of congestion-controlled unreliable datagrams. DCCP is suitable for applications that transfer fairly large amounts of data and that can benefit from control over the tradeoff between timeliness and reliability. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4340"/>
  <seriesInfo name="DOI" value="10.17487/RFC4340"/>
</reference>

<reference anchor="RFC5681">
  <front>
    <title>TCP Congestion Control</title>
    <author fullname="M. Allman" initials="M." surname="Allman"/>
    <author fullname="V. Paxson" initials="V." surname="Paxson"/>
    <author fullname="E. Blanton" initials="E." surname="Blanton"/>
    <date month="September" year="2009"/>
    <abstract>
      <t>This document defines TCP's four intertwined congestion control algorithms: slow start, congestion avoidance, fast retransmit, and fast recovery. In addition, the document specifies how TCP should begin transmission after a relatively long idle period, as well as discussing various acknowledgment generation methods. This document obsoletes RFC 2581. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5681"/>
  <seriesInfo name="DOI" value="10.17487/RFC5681"/>
</reference>

<reference anchor="RFC9002">
  <front>
    <title>QUIC Loss Detection and Congestion Control</title>
    <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
    <author fullname="I. Swett" initials="I." role="editor" surname="Swett"/>
    <date month="May" year="2021"/>
    <abstract>
      <t>This document describes loss detection and congestion control mechanisms for QUIC.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9002"/>
  <seriesInfo name="DOI" value="10.17487/RFC9002"/>
</reference>




    </references>

    <references title='Informative References'>




<reference anchor="BBR-draft">
   <front>
      <title>BBR Congestion Control</title>
      <author fullname="Neal Cardwell" initials="N." surname="Cardwell">
         <organization>Google</organization>
      </author>
      <author fullname="Yuchung Cheng" initials="Y." surname="Cheng">
         <organization>Google</organization>
      </author>
      <author fullname="Soheil Hassas Yeganeh" initials="S. H." surname="Yeganeh">
         <organization>Google</organization>
      </author>
      <author fullname="Ian Swett" initials="I." surname="Swett">
         <organization>Google</organization>
      </author>
      <author fullname="Van Jacobson" initials="V." surname="Jacobson">
         <organization>Google</organization>
      </author>
      <date day="7" month="March" year="2022"/>
      <abstract>
	 <t>   This document specifies the BBR congestion control algorithm.  BBR
   (&quot;Bottleneck Bandwidth and Round-trip propagation time&quot;) uses recent
   measurements of a transport connection&#x27;s delivery rate, round-trip
   time, and packet loss rate to build an explicit model of the network
   path.  BBR then uses this model to control both how fast it sends
   data and the maximum volume of data it allows in flight in the
   network at any time.  Relative to loss-based congestion control
   algorithms such as Reno [RFC5681] or CUBIC [RFC8312], BBR offers
   substantially higher throughput for bottlenecks with shallow buffers
   or random losses, and substantially lower queueing delays for
   bottlenecks with deep buffers (avoiding &quot;bufferbloat&quot;).  BBR can be
   implemented in any transport protocol that supports packet-delivery
   acknowledgment.  Thus far, open source implementations are available
   for TCP [RFC793] and QUIC [RFC9000].  This document specifies version
   2 of the BBR algorithm, also sometimes referred to as BBRv2 or bbr2.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-cardwell-iccrg-bbr-congestion-control-02"/>
   
</reference>


<reference anchor="HRX08" target="https://doi.org/10.1145/1400097.1400105">
  <front>
    <title>CUBIC: a new TCP-friendly high-speed TCP variant</title>
    <author initials="S." surname="Ha" fullname="Sangtae Ha">
      <organization></organization>
    </author>
    <author initials="I." surname="Rhee" fullname="Injong Rhee">
      <organization></organization>
    </author>
    <author initials="L." surname="Xu" fullname="Lisong Xu">
      <organization></organization>
    </author>
    <date year="2008" month="July"/>
  </front>
  <seriesInfo name="ACM SIGOPS Operating Systems Review, vol. 42, no. 5, pp. 64-74" value=""/>
</reference>
<reference anchor="FJ03" >
  <front>
    <title>Random Early Detection Gateways for Congestion Avoidance</title>
    <author initials="S." surname="Floyd">
      <organization></organization>
    </author>
    <author initials="V." surname="Jacobson">
      <organization></organization>
    </author>
    <date year="1993" month="August"/>
  </front>
  <seriesInfo name="IEEE/ACM Transactions on Networking, V.1 N.4" value=""/>
</reference>
<reference anchor="Tools" target="https://datatracker.ietf.org/doc/draft-irtf-tmrg-tools">
  <front>
    <title>Tools for the Evaluation of Simulation and Testbed Scenarios</title>
    <author initials="S." surname="Floyd">
      <organization></organization>
    </author>
    <author initials="E." surname="Kohler">
      <organization></organization>
    </author>
    <date year="2007" month="July"/>
  </front>
  <seriesInfo name="Work in Progress" value=""/>
</reference>
<reference anchor="Bufferbloat" target="https://www.ietf.org/blog/blind-men-and-elephant/">
  <front>
    <title>The Blind Men and the Elephant</title>
    <author initials="J." surname="Gettys" fullname="Jim Gettys">
      <organization></organization>
    </author>
    <date year="2018" month="February" day="10"/>
  </front>
  <seriesInfo name="IETF Blog" value=""/>
</reference>


<reference anchor="RFC8312">
  <front>
    <title>CUBIC for Fast Long-Distance Networks</title>
    <author fullname="I. Rhee" initials="I." surname="Rhee"/>
    <author fullname="L. Xu" initials="L." surname="Xu"/>
    <author fullname="S. Ha" initials="S." surname="Ha"/>
    <author fullname="A. Zimmermann" initials="A." surname="Zimmermann"/>
    <author fullname="L. Eggert" initials="L." surname="Eggert"/>
    <author fullname="R. Scheffenegger" initials="R." surname="Scheffenegger"/>
    <date month="February" year="2018"/>
    <abstract>
      <t>CUBIC is an extension to the current TCP standards. It differs from the current TCP standards only in the congestion control algorithm on the sender side. In particular, it uses a cubic function instead of a linear window increase function of the current TCP standards to improve scalability and stability under fast and long-distance networks. CUBIC and its predecessor algorithm have been adopted as defaults by Linux and have been used for many years. This document provides a specification of CUBIC to enable third-party implementations and to solicit community feedback through experimentation on the performance of CUBIC.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8312"/>
  <seriesInfo name="DOI" value="10.17487/RFC8312"/>
</reference>

<reference anchor="RFC3649">
  <front>
    <title>HighSpeed TCP for Large Congestion Windows</title>
    <author fullname="S. Floyd" initials="S." surname="Floyd"/>
    <date month="December" year="2003"/>
    <abstract>
      <t>The proposals in this document are experimental. While they may be deployed in the current Internet, they do not represent a consensus that this is the best method for high-speed congestion control. In particular, we note that alternative experimental proposals are likely to be forthcoming, and it is not well understood how the proposals in this document will interact with such alternative proposals. This document proposes HighSpeed TCP, a modification to TCP's congestion control mechanism for use with TCP connections with large congestion windows. The congestion control mechanisms of the current Standard TCP constrains the congestion windows that can be achieved by TCP in realistic environments. For example, for a Standard TCP connection with 1500-byte packets and a 100 ms round-trip time, achieving a steady-state throughput of 10 Gbps would require an average congestion window of 83,333 segments, and a packet drop rate of at most one congestion event every 5,000,000,000 packets (or equivalently, at most one congestion event every 1 2/3 hours). This is widely acknowledged as an unrealistic constraint. To address his limitation of TCP, this document proposes HighSpeed TCP, and solicits experimentation and feedback from the wider community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3649"/>
  <seriesInfo name="DOI" value="10.17487/RFC3649"/>
</reference>

<reference anchor="RFC4782">
  <front>
    <title>Quick-Start for TCP and IP</title>
    <author fullname="S. Floyd" initials="S." surname="Floyd"/>
    <author fullname="M. Allman" initials="M." surname="Allman"/>
    <author fullname="A. Jain" initials="A." surname="Jain"/>
    <author fullname="P. Sarolahti" initials="P." surname="Sarolahti"/>
    <date month="January" year="2007"/>
    <abstract>
      <t>This document specifies an optional Quick-Start mechanism for transport protocols, in cooperation with routers, to determine an allowed sending rate at the start and, at times, in the middle of a data transfer (e.g., after an idle period). While Quick-Start is designed to be used by a range of transport protocols, in this document we only specify its use with TCP. Quick-Start is designed to allow connections to use higher sending rates when there is significant unused bandwidth along the path, and the sender and all of the routers along the path approve the Quick-Start Request.</t>
      <t>This document describes many paths where Quick-Start Requests would not be approved. These paths include all paths containing routers, IP tunnels, MPLS paths, and the like that do not support Quick- Start. These paths also include paths with routers or middleboxes that drop packets containing IP options. Quick-Start Requests could be difficult to approve over paths that include multi-access layer- two networks. This document also describes environments where the Quick-Start process could fail with false positives, with the sender incorrectly assuming that the Quick-Start Request had been approved by all of the routers along the path. As a result of these concerns, and as a result of the difficulties and seeming absence of motivation for routers, such as core routers to deploy Quick-Start, Quick-Start is being proposed as a mechanism that could be of use in controlled environments, and not as a mechanism that would be intended or appropriate for ubiquitous deployment in the global Internet. This memo defines an Experimental Protocol for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4782"/>
  <seriesInfo name="DOI" value="10.17487/RFC4782"/>
</reference>

<reference anchor="RFC9049">
  <front>
    <title>Path Aware Networking: Obstacles to Deployment (A Bestiary of Roads Not Taken)</title>
    <author fullname="S. Dawkins" initials="S." role="editor" surname="Dawkins"/>
    <date month="June" year="2021"/>
    <abstract>
      <t>This document is a product of the Path Aware Networking Research Group (PANRG). At the first meeting of the PANRG, the Research Group agreed to catalog and analyze past efforts to develop and deploy Path Aware techniques, most of which were unsuccessful or at most partially successful, in order to extract insights and lessons for Path Aware networking researchers.</t>
      <t>This document contains that catalog and analysis.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9049"/>
  <seriesInfo name="DOI" value="10.17487/RFC9049"/>
</reference>

<reference anchor="RFC3819">
  <front>
    <title>Advice for Internet Subnetwork Designers</title>
    <author fullname="P. Karn" initials="P." role="editor" surname="Karn"/>
    <author fullname="C. Bormann" initials="C." surname="Bormann"/>
    <author fullname="G. Fairhurst" initials="G." surname="Fairhurst"/>
    <author fullname="D. Grossman" initials="D." surname="Grossman"/>
    <author fullname="R. Ludwig" initials="R." surname="Ludwig"/>
    <author fullname="J. Mahdavi" initials="J." surname="Mahdavi"/>
    <author fullname="G. Montenegro" initials="G." surname="Montenegro"/>
    <author fullname="J. Touch" initials="J." surname="Touch"/>
    <author fullname="L. Wood" initials="L." surname="Wood"/>
    <date month="July" year="2004"/>
    <abstract>
      <t>This document provides advice to the designers of digital communication equipment, link-layer protocols, and packet-switched local networks (collectively referred to as subnetworks), who wish to support the Internet protocols but may be unfamiliar with the Internet architecture and the implications of their design choices on the performance and efficiency of the Internet. 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="89"/>
  <seriesInfo name="RFC" value="3819"/>
  <seriesInfo name="DOI" value="10.17487/RFC3819"/>
</reference>

<reference anchor="RFC2488">
  <front>
    <title>Enhancing TCP Over Satellite Channels using Standard Mechanisms</title>
    <author fullname="M. Allman" initials="M." surname="Allman"/>
    <author fullname="D. Glover" initials="D." surname="Glover"/>
    <author fullname="L. Sanchez" initials="L." surname="Sanchez"/>
    <date month="January" year="1999"/>
    <abstract>
      <t>The Transmission Control Protocol (TCP) provides reliable delivery of data across any network path, including network paths containing satellite channels. While TCP works over satellite channels there are several IETF standardized mechanisms that enable TCP to more effectively utilize the available capacity of the network path. This document outlines some of these TCP mitigations. 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="28"/>
  <seriesInfo name="RFC" value="2488"/>
  <seriesInfo name="DOI" value="10.17487/RFC2488"/>
</reference>

<reference anchor="RFC3155">
  <front>
    <title>End-to-end Performance Implications of Links with Errors</title>
    <author fullname="S. Dawkins" initials="S." surname="Dawkins"/>
    <author fullname="G. Montenegro" initials="G." surname="Montenegro"/>
    <author fullname="M. Kojo" initials="M." surname="Kojo"/>
    <author fullname="V. Magret" initials="V." surname="Magret"/>
    <author fullname="N. Vaidya" initials="N." surname="Vaidya"/>
    <date month="August" year="2001"/>
    <abstract>
      <t>This document discusses the specific TCP mechanisms that are problematic in environments with high uncorrected error rates, and discusses what can be done to mitigate the problems without introducing intermediate devices into the connection. 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="50"/>
  <seriesInfo name="RFC" value="3155"/>
  <seriesInfo name="DOI" value="10.17487/RFC3155"/>
</reference>

<reference anchor="RFC4653">
  <front>
    <title>Improving the Robustness of TCP to Non-Congestion Events</title>
    <author fullname="S. Bhandarkar" initials="S." surname="Bhandarkar"/>
    <author fullname="A. L. N. Reddy" initials="A. L. N." surname="Reddy"/>
    <author fullname="M. Allman" initials="M." surname="Allman"/>
    <author fullname="E. Blanton" initials="E." surname="Blanton"/>
    <date month="August" year="2006"/>
    <abstract>
      <t>This document specifies Non-Congestion Robustness (NCR) for TCP. In the absence of explicit congestion notification from the network, TCP uses loss as an indication of congestion. One of the ways TCP detects loss is using the arrival of three duplicate acknowledgments. However, this heuristic is not always correct, notably in the case when network paths reorder segments (for whatever reason), resulting in degraded performance. TCP-NCR is designed to mitigate this degraded performance by increasing the number of duplicate acknowledgments required to trigger loss recovery, based on the current state of the connection, in an effort to better disambiguate true segment loss from segment reordering. This document specifies the changes to TCP, as well as the costs and benefits of these modifications. This memo defines an Experimental Protocol for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4653"/>
  <seriesInfo name="DOI" value="10.17487/RFC4653"/>
</reference>

<reference anchor="RFC3150">
  <front>
    <title>End-to-end Performance Implications of Slow Links</title>
    <author fullname="S. Dawkins" initials="S." surname="Dawkins"/>
    <author fullname="G. Montenegro" initials="G." surname="Montenegro"/>
    <author fullname="M. Kojo" initials="M." surname="Kojo"/>
    <author fullname="V. Magret" initials="V." surname="Magret"/>
    <date month="July" year="2001"/>
    <abstract>
      <t>This document makes performance-related recommendations for users of network paths that traverse "very low bit-rate" links. 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="48"/>
  <seriesInfo name="RFC" value="3150"/>
  <seriesInfo name="DOI" value="10.17487/RFC3150"/>
</reference>

<reference anchor="RFC3714">
  <front>
    <title>IAB Concerns Regarding Congestion Control for Voice Traffic in the Internet</title>
    <author fullname="S. Floyd" initials="S." role="editor" surname="Floyd"/>
    <author fullname="J. Kempf" initials="J." role="editor" surname="Kempf"/>
    <date month="March" year="2004"/>
    <abstract>
      <t>This document discusses IAB concerns about effective end-to-end congestion control for best-effort voice traffic in the Internet. These concerns have to do with fairness, user quality, and with the dangers of congestion collapse. The concerns are particularly relevant in light of the absence of a widespread Quality of Service (QoS) deployment in the Internet, and the likelihood that this situation will not change much in the near term. This document is not making any recommendations about deployment paths for Voice over Internet Protocol (VoIP) in terms of QoS support, and is not claiming that best-effort service can be relied upon to give acceptable performance for VoIP. We are merely observing that voice traffic is occasionally deployed as best-effort traffic over some links in the Internet, that we expect this occasional deployment to continue, and that we have concerns about the lack of effective end-to-end congestion control for this best-effort voice traffic. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3714"/>
  <seriesInfo name="DOI" value="10.17487/RFC3714"/>
</reference>

<reference anchor="RFC2988">
  <front>
    <title>Computing TCP's Retransmission Timer</title>
    <author fullname="V. Paxson" initials="V." surname="Paxson"/>
    <author fullname="M. Allman" initials="M." surname="Allman"/>
    <date month="November" year="2000"/>
    <abstract>
      <t>This document defines the standard algorithm that Transmission Control Protocol (TCP) senders are required to use to compute and manage their retransmission timer. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2988"/>
  <seriesInfo name="DOI" value="10.17487/RFC2988"/>
</reference>

<reference anchor="RFC5166">
  <front>
    <title>Metrics for the Evaluation of Congestion Control Mechanisms</title>
    <author fullname="S. Floyd" initials="S." role="editor" surname="Floyd"/>
    <date month="March" year="2008"/>
    <abstract>
      <t>This document discusses the metrics to be considered in an evaluation of new or modified congestion control mechanisms for the Internet. These include metrics for the evaluation of new transport protocols, of proposed modifications to TCP, of application-level congestion control, and of Active Queue Management (AQM) mechanisms in the router. This document is the first in a series of documents aimed at improving the models that we use in the evaluation of transport protocols.</t>
      <t>This document is a product of the Transport Modeling Research Group (TMRG), and has received detailed feedback from many members of the Research Group (RG). As the document tries to make clear, there is not necessarily a consensus within the research community (or the IETF community, the vendor community, the operations community, or any other community) about the metrics that congestion control mechanisms should be designed to optimize, in terms of trade-offs between throughput and delay, fairness between competing flows, and the like. However, we believe that there is a clear consensus that congestion control mechanisms should be evaluated in terms of trade-offs between a range of metrics, rather than in terms of optimizing for a single metric. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5166"/>
  <seriesInfo name="DOI" value="10.17487/RFC5166"/>
</reference>




    </references>


<?line 504?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>Sally Floyd and Mark Allman were the authors of this document's predecessor,
RFC5033, which served the community well for over a decade.</t>

<t>Thanks to Richard Scheffenegger for helping to get this revision process started.</t>

<t>Discussions with Lars Eggert and Aaron Falk seeded the original RFC5033.
Bob Briscoe, Gorry Fairhurst, Doug Leith, Jitendra Padhye,
Colin Perkins, Pekka Savola, members of TSVWG, and participants at
the TCP Workshop at Microsoft Research all provided feedback and
contributions to that document.  It also drew from <xref target="RFC5166"/>.</t>

<t>These individuals suggested improvements to this document:</t>

<ul spacing="compact">
  <li>    <t>      <contact fullname="Dave Taht" />
</t>
</li>


</ul>

</section>
<section numbered="false" anchor="evolution-of-rfc5033bis"><name>Evolution of RFC5033bis</name>

<section numbered="false" anchor="since-draft-ietf-ccwg-rfc5033bis-00"><name>Since draft-ietf-ccwg-rfc5033bis-00</name>

<t><list style="symbols">
  <t>Added QUIC, other congestion control standards</t>
  <t>Added wireless environments</t>
  <t>Aligned motivation for this work with the CCWG charter</t>
  <t>Refined discussion of QuickStart</t>
</list></t>

</section>
<section numbered="false" anchor="since-draft-scheffenegger-congress-rfc5033bis-00"><name>Since draft-scheffenegger-congress-rfc5033bis-00</name>

<t><list style="symbols">
  <t>Renamed file to reflect WG adpotion</t>
  <t>Updated authorship and acknowledgements.</t>
  <t>Include updated text suggested by Dave Taht</t>
  <t>Added criterion for bufferbloat</t>
  <t>Mentioned Cubic and BBR as motivation</t>
  <t>Include section to track updates between revisions</t>
  <t>Update references</t>
</list></t>

</section>
<section numbered="false" anchor="since-rfc5033"><name>Since RFC5033</name>

<t><list style="symbols">
  <t>converted to Markdown and xml2rfc v3</t>
  <t>various formatting changes</t>
</list></t>

</section>
</section>

    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
        <name>Contributors</name>
    <contact initials="C." surname="Huitema" fullname="Christian Huitema">
      <organization>Private Octopus, Inc.</organization>
      <address>
        <email>huitema@huitema.net</email>
      </address>
    </contact>
    </section>

  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA6VcbXMbN5L+jl+BVaoudoqkJVl+kZLNrSLLjnJx4pWceKuu
rq7AGZCcaDjDHcyI5qby3+/pbgCDoSja2cuHWCRngEajX55+AcbjsWqLtrRn
+uBmZbNitimquf7JrvVFXc2ta4u6oj/bpi71eTmvm6JdLN2BMtNpY+/wGj97
Mfgtr7PKLDFm3phZOy5sOxtn2Xo+bmbZs8OnT6eFG5emxegqwz94cXOmp9lK
ubaxZnmmry7fv1b11NWlxVNnml5Sqlg1Z7ptOtceHx6eHh4rg6fP9Btb2caU
al03t/Om7lZnoOfDG3VrN/gqx2hVa5vKtuNXRI7CLKbK/9eUdQUSN9YptzRN
+7//7GqerKrVqjjT/93W2Ui7ugFNM4e/Nkv643+UMl27qJszpcdK47+iwktv
J/pVd2v5C1n7W4xZVP23dTM3VfEvQxwF0XU9L63+8ccL/tEuTVGe6SW/M1lM
crz1tzl9OcnqJT+CDcCoNi/auhlM/WaiX5uiWXQN+NnP/6bOG5tv/TQk4peq
uLONK9qNrmf6fGqb3NoqJQhb02z+Zpv5xEzzamKySXd7n5qM5KOYdu02Vy4m
+vuuaDFYQtjFoikgV6Ya/Dak7F1T3EEy9M9ZW686cP+qyiYpYQt59W/+3wm2
V6mqbpYY4M6eQViqWfJJ6+++ux6zOEIexq8mmWnytS3LcZFlzXwMYR5nUeDH
mQg8vff99T8OX57x1EFRLn757uriTBtdQfTfX7wbz5rCVnm50Ytivhi7lQXf
8b2+Mw2W2R7w287iKUdknenzi7f65urNz+9u9M8rCG9LSnezcViK09f2rrDr
kb6ry4k+OR5BICf62UivVhP9/GT84oSHy8GeMw1FeDk+fCHkmWZusbxF267c
2ZMneV1MwNUnR4eTo6OTZ0+OTg6hNi8m9O/R4TN+J4oy/zf2//rdu8HumfiV
bN6Nqeatsf0PW+9cTfT1wtqtt66q38Dc9Jet136c6H90Wy/9WDh6Cd/jh9c/
HD4d7MI1dLhe6kvTgO+vYCYyNlVvwJa12TiN3U9N2PldXeSmyuy9vbi6vLx8
QhvyvjGVMzyM03jlJ9uSScHWjPSvkyP90yTl/NHp6dPxy3tMHEfWvS7rTZ5+
9+tE/2AysmoVreh9XZdusCT+hglvF1Zf3pmyY3Ug5bwpll0pn7Bw/R7LmkLK
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
WgAA

-->

</rfc>

