Why HTTP/3 and QUIC Matter
Here’s the short explanation: Web browsers, web servers, and other critical pieces of web infrastructure are getting support for a new standard named HTTP/3, which uses QUIC. This is a more modern version of HTTP, which web browsers use to communicate with web servers and send data back and forth.
HTTP/3 has been rewritten to send data more quickly with better resistance to errors. It has built-in encryption, too. That means more speed and security. It’s not just data transfer speed, either: HTTP/3 should reduce latency as well, meaning websites will start loading more quickly after you click or tap a link.
The average person never needs to know about HTTP/3 and QUIC. People who run websites and develop web software have some work to do, but it’s all going to be transparent to the average person. One day, your web browser and the websites you use will start communicating over HTTP/3 instead, and the web will get better and better as more sites opt to use HTTP/3.
From HTTP/1 to HTTP/2
The original version of HTTP uses the Transmission Control Protocol (TCP.) First described in 1974, TCP was never designed with the speed and responsiveness of today’s web in mind. Google tried to fix many of TCP’s problems with a new protocol named SPDY, which informed HTTP/2.
HTTP/2 arrived in most major browsers by the end of 2015, adding features like data compression and pipelining of multiple requests over a single TCP connection to speed things up.
As of September 2019, W3Techs estimates that HTTP/2 is now being used by 41% of websites.
What Are HTTP/3 and QUIC?
HTTP/3 is more of a rewrite of the HTTP protocol. Instead of using TCP, HTTP/3 uses Google’s QUIC protocol. HTTP/3 was initially known as HTTP-over-QUIC. HTTP/3 also includes TLS 1.3 encryption, so there’s no need for a separate HTTPS that bolts security onto the protocol, as there is today.
QUIC originally stood for “Quick UDP Internet Connections.” This protocol is designed to be faster with lower latency than TCP. QUIC offers less overhead when establishing a connection and quicker data transfers over the connection. Unlike TCP, an error like a piece of data that gets lost along the way won’t cause the connection to stop and wait for the problem to be fixed. QUIC will keep transferring other data while the issue is being resolved.
In fact, QUIC was added to Google Chrome back in 2013. Chrome uses it when communicating with Google services and some other websites like Facebook, and it’s available to Android applications. But QUIC isn’t a standard integrated into other web browsers. With HTTP/3 the technology is coming in a standard way to other browsers, too.
In summary: HTTP/3 is a newer, better, faster protocol. It’s a more modern solution that should deliver improved security and speed to the web.
They’re Coming to a Web Browser Near You
HTTP/3 was added to the bleeding-edge Canary version of Google Chrome in September 2019, hidden behind a command-line flag. Launching Chrome Canary with the –enable-quic –quic-version=h3-23 command-line arguments will enable HTTP/3.
Mozilla announced it’s working on adding HTTP/3 to an experimental version of Firefox Nightly this fall. The new Chromium-based version of Microsoft Edge will inherit Google’s HTTP/3 work for Chrome, as will other Chromium-based browsers like Opera. We would expect Apple to jump on board with HTTP/3 in Safari at some point, too.
Cloudflare has even announced that it’s making HTTP/3 adoption easier for sites that use its content delivery network. Cloudflare customers will soon be able just to flip a switch and enable “HTTP/3 (with QUIC)” for their sites. That should hopefully help boost HTTP/3 adoption by making it easier for websites to enable once browsers get HTTP/3 stable and enabled for everyone.
HTTP/3 is coming to other software, too—for example, the Nginx web server is working on HTTP/3 support for Nginx version 1.17.
We’re in the early stages of implementation. Cloudflare says it will “continue working alongside other organizations, including Google and Mozilla, to finalize the QUIC and HTTP/3 standards and encourage broad adoption.” In other words, not only is the software not final yet—the standard itself may see some changes. There’s a lot of work to be done before this is enabled by default in modern browsers and automatically used.
More Technical Details
Want to know more? Check out Cloudflare’s in-depth look at HTTP/3 or dig through the draft HTTP/3 standard for the real tech specs.