我正在尝试使用 balance-rr 模式下的 Linux 绑定驱动程序设置 10 台带有四端口千兆网卡的服务器。但是这应该如何做呢?
我现在不买 10Gbe 硬件,因为目前它太贵了。所以,我想使用多个千兆网卡并聚合带宽。
根据 Linux 绑定驱动程序的文档,balance-rr 模式是唯一可以在多个接口之间分条流量的模式,理论上来说,能给我带来大约 4 千兆位的数据?
那么,在交换机上应该如何配置呢?
我有一台 HP 2810-48G 交换机,它支持中继组。根据绑定驱动程序的文档,这正是 balance-rr 模式正常工作所需要的,对吗?
但是如果我像那样配置中继组,它可能会起作用(我还没有尝试过)并且服务器的吞吐量可能能够超过 1 千兆位。
但是交换机无法剥离第二台服务器接口上的流量,对吗?至少,交换机手册中没有关于流量循环剥离的任何内容。事实上,我在较新的交换机手册中也找不到这一点……
那么,我该如何配置这些内容,以便能够在单个 TCP 会话中接近 4gigabit/sec?
也许我需要 4 个 VLAN,并将每个服务器的每个端口放在单独的 VLAN 中?这听起来是可能的。同样,我还没有尝试过,因为这甚至不是绑定驱动程序文档中的建议。
有谁知道我该如何正确地做这件事?
谢谢!
答案1
根据文档例如,HP 2810-48G 同时支持 LACP(802.3ad)和“非协议”中继/绑定(当混合网络设备供应商时,命名差异会变得更加令人困惑!)。
HP 描述了“非协议中继”:
此方法可创建一个中继组,该中继组独立于特定中继协议运行,并且不使用与中继另一端的设备进行协议交换。选择此选项后,交换机只需使用 SA/DA 方法在中继端口之间分配出站流量,而无需考虑中继链路另一端的设备如何处理该流量。同样,交换机处理来自中继链路的传入流量,就像处理来自中继源的流量一样。
(SA/DA 是源地址/目标地址。我猜这与 Linux 绑定中的“balance-xor”模式类似。HP 文档没有指定它是使用 MAC 地址还是 IP 地址,但我假设它使用 MAC 地址。这实际上平衡负载的程度取决于您的网络拓扑。)
我相信,如果您balance-rr
在 Linux 端和non-protocol trunking
交换机端进行配置,您的设置将有效。但是,您将看到两端的负载平衡不同,来自交换机的流量不会利用所有端口。
要利用所有端口,您可能必须测试设置,并研究特定于应用程序/协议的解决方案,例如多路径或在多个服务器 IP 地址上分发客户端。