我有两台服务器,我们称之为Milo和Otis。 现在,当Otis接pipe共享虚拟IP时,现在Milo和Otis被设置成一个主动 – 被动的高可用服务器对,Milo通常是Otis的主人,等待Milo出现故障。 我有一个关于失败期间SSL连接会发生什么的问题。
考虑以下:
Otis是否会selectMilo自动进行的SSL会话? 我的浏览器是否开始与奥的斯沟通,奥的斯说:“嘿,我们应该先握手。”? 任何和所有关于这个评论/答案将不胜感激。
发生故障转移时,当前活动的连接将中断。 这将发生在TCP级别,所以SSL / TLS甚至不会进入现场。 TCP连接要求两个端点知道连接并且具有正确的信息(序列号,窗口大小等),所以当IP故障切换到备份机器时,将不知道主机已经build立的TCP连接。 当备份机器接收到属于先前TCP连接的数据包时,它将回复一个RST数据包,这将导致客户端closures连接。
即使TCP连接被恢复,SSL / TLS也会出现类似的情况。 每个会话在每一端都需要状态,包括会话密钥(实际上是确保应用程序数据的安全)。 备份机器不会有这个会话状态,所以现有的会话将被终止。