我们的应用程序通过 HTTPS 发送了相对大量的小请求(响应 < 50 字节)。我想减少服务器带宽使用量。我想知道建立 SSL 连接使用了多少字节,看看是否值得对此进行优化(也许替换 SSL 证书?)。
是否有一个命令或工具可以用来测量我的网站 SSL 的确切开销?
答案1
你应该能够使用Wireshark记录客户端和服务器之间的请求 - 然后,您可以解密 SSL 流量(如果需要)(假设您拥有证书),以便更好地查看每个数据包中发生的情况。
在开始捕获之前,你应该停止机器上尽可能多的其他流量,但如果无法完全清除它,你应该能够通过右键单击该流中的单个数据包并单击来查看单个 TCP 流关注 TCP 流。
答案2
除非您的连接延迟非常低但带宽很低,否则主要的性能问题不是 TLS 握手中传输的字节数,而是建立 TCP 连接以及随后的 TLS 握手所需的几次往返。
因此,最好更改您的应用程序,使其对多条消息使用相同的 TLS 连接,或者至少实现会话恢复。会话恢复不仅可以减少所需的往返次数,还可以大大减少握手过程中发送的字节数。
正如另一个答案所建议的,wireshark 是一个有用的工具,可以跟踪此类问题(例如传输的字节数以及延迟)并查看优化后的效果。