HTTP—the protocol for sending data between browsers and servers—has been evolving rapidly, and the third iteration is now appearing across the web. Versions 2 and 3 both achieve massive improvements in performance and security and have been gaining widespread browser support. But if you haven’t heard much about HTTP/3 (let alone HTTP/2), it’s not surprising. Even though HTTP/1.1 dates to the 90s, it remains in use by most websites, despite major browsers’ support for the newer protocols.
So What Are These Newer Versions All About—and Why The Lag In Adoption From The Server Side?
Developed primarily by Google under the original name SPDY, HTTP/2 was a giant departure from 1.1. Among many new features, the most notable was support for multiplexing. To understand this, think of a typical web page that loads many different files (images, scripts, fonts, etc). On an HTTP/1.1 connection, files must load sequentially, meaning each file needs to fully finish transferring before the next one can start. One slow file can delay the entire page.
HTTP/2 solves this through request-response multiplexing, which allows browsers to request and receive data in any order to prevent blocking at the application level.
HTTP/3 takes this a step further by switching to a protocol that helps eliminate latency over the network due to packet loss (moving from TCP to UDP), and implementing another new protocol to wrangle data (QUIC, also developed by Google).
HTTP/3 also requires newer, more holistic secure connections where transmission metadata is encrypted in addition to the content itself. While this feature was designed in part as a performance efficiency, it also has the effect of preventing network administrators from monitoring or blocking traffic to specific sites. This is one of the potential challenges to HTTP/3 adoption, as large establishments—governments, educational institutions, corporations, even concerned parents—all rely on unencrypted transport metadata to identify and moderate content.
And this isn’t the only consideration stifling adoption of HTTP/3 or even HTTP/2.
Server infrastructure, particularly the programming languages and server software that deliver content, needs significant updates to support the new standards. PHP and Apache, the backend programming language and web server that account for as much as 79% of the world’s websites, are unable to support HTTP/2 in the configurations most commonly used today. Exacerbating this, most smaller websites run on shared web hosting, where many customers and sites run on the same servers. Updating one site’s setup in a cluster of shared servers requires updating the broader infrastructure. This can affect thousands of customers, making it a slow, risk-laden and expensive process.
Make The Leap To Better Performance
You don’t have to be a large company like Google, or use a content provider such as Cloudflare to adopt HTTP/3. FATFREE has helped clients of all sizes build fast, modern web servers and dramatically improve performance scores. It’s often one of the first things our clients ask us about and we’ve learned a lot about navigating the ever-expanding choices. If you’re curious, get in touch and we can help you make informed and measurable choices for delivering your web services.