Skip to content

Post 10: HTTP/2: Multiplexing, HPACK & Server Push #51

Description

@honeycoder96

Epic: #15
Block: 6 — HTTP
Series order: 10 of 18

Description

The 2015 redesign of HTTP that solved head-of-line blocking at the application layer — introducing binary framing, stream multiplexing, and header compression.

Key topics

  • Why HTTP/1.1 needed a redesign: HOL blocking, header verbosity, no prioritisation
  • Binary framing layer: HTTP/2 messages as frames, not text
  • Streams, messages, and frames: the three-level hierarchy
  • Multiplexing: many concurrent logical streams over a single TCP connection
  • Stream prioritisation and dependency trees
  • HPACK header compression: static table, dynamic table, Huffman encoding — why headers went from ~800 bytes to ~50 bytes
  • Server Push: proactively sending resources the browser hasn't asked for yet
  • The remaining problem HTTP/2 didn't solve: TCP-level HOL blocking (motivation for HTTP/3)

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions