Q29: How does HTTP/2 multiplexing differ from HTTP/1.1 keep-alive in Node.js?

In HTTP/1.1 with persistent connections (keep-alive), requests over a single TCP connection must be served sequentially (head-of-line blocking). HTTP/2 uses binary framing to split messages into independent frames transmitted over a single TCP socket concurrently (multiplexing). The Node.js http2 core module supports stream prioritization, server push, and header compression (HPACK), allowing hundreds of concurrent requests without opening multiple parallel TCP connections.

Key Takeaways
  • HTTP/1.1 causes head-of-line blocking by queueing requests sequentially on a connection.
  • HTTP/2 multiplexing sends interleaved binary frames over a single TCP connection simultaneously.
Knowledge Check

Which HTTP/1.1 issue is directly eliminated by HTTP/2 multiplexing?