+ - 0:00:00
Notes for current slide
Notes for next slide

HTTP/2 for data networking

Michael Jaser
Peerigon GmbH
@mmeaku

1 / 28

Motivation

2 / 28

3 / 28

4 / 28

5 / 28

6 / 28

How does this affect internet users worldwide?

7 / 28

But how about the US / Europe / ...

8 / 28

Latencies

9 / 28

HTTP/2

10 / 28
  • HTTP/1.1 was standardized in 1997 (20 years ago!)
  • the web changed a lot
  • too many workarounds (i.e. domain sharding)
  • started as SPDY
  • standardized 2015
11 / 28

Browser Support

12 / 28

Features

13 / 28

Header Compression

  • we use many headers
  • headers are always sent with the request
  • we already compress the body
  • let's just compress headers too!
14 / 28

Head of line blocking

  • max 6 concurrent connections per domain
  • wait for response before dispatching next request
  • Workaround: Domain sharding i.e. img.peerigon.com
15 / 28

Connection multiplexing

  • connections are expensive
  • Goal: a single connections per origin
  • Requests are multiplexed => cheap request :)
  • no more HOL
16 / 28

HTTP/1.1

17 / 28

HTTP/2

18 / 28

Binary transfer / Streams

  • binary transfer instead of ASCII
  • simpler implementation, easier to multiplex using streams
19 / 28

Server Push

  • ability to provide data for the client in advance
  • i.e. if you request index.html, the server sends style.css too
  • loaded only if the client approves (loads the ressource)
  • not like websocket "push"
20 / 28

Encryption by default

  • not officially in the spec
  • implemented as SSL only by all Browsers
21 / 28

Impact on data networking

22 / 28

HTTP/2?

  • sending multiple requests is not a big deal anymore (i.e. polling, REST)
  • workarounds are antipatterns now, i.e. domain sharding
23 / 28

Possible "transports"

24 / 28

Comparison: Fetch

25 / 28

Comparison: Push

26 / 28

Thinks to consider

  • WebSockets are not supported within a ServiceWorker
  • WebSockets can't reuse an existing HTTP/2 connection
  • Streams spec and fetch are your friend
  • A single connection is what you want :)
27 / 28

Thank you

28 / 28

Motivation

2 / 28
Paused

Help

Keyboard shortcuts

, , Pg Up, k Go to previous slide
, , Pg Dn, Space, j Go to next slide
Home Go to first slide
End Go to last slide
b Toggle blackout mode
f Toggle fullscreen mode
c Clone slideshow
p Toggle presenter mode
w Pause/Resume the presentation
t Restart the presentation timer
?, h Toggle this help
Esc Back to slideshow