SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
HTTP/2 and a faster Web
InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
http://www.infoq.com/presentations
/http2-linkedin
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Presented at QCon San Francisco
www.qconsf.com
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Omer Shapira
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Content Slides
LinkedIn Presentation Template
3
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 LinkedIn
 Bandwidth vs. Latency
 Challenges with HTTP/1
 What is HTTP/2
 How the game changes
 How LinkedIn adopts HTTP/2
Agenda
What to expect before beers
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Social network for business
 Founded in 2002
 300M+ users
 200 countries
 Users first
Speed matters
Who we are and what we do
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 How do we measure the Internet
speed?
 Trains vs. cars
 Bandwidth vs. latency
Let’s talk about speed
What’s speed, anyway?
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Bandwidth is analogous to
number of cars on a train
 Adding bandwidth is expensive
– but simple
 Typically sold as “speed”
 Matters for streaming
 Bandwidth does not matter
that much for web or mobile
Let’s talk about bandwidth
One bazzillion MBps for $4.99 a month + VAT
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Shorten the pipe
 Or move faster
 Speed of light is a hard limit
 Decreasing latency is hard and
sometimes impossible
Let’s talk about latency
Latency: time it takes for the server to receive and process request
for a page object
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 100ms – user perceives as instantaneous.
 1s – is about the upper limit of human flow of thought. User loses the
feeling direct feedback.
 10s – upper limit of attention. Feedback is important, and the chance of
context switch is high.
Source: Nielsen Norman Group
Important latency limits
No one will advertise latency
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Route Distance
(km)
Time in vacuum
(ms)
Time in fiber
(ms)
TCP handshake in
fiber (ms)
NYC to SF 4148 14 21 63
NYC to London 5585 19 28 84
NYC to Sydney 15993 53 80 240
Reality check
Signal latency in vacuum and in fiber
10
Source: High Performance Browser Networking
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Low latency
 High bandwidth
 …
 PROFIT!
Fast Internet
Short latencies, high bandwidth, opportunities
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
In reality
Not all latencies are the same
12
 Network latency
– DNS resolution
– SSL/TLS negotiation
– Last mile latency typically
adds 40ms
 Browser latency
– DOM/CSSOM latency
– Render tree construction
– Blocking wait for
connection
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Browser latency: what’s up there?
No rendering until the tree grows
13
Source: Critical Rendering Path
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
HTTP/1 challenges
Things to consider during migration
14
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Mimics interactions between a person and a newspaper
– Reading a page takes time.
– Transferring text is easy
– Single browser window
Let’s talk about HTTP
Long latencies, low bandwidth, lots of client time
15
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Hyper TEXT transfer protocol
In reality we mostly transfer images
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Challenges with HTTP
The protocol is getting obsolete
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Challenges with HTTP
Congestion Control
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Challenges with HTTP
6 requests in flight, the rest wait…
Once all threads are used,
the browser blocks the next request…
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Shard1.static.company.com
 …
 ShardX.static.company.com
 X times the connections
 BUT
– X times the SSL negotiation
– X times nascent connections
– X times “half closed” connections…
Domain sharding to the rescue?
6 requests per shard
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Content is not requested until the base page is parsed
Challenges with HTTP
Head of line latency
Head of line latency
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Headers are transmitted with every request
 But some of the headers need to be only transferred once
– Accepts-Encoding
 Headers are never compressed
 Can add extra hop
Challenges with HTTP
Headers are never compressed
Server sent 914 bytes to
transfer 57 bytes of response.
This is 15x overhead
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
HTTP/2 approach
A new perspective
23
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
SPDY – a new beginning
Foundations for HTTP/2
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Starts with NPN negotiation (optionally with HTTP upgrade)
 If both server and browser support SPDY, they switch to SPDY
Overview of HTTP/2
Drop in replacement, transparent for webdevs and SWEs
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Single connection is maintained between browser and server
 Congestion window grows, increasing utilization of the network
 Unlimited resources in flight – browser is not blocked
Overview of HTTP/2
Multiplexing instead of thread pools/domain sharding
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Negotiated over SSL (NPN/ALPN) or as HTTP upgrade
 Transport layer security (always in SPDY, optional in HTTP/2)
 Compression (including headers)
Overview of HTTP/2
Based on SSL/TLS
27
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Server can speculatively push resources to client before base page has
been parsed
 Resources can be reused between pages through the browser cache.
Overview of HTTP/2
Server push
28
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Explicit headers are eliminated
 Headers are further
