<?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-rfc2629 version 1.6.2 (Ruby 3.0.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-quic-manageability-15" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.3 -->
  <front>
    <title abbrev="QUIC Manageability">Manageability of the QUIC Transport Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-quic-manageability-15"/>
    <author initials="M." surname="Kuehlewind" fullname="Mirja Kuehlewind">
      <organization>Ericsson</organization>
      <address>
        <email>mirja.kuehlewind@ericsson.com</email>
      </address>
    </author>
    <author initials="B." surname="Trammell" fullname="Brian Trammell">
      <organization>Google Switzerland GmbH</organization>
      <address>
        <postal>
          <street>Gustav-Gull-Platz 1</street>
          <city>8004 Zurich</city>
          <country>Switzerland</country>
        </postal>
        <email>ietf@trammell.ch</email>
      </address>
    </author>
    <date year="2022" month="March" day="07"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>This document discusses manageability of the QUIC transport protocol, focusing
on the implications of QUIC's design and wire image on network operations
involving QUIC traffic. It is intended as a "user's manual" for the wire image,
providing guidance for network operators and equipment vendors who rely on the
use of transport-aware network functions.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>QUIC <xref target="QUIC-TRANSPORT"/> is a new transport protocol
that is encapsulated in UDP. QUIC integrates TLS
<xref target="QUIC-TLS"/> to encrypt all payload data and most control
information. QUIC version 1 was designed primarily as a transport for HTTP, with
the resulting protocol being known as HTTP/3 <xref target="QUIC-HTTP"/>.</t>
      <t>This document provides guidance for network operations that manage QUIC
traffic. This includes guidance on how to interpret and utilize information that
is exposed by QUIC to the network, requirements and assumptions of the QUIC
design with respect to network treatment, and a description of how common
network management practices will be impacted by QUIC.</t>
      <t>QUIC is an end-to-end transport protocol. No information in the protocol header,
even that which can be inspected, is mutable by the network. This is
enforced through integrity protection of the wire image <xref target="WIRE-IMAGE"/>.
Encryption of most transport-layer control signaling means that less information
is visible to the network than is the case with TCP.</t>
      <t>Integrity protection can also simplify troubleshooting at the end points as none
of the nodes on the network path can modify transport layer information.
However, it means in-network operations that depend on modification of data
(for examples, see <xref target="RFC9065"/>) are not possible without the cooperation of
a QUIC endpoint. Such cooperation might be possible with the introduction of
a proxy which authenticates as an endpoint. Proxy operations are not in scope
for this document.</t>
      <t>Network management is not a one-size-fits-all endeavour: practices considered
necessary or even mandatory within enterprise networks with certain compliance
requirements, for example, would be impermissible on other networks without
those requirements. This document therefore does not make any specific
recommendations as to which practices should or should not be applied; for each
practice, it describes what is and is not possible with the QUIC transport
protocol as defined.</t>
      <t>QUIC-specific terminology used in this document is defined
in <xref target="QUIC-TRANSPORT"/>.</t>
    </section>
    <section anchor="sec-wire-image">
      <name>Features of the QUIC Wire Image</name>
      <t>This section discusses those aspects of the QUIC transport protocol that
have an impact on the design and operation of devices that forward QUIC packets.
This section is therefore primarily considering the unencrypted part of QUIC's
wire image <xref target="WIRE-IMAGE"/>, which is defined as the information available in the
packet header in each QUIC packet, and the dynamics of that information. Since
QUIC is a versioned protocol, the wire image of the header format can also
change from version to version. However, the field that identifies the QUIC
version in some packets, and the format of the Version Negotiation Packet,
are both inspectable and invariant
<xref target="QUIC-INVARIANTS"/>.</t>
      <t>This document describes version 1 of the QUIC protocol, whose wire image
is fully defined in <xref target="QUIC-TRANSPORT"/> and <xref target="QUIC-TLS"/>. Features of the wire
image described herein may change in future versions of the protocol, except
when specified as an invariant <xref target="QUIC-INVARIANTS"/>,
and cannot be used to identify QUIC as a protocol or
to infer the behavior of future versions of QUIC.</t>
      <section anchor="public-header">
        <name>QUIC Packet Header Structure</name>
        <t>QUIC packets may have either a long header or a short header. The first bit
of the QUIC header is the Header Form bit, and indicates which type of header
is present. The purpose of this bit is invariant across QUIC versions.</t>
        <t>The long header exposes more information. It contains a version number, as well
as source and destination connection IDs for associating packets with a QUIC
connection. The definition and location of these fields in the QUIC long header
are invariant for future versions of QUIC, although future versions of QUIC may
provide additional fields in the long header <xref target="QUIC-INVARIANTS"/>.</t>
        <t>In version 1 of QUIC, the long header is used during connection establishment
to transmit crypto handshake data, perform version negotiation, retry, and
send 0-RTT data.</t>
        <t>Short headers contain only an optional destination connection ID and the spin
bit for RTT measurement. In version 1 of QUIC, they are used after connection
establishment.</t>
        <t>The following information is exposed in QUIC packet headers in all versions of
QUIC:</t>
        <ul spacing="normal">
          <li>version number: the version number is present in the long header, and
identifies the version used for that packet. During Version
Negotiation (see <xref section="17.2.1" sectionFormat="of" target="QUIC-TRANSPORT"/> and <xref target="version"/>), the
version number field has a special value (0x00000000) that identifies the
packet as a Version Negotiation packet. QUIC
version 1 uses version 0x00000001. Operators should expect to observe
packets with other version numbers as a result of various Internet
experiments, future standards, and greasing (<xref target="RFC7801"/>). All deployed
versions are maintained in an IANA registry
(see <xref section="22.2" sectionFormat="of" target="QUIC-TRANSPORT"/>).</li>
          <li>source and destination connection ID: short and long packet headers carry a
destination connection ID, a variable-length field that can be used to
identify the connection associated with a QUIC packet, for load-balancing and
NAT rebinding purposes; see <xref target="sec-loadbalancing"/> and <xref target="rebinding"/>. Long
packet headers additionally carry a source connection ID. The source
connection ID corresponds to the destination connection ID the source would
like to have on packets sent to it, and is only present on long packet
headers. On long header packets, the length of the connection
IDs is also present; on short header packets, the length of the destination
connection ID is implicit.</li>
        </ul>
        <t>In version 1 of QUIC, the following additional information is exposed:</t>
        <ul spacing="normal">
          <li>"fixed bit": The second-most-significant bit of the first octet of most QUIC
packets of the current version is set to 1, enabling endpoints to demultiplex
with other UDP-encapsulated protocols. Even though this bit is fixed in the
version 1 specification, endpoints might use an extension that varies the bit.
Therefore, observers cannot reliably use it as an identifier for QUIC.</li>
          <li>latency spin bit: The third-most-significant bit of the first octet in the
short packet header for version 1. The spin bit is set by endpoints such that
tracking edge transitions can be used to passively observe end-to-end RTT. See
<xref target="spin-usage"/> for further details.</li>
          <li>header type: The long header has a 2 bit packet type field following the
Header Form and fixed bits. Header types correspond to stages of the
handshake; see <xref section="17.2" sectionFormat="of" target="QUIC-TRANSPORT"/> for details.</li>
          <li>length: The length of the remaining QUIC packet after the length field,
present on long headers. This field is used to implement coalesced packets
during the handshake (see <xref target="coalesced"/>).</li>
          <li>token: Initial packets may contain a token, a variable-length opaque value
optionally sent from client to server, used for validating the client's
address. Retry packets also contain a token, which can be used by the client
in an Initial packet on a subsequent connection attempt. The length of the
token is explicit in both cases.</li>
        </ul>
        <t>Retry (<xref section="17.2.5" sectionFormat="of" target="QUIC-TRANSPORT"/>) and Version Negotiation (<xref section="17.2.1" sectionFormat="of" target="QUIC-TRANSPORT"/>) packets are not encrypted or obfuscated in any
way. For other kinds of packets, version 1 of QUIC cryptographically obfuscates
other information in the packet headers:</t>
        <ul spacing="normal">
          <li>packet number: All packets except Version Negotiation and
Retry packets have an associated packet number; however, this packet number
is encrypted, and therefore not of use to on-path observers. The offset of the
packet number can be decoded in long headers, while it
is implicit (depending on destination connection ID length) in short headers.
The length of the packet number is cryptographically obfuscated.</li>
          <li>key phase: The Key Phase bit, present in short headers, specifies the keys
used to encrypt the packet to support key rotation. The Key Phase bit is
cryptographically obfuscated.</li>
        </ul>
      </section>
      <section anchor="coalesced">
        <name>Coalesced Packets</name>
        <t>Multiple QUIC packets may be coalesced into a single UDP datagram,
with a datagram
carrying one or more long header packets followed by zero or one short header
packets. When packets are coalesced, the Length fields in the long headers are
used to separate QUIC packets; see <xref section="12.2" sectionFormat="of" target="QUIC-TRANSPORT"/>.
The Length field is variable length, and its position in the header is
also variable depending on the length of the source and destination connection
ID; see <xref section="17.2" sectionFormat="of" target="QUIC-TRANSPORT"/>.</t>
      </section>
      <section anchor="use-of-port-numbers">
        <name>Use of Port Numbers</name>
        <t>Applications that have a mapping for TCP as well as QUIC are expected to
use the same port number for both services. However, as for all other IETF
transports <xref target="RFC7605"/>, there is no guarantee that a specific application
will use a given registered port, or that a given port carries traffic belonging
to the respective registered service, especially when application layer
information is encrypted. For example, <xref target="QUIC-HTTP"/> specifies the use of the
HTTP Alternative Services mechanism <xref target="RFC7838"/> for discovery of HTTP/3
services on other ports.</t>
        <t>Further, as QUIC has a connection ID, it is also possible to maintain multiple
QUIC connections over one 5-tuple (protocol, source and destination IP address,
and source and destination port). However, if the connection ID is zero-length,
all packets of the 5-tuple likely belong to the same QUIC connection.</t>
      </section>
      <section anchor="handshake">
        <name>The QUIC Handshake</name>
        <t>New QUIC connections are established using a handshake, which is distinguishable
on the wire and contains some information that can be passively observed.</t>
        <t>To illustrate the information visible in the QUIC wire image during the
handshake, we first show the general communication pattern visible in the UDP
datagrams containing the QUIC handshake, then examine each of the datagrams in
detail.</t>
        <t>The QUIC handshake can normally be recognized on the wire through four flights
of datagrams labelled "Client Initial", "Server Initial", "Client Completion",
and "Server Completion", as illustrated in <xref target="fig-handshake"/>.</t>
        <t>A handshake starts with the client sending one or more datagrams containing
Initial packets, detailed in <xref target="fig-client-initial"/>, which elicits the
Server Initial response detailed in <xref target="fig-server-initial"/> typically containing
three types of packets: Initial packet(s) with the beginning of the server's
side of the TLS handshake, Handshake packet(s) with the rest of the server's
portion of the TLS handshake, and 1-RTT packet(s), if present.</t>
        <figure anchor="fig-handshake">
          <name>General communication pattern visible in the QUIC handshake</name>
          <artwork><![CDATA[
Client                                    Server
  |                                          |
  +----Client Initial----------------------->|
  +----(zero or more 0-RTT)----------------->|
  |                                          |
  |<-----------------------Server Initial----+
  |<--------(1-RTT encrypted data starts)----+
  |                                          |
  +----Client Completion-------------------->|
  +----(1-RTT encrypted data starts)-------->|
  |                                          |
  |<--------------------Server Completion----+
  |                                          |
]]></artwork>
        </figure>
        <t>As shown here, the client can send 0-RTT data as soon as it has sent its Client
Hello, and the server can send 1-RTT data as soon as it has sent its Server
Hello. The Client Completion flight contains at least one Handshake packet and
could also include an Initial packet. QUIC packets in separate contexts during
the handshake can be coalesced (see <xref target="coalesced"/>) in order to reduce the
number of UDP datagrams sent during the handshake.</t>
        <t>Handshake packets can arrive out-of-order without impacting the handshake as
long as the reordering was not accompanied by extensive delays that trigger a
spurious Probe Timeout ({Section 6.2 of RFC9002}).
If QUIC packets get lost or reordered, packets belonging
to the same flight might not be observed in close time succession, though
the sequence of the flights will not change, because one flight depends
upon the peer's previous flight.</t>
        <t>Datagrams that contain an Initial packet (Client Initial, Server
Initial, and some Client Completion) contain at least 1200 octets of UDP
payload. This protects against amplification attacks and verifies that the
network path meets the requirements for the minimum QUIC IP packet size;
see <xref section="14" sectionFormat="of" target="QUIC-TRANSPORT"/>. This is accomplished by either adding
PADDING frames within the Initial packet, coalescing other packets with the
Initial packet, or leaving unused payload in the UDP packet after the Initial
packet. A network path needs to be able to forward at least this size of
packet for QUIC to be used.</t>
        <t>The content of Initial packets is encrypted using Initial Secrets,
which are derived from a per-version constant and the client's
destination connection ID. That content is therefore observable by
any on-path device that knows the per-version constant and is
considered visible in this illustration.  The content of QUIC
Handshake packets is encrypted using keys established during the
initial handshake exchange, and is therefore not visible.</t>
        <t>Initial, Handshake, and 1-RTT packets belong to different cryptographic and
transport contexts. The Client Completion (<xref target="fig-init-complete"/>) and the
Server Completion (<xref target="fig-hs-complete"/>) flights conclude the Initial
and Handshake contexts, by sending final acknowledgments and
CRYPTO frames.</t>
        <figure anchor="fig-client-initial">
          <name>Example Client Initial datagram without 0-RTT</name>
          <artwork><![CDATA[
+----------------------------------------------------------+
| UDP header (source and destination UDP ports)            |
+----------------------------------------------------------+
| QUIC long header (type = Initial, Version, DCID, SCID) (Length)
+----------------------------------------------------------+  |
| QUIC CRYPTO frame header                                 |  |
+----------------------------------------------------------+  |
| | TLS Client Hello (incl. TLS SNI)                    |  |  |
+----------------------------------------------------------+  |
| QUIC PADDING frames                                      |  |
+----------------------------------------------------------+<-+
]]></artwork>
        </figure>
        <t>A Client Initial packet exposes the version, source and destination
connection IDs without encryption. The payload of the Initial
packet is obfuscated using the Initial secret.  The complete TLS
Client Hello, including any TLS Server Name Indication (SNI)
present, is sent in one or more CRYPTO frames across one or more
QUIC Initial packets.</t>
        <figure anchor="fig-server-initial">
          <name>Coalesced Server Initial datagram pattern</name>
          <artwork><![CDATA[
+------------------------------------------------------------+
| UDP header (source and destination UDP ports)              |
+------------------------------------------------------------+
| QUIC long header (type = Initial, Version, DCID, SCID)   (Length)
+------------------------------------------------------------+  |
| QUIC CRYPTO frame header                                   |  |
+------------------------------------------------------------+  |
| TLS Server Hello                                           |  |
+------------------------------------------------------------+  |
| QUIC ACK frame (acknowledging client hello)                |  |
+------------------------------------------------------------+<-+
| QUIC long header (type = Handshake, Version, DCID, SCID) (Length)
+------------------------------------------------------------+  |
| encrypted payload (presumably CRYPTO frames)               |  |
+------------------------------------------------------------+<-+
| QUIC short header                                          |
+------------------------------------------------------------+
| 1-RTT encrypted payload                                    |
+------------------------------------------------------------+
]]></artwork>
        </figure>
        <t>The Server Initial datagram also exposes version number, source and destination
connection IDs in the clear; the payload of the Initial packet(s) is
obfuscated using the Initial secret.</t>
        <figure anchor="fig-init-complete">
          <name>Coalesced Client Completion datagram pattern</name>
          <artwork><![CDATA[
+------------------------------------------------------------+
| UDP header (source and destination UDP ports)              |
+------------------------------------------------------------+
| QUIC long header (type = Initial, Version, DCID, SCID)   (Length)
+------------------------------------------------------------+  |
| QUIC ACK frame (acknowledging Server Initial)              |  |
+------------------------------------------------------------+<-+
| QUIC long header (type = Handshake, Version, DCID, SCID) (Length)
+------------------------------------------------------------+  |
| encrypted payload (presumably CRYPTO/ACK frames)           |  |
+------------------------------------------------------------+<-+
| QUIC short header                                          |
+------------------------------------------------------------+
| 1-RTT encrypted payload                                    |
+------------------------------------------------------------+
]]></artwork>
        </figure>
        <t>The Client Completion flight does not expose any additional information;
however, as the destination connection ID is server-selected, it usually
is not the same ID that is sent in the Client Initial. Client Completion
flights contain 1-RTT packets which indicate the handshake has completed
(see <xref target="sec-confirm"/>) on the client, and for three-way handshake RTT
estimation as in <xref target="sec-rtt"/>.</t>
        <figure anchor="fig-hs-complete">
          <name>Coalesced Server Completion datagram pattern</name>
          <artwork><![CDATA[
+------------------------------------------------------------+
| UDP header (source and destination UDP ports)              |
+------------------------------------------------------------+
| QUIC long header (type = Handshake, Version, DCID, SCID) (Length)
+------------------------------------------------------------+  |
| encrypted payload (presumably ACK frame)                   |  |
+------------------------------------------------------------+<-+
| QUIC short header                                          |
+------------------------------------------------------------+
| 1-RTT encrypted payload                                    |
+------------------------------------------------------------+
]]></artwork>
        </figure>
        <t>Similar to Client Completion, Server Completion also exposes no additional
information; observing it serves only to determine that the handshake has
completed.</t>
        <t>When the client uses 0-RTT data, the Client Initial
flight can also include one or more 0-RTT packets, as shown in
<xref target="fig-client-initial-0rtt"/>.</t>
        <figure anchor="fig-client-initial-0rtt">
          <name>Coalesced 0-RTT Client Initial datagram</name>
          <artwork><![CDATA[
+----------------------------------------------------------+
| UDP header (source and destination UDP ports)            |
+----------------------------------------------------------+
| QUIC long header (type = Initial, Version, DCID, SCID) (Length)
+----------------------------------------------------------+  |
| QUIC CRYPTO frame header                                 |  |
+----------------------------------------------------------+  |
| TLS Client Hello (incl. TLS SNI)                         |  |
+----------------------------------------------------------+<-+
| QUIC long header (type = 0-RTT, Version, DCID, SCID)   (Length)
+----------------------------------------------------------+  |
| 0-RTT encrypted payload                                  |  |
+----------------------------------------------------------+<-+
]]></artwork>
        </figure>
        <t>When a 0-RTT packet is coalesced with an Initial packet, the datagram
will be padded to 1200 byes. Additional datagrams containing only 0-RTT
packets with long headers can be sent after the client Initial packet(s),
containing more 0-RTT data. The amount of 0-RTT protected data that
can be sent in the first flight is limited by the initial congestion
window, typically to around 10 packets (see <xref section="7.2" sectionFormat="of" target="QUIC-RECOVERY"/>).</t>
      </section>
      <section anchor="wire-integrity">
        <name>Integrity Protection of the Wire Image</name>
        <t>As soon as the cryptographic context is established, all information in the QUIC
header, including exposed information, is integrity protected. Further,
information that was exposed in packets sent before the cryptographic context
was established is validated during the cryptographic handshake. Therefore,
devices on path cannot alter any information or bits in QUIC packets. Such
alterations would cause the integrity check to fail, which results in the
receiver discarding the packet. Some parts of Initial packets could be altered
by removing and re-applying the authenticated encryption without immediate
discard at the receiver. However, the cryptographic handshake validates most
fields and any modifications in those fields will result in connection
establishment failing later.</t>
      </section>
      <section anchor="rebinding">
        <name>Connection ID and Rebinding</name>
        <t>The connection ID in the QUIC packet headers allows association of QUIC
packets using information independent of the 5-tuple. This allows
rebinding of a connection after one of the endpoints - usually the
client - has experienced an address change. Further it can be used by
in-network devices to ensure that related 5-tuple flows are appropriately
balanced together.</t>
        <t>Client and server each choose a connection ID during the handshake; for
example, a server might request that a client use a connection ID, whereas the
client might choose a zero-length value. Connection IDs for either endpoint may
change during the lifetime of a connection, with the new connection ID being
supplied via encrypted frames (see <xref section="5.1" sectionFormat="of" target="QUIC-TRANSPORT"/>).
Therefore, observing a new connection ID does not necessarily indicate a new
connection.</t>
        <t><xref target="QUIC_LB"/> specifies algorithms for
encoding the server mapping in a connection ID in order to share this
information with selected on-path devices such as load balancers. Server
mappings should only be exposed to selected entities. Uncontrolled exposure
would allow linkage of multiple IP addresses to the same host if the server
also supports migration that opens an attack vector on specific servers or
pools. The best way to obscure an encoding is to appear random to any other
observers, which is most rigorously achieved with encryption. As a result,
any attempt to infer information from specific parts of a connection ID is
unlikely to be useful.</t>
      </section>
      <section anchor="packetnumber">
        <name>Packet Numbers</name>
        <t>The Packet Number field is always present in the QUIC packet header in version
1; however, it is always encrypted. The encryption key for packet number
protection on Initial packets -- which are sent before cryptographic context
establishment -- is specific to the QUIC version, while packet number protection
on subsequent packets uses secrets derived from the end-to-end cryptographic
context. Packet numbers are therefore not part of the wire image that is visible
to on-path observers.</t>
      </section>
      <section anchor="version">
        <name>Version Negotiation and Greasing</name>
        <t>Version Negotiation packets are used by the server to indicate that a requested
version from the client is not supported (see <xref section="6" sectionFormat="of" target="QUIC-TRANSPORT"/>.
Version Negotiation packets are not intrinsically protected, but future QUIC
versions could use later encrypted messages to verify that they were authentic.
Therefore, any modification of this list will be detected and may cause the
endpoints to terminate the connection attempt.</t>
        <t>Also note that the list of versions in the Version Negotiation packet may
contain reserved versions. This mechanism is used to avoid ossification in the
implementation on the selection mechanism. Further, a client may send an Initial
packet with a reserved version number to trigger version negotiation. In
the Version Negotiation packet, the connection IDs of the client's
Initial packet
are reflected to provide a proof of return-routability. Therefore, changing this
information will also cause the connection to fail.</t>
        <t>QUIC is expected to evolve rapidly, so new versions, both experimental and IETF
standard versions, will be deployed on the Internet more often than with
traditional Internet- and transport-layer protocols. Using a particular version
number to recognize valid QUIC traffic is likely to persistently miss a fraction
of QUIC flows and completely fail in the near future, and is therefore
not recommended. In addition, due to the speed of evolution of the protocol,
devices that attempt to distinguish QUIC traffic from non-QUIC traffic for
purposes of network admission control should not rely on the version number
field. Instead it is recommended to admit all QUIC traffic regardless
of version in order to support continious version-based evolution and
avoid unnecessary deployment delays.</t>
      </section>
    </section>
    <section anchor="network-visible-information-about-quic-flows">
      <name>Network-Visible Information about QUIC Flows</name>
      <t>This section addresses the different kinds of observations and inferences that
can be made about QUIC flows by a passive observer in the network based on the
wire image in <xref target="sec-wire-image"/>. Here we assume a bidirectional observer (one
that can see packets in both directions in the sequence in which they are
carried on the wire) unless noted, but typically without access to any keying
information.</t>
      <section anchor="sec-identifying">
        <name>Identifying QUIC Traffic</name>
        <t>The QUIC wire image is not specifically designed to be distinguishable from
other UDP traffic by a passive observer in the network.</t>
        <t>At the time of writing, two application bindings for QUIC have been published
or adopted by the IETF: HTTP/3 <xref target="QUIC-HTTP"/> and DNS over Dedicated QUIC
Connections <xref target="I-D.ietf-dprive-dnsoquic"/>. These are both known at the time
of writing to have active Internet deployments, so an assumption that all
QUIC traffic is HTTP/3 is not valid. HTTP/3 uses UDP port 443 by
convention but various methods can be used to specify alternate port numbers.
Simple assumptions about whether a given flow is using QUIC based upon a UDP
port number may therefore not hold; see also <xref section="5" sectionFormat="of" target="RFC7605"/>.</t>
        <t>While the second-most-significant bit (0x40) of the first octet is set to 1 in
most QUIC packets of the current version (see <xref target="public-header"/> and <xref section="17" sectionFormat="of" target="QUIC-TRANSPORT"/>), this method of recognizing QUIC traffic is not reliable.
First, it only provides one bit of information and is prone to collision with
UDP-based protocols other than those considered in <xref target="RFC7983"/>. Second, this
feature of the wire image is not invariant <xref target="QUIC-INVARIANTS"/> and may change in
future versions of the protocol, or even be negotiated during the handshake via
the use of an extension <xref target="QUIC-GREASE"/>.</t>
        <t>Even though transport parameters transmitted in the client's Initial packet are
observable by the network, they cannot be modified by the network without
causing connection failure. Further, the reply from the server cannot be
observed, so observers on the network cannot know which parameters are actually
in use.</t>
        <section anchor="identifying-negotiated-version">
          <name>Identifying Negotiated Version</name>
          <t>An in-network observer assuming that a set of packets belongs to a QUIC flow
might infer the version number in use by observing the handshake: for QUIC
version 1, if the version number in the Initial packet from a client is the
same as the version number in the Initial packet of the server response, that
version has been accepted by both endpoints to be used for the rest of the
connection.</t>
          <t>The negotiated version cannot be identified for flows for which a handshake is
not observed, such as in the case of connection migration; however, it might be
possible to associate a flow with a flow for which a version has been
identified; see <xref target="sec-flow-association"/>.</t>
        </section>
        <section anchor="sec-garbage">
          <name>First Packet Identification for Garbage Rejection</name>
          <t>A related question is whether the first packet of a given flow on a port known
to be associated with QUIC is a valid QUIC packet.  This determination supports
in-network filtering of garbage UDP packets (reflection attacks, random
backscatter, etc.). While heuristics based on the first byte of the packet
(packet type) could be used to separate valid from invalid first packet types,
the deployment of such heuristics is not recommended, as bits in the first byte
may have different meanings in future versions of the protocol.</t>
        </section>
      </section>
      <section anchor="sec-confirm">
        <name>Connection Confirmation</name>
        <t>This document focuses on QUIC version 1, and this Connection Confirmation
section applies only to packets belonging to QUIC version 1 flows; for purposes
of on-path observation, it assumes that these packets have been identified as
such through the observation of a version number exchange as described above.</t>
        <t>Connection establishment uses Initial and Handshake packets containing a
TLS handshake, and Retry packets that do not contain parts of the handshake.
Connection establishment can therefore be detected using heuristics similar to
those used to detect TLS over TCP. A client initiating a connection may
also send data in 0-RTT packets directly after the Initial
packet containing the TLS Client Hello. Since packets may be reordered or lost
in the network, 0-RTT packets could be seen before the Initial
packet.</t>
        <t>Note that in this version of QUIC, clients send Initial packets before servers
do, servers send Handshake packets before clients do, and only clients send
Initial packets with tokens. Therefore, an endpoint can be identified as a
client or server by an on-path observer. An attempted connection after Retry can
be detected by correlating the contents of the Retry packet with the Token and
the Destination Connection ID fields of the new Initial packet.</t>
      </section>
      <section anchor="distinguishing-acknowledgment-traffic">
        <name>Distinguishing Acknowledgment Traffic</name>
        <t>Some deployed in-network functions distinguish packets that carry only
acknowledgment (ACK-only) information
from packets carrying upper-layer data in order to attempt to enhance
performance, for example by queueing ACKs differently or manipulating ACK
signaling <xref target="RFC3449"/>. Distinguishing ACK packets is possible in TCP,
but is not supported by
QUIC, since acknowledgment signaling is carried inside QUIC's encrypted payload,
and ACK manipulation is impossible. Specifically, heuristics attempting to
distinguish ACK-only packets from payload-carrying packets based on packet size
are likely to fail, and are not recommended to use as a way to construe
internals of QUIC's operation as those mechanisms can change, e.g., due to the
use of extensions.</t>
      </section>
      <section anchor="sec-server">
        <name>Server Name Indication (SNI)</name>
        <t>The client's TLS ClientHello may contain a Server Name Indication (SNI)
<xref target="RFC6066"/> extension, by which the client reveals the name of the server it
intends to connect to, in order to allow the server to present a certificate
based on that name. It may also contain an Application-Layer Protocol
Negotiation (ALPN) <xref target="RFC7301"/> extension, by which the client exposes the names
of application-layer protocols it supports; an observer can deduce that one of
those protocols will be used if the connection continues.</t>
        <t>Work is currently underway in the TLS working group to encrypt the contents of
the ClientHello in TLS 1.3 <xref target="TLS-ECH"/>. This would make
SNI-based application identification impossible by on-path observation for QUIC
and other protocols that use TLS.</t>
        <section anchor="extracting-server-name-indication-sni-information">
          <name>Extracting Server Name Indication (SNI) Information</name>
          <t>If the ClientHello is not encrypted, SNI can be derived from the client's
Initial packet(s) by calculating the Initial secret to decrypt the packet
payload and parsing the QUIC CRYPTO frame(s) containing the TLS ClientHello.</t>
          <t>As both the derivation of the Initial secret and the structure of the Initial
packet itself are version-specific, the first step is always to parse the
version number (the second through fifth bytes of the long header). Note that
only long header packets carry the version number, so it is necessary to also
check if the first bit of the QUIC packet is set to 1, indicating a long header.</t>
          <t>Note that proprietary QUIC versions, that have been deployed before
standardization, might not set the first bit in a QUIC long header packet to
1. However, it is expected that these versions will
gradually disappear over time and therefore do not require any special
consideration or treatment.</t>
          <t>When the version has been identified as QUIC version 1, the packet type needs to
be verified as an Initial packet by checking that the third and fourth bits of
the header are both set to 0. Then the Destination Connection ID needs to be
extracted from the packet. The Initial secret is calculated using the
version-specific Initial salt, as described in <xref section="5.2" sectionFormat="of" target="QUIC-TLS"/>.
The length of the connection ID is indicated in the 6th byte of the header
followed by the connection ID itself.</t>
          <t>Note that subsequent Initial packets might contain a Destination Connection ID
other than the one used to generate the Initial secret. Therefore, attempts to
decrypt these packets using the procedure above might fail unless the Initial
secret is retained by the observer.</t>
          <t>To determine the end of the packet header and find the start of the payload,
the packet number length, the source connection ID length, and the token length
need to be extracted. The packet number length is defined by the seventh and
eight bits of the header as described in <xref section="17.2" sectionFormat="of" target="QUIC-TRANSPORT"/>,
but is obfuscated as described in <xref section="5.4" sectionFormat="of" target="QUIC-TLS"/>. The source
connection ID length is specified in the byte after the destination
connection ID. The token length, which follows the source connection ID, is
a variable-length integer as specified in <xref section="16" sectionFormat="of" target="QUIC-TRANSPORT"/>.</t>
          <t>After decryption, the client's Initial packet(s) can be parsed to detect the
CRYPTO frame(s) that contains the TLS ClientHello, which then can be parsed
similarly to TLS over TCP connections. Note that there can be multiple CRYPTO
frames spread out over one or more Initial packets, and they might not be in
order, so reassembling the CRYPTO stream by parsing offsets and lengths is
required. Further, the client's Initial packet(s) may contain other frames,
so the first bytes of each frame need to be checked to identify the frame
type and determine whether the frame can be skipped over. Note that the
length of the frames is dependent on the frame type; see
<xref section="18" sectionFormat="of" target="QUIC-TRANSPORT"/>.
E.g., PADDING frames, each consisting of a single zero byte, may occur before,
after, or between CRYPTO frames. However, extensions might define additional
frame types. If an unknown frame type is encountered, it is impossible to
know the length of that frame which prevents skipping over it, and therefore
parsing fails.</t>
        </section>
      </section>
      <section anchor="sec-flow-association">
        <name>Flow Association</name>
        <t>The QUIC connection ID (see <xref target="rebinding"/>) is designed to allow a coordinating
on-path device, such as a load-balancer, to associate two flows when one of the
endpoints changes address.  This change can be due to NAT rebinding or address
migration.</t>
        <t>The connection ID must change upon intentional address change by an endpoint,
and connection ID negotiation is encrypted, so it is not possible for a
passive observer to link intended changes of address using the connection ID.</t>
        <t>When one endpoint's address unintentionally changes, as is the case with NAT
rebinding, an on-path observer may be able to use the connection ID to
associate the flow on the new address with the flow on the old address.</t>
        <t>A network function that attempts to use the connection ID to associate flows
must be robust to the failure of this technique. Since the connection ID may
change multiple times during the lifetime of a connection, packets with the
same 5-tuple but different connection IDs might or might not belong to
the same connection. Likewise, packets with the same connection ID but
different 5-tuples might not belong to the same connection, either.</t>
        <t>Connection IDs should be treated as opaque; see <xref target="sec-loadbalancing"/>
for caveats regarding connection ID selection at servers.</t>
      </section>
      <section anchor="sec-teardown">
        <name>Flow Teardown</name>
        <t>QUIC does not expose the end of a connection; the only indication to on-path
devices that a flow has ended is that packets are no longer observed. Stateful
devices on path such as NATs and firewalls must therefore use idle timeouts to
determine when to drop state for QUIC flows; see <xref target="sec-stateful"/>.</t>
      </section>
      <section anchor="sec-symmetry">
        <name>Flow Symmetry Measurement</name>
        <t>QUIC explicitly exposes which side of a connection is a client and which side is
a server during the handshake. In addition, the symmetry of a flow (whether
primarily client-to-server, primarily server-to-client, or roughly
bidirectional, as input to basic traffic classification techniques) can be
inferred through the measurement of data rate in each direction.
Note that QUIC packets containing only control frames (such as
ACK-only packets) may be padded. Padding, though optional,
may conceal connection roles or flow symmetry information.</t>
      </section>
      <section anchor="sec-rtt">
        <name>Round-Trip Time (RTT) Measurement</name>
        <t>The round-trip time (RTT) of QUIC flows can be inferred
by observation once per flow,
during the handshake, as in passive TCP measurement; this requires parsing of
the QUIC packet header and recognition of the handshake, as illustrated in
<xref target="handshake"/>. It can also be inferred during the flow's lifetime, if the
endpoints use the spin bit facility described below and in <xref section="17.3.1" sectionFormat="of" target="QUIC-TRANSPORT"/>.</t>
        <section anchor="measuring-initial-rtt">
          <name>Measuring Initial RTT</name>
          <t>In the common case, the delay between the client's Initial packet (containing
the TLS ClientHello) and the server's Initial packet (containing the TLS
ServerHello) represents the RTT component on the path between the observer and
the server. The delay between the server's first Handshake packet and the
Handshake packet sent by the client represents the RTT component on the path
between the observer and the client. While the client may send 0-RTT packets
after the Initial packet during connection re-establishment, these can be
ignored for RTT measurement purposes.</t>
          <t>Handshake RTT can be measured by adding the client-to-observer and
