在ARRconfiguration为使用SSL / TLS连接到内容服务器的情况下,它是否使用SSL会话(例如RFC 5246中指定的会话标识符 ),以便与内容服务器的后续连接可以使用简短的握手?
如果是这样,可以使用与内容服务器的单个SSL会话来为多个客户端提供服务?
我知道ARR的SSL实现来自底层的schannel组件,而且我相信,如果configuration安全套接字层服务器和客户端caching元素 ,它将默认为连接的两端进行caching 。 但是,我找不到一个明确的文章来支持ARR的情况。
首先,我不知道答案,但我猜测它至less使用会话ID。
第二,我会去查找不是通过查看可能或可能不可信的文档,而是通过嗅探stream量,并以这种方式确保100%正确的答案。 我觉得这是最简单的方法,当涉及到代理可以操纵交通不同的影响 – 它实际上是否做我相信它呢?
如果我正确地记住了我的“嗅探”,SessionID是未encryption的SSL数据包标头的一部分,可以在Wireshark或任何其他数据包分析器中查看。
最后,如果你想解密为全面的见解,这也是可能的 , 在这里 ,也不是通过扣除来回答你的第二个问题,但通过有明确的stream量数据。
使用Wireshark确定答案后回答我自己的问题。
是的,AAR将使用SSL会话,这些会话可以为多个客户端提供服务。
使用Wireshark我观察到以下内容:
Client1 -> AAR GET /foo AAR -> ContentServer Client Hello ContentServer -> AAR Server Hello, Certificate, Server Hello Done AAR -> ContentServer Client Key Exchange, Change Cipher Spec, Encrypted Handshake Message ContentServer -> AAR Change Cipher Spec, Encrypted Handshake Message AAR -> ContentServer <encrypted application data>
Client2 -> AAR GET /bar AAR -> ContentServer Client Hello ContentServer -> AAR Server Hello, Change Cipher Spec, Encrypted Handshake Message AAR -> ContentServer Change Cipher Spec, Encrypted Handshake Message AAR -> ContentServer <encrypted application data>
这与“ 加快SSL”中的图表中显示的预期结果完全一致:启用会话重用 。