<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-masque-connect-udp-ecn-dscp-02" category="std" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title>ECN and DSCP support for HTTPS's Connect-UDP</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-masque-connect-udp-ecn-dscp-02"/>
    <author initials="M." surname="Westerlund" fullname="Magnus Westerlund">
      <organization>Ericsson</organization>
      <address>
        <email>magnus.westerlund@ericsson.com</email>
      </address>
    </author>
    <author initials="M." surname="Seemann" fullname="Marten Seemann">
      <organization>Smallstep</organization>
      <address>
        <email>martenseemann@gmail.com</email>
      </address>
    </author>
    <author fullname="Mirja Kühlewind">
      <organization>Ericsson</organization>
      <address>
        <email>mirja.kuehlewind@ericsson.com</email>
      </address>
    </author>
    <author fullname="Marcus Ihlar">
      <organization>Ericsson</organization>
      <address>
        <email>marcus.ihlar@ericsson.com</email>
      </address>
    </author>
    <date year="2026" month="July" day="22"/>
    <area>WIT</area>
    <workgroup>MASQUE</workgroup>
    <keyword>quic</keyword>
    <keyword>http</keyword>
    <keyword>datagram</keyword>
    <keyword>udp</keyword>
    <keyword>proxy</keyword>
    <keyword>tunnels</keyword>
    <keyword>quic in quic</keyword>
    <keyword>turtles all the way down</keyword>
    <keyword>masque</keyword>
    <keyword>http-ng</keyword>
    <abstract>
      <?line 74?>

<t>HTTP's Extended Connect's Connect-UDP protocol enables a client to
proxy a UDP flow from the HTTP server towards a specified target IP
address and UDP port. QUIC and Real-time transport protocol (RTP) are examples
of transport protocols that use UDP and support Explicit Congestion
Notification (ECN) and provide the necessary feedback. This document specifies
how ECN and DSCP can be supported through an extension to the Connect-UDP
protocol for HTTP without per-packet byte overhead, solely using Context IDs.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://gloinul.github.io/masque-ecn/#go.draft-westerlund-masque-connect-udp-ecn.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-masque-connect-udp-ecn-dscp/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        MASQUE Working Group mailing list (<eref target="mailto:masque@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/masque/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/masque/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/gloinul/masque-ecn"/>.</t>
    </note>
  </front>
  <middle>
    <?line 85?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Connect-UDP <xref target="RFC9298"/>, as currently defined, limits the Explicit Congestion Notification
(ECN) <xref target="RFC3168"/> exchange between the HTTP server and the target. There is no
support for carrying the ECN bits between the HTTP Connect-UDP client and the
HTTP server proxying the UDP flow. Thus, it is not possible to establish the
end-to-end ECN information flow necessary to support either classic ECN
<xref target="RFC3168"/> or L4S <xref target="RFC9330"/>, <xref target="RFC9331"/>.</t>
      <t>Diffserv <xref target="RFC2475"/> enables differential network treatment of packets.
Connect-UDP, as currently defined, lacks support for carrying the DSCP
field <xref target="RFC2474"/> through the tunnel.</t>
      <t>This document specifies Connect-UDP extensions that enable end-to-end ECN
and DSCP for proxied connections: the zero-bytes extension adds no
per-packet overhead by encoding the ECN and DSCP values directly into Context IDs.
This document specifies negotiation to provide an initial set of Context IDs
and capsules for dynamic updates.</t>
      <t>An alternative to this extension is Connect-IP <xref target="RFC9484"/>; however, it carries
a full IP header between the HTTP client and server, resulting in significantly
more overhead than this extension.</t>
      <t>This extension is defined such that it allows clients to optimistically start
sending UDP packets in HTTP Datagrams, i.e. before receiving the response to its
UDP proxying request, as described in <xref section="5" sectionFormat="of" target="RFC9298"/>.</t>
    </section>
    <section anchor="conventions">
      <name>Conventions</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
<?line -6?>
      </t>
    </section>
    <section anchor="sec-CONTEXT">
      <name>Zero-byte Combined ECN and DSCP Extension</name>
      <t>For a zero-overhead encoding, the ECN and DSCP bits are indicated by using different
Context IDs. An example use of three additional Context IDs to only encode the ECN
bit used together with a DSCP of 0 is shown in <xref target="ECN-Encoding-Table"/>.</t>
      <table anchor="ECN-Encoding-Table">
        <name>ECN-only Encoding Table</name>
        <thead>
          <tr>
            <th align="right">Context ID Value</th>
            <th align="left">ECN bit</th>
            <th align="left">ECN Value</th>
            <th align="left">DSCP Value</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="right">0</td>
            <td align="left">0b00</td>
            <td align="left">Not-ECT</td>
            <td align="left">0</td>
          </tr>
          <tr>
            <td align="right">2</td>
            <td align="left">0b01</td>
            <td align="left">ECT(1)</td>
            <td align="left">0</td>
          </tr>
          <tr>
            <td align="right">4</td>
            <td align="left">0b10</td>
            <td align="left">ECT(0)</td>
            <td align="left">0</td>
          </tr>
          <tr>
            <td align="right">6</td>
            <td align="left">0b11</td>
            <td align="left">CE</td>
            <td align="left">0</td>
          </tr>
        </tbody>
      </table>
      <t>No new Context ID value is defined to represent Not-ECT, since using a Context
ID without this extension would, by default, imply Not-ECT. Additionally,
Context IDs are defined to represent the combination of an ECN value other than
Not-ECT and the DSCP values. If an application uses more
DSCP values than just zero, additional Context IDs must be defined.</t>
      <t>This extension results in four times as many Context IDs within a single
Connect-UDP stream for each DSCP value used. We expect that this is acceptable in most cases, as a total
of 31 client initiated Context IDs can be encoded in a single byte, thus resulting in no packet
expansion for applications that use up to 8 DSCP values.</t>
      <t>An endpoint enabling this extension MUST define all three ECN values, even if
the ECN-enabled application expects that only one ECT value (and CE) is used.
This is because of transmission errors or erroneous remarking in the network,
where the other ECT codepoint, as well as Not-ECT, may be observed.</t>
      <t>Negotiation of the context ID values is defined using both
HTTP headers and capsules in <xref target="sec-neg"/>.</t>
    </section>
    <section anchor="sec-neg">
      <name>Negotiating Extensions Usage</name>
      <t>This section defines capability negotiation and Context ID
configuration for the zero-bytes combined ECN and DSCP extensions.</t>
      <t>Note that Context Identifiers are defined as QUIC varints (see Section 16 of
<xref target="RFC9000"/>) and support values up to 4,611,686,018,427,387,903 (2^62-1), which is
larger than what a Structure Header Integer supports (limited to
999,999,999,999,999). We foresee no issues with this limitation, as Context
Identifiers should primarily use the single-byte representation for efficiency,
i.e., they should rarely exceed 63.</t>
      <section anchor="sec-format">
        <name>ECN DSCP Context Assignment Format</name>
        <t>In this extension four Context IDs need to be configured for each DSCP value.</t>
        <t>A configuration of ECN and DSCP signaling is represented by a five-tuple with the