observer-to-server RTT components together. This measurement necessarily
includes all transport- and application-layer delay at both endpoints.</t>
        </section>
        <section anchor="spin-usage">
          <name>Using the Spin Bit for Passive RTT Measurement</name>
          <t>The spin bit provides a version-specific method to measure per-flow RTT from
observation points on the network path throughout the duration of a connection.
See <xref section="17.4" sectionFormat="of" target="QUIC-TRANSPORT"/> for the definition of the spin bit in
Version 1 of QUIC. Endpoint participation in spin bit signaling is optional.
That is, while its location is fixed in this version of QUIC, an endpoint can
unilaterally choose to not support "spinning" the bit.</t>
          <t>Use of the spin bit for RTT measurement by devices on path is only possible when
both endpoints enable it. Some endpoints may disable use of the spin bit by
default, others only in specific deployment scenarios, e.g., for servers and
clients where the RTT would reveal the presence of a VPN or proxy. To avoid
making these connections identifiable based on the usage of the spin bit, all
endpoints randomly disable "spinning" for at least one eighth of connections,
even if otherwise enabled by default. An endpoint not participating in spin bit
signaling for a given connection can use a fixed spin value for the duration of
the connection, or can set the bit randomly on each packet sent.</t>
          <t>When in use, the latency spin bit in each direction changes value once per
