Microsoft, Google Race to Speed Up the Web
Mar 30, 2012 3:43 PM PT
This may come as news to owners of 4G smartphones, but the Internet apparently isn't fast enough and needs to speed up. Google and Microsoft have submitted separate proposals to accomplish this.
Google's SPDY (pronounced "speedy") proposal defines and implements an application-layer protocol that reduces latency and seeks to replace parts of the HTTP protocol. It is already being used by Mozilla and Twitter.
"SPDY did not address battery life in mobile devices or the specific needs of mobile applications," Singhal pointed out. "The HTTP Speed+Mobility proposal balances both speed and power/battery requirements. In addition, HTTP Speed+Mobility ensures compatibility with existing Web infrastructure, enabling broader deployment across all types of networks."
What SPDY Proposes
SPDY adds a session layer on top of SSL that allows for multiple concurrent, interleaved streams over a single TCP connection. The usual HTTP GET and POST message formats remain unchanged. However, SPDY specifies a new framing format for encoding and transmitting data.
Streams are bidirectional, meaning they can be initiated by the client and the server.
SPDY implements request prioritization; compresses request and response headers, reducing the number of packets and bytes transmitted; and provides server-initiated streams that can deliver content to the client without the need for a client request.
Google has also built a high-speed in-memory server that can deliver both HTTP and SPDY responses efficiently over TCP and SSL. It will release this code as open source soon.
Further, Google has created a modified Google Chrome client that can use HTTP or SPDY over TCP and SSL.
Preliminary tests show SPDY does speed up the Web to some extent.
Microsoft Goes SPDY One Better
Microsoft submitted its HTTP Speed+Mobility "as a baseline proposal for discussion within the IETF working group, to raise visibility of the need and opportunity to serve the needs of mobile devices and apps," the company's Singhal said. "The proposal brings the best of SPDY and the best of other standards, such as WebSockets."
WebSocket provides for bidirectional, full duplex communications over a single TCP socket.
By mandating transport layer security encryption and header compression for all data, SPDY will increase processing time and power consumption, Sanghal pointed out. Further, its proposed server push capability "can cause extraneous data transfer, impact client sleep states, or drive up data costs unnecessarily."
Hence, "we fear that mobile devices would experience unacceptable battery drain, and even reduced performance in some scenarios," he said.
So Who's Right?
The proposals from both Google and Microsoft each have their good points.
"Implementers are encouraged by how SPDY runs currently in mobile environments," Eric Leland, a partner at FivePaths, told TechNewsWorld. "This is a very new protocol and should see significant improvements over time should it become more widely adopted. Initial reports are that SPDY is a significant speed booster, which would be of great benefit to mobile devices."
Microsoft "is building on top of SPDY and is hoping to improve on battery life and bandwidth by removing SPDY encryption and compression," Leland continued. "These are resource-heavy, and their elimination would indeed improve SPDY on both fronts."
"Microsoft working with us on SPDY is fantastic," Mike Belshe, who co-invented SPDY while he was a software engineer at Google, told TechNewsWorld. "Microsoft didn't change it much at all; it's still SPDY, and they are proposing to remove some features. This is good news for the Web."
Clout Outweighs Technology
"At this early stage, neither [proposal] is complete, and the battle is typically one of influence rather than technical competence," Rob Enderle, principal analyst at the Enderle Group, told TechNewsWorld.
However, "every part of the Microsoft proposal looks friendlier," Enderle remarked. "It is an enhancement on Google's proposal, which implies better."
Market issues also will influence the protocol finally adopted by the IETF.
"No one wants any one vendor to have too much control, and, in this instance, Microsoft is actually the white knight [battling] Google's dominance of the Internet," Enderle pointed out. "The difference between the two proposals is, one's backed by a company that's no longer seen as a major threat to Internet freedom against another company that is."
Google did not respond to our request to comment for this story.