following format:</t>
        <figure anchor="ECN-DSCP-Format">
          <name>ECN DSCP CONTEXT ASSIGNMENT Format</name>
          <artwork type="ascii-art"><![CDATA[
ECN_DSCP_CONTEXT_ASSIGNMENT {
  DSCP_VALUE (6),
  Reserved (2),
  NOT_ECN_CONTEXT (i)
  ECT_1_CONTEXT (i),
  ECT_0_CONTEXT (i),
  CE_CONTEXT (i),
}
]]></artwork>
        </figure>
        <dl>
          <dt>DSCP_VALUE:</dt>
          <dd>
            <t>The DSCP value in the IP valid for the following Context IDs.</t>
          </dd>
          <dt>Reserved:</dt>
          <dd>
            <t>Reserving two bits to achieve byte alignment for the DSCP_VALUE.</t>
          </dd>
          <dt>NOT_ECN_CONTEXT:</dt>
          <dd>
            <t>The Context ID used to indicate the payload was marked as Not-ECN-Capable.</t>
          </dd>
          <dt>ECT_1_CONTEXT:</dt>
          <dd>
            <t>The Context ID used to indicate the payload was marked with ECN value ECT(1).</t>
          </dd>
          <dt>ECT_0_CONTEXT:</dt>
          <dd>
            <t>The Context ID used to indicate the payload was marked with ECN value ECT(0).</t>
          </dd>
          <dt>CE_CONTEXT:</dt>
          <dd>
            <t>The Context ID used to indicate the payload was marked with ECN value CE.</t>
          </dd>
        </dl>
      </section>
      <section anchor="http-structured-field">
        <name>HTTP Structured field</name>
        <t>ECN-DSCP-Context-ID is a Structured Header Field <xref target="RFC9651"/>. Its value is a List
consisting of zero or more Inner Lists, where the Inner List contains five
Integer Items. The Integer Items MUST be non-negative, as they are DSCP values
and Context ID defined in <xref target="RFC9298"/>. The DSCP value and four ECN Context IDs are those defined in
<xref target="ECN-DSCP-Format"/>, in that order.</t>
        <t>When the header is included in an Extended Connect request, it indicates, first
of all, support for this ECN extension. Secondly, it may define one or more
5-item inner lists of DSCP values and corresponding ECN Context IDs for the requestor-to-responder direction.
If no 5-item inner lists of Context IDs are included, then this header only
indicates support for the extension, and the Context IDs MAY be signaled using
capsules.</t>
        <t>When the request includes the ECN-DSCP-Context-ID header, the responder MAY include
this header in the response. If included with one or more 5-item inner lists, it
defines Context IDs defined by the server, usable in either direction.</t>
        <t>The following example indicates support for this extension and defines
two sets of client initiated Context IDs: ID= 10, 12, 14, 16 (Not-ECN-Capable, ECT(1), ECT(0), CE)
combined with DSCP 46 for Expedited Forwarding (EF): 46 ; and ID=0, 4, 6, 8 combined with the default DSCP value of 0.
Note that the default context ID of 0 is (re-)used to indicate the default ECN value of Not-ECN Capable.</t>
        <figure anchor="ECN-DSCP-Context-ID-example">
          <name>Example of ECN-DSCP-Context-ID header</name>
          <artwork type="ascii-art"><![CDATA[
ECN-DSCP-Context-ID: (46,8,10,12,14), (0,0,2,4,6)
]]></artwork>
        </figure>
        <t>A well formed ECDN-DSCP-Context-ID header field SHALL NOT contain the
same context ID in multiple inner lists or multiple positions within
the same list.</t>
      </section>
      <section anchor="ecn-dscp-context-id-assignment-capsule">
        <name>ECN DSCP Context ID Assignment Capsule</name>
        <t>The ECN_DSCP_CONTEXT_ASSIGN capsule is used to assign additional Context ID values
after negotiation and initial assignment in the HTTP header.</t>
        <figure anchor="CAP-Format-Assign">
          <name>ECN_DSCP_CONTEXT_ASSIGN Capsule Format</name>
          <artwork type="ascii-art"><![CDATA[
ECN_DSCP_CONTEXT_ASSIGN Capsule {
  Type (i) = TBA_1
  Length (i),
  ECN_DSCP_CONTEXT_ASSIGNMENT (..) ...,
}
]]></artwork>
        </figure>
        <t>Type and Length as defined by Section 3.2 of the HTTP Capsule specification
<xref target="RFC9297"/>. The capsule value is the ECN_DSCP_CONTEXT_ASSIGNMENT defined above in
<xref target="ECN-DSCP-Format"/>. Thus, the capsule value consists of zero or more
ECN_DSCP_CONTEXT_ASSIGNMENT five-tuples.</t>
        <t>An endpoints that receives a ECN_DSCP_CONTEXT_ASSIGNMENT MUST either confirm the
assignment by sending a ECN_DSCP_CONTEXT_ACK or reject it by sending a
ECN_DSCP_CONTEXT_CLOSE.</t>
      </section>
      <section anchor="ecn-dscp-context-id-ack-capsule">
        <name>ECN DSCP Context ID Ack Capsule</name>
        <t>The ECN_DSCP_CONTEXT_ACK capsule confirms the registration of Context IDs that were received via an
ECN_DSCP_CONTEXT_ASSIGN capsule.</t>
        <figure anchor="CAP-Format-Ack">
          <name>ECN_DSCP_CONTEXT_ACK Capsule Format</name>
          <artwork type="ascii-art"><![CDATA[
ECN_DSCP_CONTEXT_ACK Capsule {
  Type (i) = TBA_2
  Length (i),
  ECN_DSCP_CONTEXT_ASSIGNMENT (..) ...,
}
]]></artwork>
        </figure>
        <t>An endpoint MUST only send an ECN_DSCP_CONTEXT_ACK capsule if it received an
ECN_DSCP_CONTEXT_ASSIGN capsule with the same ECN_DSCP_CONTEXT_ASSIGNMENT.
If an endpoint receives an ECN_DSCP_CONTEXT_ACK capsule for an
ECN_DSCP_CONTEXT_ASSIGNMENT it did not attempt to register,
that capsule is considered malformed.</t>
      </section>
      <section anchor="ecn-dscp-context-id-close-capsule">
        <name>ECN DSCP Context ID Close Capsule</name>
        <t>The ECN_DSCP_CONTEXT_CLOSE capsule is sent to indicate
that the context ID registration was rejected as response to the
ECN_DSCP_CONTEXT_ASSIGN or can be sent any time later to indicate
the closure of a previously assigned registration.</t>
        <figure anchor="CAP-Format-Close">
          <name>ECN_DSCP_CONTEXT_CLOSE Capsule Format</name>
          <artwork type="ascii-art"><![CDATA[
ECN_DSCP_CONTEXT_CLOSE Capsule {
  Type (i) = TBA_3
  Length (i),
  Context ID (i),
}
]]></artwork>
        </figure>
        <t>Once an endpoint has either sent or received a ECN_DSCP_CONTEXT_CLOSE
for a given Context ID, it MUST NOT send any further datagrams with that
Context ID.  Since the value 0 was reserved by unextended UDP proxying,
a ECN_DSCP_CONTEXT_CLOSE capsule with Context ID set to zero is malformed.</t>
        <t>Endpoints MAY close any Context ID regardless of which endpoint registered it.
Once a Context ID has been closed, that ID cannot be reused; see <xref section="4" sectionFormat="of" target="RFC9298"/>.</t>
      </section>
    </section>
    <section anchor="tunnels-and-dscp-and-ecn-marking-interactions">
      <name>Tunnels and DSCP and ECN marking interactions</name>
      <section anchor="tunnel-endpoint-marking">
        <name>Tunnel Endpoint Marking</name>
        <t>When a Tunnel Endpoint receives an IP/UDP packet belonging to a Connect-UDP
request with the ECN DSCP extension enabled, the DSCP value and two ECN bits in the
incoming IP/UDP packet are used to select the appropriate Context ID.
If a not-yet-known DSCP value is received, the endpoint can register new Context ID assignments
using the ECN_DSCP_CONTEXT_ASSIGN capsule and optimistically start using them.</t>
        <t>The Tunnel Endpoint on egress sets the DSCP that belongs to the
