2.
Daniel Stenberg, May 6th
2015
HTTP Today
HTTP/2 basics
Status
Future
Q&A
3.
Daniel Stenberg, May 6th
2015
Daniel Stenberg
Email: daniel@haxx.se
Twitter: @bagder
Web: daniel.haxx.se
Blog: daniel.haxx.se/blog
network hacker at
4.
Daniel Stenberg, May 6th
2015
Please ask!
… just maybe everything isn't crystal clear at once.
5.
Daniel Stenberg, May 6th
2015
Internet Today
HTTP for everything
The web has changed significantly since 1996
6.
Daniel Stenberg, May 6th
2015
Request and payload growth
in 4 years...
7777
100100
725K725K
1900K1900K
httparchive.org
7.
Daniel Stenberg, May 6th
2015
Roundtrip Bonanza
8.
Daniel Stenberg, May 6th
2015
connections per page
38
httparchive.org
9.
Daniel Stenberg, May 6th
2015
Latency adds up
4,000 ms
750 ms
Page
load
time
Round
trip
time0 ms 240 ms
MikeBelshe
10.
Daniel Stenberg, May 6th
2015
Head of line blocking
11.
Daniel Stenberg, May 6th
2015
HTTP 1.1
workarounds
12.
Daniel Stenberg, May 6th
2015
SpritingSpriting
13.
Daniel Stenberg, May 6th
2015
Inlining
.icon1 {
background: url(data:image/png;base64,<data>) no-repeat;
}
.icon2 {
background: url(data:image/png;base64,<data>) no-repeat;
}
14.
Daniel Stenberg, May 6th
2015
Concatenation
$ cat *.js > single-monster.js
19.
Daniel Stenberg, May 6th
2015
“Just a new framing layer”
maintains HTTP paradigms
http:// and https:// URLs cannot be changed
HTTP/1.1 servers and clients will be around for
decades
Proxies must be able to convert 1:1
Less optional parts
No more minor version!
20.
Daniel Stenberg, May 6th
2015
Binary
•No more telnet tricks
•Easier framing
•TLS and compression anyway...
•Wireshark inspector
•A handful set frame types, like HEADERS and DATA
21.
Daniel Stenberg, May 6th
2015
Multiplexed (1/2)
•Multiple streams over a single physical connection
•Max number of parallel streams set by peer
22.
Daniel Stenberg, May 6th
2015
Multiplexed (2/2)
23.
Daniel Stenberg, May 6th
2015
Better utilization of bandwidth
24.
Daniel Stenberg, May 6th
2015
Header compression
•HTTP headers are big and are growing
•HTTP 1 had no header compression
•TCP slow start and initial window size
•Headers are notoriously repetitive
•Cookies
•HPACK
•Not a CRIME victim
•Padding
25.
Daniel Stenberg, May 6th
2015
Streams
Dynamic priority
Flow control
AA
BB CC
Dependencies
26.
Daniel Stenberg, May 6th
2015
Server push
Give me HTML please!
Here's HTML for you
Here's CSS for you
27.
Daniel Stenberg, May 6th
2015
Stricter TLS
TLS version 1.2+ only
Stricter cipher suite requirements
No renegotiations
28.
Daniel Stenberg, May 6th
2015
HTTP/2 is not
Mandatory TLS
Changing HTTP headers
29.
Daniel Stenberg, May 6th
2015
How will HTTP/2 affect users?
Faster page loads
More responsive loading
More HTTPS
30.
Daniel Stenberg, May 6th
2015
How will HTTP/2 affect web development?
HTTP/1 work-arounds hurt HTTP/2 perf
Need to do separate tweaks
Optimal HTTP/2 usage will need some time
32.
Daniel Stenberg, May 6th
2015
Will HTTP/2 get widely deployed?
“Look at IPv6”
SPDY proved fast growth can happen
Major browsers are on the train
Many sites already did SPDY - likely to go
HTTP/2
33.
Daniel Stenberg, May 6th
2015
Schedule
Firefox 35 – enabled by default January 13th
Chrome 40 – enabled by default January 21st
IESG approved on February 18th
HTTP/2 final RFC in Q2 2015 ?
34.
Daniel Stenberg, May 6th
2015
HTTP/2 – May 6th
2015
All browser support seen so far only over HTTPS
Firefox: HTTP/2 in 10%of all HTTP responses1
HTTP/2 is used 10 times more than HTTP/1.0
Google: HTTP/2 used in 18% of global traffic2
HTTP/2 is supported by 44% of browsers in use right now
IPv6: 6.6% today, almost 20 years after first RFC3
1. Rough and not statistically sound numbers from Mozilla Telemetry data for Firefox 36.
2. Rough and rapidly changing numbers in an evolving climate. Graciously provided by Google.
3. https://www.google.com/intl/en/ipv6/statistics.html
35.
Daniel Stenberg, May 6th
2015
Browser support
http://caniuse.com/#feat=http2
36.
Daniel Stenberg, May 6th
2015
My tealeaves tell me...
http://daniel.haxx.se/blog/2015/03/31/the-state-and-rate-of-http2-adoption/
10% at end of 2015
37.
Daniel Stenberg, May 6th
2015
Future
HTTP/2 lays the foundation for the future
Time to drop legacy HTTP “mistakes”?
HTTP/3 can happen faster
QUIC
The HTTP Workshop (Münster, 27-30 July 2015)
https://httpworkshop.github.io/
38.
Daniel Stenberg, May 6th
2015
Final recap
Binary and multiplexed
Primarily over TLS
Users won't see a 2 anywhere
It's already here
39.
Daniel Stenberg, May 6th
2015
Thank you!
See also http2 explained
http://daniel.haxx.se/http2
40.
Daniel Stenberg, May 6th
2015
Doing good is part of our code
41.
Daniel Stenberg, May 6th
2015
Credits
✗
HTTP and TCP trend numbers from
http://httparchive.org
✗
RTT / page load data from Mike Belshe
✗
HTTP/2 usage numbers by Google and Firefox
Telemetry
✗
Lego pieces borrowed from my kids
42.
Daniel Stenberg, May 6th
2015
License
This presentation and its contents are licensed under
the Creative Commons Attribution 4.0 license:
http://creativecommons.org/licenses/by/4.0/
Il semblerait que vous ayez déjà ajouté cette diapositive à .
Créer un clipboard
Vous avez clippé votre première diapositive !
En clippant ainsi les diapos qui vous intéressent, vous pourrez les revoir plus tard. Personnalisez le nom d’un clipboard pour mettre de côté vos diapositives.
Créer un clipboard
Partager ce SlideShare
Vous avez les pubs en horreur?
Obtenez SlideShare sans publicité
Bénéficiez d'un accès à des millions de présentations, documents, e-books, de livres audio, de magazines et bien plus encore, sans la moindre publicité.
Offre spéciale pour les lecteurs de SlideShare
Juste pour vous: Essai GRATUIT de 60 jours dans la plus grande bibliothèque numérique du monde.
La famille SlideShare vient de s'agrandir. Profitez de l'accès à des millions de livres numériques, livres audio, magazines et bien plus encore sur Scribd.
Apparemment, vous utilisez un bloqueur de publicités qui est en cours d'exécution. En ajoutant SlideShare à la liste blanche de votre bloqueur de publicités, vous soutenez notre communauté de créateurs de contenu.
Vous détestez les publicités?
Nous avons mis à jour notre politique de confidentialité.
Nous avons mis à jour notre politique de confidentialité pour nous conformer à l'évolution des réglementations mondiales en matière de confidentialité et pour vous informer de la manière dont nous utilisons vos données de façon limitée.
Vous pouvez consulter les détails ci-dessous. En cliquant sur Accepter, vous acceptez la politique de confidentialité mise à jour.