0

我有一个用 Delphi 编写的应用程序,它附加客户端 winhttp.dll,在服务器端它使用 mORMot(SOA/ORM 客户端-服务器库,它附加“http.sys”以实现 Web 服务器功能)。下一步也将是一个用 JS 编写的 Web 客户端。

因此,对于每个延迟约 100 毫秒的正常连接,包含 SSL/TLS 握手的时间将 > 350 毫秒。

我通过“会话恢复”和“错误启动”(通过重用证书和更快地推送数据)阅读到,延迟可能会小于 200 毫秒,这对我来说是一个很大的收获。

所以我的问题是:“http.sys”(服务器)结合“winhttp.dll”(客户端)可以使用这些进步吗?如果是,来自哪个版本?

注意:我想从 Win8.1 和 Win Server 2012 开始这是真的,但我找不到任何文档,只有 >= IIS 8.5 有会话恢复。

4

1 回答 1

0

我也在尝试找到这方面的文档,而且肯定很难找到。IISpeed.com 只是说:

“配置前向保密密码以启用 TLS 错误启动。” (https://www.iispeed.com/pagespeed/recommendations

以下是一些可能会有所帮助的 PowerShell 脚本。谨慎使用 - https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12

Ilya Grigorik 更详细地介绍了浏览器对 TLS False Start 的要求:

要在所有浏览器中启用 TLS False Start,服务器应通过 ALPN 扩展(例如,“h2, http/1.1”)公布支持的协议列表,并配置为支持和首选启用前向保密的密码套件。(https://hpbn.co/transport-layer-security-tls/#deploying-tls-false-start

一个经过良好调整的 TLS 部署应该最多添加一个额外的往返来协商 TLS 连接,无论它是新的还是恢复的,并避免所有其他延迟陷阱:配置会话恢复,并启用前向保密以启用 TLS 错误启动。(https://hpbn.co/transport-layer-security-tls/#enable-1-rtt-tls-handshakes

但是,除了 www.hass.de 上的那个页面之外,我还没有找到可以逐步指导您完成的实施指南。(H2 包含在 Ilya 的 HTTP Header 建议中,但 TLS False Start 不需要。)

不要忘记优化服务器 TLS 性能的其他方法。请务必通读 Ilya 的书https://hpbn.co/,或者至少阅读他的清单以利用其他性能提升。 https://hpbn.co/transport-layer-security-tls/#optimizing-for-tls https://hpbn.co/transport-layer-security-tls/#enable-http-strict-transport-security-hsts

于 2016-10-25T15:05:14.230 回答