What to expect in HTTP/2.0

Its been almost 15 years since a new version of HTTP was released but the wait is almost over. According to this wikipedia link  HTTP/2.0 may be ready by the end of 2014. The good news is that that all the semantics remain the same, there are no planned changes to HTTP methods and status codes, we are all 200-OK with this (pardon the pun).

The most significant change that is planned is at the transport layer with the introduction of HTTP multiplexing. A new binary framing layer in HTTP will allow the delivery of multiple requests and responses on a single shared connection without blocking each other. Currently you need open multiple connections to a server to enable parallelism or revert to something like websockets. With multiplexing all requests for resources will execute in parallel by default. Multiplexing has the potential to make many of the current performance tweaks in today’s web world obsolete. Will you still need to consider image spriting when multiple images can be requested in parallel at load time ? Will we still need to consider concatenating CSS and JavaScript into a single file to reduce the number of page requests? Maybe the real way to speed up you website will be to tweak the priority assigned of each requested resource rather than worrying about requesting too many resources.

Part of me will definitely be sad to see the end of the text based protocol. I love the idea that under the covers something as powerful as a browser and a web server can figure everything out through a simple text based protocol.

Other things coming in HTTP/2.0 include

  • Cache Pushing – proactively pushing content to the browser ahead of time to speed things up
  • HTTP Header Compression

You can check out a draft of the specification here (warning strong coffee required!)


 Update – Feb 24th

The specification for HTTP 2.0 has just been finalised, more details available here –


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s