SPDY: An Experimental Protocol from Google for Faster Web

Google is experimenting with a new protocol to help reduce the latency of web pages.

SPDY (pronounced "SPeeDY") is an application-layer protocol for transporting content over the web, designed specifically for minimal latency.

SPDY adds a session layer atop of SSL that allows for multiple concurrent, interleaved streams over a single TCP connection. The usual HTTP GET and POST message formats remain the same; however, SPDY specifies a new framing format for encoding and transmitting the data over the wire.
Streams are bi-directional, i.e. can be initiated by the client and server. SPDY aims to achieve lower latency through basic (always enabled) and advanced (optionally enabled) features.

In addition to a specification of the protocol, Google has developed a SPDY-enabled Google Chrome browser and open-source web server. In lab tests, Google compared the performance of these applications over HTTP and SPDY, and observed up to 64% reductions in page load times in SPDY.

Goals for SPDY:

The SPDY project defines and implements an application-layer protocol for the web which greatly reduces latency. The high-level goals for SPDY are:

To target a 50% reduction in page load time.
To minimize deployment complexity. SPDY uses TCP as the underlying transport layer, so requires no changes to existing networking infrastructure.
To avoid the need for any changes to content by website authors. The only changes required to support SPDY are in the client user agent and web server applications.
To bring together like-minded parties interested in exploring protocols as a way of solving the latency problem.

Some specific technical goals are:

To allow many concurrent HTTP requests to run across a single TCP session.
To reduce the bandwidth currently used by HTTP by compressing headers and eliminating unnecessary headers.
To define a protocol that is easy to implement and server-efficient.
To make SSL the underlying transport protocol, for better security and compatibility with existing network infrastructure.
To enable the server to initiate communications with the client and push data to the client whenever possible.


This is what Google has built:

A high-speed, in-memory server which can serve both HTTP and SPDY responses efficiently, over TCP and SSL.
A modified Google Chrome client which can use HTTP or SPDY, over TCP and SSL. The source code is here.
A testing and benchmarking infrastructure that verifies pages are replicated with high fidelity.
You can download, build, run, and test the Google Chrome client code.


You can check the SPDY sessions in Google Chrome using a special URL:

chrome://net-internals/#events&q=type:SPDY_SESSION%20is:active








Share this post
  • Share to Facebook
  • Share to Twitter
  • Share to Google+
  • Share to Stumble Upon
  • Share to Evernote
  • Share to Blogger
  • Share to Email
  • Share to Yahoo Messenger
  • More...

0 comments

 
© 2014 Win Genuine
Designed by Theenathayalan
Posts RSSComments RSS
Back to top