Visual RFC.
ALL RFCs / RFC 9211
Read the RFC ↗
RFC 9211 / HTTP CACHE-STATUS

Report collapsed requests and storage

04

Several waiting requests can share one forward request, but reuse can also fail.

RFC 9211 · § 2.6EXAMPLE
4 / 4
Report collapsed requests and storageRequestA and requestB are separate waiting requests at the same cache. A starts one forward request; B joins that pending request without a new send. Eligible response from next hop is delivered to both and stored, reporting fwd plus collapsed and stored true for B. Separate failure case starts a new forward request for B and eventual response reports collapsed false; no implication that final HTTP response failed.One forward request can serve several waitersRequest ARequest BCacheNext hopB still needs a responsenew request BSeparate failed-sharing case · new request neededEdgeCache; fwd=uri-miss; collapsed=?0Report after new request completes · false ≠ HTTP error
04
Make a new request when the shared result cannot be reused.

Separate B case: the attempted sharing did not yield a usable response for B, so a new forward request is made. After that request completes, the resulting response reports collapsed=?0. This resets the earlier success example.

Source for this drawing: RFC 9211 · Read RFC section 2.6 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

A request starts a conversation.

A client asks for a resource. A server sends a response. The method, address, headers, and status explain what that conversation means.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

KEY POINT

collapsed reports whether sharing succeeded, not whether forwarding disappeared.

  • A cache can combine concurrent requests into one forward request. collapsed is a Boolean meaningful only when fwd is present.
  • collapsed true means the response was successfully reused for requests combined together. If an attempted collapse fails, collapsed=?0 reports that a new request had to be made. If absent, the request was not collapsed with others.
  • In Structured Fields parameter syntax, bare ;collapsed and ;stored serialize true. ?0 explicitly represents false. These are Booleans, not text strings such as "true".
  • stored reports whether the resulting response was stored. Collapsing and storage are separate: a report can contain fwd, collapsed and stored together.
  • Concurrent request labels A/B identify two fictional requests, not users or credentials. The example omits detailed eligibility checks; sharing must still satisfy HTTP caching rules.
DETAILS

The absent/true/false cases are distinct. A failed collapse is not an HTTP failure code or proof that the final request failed; it says sharing could not satisfy that request.

Read the RFC section ↗

All chapters in RFC 9211

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