
没错,Lori又在网上看东西了。她看到的内容让“小Lori”很生气,也让这位曾经的测试设计师和技术编辑忍不住落泪。说真的,无论是为这种测试找的借口,还是误导性的标题,都让我痛心不已。
过去两周,我至少读到了两篇刻意设计的“HTTPS”与“HTTP”对比文章,声称这些对比无可辩驳地证明了安全HTTP比其明文版本HTTP更快。
唉,要真是这样就好了。
关键在于,这两项比较(毫无疑问,之后还会有更多类似比较)都是将安全的HTTP/2与不安全的HTTP/1.1进行比较。上述比较中写道:“明文HTTP/1.1与加密的HTTP/2 HTTPS进行比较”。
众所周知,HTTP/2本身在设计上就比HTTP/1.1更快,原因有很多,而且都与安全性毫无关系。多路复用、“智能”标头和二进制比特流共同造就了速度更快、效率更高的协议,仅此而已。虽然在HTTP/2之上增加安全层(TLS或SSL)可能会导致性能略有下降(从数学角度看确实如此),但下降幅度不足以使其性能降至HTTP/1.1常见的水平,即使后者未启用安全保护也是如此。
遗憾的是,这些结果被宣称为HTTPS快于HTTP的无可辩驳的证据,但事实并非如此。有人认为,无法对使用安全连接的HTTP/2与明文HTTP/2进行对比测试,因为浏览器拒绝支持不启用安全机制的HTTP/2,因此无法开展此类测试。于是,有人设计了一项看似能说明二者差异的测试,但实际上根本无法说明这种差异。
诚然,比较安全的HTTP/2与不安全的HTTP/2即使并非不可能,也相当困难。虽然HTTP/2不再要求只能使用安全连接,并允许明文连接,但所有主流浏览器都拒绝支持明文连接,迄今仅支持基于TLS/SSL的HTTP/2。即使是curl等常用命令行工具,也不允许不安全的HTTP/2连接。因此,尽管规范并未作此要求,HTTPS最终还是成了事实标准。但这并不意味着可以直接比较二者,然后根据该测试得出完全荒谬、用简单数学计算即可推翻的结论。
假设一个通过HTTP/2明文传输的网页恰好需要1.2秒才能加载完成。现在加入TLS。加入TLS(或SSL)意味着需要执行更多处理,具体来说就是对数据进行加密和解密。即使这只需要0.3秒,也仍然意味着HTTPS比HTTP慢一点。就是这样。数学计算可以证明这一点,而且数学是客观的。它没有立场,也不在意结果,只会如实呈现。
而数学告诉我们,先计算X,再加上Y,就会得到Z,并且Z始终大于X或Y。
我理解推动大家采用HTTP/2的想法,因为它速度更快,也是很长时间以来HTTP迎来的第一次真正“升级”。但这需要时间,尤其是还需要进行大量升级和基础设施变更,势必会造成中断。从应用开发、运维、网络运维到安全团队,所有人都不得不放下手头的工作,进行测试、部署,然后再次测试。这还没有考虑到修改长期基于HTTP/1.1及其协议规范构建的应用所需的变更。HTTP/2改变了一切,其影响遍及整个数据中心。虽然网关可以缓解迁移本身带来的困难和中断,但并非所有人都认为有迫切需要跟进HTTP/2这一趋势。
组织将看到的性能提升,只是说明HTTP/2实现了设计者的预期,提高了速度和效率。这意味着组织应该规划应用和网络基础设施升级,以便迁移并支持新标准,无论是否通过HTTP网关。这并不意味着HTTPS比HTTP更快。
为了炮制有关所谓性能优势的标题党内容而提出明显不实的说法,完全不可接受。的确,从HTTP/1.1迁移到HTTP/2时,即使强制启用安全机制,性能也几乎肯定会有所提升。但只要遵循逻辑和数学,这绝不意味着HTTPS比HTTP更快。如果想帮助组织,就应帮助他们了解如何顺利地从旧标准过渡到新标准。提供有意义的数据,帮助他们构建业务论证,从而升级到更新、更先进的标准。还应提供相应依据,帮助他们证明从HTTP/1.x迁移到HTTP/2的投资从长远来看会获得回报。
提供指导原则和最佳实践,而不是用吸睛标题掩盖核心信息。
关于作者

Lori MacVittie是F5首席技术官办公室的杰出工程师兼首席技术布道师,在应用交付、自动化战略和基础设施领域拥有深厚的专业知识。无论是为AI智能体定义防护机制、剖析脆弱的多云架构,还是探索可扩展系统的极限,她都善于化繁为简。她在应用开发、IT架构以及网络和系统运维领域拥有30多年的行业经验。加入F5之前,她曾担任技术编辑,并因出色表现获得奖项。 MacVittie拥有计算机科学硕士学位,著述颇丰,出版作品涵盖安全、云和企业架构领域。她还热衷于桌面游戏和电子游戏,并且对奶酪有着毫不掩饰的鲜明见解。
Lori Mac Vittie 的更多博客文章相关博客文章
Thingbot正转变为攻击平台
Lori MacVittie重点介绍了F5 Labs对2018年1月至6月全球物联网设备攻击的研究,并指出了其中令人警醒的影响。物联网设备不仅持续遭到利用,还被转变为攻击平台,这意味着攻击者可以更充分地利用这个必然增长的市场。
借助F5全新Quick Start,在AWS上快速开展业务
在AWS re:Invent开幕前,我们很高兴与大家分享F5与AWS之间全新的Quick Start集成。F5的Tom Atkins将介绍该服务如何启动、配置和运行在AWS上部署工作负载所需的计算、网络、存储及其他AWS服务。