received Context ID and corresponding ECN values in the IP packet it
creates for this UDP Proxying payload. If the tunnel endpoint receives
an unknown Context ID the endpoint MAY drop the packet or alternative buffer
it for a limited time to enable the ECN_DSCP_CONTEXT_ASSIGN capsule
to be received and processed.</t>
        <t>A Tunnel endpoint which is unable to read or set the ECN Field SHALL
NOT enable the ECN extension.</t>
      </section>
      <section anchor="dscp-remarking-considerations">
        <name>DSCP Remarking Considerations</name>
        <t>The tunnel may interconnect two different administrative domains that use
DSCP values differently. Thus, the endpoints likely need to perform remarking
of DSCP field values, similar to what an inter-domain router would. Depending on
use cases and deployment, the HTTP client can be in different network domains
with different DSCP usages. An HTTP server that, based on user identification,
connects the HTTP client to different network domains behind it may also need
to support multiple external domains.</t>
        <t>The above complications in handling DSCP make it impossible to provide a
standardized remarking instruction. Instead, the deployment will have to define
whether remarking is handled by the HTTP server, the HTTP client, or both,
considering the tunnel a specific network domain in itself.</t>
      </section>
      <section anchor="tunnel-transport-connection-ecn-interactions-and-congestion-control">
        <name>Tunnel Transport Connection ECN Interactions and Congestion Control</name>
        <t>The primary goal of the ECN DSCP extension is to enable ECN usage between the proxy
and the target and to have the end-to-end transport react to that ECN. However,
different potential models exist for providing ECN interactions for the tunnel,
i.e., between the HTTP client and server. The choice depends on how the tunnel
is configured and what additional support has been implemented for the
Connect-UDP protocol.</t>
        <t>The default deployment would be to use congestion controlled transport protocols
between the HTTP endpoints or proxies for the tunneled ECN enabled packets. This
includes all HTTP versions before HTTP/3 <xref target="RFC9114"/>, as well as HTTP/3 sending
packets over reliable streams as well as over congestion controlled datagrams.
In this deployment on the ingress to each congestion controlled transport an
Active Queue Management (AQM) is recommended that can mark the tunneled packet's
ECN field (or drop them) in case there is sufficient queue build up.</t>
        <t>For tunnels using HTTP/3 with datagrams, where the QUIC connection disables
congestion control on packets containing HTTP datagrams as discussed in Section
6 of <xref target="RFC9298"/>, the ECN marking on tunneled packets can be propagated between
the IP packet of the transport connection and the end-to-end packet. This
represents a specific implementation of IP-in-IP tunnels with tightly coupled
shim headers as discussed in <xref target="RFC9601"/>. It is implemented as
Feed-Forward-and-Up as discussed in <xref target="RFC9599"/>, and MUST use the normal mode on
tunnel ingress and follow the specified default behavior on egress as defined in
<xref target="RFC6040"/>.</t>
      </section>
      <section anchor="tunnel-transport-connection-dscp-interactions">
        <name>Tunnel Transport Connection DSCP Interactions</name>
        <t>For HTTP tunnels not using HTTP/3 <xref target="RFC9114"/>, HTTP/3 using reliable streams, or
HTTP/3 with datagrams but without disabling congestion control, the tunnel will
consist of one or possibly several chained congestion-controlled transport
connections. These transport connections can use only a single DSCP code point
to avoid inconsistent network treatment that might confuse the congestion
controller and retransmission mechanism. Thus, even if the tunneled packets use
different DSCP values, the transport connection must settle on a single,
suitable DSCP value. However, if the QUIC multipath extension
<xref target="I-D.ietf-quic-multipath"/> is used, each path can have a different DSCP value.
In this latter case, packets with different DSCP values can be mapped to
different paths with the appropriate network treatment as indicated by their
DSCP values.</t>
        <t>For tunnels using HTTP/3 with datagrams and where the QUIC connection disables
congestion control on packets containing HTTP datagrams, as discussed in
Section 6 of <xref target="RFC9298"/>, the QUIC packets can be marked using the most
suitable DSCP value based on the encapsulated packet. In cases where the tunnel
connection is sent into a different network domain than the one on which the
tunneled packet was received, a suitable remapping must occur for the domain to
which the tunnel packet will be sent. The HTTP tunnel MUST NOT coalesce
different tunneled payloads that are not mapped to the same DSCP in a single
QUIC packet.</t>
      </section>
      <section anchor="quic-aware-forwarding">
        <name>QUIC Aware Forwarding</name>
        <t>An HTTP endpoint that supports this extension and QUIC Aware Forwarding
<xref target="I-D.ietf-masque-quic-proxy"/> MUST preserve ECN markings on forwarded packets
in both directions to ensure end-to-end ECN functionality. Using this extension
in combination with QUIC Aware Forwarding, rather than relying solely on the
latter, also ensures that ECN black holes do not occur, for example, on
long-header packets or packets sent before the QUIC Aware Forwarding path is
established for short-header packets. Thus, supporting both provides a
consistent ECN experience.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Connect-UDP requires HTTPS <xref target="RFC9298"/>, which ensures that Context ID
assignments and capsule exchanges are confidential and
integrity-protected, preventing on-path third parties from
manipulating ECN and DSCP mappings.</t>
      <section anchor="dscp-and-ecn-fields">
        <name>DSCP and ECN Fields</name>
        <t>This specification main functionality is to remap the IP header's
fields DSCP and ECN to context-IDs between the ingress and egress of
the MASQUE tunnel for IP/UDP flows mapped to CONNECT-UDP request. It
also possible to apply on path marking of outer ECN fields to the
end-to-end packet on egress. Thus, this specification does not change
the risks with on-path manipulation of the ECN and DSCP fields.</t>
      </section>
      <section anchor="resource-consumption">
        <name>Resource Consumption</name>
        <t>Each ECN_DSCP_CONTEXT_ASSIGN capsule allocates state at the receiving
endpoint.  However, this state is very limited as per CONNECT-UDP each
inner assignment maps four IP TOS (DSCP+ECN) byte values to four
context value. Normally only a small subset out of the potential 256
different DSCP + ECN combination will be used. Malicous endpoints
that tries to register more than 256 mappings can be dealt by closing
the CONNECT-UDP request stream.</t>
      </section>
      <section anchor="ecn-tunnel-safety">
        <name>ECN Tunnel Safety</name>
        <t>The ECN propagation rules in <xref target="RFC6040"/> and the safety requirements in
<xref target="RFC9601"/> apply to this extension. In particular, if the tunnel egress does
not support ECN propagation, the ingress MUST clear the outer ECN field to
Not-ECT to prevent CE marks from being silently discarded, which would break
congestion control feedback loops.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="http-field-names">
        <name>HTTP Field Names</name>
        <t>IANA is requested to register one new permanent Field name in the
