我想知道 Ubuntu 中通道绑定实现的文档在哪里,因为互联网上对绑定模式的描述不同
我有 Ubuntu Server 10.0.4 LTS,它使用 2.6 内核
谢谢
答案1
与绑定模式相关的 Ubuntu 文档现已发布这里。
以太网bonding模式说明:
模式 0
balance-rr
循环策略:按顺序从第一个可用从属设备到最后一个可用从属设备传输数据包。此模式提供负载平衡和容错功能。
模式 1
active-backup
主动备份策略:绑定中只有一个从属设备处于活动状态。当且仅当活动从属设备发生故障时,另一个从属设备才会变为活动状态。绑定的 MAC 地址仅在一个端口(网络适配器)上可见,以避免交换机混淆。此模式提供容错能力。主要选项会影响此模式的行为。
模式 2
balance-xor
XOR 策略:基于 [(源 MAC 地址与目标 MAC 地址进行 XOR 运算) 模数从机计数] 进行传输。这会为每个目标 MAC 地址选择相同的从机。此模式提供负载平衡和容错功能。
模式 3
broadcast
广播策略:在所有从属接口上传输所有内容。此模式提供容错功能。
模式 4
802.3ad
IEEE 802.3ad 动态链路聚合。创建共享相同速度和双工设置的聚合组。根据 802.3ad 规范利用活动聚合器中的所有从属设备。
先决条件:
- 基础驱动程序中的 Ethtool 支持检索每个从属设备的速度和双工。
- 支持 IEEE 802.3ad 动态链路聚合的交换机。大多数交换机需要某种类型的配置才能启用 802.3ad 模式。
模式 5
balance-tlb
自适应传输负载平衡:无需任何特殊交换机支持的通道绑定。根据每个从属设备上的当前负载(相对于速度计算)分配传出流量。传入流量由当前从属设备接收。如果接收从属设备发生故障,则另一个从属设备接管发生故障的接收从属设备的 MAC 地址。
先决条件:
- 基础驱动程序中支持 Ethtool 来检索每个从属设备的速度。
模式 6
balance-alb
自适应负载平衡:包括 balance-tlb 以及用于 IPV4 流量的接收负载平衡 (rlb),并且不需要任何特殊的交换机支持。接收负载平衡通过 ARP 协商实现。绑定驱动程序在本地系统发出 ARP 回复时拦截它们,并使用绑定中某个从属设备的唯一硬件地址覆盖源硬件地址,以便不同的对等方为服务器使用不同的硬件地址。
答案2
我认为最好的来源是这个Kernel.org 文档,还提供了关于每种类型何时最佳的解释,等等。
这些部分很长,我只粘贴简短的摘录:
11.2.1 多交换机拓扑的 HA Bonding 模式选择
在如上例所示的拓扑中,主动备份和广播模式是优化可用性时唯一有用的绑定模式;其他模式要求所有链路终止于同一个对等点,才能合理运行。
active-backup:这通常是首选模式,特别是如果交换机有 ISL 并且配合良好。如果网络配置是这样的,其中一个交换机专门用作备份交换机(例如,容量较低、成本较高等),则可以使用主要选项来确保在首选链路可用时始终使用它。
广播:此模式实际上是一种特殊用途模式,仅适用于非常特定的需求。例如,如果两个交换机未连接(无 ISL),并且它们之外的网络完全独立。在这种情况下,如果某些特定的单向流量需要到达两个独立网络,则广播模式可能适用。
...
12.1.1 单交换机拓扑的 MT Bonding 模式选择
此配置最容易设置和理解,但您必须决定哪种绑定模式最适合您的需求。每种模式的权衡如下:
balance-rr:此模式是唯一允许单个 TCP/IP 连接跨多个接口分条传输流量的模式。因此,它是唯一允许单个 TCP/IP 流利用多个接口的吞吐量的模式。但这是有代价的:分条通常会导致对等系统接收无序数据包,从而导致 TCP/IP 的拥塞控制系统启动,通常是通过重新传输段来实现的。
...
主动备份:此网络拓扑结构与主动备份模式相比没有太大优势,因为非活动备份设备都与主设备连接到同一个对等体。在这种情况下,负载平衡模式(具有链路监控)将提供相同级别的网络可用性,但可用带宽增加。从好的方面来说,主动备份模式不需要对交换机进行任何配置,因此如果可用的硬件不支持任何负载平衡模式,它可能很有价值。
balance-xor:此模式将限制流量,使发往特定对等点的数据包始终通过同一接口发送。由于目的地由所涉及的 MAC 地址决定,因此此模式在“本地”网络配置(如上所述)中效果最佳,目的地都在同一个本地网络上。如果所有流量都通过单个路由器(即如上所述的“网关”网络配置),则此模式可能不是最佳选择。
与 balance-rr 一样,交换机端口需要配置为“etherchannel”或“trunk”。
广播:与主动备份类似,在这种网络拓扑中,这种模式没有太多优势。
802.3ad:此模式是此类网络拓扑的不错选择。802.3ad 模式是 IEEE 标准,因此所有实施 802.3ad 的对等体都应能很好地互操作。802.3ad 协议包括聚合的自动配置,因此只需对交换机进行最低限度的手动配置(通常仅指定某些设备可用于 802.3ad)。802.3ad 标准还要求按顺序(在一定限制内)传送帧,因此一般来说单个连接不会出现数据包乱序的情况。802.3ad 模式确实有一些缺点:该标准要求聚合中的所有设备都以相同的速度和双工运行。此外,与除 balance-rr 之外的所有绑定负载平衡模式一样,任何单个连接都无法利用超过单个接口的带宽。
...
balance-tlb:balance-tlb 模式按对等点平衡传出流量。由于平衡是根据 MAC 地址进行的,因此在“网关”配置中(如上所述),此模式将通过单个设备发送所有流量。但是,在“本地”网络配置中,此模式以模糊的智能方式(而不是像 balance-xor 或 802.3ad 模式中那样的简单 XOR)平衡跨设备的多个本地网络对等点,以便数学上不走运的 MAC 地址(即,异或为相同值的 MAC 地址)不会全部“聚集”在单个接口上。
...
balance-alb:此模式具有 balance-tlb 的全部功能,甚至更多。它具有 balance-tlb 的所有功能(和限制),并且还会平衡来自本地网络对等点的传入流量(如上文 Bonding 模块选项部分所述)。
此模式的唯一缺点是网络设备驱动程序必须支持在设备打开时更改硬件地址。