![Linux 专家谜题:10GB/s 网卡上的网络输出为 10MB/s](https://linux22.com/image/797799/Linux%20%E4%B8%93%E5%AE%B6%E8%B0%9C%E9%A2%98%EF%BC%9A10GB%2Fs%20%E7%BD%91%E5%8D%A1%E4%B8%8A%E7%9A%84%E7%BD%91%E7%BB%9C%E8%BE%93%E5%87%BA%E4%B8%BA%2010MB%2Fs.png)
我有两台 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
验证交换机是否为 GigE 或更高版本
根据我的经验(硬盘配置可能会改变结果):
10Base-T ~ 512KB/秒-1MB/秒
100Base-T 约 1-3MB/秒
1GigE〜3-11MB /秒
10GigE〜11-40MB /秒
验证两台服务器的 NIC 和交换机上是否都启用了自动协商
不匹配的协商默认为路径中的最低公分母
验证交换机和服务器的 NIC 是否都使用相同的 MTU 大小
基本 MTU 为 1500。如果您的服务器和交换机可以支持 9000,请尝试一下。
答案2
如果我在仅使用千兆位相互连接的服务器上使用带 -W 选项的 rsync,则速度最高可达 80..90MB/s(如果 fsync 没有命中,速度甚至会更高)。根据驱动器(sas 或 ssd),使用 ssd 时持续速度约为 70MB/s,使用 sas 时持续速度在 10...70MB/s 之间。
我猜是你的 10Gb/s 卡连接的交换机正在向你的服务器发送暂停帧。从中恢复需要时间。