Visual RFC.
ALL RFCs / RFC 8336
Read the RFC ↗
RFC 8336 / HTTP/2 ORIGIN

Initialize, extend and shrink the Origin Set

03

The Origin Set is per connection. The first successfully processed ORIGIN initializes it; later entries add members and 421 responses can remove one.

RFC 8336 · § 2.3EXAMPLE
5 / 5
05
A 421 response removes its request origin.

A 421 response to a request for https://img.example removes that origin if present. a.example and api.example remain. This is per-connection state, not a global ban.

Initialize, extend and shrink the Origin SetA 421 response to a request for https://img.example removes that origin if present. a.example and api.example remain. This is per-connection state, not a global ban.421 removes one request originClient’s per-connection Origin Set421 for https://img.exampleRemove that request origin, if presentInitialized · membership onlyhttps://a.examplehttps://api.examplea.example and api.example remain

Source for this drawing: RFC 8336 · Read RFC section 2.3 ↗

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

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

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

An empty frame initializes; a later frame adds rather than replaces.

  • Before initialization, ordinary HTTP/2 coalescing rules apply. This state is not an initialized empty set.
  • The initial origin uses https, lower-case TLS Server Name Indication (SNI), and the actual remote port. If SNI is absent, the remote IP address is used.
  • Parse each ASCII-Origin as an ASCII origin serialization. A field that fails parsing MUST be ignored; continue with other entries. Wildcard names are not supported in entries.
  • Subsequent ORIGIN frames incrementally add members. On 421 (Misdirected Request), clients MUST remove the corresponding request origin from this connection’s set, if present.
DETAILS

RFC 6454 § 6.2 supplies ASCII serialization. The executable teaching subset handles prepared canonical HTTPS names and selected invalid fields; it is not a complete origin/IDNA/IPv 6 parser. Offline fictional examples only. The illustrations assume certificate-check results; they do not perform those checks. MUST, SHOULD and MAY retain their RFC meanings; SHOULD exceptions require carefully weighing the implications.

Read the RFC section ↗

All chapters in RFC 8336

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 ↗