我正在尝试使用SPDY(使用Node.js)在高延迟连接上使用。
现在SPDY使用TLS加密,这会增加数据包长度 - 我正试图避免这种情况。
是否存在没有TLS加密的SPDY实现?
非常感谢,
答案 0 :(得分:14)
SPDY的框架层不需要在TLS上运行,但出于部署原因,它几乎总是如此。由于中介,在没有通过端口443运行加密的情况下很难可靠地部署。请注意SPDY whitepaper说:“要使SSL成为底层传输协议,以获得更好的安全性并与现有网络基础架构兼容。尽管SSL确实会引入延迟,但我们认为Web的长期未来取决于此外,必须使用SSL来确保跨现有代理的通信不会中断。“
也就是说,Chromium存储库中的C ++ Flip服务器支持不使用SSL运行,并且可以配置Chromium浏览器来支持此功能。
PS:还有一个现有的node.js实现,请参阅http://www.chromium.org/spdy。
答案 1 :(得分:4)
如果要在本地测试SPDY服务器而不使用TLS,即使没有NPN升级,也可以强制chrome使用SPDY。为此,请在加载Chrome时将--use-spdy=no-ssl
传递给Chrome。
您可以通过打开chrome://net-internals/#spdy
并在那里办理登记来确认该国家已注册。
答案 2 :(得分:3)
如果您正在使用node-spdy实现SPDY服务器,那么您可以使用plain: true, ssl: false
选项来实现您的目标。
可以向plain发出请求:使用spdycat的真正的spdy-server cli实用程序,明确指定协议版本(-3或-2和 --no-TLS)。要在浏览器中使用它,您需要使用--use-spdy = no-ssl标志启动chrome。
但请记住,SPDY应该在TLS(SSL)服务器上 或者在TLS(SSL)终结器后面,否则不适合服务 web的内容。
答案 3 :(得分:1)
我建议QUIC协议正在开发中,基于UDP而不是TCP / TLS,但仍然有SPDY的好处,Chrome已经支持它