获得以太网“透明”冗余的最佳方法是什么?

获得以太网“透明”冗余的最佳方法是什么?

如果这是一个显而易见的问题,我深表歉意,就冗余网络而言,我是个新手,我不确定要用 Google 搜索哪些关键字。我的应用场景是这样的:

  • 该系统由少量基于 Linux 的服务器组成(1 到 20 个)
  • 每台服务器上都有两个物理以太网插孔
  • 该系统在独立的局域网上运行——不以任何方式连接到互联网
  • 每台服务器上运行的(定制/内部)应用程序软件通过持久 TCP 连接和/或 UDP 多播与其他服务器上的对等程序进行通信。
  • 所有通信都通过 IPv6 进行
  • 为了实现网络冗余,最明显的办法是使用两个高速以太网交换机,并将每个 Linux 服务器连接到这两个交换机。这样,如果其中一个交换机发生故障,或者有人意外切断了以太网电缆,则可以通过另一根电缆/交换机继续通信,并且系统将保持完全正常运行。

    我的问题是,有没有办法让冗余对应用软件 100% 透明?(透明的意思是,应用软件不应该知道或关心有多个以太网端口;理想情况下,它只能看到 eth0 而看不到 eth1……如果数据由于某种原因停止在两个物理以太网端口之一上流动,应用软件不应该检测故障或做任何特殊的事情来继续工作)。

    对于我的目的来说,额外的带宽并不重要(千兆以太网的一个“通道”已经足够快了),但简单性和可靠性很重要。

    答案1

    你想要的 google juice 是“以太网绑定”。它是一件艺术品。

    答案2

    如果您想要简单和可靠,只需购买两台支持多机箱链路聚合的交换机(供应商对此有自己的名称,有时只是“堆叠”),并支持每台交换机足够的链路聚合以满足您的需求。设置链路控制协议在交换机端口上服务器,因此您的所有应用程序看到的只是每台服务器上的单个“bond0”接口。

    Linux 还支持一种称为“自适应负载平衡”的功能,它看起来仍然像一个“bond0”接口到应用层,但不使用 LACP,也不需要具有多机箱链路聚合支持的交换机(但交换机必须交叉连接且带宽良好)。此模式使用 ARP 技巧将传入流量定向到每个物理接口,而不是使用链路层绑定标准。它只需要没有特殊功能的哑交换机,并且对于我们在使用 IPv4 的生产中效果很好,不确定 IPv6 是否适用。

    相关内容