Visual RFC.
ALL RFCs / RFC 9000
Read the RFC ↗
RFC 9000 / MECHANISMS

Limit data and stream counts

04

A receiver advertises absolute byte limits for each stream and the whole connection, plus separate stream-count limits.

Related RFCs and changes

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

DIAGRAM§ 4.1 ↗
RFC 9000 · § 4.1EXAMPLE
3 / 3
Limit data and stream countsTwo byte-limit rows expose the connection bottleneck and then visibly extend its boundary.ILLUSTRATIVE ABSOLUTE BYTE LIMITSStream limit: 801234567Connection credit raised01234567already usedMAX_DATA increases connection allowanceMAX_STREAMS separately limits opened streamsOffsets are examples, not default protocol limits
03
Advertise new credit.

A larger MAX_DATA value lets already-permitted stream data continue.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

Credit limits new data, not retransmission of the same bytes.

  • MAX_STREAM_DATA raises a stream’s byte-offset limit; MAX_DATA raises the connection-wide data limit.
  • Endpoints must not send new data beyond either applicable limit.
  • MAX_STREAMS limits how many streams of a type the peer can open; it is not a byte allowance.
DETAILS

A receiver decides when to increase limits. Congestion control is a further network constraint, specified in RFC 9002.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. Streams progress independently
  2. Stream IDs describe direction
  3. Establish a protected connection
  4. Limit data and stream counts
  5. Recover data, not packets
  6. Move a connection to a new path
RFC 9700 / CHAPTERS

Chapters

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

RFC status and corrections ↗