RTT any time that both endpoints are sending packets
continuously. An on-path observer can observe the time difference between edges
(changes from 1 to 0 or 0 to 1) in the spin bit signal in a single direction to
measure one sample of end-to-end RTT. This mechanism follows the principles of
protocol measurability laid out in <xref target="IPIM"/>.</t>
          <t>Note that this measurement, as with passive RTT measurement for TCP, includes
all transport protocol delay (e.g., delayed sending of acknowledgments) and/or
application layer delay (e.g., waiting for a response to be generated). It
therefore provides devices on path a good instantaneous estimate of the RTT as
experienced by the application.</t>
          <t>However, application-limited and flow-control-limited senders can have
application and transport layer delay, respectively, that are much greater than
network RTT. When the sender is application-limited and e.g., only sends small
amount of periodic application traffic, where that period is longer than the
RTT, measuring the spin bit provides information about the application period,
not the network RTT.</t>
          <t>Since the spin bit logic at each endpoint considers only samples from packets
that advance the largest packet number, signal generation itself is
resistant to reordering. However, reordering can cause problems at an observer
by causing spurious edge detection and therefore inaccurate (i.e., lower) RTT
estimates, if reordering occurs across a spin-bit flip in the stream.</t>
          <t>Simple heuristics based on the observed data rate per flow or changes in the RTT
