几年前,Mark Nottingham(后来去了Yaoo!)就HTTP的状态以及为了提升HTTP所要进行的工作做了一个演讲。从那以后,Web不断演进,HTTP被用到了很多当初并未想到的场合中,Mark也来到了Rackspace。随着HTML5的不断演进(以及WebSockets),HTTP需要进一步发展。在最近的一篇博文中,Mark介绍了对于这个运行在Web上的协议未来的路线路。Mark参加了HTTPbis工作组会议,因此能与很多权威人士交流。首先,人们在HTTP/1.1上所付出的努力已经得到了回报:
人们所阅读的[RFC2616]并未将作者真正思考的内容记录下来。我发现自己回答了很多关于规范的解释性问题,其他人和我都认识到我们需要更加仔细地将这些内容记录下来。现在这项工作已经接近了尾声;条件请求、范围请求、缓存与认证这几部分内容已经处于工作组的最后征询意见中,编辑希望不久之后其他章节也能加进来。
根据Mark所述,对这些更新的早期反馈是非常有价值的,开发者也不断重申这么做的好处所在:
缓存实现者告诉我说重新编写的第6部分极大地简化了他们的工作,其他几个澄清之处也对浏览器和其他实现有着重要的影响。
随着编辑正在完成最终的重写,将其更新到HTTP/1.1规范中也是指日可待的事情。但除了HTTP/1.1还有什么呢?正如Mark所指出的,工 作组起初并未被授权从事新的东西。然而,这个世界在过去几年间发生了翻天覆地的变化,HTTP必须要演进才行。在2009年最初的SPDY发布不久之 后,Mark说到:
换句话说,Google似乎将其当作是最终的HTTP/2.0设计的输入。
当Mike Belshe(SPDY发明者)向工作组介绍SPDY时,人们纷纷表现出对其的兴趣。除了最初的部署环境外,还有很多地方都采用了该协议,比如说Jetty、Netty与Amazon。Mark对围绕着HTTP的问题及其对工作组影响的想法早在几年前就已经记录在案了:
几年前在启动HTTPbis时,人们对创建一个新协议持很强烈的反对意见,原因有二:一是当下一团糟的界面,二是这么做所导致的部署问题。然而,我最近听到很多人在抱怨与TCP相比,HTTP所带来的诸多限制,希望未来有一天,我们能够尽快地开始解决这个问题。
基于这一点以及人们对SPDY的采用,现有的工作组需要做出变革以吸收一些HTTP/2.0的工作成果。因此,在上一次会议中,讨论开始围绕着许可 权的变革而展开。然而,相对于仅仅采用SPDY来说,工作组需要充分考虑需求并确保无论是哪个工作组从事这件事,其目的都是为了整个Web的利益。正如 Mark所总结的,工作组在未来的几年中将会有很多事情要做:
除了SPDY外,我们还介绍了其他三个提案;微软的S+M、对中间实现者之间松耦合的需求介绍以及来自Roy Fielding的Waka。
看起来大多数的参与者都以开放的心态拥抱着HTTP/2.0,他们并不会强制将现有的解决方案一成不变地转变为标准进程。目前来看,HTTP/2.0到底是什么样子还没有人能够说的出来。我们能够确定的只是Web协议将会有重要的变革,而且很可能在不远的将来就会出现。