Tech

Everything you need to know about HTTP/2

You’ve got questions. We’ve got answers.

Photo of AJ Dellinger

AJ Dellinger

Article Lead Image

A major change is coming to one of the standards of the Internet. An update to the Hypertext Transfer Protocol (HTTP)—known as HTTP/2—has been finalized and is in the process of being standardized, according to chair of the Internet Engineering Task Force’s (IETF) HTTP Working Group Mark Nottingham.

Featured Video

So… that was a lot of big words and industry terms. Let’s break this down.

You know how you get annoying pop-up messages telling you to update a program on your computer? Well those messages have been flashing for the IETF for some time now. Once HTTP/2 is officially published, it will mark the first major update to the protocol since the adoption of HTTP 1.1 in 1999.

For the average Internet user, this may seem a little technical. After all, HTTP has become so formalized that we don’t even have to type it in to get to a site; it’s the support beams hidden behind the wall of the Web. But this is actually a big deal for the Internet, and you probably have questions. We have your answers.

Advertisement

What is HTTP/2?

Simply put, it’s the updated version of the protocol through which your browser communicates with websites. It will take over for the current HTTP 1.1 standard, originally put in place when Bill Clinton was still in office.

Why change now?

According to IETF participant and Mozilla employee Daniel Stenberg, HTTP 1.1 “has been working fine, but it has not been working very effectively.” Fifteen years is a long time for any protocol and, as Stenberg told the Daily Dot, the Web that HTTP 1.1 was made for was a very different place.

Advertisement

“Over time, websites have grown to use a very large amount of resources and assets on typical pages, and HTTP 1.1 just isn’t very well-equipped to get hundreds of objects quickly. The average popular site these days requires 100 HTTP requests to render its front page!”

Stenberg said that HTTP 1.1 has trouble fully utilizing the available bandwidth. One of the solutions to helping get information from the server to the client faster was Google’s SPDY (pronounced “speedy”) protocol, which became the starting point of HTTP/2.

So what’s the difference?

The new version of HTTP is built for the modern Web, making use of new ways to move data between the browser and the server. “Version 2 has multiplexing, compressed headers, and can do server push,” Stenberg told us.

Advertisement

OK, what does that mean?

Good question! Stenberg explained that multiplexing allows clients to use a single transmission control protocol (TCP) connection instead of multiple ones. It will also allow clients and servers to “fill up the bandwidth and leave fewer ‘holes’ of wait as with HTTP 1.1.”

He said the compressed headers will allow clients to “cram in more requests in the initial TCP window which leads to servers being able to send back responses faster.”

The server push, meanwhile, “allows servers to send resources to clients before they even ask for them, which will save round-trip times.”

Advertisement

Basically, it’s the difference between going to the store with a full list of things that you need versus going shopping for one item, going home, then returning for the next… and the next and the next. You get the idea.

What does this mean for me?

Right, of course. This is about you. Basically, it’s all going to get faster. Stenberg told us that the goal of HTTP/2 is to end up with “sites that load and render faster and that can be more responsive when you interact with them.” The new protocol will allow websites to better take advantage of the increased bandwidth provided by faster Internet speeds. This means sites with tons of images, videos, of everyone’s favorite bandwidth eater, the GIF, will load quicker.

Sort of like from this… 

Advertisement

Before

To this. 

After

Advertisement

This will also greatly benefit mobile users, who are often slowed by the limitations of mobile broadband and the time it takes for the connection to process each individual request. Requesting multiple items at a time should help to reduce the wait. “Sites far away, with high latencies, will benefit a lot,” Stenberg said.

How about security? Will this supersede HTTPS?

Nope, HTTPS just means that the HTTP connection is run through another secure protocol. HTTP/2 will also run through these secured connections such as Transport Layer Security (TLS). While the HTTP Working Group decided against requiring the use of encryption for HTTP/2, some implementations have stated that they will only support the new protocol if it is being used with an encrypted connection.

Think of Google and Firefox as your friend who won’t put the car in gear until you have your seatbelt on, with TLS standing in as the safety strap. “Since Firefox and Chrome only will implement HTTP/2 over TLS, that in itself will be a motivator for sites to switch to proper HTTPS in order to offer HTTP/2 to end users. HTTP/2 over HTTPS is likely to offer faster page loads than HTTP 1.1 over regular HTTP:// URLs,” Stenberg explained.

Advertisement

Do I have to do anything?

Not really. You won’t even notice a change. Your browser will still display the same old “http://”—if it even still does that. Everything will carry on as it was; it’ll all just run more smoothly behind the scenes.

“Users will only need to make sure to use reasonably new versions of their browsers and they will soon be using HTTP/2 as the popular Web services switch to it,” Stenberg said. He pointed out that Google and Twitter are already running their servers with HTTP/2.

Chrome and Firefox already support the new protocol, and Stenberg noted that Microsoft has shown it working in a tech preview of Internet Explorer. “I expect it to come soon,” he said.

Advertisement

Great! When does this happen?

Soon, hopefully. The finalized version of HTTP/2 will go through an editorial process to make sure everything is up to snuff. After getting a thorough review, the protocol will be published. From that point, it’s up to the rest of the Web to implement it, from server hosts to browser-makers.

Google announced earlier this month that it will begin phasing out SPDY and begin rolling out support for HTTP/2 as soon as possible. “I would expect the other browsers to all catch up on this soon as HTTP/2 replaces SPDY and SPDY slowly will be switched off,” Stenberg told us. The major traffic sources—your Facebooks, Twitters, Googles, etc.—will likely make the change as soon as possible.

Not everyone will be making the jump, though. Stenberg said “There will be a long tail of clients and users who will remain in the 1.1 world for a long time. I’m convinced a certain amount will be on 1.1 still on five years and more. Possibly, more or less, forever.”

Advertisement

Luckily for those users (we’re imagining out-of-touch, cubicle-filled offices), HTTP/2 is backwards compatible with the previous standard.

I have many more specific, technical questions.

Daniel Stenberg has composed a document titled “HTTP2 Explained” that you can read for more details. You can give the FAQ section of HTTP/2’s GitHub page a look as well. You can also find the full documentation of the protocol there, you curious little scamp.

Photo via Andrew Hart/Flickr (CC BY SA 2.0) 

Advertisement
 
The Daily Dot