ADC

最少数据包方法

配置为使用最少数据包方法的负载平衡虚拟服务器选择在过去 14 秒内收到的数据包最少的服务。

例如,假设三种服务,即 Service-HTTP-1、Service-HTTP-2 和 Service-HTTP-3。

  • Service-HTTP-1 在过去 14 秒内处理了三个数据包。
  • Service-HTTP-2 在过去 14 秒内处理了五个数据包。
  • Service-HTTP-3 在过去 14 秒内处理了两个数据包。

下图说明 NetScaler 设备如何使用最少数据包方法为其接收的每个请求选择服务。

图 1. 最少数据包负载平衡方法的工作原理

leastPacket-working

NetScaler 设备使用每个服务在过去 14 秒内传输和接收的数据包数量 (N) 来选择服务。使用此方法,它按如下方式传送请求:

  • Service-HTTP-3 接收第一个请求,因为此服务的 N 值最低。
  • 由于 Service-HTTP-1 和 Service-HTTP-3 现在具有相同的 N 值,因此虚拟服务器切换到循环方法。因此,Service-HTTP-1 接收第二个请求,Service-HTTP-3 接收第三个请求,Service-HTTP-1 接收第四个请求,Service-HTTP-3 接收第五个请求,Service-HTTP-1 接收第六个请求。
  • 由于 Service-HTTP-1、Service-HTTP-2 和 Service-HTTP-3 现在都具有相同的 N 值,因此虚拟服务器也切换到 Service-HTTP-2 的循环方法,将其包括在轮循列表中。因此,Service-HTTP-2 接收第七个请求,Service-HTTP-3 接收第八个请求,依此类促。

下表总结了 N 的计算方式。

已收到请求 已选服务 当前 N 值 备注
Request-1 Service-HTTP-3; (N = 2) N = 3 Service-HTTP-3 具有最低的 N 值。
Request-2 Service-HTTP-1; (N = 3) N = 4 Service-HTTP-1 和 Service-HTTP-3 具有相同的 N 值。
Request-3 Service-HTTP-3; (N = 3) N = 4 Service-HTTP-1 和 Service-HTTP-3 具有相同的 N 值。
Request-4 Service-HTTP-1; (N = 4) N = 5 -
Request-5 Service-HTTP-3; (N = 4) N = 5 -
Request-6 Service-HTTP-1; (N = 5) N = 6 Service-HTTP-1、Service-HTTP-2 和 Service-HTTP-3 具有相同的 N 值。
Request-7 Service-HTTP-2; (N = 5) N = 6 Service-HTTP-1、Service-HTTP-2 和 Service-HTTP-3 具有相同的 N 值。
Request-8 Service-HTTP-3; (N = 5) N = 6 -

注意:如果在虚拟服务器上启用 RTSP NAT 选项,则设备将使用数据和控制数据包的数量来计算 RTSP 服务的数据包数。有关 RTSP NAT 选项的详细信息,请参阅 管理 RTSP 连接

在为每个服务分配不同的权重时,NetScaler 设备还通过使用数据包和权重的数量来执行负载平衡。它使用以下表达式中的值 (Nw) 选择服务:

Nw = (N) * (10000 / 权重)

与前面的示例一样,假设为 Service-HTTP-1 分配的权重为 2,为 Service-HTTP-2 分配的权重为 3,为 Service-HTTP-3 分配的权重为 4。NetScaler 设备按以下方式传送请求:

  • Service-HTTP-3 接收第一个、第二个、第三个、第四个和第五个请求,因为该服务的 Nw 值最低。
  • Service-HTTP-1 收到第六个请求,因为该服务的 Nw 值最低。
  • Service-HTTP-3 收到第七个请求,因为该服务的 Nw 值最低。
  • Service-HTTP-2 收到第八个请求,因为该服务的 Nw 值最低。

下表总结了 Nw 的计算方式。

已收到请求 已选服务 当前 Nw 值(活动事务数量)*(10000/权重) 备注
Request-1 Service-HTTP-3; (Nw = 5000) Nw = 5000 Service-HTTP-3 的 Nw 值最低。
Request-2 Service-HTTP-3; (Nw = 5000) Nw = 7500 -
Request-3 Service-HTTP-3;(Nw = 7500) Nw = 10000 -
Request-4 Service-HTTP-3; (Nw = 10000) Nw = 12500 -
Request-5 Service-HTTP-3; (Nw = 12500) Nw = 15000 -
Request-6 Service-HTTP-1; (Nw = 15000) Nw = 20000 Service-HTTP-1 和 Service-HTTP-3 具有相同的 Nw 值。
Request-7 Service-HTTP-3; (Nw = 15000) Nw = 17500 Service-HTTP-1 和 Service-HTTP-3 具有相同的 Nw 值。
Request-8 Service-HTTP-2; (Nw = 16666.67) Nw = 20000 Service-HTTP-2 的 Nw 值最低。

下图说明了在分配权重时虚拟服务器如何使用最少数据包方法。

图 2. 分配权重时最小数据包方法的工作原理

leastPacket-weights

要配置最少数据包方法,请参阅 配置不包含策略的负载平衡方法

最少数据包方法