7月 212016
 

最近好几个朋友在给网站开启 HTTP/2 后,都遇到了无法访问的问题。其中有的网站只是 Firefox 无法访问,通过控制台网络面板可以看到请求被 Abort;有的网站不但 Firefox 无法访问,连 Chrome 也会跳到错误页,错误代码是「ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY」。诡异的是,只要去掉对 HTTP/2 的支持(例如去掉 Nginx listen 配置中的 http2)就一切正常。也就是说无法访问的现象只存在于 HTTPS + HTTP/2 的组合,单独提供 HTTPS 服务时就是好的。

这个问题比较有趣,本文除了告诉大家如何解决它之外,还会帮助大家弄清问题的来龙去脉。如果你只关心结论,直接看最后的小结即可。 Continue reading »

3月 092015
 

HTTP/2规格已经制定完成,即将成为正式标准。在规格中,HTTP/2协议没有强制要求使用TLS,主要原因是许多机构都想要检查HTTP流量,或网络环境需要缓存,或认为TLS会增加额外的负担,以及认为安全证书太昂贵,等等。
虽然规格没有强迫使用TLS实现HTTP/2支持,目前浏览器开发商在实现HTTP/2支持时都是经过TLS, Firefox 和Chrome开发团队的成员明确表示他们只实现使用TLS的HTTP/2,而IE的团队成员一开始表示他们不使用TLS,但Windows 10技术预览版上第一个支持HTTP/2的测试版本也是只使用TLS。

1月 252015
 

Firefox 35 was released this week and became the first browser to enable support for the HTTP/2 protocol by default.

The HTTP/2 specification has not been finalised so Firefox actually enabled the Draft 14 version of HTTP/2 but little is expected to change in the final draft. Google is now supporting HTTP/2 draft 14 on its web servers alongside the SPDY protocol giving us a chance to compare the performance of raw HTTPS, SPDY and HTTP/2 on the same web page.

We also updated HttpWatch this week so that it supports HTTP/2 within Firefox. It has new columns to display information about the protocols being used by each request:

New HTTP/2 Columns

The Performance Comparison

The performance test used HttpWatch with Firefox to run a series of simple page load tests against the Google UK home page using the three protocols:

  • Raw HTTPS
  • SPDY/3.1
  • HTTP/2

We switched between the protocols by enabling and disabling the following entries in Firefox’s about:config page:

Controlling FIrefox Protocol Support

Each test was performed in a fresh instance of Firefox with an empty browser cache. Although this testing was simplistic and only used a simple page it does highlight some important differences between the protocols.
Continue reading »

5月 272014
 

HTTP新版标准能够让网页速度大幅提升,但新标准的推进过程也想要这样的速度则显得相当困难。本周五IETF HTTP工作组主席Mark Nottingham公开透露了HTTP 2.0推广部署,称如果开发者能够坚定不移进行使用,“我们有望在今年年底之前部署完成,享受更快的网络体验。”

“对于现在的我们来说我们有着强烈的信心和丰富的经验来确保整个部署有条不紊的推进,但是我们所营造的每个改变,尤其是每个我们添加的新功能都有可能会影响到我们的进程,我们只有坚定不移的解决、遇到问题积极解决这样才能更好的推进HTTP 2.0的推广。”

现代互联网已走向即时、多媒体互动时代,使得只能支持简单、静态网页的HTTP 1.0不敷使用。HTTP 2.0必须要能降低服务器传送内容到浏览器的延迟问题,同时还要能支持旧的HTTP 1.1,以及未来扩展的开放性。IETF将使用SPDY协议作为HTTP 2.0的基础。SPDY是Google于2009年公布的研究计划,是一种网络内容传输协议,着重于降低延迟的功能,诸如多工串流、判断要求的优先等级,以及HTTP标头的压缩等,旨在让网络传输速度加倍。

3月 062013
 

” 今年早些时候,Google为Android用户推出了Chrome浏览器的beta版,为的是让用户能够第一时间体验到这款浏览器的最新功能。在最新版本的Chrome beta(非官方地址,Google play下载地址)中,Google又给我们带来了一些惊喜。

新版的Chrome beta中加入了数据压缩功能,该功能与Opera的数据压缩功能类似,同时整合了密码同步和自动填写功能,这样移动端浏览器用户就能体验到和桌面版Chrome beta浏览器相同的体验了。

通过在浏览器地址栏中键入 chrome://flags ,用户可以开启数据压缩和其他一些实验性功能,但这些实验性功能还不是很完善,谷歌也做出了一些安全性的提示。数据压缩功能启用时,Chrome beta会连接到谷歌SPDY协议的服务器,当用户打开一个普通页面后,浏览器会通过远端服务器的优化呈现给用户一个经过精简和优化的页面。根据谷歌的说 法,这项功能将会提高约23%的页面加载速度。”

3月 032013
 

在Google既有Android移动操作系统,又拥有Chrome for Android浏览器,那么二者结合来提供类似Opera Mobile 和 Amazon Silk 那种压缩加速功能就是顺理成章的事情了,其实以前他们就有Google Web Accelerator,只不过后来被重组了。

François最新发现Chromium实验室里的SPDY描述文字有所变化,估计下一个版本的Chrome beta for Android里我们就可以在实验室里选择打开代理服务器压缩加速功能了,将允许Chrome使用Google的服务器来压缩网页,降低消耗的数据量。 Continue reading »