von Thomas
Erstellt am 14.06.2019
Das neue Protokoll, bzw. die neue Version des Netzwerkprotokolls HTTP steht in den Startlöchern. Es wird Version 3 sein, wobei HTTP/2 erst von knapp 40 % der Internetnutzer verwendet wird (Stand Juni 2019).
Da stellt sich einem die Frage – Wieso bereits HTTP Version 3, wenn die meisten Version 2 noch nicht verwenden? Der Hauptgrund liegt darin, dass HTTP/2 noch auf dem Transportprotokoll TCP basiert. TCP ist eine Transportmethode mit viel Protokoll-Overhead. Die transportieren Daten im Internet werden von Tag zu Tag größer, daher ist es nötig Protokolle weiter zu entwickeln.
Werden die Protokolle im Schichtenmodell verglichen, wird der Unterschied deutlicher.
Anwendung | HTTP/2 | HTTP/3 |
---|---|---|
Transport | TLS | QUIC |
TCP | UDP | |
Internet | IP | IP |
Netzwerk | Ethernet, WI-FI, etc. | Ethernet, WI-FI, etc. |
HTTP/2 basiert auf dem Transportprotokoll TCP, das durch Handshakes zwischen Client-Server viel Overhead erzeugt. HTTP/3 basiert auf QUIC und nutz UDP als verbindungsloses Transportprotokoll mit bedeutend weniger Overhead. UDP muss keine Verbindung etablieren. Gleichzeitig verschlüsselt QUIC die Daten direkt mit, wodurch der Layer bzgl. TLS wegfällt. Ein weiterer Vorteil ist, dass die Metadaten bei QUIC verschlüsselt werden. TLS hingegen verschlüsselt nur den Payload (Daten).
Prinzipiell ist bei HTTP/2 Multiplexing möglich, aber wirkliches asynchrones senden von Daten ist nicht möglich. Verloren gegangene Daten werden neu angefordert und müssen erneut zugestellt werden. Dabei wartet die ganze Übertragung auf das wieder angeforderte Paket. HTTP over QUIC (HTTP3) hingegen kann Anfragen asynchron absetzten und unterwegs verloren gegangene Pakete kompensieren.
QUIC bringt zusätzlich eine neue Identifizierung von Verbindungen mit. Dem Header wird eine 64-Bit-Kennung angehängt, welche netzwerkunabhängig arbeiten kann. Wechselt die Verbindung von einem Mobiltelefon aus dem WLAN in das mobile Netz, wird sie nicht unterbrochen. Die Verbindung ist netzwerkübergreifend. HTTP/2 ist mit TCP auf ein bestimmtes Netzwerk und Port festgelegt ist.
Die QUIC-Arbeitsgruppe innerhalb der IETF ist kurz davor, den 20. Entwurf zu veröffentlichen (Stand Juni 2019). Der Standard sollte Ende diesen Jahres (2019) fertig sein. Erst danach ist damit zu rechnen, dass Clientsoftware wie (Mozilla Firefox, Google Chrome, etc.) das Protokoll implementieren.