Intro to HTTP/2

Rocket emoji

SKG Node.js - Sep 2016

sirodoht

HISTORY

1991 - HTTP/0.9


						GET /index.html
    			
  • No header
  • Only GET
  • Response is bare HTML

1996 - HTTP/1.0

  • POST and HEAD
  • Response formats for images, video, text, etc
  • Headers
  • Status codes
  • Caching
  • Basic Auth
  • ...

1996 - HTTP/1.0


GET / HTTP/1.0
Host: sirodoht.xyz
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5)
Accept: */*
					

HTTP/1.0 200 OK
Content-Type: text/plain
Content-Length: 137582
Expires: Thu, 05 Dec 1997 16:00:00 GMT
Last-Modified: Wed, 5 August 1996 15:55:28 GMT
Server: Apache 0.84
					

1999 - HTTP/1.1

  • PUT, PATCH, OPTIONS, DELETE
  • Persistent Connections
  • Pipelining
  • Chunked Transfers
  • Digest and Proxy Authentication
  • ...

2009 - SPDY

  • by Google
  • Stepping stone to HTTP/2

Enter HTTP/2

🙌

Binary

Frames & Streams

Multiplexed

HPACK
Header Compression

Server Push

Priority

Pseudo Headers

TLS

Reading

Questions?

Thank you!

sirodoht.xyz/http2-intro
Background photos by SpaceX under CC0