Despite numerous changes and additions to the internet over the years, including high speed broadband, responsive design and cat videos, the standards for how servers deliver content to your browser has remained much the same for over 15 years. This is set to change as a new protocol, HTTP2, is now being released.
What is HTTP/2?
Hypertext Transfer Protocol – Version 2 (HTTP/2) is the second major release of the HTTP network protocol used throughout the Internet for delivering web content from a website’s host server to the visitor’s browser. As of July 2015, only 0.4% of all websites support HTTP/2, but this number is likely expand quickly over the next few years.
How does HTTP/2 work?
In essence, the goal for the development of HTTP/2 is to reduce the amount time required between server requests. This time is called latency, and it can really add up when many requests are needed. With the current HTTP/1.1 model, when a browser makes a server request, the server can only respond with a single file. This means that when the website needs to request multiple files (which is pretty much always the case), each file must be asked for individually. While the latency between each request may only be in the range of milliseconds, when hundreds of requests are made this lag can result in a slower web experience.
To resolve this, HTTP/2 allows for multiple files to be delivered with a single request. When visiting an HTTP/2 site, the browser will notify the server of its need for content and the server will reply with a package of content. This in turn reduces the time between file requests and improves overall load time.
Additionally, the current HTTP/1.1 model only allows a browser to make 6 requests per domain at a time. Because of these restrictions, a file queue is created and content must wait for other files to be delivered. HTTP/2 removes the request limit and allows for all files and content to be delivered at the same time so long as the server can keep up. This combined with the file packaging will dramatically increase page load speeds.
A great demonstration for HTTP/2’s speed can be found here: https://http2.akamai.com/demo
What do I need to do?
The good news is that you don’t have to do much! As a user of the internet, as long as your browser is up to date and modern, you’ll be able to receive files via HTTP/2 if the server is configured for the protocol.
If you are a web developer, you’ll need to work a little harder but not by much. Switching to HTTP/2 is simply a matter of changing the settings on your server. The big change as a developer is that many “Best Practices” for HTTP/1.1 will soon become worst practices for HTTP/2. Because the limit on domain connections will be removed, developers will not see increased speed through the use of sprite sheets or external domain content delivery networks (CDNs).
Because the shift from HTTP/1.1 to HTTP/2 requires different best practices, most developers are waiting until more users have switched to the modern browsers that support HTTP/2. This will come in time, but until then we can look forward to a faster Internet around the corner.