NEWS

Was man über HTTP/2 bereits heute wissen muss

Portrait des Authors


Was man über HTTP/2 bereits heute wissen muss
6

Werbung

Wir benutzen es täglich, doch viele wissen überhaupt gar nicht, was beim HTTP-Protokoll überhaupt passiert. Für die meisten Seitenaufrufe ist es aber unerlässlich und sogar notwendig, um eine Kommunikation zwischen Web-Browser und Web-Server sicherzustellen. Die für die Internet-Standards zuständige Organisation Internet Engineering Task Force (IETF) hat nun das HTTP/2-Protokoll spezifiziert. Es löst das 1999 etablierte HTTP/1.1 ab und soll den Datentransfer im Internet beschleunigen.

Das 1999 eingeführte HTTP/1.1-Protokoll hat sich inzwischen selbst überlebt. Seither hat sich viel getan und moderne Webseiten bestehen nicht mehr nur aus HTML-Inhalten, sondern auch aus Design-Elementen wie CSS oder zusätzlichen Inhalten wie JavaScript, Flash, Bilder und Videos. Alle diese einzelnen Komponenten müssen zwischen Browser und Server ausgetauscht werden - in getrennten Verbindungen. Zwischen Browser und Server besteht also nicht nur eine Verbindung, sondern gleich mehrere. Da jede Verbindung viele gleiche Informationen enthält, entstehen hier große überschüssige Datenmengen.

Immer schnellere Netzwerkverbindungen sorgten bisher dafür, dass die immer aufgeblaseneren Webseiten für den Nutzer schnell aufgebaut wurden. Doch inzwischen sind Webseiten derart komplex, dass es dennoch zu Verzögerungen im Datentransfer kommen kann, die durch eine schnellere Verbindung nicht mehr abgefangen werden können. Ausweichlösungen wie Caches, die einige Daten lokal vorhalten, sind ebenfalls nur teilweise erfolgreich.

Aufbau des HTTP-Protokolls

Aufbau des HTTP-Protokolls

Verschachtelung von Protokollen

Verschachtelung von Protokollen.

An dieser stellt kommt Google ins Spiel, die mit SPDY ein Protokoll entwickelt haben, dass weitaus effektiver als HTTP/1.1 ist. Selbst in Worst-Case-Szenarien bauen sich Internetseiten um zehn Prozent schneller auf. Im besten Fall wird ein Wert von 40 Prozent erreicht. 2012 entschied sich Google die eigenen Erkenntnisse in die Entwicklung von HTTP/2 einfließen zu lassen.

Um ein Protokoll beschleunigen zu können, sind mehrere Maßnahmen möglich. Dazu sollte auch ein gewisses Verständnis des OSI-Modells (siehe Wikipedia) vorhanden sein. Ein Protokoll wie HTTP ist nur ein kleiner Bestandteil dieses Schichten-Modells. HTTP selbst besteht aus einem "Header", in dem Informationen wie Quelle des Datenpakets, Ziel des Datenpakets sowie Informationen über die enthaltenen Daten vorhanden sind. Ein "Footer" dient unter anderem einer Fehlerkorrektur, falls diese aktiviert sind. Die wichtigen Daten befinden sich im "Payload"-Bereich. Ein HTTP-Datenpaket wandert aber nicht direkt durch das Internet, sondern wird wiederum in ein TCP-Paket, welches sich in einem IP-Paket befindet, transportiert, welches auf niedrigster Ebene per Ethernet-Protokoll übertragen wird.

Seitenaufbau mit HTTP/1.1

Seitenaufbau mit HTTP/1.1.

Diese zahlreichen Verschachtelungen jedes einzelnen HTTP-Protokolls bei jedem Verbindungs-Aufbau sind langsam und aufwändig. Je mehr Verbindungen immer wieder aufgebaut werden müssen, desto größer ist der Overhead, der erzeugt wird. HTTP/2 entledigt sich teilweise dieses Overheads und lässt Verbindungen zwischen Browser und Server länger bestehen, so dass diese nicht übermäßig häufig aufgebaut werden müssen. Von HTTP/2 ebenfalls unterstützt wird Multiplexing, also das Senden und Empfangen von mehreren Datenpaketen zur gleichen Zeit, eine Priorisierung von Datenpaketen und eine Komprimierung von HTTP-Datenpaketen. Ebenfalls entscheidend sein soll ein Server Push, bei dem der Server durch Analyse der Zugriffe bereits im Vorfeld festlegt, welche Daten als nächsten abgefragt werden könnten.

Seitenaufbau mit HTTP/2

Seitenaufbau mit HTTP/2.

HTTP/2 befindet sich derzeit in der Draft-Phase. Eine vorerst finale Version kann also bereits implementiert werden. Die IETF wartet nun darauf, dass Entwickler die aktuelle Version testen und eventuell Änderungswünsche einreichen. Bis zum 15. August 2015 ist dies nun möglich, bevor die IETF den Standard finalisieren kann.

Browser unterstützen HTTP/2 größtenteils bereits. Der Internet Explorer in Windows 10 beherrscht es bereits, Mozillas Firefox Beta 36 ebenfalls und auch der Google Chrome unterstützt es bereits in der aktuellen Version - hier muss es nur eingeschaltet werden. Größere Lücken herrschen allerdings noch bei den Web-Servern. IIS (ein Windows-Web-Server) unter Windows 10 ist zwar schon in der Lage HTTP/2 zu sprechen, Apache und Nginx müssen aber noch folgen. Für den Nutzer ändert sich nichts. Weiterhin wird http oder https vor der Adresse stehen - Unterschiede werden nur in der Geschwindigkeit der Seitenaufrufe ersichtlich werden.

Quellen und weitere Links

Werbung

KOMMENTARE (6) VGWort