Open In App

QUIC Protocol

What is QUIC Protocol?

As we know Protocol is a rule regarding how the data is communicated, how the data is transferred between two mediums, encryption standards, etc., QUIC Protocol is the same that was developed by Google INC. in the year 2012 and owned by itself. Without delving into its history, we will see the working & usage of the QUIC.

Prerequisite

Where QUIC is used?

QUIC, commonly known as HTTP/3, which is Version 3 of HTTP-based communication. We all know that HTTP Protocol is used in web technology to request data from the remote web server & present the data in the browser. The data may be anything such as images, text, video, audio, etc., HTTP will fetch those data from the server & present it in the visualized format in the browser.



Upto HTTP/2, it uses TCP in the transport layer. We are all aware that TCP is Connection-oriented & reliable.

The drawback of TCP is its latency which is it took 3 Round trips and sometimes more round trips are needed. Such as SYN(Client -> Server), SYNACK(Server -> Client), and ACK(Client ->Server), If it is SSL Trusted communication(HTTPS), One more round trip is needed to check the Certificate validation. So. this round trip, makes the latency in the single request.



So, the QUIC evolved which works in the transport layer and uses the UDP Protocol. Due to the nature of UDP, which is fast and furious, QUIC provides lesser latency and faster response than TCP. QUIC is used along with HTTP Protocol to provide faster response to the end-user.

QUIC – the replacement of TCP + TLS

HTTP works in the application layer and uses the TCP as its backend to communicate with the web server with its Handshaking mechanism. If TLS-enabled communication is enabled, then it will do the additional process to ensure that HTTPS Connection is secure & it’s a valid certificate from a third party.

In QUIC, it doesn’t do this round trips to each SYN, SYNACK, ACK, and SSL Verification in separate requests to the server. Instead of in the first request itself, it gets to know about the Server Security Information & as it is using UDP in its transport layer, no more connection establishment is needed that UDP is a connectionless protocol

In simple, we can say that

HTTP/2  = TCP (SYN, SYNACK, ACK) + TLS
HTTP/3 = QUIC

Which will remove the latency of those 2 processes in their first single request itself.

UDP Usage in QUIC

QUIC Protocol is running on the top of UDP. UDP is connection less & unreliable in data transmission. TCP standard is fame due to its reliablity. QUIC just extends the UDP as reliable connection provider here with some advanced techniques. So, due its fastness and reliable communication, the communication between the Client-server is both fasty and reliable. So, less data loss is there.

Along with that, due to its running on existing technology UDP, no more additional adoption is needed in the existing web technology world. most of the technology supports UDP. This is thing that adds more weight to the QUIC Protocol.

Steps to unable QUIC in the Browser

Now a days, by default QUIC Protocol is enabled in the recent versions of chromium based browsers such as Google Chrome, Microsoft Chromium Edge, Vivaldi, So if the site supports HTTP/3 website, the request took the HTTP/3 based protocol.

Using chromium experiments:

Using command line option:

Eg: chrome.exe enable-quic --quic-version=h3-25

Enterprise Policy or registry:

Steps to see uses of QUIC for its communication in web Browser

View of Browser:

Protocol Shows H3 – QUIC Protocol

QUIC took lesser time than TCP:

As we mentioned above, QUIC Took lesser time than TCP, to do this experiment, load the site www.google.com in H2 protocol & refer the latency time, then run in H3 Protocol and refer their latency. Then we can conclude the latency difference between H2 and H3.

QUIC’s time:

H3 time taken

TCP time:

we can see that time taken by H2 (TCP/IP) = 284 ms where as time taken by H3 (QUIC) is 261 ms.

H2 time taken

Pros of QUIC Protocol

Cons of QUIC Protocol

Article Tags :