Red Hat Training

A Red Hat training course is available for RHEL 8

9.12. 不同的网络绑定模式

Linux 绑定驱动程序提供链路聚合。绑定是并行封装多个网络接口的过程,以提供单个逻辑绑定接口。绑定接口的操作取决于也称为模式的绑定策略。不同的模式提供负载均衡或热待机服务。

存在以下模式:

Balance-rr (Mode 0)

balance-rr 使用循环算法,它按顺序将数据包从第一个可用端口传输到最后一个端口。这个模式提供负载平衡和容错。

这个模式需要切换端口聚合组(也称为 EtherChannel 或类似的端口分组)。EtherChannel 是一个端口链路聚合技术,用于将多个物理以太网链接分组到一个逻辑以太网链接中。

这个模式的缺陷在于,它不适用于繁重的工作负载,如果 TCP 吞吐量或排序的数据包交付至关重要。

Active-backup (Mode 1)

Active-backup 使用策略来确定在绑定中只有一个端口活跃。这个模式提供容错功能,不需要任何交换机配置。

如果活动端口失败,则备用端口将变为活动状态。绑定会向网络发送大量地址解析协议(ARP)响应。gratuitous ARP 强制执行 ARP 帧的接收器,以更新它们的转发表。Active-backup 模式传输一个 gratuitous ARP,宣布为主机维护连接的新路径。

primary 选项定义绑定接口的首选端口。

Balance-xor (Mode 2)

balance-xor 使用所选传输哈希策略来发送数据包。这个模式提供负载平衡、容错和需要切换配置来设置 Etherchannel 或类似的端口分组。

要改变数据包传输和平衡传输,此模式使用 xmit_hash_policy 选项。根据接口上流量的源或目的地,接口需要额外的负载均衡配置。请参阅 description xmit_hash_policy bonding 参数

Broadcast (Mode 3)

广播 使用在所有接口上传输每个数据包的策略。这个模式提供容错,需要交换机配置来设置 EtherChannel 或类似的端口分组。

这个模式的缺陷在于,它不适用于繁重的工作负载,如果 TCP 吞吐量或排序的数据包交付至关重要。

802.3ad (Mode 4)

802.3ad 使用同名的 IEEE 标准动态链路聚合策略。此模式提供容错功能。这个模式需要切换配置来设置链路聚合控制协议(LACP)端口分组。

这个模式会创建聚合组,它们共享相同的速度和双工设置,并使用活跃聚合器中的所有端口。根据接口上流量的源或目的地,此模式需要额外的负载平衡配置。

默认情况下,传出流量的端口选择取决于传输哈希策略。使用传输哈希策略的 xmit_hash_policy 选项更改端口选择和平衡传输。

802.3adBalance-xor 之间的差别是合规性。802.3ad 策略在端口聚合组之间协商 LACP。请参阅 description xmit_hash_policy bonding 参数

Balance-tlb (Mode 5)

balance-tlb 使用传输负载均衡策略。这个模式提供容错、负载均衡和建立不需要任何交换机支持的频道绑定。

活动端口接收传入流量。如果活动端口失败,另一个则是接管故障端口的 MAC 地址。要确定哪个接口处理传出流量,请使用以下模式之一:

  • 0 :使用哈希分发策略在不进行负载均衡的情况下分发流量
  • 1: 利用负载均衡将流量分配到每个端口

    使用 bonding 选项 tlb_dynamic_lb=0,此绑定模式使用 xmit_hash_policy bonding 选项来均衡传输。primary 选项定义绑定接口的首选端口。

请参阅 description xmit_hash_policy bonding 参数

Balance-alb (Mode 6)

balance-alb 使用自适应负载平衡策略。这个模式提供容错、负载平衡,且不需要任何特殊交换机支持。

此模式包含 balance-trans-mit 负载平衡 (balance-tlb) 和 IPv4 和 IPv6 流量接收负载均衡。绑定会截获本地系统发送的 ARP 回复,并覆盖绑定中某个端口的源硬件地址。ARP 协商管理接收负载平衡。因此,不同的端口为服务器使用不同的硬件地址。

primary 选项定义绑定接口的首选端口。使用 bonding 选项 tlb_dynamic_lb=0,此绑定模式使用 xmit_hash_policy bonding 选项来均衡传输。请参阅 description xmit_hash_policy bonding 参数

其他资源