Citrix ADC

动态往返时间方法

动态往返时间 (RTT) 是客户端的本地 DNS 服务器和数据资源之间网络中的时间或延迟的度量。要测量动态 RTT,Citrix ADC 设备会探测客户端的本地 DNS 服务器并收集 RTT 指标信息。然后,设备使用此指标作出负载平衡决策。全局服务器负载平衡监视网络的实时状态,并动态地将客户端请求定向到 RTT 值最低的数据中心。

当客户端对域的 DNS 请求发送到配置为该域的权威 DNS 的 Citrix ADC 设备时,该设备使用 RTT 值选择性能最佳站点的 IP 地址,将其作为对 DNS 请求的响应发送。

Citrix ADC 设备使用不同的机制,例如 ICMP 回显请求/答复 (PING)、UDP 和 TCP 来收集本地 DNS 服务器与参与站点之间的连接的 RTT 指标。设备首先发送 ping 探测器来确定 RTT。如果 ping 探测器失败,则使用 DNS UDP 探测器。如果该探测器也失败,设备将使用 DNS TCP 探测器。

这些机制在 Citrix ADC 设备上表示为负载平衡监视器,并且由于使用了“ldns”前缀,很容易识别这些机制。三个显示器按默认顺序分别为:

  • 地方平民
  • ldns-dns
  • ldns-tcp

这些监视器内置于设备中,并设置为安全默认值,但可以像设备上的任何其他监视器一样进行自定义。

默认顺序也可以通过将其显式设置为 GSLB 参数来更改。例如,若要将顺序设置为 DNS UDP 查询后跟 PING 和 TCP,请键入以下命令:

set gslb parameter -ldnsprobeOrder DNS PING TCP

除非经过自定义,否则 Citrix ADC 设备在端口 53 上执行 UDP 和 TCP 探测,但与常规负载平衡监视器不同,探测无需成功才能提供有效的 RTT 信息。ICMP 端口不可用消息、TCP 重置和 DNS 错误响应(通常会构成故障)都是计算 RTT 值可以接受的。

编译 RTT 数据后,设备将使用专有度量交换协议 (MEP) 在参与站点之间交换 RTT 值。计算 RTT 指标后,设备会对 RTT 值进行排序,以使用最佳(最小)RTT 指标标识数据中心。“

如果 RTT 信息不可用(例如,当客户端的本地 DNS 服务器首次访问站点时),Citrix ADC 设备将使用轮询方法选择站点并将客户端定向到站点。

若要配置动态方法,请为动态 RTT 配置站点的 GSLB 虚拟服务器。您还可以将探测本地 DNS 服务器的间隔设置为默认值以外的值。

为动态 RTT 配置 GSLB 虚拟服务器

要为动态 RTT 配置 GSLB 虚拟服务器,请指定 RTT 负载平衡方法。

Citrix ADC 设备定期验证给定本地服务器的计时信息。如果延迟变化超过配置的容差系数,设备会使用新的时序信息更新其数据库,并通过执行 MEP 交换将新值发送到其他 GSLB 站点。默认容差因子为 5 毫秒。

在整个 GSLB 域中,RTT 容差因子必须相同。如果对站点进行更改,则必须在部署在 GSLB 域中的所有 Citrix ADC 设备上配置相同的 RTT 容差系数。

使用命令行界面为动态 RTT 配置 GSLB 虚拟服务器

在命令提示窗口中,键入:

set gslb vserver <name> -lbMethod RTT -tolerance <value>

示例:

set gslb vserver Vserver-GSLB-1 -lbMethod RTT -tolerance 10

使用配置实用程序为动态 RTT 配置 GSLB 虚拟服务器

导航到流量管理 > GSLB > 虚拟服务器,然后双击虚拟服务器。

设置本地 DNS 服务器的探测间隔

Citrix ADC 设备使用不同的机制,如 ICMP 回显请求/答复 (PING)、TCP 和 UDP 来获取本地 DNS 服务器与参与的 GSLB 站点之间的连接的 RTT 指标。默认情况下,设备使用 ping 监视器并每 5 秒探测一次本地 DNS 服务器。然后,设备等待 2 秒钟的响应,如果在此时间内未收到响应,则会使用 TCP DNS 监视器进行探测。

但是,您可以修改探测本地 DNS 服务器的时间间隔以适应您的配置。

使用命令行界面修改探测间隔

在命令提示窗口中,键入:

set lb monitor <monitorName> <type> -interval <integer> <units> -resptimeout <integer> <units>

示例:

set lb monitor monitor-HTTP-1 HTTP -interval 10 sec -resptimeout 5 sec

使用配置实用程序修改探测间隔

导航到 流量管理 > 负载平衡 > 监视器 ,然后双击要修改的监视器(例如,ping)。

动态往返时间方法