<?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.30 (Ruby 3.4.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-rosomakho-httpbis-outdated-proxy-config-02" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title>Detecting Outdated Proxy Configuration</title>
    <seriesInfo name="Internet-Draft" value="draft-rosomakho-httpbis-outdated-proxy-config-02"/>
    <author fullname="Yaroslav Rosomakho">
      <organization>Zscaler</organization>
      <address>
        <email>yrosomakho@zscaler.com</email>
      </address>
    </author>
    <date year="2026" month="March" day="02"/>
    <area>Web and Internet Transport</area>
    <workgroup>HTTP</workgroup>
    <keyword>PAC</keyword>
    <keyword>PvD</keyword>
    <keyword>outdated</keyword>
    <abstract>
      <?line 45?>

<t>This document defines a lightweight mechanism that allows explicit HTTP proxies to inform clients when their proxy configuration, such as a Proxy Auto-Configuration (PAC) file or Provisioning Domain (PvD) proxy configuration, is outdated. Clients signal to the proxy the configuration URL and the timestamp of when it was last fetched. In response, the proxy may indicate that a newer version of the configuration is available. This enables clients to refresh their configuration without relying on frequent polling or short expiration intervals. The mechanism is designed to be compatible with existing proxy deployment models and supports both PAC-based and PvD-based configurations.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://yaroslavros.github.io/httpbis-outdated-proxy-config/draft-rosomakho-httpbis-outdated-proxy-config.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-rosomakho-httpbis-outdated-proxy-config/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        HTTP Working Group mailing list (<eref target="mailto:ietf-http-wg@w3.org"/>),
        which is archived at <eref target="https://lists.w3.org/Archives/Public/ietf-http-wg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/yaroslavros/httpbis-outdated-proxy-config"/>.</t>
    </note>
  </front>
  <middle>
    <?line 49?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Explicit HTTP proxies are widely deployed in enterprise and managed network environments to enforce routing policies, enable traffic inspection, or implement access control. Clients relying on such proxies typically obtain configuration through a Proxy Auto-Configuration (PAC) file <xref target="PAC-FILE"/> or a Provisioning Domain (PvD) <xref target="PROXY-PVD"/>. In many deployments, it is necessary to update these configurations in response to operational changes such as service onboarding, emergency routing adjustments, or policy corrections.</t>
      <t>Currently, clients have limited mechanisms to detect whether the proxy configuration they are using is stale. As a result, PAC files are often polled at short intervals, and PvD expiration times are configured with low values to accelerate refreshes. These approaches are inefficient and may introduce unnecessary network traffic or delay the application of important updates.</t>
      <t>This document defines a simple mechanism that enables a proxy to inform a client that its current configuration is outdated. The client includes in its request a structured field indicating the URL of the PAC file or PvD and the timestamp of when it last fetched the configuration. If the proxy recognizes the configuration and determines that a newer version is available, it may respond with a boolean indicator prompting the client to refresh the configuration.</t>
      <t>This mechanism applies to forms of explicit proxying over HTTP where there is a clear separation between client headers intended for the proxy and headers intended for the origin server. This includes:</t>
      <ul spacing="normal">
        <li>
          <t>HTTP CONNECT as defined <xref section="9.3.6" sectionFormat="of" target="HTTP"/></t>
        </li>
        <li>
          <t><xref target="CONNECT-UDP"/></t>
        </li>
        <li>
          <t><xref target="CONNECT-IP"/></t>
        </li>
        <li>
          <t>Templated <xref target="CONNECT-TCP"/></t>
        </li>
      </ul>
      <t>This mechanism is not applicable to HTTP/1.1 proxying modes that use the "absolute-form" request URI defined in <xref section="3.2.2" sectionFormat="of" target="H1"/> with HTTP methods other than CONNECT.</t>
      <t>The mechanism is optional, compatible with existing protocols, and requires no persistent state. It allows clients to discover configuration updates proactively while preserving the existing operational model.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="protocol-overview">
      <name>Protocol Overview</name>
      <t>To enable detection of stale proxy configuration, clients may include a <tt>Proxy-Config</tt> HTTP header field in requests sent to an explicit proxy. This header communicates the URL of the proxy configuration (such as a PAC file or PvD) and the timestamp of when the client last fetched it.</t>
      <t>Upon receiving a request containing the <tt>Proxy-Config</tt> header, a proxy that supports this mechanism compares the provided timestamp with the most recent update time of the corresponding configuration. If the proxy determines that the client configuration is outdated, it can signal this condition using the <tt>Proxy-Config-Stale</tt> response header.</t>
      <t>This mechanism is optional and advisory. Proxies are not required to track or respond to client configuration metadata, and clients are not required to act immediately upon receiving a staleness indication. The mechanism is designed to supplement, not replace, existing configuration refresh behaviors.</t>
    </section>
    <section anchor="proxy-config-header">
      <name>Proxy-Config Header</name>
      <t>The <tt>Proxy-Config</tt> request header field is used by a client to inform an explicit proxy about the proxy configuration it is currently using. The field conveys a dictionary structured field as defined in <xref section="3.2" sectionFormat="of" target="STRUCTURED-FIELD"/> with the following keys:</t>
      <ul spacing="normal">
        <li>
          <t><tt>url</tt> (optional): A string identifying the URL from which the client fetched the configuration. This may point to a PAC file or a PvD configuration. It <bcp14>MAY</bcp14> be omitted in the following cases:
          </t>
          <ul spacing="normal">
            <li>
              <t>The client is using the default PvD URI based on proxy hostname and ".well-known/pvd" path as defined in <xref section="4.1" sectionFormat="of" target="PVDDATA"/>.</t>
            </li>
            <li>
              <t>The configuration was provisioned through a mechanism that is not associated with a specific URL, such as enterprise device management or a local policy engine</t>
            </li>
          </ul>
        </li>
        <li>
          <t><tt>fetched</tt> (required): A date value indicating when the client last fetched the configuration. The value <bcp14>MUST</bcp14> use the Date format defined in <xref section="3.3.7" sectionFormat="of" target="STRUCTURED-FIELD"/>.</t>
        </li>
      </ul>
      <section anchor="handling-unknown-or-sensitive-urls">
        <name>Handling Unknown or Sensitive URLs</name>
        <t>Clients <bcp14>MUST NOT</bcp14> include URLs that expose local system information (e.g., <tt>file://</tt> URLs). Clients <bcp14>SHOULD</bcp14> limit use of the Proxy-Config header to contexts where it does not introduce privacy or security risks, such as trusted or encrypted proxy connections.</t>
      </section>
      <section anchor="examples">
        <name>Examples</name>
        <t>A client using a PAC file retrieved from <tt>https://config.example.net/proxy.pac</tt> at 2025-06-01T00:00:00Z <bcp14>MAY</bcp14> include the following header:</t>
        <figure>
          <name>Example of Proxy-Config header with url field</name>
          <artwork type="ascii-art"><![CDATA[
Proxy-Config: url="https://config.example.net/proxy.pac", fetched=@1748736000
]]></artwork>
        </figure>
        <t>If the client is using the default PvD URI associated with the proxy hostname, it may omit the <tt>url</tt> key:</t>
        <figure>
          <name>Example of Proxy-Config header without url field</name>
          <artwork type="ascii-art"><![CDATA[
Proxy-Config: fetched=@1748736000
]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="proxy-config-stale-header">
      <name><tt>Proxy-Config-Stale</tt> Header</name>
      <t>The <tt>Proxy-Config-Stale</tt> response header field is used by a proxy to inform the client whether its current proxy configuration is considered outdated. This allows the client to make informed decisions about whether to refresh the configuration.</t>
      <t>The field is a boolean as defined in <xref section="3.3.6" sectionFormat="of" target="STRUCTURED-FIELD"/>, where:</t>
      <ul spacing="normal">
        <li>
          <t><tt>?1</tt> indicates that the configuration used by the client is stale and a newer version is available.</t>
        </li>
        <li>
          <t><tt>?0</tt> indicates that the configuration used by the client is current.</t>
        </li>
      </ul>
      <t>The proxy <bcp14>MUST</bcp14> only include this header if it has received a valid <tt>Proxy-Config</tt> header from the client and is able to recognize and evaluate the configuration URL. If the proxy does not recognize the provided configuration URL, does not track updates for it, or does not support this mechanism, it <bcp14>MUST</bcp14> omit the <tt>Proxy-Config-Stale</tt> header.</t>
      <t>The <tt>Proxy-Config-Stale</tt> header <bcp14>MAY</bcp14> appear in both successful and error responses, except for responses related to client authentication (e.g., <tt>407 Proxy Authentication Required</tt>). Including the header in such authentication-related responses could result in unintended exposure of configuration metadata and may interfere with authentication workflows.</t>
      <t>The <tt>Proxy-Config-Stale</tt> field is advisory. Its presence does not affect the processing of the current request or response. Clients <bcp14>MAY</bcp14> choose how and when to act upon the information, including deferring configuration refresh until convenient.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Clients using the <tt>Proxy-Config</tt> header field must take care to avoid disclosing sensitive information in the URL or metadata they send to the proxy.</t>
      <section anchor="avoiding-sensitive-urls">
        <name>Avoiding Sensitive URLs</name>
        <t>Clients <bcp14>MUST NOT</bcp14> include configuration URLs that reveal local system details, such as <tt>file:// URIs</tt> or paths containing user-specific or internal directory structures. To reduce exposure, clients <bcp14>SHOULD</bcp14> only use this mechanism when proxy configuration is relevant to the proxy (e.g., hosted on the proxy or a part of the same enterprise domain).</t>
      </section>
      <section anchor="trusted-communication-channels">
        <name>Trusted Communication Channels</name>
        <t>The <tt>Proxy-Config</tt> header is intended for use over secure and trusted communication channels. Clients <bcp14>SHOULD</bcp14> send this header only when using TLS or when otherwise confident that the request is not observable or modifiable by unauthorized intermediaries.</t>
      </section>
      <section anchor="authentication-related-responses">
        <name>Authentication-related Responses</name>
        <t>Proxies <bcp14>MUST NOT</bcp14> include the <tt>Proxy-Config-Stale</tt> header in responses related to client authentication (e.g., <tt>407 Proxy Authentication Required</tt>). This avoids potential leakage of client configuration metadata during authentication flows that may be visible to other components or exposed through logging or error handling.</t>
      </section>
      <section anchor="denial-of-service-considerations">
        <name>Denial-of-Service Considerations</name>
        <t>A misconfigured or malicious proxy could include <tt>Proxy-Config-Stale: ?1</tt> in every response, causing the client to repeatedly refetch proxy configuration. This behavior can lead to excessive network traffic, CPU usage, or degraded performance on the client, particularly in environments where configuration retrieval is resource-intensive.</t>
        <t>To mitigate this risk, clients <bcp14>MUST</bcp14> implement appropriate rate limiting or throttling mechanisms when acting on stale configuration indications. For example, a client may choose to ignore repeated <tt>?1</tt> responses within a minimum refresh interval or apply exponential backoff when encountering multiple stale signals in quick succession.</t>
        <t>Clients <bcp14>SHOULD</bcp14> validate the authenticity and integrity of any fetched configuration before applying it, and ensure that configuration refreshes do not interfere with ongoing connection or session state.</t>
      </section>
      <section anchor="inapplicability-to-non-connect-proxying-modes">
        <name>Inapplicability to Non-CONNECT Proxying Modes</name>
        <t>This mechanism is not intended for use with HTTP/1.1 proxying models that rely on the "absolute-form" request URI defined in <xref section="3.2.2" sectionFormat="of" target="H1"/> with methods other than CONNECT. In such configurations, all client headers may be forwarded by the proxy to the destination server. This can result in unintended disclosure of internal configuration metadata.</t>
        <t>Clients <bcp14>MUST</bcp14> ensure that the <tt>Proxy-Config</tt> header is only sent when the proxying mode provides a clear separation between hop-by-hop headers (intended for the proxy) and end-to-end headers (intended for the destination server). This includes CONNECT-based methods such as CONNECT (<xref section="9.3.6" sectionFormat="of" target="HTTP"/>), <xref target="CONNECT-UDP"/>, <xref target="CONNECT-IP"/> and templated <xref target="CONNECT-TCP"/>. These methods establish a tunnel or encapsulation that ensures <tt>Proxy-Config</tt> header is visible only to the proxy and is not forwarded to the destination server even if the proxy does not recognize it.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document registers the following HTTP header fields in the "Hypertext Transfer Protocol (HTTP) Field Name Registry":</t>
      <t>Proxy-Config</t>
      <ul spacing="normal">
        <li>
          <t>Field Name: Proxy-Config</t>
        </li>
        <li>
          <t>Status: permanent</t>
        </li>
        <li>
          <t>Reference: this document</t>
        </li>
      </ul>
      <t>Proxy-Config-Stale</t>
      <ul spacing="normal">
        <li>
          <t>Field Name: Proxy-Config-Stale</t>
        </li>
        <li>
          <t>Status: permanent</t>
        </li>
        <li>
          <t>Reference: this document</t>
        </li>
      </ul>
    </section>
  </middle>
  <back>
    <displayreference target="H1" to="HTTP/1.1"/>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="H1">
          <front>
            <title>HTTP/1.1</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document specifies the HTTP/1.1 message syntax, message parsing, connection management, and related security concerns.</t>
              <t>This document obsoletes portions of RFC 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="99"/>
          <seriesInfo name="RFC" value="9112"/>
          <seriesInfo name="DOI" value="10.17487/RFC9112"/>
        </reference>
        <reference anchor="HTTP">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="STRUCTURED-FIELD">
          <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="PAC-FILE" target="https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_PAC_file">
          <front>
            <title>Proxy Auto-Configuration (PAC) file</title>
            <author>
              <organization>Mozilla</organization>
            </author>
            <date year="2025" month="May"/>
          </front>
        </reference>
        <reference anchor="PROXY-PVD">
          <front>
            <title>Communicating Proxy Configurations in Provisioning Domains</title>
            <author fullname="Tommy Pauly" initials="T." surname="Pauly">
              <organization>Apple, Inc.</organization>
            </author>
            <author fullname="Dragana Damjanovic" initials="D." surname="Damjanovic">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <date day="17" month="February" year="2026"/>
            <abstract>
              <t>   This document defines a mechanism for accessing provisioning domain
   information associated with a proxy, such as other proxy URIs that
   support different protocols and information about which destinations
   are accessible using a proxy.

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/tfpauly/privacy-proxy.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-intarea-proxy-config-11"/>
        </reference>
        <reference anchor="CONNECT-UDP">
          <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="CONNECT-IP">
          <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="CONNECT-TCP">
          <front>
            <title>Template-Driven HTTP CONNECT Proxying for TCP</title>
            <author fullname="Benjamin M. Schwartz" initials="B. M." surname="Schwartz">
              <organization>Meta Platforms, Inc.</organization>
            </author>
            <date day="5" month="December" year="2025"/>
            <abstract>
              <t>   TCP proxying using HTTP CONNECT has long been part of the core HTTP
   specification.  However, this proxying functionality has several
   important deficiencies in modern HTTP environments.  This
   specification defines an alternative HTTP proxy service configuration
   for TCP connections.  This configuration is described by a URI
   Template, similar to the CONNECT-UDP and CONNECT-IP protocols.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-connect-tcp-10"/>
        </reference>
        <reference anchor="PVDDATA">
          <front>
            <title>Discovering Provisioning Domain Names and Data</title>
            <author fullname="P. Pfister" initials="P." surname="Pfister"/>
            <author fullname="É. Vyncke" surname="É. Vyncke"/>
            <author fullname="T. Pauly" initials="T." surname="Pauly"/>
            <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
            <author fullname="W. Shao" initials="W." surname="Shao"/>
            <date month="July" year="2020"/>
            <abstract>
              <t>Provisioning Domains (PvDs) are defined as consistent sets of network configuration information. PvDs allows hosts to manage connections to multiple networks and interfaces simultaneously, such as when a home router provides connectivity through both a broadband and cellular network provider.</t>
              <t>This document defines a mechanism for explicitly identifying PvDs through a Router Advertisement (RA) option. This RA option announces a PvD identifier, which hosts can compare to differentiate between PvDs. The option can directly carry some information about a PvD and can optionally point to PvD Additional Information that can be retrieved using HTTP over TLS.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8801"/>
          <seriesInfo name="DOI" value="10.17487/RFC8801"/>
        </reference>
      </references>
    </references>
    <?line 190?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Tommy Pauly and Dragana Damjanovic for reviewing the concept and providing initial feedback.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
HBfoggNgY65USrsZRf8HdVun8nIwAAA=

-->

</rfc>
