Frames and streams express exchanges
HTTP/2 uses frame types such as HEADERS for fields, DATA for content and SETTINGS for connection control. A request-response exchange has its own stream, allowing frames from multiple exchanges to interleave on one connection.
Resources, methods, statuses and field semantics remain HTTP concepts. Binary framing does not automatically change an operation’s meaning, cache behavior or account authorization rules.
References: [1]
Field compression maintains connection state
HPACK represents repeated fields using static and dynamic tables and optionally a fixed Huffman code for literals. A field block can depend on prior compression state rather than being an independent compressed file.
Field blocks can span HEADERS and CONTINUATION frames under strict connection-order rules. Multiplexing does not permit arbitrary frame interleaving inside such a block; both peers must reconstruct the same field sequence and compression state.
Two flow-control levels and TCP blocking
HTTP/2 flow-controls each stream and the whole connection, replenishing credit with WINDOW_UPDATE. In the base specification only DATA consumes these windows; control frames do not consume that same credit. Receive-resource protection differs from TCP congestion control.
All HTTP streams still share TCP’s ordered byte stream. A loss can delay bytes for other exchanges while the gap is repaired. Multiplexing enables concurrency without eliminating every form of head-of-line blocking or guaranteeing faster results for all workloads.