↓Recommended Follow ↓
On June 6, Robin Mark, a member of the IETF QUIC (Internet Engineering Task Force) and the HTTP working group in Belgium, announced on Twitter that “after 5 years, HTTP/3 has finally been standardized as RFC 9114. Together with RFC 9204 (QPACK header compression) and RFC 9218 (extensible priorities), it opens a new chapter for the Web!” This means that the protocol has reached a stable state, and HTTP/3 is the third major version of the Hypertext Transfer Protocol.

At the same time, HTTP/2 has also been updated to the new RFC 9113 standard.

HTTP/3 Based on QUIC
According to official sources, HTTP/3 is based on QUIC. So, what exactly is QUIC?
As stated in the IETF introduction:
QUIC is a transport protocol that possesses several features necessary for HTTP transport, such as multiplexing, flow control, stream control for each stream, and low-latency connection establishment.

In simple terms, QUIC is a general-purpose transport layer network protocol that was implemented and deployed by Google in 2012 and publicly released in 2013. The motivation behind developing QUIC was to address the fact that the Transmission Control Protocol (TCP) requires multiple round trips to establish a connection and start transferring data.
The connection and transmission latency caused by the original protocol resulted in a poor user experience. QUIC switched to using the User Datagram Protocol (UDP) for traffic transmission. UDP reduces the number of round trips between the client and server, thus speeding up transmission, which is particularly important on mobile networks.
Currently, many companies in the industry have started using the QUIC protocol. Google, in particular, is very fond of QUIC, to the extent that in 2020 it integrated QUIC into the Chrome browser, with over half of all connections on Google servers using QUIC.
Additionally, Cloudflare adopted QUIC as a network protocol option in 2018. Microsoft is also a strong proponent of QUIC; it not only created its own version but also made it open source (https://techcommunity.microsoft.com/t5/networking-blog/msquic-is-open-source/ba-p/1345441). NGINX has added support for HTTP/3.
Why choose HTTP/3 over the well-established HTTP/2?
Although HTTP/3 is a more advanced version of the Hypertext Transfer Protocol compared to the second generation, HTTP/2 was only standardized in 2015, and according to Cloudflare data, HTTP/2 remains the most widely used HTTP version, with HTTP/3 being significantly less popular. So why did the IETF rush to introduce HTTP/3 as a replacement?

In response, HTTP working group member Robin Mark wrote an article explaining, “Initially, we did not need a new version of HTTP; rather, we needed to upgrade the underlying transport control protocol (TCP).”
He stated that for decades, TCP has been the cornerstone of the internet and one of the most widely used and deployed protocols. However, TCP, which emerged in the early days of the internet, did not truly consider maximum efficiency. In contrast, the new transport protocol QUIC has been given high expectations.
However, running QUIC directly on HTTP/2 poses certain challenges due to significant differences in many of its features compared to TCP. Therefore, the HTTP working group made adjustments in several key areas to ensure compatibility with QUIC. This adjusted version was ultimately named HTTP/3, primarily for marketing purposes and to help users clearly identify the differences.
In simple terms, HTTP/3 is a relatively minor adaptation of HTTP/2 to make it compatible with the new QUIC protocol. Thus, the differences between HTTP/1.1 and HTTP/2 are much greater than those between HTTP/2 and HTTP/3.
As a result, HTTP/3 has faced criticism from many, such as Apache delaying the addition of the protocol to its web server, believing that its HTTPD performs well enough. Some privacy advocates are also concerned about QUIC, finding the promised speed improvements elusive.
Nevertheless, the standardization of HTTP/3 marks an important milestone in the evolution of HTTP. If you are interested in HTTP/3, you can learn more through the official introduction: https://www.rfc-editor.org/info/rfc9114
References:
https://www.theregister.com/2022/06/07/http3_rfc_9114_published/
https://www.smashingmagazine.com/2021/08/http3-core-concepts-part1/
Source: CSDN
– EOF –
Recommended Reading Click the title to jump
1. django -2 HTTP Protocol Processing Flow
2. Using HTTPS, yet still being monitored!
3. 8.5K Stars! A tool for checking memory allocation in Python code
↓ Recommended Follow ↓
“The Path of Frontend Technology” shares selected technologies from the web frontend, Node.js, React Native, and other major frontend tech stacks.
Likes and views are the biggest support ❤️