Visual RFC.
ALL RFCs / RFC 8441
Read the RFC ↗
RFC 8441 / WEBSOCKETS ON HTTP/2

Wait for server opt-in

01

A server setting enables Extended CONNECT on new streams. A client must learn that support before using the extension.

RFC 8441 · § 3EXAMPLE
4 / 4
Wait for server opt-inThe connection initially has enable-connect value zero. The server sends setting code0x8 value1 to the client, allowing Extended CONNECT on new streams. A separate later example attempts a forbidden1-to-0 setting send and stops at the sender. No valid rollback or universal receiver error code is illustrated.Receive permission before opening the streamClient stackHTTP/2 serverSeparate invalid-send exampleAttempt to send 0 after 1Sender previously sent 1MUST NOT send 0 nowValue must be 0 or 1; rollback is forbidden
04
Do not send zero after sending one.

Separate invalid-send example: the same sender previously sent 1 and now attempts 0. MUST NOT applies at the sending gate; no valid rollback packet is delivered.

Source for this drawing: RFC 8441 · Read RFC section 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.

Terms in this drawing
Setting
A connection-level HTTP/2 parameter exchanged by the protocol stacks.
Stream
An individually identified exchange within one HTTP/2 connection.
Pseudo-header
A protocol-defined HTTP/2 field whose name begins with a colon.
Related RFCs and changes

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

KEY POINT

A shared connection needs an explicit opt-in.

  • SETTINGS_ENABLE_CONNECT_PROTOCOL has code 0x8, initial value 0, and a value that MUST be either 0 or 1.
  • After receiving value 1, a client MAY use Extended CONNECT when creating new streams. This is permission, not an obligation or proof of application access.
  • A sender MUST NOT send value 0 after it previously sent value 1. Receipt of the setting by a server has no impact.
DETAILS

The final state is a separate forbidden-setting example, not a valid rollback. An unsupported peer would regard an unnegotiated Extended CONNECT as malformed. No new universal rejection status or setting-reset algorithm is invented.

Read the RFC section ↗

All chapters in RFC 8441

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 ↗