<?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-ietf-httpbis-incremental-04" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title>Incremental Forwarding of HTTP Messages</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-incremental-04"/>
    <author fullname="奥 一穂" asciiFullname="Kazuho Oku">
      <organization>Fastly</organization>
      <address>
        <email>kazuhooku@gmail.com</email>
      </address>
    </author>
    <author fullname="Tommy Pauly">
      <organization>Apple</organization>
      <address>
        <email>tpauly@apple.com</email>
      </address>
    </author>
    <author fullname="Martin Thomson">
      <organization>Mozilla</organization>
      <address>
        <email>mt@lowentropy.net</email>
      </address>
    </author>
    <date year="2026" month="March" day="02"/>
    <workgroup>httpbis</workgroup>
    <keyword>internet-draft</keyword>
    <abstract>
      <?line 41?>

<t>This document specifies the "Incremental" HTTP header field, which instructs
HTTP intermediaries to forward the HTTP message incrementally.</t>
    </abstract>
  </front>
  <middle>
    <?line 47?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>HTTP <xref target="HTTP"/> permits receivers to begin processing portions of HTTP
messages as they arrive, rather than requiring them to wait for the entire HTTP
message to be received before acting.</t>
      <t>Some applications are specifically designed to take advantage of this
capability.</t>
      <t>For example, Server-Sent Events <xref target="SSE"/> uses a long-running HTTP response, where
the server continually sends notifications as they become available.</t>
      <t>In the case of Chunked Oblivious HTTP Messages
<xref target="CHUNKED-OHTTP"/>, the client opens an HTTP request
and incrementally sends application data, while the server can start responding
even before the HTTP request is fully complete. In this way, the HTTP
request-response pair could create what is, in effect, a bi-directional
communication channel.</t>
      <t>Applications that rely on incremental delivery of data are fragile when HTTP intermediaries are involved.
This is because HTTP intermediaries are not only permitted but are frequently
deployed to buffer complete HTTP messages before forwarding them downstream
(<xref section="7.6" sectionFormat="of" target="HTTP"/>).</t>
      <t>If such a buffering HTTP intermediary exists between the client and the server,
these applications may fail to function as intended.</t>
      <t>In the case of Server-Sent Events, an intermediary that tries to buffer the HTTP
response completely before forwarding it could be left waiting indefinitely.
A client might never receive any portion of the response.</t>
      <t>In the case of requests that involve any bi-directional exchange,
an intermediary that tries to buffer entire messages --
either request or response -- prevents any data from being delivered.</t>
      <t>To help avoid such behavior, this document specifies the "Incremental" HTTP header
field, which requests that HTTP intermediaries begin forwarding the HTTP message
downstream before receiving the complete message.</t>
      <t>This indication might not be supported by intermediaries.
Intermediaries that are unaware of this field will not change their behavior.
intermediaries that support the field might choose instead to reject a request;
see <xref target="security"/>.</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?>

<t>This document relies on structured field definitions
of Item and Boolean <xref target="STRUCTURED-FIELDS"/>.</t>
    </section>
    <section anchor="the-incremental-header-field">
      <name>The Incremental Header Field</name>
      <t>The Incremental HTTP header field expresses the sender's intent for HTTP
intermediaries to start forwarding the message downstream before the entire
message is received.</t>
      <t>The Incremental header field is defined as a structured field
<xref target="STRUCTURED-FIELDS"/> of type Item.
Only Boolean values (<xref section="3.3.6" sectionFormat="of" target="STRUCTURED-FIELDS"/>) are valid;
a recipient ignores the field if it contains any other type.</t>
      <artwork><![CDATA[
Incremental: ?1
]]></artwork>
      <t>A true value ("?1") indicates that the sender requests intermediaries to forward
the message incrementally, as described below.</t>
      <artwork><![CDATA[
Incremental: ?0
]]></artwork>
      <t>A false value ("?0") indicates the default behavior defined in <xref target="HTTP"/>, where
intermediaries might buffer the entire message before forwarding it. However,
this explicit signal might increase intermediaries' confidence in doing so.</t>
      <t>The Incremental HTTP header field applies to each HTTP message. Therefore, if
