Communications protocols are what make the internet tick. Consisting of digital rules that govern the way that messages and data are exchanged between computers, they are integral for the smooth running of any computer or network, both global and local. Over the years, many protocols have been developed, each offer specific advantages over those that came before it. A new protocol, known as SPDY has recently started gaining popularity, but what is SPDY and how can it benefit you?
SPDY (derived from the word ‘speedy’) is one of the newest communications protocols and its development is being spearheaded by Google. With the aim being to provide a standardised build of the protocol, the team behind its development are committed to creating a protocol that reduces page load times compared to the similar protocol HTTP. Whilst providing better performance than HTTP, the goal is not for SPDY to replace HTTP, but rather modify the way in which it is used.
SPDY must be supported by both web browsers and web servers in order to work, and it is currently supported by Chrome, Firefox, Opera and Internet Explorer. There are several performance-based benefits to using browser that support the SPDY protocol:
- SPDY is two layered, meaning that the upper layer handles HTTP requests whilst the lower layer deals with encoding and sending data. This is great, as it allows concurrent HTTP requests to be executed per TCP/IP session, resulting in improved performance.
- By operating in this way, SPDY also reduces the number of TCP ‘handshakes’, further speeding up response times. Furthermore, this reduction in the number of requests means there are fewer chances for packet loss, which can require requests and data to be resent.
- HTTP headers consist of a lot of redundancy, and therefore wasted bandwidth. SPDY compresses HTTP headers, further reducing the number of bytes that need to be transmitted across networks.
- Server push functionality allows associated resources from a requested URL to be delivered in the background before they have been clicked on. For example, it may download additional pages from a website when you have only clicked on the home page. Doing this silently in the background, it allows these extra resources to load more quickly if they are eventually clicked on.
- Server hints, which work similarly to server push, sends the URL of additional page content as opposed to the actual resources, making future requests on the same website slightly faster.
These points all mean that SPDY can deliver some strong performance increases when it comes to delivering data online. Google’s whitepaper on SPDY claims that these performance improvements could range from 27% – 60% compared to page load times across TCP without SSL and 39% – 55% compared to TCP with SSL. These are some serious speed improvements.
In addition to these performance gains, SPDY also contains some significant security enhancements. This is because all current iterations of SPDY have SSL (secure sockets layer) built in and mandated, providing encrypted traffic at all times. This is great in a world where secure browsing is increasingly become a concern for most users.
SPDY is an exciting new development in the web industry and its push to becoming standardised is certainly a great thing. As more browsers and web servers make use of the protocol, we will see ever increasing performance benefits across a number of different websites and applications. And when used in conjunction with advanced web acceleration technologies such as content delivery networks, we will begin to experience how the web of tomorrow might look and feel.