Over a million developers have joined DZone.
Platinum Partner

Will SPDY Make the Internet Faster?

· Web Dev Zone

The Web Dev Zone is brought to you in partnership with Mendix.  Discover how IT departments looking for ways to keep up with demand for business apps has caused a new breed of developers to surface - the Rapid Application Developer.

Right now, Google is working on an application-layer protocol aimed at making web pages download twice as fast.  Google revealed the early-stage research on its SPDY, pronounced "SPeeDY", protocol this week.  Initial tests of SPDY show that the top 25 websites loaded 55% faster than HTTP.

Since 1996, HTTP has been the standard of application level protocol over the web.  However, HTTP was not particularily designed for latency.  HTTP can only fetch one resource at a time.  In the last few months, Google conducted experiments with server communication techniques that resulted in a prototype web server and Google Chrome client with SPDY.

SPDY is designed to minimize latency through features such as multiplexed streams, request prioritization, and HTTP header compression.  The use of HTTP headers means that Google isn't starting from scratch with SPDY.  The SPDY protocol still uses HTTP headers, but overrides other parts of HTTP, such as data transfer formats and connection management.  SPDY uses TCP as the underlying transport layer, so no changes to existing networking infrastructure are required.

The challenge for Google will be the adoption of SPDY by multiple browsers.  If the two most popular browsers, Internet Explorer and Firefox, don't support the protocol, many people will not see the speed improvement in web browsing that SPDY offers.  Currently, Google is unveiling the SPDY protocol to engage the open source community for feedback.  

The Web Dev Zone is brought to you in partnership with Mendix.  Learn more about The Essentials of Digital Innovation and how it needs to be at the heart of every organization.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}