BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

Google Wants to Speed Up the Internet with QUIC

| by Abel Avram on Feb 12, 2014. Estimated reading time: 2 minutes |

QUIC (Quick UDP Internet Connections, pronounced 'quick') is a multiplexing transport protocol running over UDP with the main goal to have 0-RTT connectivity overhead. Robbie Shade, a Google developer, has introduced QUIC in a recent video, having the following main features:

It has all the benefits of SPDY (multiplexing, priorities, etc.)

0-RTT connections

Packet pacing that reduces packet loss

Forward error correction that reduces retransmission latency

Adaptive congestion control (friendly to TCP), reducing reconnections for mobile clients

Encryption equivalent to TLS

Chrome can talk QUIC to Google today

QUIC deals with transmission reliability, missing or out of order packets, something which UDP does not do by default. Multiplexing in QUIC means that the protocol uses multiple channels to deliver data, so if a packet is lost in one stream of data, the others are not blocked waiting on the missing one as it happens with SPDY, which does multiplexing but over a single channel. This approach in QUIC solves the head-of-line blocking issue that may happen during TCP transmissions, said Shade.

A major benefit of using QUIC is the fact that it does not require a handshake step when making the first contact between a client and a server, somewhat similar to TCP Fast Open, which has been discussed since 2011 but has not seen broad adoption yet. According to Shade, the TCP handshake can take up to 300ms over a transatlantic connection if TLS is involved, while QUIC can cut that latency down to 100ms.

Another advantage of QUIC is that communication channels are not defined by IP+Port but by an ID, which makes it possible to continue a connection while switching networks, such as leaving a WiFi zone and entering a mobile one.

All QUIC connections are encrypted using a specific mechanism detailed in the QUIC Crypto document.

When asked why not use an improved version of TCP +TLS, Shade said that while TCP and TLS are being improved, the protocol iteration and its deployment are very slow, and QUIC is deployed at the client level not the kernel one, being subject to much faster iterations, “weeks rather than years.”

According to Shade, SPDY could run on top of QUIC in the future, making it even better than what it is today. Some of the lessons learned and tested by Google in practice with QUIC could be incorporated into TCP in the future.

Currently there is a client and a server available in Chromium, and QUIC is used by google.com, GMail, YouTube, and other Google services.

Resources: QUIC video, QUIC video slides, QUIC – document detailing the protocol, QUIC Wire Layout Specification – specs of the wire frames, QUIC Crypto, SPDY Indicator extension.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT