Auch wenn es so scheinen mag, ist QUIC kein Akronym. QUIC ist der Name des Transport-Protokolls, das auf eine Entwicklung von Google zurückgeht. Der Google-eigene Streaming-Dienst Youtube bietet seit Jahren Abspielen von Videos mittels QUIC an. Unterstützt der Client dieses neue Protokoll, wird QUIC statt TCP für Streaming genutzt. Für die Google-eigenen Clients trifft das zu.
QUIC ist seit Mai 2021 im RFC 9000 standardisiert. Der Titel dieses Dokuments lautet: „QUIC: A UDP-Based Multiplexed and Secure Transport”.
QUIC unterstützt wie das 40 Jahre alte Transmission Control Protocol (TCP) Flusskontrolle in dem Sinne, dass der Empfänger dem Sender die Senderate vorgibt.
QUIC unterscheidet sich von TCP u.a. in folgenden Punkten:
- Schneller Verbindungsaufbau: Es ist möglich, direkt im ersten Paket Daten zu senden (Zero RTT).
- Der Wechsel des Übertragungspfades wird unterstützt. D.h., die QUIC-Verbindung bleibt bestehen, selbst wenn sich die IP-Adresse eines der Kommunikationspartner zwischenzeitlich ändern sollte.
- QUIC unterstützt Sicherheitsmaßnahmen für Vertraulichkeit und Integrität. Dazu nutzt QUIC die Mechanismen, die auch von Transport Layer Security (TLS) unterstützt werden, insbesondere für die Aushandlung von Schlüsseln.
- 0-RTT: QUIC unterstützt den sofortigen Start des Sendevorgangs durch Cients, ohne einen vorherigen Verbindungsaufbau abzuwarten.
- QUIC nutzt UDP.
- QUIC-Streams können bidirektional oder unidirektional sein.
- Es ist bei QUIC anders als bei TCP zulässig, Daten auch außer der Reihe einer Applikation zu übergeben. Das löst das Problem von Head-Of-Line (HOL) Blocking, wenn Datenverluste tolerierbar sind. Dieser Modus ist für Echtzeit-Audio/Video geeignet.
Wie bei TCP ist QUIC ein Client-Server-Protokoll. Als Client gilt der Endpunkt, der eine QUIC-Verbindung initiiert, als Server der Endpunkt, der eine QUIC-Verbindung akzeptiert.
QUIC-Endgeräte müssen in der Lage sein, Streams mit der festgelegten Reihenfolge an Applikationen zu übergeben. Dieses Verhalten entspricht dem Verhalten von TCP. Hierzu muss ein Endgerät außer der Reihe empfangene Bytes bis zu einer vom Mechanismus der Flusskontrolle bestimmten Grenze zwischenspeichern.
Es ist damit zu rechnen, dass einige TCP-Applikationen auf QUIC umgestellt werden. Das gilt jedoch nicht für alle Anwendungen.