负载均衡算法

负载均衡算法
负载均衡算法决定了FW如何分配业务流量到服务器上,选择合适的负载均衡算法才能获得理想的负载均衡效果。
负载均衡算法是服务器负载均衡功能的核心,通过负载均衡算法即可得到由哪台实服务器来处理业务流量。FW支持的负载均衡算法如下:
    简单轮询算法
    加权轮询算法
    最小连接算法
    加权最小连接算法
    源IP hash算法
    加权源IP hash算法

1)简单轮询算法

简单轮询算法是将客户端的业务流量依次分配到各个服务器上。

2)加权轮询算法

加权轮询算法是将客户端的业务流量按照一定权重比依次分配到各个服务器上。

3)最小连接算法

最小连接算法是将客户端的业务流量分配到并发连接数最小的服务器上。

4)加权最小连接算法

加权最小连接算法是将客户端的业务流量分配到加权并发连接数最小的服务器上。

5)源IP Hash算法

IP Hash算法是将客户端的IP地址进行Hash运算,得到Hash Index值。FW根据Hash Index值与Hash列表中服务器的对应关系,分配流量至服务器。

IP Hash算法的应用场景为当各个服务器性能差别不大,FW使用源IP Hash算法进行负载分担时,依然可以将源IP相同的客户端负载分担到同一个服务器。

6)加权源IP Hash算法

加权源IP Hash算法是将客户端的IP地址进行Hash运算,得到Hash Index值,而后通过FW调整各个服务器的权重得到Hash表中服务器新的权重值。


选择负载均衡算法时需要考虑两个主要因素:
(1)服务器的性能
根据服务器的性能差异来分配业务,可以保证设备得到充分利用,提高服务的稳定性。当各个服务器的性能不同且成一定比例关系时,可通过设置权重来实现负载均衡:性能高的服务器权重值大,分配到较多的业务;性能低的服务器权重值小,分配到较少的业务。
(2)服务器的服务类型
    服务器的服务类型不同,则会话连接的时长或服务请求的次数可能会有差异。如果用户请求的服务需要长时间保持会话连接,那么必须考虑服务器并发处理的连接数。

简单轮询算法
简单轮询算法是将客户端的业务流量依次分配到各个服务器上。如图1所示,FW将客户端的业务流量依次分配给4个服务器,当每个服务器都分配到一条流后,再从服务器S1开始重新依次分配。当业务流量较大时,经过一段时间后,各服务器的累积连接数大致相等。
简单轮询算法的优点是实现简单,效率较高。但是简单轮询算法不会考虑每个服务器上的实际负载:例如新增服务器上的负载量要小于运行一段时间的服务器,而FW仍然依次分配流量给各个服务器,导致新增服务器没有被充分利用。所以,简单轮询算法是一个静态算法,它的适用场景为服务器的性能相近,服务类型比较简单,且每条流对服务器造成的业务负载大致相等。例如,外部用户访问企业内部网络的DNS或RADIUS服务器。
图1 简单轮询算法

图片.png

加权轮询算法
加权轮询算法是将客户端的业务流量按照一定权重比依次分配到各个服务器上。如图2所示,服务器S1、S2、S3、S4的权重依次为2、1、1、1,此时服务器S1将被视为两台权重为1的服务器,所以FW连续分配两条流给S1,然后再分配接下来的三条流给服务器S2、S3、S4。当业务流量比较大时,经过一段时间后,各服务器的累积连接数比例约为2:1:1:1。
加权轮询算法的适用场景为服务器的性能不同,服务类型比较简单,且每条流对服务器造成的业务负载大致相等。例如,外部用户访问企业内部网络的DNS或RADIUS服务器,各服务器的性能存在差异。
图2 加权轮询算法

图片.png

最小连接算法
最小连接算法是将客户端的业务流量分配到并发连接数最小的服务器上。并发连接数即服务器对应的实时连接数,会话新建或老化都会影响并发连接数的大小。如图3所示,客户端发出的请求到达FW后,FW会统计4个服务器上的并发连接数。因为服务器S1上的并发连接数最小,所以连续几条流都被分配给服务器S1。
最小连接算法解决了轮询算法存在的问题,即轮询算法在分配业务流量时并不考虑每个服务器上的实际负载量,而最小连接算法会统计各个服务器上的并发连接数,保证业务流量分配到负载最小的服务器上。所以,最小连接算法是动态算法,它的适用场景为服务器的性能相近,每条流对服务器造成的业务负载大致相等,但是每条流的会话存活时间不同。例如,外部用户访问企业内部网络的HTTP服务器。
图3 最小连接算法

图片.png

加权最小连接算法
加权最小连接算法是将客户端的业务流量分配到加权并发连接数最小的服务器上。并发连接数即服务器对应的实时连接数,会话新建或老化都会影响并发连接数的大小,而加权并发连接数是考虑服务器权重后得到的实时连接数。如图4所示,服务器S1、S2、S3、S4的权重依次为2、1、1、1,此时服务器S1需要将并发连接数除以2,然后和其他权重为1的服务器进行比较。因为服务器S1的加权并发连接数最小(等于75),所以FW将接下来的几条流都分配给服务器S1。当业务流量比较大时,经过一段时间后,各服务器的并发连接数比例约为2:1:1:1。
加权最小连接算法的适用场景为服务器的性能不同,每一条流对服务器造成的业务负载大致相等,但是每一条流的会话存活时间不同。例如,外部用户访问企业内部网络的HTTP服务器,各服务器的性能存在差异。
图4 加权最小连接算法

图片.png

源IP Hash算法
源IP Hash算法是将客户端的IP地址进行Hash运算,得到Hash Index值。FW根据Hash Index值与Hash列表中服务器的对应关系,分配流量至服务器。
源IP Hash算法的应用场景为当各个服务器性能差别不大,FW使用源IP Hash算法进行负载分担时,依然可以将源IP相同的客户端负载分担到同一个服务器。
图5 源IP Hash算法

图片.png

加权源IP Hash算法
加权源IP Hash算法是将客户端的IP地址进行Hash运算,得到Hash Index值,而后通过FW调整各个服务器的权重得到Hash表中服务器新的权重值。如果服务器S1、S2、S3、S4的权重依次为2、1、1、1,则Hash表中S1、S2、S3、S4权重为2、1、1、1,最后根据Hash Index值与Hash列表中服务器的对应关系,分配流量至服务器。
源IP Hash算法的应用场景为各个服务器的性能有一定的差异,FW使用加权源IP Hash算法进行负载分担时,依然可以将源IP相同的客户端负载分担到同一个服务器。
图6 加权源IP Hssh算法

图片.png


1、本站资源长期持续更新。
2、本资源基本为原创,部分来源其他付费资源平台或互联网收集,如有侵权请联系及时处理。
3、本站大部分文章的截图来源实验测试环境,请不要在生产环境中随意模仿,以免带来灾难性后果。

转载请保留出处:  www.zh-cjh.com珠海陈坚浩博客 » 负载均衡算法

作者: cjh


手机扫一扫,手机上查看此文章:

一切源于价值!

其他 模板文件不存在: ./template/plugins/comment/pc/index.htm

未雨绸缪、居安思危!

数据安全、有备无患!

注意操作、数据无价!

一切源于价值!