2. 2 / 16
What the fu in the world
is going on SPDY?
● Binary protocol
● Developed by Google
● Transport layer for HTTP
● Works over TLS
– proxy transparency
3. 3 / 16
A long time ago in a galaxy far,
far away....
● Simple sites, light pages
– no CSS, no JavaScript
– a few graphics
● Slow clients, low capacity last miles
p.s. http://wayback.archive.org/
4. 4 / 16
The world is changing
● Broadband internet connections
● Fat pages
● Browser arms race
● Hard-to-please customers
5. 5 / 16
What Is to Be Done?
● Metrics: RTT, TTFB
● Browser caching
● Keepalive, pipelining
● JS/CSS catenation, sprites, inlining,
data URI scheme
● Async loading, AJAX
● Domain sharding
● Proxying, CDN
9. 9 / 16
HTTP headers compression
● Zlib
● Dictionary
● CRIME
- zero compression level
- zlib hack
- new algorithm in SPDY/4
10. 10 / 16
Lulz
● Partial alignment
● 24 bits for all headers, but 32 bits for
every header name and value
● Blowing hot & cold with priority
● Mistakes in comp. dictionary
● Chrome flow control fail
11. 11 / 16
To be or not to be?
● HTTPS ready
● Lot of external resources per page
● Big RTT
● Stats from WordPress:
– faster than HTTPS,
– but slower than plain HTTP
12. 12 / 16
SPDY in NGINX
● Sponsored and tested by Automattic
– WordPress, Gravatar
– Wordpress.com: 70 000 rps, 15+ Gbit/sec
● Timeline
– March 2012: the work has started
– 15 June: first public release
– 18 August: last stable version
13. 13 / 16
Results
SPDY Server Survey Nginx
9% Google
4000
Apache
3500
Other
3000
SPDY domains
2500
2000
1500
1000
500
0
May October
89%