接口在单端 LACP 配置中的行为如何?

网络工程 IEEE-802.1ax
2021-07-29 02:10:50

情况:交换机和服务器之间的两个以太网连接。
在交换机端,两个接口都配置了LACP。
在服务器端,它们被配置为普通的以太网接口。
交换机接口的行为如何?
我相信它们会像两个普通的以太网接口一样运行,并将流量并行转发到服务器,就好像它们没有应用 LACP 配置一样。服务器将选择一个接口并将其用于出站流量。
交换机接口可能配置为 LACP,但在它们与服务器端接口形成 LACP 中继之前,正常流量不会发生任何变化。实际上,这将它们之间的可用带宽减半,因为它们都转发相同的流量。
请问这是正确的吗?

编辑:接口被配置为出站镜像端口。

2个回答

您没有指定制造商,我将假设 Cisco 交换机,尽管大多数其他供应商的行为应该类似。

如果通道组的模式是活动的,接口将不会转发流量,因为交换机会主动尝试形成通道,如果通道协商失败,端口通道将“关闭”。

如果通道组的模式为被动或模拟到被动,则接口将正常转发流量并侦听 LACP/PaGP 协商。这将启动接口并侦听接口上的流量。如果交换机看到来自主机的这些 LACP 数据包并开始协商,则会协商通道,数据包将通过端口通道接口而不是单个接口转发。

从服务器的角度来看,在IP层,如果目的主机在接口上网络配置定义的子网中,服务器会尝试ARP这个地址。如果两个接口以某种方式连接到同一个子网(大多数操作系统会显示警告或禁止这种行为),它们可能会从两个接口 ARP 出去。因此,一旦在给定接口上收到 ARP,服务器就会知道将数据包从该接口发送出去,并且交换机还将识别每个单独的接口绑定了哪些 IP 和 MAC(但转发行为将由以下控制)。

如果您纯粹是在谈论以太网数据包,而不是 IP,则服务器将使用指定的任何接口转发帧。如果我没记错的话,在 Linux 中必须指定接口;在 Windows 中,它可能会使用网络接口绑定中具有最高(最高)优先级的接口。此行为因操作系统而异。

从交换机的角度来看,交换机会将带有 MAC 地址的帧泛洪到所有接口,直到它知道给定的 MAC 地址在哪个端口上。它将通过侦听具有源 MAC 地址的帧来了解此端口。因此,如果 0111.2222.3333 正在向 0111.2222.3334 发送帧,交换机会将帧泛洪到该 VLAN 中的所有端口

0111.2222.3333 (Fa0/1) -> 0111.2222.3334 将泛洪到所有端口

直到看到回复

0111.2222.3334 (Fa0/2) -> 0111.2222.3333 (Fa0/1)

然后它将开始将所有流量转发到发出这些帧的特定端口。

这里有许多边缘情况可能会带来更多混乱,例如潜在的生成树交互,但这涵盖了基础知识。

这完全取决于您在交换机上配置的 LACP 模式。例如,在接口下,您键入“channel-group 1 mode on/active/passive”

如果您选择了“主动”,那么交换机将寻找连接的另一端是处于主动模式还是被动模式。如果它检测到其中之一,则形成 LACP 端口通道,并且流量在端口之间实现负载平衡。如果没有,它们将被视为常规端口,并且生成树将杀死 2 个端口之一。

但是,如果您选择了“开启”模式(您永远不应该这样做),那么它将强制交换机上的端口通道。如果另一端不形成端口通道,则存在环路的可能性,这可能导致网络崩溃。