HTTP stands for Hypertext Transfer Protocol and it’s a request-response protocol that drives the web. Think of your browser as the client requesting information. It puts this request into a HTTP message and sends it to the server. The server will then send the response back to the browser. That response may be a picture or a webpage, for example.
There are many techniques that attempt to alleviate the data transfer, but these methods are still at the mercy of HTTP/1.1 and its rules. Images can be compressed, resulting in less data transferred, or a server can tell the browser to store files locally (caching) so that future requests for that resource are pulled locally instead of being transferred again by the server. Web developers can bundle and minify resources. Instead of having 3 or 4 CSS files referenced (which means 3 or 4 request/responses over HTTP), we take those files and make one larger file. We can then take out white space and shorten it up to make it as small as possible.
So far, those solutions have worked but what really needs to happen is an evaluation of HTTP and a new version that is in line with today’s web. Enter HTTP/2.
In order to realize the benefits, both the client and the server have to communicate via HTTP/2 and luckily the roll out of support has already begun. Realizing the full value is still a year or two away, however. Internet Explorer and “Spartan” will support it in Windows 10, Chrome and Firefox already support it. On the server end, the next version of Microsoft’s IIS will support it, with Apache support expected soon.
There is more to HTTP/2, but hopefully this has introduced to you a very important piece of the web, and how it’s being improved.