Linux 专家谜题:10GB/s 网卡上的网络输出为 10MB/s

Linux 专家谜题:10GB/s 网卡上的网络输出为 10MB/s

我有两台 CentOS 6 服务器。我正尝试在它们之间传输文件。源服务器有 10GB/s NIC,目标服务器有 1GB/s NIC。

无论使用什么命令或协议,传输速度约为每秒 1 兆字节。目标是每秒至少几十 MB。

我尝试过:rsync(也带有各种加密)、scp、wget、aftp、nc。

以下是一些测试结果iperf

[root@serv ~]# iperf -c XXX.XXX.XXX.XXX -i 1
------------------------------------------------------------
Client connecting to XXX.XXX.XXX.XXX, TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  3] local XXX.XXX.XXX.XXX port 33180 connected with XXX.XXX.XXX.XXX port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 1.0 sec  1.30 MBytes  10.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  1.0- 2.0 sec  1.28 MBytes  10.7 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  2.0- 3.0 sec  1.34 MBytes  11.3 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  3.0- 4.0 sec  1.53 MBytes  12.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  4.0- 5.0 sec  1.65 MBytes  13.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  5.0- 6.0 sec  1.79 MBytes  15.0 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  6.0- 7.0 sec  1.95 MBytes  16.3 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  7.0- 8.0 sec  1.98 MBytes  16.6 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  8.0- 9.0 sec  1.91 MBytes  16.0 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  9.0-10.0 sec  2.05 MBytes  17.2 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1.68 MBytes  14.0 Mbits/sec 

我猜想高清不是这里的瓶颈。

答案1

  1. 验证交换机是否为 GigE 或更高版本

    根据我的经验(硬盘配置可能会改变结果):

    10Base-T ~ 512KB/秒-1MB/秒

    100Base-T 约 1-3MB/秒

    1GigE〜3-11MB /秒

    10GigE〜11-40MB /秒

  2. 验证两台服务器的 NIC 和交换机上是否都启用了自动协商

    不匹配的协商默认为路径中的最低公分母

  3. 验证交换机和服务器的 NIC 是否都使用相同的 MTU 大小

    基本 MTU 为 1500。如果您的服务器和交换机可以支持 9000,请尝试一下。

答案2

如果我在仅使用千兆位相互连接的服务器上使用带 -W 选项的 rsync,则速度最高可达 80..90MB/s(如果 fsync 没有命中,速度甚至会更高)。根据驱动器(sas 或 ssd),使用 ssd 时持续速度约为 70MB/s,使用 sas 时持续速度在 10...70MB/s 之间。

我猜是你的 10Gb/s 卡连接的交换机正在向你的服务器发送暂停帧。从中恢复需要时间。

相关内容