compressed
Overview of HTTP/2
Header elimination and compression
29
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
HTTP/2 changes the game
Things to consider during migration
30
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 chrome –enable-spdy4
 IE 11
 Firefox 34
 Safari…
It is (mostly) here
Chrome, Firefox, IE with Safari to follow
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Domain sharding
 Inlining
 Spriting
HTTP/1 best practices…
Chrome, Firefox, IE with Safari to follow
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Domain sharding
– Breaks HTTP/2 prioritization etc
– Requires multiple SSL/TLS handshake
– Nascent connections break TCP flow control
 We are looking for a single connection per domain
 Tip: use altName to map multiple domains to
same SSL certificate
– Single HTTP/2 connection, multiple connections for
HTTP/1
Domain sharding – slows HTTP/2 down
Chrome, Firefox, IE with Safari to follow
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Inlining != DRY
 Instead of inlining resources, modularize
codebase and utilize Server Push
 SP places object into browser cache
 Tombstone records to invalidate cache
Inlining – wastes bandwidth
Chrome, Firefox, IE with Safari to follow
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Recall browser latency graph
 DOM and CSOM are required for rendering
 Prioritize JS and CSS over images
Control head-of-line latency
Chrome, Firefox, IE with Safari to follow
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Transition from HTTP/1 to HTTP/2
 Innovation possibilities
 Hybrid models
New challenges
HTTP/2 simplifies delivery, opens new challenges
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Putting SPDY to work at LinkedIn
So what?
37
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Anatomy of a page
One base page and tons of static content
38
Base page
Static
Content
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
LinkedIn network stack
Or rather non-planar graph
39
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Distribute the content around
the globe
 Make the web pretty fast by
shortening the pipes
CDNs
Blazing fast, ubiquitous and not flexible
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
There is a CDN edge near you
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Can we beat CDNs locally?
Let’s use science to experiment!
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Profile page is better across the
board
 Homepage is better for regions
closer to ECH
Comparing SPDY with CDN - results
Results Benefits of SPDY increased with
for regions close to the PoP
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
LinkedIn network stack
Overly simplified
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
LinkedIn network stack
Pushing the CDN aside
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Static content vs. base pages – round 2
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
Combining HTTP/2 with CDNs
Deploy HTTP/2 stacks around the globe
Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.
 Modern CDNs do pretty good job accelerating HTTP
 HTTP/2 accelerates web content delivery further
 Serving static content through HTTP/2 accelerates LinkedIn page
 In the long run, CDNs will support HTTP/2. This will make the web faster
for everybody.
Bottom line
HTTP/2 makes web faster; so do CDNs
Questions
We are hiring
Watch the video with slide synchronization on
InfoQ.com!
http://www.infoq.com/presentations/http2-
linkedin

Weitere ähnliche Inhalte

Was ist angesagt?

NetCache Accelerates Web Servers
NetCache Accelerates Web ServersNetCache Accelerates Web Servers
NetCache Accelerates Web Serverswebhostingguy
 
HTTPS presentation at Port80 Sydney meetup March 2016
HTTPS presentation at Port80 Sydney meetup March 2016HTTPS presentation at Port80 Sydney meetup March 2016
HTTPS presentation at Port80 Sydney meetup March 2016Jason Stangroome
 
Getting Started with WebSockets and Server-Sent Events
Getting Started with WebSockets and Server-Sent EventsGetting Started with WebSockets and Server-Sent Events
Getting Started with WebSockets and Server-Sent EventsArun Gupta
 
Internet Services
Internet ServicesInternet Services
Internet Servicestalha8m
 
Introduction to web technology
Introduction to web technologyIntroduction to web technology
Introduction to web technologyVARSHAKUMARI49
 
BrightonSEO Sep 2015 - HTTPS | Mark Thomas
BrightonSEO Sep 2015 - HTTPS | Mark Thomas BrightonSEO Sep 2015 - HTTPS | Mark Thomas
BrightonSEO Sep 2015 - HTTPS | Mark Thomas Anna Morrison
 

Was ist angesagt? (11)

NetCache Accelerates Web Servers
NetCache Accelerates Web ServersNetCache Accelerates Web Servers
NetCache Accelerates Web Servers
 
HTTPS presentation at Port80 Sydney meetup March 2016
HTTPS presentation at Port80 Sydney meetup March 2016HTTPS presentation at Port80 Sydney meetup March 2016
HTTPS presentation at Port80 Sydney meetup March 2016
 
Web services
Web servicesWeb services
Web services
 
Web server for cbse 10 FIT
Web server for cbse 10 FITWeb server for cbse 10 FIT
Web server for cbse 10 FIT
 
Introduction About PHP
 Introduction About PHP Introduction About PHP
Introduction About PHP
 
HTML5 ADEO
HTML5 ADEOHTML5 ADEO
HTML5 ADEO
 
Getting Started with WebSockets and Server-Sent Events
Getting Started with WebSockets and Server-Sent EventsGetting Started with WebSockets and Server-Sent Events
Getting Started with WebSockets and Server-Sent Events
 
HTTP & HTTPS
HTTP & HTTPSHTTP & HTTPS
HTTP & HTTPS
 
Internet Services
Internet ServicesInternet Services
Internet Services
 
Introduction to web technology
Introduction to web technologyIntroduction to web technology
Introduction to web technology
 
BrightonSEO Sep 2015 - HTTPS | Mark Thomas
BrightonSEO Sep 2015 - HTTPS | Mark Thomas BrightonSEO Sep 2015 - HTTPS | Mark Thomas
BrightonSEO Sep 2015 - HTTPS | Mark Thomas
 

Andere mochten auch

Gráfico diario del ibex 35 para el 28 01 2013
Gráfico diario del ibex 35 para el 28 01 2013Gráfico diario del ibex 35 para el 28 01 2013
Gráfico diario del ibex 35 para el 28 01 2013Experiencia Trading
 
Informativo nº 15 3º basico a- 06 de junio de 2014
Informativo nº 15  3º basico a- 06 de  junio de 2014Informativo nº 15  3º basico a- 06 de  junio de 2014
Informativo nº 15 3º basico a- 06 de junio de 2014Colegio Camilo Henríquez
 
Mother's Day
Mother's DayMother's Day
Mother's DayxShadowz
 
ContiIceContact HD
ContiIceContact HDContiIceContact HD
ContiIceContact HDekaweb
 
Lab booking request form 20102223
Lab booking request form 20102223 Lab booking request form 20102223
Lab booking request form 20102223 sleena25
 
Certificate_4
Certificate_4Certificate_4
Certificate_4Engr Khan
 
Curriculum Vitae final M.SHAHID HUSSAIN
Curriculum Vitae final M.SHAHID HUSSAINCurriculum Vitae final M.SHAHID HUSSAIN
Curriculum Vitae final M.SHAHID HUSSAINMuhammad Shahid
 

Andere mochten auch (9)

Gráfico diario del ibex 35 para el 28 01 2013
Gráfico diario del ibex 35 para el 28 01 2013Gráfico diario del ibex 35 para el 28 01 2013
Gráfico diario del ibex 35 para el 28 01 2013
 
Informativo nº 15 3º basico a- 06 de junio de 2014
Informativo nº 15  3º basico a- 06 de  junio de 2014Informativo nº 15  3º basico a- 06 de  junio de 2014
Informativo nº 15 3º basico a- 06 de junio de 2014
 
Mother's Day
Mother's DayMother's Day
Mother's Day
 
ContiIceContact HD
ContiIceContact HDContiIceContact HD
ContiIceContact HD
 
Lab booking request form 20102223
Lab booking request form 20102223 Lab booking request form 20102223
Lab booking request form 20102223
 
Animalia
AnimaliaAnimalia
Animalia
 
Certificate_4
Certificate_4Certificate_4
Certificate_4
 
Tony
TonyTony
Tony
 
Curriculum Vitae final M.SHAHID HUSSAIN
Curriculum Vitae final M.SHAHID HUSSAINCurriculum Vitae final M.SHAHID HUSSAIN
Curriculum Vitae final M.SHAHID HUSSAIN
 

Ähnlich wie HTTP/2 and a Faster Web

Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)
Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)
Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)Ontico
 
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...Holger Bartel
 
Meetup Tech Talk on Web Performance
Meetup Tech Talk on Web PerformanceMeetup Tech Talk on Web Performance
Meetup Tech Talk on Web PerformanceJean Tunis
 
Next generation web protocols
Next generation web protocolsNext generation web protocols
Next generation web protocolsDaniel Austin
 
Web Architecture and Technologies
Web Architecture and TechnologiesWeb Architecture and Technologies
Web Architecture and TechnologiesFulvio Corno
 
Support formobility
Support formobilitySupport formobility
Support formobilityRahul Hada
 
