To replace TCP: discussion of the QUIC protocol

2 min

QUIC is a new transport protocol that runs on top of UDP. Some jokingly call it TCP / 2. We’ll tell you that they’re now discussing how to participate and who is implementing QUIC support.

/ Unsplash / Sticker mule

What is QUIC

This is a mechanism for transmitting data over a network, built on the UDP protocol. Allows to cut connection delay. Unlike TCP, which uses the “triple handshake” principle, QUIC handshakes in one step with a familiar server and in two steps with an unfamiliar one.

Compared to TCP, QUIC also has more bandwidth. Tests showed 30 percent reduction in rebuilds when playing YouTube videos.

What documents are discussed

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

Additional reading from our blog on Habré:

  • QUIC ready for deployment [но не готов стать RFC]
  • How is the implementation of DNS-over-HTTPS
  • How the IT community responds to the New IP initiative

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

  • QUIC Transport. This is a description of the mechanisms of the QUIC transport protocol: control of data transmission and packet processing flows, version coordination, opening of a secure communication channel and exchange of cryptographic keys.
  • QUIC Loss Detection and Congestion Control. Contains a description of methods for monitoring data integrity and overloading communication channels.
  • Using TLS to Secure QUIC. A document about using TLS to protect QUIC. There is information about interfaces, working with keys and registers IANA.
  • Version-Independent Properties of QUIC. It describes the properties of the new protocol, which should remain unchanged from version to version – for example, headers.
  • HTTP / 3. A document describing the mapping of HTTP semantics to QUIC.
  • QPACK Header Compression for HTTP / 3. The document is devoted to the QPACK header compression format – in particular, the work of the encoder and decoder.

The discussion will end next week – July 8th. Some time after this, the QUIC specification will receive IETF approval and will be published. Everyone can take part in the discussion – you can leave your comments and suggestions on github.

Now discussion is ongoingdedicated to choosing between AAD or nonce. But to return to the issues on which consensus has already been reached, will only be for good reasons.

Who is already implementing the protocol

Although QUIC is not yet a standard, some IT companies use it. Began to work with him CDN servicesincluding 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 protocol operation under construction on the Neqo project (available on Github) This is the client and server implementation for QUIC.

IETF drafts were also used in NGINX – in mid-June, the company introduced a preview version of the proxy server with QUIC and HTTP / 3 support. In late May, Microsoft also announcedthat open the library code Msquic with the implementation of the protocol. Cross-platform library – can be run on Windows and Linux using Schannel and OpenSSL, respectively (for TLS 1.3). The experts predictthat with the adoption of the QUIC standard, even more companies will release their implementations.

What we write about in a corporate blog:


Leave a Reply