Tuesday, March 22, 2011

Browser communication boost back on track.


After a security problem derailed it last year, a technology to open a high-speed browser communications link is getting back on track again.

The technology, called WebSocket, is good for Web sites that involve time-sensitive communications--multiplayer games or real-time trading, for example. A security issue raised concerns about WebSocket led to reworking of the technology, but now supporters think they've fixed WebSocket.

"It seems like it will happen very soon," said Brian Albers, vice president of development at Kaazing, which commercializes Web Sockets. "There's a meeting of the IETF at the end of the month in Prague. There's a lot of movement to get this wrapped up by then."

WebSocket abilities

What's the hurry? Simply put, a desire to use the WebSocket interface to dramatically overhaul what advanced Web programmers can do. It makes it easy to open a direct link for things like stock quotes, instant messages, or text typed into a Google Instant search box, for example.

As Web applications get more and more like applications that run natively on a computer, that becomes important. For example, in an online multiplayer game, the central game program running on a server needs to send and receive updated information from the players frequently and rapidly.

Today, communications between a browser and a Web server use the serviceable but sluggish HTTP (Hypertext Transfer Protocol) to communicate. It comes with a lot of overhead, meaning that a lot of extra data must accompany the actual information that's being exchanged. A browser must repeatedly poll a server to check for any changes.

That suits it poorly to Web pages that send or receive short, frequent updates. The amount of data for the communications overhead is dwarfs the data of the message itself by a factor of 100, and a lot of complicated programming and processing is required.

"It's like sending to business card to somebody in a cargo ship container," said Yuan Weigel, Kaazing's vice president of marketing. WebSocket, in contrast, opens a low-overhead communication channel and leaves it open for software to use.

If you want to get a flavor for its possibilities, check Kaazing's WebSocket demo page. Or try your hand the Scrabble-like WordSquared game, powered by Pusher's online WebSocket service, or Rob Hawkes' space-shooter called Rawkets. Admire the eight-computer Web-based aquarium demo, which uses WebSocket to keep the different machines in sync. Or compare (during trading hours), the performance financial quotes appearing at Cantor Index and WorldSpreads.

"You'll notice that Cantor's [prices] change on a 'polling' basis rather than live, and their pricing on this page lags Worldspreads by 2 to 3 seconds at the moment," Weigel said. "In a market where companies win or lose customers based on available real-time information, this is extremely compelling."

Of course, Kaazing has a vested interest in touting the technology. It sells proprietary server software to handle the business end of WebSocket, including higher-level technology built on the WebSocket foundation, and it also offers extras that let customers use WebSocket even if their browser doesn't have the technology built in. The company is aiming in particular for the financial services market to start.

But Kaazing isn't alone. In addition to browser makers, there's also an open-source project called Jetty that offers WebSocket support. And plenty of other companies are involved in WebSocket, including Sony, Cisco Systems, Ericsson, and Qualcomm.

Standardization progress

The Internet Engineering Task Force (IETF) is standardizing one aspect of WebSocket, the protocol by which a browser and a server communicate. The World Wide Web Consortium (W3C) is standardizing the WebSocket interface by which Web programmers use the technology

An illustration of the cache-poisoning security risk that derailed a prototype version of Web Sockets last year.

The new "-06" version of the communication protocol looks to be, if not good enough for final use, close enough to get browser makers back in action.

One example: Firefox maker and WebSocket fan Mozilla has begun testing the -06 version of WebSocket.

"Mozilla has been heavily involved in the standardization process and supports the work of the group at the IETF," said Chris Blizzard, Mozilla's director of Web platform, in a statement to CNET. "We're to the point where we're starting to do interoperability testing and many of the major issues have been resolved. So we're getting closer to the point of having an accepted standard for Web Sockets.

He was more cautious than Kaazing, though, declining to predict the outcome of the March IETF meeting.

Microsoft, which is back in the browser game with its brand-new IE9, had pooh-poohed rival browsers' eagerness to add WebSocket before it was fully tested. Safari, Firefox, Opera, and Chrome all had support, though sometimes disabled by default. And right before the IE9 launch, IE General Manager Dean Hachomovitch alluded to a somewhat foul-mouthed video chiding browser makers for inflicting pain on Web programmers.

But Microsoft is showing some enthusiasm, even if WebSocket wasn't done in time for IE9. It's letting developers test WebSocket in a HTML5 Labs proving ground, and a week and a half ago updated that software to the -06 version of WebSocket.

Of course, getting the standard finished and building support into browsers is only the first step. After that comes getting enough people to update their browsers updated and bringing the programmers on board.

If WebSocket lives up to its potential, those problems--unlike the security hiccup--should take care of themselves.

No comments:

Post a Comment