both the HTTP request and response need to be forwarded incrementally, the
Incremental HTTP header field <bcp14>MUST</bcp14> be set for both the HTTP request and the
response.</t>
      <t>Upon receiving a header section that includes an Incremental header field with a
true value, HTTP intermediaries <bcp14>SHOULD NOT</bcp14> buffer the entire message before
forwarding it.  Instead, intermediaries <bcp14>SHOULD</bcp14> transmit the header section
downstream and continuously forward the bytes of the message content as they
arrive. As the Incremental header field indicates only how the message content is
to be forwarded, intermediaries can still buffer the entire header and trailer
sections of the message before forwarding them downstream.</t>
      <t>If an intermediary decides outright to refuse forwarding the message body
incrementally, the intermediary <bcp14>MUST</bcp14> generate an error response rather than
buffering an entire message before forwarding. Typical scenarios under which an
intermediary might refuse are discussed in <xref target="security"/>.</t>
      <t>The request to use incremental forwarding also applies to HTTP implementations.
Though most HTTP APIs provide the ability to incrementally transfer message content,
those that do not for any reason, <bcp14>SHOULD</bcp14> use the presence of the Incremental
header field to reduce or disable buffering.</t>
      <t>The Incremental field might not be supported by intermediaries.
Intermediaries that are unaware of the field
or that do not support the field might buffer messages,
even when explicitly requested otherwise.
Clients and servers therefore cannot expect all intermediaries to understand
and respect a request to deliver messages incrementally.
Clients that depend on support for incremental forwarding can rely on prior knowledge
or probe for support on individual resources.</t>
      <t>The Incremental header field facilitates the establishment of a bidirectional
byte channel over HTTP, as its presence in both requests and responses requests that
intermediaries forward early responses (<xref section="7.5" sectionFormat="of" target="HTTP"/>) and to
transmit message contents incrementally in both directions.  However, when developing
bidirectional protocols over HTTP, Extended CONNECT <xref target="RFC8441"/><xref target="RFC9220"/> is
generally more consistent with HTTP's architecture.</t>
      <t>This document does not define any parameters for the Incremental header field
value, but future documents might define parameters. Receivers <bcp14>MUST</bcp14> ignore
unknown parameters.</t>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>When receiving a request or response that asks for incremental forwarding,
intermediaries might reject the HTTP request due to security concerns.
The following subsections explore typical scenarios
under which the intermediaries might reject requests.</t>
      <t>Note that rejecting requests based on the value of the Incremental field
only occurs when an intermediary understands the field.</t>
      <section anchor="permanent-rejection">
        <name>Permanent Rejection</name>
        <t>Some intermediaries inspect the content of HTTP messages and forward them only
if their content is deemed safe. Any feature that depends on seeing the
entirety of the message in this way is incompatible with incremental delivery.</t>
        <t>When an intermediary is asked to incrementally forward message and cannot --
whether that message is a request or a response --
due to security concerns about the message content,
the intermediary <bcp14>SHOULD</bcp14> respond with a 501 (Not Implemented) error
with an incremental_refused Proxy-Status response header field
(<xref target="iana-considerations"/>).</t>
      </section>
      <section anchor="temporary-rejection">
        <name>Temporary Rejection</name>
        <t>To conserve resources required to handle HTTP requests or connections, it is
common for intermediaries to impose limits on the maximum number of concurrent
HTTP requests that they forward, while buffering requests that exceed this
limit.</t>
        <t>Such intermediaries could apply a more restrictive concurrency limit to requests
marked as incremental to ensure that capacity remains available for
non-incremental requests, even when the maximum number of incremental requests
is reached. This approach helps balance the processing of different types of
requests and maintains service availability across all requests.</t>
        <t>When rejecting incremental requests due to reaching the concurrency limit,
intermediaries <bcp14>SHOULD</bcp14> respond with a 429 (Too Many Requests) error
(<xref section="4" sectionFormat="of" target="EXTRA-STATUS"/>),
accompanied by a connection_limit_reached Proxy-Status response header field
(<xref section="2.3.12" sectionFormat="of" target="PROXY-STATUS"/>).</t>
      </section>
      <section anchor="handling-of-small-packets">
        <name>Handling of Small Packets</name>
        <t>For performance and efficiency reasons, a small amount of buffering might be