series can be used to reject bad RTT samples due to lost or reordered edges in
the spin signal, as well as application or flow control limitation; for example,
QoF <xref target="TMA-QOF"/> rejects component RTTs significantly higher than RTTs over the
history of the flow. These heuristics may use the handshake RTT as an initial
RTT estimate for a given flow. Usually such heuristics would also detect if
the spin is either constant or randomly set for a connection.</t>
          <t>An on-path observer that can see traffic in both directions (from client to
server and from server to client) can also use the spin bit to measure
"upstream" and "downstream" component RTT; i.e, the component of the
end-to-end RTT attributable to the paths between the observer and the server
and the observer and the client, respectively. It does this by measuring the
delay between a spin edge observed in the upstream direction and that observed
in the downstream direction, and vice versa.</t>
          <t>Raw RTT samples generated using these techniques can be processed in various
ways to generate useful network performance metrics. A simple linear smoothing
or moving minimum filter can be applied to the stream of RTT samples to get a
more stable estimate of application-experienced RTT. RTT samples measured from
the spin bit can also be used to generate RTT distribution information,
including minimum RTT (which approximates network RTT over longer time windows)
and RTT variance (which approximates one-way packet delay variance as seen
by an application end-point).</t>
        </section>
      </section>
    </section>
    <section anchor="specific-network-management-tasks">
      <name>Specific Network Management Tasks</name>
      <t>In this section, we review specific network management and measurement
techniques and how QUIC's design impacts them.</t>
      <section anchor="passive-network-performance-measurement-and-troubleshooting">
        <name>Passive Network Performance Measurement and Troubleshooting</name>
        <t>Limited RTT measurement is possible by passive observation of QUIC traffic;
see <xref target="sec-rtt"/>. No passive measurement of loss is possible with the present
wire image. Limited observation of upstream congestion may be
possible via the observation of CE markings in the IP header <xref target="RFC3168"/>
on ECN-enabled QUIC traffic.</t>
        <t>On-path devices can also make measurements of RTT, loss and other
performance metrics when information is carried in an additional network-layer
packet header (Section 6 of
<xref target="I-D.ietf-tsvwg-transport-encrypt"/> describes use of operations,
administration and management (OAM) information).
Using network-layer approaches also has the advantage that common observation
and analysis tools can be consistently used for multiple transport protocols,
however, these techniques are often limited to measurements within one or
multiple cooperating domains.</t>
      </section>
      <section anchor="sec-stateful">
        <name>Stateful Treatment of QUIC Traffic</name>
        <t>Stateful treatment of QUIC traffic (e.g., at a firewall or NAT middlebox) is
possible through QUIC traffic and version identification (<xref target="sec-identifying"/>)
and observation of the handshake for connection confirmation (<xref target="sec-confirm"/>).
The lack of any visible end-of-flow signal (<xref target="sec-teardown"/>) means that this
state must be purged either through timers or through least-recently-used
eviction, depending on application requirements.</t>
        <t>While QUIC has no clear network-visible end-of-flow signal and therefore
does require timer-based state removal, the QUIC handshake indicates
confirmation by both ends of a valid bidirectional transmission. As soon
as the handshake completed, timers should be set long enough to also
allow for short idle time during a valid transmission.</t>
        <t><xref target="RFC4787"/> requires a network state timeout that is not less than 2 minutes
for most UDP traffic.  However, in practice, a QUIC endpoint can experience
lower timeouts, in the range of 30 to 60 seconds <xref target="QUIC-TIMEOUT"/>.</t>
        <t>In contrast, <xref target="RFC5382"/> recommends a state timeout of more than 2
hours for TCP, given that TCP is a connection-oriented protocol with
well-defined closure semantics.
Even though QUIC has explicitly been designed to tolerate NAT rebindings,
decreasing the NAT timeout is not recommended, as it may negatively impact
application performance or incentivize endpoints to send very frequent
keep-alive packets.</t>
        <t>The recommendation is therefore that, even when lower state timeouts are
used for other UDP traffic, a state timeout of at least two minutes
ought to be used for QUIC traffic.</t>
        <t>If state is removed too early, this could lead to black-holing of incoming
packets after a short idle period. To detect this situation, a timer at the
client needs to expire before a re-establishment can happen (if at all), which
would lead to unnecessarily long delays in an otherwise working connection.</t>
        <t>Furthermore, not all endpoints use routing architectures where connections
will survive a port or address change. So even when the client revives the
connection, a NAT rebinding can cause a routing mismatch where a packet
is not even delivered to the server that might support address migration.
For these reasons, the limits in <xref target="RFC4787"/> are important to avoid
black-holing of packets (and hence avoid interrupting the flow of data to the
client), especially where devices are able to distinguish QUIC traffic from
other UDP payloads.</t>
        <t>The QUIC header optionally contains a connection ID which could provide
additional entropy beyond the 5-tuple. The QUIC handshake needs
to be observed in order to understand whether the connection ID is present and
what length it has. However, connection IDs may be renegotiated
after the handshake, and this renegotiation is not visible to the path.
Therefore, using the connection ID as a flow key field for stateful treatment
of flows is not recommended as connection ID changes will cause undetectable
and unrecoverable loss of state in the middle of a connection. In particular,
the use of the connection ID for functions that require state to make a
forwarding decison is not viable as it will break connectivity, or at minimum
cause long timeout-based delays before this problem is detected by the
endpoints and the connection can potentially be re-established.</t>
        <t>Use of connection IDs is specifically discouraged for NAT applications.
If a NAT hits an operational limit, it is recommended to rather drop the
initial packets of a flow (see also <xref target="sec-filtering"/>),
which potentially triggers TCP fallback. Use of the connection ID to
multiplex multiple connections on the same IP address/port pair is not a
viable solution as it risks connectivity breakage, in case the connection
ID changes.</t>
      </section>
      <section anchor="address-rewriting-to-ensure-routing-stability">
        <name>Address Rewriting to Ensure Routing Stability</name>
        <t>While QUIC's migration capability makes it possible for a connection to survive
client address changes, this does not work if the routers or switches in the
server infrastructure route using the address-port 4-tuple. If infrastructure
routes on addresses only, NAT rebinding or address migration will cause packets
to be delivered to the wrong server. <xref target="QUIC_LB"/> describes a way to addresses
this problem by coordinating the selection and use of connection IDs between
load-balancers and servers.</t>
        <t>Applying address translation at a middlebox to maintain a stable
address-port mapping for flows based on connection ID might seem
like a solution to this problem. However, hiding information about the
change of the IP address or port conceals important and security-relevant
information from QUIC endpoints and as such would facilitate amplification
attacks (see <xref section="8" sectionFormat="of" target="QUIC-TRANSPORT"/>). A NAT function that hides
peer address changes prevents the other end from
detecting and mitigating attacks as the endpoint cannot verify connectivity
to the new address using QUIC PATH_CHALLENGE and PATH_RESPONSE frames.</t>
        <t>In addition, a change of IP address or port is also an input signal to other
internal mechanisms in QUIC. When a path change is detected, path-dependent
variables like congestion control parameters will be reset protecting
the new path from overload.</t>
      </section>
      <section anchor="sec-loadbalancing">
        <name>Server Cooperation with Load Balancers</name>
        <t>In the case of networking architectures that include load balancers,
the connection ID can be used as a way for the server to signal information
about the desired treatment of a flow to the load balancers. Guidance on
assigning connection IDs is given in
<xref target="QUIC-APPLICABILITY"/>. <xref target="QUIC_LB"/>
describes a system for coordinating selection and use of connection IDs between
load-balancers and servers.</t>
      </section>
      <section anchor="sec-filtering">
        <name>Filtering Behavior</name>
        <t><xref target="RFC4787"/> describes possible packet filtering behaviors that relate to NATs
