Ob SPDY hält, was Google verspricht?
Kommentare

Http ist das Synonym für Internet. Doch hat das Hypertext Transport Protocol durchaus etliche Schwächen, die Webseiten und Anwendungen ausbremsen. Als Gegenmaßnahme hat Google SPDY (sprich: „speedy“),

Http ist das Synonym für Internet. Doch hat das Hypertext Transport Protocol durchaus etliche Schwächen, die Webseiten und Anwendungen ausbremsen. Als Gegenmaßnahme hat Google SPDY (sprich: „speedy“), ein zu Https kompatibles Protokoll, ins Rennen geschickt. Der Http-Nachfolger verspricht, die Anzahl der Requests zu reduzieren, sämtliche Daten zu komprimieren und Server Push zu erlauben. Ob SPDY tatsächlich hält, was Google verspricht – und welche Chancen SPDY hat, die Nachfolge von Http anzutreten, beantwortete Fabian Lange von Codecentric in seiner IPC-Session „SPDY – Http Reloaded“

Fabian Lange auf der IPC 2012: „SPDY http reloaded“

Zunächst einmal ein Ausflug in die Historie. Im Jahre 2009 trat Google mit seinem Ansinnen auf den Plan, das in die Jahre gekommene Http zu verbessern. Mit einzelnen Überarbeitungen ließ sich Http dabei aber nicht retten, stattdessen wurde der Nachfolger SPDY entwickelt. Das neue Protokoll adressiert fünf Probleme:

  • Im Http-Protokoll gibt es traditioneller Weise nur einen Request (Get) auf einmal – bei vielen Bildern bedeutet das: viele Gets hintereinander
  • Requests sind nur vom Client aus möglich, nicht vom Server
  • Header-Daten werden nicht komprimiert
  • Viel Header-Daten sind redundant
  • Datenkompression ist bei http nur optional

Zur Reduzierung der Requests implementiert SPDY ein Verfahren, das dem seit Http 1.1 bekannten Pipelining ähnelt. Es baut eine einzige TCP-Verbindung auf, über die dann alle Requests laufen. Daten können so in beliebig großen Teilen versendet werden. Auch eine Reihenfolge muss nicht eingehalten werden, da über Sequenznummern die Requests und die Antworten auch in Teilen identifiziert werden können.

Für die bidirektionale Kommunikation zwischen Server und Client wird traditioneller Weise das so genannte Long Polling verwendet: Der Browser öffnet einen Request zum Server, rechnet aber bei der Anfrage damit, dass die Antwort lange auf sich warten lassen kann. Liegen Daten auf dem Server vor, so werden diese übertragen, der Request ist abgearbeitet und die Verbindung wird getrennt und muss vom Browser erneut aufgebaut werden.

SPDY nutzt zwar auch eine lang laufende Verbindung, jedoch wird sie für sämtliche Kommunikation bidirektional genutzt und nicht beendet. Das erlaubt nicht nur das Pushen von Daten durch den Server an den Client, sondern auch das Konzept „Server Hint“: Es werden nicht gleich alle Daten übertragen. Stattdessen wird dem Browser signalisiert, dass Daten bereit liegen.

Im Gegensatz zu Http ist in SPDY die Komprimierung von Daten nicht optional, sondern der Standard. Alle Daten werden ZLib-komprimiert übertragen, auch die Header-Daten. Beispielsweise werden so größere Cookies schneller übertragen – was natürlich Googles „kundenzentriertem“ Geschäftsmodell entgegenkommt.

Wie sieht es aber nun mit der Verbreitung des SPDY-Protokolls aus?

Fabian Lange sieht hier durchaus gute Chancen gegeben, dass SPDY tatsächlich zum Http-Nachfolger avancieren wird. Denn im Gegensatz zu ähnlichen Initiativen wie „Speed and Mobility“ von Microsoft ist SPDY schon in einer Vielzahl von Browsern implementiert. Aktuell unterstützt wird SPDY in Chrome seit 11, Ice Cream Sandwich, Amazon Silk (Kindle Fire), Firefox ab 13, Opera seit 12.1. Auf der Client-Seite sprechen SPDY u.a. Apache mod_spdy, erlang-spdy, node-spdy, netty 3.3.1, Jetty 7.6.2 und Tomcat ab der kommenden Version 8.0.0-dev.

Implementiert und genutzt wird SPDY von einer illusteren Schar an Internet-Größen, neben Google auch von Facebook, Twitter, Mozilla und WordPress. Für SPDY spricht auch, dass es rückwärtskompatibel zu Https ist – der User merkt also eigentlich nichts vom Einsatz von SPDY. Als neueste Entwicklung zeichnet sich zudem ab, dass SPDY als Support Standard in Http 2.0 aufgenommen werden wird.

Deshalb kann Fabian die Publikumsfrage nach dem SPDY-Support im Internet Explorer gelassen beantworten: Die Hälfte des Web spricht bereits SPDY – es ist also abzusehen, dass SPDY sich zu einem wirklichen Webstandard entwickeln wird. Und selbst Microsoft sei mittlerweile so weit, nicht mehr nur auf proprietäre Technologien zu setzen, sondern Webstandards zu unterstützen. Wenn SPDY also Webstandard wird, dann wird wohl auch der Internet Explorer SPDY lernen – oder er wird weiter an Marktanteilen verlieren. Augenzwinkernd fügt Fabian hinzu: Letzteres wäre für uns ja aber auch kein Problem.

Fabians Fazit lautet denn auch gleich wie der Slogan zu SPDY:

Let´s make the Web faster – natürlich mit SPDY!

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -