Datenübertragung, Datenverkehr, Datenvolumen

HTML5 - ein einfacheres Web

WebSockets

Wenn AJAX-Befehle lange brauchen, um vollständig ausgeführt zu werden, gehen sie meist mit einem Time-out zu Ende. Diese Fehlermeldungen wären für Aufgaben wie das Einsammeln der aktuellen Nachrichten ja noch akzeptabel - für interaktive Websites, die ein schnelles Server-Pinging voraussetzen, ist das jedoch nicht zu empfehlen. Um nicht ständig in regelmäßigen Zeiträumen einen Ping an den Server senden zu müssen, um Informationen aktualisieren zu können, wurde das auf TCP basierende WebSocket-Protokoll erfunden, das eine bidirektionale Verbindung zwischen Webanwendung und Web(Socket)-Server herstellt. Wo TCP Daten nur dann aktualisiert, wenn ein erneuter Ping ausgeführt wird (Pull-Verfahren), hält WebSockets die Verbindung die ganze Zeit aufrecht und kann neue Daten in Echtzeit überspielen (Push-Verfahren). Mit HTML5 wird die WebSocket-API an den Quellcode angebunden. Chrome, Firefox, Opera und Safari unterstützen WebSockets bereits - die meisten Webserver hingegen noch nicht, weshalb die Möglichkeiten keinesfalls schon nutzbar wären. Ein Beispiel für ein bereits entsprechend eingerichtetes WebSocket-Gateway-Angebot ist Kaazing.

Aber auch eine WebSocket-Verbindung ist nicht ewig stabil, von ihren Sicherheitsproblemen ganz zu schweigen. So haben Google und Mozilla die WebSocket-Unterstützung in ihren Browsern derzeit abgeschaltet, nachdem es Forschern gelungen war, über WebSockets Malware in den Browser-Cache zu laden. Die von den Wissenschaftlern vorgeschlagene Verbesserung des Browser-Codes an dieser Stelle wird von den Herstellern gerne angenommen. Bereits jetzt lässt sich die WebSocket-Unterstützung im Firefox mit wenigen Handgriffen wieder einschalten - wenn auch zunächst nur zu Testzwecken. Es wird aber nicht lange dauern, bis sich das Protokoll mit Hilfe von HTML5 auf breiter Front durchsetzt.