What is HTTP/2?
HTTP/2 is the new version of the HTTP protocol that is used to transfer data across the web. The current version, HTTP 1.1, became a standard in 1997.
Obviously, the web has changed a lot since then and HTTP 1.1’s shortcomings have become more and more apparent over the years.
Several years ago, Google set out to address some of these shortcomings by developing SPDY, a protocol that modifies HTTP to improve page load times.
Major browsers, including Google Chrome, Firefox, and Safari, added support for SPDY, but less than 3% of websites are using SPDY because it requires installation of a web server module.
HTTP/2 is based on SPDY and will bring many of SPDY’s improvements to the masses. The most notable of those improvements are:
- Multiplexing support, which allows clients to transfer data over a single connection.
- Prioritization, which allows the most important content to be transferred first.
- Built-in compression.
HTTP/2 retains the most familiar components of HTTP 1.1, such as methods (GET, POST, etc.) and headers.
Why does HTTP/2 matter?
HTTP/2 has significant user experience implications, and may also become a key SEO consideration.
1. User experience implications
Fast page load speed is critical to delivering a superb user experience. Even on tablet and mobile devices, users expect pages to load within seconds.
HTTP 1.1’s limitations can make serving these assets very costly, but HTTP/2’s improvements have the ability to increase page load speeds without any application-level changes.
As Akamai’s HTTP/2 demo demonstrates, HTTP/2 can reduce load times significantly.
2. SEO implications
In a Google Webmaster Central Hangout in November, Google employee John Mueller revealed that GoogleBot will soon support HTTP/2.
As Search Engine Land’s Patrick Stox explained, this has SEO implications because site speed is a ranking factor:
With GoogleBot adding support for HTTP/2, websites that support the protocol will likely see an additional rankings boost from speed.
On top of that, with Chrome and Firefox only supporting HTTP/2 over HTTPS, many websites that have not yet upgraded to HTTPS may see an additional boost in rankings when they do.
Additionally, Stox suggests that at some point, Google could make use of HTTP/2 itself as a ranking factor the way it has HTTPS, so coupled with the potential user experience benefits, HTTP/2 is a no brainer.
A number of popular web servers have implemented HTTP/2. Specifically, Apache supports HTTP/2 as of version 2.4.17 and Nginx supports HTTP/2 as of version 1.9.5.
Microsoft offers HTTP/2 support under the Windows 10 and Server 2016 Technical Preview.
In most cases, organizations with the ability to upgrade their web servers will be able to adopt HTTP/2 with minimal hassle and simple configuration.
Not surprisingly, not every organization can adopt HTTP/2 and take advantage of what it has to offer by installing a web server that has HTTP/2 support.
Many of the techniques created to address HTTP 1.1’s shortcomings are actually problematic when using HTTP/2.
As web developer Matt Wilcox explained, widely-used optimizations that are problematic in an HTTP/2 world include:
- Image sprites
- Use of cookie-less domains to serve assets
- Domain sharding for asset hosting
Before adopting HTTP/2, organizations will want to “undo” these optimizations to ensure that they are not negating HTTP/2’s benefits.
Fortunately, implementing these optimizations often requires considerable effort and in some cases, application-level changes, so once HTTP/2 is ubiquitous, many organizations will find that their optimization efforts can be directed elsewhere, such as to their application backends.