used by intermediaries, even for incremental messages. Immediate forwarding
might be exploited to cause an intermediary to waste effort on many small
packets.  Enabling incremental delivery might instead set limits on the number
bytes that are buffered or the time that buffers are held before forwarding.
Any buffering could adversely affect application latency, even if it improves
efficiency.  In all cases, intermediaries cannot hold data in buffers
indefinitely, so data needs to be forwarded when either the time limit or the
byte limit is reached.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>An HTTP field named Incremental is registered
in the Hypertext Transfer Protocol (HTTP) Field Name Registry,
following the procedures in <xref section="18.4" sectionFormat="of" target="HTTP"/>.
The following values are registered:</t>
      <dl spacing="compact">
        <dt>Field Name:</dt>
        <dd>
          <t>Incremental</t>
        </dd>
        <dt>Status:</dt>
        <dd>
          <t>permanent</t>
        </dd>
        <dt>Structured Type:</dt>
        <dd>
          <t>Item</t>
        </dd>
        <dt>Reference:</dt>
        <dd>
          <t>This document</t>
        </dd>
        <dt>Comments:</dt>
        <dd>
          <t>None</t>
        </dd>
      </dl>
      <t>An HTTP Proxy Error Type is registered in the HTTP Proxy Error Types registry as
shown below:</t>
      <dl spacing="compact">
        <dt>Name:</dt>
        <dd>
          <t>incremental_refused</t>
        </dd>
        <dt>Description:</dt>
        <dd>
          <t>The HTTP message contained the Incremental HTTP header field, but the
intermediary refused to forward the message incrementally.</t>
        </dd>
        <dt>Extra Parameters:</dt>
        <dd>
          <t>none</t>
        </dd>
        <dt>Recommended HTTP Status Code:</dt>
        <dd>
          <t>501</t>
        </dd>
        <dt>Response Only Generated By Intermediaries:</dt>
        <dd>
          <t>true</t>
        </dd>
        <dt>Reference:</dt>
        <dd>
          <t>This document</t>
        </dd>
      </dl>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="EXTRA-STATUS">
          <front>
            <title>Additional HTTP Status Codes</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <date month="April" year="2012"/>
            <abstract>
              <t>This document specifies additional HyperText Transfer Protocol (HTTP) status codes for a variety of common situations. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6585"/>
          <seriesInfo name="DOI" value="10.17487/RFC6585"/>
        </reference>
        <reference anchor="PROXY-STATUS">
          <front>
            <title>The Proxy-Status HTTP Response Header Field</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="P. Sikora" initials="P." surname="Sikora"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>This document defines the Proxy-Status HTTP response field to convey the details of an intermediary's response handling, including generated errors.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9209"/>
          <seriesInfo name="DOI" value="10.17487/RFC9209"/>
        </reference>
        <reference anchor="STRUCTURED-FIELDS">
          <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="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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="SSE" target="https://html.spec.whatwg.org/multipage/server-sent-events.html">
          <front>
            <title>Server-Sent Events</title>
            <author>
              <organization>WHATWG</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="CHUNKED-OHTTP">
          <front>
            <title>Chunked Oblivious HTTP Messages</title>
            <author fullname="Tommy Pauly" initials="T." surname="Pauly">
              <organization>Apple</organization>
            </author>
            <author fullname="Martin Thomson" initials="M." surname="Thomson">
              <organization>Mozilla</organization>
            </author>
            <date day="18" month="February" year="2026"/>
            <abstract>
              <t>   This document defines a variant of the Oblivious HTTP message format
   that allows chunks of requests and responses to be encrypted and
   decrypted before the entire request or response is processed.  This
   allows incremental processing of Oblivious HTTP messages, which is
   particularly useful for handling large messages or systems that
   process messages slowly.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ohai-chunked-ohttp-08"/>
        </reference>
        <reference anchor="RFC8441">
          <front>
            <title>Bootstrapping WebSockets with HTTP/2</title>
            <author fullname="P. McManus" initials="P." surname="McManus"/>
            <date month="September" year="2018"/>
            <abstract>
              <t>This document defines a mechanism for running the WebSocket Protocol (RFC 6455) over a single stream of an HTTP/2 connection.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8441"/>
          <seriesInfo name="DOI" value="10.17487/RFC8441"/>
        </reference>
        <reference anchor="RFC9220">
          <front>
            <title>Bootstrapping WebSockets with HTTP/3</title>
            <author fullname="R. Hamilton" initials="R." surname="Hamilton"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The mechanism for running the WebSocket Protocol over a single stream of an HTTP/2 connection is equally applicable to HTTP/3, but the HTTP-version-specific details need to be specified. This document describes how the mechanism is adapted for HTTP/3.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9220"/>
          <seriesInfo name="DOI" value="10.17487/RFC9220"/>
        </reference>
      </references>
    </references>
    <?line 294?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank many members of the IETF HTTP working group for