but is often also used is other scenarios where packet filtering is desired.
Though the guidance there holds, a particularly unwise behavior admits a
handful of UDP packets and then makes a decision to whether or not filter
later packets in the same connection.
QUIC applications are encouraged to fall back to TCP if early packets do
not arrive at their destination <xref target="QUIC-APPLICABILITY"/>, as QUIC is
based on UDP and there are known blocks of UDP traffic (see <xref target="sec-udp-1312"/>).
Admitting a few packets allows the QUIC endpoint to determine that the path
accepts QUIC. Sudden drops afterwards will result in slow and costly timeouts
before abandoning the connection.</t>
      </section>
      <section anchor="sec-udp-1312">
        <name>UDP Blocking, Throttling, and NAT Binding</name>
        <t>Today, UDP is the most prevalent DDoS vector, since it is easy for compromised
non-admin applications to send a flood of large UDP packets (while with TCP the
attacker gets throttled by the congestion controller) or to craft reflection and
amplification attacks. Some networks therefore block UDP traffic.
With increased deployment of QUIC, there is also an increased need to allow
UDP traffic on ports used for QUIC. However, if UDP is generally enabled on
these ports, UDP flood attacks may also use the same ports. One possible
response to this threat is to throttle UDP traffic on the network, allocating a
fixed portion of the network capacity to UDP and blocking UDP datagrams over
that cap. As the portion of QUIC traffic compared to TCP is also expected to
increase over time, using such a limit is not recommended but if done,
limits might need to be adapted dynamically.</t>
        <t>Further, if UDP traffic is desired to be throttled, it is recommended to
block individual
QUIC flows entirely rather than dropping packets indiscriminately.
When the handshake is blocked, QUIC-capable applications may fall back
to TCP. However, blocking a random fraction of QUIC packets across
4-tuples will allow many QUIC handshakes to complete, preventing TCP fallback,
but these connections will suffer from
severe packet loss (see also <xref target="sec-filtering"/>). Therefore, UDP throttling
should be realized by per-flow policing, as opposed to per-packet
policing. Note that this per-flow policing should be stateless to avoid
problems with stateful treatment of QUIC flows (see <xref target="sec-stateful"/>),
for example blocking a portion of the space of values of a hash function
over the addresses and ports in the UDP datagram.
While QUIC endpoints are often able to survive address changes, e.g., by NAT
rebindings, blocking a portion of the traffic based on 5-tuple hashing increases
the risk of black-holing an active connection when the address changes.</t>
        <t>Note that some source ports are assumed to be reflection attack vectors by some
servers; see <xref section="8.1" sectionFormat="of" target="QUIC-APPLICABILITY"/>. As a result, NAT
binding to these source ports can result in that traffic being blocked.</t>
      </section>
      <section anchor="sec-ddos-dec">
        <name>DDoS Detection and Mitigation</name>
        <t>On-path observation of the transport headers of packets can be used for various
security functions. For example, Denial of Service (DOS) and Distributed DOS
(DDOS) attacks against the infrastructure or against an endpoint can be
detected and mitigated by characterising anomalous traffic.
Other uses include support for security audits (e.g., verifying the
compliance with ciphersuites); client and application fingerprinting for
inventory; and to provide alerts for network intrusion detection and other
next generation firewall functions.</t>
        <t>Current practices in detection and mitigation of DDoS
attacks generally involve classification of incoming traffic (as
packets, flows, or some other aggregate) into "good" (productive) and "bad"
(DDoS) traffic, and then differential treatment of this traffic to forward only
good traffic. This operation is often done in a separate specialized mitigation
environment through which all traffic is filtered; a generalized architecture
for separation of concerns in mitigation is given in
<xref target="DOTS-ARCH"/>.</t>
        <t>Efficient classification of this DDoS traffic in the mitigation environment
is key to the success of this approach. Limited first-packet garbage detection
as in <xref target="sec-garbage"/> and stateful tracking of QUIC traffic as in
<xref target="sec-stateful"/> above may be useful during classification.</t>
        <t>Note that the use of a connection ID to support connection migration renders
5-tuple based filtering insufficient to detect active flows and requires more
state to be maintained by DDoS defense systems if support of migration of QUIC
flows is desired. For the common case of NAT rebinding, where the client's
address changes without the client's intent or knowledge, DDoS defense systems
can detect a change in the client's endpoint address by linking flows based on
the server's connection IDs. However, QUIC's linkability resistance ensures that
a deliberate connection migration is accompanied by a change in the connection
ID. In this case, the connection ID can not be used to distinguish valid, active
traffic from new attack traffic.</t>
        <t>It is also possible for
endpoints to directly support security functions such as DoS
classification and mitigation.
Endpoints can cooperate with an in-network device directly by e.g.,
sharing information about connection IDs.</t>
        <t>Another potential method could use an
on-path network device that relies on pattern inferences in the traffic and
heuristics or machine learning instead of processing observed header
information.</t>
        <t>However, it is questionable whether connection migrations must be supported
during a DDoS attack. While unintended migration without a connection ID
change can be more easily supported, it might be acceptable to not
support migrations of active QUIC connections that are not visible to
the network functions performing the DDoS detection.
As soon as the connection blocking is detected by the client,
the client may be able to rely on the 0-RTT data mechanism
provided by QUIC. When clients migrate to a new path, they should be prepared
for the migration to fail and attempt to reconnect quickly.</t>
        <t>Beyond in-network DDoS protection mechanisms, TCP syncookies <xref target="RFC4937"/>
are a well-established method of mitigating some
kinds of TCP DDoS attacks. QUIC Retry packets are the functional analogue to
syncookies, forcing clients to prove possession of their IP address before
committing server state.  However, there are safeguards in QUIC against
unsolicited injection of these packets by intermediaries who do not have consent
of the end server. See <xref target="QUIC_LB"/> for standard ways for intermediaries to send
Retry packets on behalf of consenting servers.</t>
      </section>
      <section anchor="quality-of-service-handling-and-ecmp-routing">
        <name>Quality of Service Handling and ECMP Routing</name>
        <t>It is expected that any QoS handling in the network, e.g., based on use of
DiffServ Code Points (DSCPs) <xref target="RFC2475"/> as well as Equal-Cost
Multi-Path (ECMP) routing, is applied on a per flow-basis (and not per-packet)
and as such that all packets belonging to the same active QUIC connection
get uniform treatment.</t>
        <t>Using ECMP to distribute packets from a single flow across multiple
network paths or any other non-uniform treatment of packets belong to the same
connection could result in variations in order, delivery rate, and drop rate.
As feedback about loss or delay of each packet is used as input to
the congestion controller, these variations could adversely affect performance.
Depending on the loss recovery mechanism implemented, QUIC may be
more tolerant of packet re-ordering than traditional TCP traffic (see
<xref target="packetnumber"/>). However, the recovery mechanism used by a flow cannot be
known by the network and therefore reordering tolerance should be
considered as unknown.</t>
        <t>Note that the 5-tuple of a QUIC connnection can change due to migration.
In this case different flows are observed by the path and maybe be treated
differently, as congestion control is usualy reset on migration (see also
<xref target="sec-flow-association"/>).</t>
      </section>
      <section anchor="handling-icmp-messages">
        <name>Handling ICMP Messages</name>
        <t>Datagram Packetization Layer PMTU Discovery (PLPMTUD) can be used by QUIC to
probe for the supported PMTU. PLPMTUD optionally uses ICMP messages (e.g.,
IPv6 Packet Too Big messages). Given known attacks with the use of ICMP
messages, the use of PLPMTUD in QUIC has been designed to safely use but
not rely on receiving ICMP feedback (see
<xref section="14.2.1." sectionFormat="of" target="QUIC-TRANSPORT"/>).</t>
        <t>Networks are recommended to forward these ICMP messages and retain as much of
the original packet as possible without exceeding the minimum MTU for the IP
version when generating ICMP messages as recommended in <xref target="RFC1812"/>
and <xref target="RFC4443"/>.</t>
      </section>
      <section anchor="guiding-path-mtu">
        <name>Guiding Path MTU</name>
        <t>Some network segments support 1500-byte packets,
but can only do so by fragmenting at a
lower layer before traversing a network segment with a smaller MTU,
and then reassembling within the network segment.
This is permissible even when the IP layer is IPv6 or IPv4 with the DF bit set,
because fragmention occurs below the IP layer.
However, this process can add to compute
and memory costs, leading to a bottleneck that limits network capacity. In such
networks this generates a desire to influence a majority of senders to use
smaller packets, to avoid exceeding limited reassembly capacity.</t>
        <t>For TCP, MSS clamping (<xref section="3.2" sectionFormat="of" target="RFC4459"/>) is often used to change
the sender's TCP maximum segment size, but QUIC requires a different approach.
<xref section="14" sectionFormat="of" target="QUIC-TRANSPORT"/> advises senders to probe larger sizes using
Datagram Packetization Layer PMTU Discovery (<xref target="DPLPMTUD"/>) or Path
Maximum Transmission Unit Discovery (PMTUD: <xref target="RFC1191"/> and <xref target="RFC8201"/>).
This mechanism encourages senders to approach the maximum packet size, which
could then cause fragmentation within a network segment of which
they may not be aware.</t>
        <t>If path performance is limited when forwarding larger packets, an on-path
device should support a maximum packet size for a specific transport flow
and then consistently drop all packets that exceed the configured size
when the inner IPv4 packet has DF set, or IPv6 is used.</t>
        <t>Networks with configurations that would lead to fragmentation of large
packets within a network segment should drop such packets rather than
fragmenting them. Network operators who plan to implement a more
selective policy may start by focusing on QUIC.</t>
        <t>QUIC flows cannot always be easily distinguished from other UDP traffic, but
we assume at least some portion of QUIC traffic can be identified
(see <xref target="sec-identifying"/>). For networks supporting QUIC, it is recommended
that a path drops any packet larger than the fragmentation size.
When a QUIC endpoint uses DPLPMTUD, it will use a QUIC probe packet to
discover the PMTU. If this probe is lost, it will not impact the flow of
QUIC data.</t>
        <t>IPv4 routers generate an ICMP message when a packet is dropped because the
link MTU was exceeded. <xref target="RFC8504"/> specifies how an IPv6 node generates an
ICMPv6 Packet Too Big message (PTB) in this case. PMTUD relies upon an
endpoint receiving such PTB messages <xref target="RFC8201"/>, whereas DPLPMTUD does not
reply upon these messages, but still can optionally use these to improve
performance <xref section="4.6" sectionFormat="of" target="DPLPMTUD"/>.</t>
        <t>A network cannot know in advance which discovery method is used by a QUIC
endpoint, so it should send a PTB message in addition to dropping an
oversized packet. A generated PTB message should be compliant with the
validation requirements of <xref section="14.2.1" sectionFormat="of" target="QUIC-TRANSPORT"/>, otherwise
it will be ignored for PMTU discovery. This provides a signal to the
endpoint to prevent the packet size from growing too large, which can
entirely avoid network segment fragmentation for that flow.</t>
        <t>Endpoints can cache PMTU information, in the IP-layer cache. This short-term
consistency between the PMTU for flows can help avoid an endpoint using a
PMTU that is inefficient. The IP cache can also influence the PMTU value of
other IP flows that use the same path <xref target="RFC8201"/><xref target="DPLPMTUD"/>,
including IP packets carrying
protocols other than QUIC. The representation of an IP path is
implementation-specific <xref target="RFC8201"/>.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no actions for IANA.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>QUIC is an encrypted and authenticated transport. That means, once the
cryptographic handshake is complete, QUIC endpoints discard most packets that
are not authenticated, greatly limiting the ability of an attacker to interfere
with existing connections.</t>
      <t>However, some information is still observerable, as supporting manageability of
QUIC traffic inherently involves tradeoffs with the confidentiality of QUIC's
control information; this entire document is therefore security-relevant.</t>
      <t>More security considerations for QUIC are discussed in <xref target="QUIC-TRANSPORT"/>
