测试目的:

之前看文章说,目前市面上大多数网络设备都不具备一致性哈希的特性,所以,当一台lvs出现故障,几乎所有session将会重新分配,所谓重新分配就是说,正在访问的用户将会被强制断开连接。但是文章中写到,思科有一部分设备支持此特性。

一致性哈希的好处:

一致性哈希的作用是,当一个lvs出现问题的时候,使用该lvs的用户会被重新分配到剩余的lvs上,其他用户不受影响。这个功能能最大程度减小对用户的影响。

前期调查:

通过查找思科的相关资料和询问思科售前售后工程师,均没有得到明确回复,网上没有相关的配置文档,思科工程师对此也是一无所知。

测试结果:

向思科借用ISR4331路由器做测试机。
图中数字表示client的ip。如172.16.97.65就用65表示。
图中稳定状态下,六股流量被分摊到三个lvs上。
当其中一个lvs出现问题。我们发现,六股流量发生了不同程度的改变,其中lvs3宕机,导致六股流量全部重新分配,也就是说,六个用户全部中断连接。当lvs3恢复后,流量又被重新分配,从宕机状态恢复成稳定状态,也就是说,六个用户又被中断了连接。【实验中发现,当某一台lvs宕机,网页内容的确停止了滚动,后手动点击网页任意图标(即重新发起连接),滚动内容重新恢复正常。】

lvs1宕机测试截图:

结论:

思科ios路由器不具备一致性哈希的功能。当一个lvs出现宕机,无法估计中断用户数量。用户重连后即可恢复使用。

局限性:

模拟环境只能模拟出少量client,本次模拟了六个,跟百万千万级别并发量相比,有着比较大的差距。

lvs fullnat+ECMP【7】上联路由器的哈希测试及分析_第1张图片
微信公众号,随便发点有意思的东西