SPDY soll das Web doppelt so schnell machen
HTTP wurde 1996 als Standard verabschiedet und sorgt heute dafür, dass Webseiten den Weg vom Server zum Nutzer finden. Doch heutzutage kommt HTTP für Webseiten zum Einsatz, für die das Protokoll eigentlich nicht gemacht ist. Beispielsweise bestehen Webseiten heute aus einer Vielzahl kleiner Objekte, aber HTTP erlaubt eigentlich nur eine Anfrage pro Verbindung. Zwar hilft HTTP-Pipelining hier etwas, lasse aber trotzdem nur eine FIFO-Queue zu, so Google. So setzen viele Browser auf viele parallele Anfragen, um die Darstellung von Webseiten zu beschleunigen.
Darüber hinaus kann bei HTTP nur der Client eine Verbindung einleiten, selbst dann, wenn der Server den Client kennt und weiß, welche Ressourcen er benötigt.
Auch werden die Header bei HTTP unkomprimiert gesendet, was angesichts asymmetrischer Leitungen wie bei ADSL zu unnötigen Verzögerungen führt. Dank zunehmender Cookies und zunehmenden Funktionsumfangs der Clients seien Header typischerweise zwischen 700 und 800 Byte groß. Ließe sich diese Datenmenge reduzieren, könne sich das positiv auf die Latenz auswirken, so Google weiter. Dabei werden viele Header-Informationen – User-Agent, Host und Accept* – obendrein immer wieder gesendet, was unnötig sei, da sich diese Informationen nicht ändern.
Dass bei HTTP die Kompression der Daten optional ist, hält Google zudem für falsch. Daten sollten immer komprimiert werden.
SPDY soll hier Abhilfe schaffen und so die Ladezeit von Webseiten halbieren, was Google in ersten Experimenten bereits erreicht. Das Protokoll setzt auch weiterhin auf TCP auf, so dass keine Änderungen an der Netzwerkstruktur notwendig sind. Auch müssen die Autoren von Webseiten keine Anpassungen für SPDY vornehmen, Veränderungen betreffen lediglich Client und Server. Das aber setzt voraus, dass es Google gelingt, dass andere das Protokoll in ihren Browsern und Servern aufnehmen, wozu Google seinen Code als Open Source bereitstellt.
Konkret soll es SPDY erlauben, mehrere HTTP-Requests gleichzeitig in einer einzigen TCP-Session abzuwickeln, die Bandbreite gegenüber dem heute genutzten HTTP durch Eliminierung von überflüssigen Headern und Komprimierung reduzieren. Zudem soll das Protokoll einfach zu implementieren und weniger komplex als HTTP sein, ausgestattet mit einfach zu parsenden Nachrichtenformaten.
Als Basis für SPDY kommt SSL zum Einsatz. Auch wenn dies die Latenz wieder etwas erhöhe, so liege die langfristige Zukunft des Webs doch in sicheren Verbindungen. Zudem sei SSL notwendig, um sicherzustellen, dass die Kommunikation via SPDY nicht durch bestehende Proxys unterbunden wird.
SPDY soll auch eine Push-Funktion bekommen, es dem Server also erlauben, eine Verbindung zum Client aufzubauen.
Details zu Speedy samt erster Benchmarks auf Basis der Prototypen hat Google unter dev.chromium.org(öffnet im neuen Fenster) veröffentlicht. Demnach lassen sich Webseiten mit der aktuellen SPDY-Implementierung rund 55 Prozent schneller laden.



