Citrix SD-WAN WANOP

WCCP 群集

通过 WCCP 群集功能,您可以将多个 SD-WAN 设备分配给相同的链接,从而使加速容量倍增。您最多可以集群 32 台相同的设备,容量可达 32 倍。因为它使用 WCCP 2.0 标准,WCCP 群集适用于大多数路由器和一些智能交换机,很可能包括您已经使用的交换机。

因为它使用分散式协议,WCCP 群集允许随意添加或删除 SD-WAN 设备。如果设备发生故障,则其流量将重新路由到存在的设备。

SD-WAN 高可用性(使用两台设备来提供单台设备的性能)与 SD-WAN 高可用性不同,作为 WCCP 群集部署的相同设备的性能是单台设备的两倍,既提供冗余又提高了性能。

除了随着站点需求的增加添加更多设备外,您还可以使用 Citrix 的 “随增长付费” 功能通过许可证升级提高设备的功能。

建议用于管理 WCCP 群集时使用 CitrixCommand Center。下图显示了 WCCP 模式下 SD-WAN 设备群集的基本网络,由 Citrix Command Center 管理。

图 1. 使用 Citrix Command Center 管理的 SD-WAN 群集

本地化后的图片

负载平衡 WCCP 集群

WCCP 协议在称为集群的容错负载平衡阵列中支持多达 32 台设备。在下面的示例中,除了 IP 地址之外,三个相同的设备(相同型号、相同的软件版本)以相同的方式连接并配置相同。使用具有相同路由器的相同服务组的设备可以成为负载平衡的 WCCP 群集。当新设备向路由器注册自身时,它可以加入现有设备池并接收其所占的流量份额。如果设备离开网络(如没有检测信号所示),则会重新平衡群集,以便仅使用剩余设备。

图 2. 一个具有三个设备的负载均衡的 WCCP 集群

本地化后的图片

群集中的一个设备被选为指定缓存,并控制群集中设备的负载平衡行为。指定的缓存是 IP 地址最低的设备。由于设备具有相同的配置,所以哪一个是指定的缓存并不重要。如果当前指定的缓存脱机,则不同的设备将成为指定的缓存。

指定的缓存确定负载平衡流量的分配方式,并通知路由器这些决策。路由器与集群的所有成员共享信息,因此即使指定的缓存脱机,群集也可以运行。

注意:按照正常配置,SD-WAN 4000/5000 设备显示为两个 WCCP 缓存到路由器中。

负载均衡算法

WCCP 中的负载平衡是静态的,除非设备进入或离开群集,这会导致群集在其当前成员之间重新平衡。

WCCP 标准支持基于掩码或散列的负载平衡。例如,SD-WAN WCCP 群集仅使用掩码方法,使用的掩码为 1-6 位的 32 位 IP 地址。这些地址位可以是非连续的。将蒙版时产生相同结果的所有地址发送到同一设备。负载平衡的有效性取决于选择合适的掩码值:如果选择较差的掩码可能会导致负载平衡不佳,甚至没有任何流量,所有流量都发送到单个设备。

部署拓扑

根据您的网络拓扑,您可以使用单个路由器或多个路由器部署 WCCP 群集。无论是连接到单个路由器还是多个路由器,群集中的每个设备都必须与正在使用的所有路由器相同连接。

单路由器部署

在下图中,三个 SD-WAN 设备可加速数据中心的 200 Mbps WAN。该网站支持 750 个虚拟应用程序用户。

本地化后的图片

如上所示SD-WAN 数据表,SD-WAN 3000-100 可以支持 100 Mbps 和 400 用户,因此一对这些设备支持 200 Mbps 和 800 用户,这满足了数据中心对 200 Mbps 链路和 750 的要求用户。

但是,为了容错,如果一台设备发生故障,WCCP 群集应继续运行,而不会出现过载。当计算需要两个时,可以通过使用三个设备来实现这一点。这就是所谓的 N+1 规则。

故障是一个不寻常的事件,所以通常所有三个设备都在运行。在这种情况下,每个设备只支持 67 Mbps 和 250 个用户,留下了大量的余量,并且充分利用集群的 CPU 功率是单个设备的三倍和压缩历史记录的三倍这一事实。

如果没有 WCCP 群集,那么多的容量和容错将需要一对 SD-WAN 4000-500 设备处于高可用性模式。一次只有其中一个设备处于活动状态。

多路由器部署

使用多个 WAN 路由器类似于使用单个 WAN 路由器。如果上一个示例被更改为包括两个 100 Mbps 的链接而不是一个 200 Mbps 的链接,则拓扑会更改,但计算不会更改。

本地化后的图片

限制

在 WCCP 群集中配置设备有以下限制:

  • 群集中的所有设备必须是同一型号并使用相同的软件版本。
  • 群集内设备之间的参数同步不是自动的。使用 Command Center 将设备作为一个组进行管理。
  • SD-WAN 流量成形不是有效的,因为它依赖于将整个链路作为一个单元进行控制,并且没有一个设备能够做到这一点。可以改用路由器 QoS。
  • 基于 WCCP 的负载平衡算法不会随负载动态变化,因此实现良好的负载平衡需要进行一些调整。
  • 不支持缓存分配的哈希方法。掩码分配是支持的方法。
  • 虽然 WCCP 标准允许蒙版长度为 1-7 位,但设备支持 1-6 位的蒙版。
  • 不支持多播服务组。仅支持单播服务组。
  • 使用相同服务组对的所有路由器必须支持相同的转发方法(GRE 或 L2)。
  • 与路由器协商的转发和返回方法必须匹配:两者必须是 GRE 或两者都必须是 L2. 一些路由器在两个方向上不支持 L2,导致 “路由器的前进或返回或分配功能不匹配” 的错误。“ 在这种情况下,服务组必须配置为 GRE。
  • SD-WAN VPX 不支持 WCCP 群集。
  • 设备仅支持(并协商)未加权(等于)缓存分配。不支持加权分配。
  • 某些较旧的设备(如 SD-WAN 700)不支持 WCCP 群集。
  • (仅限 SD-WAN 4000/5000)L2 模式下,每个接口需要两个加速器实例。每个设备支持三个接口(然后仅支持具有六个或更多加速器实例的设备)。
  • (仅限 SD-WAN 4000/5000)来自路由器的 WCCP 控制数据包必须与服务组的设备上配置的路由器 IP 地址之一匹配。实际上,应使用路由器的 IP 地址连接到设备的接口。无法使用路由器的环回 IP。

部署工作表和群集限制

在下面的工作表中,您可以计算安装所需的设备数量和建议的掩码字段大小。建议的蒙版大小比安装的最小蒙版大小大 1-2 位。

     
参数 备注
使用的设备型号  
支持的 Citrix Virtual Apps and Desktops 每台设备 Uspec = 来自数据手册
WAN 链接上的 Citrix Virtual Apps and Desktops 用户 Uwan =
用户过载系数 Uoverload = Uwan/Uspec =
每台设备支持的 BW BWspec = 来自数据手册
广域网连接路 BWwan =
BW 过载系数 BWoverload = BWwan/BWspec =
所需设备数量 N = max(Uoverload, BWoverload) +1 = 包括一个备用品
   
存储桶的最小数量 Bmin = N,向上四舍五入 2 =
如果使用 SD-WAN 4000 或 5000, Bmin = 2N,四舍五入到 2 =
建议值 如果 Bmin <= 16,则 B = 4 Bmin,否则 2 Bmin =
地址掩码中的 “一” 位数 M = log2(B) 如果 B=16,M=4。

掩码值:掩码值是一个 32 位地址掩码,其中多个“一”位等于前面提供的工作表中的 M。通常,这些位可以是远程站点使用的 WAN 子网掩码中的最小有效位。如果远程站点的蒙版不同,请使用中位数蒙版。(例如:对于 /24 子网,子网的最小有效位为 0x00 00 nn 00。要设置为一的位数为 log2(掩码大小):如果掩码大小为 16,请将 4 位设置为一。因此,对于掩码大小为 16 和 /24 子网,请将掩码值设置为 0x00 00 0f 00。)

