HTTP/2 priorities
summary
Shows actual failures and fixes: a Cloudflare proxy change initially breaks prioritization then is fixed; a WebPageTest prioritization test (use 3G fast and Network Link Conditioner) finds only nine CDNs implement HTTP/2 prioritization correctly while many big clouds including CloudFront are broken; explains root causes—server send buffers, buffer bloat, and congestion control—and prescribes using TCP_NOTSENT_LOWAT and BBR, packet-level shaping, and correct server implementations to make prioritization work.
AI-written summary · about
chapters (29)
- 0:00Intro
- 1:45Basic Parser Rules
- 2:48Late-Discovered Resources
- 4:33(Simplified) Example
- 5:06Optimal Script Loading
- 5:55Optimal Loading
- 9:25Worst-Case
- 10:26HTTP/2 Prioritization
- 14:29Safari - Weighted
- 15:17Edge (classic)
- 16:20Cross-connection prioritization
- 17:13Prioritizing across connections
- 18:25Ryan Townsend @Ryan Townsend
- 19:07HTTP/2 Connection coalescing
- 23:36Testing for prioritization
- 28:54The Good
- 29:06The Bad X
- 29:24The Ugly (cloud load balancers)
- 33:42Performance Monitoring
- 37:12Over-buffering (TCP)
- 37:39TCP_NOTSENT_LOWAT
- 42:43Upstream Buffers
- 43:26Upstream Limits
- 43:45Server HTTP/2 implementations
- 44:10What to do?
- 44:47Linux
- 44:58Server-initiated prioritization
- 45:44HTTP/3 (and QUIC)
- 46:44HTTP/3 Prioritization?
related talks
42mResource loading, prioritization, HTTP/2 - oh my!
51mResource Loading at the Cutting Edge
01h 00mHTTP/2 : What you need to know
01h 27mHTTP/2 for the Web developer
01h 00mHTTP/2 - The future of the web today
19mHTTP/2 is here, now let's make it easy
47mHTTP 2.0 from the Developer's Viewpoint
18mThe Route to HTTP/2