and <xref target="QUIC-TLS"/>, generally considering active or passive attackers in the
network as well as attacks on specific QUIC mechanism.</t>
      <t>Version Negotiation packets do not contain any mechanism to prevent version
downgrade attacks. However, future versions of QUIC that use Version Negotiation
packets are required to define a mechanism that is robust against version
downgrade attacks. Therefore, a network node should not attempt to impact
version selection, as version downgrade may result in connection failure.</t>
    </section>
    <section anchor="contributors">
      <name>Contributors</name>
      <t>The following people have contributed significant text to and/or
feedback on this document:</t>
      <ul spacing="normal">
        <li>Chris Box</li>
        <li>Dan Druta</li>
        <li>David Schinazi</li>
        <li>Gorry Fairhurst</li>
        <li>Ian Swett</li>
        <li>Igor Lubashev</li>
        <li>Jana Iyengar</li>
        <li>Jared Mauch</li>
        <li>Lars Eggert</li>
        <li>Lucas Purdue</li>
        <li>Marcus Ihlar</li>
        <li>Mark Nottingham</li>
        <li>Martin Duke</li>
        <li>Martin Thomson</li>
        <li>Matt Joras</li>
        <li>Mike Bishop</li>
        <li>Nick Banks</li>
        <li>Thomas Fossati</li>
        <li>Sean Turner</li>
      </ul>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This work was partially supported by the European Commission under Horizon 2020
grant agreement no. 688421 Measurement and Architecture for a Middleboxed
Internet (MAMI), and by the Swiss State Secretariat for Education, Research, and
Innovation under contract no. 15.0268. This support does not imply endorsement.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="QUIC-TRANSPORT">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar">
              <organization/>
            </author>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <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="QUIC-TLS">
          <front>
            <title>Using TLS to Secure QUIC</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <author fullname="S. Turner" initials="S." role="editor" surname="Turner">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document describes how Transport Layer Security (TLS) is used to secure QUIC.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9001"/>
          <seriesInfo name="DOI" value="10.17487/RFC9001"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="TMA-QOF">
          <front>
            <title>Inline Data Integrity Signals for Passive Measurement (in Proc. TMA 2014)</title>
            <author initials="B." surname="Trammell">
              <organization/>
            </author>
            <author initials="D." surname="Gugelmann">
              <organization/>
            </author>
            <author initials="N." surname="Brownlee">
              <organization/>
            </author>
            <date year="2014" month="April"/>
          </front>
        </reference>
        <reference anchor="IPIM" target="https://arxiv.org/abs/1612.02902">
          <front>
            <title>In-Protocol Internet Measurement (arXiv preprint 1612.02902)</title>
            <author initials="M." surname="Allman">
              <organization/>
            </author>
            <author initials="R." surname="Beverly">
              <organization/>
            </author>
            <author initials="B." surname="Trammell">
              <organization/>
            </author>
            <date year="2016" month="December" day="09"/>
          </front>
        </reference>
        <reference anchor="QUIC-TIMEOUT" target="https://www.ietf.org/proceedings/88/slides/slides-88-tsvarea-10.pdf">
          <front>
            <title>QUIC (IETF-88 TSV Area Presentation)</title>
            <author initials="J." surname="Roskind">
              <organization/>
            </author>
            <date year="2013" month="November" day="07"/>
          </front>
        </reference>
        <reference anchor="RFC7605">
          <front>
            <title>Recommendations on Using Assigned Transport Port Numbers</title>
            <author fullname="J. Touch" initials="J." surname="Touch">
              <organization/>
            </author>
            <date month="August" year="2015"/>
            <abstract>
              <t>This document provides recommendations to designers of application and service protocols on how to use the transport protocol port number space and when to request a port assignment from IANA.  It provides designer guidance to requesters or users of port numbers on how to interact with IANA using the processes defined in RFC 6335; thus, this document complements (but does not update) that document.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="165"/>
          <seriesInfo name="RFC" value="7605"/>
          <seriesInfo name="DOI" value="10.17487/RFC7605"/>
        </reference>
        <reference anchor="QUIC-RECOVERY">
          <front>
            <title>QUIC Loss Detection and Congestion Control</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar">
              <organization/>
            </author>
            <author fullname="I. Swett" initials="I." role="editor" surname="Swett">
              <organization/>
            </author>
            <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>
        <reference anchor="QUIC-GREASE">
          <front>
            <title>Greasing the QUIC Bit</title>
            <author fullname="Martin Thomson">
              <organization>Mozilla</organization>
            </author>
            <date day="10" month="November" year="2021"/>
            <abstract>
              <t>   This document describes a method for negotiating the ability to send
   an arbitrary value for the second-to-most significant bit in QUIC
   packets.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-quic-bit-grease-02"/>
        </reference>
        <reference anchor="RFC4459">
          <front>
            <title>MTU and Fragmentation Issues with In-the-Network Tunneling</title>
            <author fullname="P. Savola" initials="P." surname="Savola">
              <organization/>
            </author>
            <date month="April" year="2006"/>
            <abstract>
              <t>Tunneling techniques such as IP-in-IP when deployed in the middle of the network, typically between routers, have certain issues regarding how large packets can be handled: whether such packets would be fragmented and reassembled (and how), whether Path MTU Discovery would be used, or how this scenario could be operationally avoided. This memo justifies why this is a common, non-trivial problem, and goes on to describe the different solutions and their characteristics at some length.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4459"/>
          <seriesInfo name="DOI" value="10.17487/RFC4459"/>
        </reference>
        <reference anchor="QUIC-HTTP">
          <front>
            <title>Hypertext Transfer Protocol Version 3 (HTTP/3)</title>
            <author fullname="Mike Bishop">
              <organization>Akamai</organization>
            </author>
            <date day="2" month="February" year="2021"/>
            <abstract>
              <t>The QUIC transport protocol has several features that are desirable
   in a transport for HTTP, such as stream multiplexing, per-stream flow
   control, and low-latency connection establishment.  This document
   describes a mapping of HTTP semantics over QUIC.  This document also
   identifies HTTP/2 features that are subsumed by QUIC, and describes
   how HTTP/2 extensions can be ported to HTTP/3.

DO NOT DEPLOY THIS VERSION OF HTTP

   DO NOT DEPLOY THIS VERSION OF HTTP/3 UNTIL IT IS IN AN RFC.  This
   version is still a work in progress.  For trial deployments, please
   use earlier versions.