their discussions and feedback on this specification. In particular, the authors
would like to thank <contact fullname="Mark Thomas"/>, <contact fullname="Piotr Sikora"/>,
<contact fullname="Thibault Meunier"/>, <contact fullname="Marius Kleidl"/>, <contact fullname="Ben Schwartz"/>,
<contact fullname="Willy Tarreau"/>, <contact fullname="Will Hawkins"/>, <contact fullname="Mark Nottingham"/>, and
<contact fullname="Lucas Pardue"/> for close review and sugggested changes.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA61a3ZIbN3a+x1Mg4wtLKZLWyJLX4v7I49FoNWXNT2ao8rq2
tlxgN0gi093gAt1D0apxpfIkudmLvEGu8yxJ5TXynQOg2d3k2JuqqFweEkQD
B+fnO9856PF4LGpTF3oqj86rzOlSV7Uq5FvrNsrlplpKu5DvZrNreaG9V0vt
j0Rus0qVeCR3alGPja4X41Vdr+fGj81ukfGzFyJTtV5at51KX+dis5zKOFGY
tZvK2jW+fv7s2atnz8Wd3m6sy6fSVLV2la7HvLzwtaryH1VhK+y41V6szVT+
ubbZSHrraqcXHp+2JX34i1BNvbJuKuRYSPxbNEXBsvI3KadT+d9/+5v8r//4
l//593+NY8pnBkt+p35qVlZe3TU8bh2Efat8XWz5uy6VKabyjmfZu+abJQ1M
Mlvu7SVntiy38lo18VmspSrzk6qNrabyZL0udHfNek0zv1E0fnjBC+VqU8nZ
ypbeVgfWvLA/maJQ3VXL+pvCbmAJZ9fbCfQpRGVdiQfuWR1nf5rdnIxvZyez
D7dTefP29KuXX7/E+PXN1Z9+6I6/ev7sFcZvZzcfTmcfbs7ejN+en71/E3/8
6uWxEKZadJe+vT0LCq+VW+o6GN1Pv/hiVZfFxK91NtmsVL1ZTnCKL8qmqM0a
rvWF1+5eu7GH0GN9j//7CT0Rlgpeehum3OJHecZT+NfW7PRvHA0bjfj9u5PZ
938U+Dcej6Wa+9qpDNqYrYyX8OWG3FWSVGZhtJf1SveC4Sj4/0qrXDuJKUU+
kpuVyVZwVSzWZBCCp7Dnljo3yvFCVi5CHPGaPKUMUSQ7cVJsJ1G20uQ5XEN8
Js/JbDlWhnVFWPzTp3+gv78npR8fP3t4kGtsZmovnc40NO94x7lewlPWzmbY
ieJ3jSDBKj4FsogieDg+ybWVyjk8PpJO4avDmKqw5l8b4+h5jJW08EaZms7D
Z4HgxuneemHzJEyOz5isJVSNVXDCW1viG3zcZCoIpPBzVHtGapC59mZZ4Vks
Vas7TM/vFVSExSF8DXsBUNZqbgpTk9KAUlJ/VCXiZnTAM6AyeCIU1Xg6rQSE
LMeuqSo6FuvUab+GJJrsqZ0WdLTghDKzOGLVsFxwyNzLytYsaRQ+Km+uMz7Y
PYJOzRHAQpxXrKNMeZb7dNVUdzjU1bww98Y2vo+n4tOn16fvPlx+h8C6Yguf
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

-->

</rfc>
