HTTP/3

From MgmtWiki
Revision as of 14:31, 1 October 2019 by Tom (talk | contribs)

Jump to: navigation, search

Full Title

HyperText Transport Protocol version 3 is different from everything that came before it. It's a complete rewrite of HTTP that uses the QUIC protocol instead of TCP, and also comes with built-in TLS (encryption) support.

Context

HTTP/3, the next major iteration of the HTTP protocol, is getting a big boost today with support added in Cloudflare, Google Chrome, and Mozilla Firefox. Starting today, Cloudflare announced that customers will be able to enable an option in their dashboards and turn on HTTP/3 support for their domains. That means that whenever users visit a Cloudflare-hosted website from an HTTP/3-capable client, the connection will automatically upgrade to the new protocol, rather than being handled via older versions. On the browser side, Chrome Canary added support for HTTP/3 earlier this month. Users can enable it by using the Chrome command-line flags of "--enable-quic --quic-version=h3-23".

Robin Marx
@programmingart
Google Chrome Canary just became the first (available) browser to integrate (very) experimental #QUIC and HTTP/3 support! 
Add flags "--enable-quic --quic-version=h3-23" and you should see "http/2+quic/99" show up in the devtools, which is actually http3 in disguise!
In addition, Mozilla too announced it would roll out support for HTTP/3. The browser maker is scheduled to ship HTTP/3 in an upcoming Firefox Nightly version later this fall.

Solution

HTTP/3 is the next major version of HTTP, the protocol through which content moves from servers to clients, where it's displayed inside browsers, mobile apps, or other applications.

If the race between corporate giants Amazon, Microsoft, and Walmart to create fully-automated shopping experiences is any indication, retail could look a lot different in the near future.

But are consumers ready for changes to the brick-and-mortar experience? Find out what consumers are using while shopping, whether it made the shopping experience easier (or more difficult), and what information consumers are willing to give up in exchange for special promotions or discounts.

It's an amalgam of multiple technologies; all meant to make websites load faster and over encrypted connections by default.

To understand how HTTP/3 works you must first understand how the OSI networking model works. By default, HTTP (a layer 7 protocol) uses TCP (a layer 4 protocol) as it's base. TCP is used to negotiate connections between clients and servers, and then move the data between the two parties -- hence its categorization as a transport protocol.

File:Osi-model.jpg

But the TCP protocol was designed in the 70s, and nobody expected it to be used for near real-time communications, as it's used today. As the years went by, software engineers began understanding that TCP was never designed for speed.

Across the years, several teams of engineers have attempted to create a better transport layer protocol. Of all, Google's engineers have been the most successful. They first created SPDY, a protocol that fixed some of TCP's problems, and was later used for HTTP-over-SPDY, a protocol that eventually became the official HTTP/2, now used on around 40% of all internet sites. But SPDY was just another improvement on TCP and its principles. Google engineers realized they could do much better if they'd combine the reliability of TCP and the speed of UDP, together into a totally new protocol. That's how QUIC came to be, or "Quick UDP Internet Connections." As its name implies, this is a protocol that merges the best features of TCP and UDP, in order to build even a faster layer 4 transport protocol. HTTP/3 is QUIC implemented inside HTTP, replacing TCP and SPDY at the transport level. It was formally approved last October.

According to W3Techs, HTTP/3 is currently used by only 3% of all internet websites.

References

  • Cloudflare, Google Chrome, and Firefox add HTTP/3 support
    Next iteration of the HTTP protocol starts making its way into production systems. Initial support was added in Chrome 29 and Opera 16, and in LiteSpeed servers. Chrome support expanded this month, but the bigger news is Cloudflare making the protocol generally available for its customers. The content delivery network (CDN) is a major player on the web, powering around 10% of all internet sites. Having the company roll out HTTP/3 support all but ensures its broader and quick adoption. "Cloudflare was one of the major drivers of H2 adoption having released its HTTP/2 support for all customers in December 2015. In fact, Cloudflare still powers the majority of the HTTP/2 web," a Cloudflare spokesperson told ZDNet this week. Now, the company believes it's time to move the web towards even a better protocol, one that's both faster, but also comes with built-in support for TLS, the protocol at the heart of HTTPS.