Note to Readers

   Discussion of this draft takes place on the QUIC working group
   mailing list (quic@ietf.org), which is archived at
   https://mailarchive.ietf.org/arch/search/?email_list=quic.

   Working Group information can be found at https://github.com/quicwg;
   source code and issues list for this draft can be found at
   https://github.com/quicwg/base-drafts/labels/-http.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-quic-http-34"/>
        </reference>
        <reference anchor="WIRE-IMAGE">
          <front>
            <title>The Wire Image of a Network Protocol</title>
            <author fullname="B. Trammell" initials="B." surname="Trammell">
              <organization/>
            </author>
            <author fullname="M. Kuehlewind" initials="M." surname="Kuehlewind">
              <organization/>
            </author>
            <date month="April" year="2019"/>
            <abstract>
              <t>This document defines the wire image, an abstraction of the information available to an on-path non-participant in a networking protocol.  This abstraction is intended to shed light on the implications that increased encryption has for network functions that use the wire image.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8546"/>
          <seriesInfo name="DOI" value="10.17487/RFC8546"/>
        </reference>
        <reference anchor="RFC9065">
          <front>
            <title>Considerations around Transport Header Confidentiality, Network Operations, and the Evolution of Internet Transport Protocols</title>
            <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
              <organization/>
            </author>
            <author fullname="C. Perkins" initials="C." surname="Perkins">
              <organization/>
            </author>
            <date month="July" year="2021"/>
            <abstract>
              <t>To protect user data and privacy, Internet transport protocols have supported payload encryption and authentication for some time. Such encryption and authentication are now also starting to be applied to the transport protocol headers. This helps avoid transport protocol ossification by middleboxes, mitigate attacks against the transport protocol, and protect metadata about the communication. Current operational practice in some networks inspect transport header information within the network, but this is no longer possible when those transport headers are encrypted.</t>
              <t>This document discusses the possible impact when network traffic uses a protocol with an encrypted transport header. It suggests issues to consider when designing new transport protocols or features.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9065"/>
          <seriesInfo name="DOI" value="10.17487/RFC9065"/>
        </reference>
        <reference anchor="QUIC-INVARIANTS">
          <front>
            <title>Version-Independent Properties of QUIC</title>
            <author fullname="M. Thomson" initials="M." surname="Thomson">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the properties of the QUIC transport protocol that are common to all versions of the protocol.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8999"/>
          <seriesInfo name="DOI" value="10.17487/RFC8999"/>
        </reference>
        <reference anchor="RFC7801">
          <front>
            <title>GOST R 34.12-2015: Block Cipher "Kuznyechik"</title>
            <author fullname="V. Dolmatov" initials="V." role="editor" surname="Dolmatov">
              <organization/>
            </author>
            <date month="March" year="2016"/>
            <abstract>
              <t>This document is intended to be a source of information about the Russian Federal standard GOST R 34.12-2015 describing the block cipher with a block length of n=128 bits and a key length of k=256 bits, which is also referred to as "Kuznyechik".  This algorithm is one of the set of Russian cryptographic standard algorithms (called GOST algorithms).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7801"/>
          <seriesInfo name="DOI" value="10.17487/RFC7801"/>
        </reference>
        <reference anchor="RFC7838">
          <front>
            <title>HTTP Alternative Services</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham">
              <organization/>
            </author>
            <author fullname="P. McManus" initials="P." surname="McManus">
              <organization/>
            </author>
            <author fullname="J. Reschke" initials="J." surname="Reschke">
              <organization/>
            </author>
            <date month="April" year="2016"/>
            <abstract>
              <t>This document specifies "Alternative Services" for HTTP, which allow an origin's resources to be authoritatively available at a separate network location, possibly accessed with a different protocol configuration.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7838"/>
          <seriesInfo name="DOI" value="10.17487/RFC7838"/>
        </reference>
        <reference anchor="QUIC_LB">
          <front>
            <title>QUIC-LB: Generating Routable QUIC Connection IDs</title>
            <author fullname="Martin Duke">
              <organization>Google</organization>
            </author>
            <author fullname="Nick Banks">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Christian Huitema">
              <organization>Private Octopus Inc.</organization>
            </author>
            <date day="11" month="February" year="2022"/>
            <abstract>
              <t>   The QUIC protocol design is resistant to transparent packet
   inspection, injection, and modification by intermediaries.  However,
   the server can explicitly cooperate with network services by agreeing
   to certain conventions and/or sharing state with those services.
   This specification provides a standardized means of solving three
   problems: (1) maintaining routability to servers via a low-state load
   balancer even when the connection IDs in use change; (2) explicit
   encoding of the connection ID length in all packets to assist
   hardware accelerators; and (3) injection of QUIC Retry packets by an
   anti-Denial-of-Service agent on behalf of the server.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-quic-load-balancers-12"/>
        </reference>
        <reference anchor="I-D.ietf-dprive-dnsoquic">
          <front>
            <title>DNS over Dedicated QUIC Connections</title>
            <author fullname="Christian Huitema">
              <organization>Private Octopus Inc.</organization>
            </author>
            <author fullname="Sara Dickinson">
              <organization>Sinodun IT</organization>
            </author>
            <author fullname="Allison Mankin">
              <organization>Salesforce</organization>
            </author>
            <date day="28" month="February" year="2022"/>
            <abstract>
              <t>   This document describes the use of QUIC to provide transport privacy
   for DNS.  The encryption provided by QUIC has similar properties to
   that provided by TLS, while QUIC transport eliminates the head-of-
   line blocking issues inherent with TCP and provides more efficient
   packet loss recovery than UDP.  DNS over QUIC (DoQ) has privacy
   properties similar to DNS over TLS (DoT) specified in RFC7858, and
   latency characteristics similar to classic DNS over UDP.  This
   specification describes the use of DNS over QUIC as a general-purpose
   transport for DNS and includes the use of DNS over QUIC for stub to
   recursive, recursive to authoritative, and zone transfer scenarios.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dprive-dnsoquic-10"/>
        </reference>
        <reference anchor="RFC7983">
          <front>
            <title>Multiplexing Scheme Updates for Secure Real-time Transport Protocol (SRTP) Extension for Datagram Transport Layer Security (DTLS)</title>
            <author fullname="M. Petit-Huguenin" initials="M." surname="Petit-Huguenin">
              <organization/>
            </author>
            <author fullname="G. Salgueiro" initials="G." surname="Salgueiro">
              <organization/>
            </author>
            <date month="September" year="2016"/>
            <abstract>
              <t>This document defines how Datagram Transport Layer Security (DTLS), Real-time Transport Protocol (RTP), RTP Control Protocol (RTCP), Session Traversal Utilities for NAT (STUN), Traversal Using Relays around NAT (TURN), and ZRTP packets are multiplexed on a single receiving socket.  It overrides the guidance from RFC 5764 ("SRTP                Extension for DTLS"), which suffered from four issues described and fixed in this document.</t>
              <t>This document updates RFC 5764.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7983"/>
          <seriesInfo name="DOI" value="10.17487/RFC7983"/>
        </reference>
        <reference anchor="RFC3449">
          <front>
            <title>TCP Performance Implications of Network Path Asymmetry</title>
            <author fullname="H. Balakrishnan" initials="H." surname="Balakrishnan">
              <organization/>
            </author>
            <author fullname="V. Padmanabhan" initials="V." surname="Padmanabhan">
              <organization/>
            </author>
            <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
              <organization/>
            </author>
            <author fullname="M. Sooriyabandara" initials="M." surname="Sooriyabandara">
              <organization/>
            </author>
            <date month="December" year="2002"/>
            <abstract>
              <t>This document describes TCP performance problems that arise because of asymmetric effects.  These problems arise in several access networks, including bandwidth-asymmetric networks and packet radio subnetworks, for different underlying reasons.  However, the end result on TCP performance is the same in both cases: performance often degrades significantly because of imperfection and variability in the ACK feedback from the receiver to the sender. The document details several mitigations to these effects, which have either been proposed or evaluated in the literature, or are currently deployed in networks.  These solutions use a combination of local link- layer techniques, subnetwork, and end-to-end mechanisms, consisting of: (i) techniques to manage the channel used for the upstream bottleneck link carrying the ACKs, typically using header compression or reducing the frequency of TCP ACKs, (ii) techniques to handle this reduced ACK frequency to retain the TCP sender's acknowledgment-triggered self- clocking and (iii) techniques to schedule the data and ACK packets in the reverse direction to improve performance in the presence of two-way traffic.  Each technique is described, together with known issues, and recommendations for use.  A summary of the recommendations is provided at the end of the document.  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="69"/>
          <seriesInfo name="RFC" value="3449"/>
          <seriesInfo name="DOI" value="10.17487/RFC3449"/>
        </reference>
        <reference anchor="RFC6066">
          <front>
            <title>Transport Layer Security (TLS) Extensions: Extension Definitions</title>
            <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd">
              <organization/>
            </author>
            <date month="January" year="2011"/>
            <abstract>
              <t>This document provides specifications for existing TLS extensions.  It is a companion document for RFC 5246, "The Transport Layer Security (TLS) Protocol Version 1.2".  The extensions specified are server_name, max_fragment_length, client_certificate_url, trusted_ca_keys, truncated_hmac, and status_request.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6066"/>
          <seriesInfo name="DOI" value="10.17487/RFC6066"/>
        </reference>
        <reference anchor="RFC7301">
          <front>
            <title>Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension</title>
            <author fullname="S. Friedl" initials="S." surname="Friedl">
              <organization/>
            </author>
            <author fullname="A. Popov" initials="A." surname="Popov">
              <organization/>
            </author>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <author fullname="E. Stephan" initials="E." surname="Stephan">
              <organization/>
            </author>
            <date month="July" year="2014"/>
            <abstract>
              <t>This document describes a Transport Layer Security (TLS) extension for application-layer protocol negotiation within the TLS handshake. For instances in which multiple application protocols are supported on the same TCP or UDP port, this extension allows the application layer to negotiate which protocol will be used within the TLS connection.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7301"/>
          <seriesInfo name="DOI" value="10.17487/RFC7301"/>
        </reference>
        <reference anchor="TLS-ECH">
          <front>
            <title>TLS Encrypted Client Hello</title>
            <author fullname="Eric Rescorla">
              <organization>RTFM, Inc.</organization>
            </author>
            <author fullname="Kazuho Oku">
              <organization>Fastly</organization>
            </author>
            <author fullname="Nick Sullivan">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Christopher A. Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="13" month="February" year="2022"/>
            <abstract>
              <t>   This document describes a mechanism in Transport Layer Security (TLS)
   for encrypting a ClientHello message under a server public key.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/tlswg/draft-ietf-tls-esni
   (https://github.com/tlswg/draft-ietf-tls-esni).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-esni-14"/>
        </reference>
        <reference anchor="RFC3168">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan">
              <organization/>
            </author>
            <author fullname="S. Floyd" initials="S." surname="Floyd">
              <organization/>
            </author>
            <author fullname="D. Black" initials="D." surname="Black">
              <organization/>
            </author>
            <date month="September" year="2001"/>
            <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="I-D.ietf-tsvwg-transport-encrypt">
          <front>
            <title>Considerations around Transport Header Confidentiality, Network Operations, and the Evolution of Internet Transport Protocols</title>
            <author fullname="Godred Fairhurst">
              <organization>University of Aberdeen</organization>
            </author>
            <author fullname="Colin Perkins">
              <organization>University of Glasgow</organization>
            </author>
            <date day="20" month="April" year="2021"/>
            <abstract>
              <t>To protect user data and privacy, Internet transport protocols have supported payload encryption and authentication for some time. Such encryption and authentication are now also starting to be applied to the transport protocol headers. This helps avoid transport protocol ossification by middleboxes, mitigate attacks against the transport protocol, and protect metadata about the communication. Current operational practice in some networks inspect transport header information within the network, but this is no longer possible when those transport headers are encrypted.

 This document discusses the possible impact when network traffic uses a protocol with an encrypted transport header. It suggests issues to consider when designing new transport protocols or features.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tsvwg-transport-encrypt-21"/>
        </reference>
        <reference anchor="RFC4787">
          <front>
            <title>Network Address Translation (NAT) Behavioral Requirements for Unicast UDP</title>
            <author fullname="F. Audet" initials="F." role="editor" surname="Audet">
              <organization/>
            </author>
            <author fullname="C. Jennings" initials="C." surname="Jennings">
              <organization/>
            </author>
            <date month="January" year="2007"/>
            <abstract>
              <t>This document defines basic terminology for describing different types of Network Address Translation (NAT) behavior when handling Unicast UDP and also defines a set of requirements that would allow many applications, such as multimedia communications or online gaming, to work consistently.  Developing NATs that meet this set of requirements will greatly increase the likelihood that these applications will function properly.  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="127"/>
          <seriesInfo name="RFC" value="4787"/>
          <seriesInfo name="DOI" value="10.17487/RFC4787"/>
        </reference>
        <reference anchor="RFC5382">
          <front>
            <title>NAT Behavioral Requirements for TCP</title>
            <author fullname="S. Guha" initials="S." role="editor" surname="Guha">
              <organization/>
            </author>
            <author fullname="K. Biswas" initials="K." surname="Biswas">
              <organization/>
            </author>
            <author fullname="B. Ford" initials="B." surname="Ford">
              <organization/>
            </author>
            <author fullname="S. Sivakumar" initials="S." surname="Sivakumar">
              <organization/>
            </author>
            <author fullname="P. Srisuresh" initials="P." surname="Srisuresh">
              <organization/>
            </author>
            <date month="October" year="2008"/>
            <abstract>
              <t>This document defines a set of requirements for NATs that handle TCP that would allow many applications, such as peer-to-peer applications and online games to work consistently.  Developing NATs that meet this set of requirements will greatly increase the likelihood that these applications will function properly.  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="142"/>
          <seriesInfo name="RFC" value="5382"/>
          <seriesInfo name="DOI" value="10.17487/RFC5382"/>
        </reference>
        <reference anchor="QUIC-APPLICABILITY">
          <front>
            <title>Applicability of the QUIC Transport Protocol</title>
            <author fullname="Mirja Kuehlewind">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Brian Trammell">
              <organization>Google</organization>
            </author>
            <date day="7" month="March" year="2022"/>
            <abstract>
              <t>   This document discusses the applicability of the QUIC transport
   protocol, focusing on caveats impacting application protocol
   development and deployment over QUIC.  Its intended audience is
   designers of application protocol mappings to QUIC, and implementors
   of these application protocols.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-quic-applicability-15"/>
        </reference>
        <reference anchor="DOTS-ARCH">
          <front>
            <title>DDoS Open Threat Signaling (DOTS) Architecture</title>
            <author fullname="A. Mortensen" initials="A." role="editor" surname="Mortensen">
              <organization/>
            </author>
            <author fullname="T. Reddy.K" initials="T." role="editor" surname="Reddy.K">
              <organization/>
            </author>
            <author fullname="F. Andreasen" initials="F." surname="Andreasen">
              <organization/>
            </author>
            <author fullname="N. Teague" initials="N." surname="Teague">
              <organization/>
            </author>
            <author fullname="R. Compton" initials="R." surname="Compton">
              <organization/>
            </author>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document describes an architecture for establishing and maintaining Distributed Denial-of-Service (DDoS) Open Threat Signaling (DOTS) within and between domains. The document does not specify protocols or protocol extensions, instead focusing on defining architectural relationships, components, and concepts used in a DOTS deployment.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8811"/>
          <seriesInfo name="DOI" value="10.17487/RFC8811"/>
        </reference>
        <reference anchor="RFC4937">
          <front>
            <title>IANA Considerations for PPP over Ethernet (PPPoE)</title>
            <author fullname="P. Arberg" initials="P." surname="Arberg">
              <organization/>
            </author>
            <author fullname="V. Mammoliti" initials="V." surname="Mammoliti">
              <organization/>
            </author>
            <date month="June" year="2007"/>
            <abstract>
              <t>This document describes the IANA considerations for the PPP over Ethernet (PPPoE) protocol.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4937"/>
          <seriesInfo name="DOI" value="10.17487/RFC4937"/>
        </reference>
        <reference anchor="RFC2475">
          <front>
            <title>An Architecture for Differentiated Services</title>
            <author fullname="S. Blake" initials="S." surname="Blake">
              <organization/>
            </author>
            <author fullname="D. Black" initials="D." surname="Black">
              <organization/>
            </author>
            <author fullname="M. Carlson" initials="M." surname="Carlson">
              <organization/>
            </author>
            <author fullname="E. Davies" initials="E." surname="Davies">
              <organization/>
            </author>
            <author fullname="Z. Wang" initials="Z." surname="Wang">
              <organization/>
            </author>
            <author fullname="W. Weiss" initials="W." surname="Weiss">
              <organization/>
            </author>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines an architecture for implementing scalable service differentiation in the Internet.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2475"/>
          <seriesInfo name="DOI" value="10.17487/RFC2475"/>
        </reference>
        <reference anchor="RFC1812">
          <front>
            <title>Requirements for IP Version 4 Routers</title>
            <author fullname="F. Baker" initials="F." role="editor" surname="Baker">
              <organization/>
            </author>
            <date month="June" year="1995"/>
            <abstract>
              <t>This memo defines and discusses requirements for devices that perform the network layer forwarding function of the Internet protocol suite. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1812"/>
          <seriesInfo name="DOI" value="10.17487/RFC1812"/>
        </reference>
        <reference anchor="RFC4443">
          <front>
            <title>Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification</title>
            <author fullname="A. Conta" initials="A." surname="Conta">
              <organization/>
            </author>
            <author fullname="S. Deering" initials="S." surname="Deering">
              <organization/>
            </author>
            <author fullname="M. Gupta" initials="M." role="editor" surname="Gupta">
              <organization/>
            </author>
            <date month="March" year="2006"/>
            <abstract>
              <t>This document describes the format of a set of control messages used in ICMPv6 (Internet Control Message Protocol).  ICMPv6 is the Internet Control Message Protocol for Internet Protocol version 6 (IPv6).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="89"/>
          <seriesInfo name="RFC" value="4443"/>
          <seriesInfo name="DOI" value="10.17487/RFC4443"/>
        </reference>
        <reference anchor="DPLPMTUD">
          <front>
            <title>Packetization Layer Path MTU Discovery for Datagram Transports</title>
            <author fullname="G. Fairhurst" initials="G." surname="Fairhurst">
              <organization/>
            </author>
            <author fullname="T. Jones" initials="T." surname="Jones">
              <organization/>
            </author>
            <author fullname="M. Tüxen" initials="M." surname="Tüxen">
              <organization/>
            </author>
            <author fullname="I. Rüngeler" initials="I." surname="Rüngeler">
              <organization/>
            </author>
            <author fullname="T. Völker" initials="T." surname="Völker">
              <organization/>
            </author>
            <date month="September" year="2020"/>
            <abstract>
              <t>This document specifies Datagram Packetization Layer Path MTU Discovery (DPLPMTUD). This is a robust method for Path MTU Discovery (PMTUD) for datagram Packetization Layers (PLs). It allows a PL, or a datagram application that uses a PL, to discover whether a network path can support the current size of datagram.  This can be used to detect and reduce the message size when a sender encounters a packet black hole. It can also probe a network path to discover whether the maximum packet size can be increased.  This provides functionality for datagram transports that is equivalent to the PLPMTUD specification for TCP, specified in RFC 4821, which it updates. It also updates the UDP Usage Guidelines to refer to this method for use with UDP datagrams and updates SCTP.</t>
              <t>The document provides implementation notes for incorporating Datagram PMTUD into IETF datagram transports or applications that use datagram transports.</t>
              <t>This specification updates RFC 4960, RFC 4821, RFC 6951, RFC 8085, and RFC 8261.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8899"/>
          <seriesInfo name="DOI" value="10.17487/RFC8899"/>
        </reference>
        <reference anchor="RFC1191">
          <front>
            <title>Path MTU discovery</title>
            <author fullname="J.C. Mogul" initials="J.C." surname="Mogul">
              <organization/>
            </author>
            <author fullname="S.E. Deering" initials="S.E." surname="Deering">
              <organization/>
            </author>
            <date month="November" year="1990"/>
            <abstract>
              <t>This memo describes a technique for dynamically discovering the maximum transmission unit (MTU) of an arbitrary internet path.  It specifies a small change to the way routers generate one type of ICMP message.  For a path that passes through a router that has not been so changed, this technique might not discover the correct Path MTU, but it will always choose a Path MTU as accurate as, and in many cases more accurate than, the Path MTU that would be chosen by current practice.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1191"/>
          <seriesInfo name="DOI" value="10.17487/RFC1191"/>
        </reference>
        <reference anchor="RFC8201">
          <front>
            <title>Path MTU Discovery for IP version 6</title>
            <author fullname="J. McCann" initials="J." surname="McCann">
              <organization/>
            </author>
            <author fullname="S. Deering" initials="S." surname="Deering">
              <organization/>
            </author>
            <author fullname="J. Mogul" initials="J." surname="Mogul">
              <organization/>
            </author>
            <author fullname="R. Hinden" initials="R." role="editor" surname="Hinden">
              <organization/>
            </author>
            <date month="July" year="2017"/>
            <abstract>
              <t>This document describes Path MTU Discovery (PMTUD) for IP version 6. It is largely derived from RFC 1191, which describes Path MTU Discovery for IP version 4.  It obsoletes RFC 1981.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="87"/>
          <seriesInfo name="RFC" value="8201"/>
          <seriesInfo name="DOI" value="10.17487/RFC8201"/>
        </reference>
        <reference anchor="RFC8504">
          <front>
            <title>IPv6 Node Requirements</title>
            <author fullname="T. Chown" initials="T." surname="Chown">
              <organization/>
            </author>
            <author fullname="J. Loughney" initials="J." surname="Loughney">
              <organization/>
            </author>
            <author fullname="T. Winters" initials="T." surname="Winters">
              <organization/>
            </author>
            <date month="January" year="2019"/>
            <abstract>
              <t>This document defines requirements for IPv6 nodes.  It is expected that IPv6 will be deployed in a wide range of devices and situations. Specifying the requirements for IPv6 nodes allows IPv6 to function well and interoperate in a large number of situations and deployments.</t>
              <t>This document obsoletes RFC 6434, and in turn RFC 4294.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="220"/>
          <seriesInfo name="RFC" value="8504"/>
          <seriesInfo name="DOI" value="10.17487/RFC8504"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAA4kJmIAA+19bXcbR5be9/oVvdKHIXcBmpRljyzvJKFF2eaOJHNEeiab
nJw9TaBB9groxnY3SNEe5bfnPvel6lYDkLVrb5KTrE+yIwLo6nq5dd/vc6fT
aRjqYVk9L16XTXlTldf1sh4einZRDLdV8acfz18UV13Z9Ou2G4qLrh3aWbsM
5fV1V909l++zJ8O8nTXligacd+VimNbVsJj+y6aeTVf+Z9OTL8K8HKrnYUb/
96btHp4XdbNoQ6jX3fNi6Db98OT4+KvjJ+Fd9XDfdvPnxXkzVF1TDdMzjBxC
P5TN/J/KZdvQ2x6qPqzr58V/pwlOip5m21WLnv71sMI//kcIodwMt233PBTF
lP5/Qe/radlHxR831e2yuq+bOX8ss39dd/9cjr9qu5vnxcuunvV92/An1aqs
l8+LFX599C7++r9U+qOjWbvKX/jNETZ0taqWS/e6b7q6bPIv+GXfte3Nsiou
7+vhp6pb0oKL71bX3/t3Y4f/y6BPHs1u+buell8N9DztY3k3/W6zXE4vluXw
U3HC38/oDJ4Xz46Pnxb/bUNzladm7aYZcBTufSE0bbcqh/qODivgjOJfRXH1
+nT6px++fc5PKyGdN8u6qYqzcij5yG46ENRlfdOUy76gx4uLsu9pgOJ1Vfab
rlpVzVAc1A3Ia3aEMYsnxydPD3nQdGj4b6r/u2cvt35wdkQ7cFMtifaa3b94
c0R73943y6riL5go+f3T46f0yfnF+evR8qZ2DSJF5ispu/9a3xXrrlp3Nf19
8uXJk6PjJ0TKn7AiIsfTJaa7++u3NNvqjg7m4dM2ZCi7G5DB7TCs++effVZ2
7+u7I6Ksz8rr/rM0s3zpX05PnkyPv6IPcb+nV+evX/7w41W2C3zxD85fXn07
ffasuLr8c3HaVSWdYNXTHhB9tM0nrPYfjoq3bf/Ortd4tvf390egbp7wmoij
quZ1c9N/9uzZZ/2ynle9/g/NYTr0dyVNYXpyfLSeL/IFfT49OZke/54+fPvt
i99/efzFc1vb25cvfvjzy7f/+BzffHXMO8FffPf25enlSzru6dlR4mHX9TC9
obf0lYz19OkXX9GtmE6nBW0oXcIZ8aWr27oviA1umBzmdT/b9H3VF6u9HHaI
HHatpDWhi0KP0WpD2/AP69V6Wc94Z3s8jAd/R++perpZBRjDfd3hZ/SOgp4h
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
gAQQQGTdjTXWEf0qXMLcpQQFzZVg8AreyS2/xCwlaEigA8ObHTurohyu5jSn
cGCT41DdCQf8sC3HHPw9jFWDOUOROKx6JNNCyboy7srdqCVZDN7bhKZAq94q
R/fxAjI5yOJlSxv9kTQ1QvmB1l3Tptfi/mat7Pzi/DVrXt5tm4sv1inZ2F87
weKZjPZmNpCxqg+ZcItJGirODjQBCn+A7qqEkpQ3vWGN7LO2C1t9i/OR7kup
wRNCj+07xc9tMb75IXTfkCzcKPLGDJLuSttyohvaKZVNhUI6ReKNrIApsA8e
lEl1KzdZ6B4R4dgLdwWlYwscnlY1qeIX2BMD1UP4P9uBrHbc78fE9YNGXp04
ETp4l+hS3bDHRCKhsWkZk1SMsMtr2YDeM1vZcGboPad29WhJGxJYH7ajneft
r82GnUQmDh8G/5Dr1MV9YRHawGiRq2gFDDv1lHqrinm09/qCSTBcaL9kAMSa
Ty6OvWxvMO9BeFAS05qcoHJMbmZMPxTWIjs9vytt0GXZAV8wj4FOjAUoTbLK
IHkzHAhCzAIlc1zbb70IXeDBNSjkfEJGRKAdISmx4jaQLr8sXAuwBn4c2xKC
b2m0LhJSvA91UyIgAho/qI8qOmYE67tDD0QNn2+98BPhIEpsJFPybk5ZG1mS
bW0skINhvOvM1vaVjMSehclNYQY2yxvltzoq5tVX3CB9VN7acbUOjc08Mx6Z
+vy32isKP4emGOlBDmri28172jKXhLlC+IpocZNL9p2EP7XfEpe9en06/dMP
35LCKjPrnZlFE+wLV8RKJHZLGoJdCP5aUmrQv5p2rRVflBnqVqbs9hQqmlno
GZ64prsoCCZL0cjXvJYg4/6oSHTjcpr71E1UI7/1Iu0cAhiCnxYb0rVdUg16
bdmXq/thlzTOqvNjmex2df4BX0W1OUmOOvNUoKVieER+c5gcIFt+jGTkhEeb
tdDtIx7qEdy99kF2fF8XdF0MOSVaz9Fl4qQ34g1dfQ0QlGXEw8Ci+70eAWfz
B/tzjwWes3/29LBbmgU6sYOMpYbcsyAXVxiE7xzKKrDug9NW5MVlKgC02o60
SenXEoXk9oXQ6ks67rflfXYzo5BOASqcTPRxxswAJNf0CjmqNe7BMgljNo/g
giXLM6Xiw5btiIZROtMLLyIVGVlr/apt0SPzJnA2AJeOWrdOKZyzOZSK3Wex
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
3P0AAA==

-->

</rfc>
