Replacing TCP: a discussion of the QUIC protocol

QUIC is a new transport protocol that runs on top of UDP. Some people jokingly call it TCP / 2. We will tell you what is being discussed now, how to participate and who implements QUIC support.





/ Unsplash / Sticker Mule



What is QUIC



It is a mechanism for transmitting data over a network, built on the UDP protocol. It allows to reduce the delay of the connection. Unlike TCP, which uses the "triple handshake" principle, in QUIC the handshake occurs in one stage with a familiar server and in two stages with an unfamiliar one.



Compared to TCP, QUIC also has higher throughput. Tests have shown a 30% reduction in the number of rebuffers when playing YouTube videos.



What documents are being discussed



In 2018, representatives of the Internet Engineering Council (IETF) noted that QUIC is ready for large-scale tests, but cannot yet become a standard due to a number of shortcomings. In two years, the protocol was finalized, and the group of experts is preparing to issue it in RFC format.



Additional reading from our blog on Habrรฉ:





In mid-June, IETF Working Group Co-Chair Lucas Pardue announced the start of the final round of QUIC drafts discussion. There are six documents in total, and they are devoted to various aspects of the protocol:





The discussion will end next week - July 8th. Sometime after that, the QUIC specification will receive IETF approval and will be published. Anyone can take part in the discussion - you can leave your comments and suggestions on GitHub .



There is currently a debate on the choice between AAD or nonce. But they will return to issues on which consensus has already been reached only for good reasons.



Who is already implementing the protocol



Although QUIC is not yet a standard, some IT companies use it. CDN services began working with him , including Cloudflare and Verizon Digital Media Services (VDMS).





/ Unsplash / Nathan Dumlao



Experimental HTTP / 3 support has already been added to Chrome and Firefox . In the latter case, the work of the protocol is based on the Neqo project (available on GitHub ). This is a client and server implementation for QUIC.



IETF drafts were also used in NGINX - in mid-June the company presented a preview version of a proxy server with QUIC and HTTP / 3 support. At the end of May, Microsoft also announced that they would open the library codeMsQuic with protocol implementation. The library is cross-platform - it can be run on Windows and Linux using Schannel and OpenSSL respectively (for TLS 1.3). Experts predict that with the adoption of the QUIC standard, more companies will release their implementations.



What we write about in the corporate blog:






All Articles