Hypertext Transfer Protocol (HTTP) Field Name Registry (At time of
writing residing at:
https://www.iana.org/assignments/http-fields/http-fields.xhtml).</t>
        <section anchor="ecn-dscp-context-id">
          <name>ECN-DSCP-Context-ID</name>
          <dl>
            <dt>Field Name:</dt>
            <dd>
              <t>ECN-DSCP-Context-ID</t>
            </dd>
            <dt>Status:</dt>
            <dd>
              <t>Permanent</t>
            </dd>
            <dt>Structured Type:</dt>
            <dd>
              <t>List</t>
            </dd>
            <dt>Reference:</dt>
            <dd>
              <t>RFC-TO-BE</t>
            </dd>
          </dl>
        </section>
      </section>
      <section anchor="http-capsule-type">
        <name>HTTP Capsule Type</name>
        <t>IANA is requested to register two new HTTP Capsule Types in the
permanent range (0x00-0x3f).</t>
        <section anchor="ecndscpcontextassign">
          <name>ECN_DSCP_CONTEXT_ASSIGN</name>
          <dl>
            <dt>Value:</dt>
            <dd>
              <t>TBA_1</t>
            </dd>
            <dt>Capsule Type:</dt>
            <dd>
              <t>ECN_DSCP_CONTEXT_ASSIGN</t>
            </dd>
            <dt>Status:</dt>
            <dd>
              <t>permanent</t>
            </dd>
            <dt>Reference:</dt>
            <dd>
              <t>RFC-TO-BE</t>
            </dd>
            <dt>Change Controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Contact:</dt>
            <dd>
              <t>MASQUE Working Group masque@ietf.org</t>
            </dd>
            <dt>Notes:</dt>
            <dd>
              <t>None</t>
            </dd>
          </dl>
        </section>
        <section anchor="ecndscpcontextack">
          <name>ECN_DSCP_CONTEXT_ACK</name>
          <dl>
            <dt>Value:</dt>
            <dd>
              <t>TBA_2</t>
            </dd>
            <dt>Capsule Type:</dt>
            <dd>
              <t>ECN_DSCP_CONTEXT_ACK</t>
            </dd>
            <dt>Status:</dt>
            <dd>
              <t>permanent</t>
            </dd>
            <dt>Reference:</dt>
            <dd>
              <t>RFC-TO-BE</t>
            </dd>
            <dt>Change Controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Contact:</dt>
            <dd>
              <t>MASQUE Working Group masque@ietf.org</t>
            </dd>
            <dt>Notes:</dt>
            <dd>
              <t>None</t>
            </dd>
          </dl>
        </section>
        <section anchor="ecndscpcontextack-1">
          <name>ECN_DSCP_CONTEXT_ACK</name>
          <dl>
            <dt>Value:</dt>
            <dd>
              <t>TBA_3</t>
            </dd>
            <dt>Capsule Type:</dt>
            <dd>
              <t>ECN_DSCP_CONTEXT_CLOSE</t>
            </dd>
            <dt>Status:</dt>
            <dd>
              <t>permanent</t>
            </dd>
            <dt>Reference:</dt>
            <dd>
              <t>RFC-TO-BE</t>
            </dd>
            <dt>Change Controller:</dt>
            <dd>
              <t>IETF</t>
            </dd>
            <dt>Contact:</dt>
            <dd>
              <t>MASQUE Working Group masque@ietf.org</t>
            </dd>
            <dt>Notes:</dt>
            <dd>
              <t>None</t>
            </dd>
          </dl>
        </section>
      </section>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The authors like to acknowledge that David Schinazi early had another proposal for adding ECN to Connect-UDP <xref target="I-D.schinazi-masque-connect-udp-ecn"/>.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ietf-masque-quic-proxy">
          <front>
            <title>QUIC-Aware Proxying Using HTTP</title>
            <author fullname="Tommy Pauly" initials="T." surname="Pauly">
              <organization>Apple Inc.</organization>
            </author>
            <author fullname="Eric Rosenberg" initials="E." surname="Rosenberg">
              <organization>Apple Inc.</organization>
            </author>
            <author fullname="David Schinazi" initials="D." surname="Schinazi">
              <organization>Google LLC</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document extends UDP Proxying over HTTP to add optimizations for
   proxied QUIC connections.  Specifically, it allows a proxy to reuse
   UDP 4-tuples for multiple proxied connections, and adds a mode of
   proxying in which QUIC short header packets can be forwarded and
   transformed through a HTTP/3 proxy rather than being fully re-
   encapsulated and re-encrypted.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-masque-quic-proxy-09"/>
        </reference>
        <reference anchor="RFC2474">
          <front>
            <title>Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers</title>
            <author fullname="K. Nichols" initials="K." surname="Nichols"/>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines the IP header field, called the DS (for differentiated services) field. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2474"/>
          <seriesInfo name="DOI" value="10.17487/RFC2474"/>
        </reference>
        <reference anchor="RFC3168">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan"/>
            <author fullname="S. Floyd" initials="S." surname="Floyd"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <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="RFC6040">
          <front>
            <title>Tunnelling of Explicit Congestion Notification</title>
            <author fullname="B. Briscoe" initials="B." surname="Briscoe"/>
            <date month="November" year="2010"/>
            <abstract>
              <t>This document redefines how the explicit congestion notification (ECN) field of the IP header should be constructed on entry to and exit from any IP-in-IP tunnel. On encapsulation, it updates RFC 3168 to bring all IP-in-IP tunnels (v4 or v6) into line with RFC 4301 IPsec ECN processing. On decapsulation, it updates both RFC 3168 and RFC 4301 to add new behaviours for previously unused combinations of inner and outer headers. The new rules ensure the ECN field is correctly propagated across a tunnel whether it is used to signal one or two severity levels of congestion; whereas before, only one severity level was supported. Tunnel endpoints can be updated in any order without affecting pre-existing uses of the ECN field, thus ensuring backward compatibility. Nonetheless, operators wanting to support two severity levels (e.g., for pre-congestion notification -- PCN) can require compliance with this new specification. A thorough analysis of the reasoning for these changes and the implications is included. In the unlikely event that the new rules do not meet a specific need, RFC 4774 gives guidance on designing alternate ECN semantics, and this document extends that to include tunnelling issues. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6040"/>
          <seriesInfo name="DOI" value="10.17487/RFC6040"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="RFC9114">
          <front>
            <title>HTTP/3</title>
            <author fullname="M. Bishop" initials="M." role="editor" surname="Bishop"/>
            <date month="June" year="2022"/>
            <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.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9114"/>
          <seriesInfo name="DOI" value="10.17487/RFC9114"/>
        </reference>
        <reference anchor="RFC9298">
          <front>
            <title>Proxying UDP in HTTP</title>
            <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document describes how to proxy UDP in HTTP, similar to how the HTTP CONNECT method allows proxying TCP in HTTP. More specifically, this document defines a protocol that allows an HTTP client to create a tunnel for UDP communications through an HTTP server that acts as a proxy.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9298"/>
          <seriesInfo name="DOI" value="10.17487/RFC9298"/>
        </reference>
        <reference anchor="RFC9297">
          <front>
            <title>HTTP Datagrams and the Capsule Protocol</title>
            <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
            <author fullname="L. Pardue" initials="L." surname="Pardue"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document describes HTTP Datagrams, a convention for conveying multiplexed, potentially unreliable datagrams inside an HTTP connection.</t>
              <t>In HTTP/3, HTTP Datagrams can be sent unreliably using the QUIC DATAGRAM extension. When the QUIC DATAGRAM frame is unavailable or undesirable, HTTP Datagrams can be sent using the Capsule Protocol, which is a more general convention for conveying data in HTTP connections.</t>
              <t>HTTP Datagrams and the Capsule Protocol are intended for use by HTTP extensions, not applications.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9297"/>
          <seriesInfo name="DOI" value="10.17487/RFC9297"/>
        </reference>
        <reference anchor="RFC9331">
          <front>
            <title>The Explicit Congestion Notification (ECN) Protocol for Low Latency, Low Loss, and Scalable Throughput (L4S)</title>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This specification defines the protocol to be used for a new network service called Low Latency, Low Loss, and Scalable throughput (L4S). L4S uses an Explicit Congestion Notification (ECN) scheme at the IP layer that is similar to the original (or 'Classic') ECN approach, except as specified within. L4S uses 'Scalable' congestion control, which induces much more frequent control signals from the network, and it responds to them with much more fine-grained adjustments so that very low (typically sub-millisecond on average) and consistently low queuing delay becomes possible for L4S traffic without compromising link utilization. Thus, even capacity-seeking (TCP-like) traffic can have high bandwidth and very low delay at the same time, even during periods of high traffic load.</t>
              <t>The L4S identifier defined in this document distinguishes L4S from 'Classic' (e.g., TCP-Reno-friendly) traffic. Then, network bottlenecks can be incrementally modified to distinguish and isolate existing traffic that still follows the Classic behaviour, to prevent it from degrading the low queuing delay and low loss of L4S traffic. This Experimental specification defines the rules that L4S transports and network elements need to follow, with the intention that L4S flows neither harm each other's performance nor that of Classic traffic. It also suggests open questions to be investigated during experimentation. Examples of new Active Queue Management (AQM) marking algorithms and new transports (whether TCP-like or real time) are specified separately.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9331"/>
          <seriesInfo name="DOI" value="10.17487/RFC9331"/>
        </reference>
        <reference anchor="RFC9599">
          <front>
            <title>Guidelines for Adding Congestion Notification to Protocols that Encapsulate IP</title>
            <author fullname="B. Briscoe" initials="B." surname="Briscoe"/>
            <author fullname="J. Kaippallimalil" initials="J." surname="Kaippallimalil"/>
            <date month="August" year="2024"/>
            <abstract>
              <t>The purpose of this document is to guide the design of congestion notification in any lower-layer or tunnelling protocol that encapsulates IP. The aim is for explicit congestion signals to propagate consistently from lower-layer protocols into IP. Then, the IP internetwork layer can act as a portability layer to carry congestion notification from non-IP-aware congested nodes up to the transport layer (L4). Specifications that follow these guidelines, whether produced by the IETF or other standards bodies, should assure interworking among IP-layer and lower-layer congestion notification mechanisms. This document is included in BCP 89 and updates the single paragraph of advice to subnetwork designers about Explicit Congestion Notification (ECN) in Section 13 of RFC 3819 by replacing it with a reference to this document.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="89"/>
          <seriesInfo name="RFC" value="9599"/>
          <seriesInfo name="DOI" value="10.17487/RFC9599"/>
        </reference>
        <reference anchor="RFC9601">
          <front>
            <title>Propagating Explicit Congestion Notification across IP Tunnel Headers Separated by a Shim</title>
            <author fullname="B. Briscoe" initials="B." surname="Briscoe"/>
            <date month="August" year="2024"/>
            <abstract>
              <t>RFC 6040 on "Tunnelling of Explicit Congestion Notification" made the rules for propagation of Explicit Congestion Notification (ECN) consistent for all forms of IP-in-IP tunnel. This specification updates RFC 6040 to clarify that its scope includes tunnels where two IP headers are separated by at least one shim header that is not sufficient on its own for wide-area packet forwarding. It surveys widely deployed IP tunnelling protocols that use such shim headers and updates the specifications of those that do not mention ECN propagation (including RFCs 2661, 3931, 2784, 4380 and 7450, which specify L2TPv2, L2TPv3, Generic Routing Encapsulation (GRE), Teredo, and Automatic Multicast Tunneling (AMT), respectively). This specification also updates RFC 6040 with configuration requirements needed to make any legacy tunnel ingress safe.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9601"/>
          <seriesInfo name="DOI" value="10.17487/RFC9601"/>
        </reference>
        <reference anchor="RFC9651">
          <front>
            <title>Structured Field Values for HTTP</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="P-H. Kamp" surname="P-H. Kamp"/>
            <date month="September" year="2024"/>
            <abstract>
              <t>This document describes a set of data types and associated algorithms that are intended to make it easier and safer to define and handle HTTP header and trailer fields, known as "Structured Fields", "Structured Headers", or "Structured Trailers". It is intended for use by specifications of new HTTP fields.</t>
              <t>This document obsoletes RFC 8941.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9651"/>
          <seriesInfo name="DOI" value="10.17487/RFC9651"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC2475">
          <front>
            <title>An Architecture for Differentiated Services</title>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <author fullname="M. Carlson" initials="M." surname="Carlson"/>
            <author fullname="E. Davies" initials="E." surname="Davies"/>
            <author fullname="Z. Wang" initials="Z." surname="Wang"/>
            <author fullname="W. Weiss" initials="W." surname="Weiss"/>
            <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="RFC9330">
          <front>
            <title>Low Latency, Low Loss, and Scalable Throughput (L4S) Internet Service: Architecture</title>
            <author fullname="B. Briscoe" initials="B." role="editor" surname="Briscoe"/>
            <author fullname="K. De Schepper" initials="K." surname="De Schepper"/>
            <author fullname="M. Bagnulo" initials="M." surname="Bagnulo"/>
            <author fullname="G. White" initials="G." surname="White"/>
            <date month="January" year="2023"/>
            <abstract>
              <t>This document describes the L4S architecture, which enables Internet applications to achieve low queuing latency, low congestion loss, and scalable throughput control. L4S is based on the insight that the root cause of queuing delay is in the capacity-seeking congestion controllers of senders, not in the queue itself. With the L4S architecture, all Internet applications could (but do not have to) transition away from congestion control algorithms that cause substantial queuing delay and instead adopt a new class of congestion controls that can seek capacity with very little queuing. These are aided by a modified form of Explicit Congestion Notification (ECN) from the network. With this new architecture, applications can have both low latency and high throughput.</t>
              <t>The architecture primarily concerns incremental deployment. It defines mechanisms that allow the new class of L4S congestion controls to coexist with 'Classic' congestion controls in a shared network. The aim is for L4S latency and throughput to be usually much better (and rarely worse) while typically not impacting Classic performance.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9330"/>
          <seriesInfo name="DOI" value="10.17487/RFC9330"/>
        </reference>
        <reference anchor="RFC9484">
          <front>
            <title>Proxying IP in HTTP</title>
            <author fullname="T. Pauly" initials="T." role="editor" surname="Pauly"/>
            <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
            <author fullname="A. Chernyakhovsky" initials="A." surname="Chernyakhovsky"/>
            <author fullname="M. Kühlewind" initials="M." surname="Kühlewind"/>
            <author fullname="M. Westerlund" initials="M." surname="Westerlund"/>
            <date month="October" year="2023"/>
            <abstract>
              <t>This document describes how to proxy IP packets in HTTP. This protocol is similar to UDP proxying in HTTP but allows transmitting arbitrary IP packets. More specifically, this document defines a protocol that allows an HTTP client to create an IP tunnel through an HTTP server that acts as an IP proxy. This document updates RFC 9298.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9484"/>
          <seriesInfo name="DOI" value="10.17487/RFC9484"/>
        </reference>
        <reference anchor="I-D.schinazi-masque-connect-udp-ecn">
          <front>
            <title>An ECN Extension to CONNECT-UDP</title>
            <author fullname="David Schinazi" initials="D." surname="Schinazi">
              <organization>Google LLC</organization>
            </author>
            <date day="28" month="March" year="2022"/>
            <abstract>
              <t>   CONNECT-UDP allows proxying UDP packets over HTTP.  This document
   describes an extension to CONNECT-UDP that allows conveying ECN
   information on proxied UDP packets.

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/DavidSchinazi/draft-connect-udp-ecn.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-schinazi-masque-connect-udp-ecn-02"/>
        </reference>
        <reference anchor="I-D.ietf-quic-multipath">
          <front>
            <title>Managing multiple paths for a QUIC connection</title>
            <author fullname="Yanmei Liu" initials="Y." surname="Liu">
              <organization>Alibaba Inc.</organization>
            </author>
            <author fullname="Yunfei Ma" initials="Y." surname="Ma">
              <organization>Uber Technologies Inc.</organization>
            </author>
            <author fullname="Quentin De Coninck" initials="Q." surname="De Coninck">
              <organization>University of Mons (UMONS)</organization>
            </author>
            <author fullname="Olivier Bonaventure" initials="O." surname="Bonaventure">
              <organization>UCLouvain and WELRI</organization>
            </author>
            <author fullname="Christian Huitema" initials="C." surname="Huitema">
              <organization>Private Octopus Inc.</organization>
            </author>
            <author fullname="Mirja Kühlewind" initials="M." surname="Kühlewind">
              <organization>Ericsson</organization>
            </author>
            <date day="17" month="March" year="2026"/>
            <abstract>
              <t>   This document specifies a multipath extension for the QUIC protocol
   to enable the simultaneous usage of multiple paths for a single
   connection.  It introduces explicit path identifiers to create,
   delete, and manage multiple paths.  This document does not specify
   address discovery or management, nor how applications using QUIC
   schedule traffic over multiple paths.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-quic-multipath-21"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA81cW3PbyJV+71/Raz9EqhC0JMsaW9nZREPTGVVs2WPJmc0+
rAsEmyQiEGDQgGSOo/yW/SH7tPvH9jvndDcavNiu2qQqlYspEOg+fa7fuYBJ
kqhplZXp0pzraZ3OmiQ3zSxZpvYvrUmyqixN1iTtdJWYrEymNlslRyeqyZsC
D4xHVzotp/rl9eidtu1qVdWNnlW1/vHm5t31r6weuec/vHyn7s71U2XbyTK3
Nq/KZr3CCpfjm1cqSxszr+r1ubbNVKW1Sc/1z5c36n5+rt9cXP/0YazKdjkx
9bma4tZzBbKsKW1rz/UsLaxRd6ZscV3reV21q3P9SB57hCuyz6Ofq/o2L+f6
93QDXV+meYHrctDf0aGHVT2nb9I6W+CbRdOs7PmTJ3QjXcrvzNDf9oQuPJnU
1b01T2SJJ/ToPG8W7QQPz4sqL9vCfUe8o68LUG+baG1321CeG+ZV9MCTx/Nq
KCK5x1OmLtpyukcww0WzLB6pW7O+r+opMSLRf2nzjD/QZvwBzEvndbrkP/Ak
/7uqq09r/tS0WLOw4WGdl90iTVtD5FanRaGbhdH36VpPq/uSvxSiwmZJOVdp
2ywqCCzBVSwESek3Q/1zOAhdFq17k87L1m58BR5Dveo8s7aiPbQReS355mHH
kN8Zd9Mwq5Yq2g67XRs8VZbxVnVjyvg673O9xKmw4Kq3Ed1q5c7fzelitIOe
tUXh1szrP6f6D//734vC3OdCPS2blvkvaQNF758jrE+PDW9b4x7rn2NrE+gb
eHS5gCZ+6wb8yDCnRzaYlJew0SWevWOb0e9fjU5Ov3vmP794+vQofD59fsqf
L5OXQwsjKNNf8j1KGO5jD0KakyzboslXabM4V6rs7Rnuc2vx7ayLEUmn/vPT
47Pn/vPZ0WlH3tFR9/n4ONz/4uTF8+jzd9HRjsPnZy9ehM9nR931s2f4DEEn
iU4ntqnTrFGKPBoc2vgTtGJqpt6z9X0cGVNTZVWhTZlO2Fx0VuSmbHRTKT4d
rtCNs6K617O6WrIx0eLamvrO1LjxPq2n9KRdmSyf5disSeu5afTlO5VOp7Wx
lr0ubwiPO9Q/fbgc8aX3Ji2SJl8aDbJLy/440HTw/ubdIbyb0eZTulyBPFXN
dtxoQVPa6NYa3oLW9b59/GlV5Fne0KHnsEFon7qqGlCZsSrqA4SEQ34Eq93l
U8PnA39AdFqv9cyY6STNbof6ZpFbeJCsXRJ7/FmtWoAxvbiSpaWeGE8CcWMB
Hz5f4A4chIyUNm4q3ikOOOHgPiLpe7jZqsVJTZ2sQAV4Olk3Rldg/MKk04G2
VWGKNc5OsQKLNdhBX760Q6cQy3w6LYxSj/Vl2dTVtM2YBypWgs+fnQY+PAx0
anXW1jXOiGWnZpaXBtsU+TJvLFO8g6U6ZqkSlvKiZAYPDzh1tkhxM9jS3Bs4
tE0dIt7RNdEb4rWB1MHvslJxmM7Sul7TSZkQMH1CVG2tGh/OqbPbQcW7sn77
1byS0+atHWgckPcH8yvEfxgHiQznhZ3kdsGLwbKSpkrwDxMT3BQ4wvbSqREe
9ecwkCk2z4oUy2b0oIp5hVO+Pr12MoFjI5n4P44fHiDXl/lsRieQy+QIicXO
fqf40pD08rTA/g3C6y1MxqQNqy3sR/QIChJxaa/Yca/VeyVA6q5gBMU00HIK
Wry+s0Q5RoPqPebTk1WwDmfRcijdZ7MKhkb0kAzJ4zjXTs+e88a/mLpKyFhs
ZHTwRqxTkT15U4JhYaOsmsbqFba6S4uWuVtjE3AoLyHRnrntO18JpAhhNM7m
vZeBL8jLnKVkDcslWo2PmKUr25JI6ZjTNeIqtKVdEaAk677AaQpgipJDlLiT
PD5r3vH20ts4guPDw280XJbBsVnJSaDkxlKO3nDZmrgBBd2yqsiSxIAGGq6d
AiY4Buhl83nJXoB0SC2ruvNTJM5yg0CvEz2KneZB5bKF6ABIBNgBbnX7Wzpq
tULMyOF7Mny3BgoH+FFA2Cw8DjOi5EQW0/7SIUky7KEZ4nAzog/SNPmdlzhO
syKgTjvArygXIMVH1AZR3zZsKVNjszqfgE6s//nztSiefkZiDK50SE4XErgj
Y8SydFyjgXg1QV4LyP/h+ubRQP7VV2/58/sxQuP78Uv6fP3jxevX4YNyd1z/
+PbD65fdp+7J0ds3b8ZXL+VhXNW9Swopxp/wDYnv0dt3N5dvry5eP6IDND3N
pXCL8yOAQcdNvaoNhbDUqt6hfxi9+5//Oj7F4f+F7P74+AXsXv54fsxO4H5h
StmtKiEi+RNcXqt0tTJpTasQNoea5w1yImashWaWmpz/UP3rbwuogk7Ofvtv
ilj5H96gwdTlhLWkZ6LjoEefH1uTJaO3Vzfjf795UOoVDCgVhxAU0pv6YNvW
OaYQG4ByKaYZ9g0SYYN7VbHx64vSQxRGIYRSFrUx5G9yEj6sPLqfNZiYwkQY
T4HCxvQ4rKVCFKQgQfEfpDNZWPSITER4xIqHh5KxO0hyQ76S1e6v0Wb6j+S5
9F99tHSf5Cr+4KX5Lzx2hAtHkyP6BxE9GY9u6AK+OJEvjvnpm4PjQ3f9lK8f
H7nrR/76mVyn+0djvvb5XD/eJldzXv79I/qGOeK/1vz1I03o7vtHtS7oP48g
y6sKHvU+PiC75th3gLu1gd5aUmd3DgClvMyMk2Lqn1d43mOsDfd5X7UFIuCE
o2EKLwfPAQGv/YoQehBusR7E+sDKs5MaknTG2isBATKFXySByCkqljo5S+UF
4KFRFIaG+pKfgyEVHsdCb6wmn6vieMVu98+tbVj7B/v0cUl3TALN255Z/Dy7
01nVgkIgdksGi2Rz3VuKuEmWTfyeA3jG4d0SDllyPDMp/HtHKas9ZdvYE5Gz
EdfPEsF/0ywzq4b1BUsvK0tRC+dll5GCw/AflBk8PfYxSkJrI2lPoM0Bc7E6
dmOeTEbV5AqQs/ZiWlm5UKJAWCrMIPoj1kfZR7sicT/vyYojNSLTqoI/FUQj
8abHYI4Bwn5XsSD3ERQDR0XAhtXPlHMWiWCjaU8JhHmOILanqqS7bxyXD0iZ
RuNDYipzXOScE4TOUu+5KL9yNS9t6rqqLYFS+lSaihmEVP3WMUiyJYaZA3XP
sJ0uiSLTzsRrPjtL697gcPg3mOUyXZNMqglDClK9qwgwsSMlk+lbu43NXUx6
gh0F3At8kYwzYCh2lxQVAMdcaA774OlxBzw/2BSJioQQutnZgnUxXnYlXVql
k7zIm3UP4TGDA7VU95vl87Z2OUFVb0LTbGco63Aw8aNqjEg0LDwlSAF0Wfdd
DfjKifVdWucElA4sdMiDk+MzcFMyDSpCPDwc9hJlx1fR4NPB2fHx4Oz52eDo
+Png9OS7wdPn3w1eHD3VByf/eXaSHB8OENBzmHBuVUE5mzgtXASZqb5uauSZ
LUj7UbAkck9DN7ndQBonlOwe1YsXLwYb/ztkX0AQjY4AI4Q6EnkcD9l0+Hlm
K+tV8OcRaxAo4cKB4HLoa85Jsiin2LxgieCbOxGZGUAs3EgGr05gUWCLX64G
xyl0f8oMyD97Srr0mMXHovMyurAEhxlRveKk0KmUZIjQqstNPCyeNfZXpZH4
MWELYEXChR3uk5yM7usaLKdf7AY1KXue3HaHFmgD6I8UImlawi+OxUbNKoLd
9ITQfK7U3/72NzA7y/OE8DbW/0hrf3RI6+PF9fXl768AOG/0Z6V5349/vHj9
YawPzg4HuPLeiJVDjfhvgNSPtIpbQB/kh7gKv/DxOL42cBePNi+Oxv0rD0Rh
gBq0f+KY3+EMJyb3WESy3EkYoyP8XJ1TLSKOVM7nXfLf+TQYdceufhXGn5mW
ks/s/u8rwZkQL2SZw7tLZQdrOrXxC3fUkDPoc8zTF8EhByADeOU1Vum6qIB6
7zlk17fiLMQJXyUj8mUFaVGP9f+PxVmJOlgjmNGtf/SPWf+I1u8U4u+3+Ggs
Js7BJXg2CJ7qHnQkp2lupwQ7EWaJb3Ve8FVXKaGaLeKQvoQKBACb6tfIablZ
RLkt1ARWTMGC4i/n05cAUzXfZckD+2jbXeZQmeaIY2TSyvvdy8YsLZfVdO+S
4I4JudiSoh3XEtihssuj4BJhGdWPbiHucHDt8t5Ni6Gn2LcRTzdhMrC3NdFK
SrKayHapAMZGR5imBh8hjp8XrjDhahUEYsqsaD2sK7fq3l3+ToU9pwFg4iyv
wXLC4UUx6FW62DsTyV3FgoJpVU4B92kVgi4OshHMcjJSzxIEtiX2IJkUJCoS
Y4zKGZlUtZQbONvZ5Iy3fUd0VVP9y92PVaUMxTUUZAIIj7v33OS1ZxEHNBd+
HAMJLKrAlg0+mI4Fg5CPxIu/ufgTV7w5xnhIpjz4iuXlDuRJsT733TIhoWsQ
1WWITNrIPapi8vMyutEaTpCCQrA9RxLawS2Sp/LQLj6ZV0xESUYOru7VWp+N
uGpuJBEu83TRwNcF9jG3BwGIuY4MRSHCGpHkl9Kac/zf9/r4aKCPT/C/0wFB
vYMN3z5wPnjgfOWA0gAV0CeziFX09IzpGiOTmDJAgxFSf4eOcjB+dXhOd/yG
CcW22BT7nQ2Q8/TXIma5vDl2BVTDGEaINr4tAvm+1HFQm+Rwp9v2D0Wp88zH
M93Fsy3Asqln5/rg9GzwfAD2gXvHp2DMwdHgaHAyAAY+3IYT3ZOJF6yHFu5P
AV579JnQxYUkQQSqGPe/3HezRBjN1T+CSt63Mzqz6bKXF1FizL1LVrXIDdTd
9VVlc8lYJUvnXJIXonv3AFmsHWHZkdi0KPkeAOizLp9lMsbhJXbXH0J0mTUg
ezOb8lXytCMij4rSwqpdot5JmqOf8enNemUIN+rv9c0PFx+Pcem1KefQ3oA5
9wPcg+HwUA+Hwxh0ji58zEqEZRHs/CI1HfRkmujYjpK054J8Lvd0eOJTY+l3
uXVc18H14XxM/s7HZC+XADia/ULkQ4bEclLdmT3B2ffLmq0NHI6xmyjmi4lD
l4lslE5cVUMq9tyo/tIyjGt8p40So5ob1yrSIvDTdwx2rTX6A9Fbmz8TeMj7
t2+fYPT67fX4CxaU3X7NdLCfZ58j2LqYNs+pp++zul4dmThyb0IjA6K6y1Po
z179d1t8g72Ani8Yy8nf1VjAnb2WEtHRmUlcUmNRc7GL5OPqqfuZm89ImoFf
X+dVF9DYVX7hnIzG0oi0Tlm/QhSXFPdSwjwE0VOkm9SQThvAl1UjpWXSDkAS
xboQeV62PrhGnHGZFhJt9ivoqCAY/mUVZR2Pt5CSdheZVYjpUWDq6S9lWWJS
koHGHTcyz32i4MazTFVIC3LNJWieT6s3SMDuOAwVnwjV61Vt7vKqtdAPMX7s
HNP0dVOQc3/BGJ5uGUPE2Y3CRKT2wvN9it/ftVP9t9TGiJVsAT46T8fMYa/l
tXuPFBUrnJ7nVFTuiOW0xrcjvTmt9aytBeT6Jqo3iTRugw21vuYeC4lAIsCR
E7ir+lAXrTQ+MYu7qwO1j9K+FUZ8pa45BM+BJbc9HR+HkEH5QsZs7vcpSAMA
aguaTIKWSC0zMlsxKkomAYuE4/HTxPIJ9cZ5bc6nUv4CSkoGOiGHTNDnN5rq
l12H+HSzQ6we6xuZYuxKdakbJ+mq7KAlzVwT+bF/Qo+DB5QbXZqVbn0fu6HL
d0+6/jgILapyzgWpSo4YhpF8pha8X3AbXbriehCDjQaV5IhIX8KEjgOtUI9q
Sbv1qaDc1ANFawrp/xjqbNTVqqaEJ2K+OFnyg8naNMltSd3QuD5ng/oLXUGs
5EG8aDebiB0usEoaCl/ARkEnubu9YxRBhyWWLh/cFAkxb86DcZziBf6xIolU
rHeKwZpjeneWEHxzJJQoHYOR3GY0AmRsl3QS/9/54QZXBeO8uZva2Q5kCixs
S+F5RE2PzWRzUwjOlddkyKbuDatMWuqiq1xy4FSHZgAPAlZ+7ucbRKCkPB6F
cx7ko7ErdgUXnvOBPN+3wDlSN9RV00BAVYtLcZr+qsu9qOi6QVJvioVMkoX3
PjTGRi74ptHkh+MpVY3Yot3EEhtKGCtAhgQDccEJnJpWS67m+RZjr7sbnirW
MQrvEHOR31KvwvcRVqYmH9k18JQvTEmm6VuNFuIoUo6r0tApheJEqNF11ZIJ
cYd8qF+alcPFyDmoxcK9WVfKWBXVmqxqsDVG5OI5lusO7+fV3KkV+57uaya1
pf6cjFz0plBB6EBPUnIj0g6vde6aQZIPDZTjuN2ipan2EwEikSpPfcEvLWzF
DFXRSF/IsEktaspu3cPO+iV/gu+LmsY4+AI84pYMH2yZ3houTi7jgcMwL6bg
WcopVWJ+YQTTRQfLhWauT17iDx4LlRqJ5z6ceFFgO5kTk6yOmrUc1aOlrJDU
1bsiDm9JcEAmQ23XgfJY0/tNp+phIjjbYCodHmHBFDNnPs5Ib8Jo7yiM87G5
XUYh0PdY/ewp+aG6KoTT0uxb63kFIbgUeUfgym3kZuh71qreyJu8ZtAfTJXA
VjlOLnqTid1YMtxJ1ojzTrlCNdQ/uoE71anZqmrclOaymlL8N5+ofu9mGiFz
79Tj8B8KssJh35/8+qieKwAsqjxjxQDFluyEhpe79ZTkDb7TSI+LA+jKNl7l
AwSioRizlF6io6439OGHmp0p+MJdrJzcV52wbrL/6GSbiWxJI3eMfautc3eu
L4yGbvLM9dr9+ISfhuXxbhXK0jSDwSuCdzIX4CYG6eKTp67fcXx86kam/VyD
+9pVCpQfQ6SxM+hFkbPCyRyMjZ/jG3YfPKDuYegZR8yr5PTYjNEEaTX1hr/G
QySbFxlHmJ9aA9T0Ji1hALziwcVPbw4djKqWSwHrLrssGZT2uSln/JWlxMkF
kgOaWHUQYHlI1k4xgf6SqW7buhZ7o//C20/aHI+1q6EM67kXexyMcjyVYNDN
cXbtLx566AaA4cu5PG/VNheIX14orpzqt4jSG6q65TZrCUQQ9Q6+Kxqh6E/L
e//iXSiJo8+YMHZEYDadyzih6K3qozTnrjohRUfyfihyOPKUU9zQ0bex1w22
GapHl++SvKR5YM9igff5fEFTzVlFhbepsot82c3RbDDD9S+PXP+Se2+RD0it
eoXwmLi+QQLKkw+rPas8e/GCDQjH4bTTT2jwqzfiGQlVuHjilVwaitRgkbJM
eO3EOxeE7BRJfx3B7KiQmrvSKL2X45KwL0cgDh6XvSzslX9Dw/OR0r6euvY8
hLsmN2z6AQqkaqeSwy6aMJ8oWk0LbKv1IA67FOx9E5lk7lpfDlVQmQzOBtzN
Finzo1su2eUrVKeG0kK2u3VUFJ2HyKgYF0br5J0YkiS7ZsJN6V2VkxwckTHq
6l5VYJezJM3kmORVo6NWBWrlBZLa9EbXloZeOsnt0mNjN0G3y3txo0JtIE0P
h/caJY9NImloqO3TDRMOlG1zGVeMRnQCBvAksNcK75t14ATKueedtIcH31IZ
iJfnB4nrDEjSTajsZoN81CioblizKx6Ec++C2C69cH5rSfPaPKgVgRdsbLvS
QJypbwsytf1JajyR13Ei8+1e30GSf5TjH2y6KeULN7s9P++/4ebdEElXRKB5
1V0a0SUr4tglo2Umedd+WbpkqjuyA2rRoX0hll9JSfcmMtq9guGGFUqXCBNc
2zAGV7TzNRSotSeeUoXVig7Gql9lWVsHeOW3qVRY2Xskvy5lIa6GK4A0cqFd
3TEDdjc2i+0xopALFS4hpsIROd6gol2ZnvkcDyJHspIyOF+4uKc1uh43txZ6
UFJ2CoOLOxr2uxeKrHjrjVEYMp925UqjMYRgWD6TdTr/BGTKuVY3aOAyGC50
b7yHNmvLTOB63qyH+oPdHjim9eJBdDaznQcZ6Dpt/FQ6xS4uGLnXDkV5lXiW
gSTHQpMN2Y+e0FtkyDT49bSKBcaaM5BRRumbDyjOU9krcc3vAJ27j6zmDocH
89ukV5wiIFF4Vc8lJnYBAW6s7kODE68fJPZZN/yNimKUFH5WyHNhrYaHiOEf
2pqGgDcrPnEKRKXUnFjCvzLQdyO+9BzxLJofjsqS8TxzeKFS5no4ZZu6bBK3
KUoZ50QWqVvD3ZYBN0LoHkapCXMJOlGTiuHklCfV1VItETJX5IZ8+hnK0s70
7bArePlKNRfLrJ+UjpvQmn1CTyFd8s2+xNcpRSrIITh/sP3VcXMWZiP6b3vG
iNABvUpG5OX3FLxvIfm7mvOM3yXrPMbo7dXVeHQTBAW1IVirWJfjSgwN2q8l
jIB1AfADX3E1LGQ/oW67hdU7ONqV67YYNq2MoEmRMB+mzu2t9XNMidvfy6kb
k++JS2gRYb03tmrrjMvotl2u5BXgMUGIr5a4AbPd2FJD4d01+MKLc8r7yaHu
EI4ci+/HB1xahxIvQgsMqMd1gjJKZlai9jwkZGVsEPpx8/ZaHxCZv+Z3i3lS
1r/iUvFdyrccHdq64gyCBSZglP6CnU/4bcs2ZFtdGebk2dkmAvw1s7TvJyWE
yfsqb6DQGb0SEeoOrgVKb1TG7VmZO2MPim2CKXnMMDVpwRMG1E8ipvKA3bZi
uoyha+O6rOU6nZlmHdq2IdXkV3e69x9CzhPSScsPegclfsanR5LiObXfer2U
wQl7jgxa2KFa3zkQYyRlVqTM4X38PnWDnhVzTMwKejmQcUrfrghZ+JeiuDDK
7ozeLyNbFPcFZnJ0ygv3IjOwHMdR72hdrQlcvN0FEv3b/rqoqhUbj768uLrY
8u5+HFi6BFcAHLjId3LdhIXl3/1yGkCoi5pO0H7YLr8XwA/T72X4/tiPa3zL
Wsx5KFSRWjTuxxBow8NoR1g1d7HX+uCikdYJfN893L4kmVZKiDS473+95f7+
fpinZSq/CNPFlif8IyjiMeLPw0/0My2HrG+Pd421AbgHemjieuct13AEraWv
3/mz08UwHU3ddPqWh5/Ve8MWmPElqGFy8zb5Yaw6nvuWOD32NaZTb4WYvvVg
aEl24qj5FwoOjj4dHSVHn57OomPv8pBK8VuTPGfO02MqXt8xY/eDHUNWHUP2
nXskv5wwCrkufc+/QsS99zRr6IILd70fDdIbPxUkrxLxvlfQRrXveKM/bJzt
5FvORk/9sxzsG8/19BvOJeMS/zwno1GysrpHLiTlWtdclF8vko6fvFMS7hJQ
+TIFoNXX7gdxEHNruMdFSkV+eVePvHJlU8FKVPB3+E9+5yD6rZBv+GEdrqrR
r4+QL1X/By510eyzSwAA

-->

</rfc>
