我需要帮助来实现(尽可能接近)40G 网络传输速度(~1250 MB/sx 4)

我需要帮助来实现(尽可能接近)40G 网络传输速度(~1250 MB/sx 4)

我有一个千兆网络,最近升级到了 40Gbps。为此,我更换了我的TPLINK切换思科 Nexus 9396PX开关,它有一个模块12x 40G端口。40G 网络互连带有ESXi7的DELL服务器已安装。

问题是我无法达到40Gbps 网络 (~1250 MB/sx 4)

  • 当我在两个虚拟机之间运行时iperf,我获得的带宽范围为6 Gbits/秒至 10 Gbits/秒。我从来没能达到 40 Gbits 带宽。
  • 当我使用复制文件时,scp我的传输速度约为110-120 MB/秒这与理论带宽相差甚远1GB/s x 4 ~ 4G/s适用于40G网络。

最近我发现加密会降低传输速度,因此我设置了 FTP 服务器。使用 FTP 传输速度翻倍。我的传输速率约为240-280 MB/秒。我还更新了最大传输单元9000在主机和虚拟机上都是如此,但传输速率较低。

有人能帮我识别并解决这个问题吗?我希望交换机中配置的 40G 网络带宽能够反映在虚拟机中,并且传输速度尽可能接近 40G 网络的传输速度(~1250 MB/sx 4)。

这是当前的架构细节:

  • 带 40G 模块的 Cisco Nexus 9396PX 交换机
  • 4 台 Dell PowerEdge R930 服务器(VMware ESXi7 主机)
  • 每台服务器上的 NVME 磁盘
  • ESXi7 主机上的 40 Gbps Mellanox NIC
  • QSFP+ DAC 电缆用于将服务器连接到交换机

更新

我刚刚又做了 3 次测试。我不能说有什么改进

首次测试

  1. 在 Switch 中,我检查了服务器接口上的 MTU,发现它没有设置为最大值。我尝试将其设置为 9000,但被拒绝了。它只能设置为1500或者9216。我选择了最高值。
  2. 仍然在 Switch 中,我固定速度为40G/秒并禁用速度自动协商
  3. 我从 VCenter 禁用了 ESXi 主机上的速度自动协商。

然后我再次运行测试。这些更改不会影响scp虚拟机之间的复制速度传输速度(Ubuntu 22.04)。但我注意到从 FTP 服务器下载时速度略有改善(它安装在两个 ubuntu 虚拟机之一上)。

第二次测试

我在安装了 Windows 10 的虚拟机上运行以下测试。

  • 我在主机中添加了两个 Windows VM,并配置了最大传输单元设置9000也。
  • 我创建了一个共享文件夹,用于在两个 Windows VM 之间进行复制。

当我从复制文件时共享文件夹到本地,速度约为600MB/秒。但是当我从本地复制到共享文件夹时,复制开始大约350MB/秒和速度减少当它达到~30%

第三次测试

为了进行最后一次测试,我安装了菲利兹拉在其中一个 Windows VM 上从/向 FTP 服务器(在 Ubuntu VM 上)下载文件。

  • 下载速度大约450MB/秒当下载开始并且大约~50%它减少到~200MB/秒
  • 上传速度约为200MB/秒

答案1

40G 基本上是绑定的 4*10G 连接。要从聚合带宽中获益,您需要同时运行多个 TCP 会话。仅靠一个进程和一个 TCP 会话,您永远无法达到合并估计带宽。您可以在此处阅读一些很好的描述:

https://www.starwindsoftware.com/blog/lacp-vs-mpio-on-windows-platform-which-one-is-better-in-terms-of-redundancy-and-speed-in-this-case-2

相关内容