HTTP/3: The Next Generation of Web Performance

Lovelesh Gangil
4 min readOct 1, 2023

HTTP/3 is the next major version of the Hypertext Transfer Protocol (HTTP), the protocol that underpins the web. It is based on the QUIC transport protocol, which was developed by Google and is now an IETF standard.

HTTP/3 is designed to improve the performance, reliability, and security of web browsing. It offers a number of benefits over previous versions of HTTP, including:

  • Reduced latency and improved throughput: HTTP/3 can reduce latency and improve throughput, especially on unreliable networks. This can lead to faster loading times for web pages and web applications.
  • Improved resilience to packet loss: HTTP/3 is more resilient to packet loss than previous versions of HTTP. This means that it can continue to deliver data even when there are network problems.
  • Improved security: HTTP/3 uses built-in encryption to protect data from eavesdropping and tampering.
  • Reduced overhead: HTTP/3 reduces the overhead associated with setting up and maintaining connections. This can improve performance for applications that make a lot of small requests.

HTTP/3 is still under development, but it is already supported by major web browsers and servers. As more and more websites and web applications switch to HTTP/3, users can expect to see significant improvements in web performance.

How HTTP/3 works

HTTP/3 is built on top of the QUIC transport protocol. QUIC is a new transport protocol that runs on top of the User Datagram Protocol (UDP). It was designed to improve the performance, reliability, and security of web browsing.

QUIC provides a number of features that are essential for HTTP/3, including:

  • Connection IDs: QUIC uses connection IDs to identify connections. This allows QUIC to detect and recover from lost packets more efficiently.
  • Frames: QUIC uses frames to organize data. Frames are smaller and more efficient than the TCP segments that are used in previous versions of HTTP.
  • Multiple independent byte streams: QUIC supports multiple independent byte streams. This means that different parts of a web page can be downloaded in parallel, which can improve loading times.
  • Deep integration with TLS: QUIC deeply integrates with TLS, the encryption protocol that is used to secure HTTPS connections. This provides better security and performance than the separate TLS and TCP handshakes that are used in previous versions of HTTP.

How to Test if a Website Supports HTTP/3

There are a number of ways to test if a website supports HTTP/3. Here are a few options:

  • Domsignal

Domsignal offers an HTTP/3 test that quickly connects your site using cURL and reveals if it supports H3/QUIC protocol. If the connection is successful, then it shows the advertised supported versions.

  • HTTP/3 Check

HTTP/3 Check is a web tool by LightSpeed that allows you to test any URL to see if it supports HTTP/3. Simply enter the URL of the website you want to test and click the “Check” button. HTTP/3 Check will then return a result indicating whether or not the website supports HTTP/3.

  • Firefox

Firefox Nightly recently announced support for HTTP/3. To test if a website supports HTTP/3 in Firefox Nightly, follow these steps:

  1. Launch Firefox Nightly.
  2. Type about:config in the address bar and press Enter.
  3. Accept the risk and continue.
  4. Search for network.http.http3.enabled and click on the toggle button to enable it.
  5. Restart Firefox Nightly.

Once you have enabled HTTP/3 in Firefox Nightly, you can test if a website supports HTTP/3 by visiting the website and opening the Network Developer Tools (Ctrl+Shift+C on Windows/Linux, Command+Option+I on Mac). In the Network Developer Tools, click on the “Protocol” column. If the protocol column shows “QUIC/39”, then the website supports HTTP/3.

  • Google Chrome

You can use Chrome Canary to test if a website supports HTTP/3. To do this, launch Chrome Canary with the following flag:

--enable-quic --quic-version=h3-23

Once Chrome Canary is launched with this flag, you can test if a website supports HTTP/3 by visiting the website and opening the Developer Tools (Ctrl+Shift+I on Windows/Linux, Command+Option+I on Mac). In the Developer Tools, click on the “Network” tab. If the Protocol column shows “http2+quic/99”, then the website supports HTTP/3.

Benefits of HTTP/3

HTTP/3 offers a number of benefits over previous versions of HTTP, including:

  • Faster loading times: HTTP/3 can reduce the time it takes to load a web page by up to 30%. This is especially noticeable on mobile devices and in areas with poor internet connectivity.
  • More reliable streaming: HTTP/3 is more resilient to packet loss, which can lead to a more reliable streaming experience. This is especially important for watching live video and listening to live audio.
  • Smoother gaming: HTTP/3 can reduce latency and improve throughput, which can lead to a smoother gaming experience. This is especially important for online games that require quick reaction times.
  • Improved security: HTTP/3 uses built-in encryption to protect data from eavesdropping and tampering.

Conclusion

HTTP/3 is a new protocol that has the potential to revolutionize the way we use the web. It offers a number of benefits over previous versions of HTTP, including improved performance, reliability, and security. As more and more websites and web applications switch to HTTP/3, users can expect to see significant improvements in web performance.

For any queries contact on my Twitter and Linkedin profiles -

https://www.linkedin.com/in/loveleshgangil/

https://twitter.com/loveleshgangil

--

--

Lovelesh Gangil

Offensive Security | Digital Forensics and Incident Response (DFIR) | CAP | GPCSSI '21 | ICSI (CNSS) | CEH (Practical)