The « HTTP », Hypertext Transfer Protocol, is a key component of the global Internet network. This is the communication layer by which web browsers send requests to hosting servers, and by which they return the requested web pages. The HTTP 1.1 protocol used since 1999 is being updated to HTTP/2 !
Why switch to HTTP/2 ?
For example, Google provides 40,000 web searches per second every day. To serve billions of Internet users, the firm’s engineers launched a project in 2009 called SPDY (pronounced « speedy ») to improve HTTP. Initially intended for internal use, other sites with very high traffic such as Facebook, Cloudflare, WordPress or Twitter have also implemented SPDY technology, thus contributing to its development.
This attracted the attention of the IETF, an international community of web specialists that develops Internet standards. The IETF has decided to use SPDY as the basis for HTTP/2 in 2012.
Google recently announced that it is abandoning the development of SPDY in favor of HTTP/2
The disadvantages of HTTP 1.1
Today’s web pages can generate more than a hundred queries : images, CSS, videos, external ads, etc. This slows down the page display considerably because the hosting server supports a large load and HTTP 1.1 can only support one request per connection…
HTTP 1.1 is very sensitive to connections with high latency. This poses a major problem when it comes to surfing the web from a smartphone or tablet, even when the connection itself has broadband.
A solution had been developed : « HTTP pipelining », which allows several requests to be sent in the same TCP connection. Although this solution brings an undeniable improvement in speed, it nevertheless generates several problems (including an increase in latency…).
The advantages of HTTP/2
Instead of using plain text, HTTP/2 is now a faster, more compact binary protocol to analyze and transmit. While HTTP 1.1 has four different ways to process a message, HTTP/2 reduces this number to one.
To solve the problem of multiple requests, HTTP/2 allows only one connection per site, but using the multiplexing stream. Multiplexing allows several requests to be transmitted at the same time in a single message. In addition, these feeds can be prioritized : images to be displayed first, etc.
The HTTP protocol requires that each request includes information that places it within the broader set of the global display of the web page. This information is placed in what is called the « HTTP headers ». However, as HTTP 1.1 has evolved, these headers have also gained in volume because they include new features. HTTP/2 uses a compression algorithm to reduce the weight of these headers while improving transmission security.
Finally, usually the web server waits for the browser (the client) to request a resource (such as an image for example) to be sent. HTTP/2 integrates by default the « Push Server » technology which allows the web server to not wait for this request and to immediately send other resources to the client, thus making the display of the site faster.
Towards an Internet v2
For HTTP/2 to be accessible to the general public, it must first be implemented by web servers and browsers. So, for sure, web browsing will be more fluid and faster. In addition, developers will finally be able to free themselves from some of the constraints of HTTP 1.1.
In fact, most of the latest versions of the most popular browsers such as Firefox, Chrome and Internet Explorer already support HTTP/2. Concerning Chrome and Firefox, HTTP/2 only works on the SSL secure layer.
With the end of Internet Explorer, we can also assume that its successor, currently called the « Spartan project », will also support HTTP/2.
Finally, new projects are emerging such as Let’s Encrypt, a service that issues free SSL certificates !
Was this article useful to you ? Did you like the information I presented to you ? Then you could share it with your friends on social networks using the sharing buttons below please. Thank you :)