[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...
[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...
[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...Cotendo
 
The Great Mobile Slowdown
The Great Mobile SlowdownThe Great Mobile Slowdown
The Great Mobile Slowdowngyanendra1
 
Introducing HTTP/2
Introducing HTTP/2Introducing HTTP/2
Introducing HTTP/2Ido Flatow
 
Nt1310 Final Exam Questions And Answers
Nt1310 Final Exam Questions And AnswersNt1310 Final Exam Questions And Answers
Nt1310 Final Exam Questions And AnswersLisa Williams
 
Cs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT VCs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT Vpkaviya
 
Introduction to back-end
Introduction to back-endIntroduction to back-end
Introduction to back-endMosaab Ehab
 
Site Speed Fundamentals
Site Speed FundamentalsSite Speed Fundamentals
Site Speed FundamentalsMartin Breest
 
65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...
65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...
65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...Cloudflare
 
How to Reduce Latency with Cloudflare Argo Smart Routing
How to Reduce Latency with Cloudflare Argo Smart RoutingHow to Reduce Latency with Cloudflare Argo Smart Routing
How to Reduce Latency with Cloudflare Argo Smart RoutingCloudflare
 

Ähnlich wie HTTP/2 and a Faster Web (20)

Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)
Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)
Внедрение протокола SPDY в социальной сети LinkedIn, Omer Shapira (LinkedIn)
 
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
Web Performance in the Age of HTTP/2 - FEDay Conference, Guangzhou, China 19/...
 
Meetup Tech Talk on Web Performance
Meetup Tech Talk on Web PerformanceMeetup Tech Talk on Web Performance
Meetup Tech Talk on Web Performance
 
Next generation web protocols
Next generation web protocolsNext generation web protocols
Next generation web protocols
 
Web Architecture and Technologies
Web Architecture and TechnologiesWeb Architecture and Technologies
Web Architecture and Technologies
 
HTTP Presentation
HTTP Presentation HTTP Presentation
HTTP Presentation
 
Web Performance Optimization
Web Performance OptimizationWeb Performance Optimization
Web Performance Optimization
 
WP Chap 1 & 2.pptx
WP Chap 1 & 2.pptxWP Chap 1 & 2.pptx
WP Chap 1 & 2.pptx
 
Support formobility
Support formobilitySupport formobility
Support formobility
 
[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...
[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...
[White Paper] Innovations in Mobile Content Delivery: Avoiding the Great Mobi...
 
The Great Mobile Slowdown
The Great Mobile SlowdownThe Great Mobile Slowdown
The Great Mobile Slowdown
 
Http/2
Http/2Http/2
Http/2
 
Introducing HTTP/2
Introducing HTTP/2Introducing HTTP/2
Introducing HTTP/2
 
Nt1310 Final Exam Questions And Answers
Nt1310 Final Exam Questions And AnswersNt1310 Final Exam Questions And Answers
Nt1310 Final Exam Questions And Answers
 
SPDY - or maybe HTTP2.0
SPDY - or maybe HTTP2.0SPDY - or maybe HTTP2.0
SPDY - or maybe HTTP2.0
 
Cs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT VCs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT V
 
Introduction to back-end
Introduction to back-endIntroduction to back-end
Introduction to back-end
 
Site Speed Fundamentals
Site Speed FundamentalsSite Speed Fundamentals
Site Speed Fundamentals
 
65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...
65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...
65% Performance Gains at Cryptocurrency Platform CoinGecko: An Argo Smart Rou...
 
How to Reduce Latency with Cloudflare Argo Smart Routing
How to Reduce Latency with Cloudflare Argo Smart RoutingHow to Reduce Latency with Cloudflare Argo Smart Routing
How to Reduce Latency with Cloudflare Argo Smart Routing
 

Mehr von C4Media

Streaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoStreaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoC4Media
 
Next Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy MobileNext Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy MobileC4Media
 
Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020C4Media
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsC4Media
 
Kafka Needs No Keeper
Kafka Needs No KeeperKafka Needs No Keeper
Kafka Needs No KeeperC4Media
 
High Performing Teams Act Like Owners
High Performing Teams Act Like OwnersHigh Performing Teams Act Like Owners
High Performing Teams Act Like OwnersC4Media
 
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaC4Media
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideC4Media
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDC4Media
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine LearningC4Media
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at SpeedC4Media
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsC4Media
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerC4Media
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleC4Media
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeC4Media
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereC4Media
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing ForC4Media
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data EngineeringC4Media
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreC4Media
 

Mehr von C4Media (20)

Streaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live VideoStreaming a Million Likes/Second: Real-Time Interactions on Live Video
Streaming a Million Likes/Second: Real-Time Interactions on Live Video
 
Next Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy MobileNext Generation Client APIs in Envoy Mobile
Next Generation Client APIs in Envoy Mobile
 
Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020Software Teams and Teamwork Trends Report Q1 2020
Software Teams and Teamwork Trends Report Q1 2020
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
 
Kafka Needs No Keeper
Kafka Needs No KeeperKafka Needs No Keeper
Kafka Needs No Keeper
 
High Performing Teams Act Like Owners
High Performing Teams Act Like OwnersHigh Performing Teams Act Like Owners
High Performing Teams Act Like Owners
 
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate Guide
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
 

Kürzlich hochgeladen

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 

Kürzlich hochgeladen (20)

What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 

HTTP/2 and a Faster Web

  • 1. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. HTTP/2 and a faster Web
  • 2. InfoQ.com: News & Community Site • 750,000 unique visitors/month • Published in 4 languages (English, Chinese, Japanese and Brazilian Portuguese) • Post content from our QCon conferences • News 15-20 / week • Articles 3-4 / week • Presentations (videos) 12-15 / week • Interviews 2-3 / week • Books 1 / month Watch the video with slide synchronization on InfoQ.com! http://www.infoq.com/presentations /http2-linkedin
  • 3. Purpose of QCon - to empower software development by facilitating the spread of knowledge and innovation Strategy - practitioner-driven conference designed for YOU: influencers of change and innovation in your teams - speakers and topics driving the evolution and innovation - connecting and catalyzing the influencers and innovators Highlights - attended by more than 12,000 delegates since 2007 - held in 9 cities worldwide Presented at QCon San Francisco www.qconsf.com
  • 4. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Omer Shapira
  • 5. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Content Slides LinkedIn Presentation Template 3
  • 6. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  LinkedIn  Bandwidth vs. Latency  Challenges with HTTP/1  What is HTTP/2  How the game changes  How LinkedIn adopts HTTP/2 Agenda What to expect before beers
  • 7. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Social network for business  Founded in 2002  300M+ users  200 countries  Users first Speed matters Who we are and what we do
  • 8. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  How do we measure the Internet speed?  Trains vs. cars  Bandwidth vs. latency Let’s talk about speed What’s speed, anyway?
  • 9. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Bandwidth is analogous to number of cars on a train  Adding bandwidth is expensive – but simple  Typically sold as “speed”  Matters for streaming  Bandwidth does not matter that much for web or mobile Let’s talk about bandwidth One bazzillion MBps for $4.99 a month + VAT
  • 10. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Shorten the pipe  Or move faster  Speed of light is a hard limit  Decreasing latency is hard and sometimes impossible Let’s talk about latency Latency: time it takes for the server to receive and process request for a page object
  • 11. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  100ms – user perceives as instantaneous.  1s – is about the upper limit of human flow of thought. User loses the feeling direct feedback.  10s – upper limit of attention. Feedback is important, and the chance of context switch is high. Source: Nielsen Norman Group Important latency limits No one will advertise latency
  • 12. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Route Distance (km) Time in vacuum (ms) Time in fiber (ms) TCP handshake in fiber (ms) NYC to SF 4148 14 21 63 NYC to London 5585 19 28 84 NYC to Sydney 15993 53 80 240 Reality check Signal latency in vacuum and in fiber 10 Source: High Performance Browser Networking
  • 13. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Low latency  High bandwidth  …  PROFIT! Fast Internet Short latencies, high bandwidth, opportunities
  • 14. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. In reality Not all latencies are the same 12  Network latency – DNS resolution – SSL/TLS negotiation – Last mile latency typically adds 40ms  Browser latency – DOM/CSSOM latency – Render tree construction – Blocking wait for connection
  • 15. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Browser latency: what’s up there? No rendering until the tree grows 13 Source: Critical Rendering Path
  • 16. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. HTTP/1 challenges Things to consider during migration 14
  • 17. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Mimics interactions between a person and a newspaper – Reading a page takes time. – Transferring text is easy – Single browser window Let’s talk about HTTP Long latencies, low bandwidth, lots of client time 15
  • 18. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Hyper TEXT transfer protocol In reality we mostly transfer images
  • 19. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Challenges with HTTP The protocol is getting obsolete
  • 20. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Challenges with HTTP Congestion Control
  • 21. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Challenges with HTTP 6 requests in flight, the rest wait… Once all threads are used, the browser blocks the next request…
  • 22. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Shard1.static.company.com  …  ShardX.static.company.com  X times the connections  BUT – X times the SSL negotiation – X times nascent connections – X times “half closed” connections… Domain sharding to the rescue? 6 requests per shard
  • 23. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Content is not requested until the base page is parsed Challenges with HTTP Head of line latency Head of line latency
  • 24. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Headers are transmitted with every request  But some of the headers need to be only transferred once – Accepts-Encoding  Headers are never compressed  Can add extra hop Challenges with HTTP Headers are never compressed Server sent 914 bytes to transfer 57 bytes of response. This is 15x overhead
  • 25. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. HTTP/2 approach A new perspective 23
  • 26. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. SPDY – a new beginning Foundations for HTTP/2
  • 27. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Starts with NPN negotiation (optionally with HTTP upgrade)  If both server and browser support SPDY, they switch to SPDY Overview of HTTP/2 Drop in replacement, transparent for webdevs and SWEs
  • 28. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Single connection is maintained between browser and server  Congestion window grows, increasing utilization of the network  Unlimited resources in flight – browser is not blocked Overview of HTTP/2 Multiplexing instead of thread pools/domain sharding
  • 29. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Negotiated over SSL (NPN/ALPN) or as HTTP upgrade  Transport layer security (always in SPDY, optional in HTTP/2)  Compression (including headers) Overview of HTTP/2 Based on SSL/TLS 27
  • 30. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Server can speculatively push resources to client before base page has been parsed  Resources can be reused between pages through the browser cache. Overview of HTTP/2 Server push 28
  • 31. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Explicit headers are eliminated  Headers are further compressed Overview of HTTP/2 Header elimination and compression 29
  • 32. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. HTTP/2 changes the game Things to consider during migration 30
  • 33. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  chrome –enable-spdy4  IE 11  Firefox 34  Safari… It is (mostly) here Chrome, Firefox, IE with Safari to follow
  • 34. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Domain sharding  Inlining  Spriting HTTP/1 best practices… Chrome, Firefox, IE with Safari to follow
  • 35. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Domain sharding – Breaks HTTP/2 prioritization etc – Requires multiple SSL/TLS handshake – Nascent connections break TCP flow control  We are looking for a single connection per domain  Tip: use altName to map multiple domains to same SSL certificate – Single HTTP/2 connection, multiple connections for HTTP/1 Domain sharding – slows HTTP/2 down Chrome, Firefox, IE with Safari to follow
  • 36. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Inlining != DRY  Instead of inlining resources, modularize codebase and utilize Server Push  SP places object into browser cache  Tombstone records to invalidate cache Inlining – wastes bandwidth Chrome, Firefox, IE with Safari to follow
  • 37. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Recall browser latency graph  DOM and CSOM are required for rendering  Prioritize JS and CSS over images Control head-of-line latency Chrome, Firefox, IE with Safari to follow
  • 38. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Transition from HTTP/1 to HTTP/2  Innovation possibilities  Hybrid models New challenges HTTP/2 simplifies delivery, opens new challenges
  • 39. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Putting SPDY to work at LinkedIn So what? 37
  • 40. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Anatomy of a page One base page and tons of static content 38 Base page Static Content
  • 41. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. LinkedIn network stack Or rather non-planar graph 39
  • 42. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Distribute the content around the globe  Make the web pretty fast by shortening the pipes CDNs Blazing fast, ubiquitous and not flexible
  • 43. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. There is a CDN edge near you
  • 44. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Can we beat CDNs locally? Let’s use science to experiment!
  • 45. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Profile page is better across the board  Homepage is better for regions closer to ECH Comparing SPDY with CDN - results Results Benefits of SPDY increased with for regions close to the PoP
  • 46. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. LinkedIn network stack Overly simplified
  • 47. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. LinkedIn network stack Pushing the CDN aside
  • 48. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Static content vs. base pages – round 2
  • 49. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved. Combining HTTP/2 with CDNs Deploy HTTP/2 stacks around the globe
  • 50. Traffic Infrastructure©2013 LinkedIn Corporation. All Rights Reserved.  Modern CDNs do pretty good job accelerating HTTP  HTTP/2 accelerates web content delivery further  Serving static content through HTTP/2 accelerates LinkedIn page  In the long run, CDNs will support HTTP/2. This will make the web faster for everybody. Bottom line HTTP/2 makes web faster; so do CDNs
  • 53.
  • 54. Watch the video with slide synchronization on InfoQ.com! http://www.infoq.com/presentations/http2- linkedin