将 2 个或更多千兆字节 NIC 绑定在一起,以在 1 个服务器和 1 个客户端之间获得 2Gbps 的性能?

将 2 个或更多千兆字节 NIC 绑定在一起,以在 1 个服务器和 1 个客户端之间获得 2Gbps 的性能?

我还没有获得服务器或 NIC,但是这里是目标设置:

  1. 1x 服务器
  2. 1x 客户端
  3. 服务器与客户端之间有 1 个或多个点对点 NIC 链接(不涉及交换机)

所以我想知道是否可以在 PCI-X/PCI-E 总线上设置某种形式的 2 Nic 或 4 Nic pro Intel 以太网卡绑定,以便客户端和服务器能够以比 1Gbps 上限更快的速度共享文件?

我知道 TCP/UDP 会产生一些开销,其他东西也会产生一些开销,但我想尝试为客户端和服务器提供两者之间尽可能高的总带宽。

如果这不可能的话,那么我将避免因 2x 以太网 NIC 或 4x 以太网 NIC 而产生额外费用。

答案1

我设置了一个实验室,里面有两台服务器,每台服务器都有 2 个 Gbit NIC,通过 2 根 CAT5e 电缆背对背连接。使用在两台服务器上新安装的 Debian 5.0.5,我在两台机器上配置了一个绑定主接口 bond0,其中 eth0 和 eth1 都使用 bond-mode 0 (balance-rr),因为实际上不需要比这更复杂的东西。

配置(/etc/network/interfaces)看起来有点像这样:

iface bond0 inet static
    address 192.168.1.1
    netmask 255.255.255.0
    slaves eth0 eth1
    bond_mode balance-rr
    bond_miimon 100
    bond_downdelay 200
    bond_updelay 200

我在一台服务器上安装了 Apache,并从另一台机器上的 Apache 下载了一个文件。我无法达到任何 > 1Gbit/s 的速度,但我猜是因为 I/O 瓶颈。但是,我可以看到两个物理接口上的流量,所以我想说你想要的结果是可能的。

请告诉我结果如何:)

希望这可以帮助!

答案2

大多数 NIC 都可以做到这一点,但您还需要一个支持此功能的交换机。大多数托管交换机可以很好地做到这一点,但非托管交换机则不能很好地做到这一点。

在花钱之前请确保您的服务器可以处理带宽,单个廉价硬盘在大多数情况下无法处理 2Gbps。但是,大型磁盘阵列则是另一回事。

答案3

当然,通过交换机可以做到这一点,但不确定是否可以直接在计算机之间做到这一点,因为我从未尝试过。

至于是否值得,这将取决于所用网卡的质量和它们所插入的内部总线的速度,以及 Luma 的回复中提到的所用磁盘的速度。恐怕这真的是一个试试看的问题。

相关内容