仅当所选子网字段在流量中均匀分布时,上述准则才起作用,也就是说,掩码选择的每个地址位对于一半远程主机,对于另一半则是零。否则,负载平衡会受损。这种均匀分布可能只适用于网络字段中的几位(只有 2 位)。如果您的网络是这样,而不是掩盖子网字段的违规区域中的位,而是将这些位置置换到具有 50/50 属性的主机地址字段的一部分。例如,如果一个 /24 子网中只有三个子网位具有 50/50 属性,并且您正在使用四个掩码位,则 0x00 07 10 的掩码可避免 0x00 00 0800 的违规位,并将其置换为 0x00 00 00 00 10,地址字段的一部分可能具有 50/50 属性,如果远程子网通常每个至少使用 32 个 IP 地址。

     
参数 备注
最终遮罩值  
加速桥   通常 apA
WAN 服务组   路由器上尚未使用的服务组 (51-255)
LAN 服务组   另一个未使用的服务组
路由器 IP 地址   面向设备的端口上路由器接口的 IP 地址
WCCP 协议(通常为 “自动”)  
DC 算法   如果您只有两台设备或正在使用 HSRP 或 GSLB 等动态负载平衡,请使用 “确定性”。否则,请使用 “破坏性最小”。

在 WCCP 群集中配置设备有以下限制:

  • 群集中的所有设备必须是同一型号并使用相同的软件版本。
  • 群集内设备之间的参数同步不是自动的。使用 Command Center 将设备作为一个组进行管理。
  • SD-WAN 流量成形不是有效的,因为它依赖于将整个链路作为一个单元进行控制,并且没有一个设备能够做到这一点。可以改用路由器 QoS。
  • 基于 WCCP 的负载平衡算法不会随负载动态变化,因此实现良好的负载平衡需要进行一些调整。
  • 不支持缓存分配的哈希方法。掩码分配是支持的方法。
  • 虽然 WCCP 标准允许蒙版长度为 1-7 位,但设备支持 1-6 位的蒙版。
  • 不支持多播服务组;仅支持单播服务组。
  • 使用相同服务组对的所有路由器必须支持相同的转发方法(GRE 或 L2)。
  • 与路由器协商的转发和返回方法必须匹配:两者必须是 GRE 或两者都必须是 L2. 一些路由器在两个方向上不支持 L2,导致 “路由器的前进或返回或分配功能不匹配” 的错误。“ 在这种情况下,服务组必须配置为 GRE。
  • SD-WAN VPX 不支持 WCCP 群集。
  • 设备仅支持(并协商)未加权(等于)缓存分配。不支持加权分配。
  • 某些较旧的设备(如 SD-WAN 700)不支持 WCCP 群集。
  • (仅限 SD-WAN WANOP 4000/5000)L2 模式下,每个接口需要两个加速器实例。每个设备最多支持三个接口(然后支持具有六个或更多加速器实例的设备)。
  • (仅限 SD-WAN 4000/5000)来自路由器的 WCCP 控制数据包必须与服务组的设备上配置的路由器 IP 地址之一匹配。实际上,应使用路由器的 IP 地址连接到设备的接口。无法使用路由器的环回 IP。

测试和故障排除

监视 > 设备 > 应用程序性能 > WCCP 页面不仅显示本地设备的当前状态,而且显示已加入群集的所有其他设备的当前状态。选择一个 WCCP 缓存,然后单击 获取信息

缓存状态” 选项卡 显示本地设备的状态。当一切顺利时,状态是 “25:有任务”。您必须手动刷新页面以监视状态的更改。如果设备在超时期限内未达到 “25: 已分配” 状态,则会显示其他信息性状态消息。

当您单击 服务组或路由器 选项卡时,将显示其他信息。

群集摘要” 选项卡 显示有关整个 WCCP 群集的信息。作为 WCCP 协议的副作用,群集的每个成员都有关于所有其他成员的信息,因此可以从群集中的任何设备监视此信息。

您的路由器还可以提供状态信息。请参阅您的路由器文档。

配置 WCCP 群集

在完成部署拓扑、考虑所有限制并填写部署工作表后,即可在 WCCP 群集中部署设备。要配置 WCCP 群集,您需要执行以下任务:

WCCP 群集