<?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.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-httpbis-incremental-01" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.2 -->
  <front>
    <title>Incremental HTTP Messages</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-incremental-01"/>
    <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="2025" month="September" day="26"/>
    <workgroup>httpbis</workgroup>
    <keyword>internet-draft</keyword>
    <abstract>
      <?line 40?>

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

<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 instructs HTTP intermediaries to begin forwarding the HTTP message
downstream before receiving the complete message.</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.  There is just one valid value, which is of
type Boolean: "?1".</t>
      <artwork><![CDATA[
Incremental = ?1
]]></artwork>
      <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 body 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>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 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>The Incremental field is advisory. 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 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 instructs
intermediaries to 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>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>When receiving an incremental request, intermediaries might reject the request
due to security concerns. The following subsections explore typical scenarios
under which the intermediaries might reject requests.</t>
      <section anchor="permanent-rejection">
        <name>Permanent Rejection</name>
        <t>Some intermediaries inspect the payload 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,
so these intermediaries need to reject requests unless the entire message is
received.</t>
        <t>When an intermediary rejects an incremental message -- either a request or a
response -- due to security concerns with regard to the payload that the message
might convey, 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>
        <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="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-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="February" year="2021"/>
            <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 that wish to use a common syntax that is more restrictive than traditional HTTP field values.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8941"/>
          <seriesInfo name="DOI" value="10.17487/RFC8941"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative 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="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="13" month="September" year="2025"/>
            <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-06"/>
        </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 261?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
xH8B3DDEg3kjAAA=

-->

</rfc>
