Die Zukunft der Webentwicklung: HTTP/3
Von Lukas Ganster am 21.02.2022
HTTP steht als Akronym für Hypertext Transfer Protocol und wird seit vielen Jahren als Goldstandard der Datenübertragung im Internet angesehen. Es stellt auf Anwenderebene ein Protokoll zur Übertragung von Daten dar und regelt die Kommunikation zwischen verschiedenen Rechnern in einem Netzwerk. In den meisten Fällen wird es verwendet, um Inhalte von einem Server an einen Client zu laden. (The HTTP Protocol As Implemented In W3, o. J.)
Grundlegender Aufbau von HTTP
Aus einer Zusammenarbeit der IETF (Internet Engineering Task Force) und dem W3C (World Wide Web Consortium) wurde ein weltweit gültiger Standard für das Hypertext Transfer Protocol entwickelt. Das Übertragunsprotokoll wird zustandlos betrieben, was bedeutet, dass Informationen von früheren Anforderungen nicht gespeichert werden. Durch Konzepte wie Cookies oder Local Storage wird es Programmen möglich gemacht, bestimme Informationen (zum Beispiel die Artikel eines Warenkorbes) entsprechend zuzuordnen. Durch die Verwendung des zuverlässigen und verbindungsorientierten Transportprotkolls TCP können nicht nur Hypertext-Übertragungen stattfinden, sondern jegliche Art von Datne übertragen werden.(Was ist HTTP?, o. J.)
Status quo mit HTTP/2
Die aktuell gängige Version HTTP/2, die am 14.Mai 2015 mit Google als treibende Kraft eingeführt wurde, brachte wesentliche Erneuerungen hinsichtlich der Minimierung von Bildinhalten und Skritpen sowie der Möglichkeit des Multiplexing von Requests und Respones. Primär sollten damit die Probleme hinsichtlich der Übertragsgungslatenz von HTTP/1.1 minimiert werden, um eine Beschleunigung der Netzwerkverbindung und des Internets im Allgemeinen zu erreichen (Belshe et al., 2015). Aktuell bieten knapp 97% aller modernen Webbrowser eine Unterstützung für Version 2, wie auf Abbildung 1 zu sehen ist.
Statistiken über die Verwendung des Standards von 2015 im Internet zeigen, dass etwa 46.5% aller Webseiten, wie Statistiken über die Verwendung des Standards im Internet zeigen, dass etwa 46.5% aller Webseiten, wie auf Abbildung 2 illustriert, die Version 2 integriert haben. Die aktuellen Datenlage zeigt also, dass HTTP/2 wesentliche technische Verbesserungen im Bereich der Ladezeiten bietet, aber dennoch noch nicht flächendeckend verwendet wird und inzwischen sogar eine dritte Iteration vor der Tür steht.
Was ist HTTP/3?
Zum Zeitpunkt des Verfassens dieses Artikels im Februar 2022, handelt es sich bei HTTP/3 um einen IETF-Internet-Draft oder ID, was heißt, dass es derzeit von der Internet Engineering Task Force – einem internationalen Gremium für Standards im Internet wie TCP oder IPv6 für eine Klassifizierung als kommender offizieller Internet-Standard geprüft wird (AUTH48 status page for C430 » RFC Editor, o. J.). Bei der neuen Iteration wurde das Rad aber keinesfalls neu erfunden, sondern von der IETF einfach die Zeichen der Zeit erkannt und ein neueres Webprotokoll entworfen, dass mehr Sicherheit bieten, eine Übertragung sowie effektivere Verbindungen gewährleisten soll.
Google entwickelt bereits seit dem Jahr 2012 an einer Alternative der bisher gängigen Datenübertragung bei HTTP bis zur Version 2. Das Übertragungsprotokoll QUIC, was soviel wie Quick UDP Internet Connections heißt, setzt im Vergleich zu den bisherigen Versionen auf das verbindungslose Transportprotokoll User Datagram Protocol (UDP) und soll in naher Zukunft die TCP-basierten Verbindungsprotokolle ablösen. UDP baut während des Datentransports keine expliziten Verbindungsleitungen auf und verlangt keine Bestätigung des Datenempfangs. Eventuell erforderliche Fehlerkorrekturen erfolgen auf QUIC-Ebene, was letztlich die Anzahl der Pakete reduziert und zu einer erheblichen Geschwindigkeitssteigerung führt. Die IETF einigte sich darauf, dass von Google präsentierte Technologie QUIC als Grundlage für die nächste HTTP-Version herangezogen werden soll (HTTP/3, o. J.-a, S. 3).
Vorteile und mögliche Probleme von HTTP/3
Bei HTTP/3 werden die einzelnen Datenströme getrennt behandelt. Geht ein Paket auf dem Weg verloren, sind also nicht mehr alle Datenströme betroffen, wie es bei einer TCP-Übertragung der Fall war. Stattdessen muss bei HTTP/3 nur der tatsächlich betroffene Datenstrom warten, bis das fehlende Paket nachgeliefert wird. Zusätzlich dazu wird auch noch die Paketumlautzeit reduziert. Dabei handelt es sich um die Zeit, die ein Datenpaket benötigt, um an seinem Ziel anzukommen, zusätzlich zu der Zeit, die für die Bestätigung des Empfangs der Daten erforderlich wäre.
Die Verbindungen in der zu QUIC-Technologie werden über die IP-Adresse sowie einen UDP-Port aufgebaut. Sobald die Verbindung erfolgreich aufgebaut worden ist, wird eine eindeutige Verbindungskennung vergeben, mit der es in weiterer Folge dann auch möglich ist, die Verbindung unabhängig von der jeweiligen IP-Adresse zuzuordnen. Somit ist es durchaus möglich, einen Download auf einem Gerät in einem WLAN-Netzwerk zu starten und später mit dem Mobilfunknetzt fortzuführen (HTTP/3, o. J.-b).
Ein großes Problem welches die Einführung von einem UDP-basierten Standard mit sich bringen könnte wäre, dass das mit TCP verbundene Verschlüsselungsprotokoll Transport Layer Security (TLS) auch verloren ginge. Da Sicherheitsüberprüfung und Verschlüsselung dann nicht mehr über TLS, sondern über UDP direkt erfolgt, befürchten viele Provider einen massiven Anstieg von schlecht zu prüfender Datenübertragung (HTTP/3, o. J.-a, S. 3).
Fazit und Ausblick
Die grundlegenden Ideen und Vorstellungen von HTTP/3 sind alle nachvollziehbar und bringen in der Theorie deutliche Verbesserungen zum bisherigen Hypertext Transfer Protocol. Vor allem die schnelleren Datenübertragunsraten könnten für eine, immer vernetztere Welt und Innovationen wie Internet of Things oder Cloud-Services einen deutlichen Mehrwert darstellen.
Ob und wie schnell der Entwurf auch offiziell als Standard klassifiziert bleibt in der Praxis abzuwarten. Inzwischen haben aber bereits alle modernen Browser wie Chrome, Mozilla und Safari eine Unterstützung für die neue Technologie vorgestellt (HTTP/3 protocol | Can I use… Support tables for HTML5, CSS3, etc, o. J.). Sobald dieser Standard dann verabschiedet wurde, muss das neue Protokoll dann auch von der breiten Masse akzeptiert und implementiert werden. Realistisch betrachtet, dürften aber noch einige Jahre vergehen.
Literaturverzeichnis
AUTH48 status page for C430 » RFC Editor. (o. J.). Abgerufen 21. Februar 2022, von https://www.rfc-editor.org/auth48/C430
Belshe, M., Peon, R., & Thomson, M. (2015). Hypertext Transfer Protocol Version 2 (HTTP/2) (Request for Comments RFC 7540). Internet Engineering Task Force. https://doi.org/10.17487/RFC7540
„http2“ | Can I use… Support tables for HTML5, CSS3, etc. (o. J.). Abgerufen 5. Februar 2022, von https://caniuse.com/?search=http2
HTTP/3: Das nächste Hypertext Transfer Protocol einfach erklärt. (o. J.-a). IONOS Digitalguide. Abgerufen 21. Februar 2022, von https://www.ionos.at/digitalguide/hosting/hosting-technik/http3-erklaert/
HTTP/3 protocol | Can I use… Support tables for HTML5, CSS3, etc. (o. J.). Abgerufen 21. Februar 2022, von https://caniuse.com/http3
HTTP/3: Wir erklären die nächste Version des Hypertext Transfer Protocols. (o. J.-b). t3n Magazin. Abgerufen 21. Februar 2022, von https://t3n.de/news/http3-erklaert-hyper-text-transport-protocol-1398125/
The HTTP Protocol As Implemented In W3. (o. J.). Abgerufen 5. Februar 2022, von https://www.w3.org/Protocols/HTTP/AsImplemented.html
Usage Statistics of HTTP/2 for Websites, February 2022. (o. J.). Abgerufen 5. Februar 2022, von https://w3techs.com/technologies/details/ce-http2
Was ist HTTP? (o. J.). IONOS Digitalguide. Abgerufen 5. Februar 2022, von https://www.ionos.de/digitalguide/hosting/hosting-technik/was-ist-http/
The comments are closed.