6. Frame Definitions
This section defines all frame types used in HTTP/2.
Frame Types
| Frame Type | Code | Description |
|---|---|---|
| DATA | 0x0 | Conveys arbitrary, variable-length sequences of octets |
| HEADERS | 0x1 | Opens a stream and carries header block fragment |
| PRIORITY | 0x2 | Specifies sender-advised priority of a stream |
| RST_STREAM | 0x3 | Terminates a stream immediately |
| SETTINGS | 0x4 | Conveys configuration parameters |
| PUSH_PROMISE | 0x5 | Notifies peer of sender's intent to initiate stream |
| PING | 0x6 | Mechanism for measuring round-trip time |
| GOAWAY | 0x7 | Initiates shutdown of connection |
| WINDOW_UPDATE | 0x8 | Implements flow control |
| CONTINUATION | 0x9 | Continues a sequence of header block fragments |
6.1 DATA
DATA frames convey arbitrary, variable-length sequences of octets associated with a stream.
6.2 HEADERS
HEADERS frames are used to open a stream and carry a header block fragment.
6.3 PRIORITY
PRIORITY frames specify the sender-advised priority of a stream.
6.4 RST_STREAM
RST_STREAM frames allow for immediate termination of a stream.
6.5 SETTINGS
SETTINGS frames convey configuration parameters that affect how endpoints communicate.
Settings Parameters:
- SETTINGS_HEADER_TABLE_SIZE (0x1)
- SETTINGS_ENABLE_PUSH (0x2)
- SETTINGS_MAX_CONCURRENT_STREAMS (0x3)
- SETTINGS_INITIAL_WINDOW_SIZE (0x4)
- SETTINGS_MAX_FRAME_SIZE (0x5)
- SETTINGS_MAX_HEADER_LIST_SIZE (0x6)
6.6 PUSH_PROMISE
PUSH_PROMISE frames are used to notify the peer that the sender intends to initiate a stream.
6.7 PING
PING frames are a mechanism for measuring a minimal round-trip time from the sender.
6.8 GOAWAY
GOAWAY frame is used to initiate shutdown of a connection or to signal serious error conditions.
6.9 WINDOW_UPDATE
WINDOW_UPDATE frame is used to implement flow control.
6.10 CONTINUATION
CONTINUATION frames are used to continue a sequence of header block fragments.