我的理解正确的关于Linux绑定和切换?

如果有一台服务器和一台交换机,如果交换机死了,服务器就停止服务。

所以通常有两台交换机,服务器应该连接到两台交换机,所以服务器上应该有两块网卡。

但即使服务器有两个网卡连接到两台交换机,由于IP不同,如果服务正在侦听的IP网卡出现故障,服务也会中断。

所以在这里粘合。 绑定时,两个NIC共享一个IP,两个NIC将连接到两个交换机,所以如果一个交换机死亡,另一个交换机将服务,如果一个NIC死亡,另一个NIC仍然工作。

我理解对吗?

有点。 绑定实际上为您提供了一个IP的虚拟接口,因此您所指的“IP不同”情况是无稽之谈。 绑定既可以在故障转移模式下工作,也可以在LACP模式下工作。 在LACP模式下,stream量通常在所有可用的物理接口上保持平衡,但有一些特定的限制(例如,一些供应商可能只平衡不同MAC的stream量),而在故障切换模式下,一个接口是备份接口, LACP模式基本上可以在一台交换机内工作,所以如果你想使用两台交换机的LACP模式,提供真正的高可用性,select的交换机应该支持它 – 称为交叉交换机LACP(一些像Cisco一样的供应商,但它不是一个基本的function集)。

你把事情搞混了

首先,对于多个IP上的服务并没有什么不同,而且用户足够聪明地使用一个有效的服务。

其次,绑定不是基于以太网层上的IP绑定工作。 绑定的连接共享一个mac地址。 它基本上是一个连接。 因此,它们并不真正共享一个IP–它们是一个以太网通道。 这是“更基础” – 绑定在底层技术上起作用。

第三,绑定不起作用。 或者:如果这样工作,那么基本上它需要交换机知道如何处理(堆叠交换机可能具有这种能力)。 这意味着您可以告别大多数成本较低的交换机,以实现绑定和正常运行。 不确定一些高端,但我不知道任何可以处理分布在多个阶层的粘合。 不是专家,但是我通常在使用绑定之前移动到10G。 我听说Cisco有这种能力(交叉交换LACP)。

通常绑定被用来创build更多的带宽透明的应用程序没有这样写的。 为高吞吐量和正常运行时间而构build的协议可能不需要绑定 – 例如,ISCSI通过MPIO(MultiPath IO)处理这种协议,通过多个IP地址实际连接到服务器,以这种方式分配负载和处理正常运行时间。 微软现在使用后来的服务器中的文件共享,允许使用多个IP地址来处理多个并行数据stream以获得更多带宽(SMB 3 MultiChannel)。 这里不需要绑定,所有在协议和库级别处理。