Microsoft wants to speed up SPDY and HTTP 2.0
Microsoft has presented a draft proposal to the IETF that it says is aimed at making mobile apps and the web faster. The proposal is named "HTTP Speed+Mobility". A blog posting by Microsoft's Sandeep Singhal, Program Manager for Windows Core Networking, and Jean Paoli, General Manager for Microsoft's Interoperability Strategy, explains that the motivation behind the proposal is to encourage more rapid adoption of HTTP 2.0 by ensuring that it is as compatible as possible with existing infrastructure.
"SPDY has done a great job raising awareness of web performance and taking a “clean slate” approach to improving HTTP to make the Web faster", say Singhal and Paoli, but they have felt that mobile devices and applications needed to be better addressed and it is there where their proposal parts ways with SPDY.
The proposal takes elements of Google's SPDY protocol, already in discussion at IETF, and implements it using the WebSockets standard. By doing this, Microsoft hopes to avoid creating a new protocol. Elements of SPDY, such as server push, are removed, as they contradict HTTP semantics; also removed is the requirement for mandatory SSL encryption. WebSockets are used to build and maintain the persistant session between client and server with multiplexing done within the session by an SPDY-like WebSocket extension. SPDY streaming is also used for data transfer and header compression.
One of the inventors of SPDY, Mike Belshe, has commented on Microsoft's proposal saying: "It’s a huge relief for me to see Microsoft propose SPDY with a few minor tweaks." He says he views the proposal as agreement that the core of SPDY is acceptable for HTTP/2.0 and that Microsoft has raised "a couple of very reasonable questions". But he says "It’s clear that Microsoft hasn’t done much testing or experimentation with their proposal yet", and that when the data from that process is in, problems will be resolved "quite quickly". Belshe, who now works at Twist, has been developing an open source version of SPDY for iPhone.