问一个网络拷贝速度问题, Linux 万兆下只能达到千兆

2022-01-04 10:02:27 +08:00
 hewitt29

环境是这样的,有一个 emc 存储,节点读写能力在 400MB/s 左右,,然后有一套 vmware 的虚机。。网络是万兆

拉的 linux 虚机用的是 cent os 6.8 ,系统显示已经是万兆网络 ,cp 命令从存储到虚机本地只有 100MB/s ,而且发起从存储 A 目录拷贝到存储 B 目录也是只能达到 50MB/s (这个明显是因为拷贝过本地再写到存储的原因,所以速度减半了,好像 linux 本身不支持发起远程存储自身的拷贝)。。只是为啥只能跑到千兆

但是拉的 win 虚机从存储拷贝到本地,从存储到存储都能跑 400+MB/s

请问大神有知道是啥原因吗

3282 次点击
所在节点    Linux
16 条回复
defunct9
2022-01-04 10:04:33 +08:00
磁盘慢了吧
hewitt29
2022-01-04 10:06:21 +08:00
@defunct9 应该不是磁盘的问题吧。。。同一个环境下拉的 windows 虚机就能跑起速度
villivateur
2022-01-04 10:06:54 +08:00
要不你用 iperf 测下网速?然后再排除其他性能问题
cstj0505
2022-01-04 10:30:12 +08:00
这问题很有意思,我们也遇到了,双网卡 20G ,很多只能跑 3,4G ,软件层面要上万兆靠单进程性能不够,需要多进程或者多线程。再就是网络硬件都要支持。这问题一年多了 ,运维还没给我们解决
hewitt29
2022-01-04 11:04:45 +08:00
@villivateur

Connecting to host 172.21.21.243, port 5201
[ 4] local 172.21.21.8 port 59243 connected to 172.21.21.243 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 506 MBytes 4.24 Gbits/sec 0 273 KBytes
[ 4] 1.00-2.00 sec 497 MBytes 4.17 Gbits/sec 0 273 KBytes
[ 4] 2.00-3.00 sec 489 MBytes 4.10 Gbits/sec 0 273 KBytes
[ 4] 3.00-4.00 sec 476 MBytes 3.99 Gbits/sec 0 273 KBytes
[ 4] 4.00-5.00 sec 478 MBytes 4.01 Gbits/sec 0 273 KBytes
[ 4] 5.00-6.00 sec 480 MBytes 4.03 Gbits/sec 0 273 KBytes
[ 4] 6.00-7.00 sec 486 MBytes 4.07 Gbits/sec 0 273 KBytes
[ 4] 7.00-8.00 sec 484 MBytes 4.06 Gbits/sec 0 273 KBytes
[ 4] 8.00-9.00 sec 468 MBytes 3.93 Gbits/sec 0 273 KBytes
[ 4] 9.00-10.00 sec 521 MBytes 4.37 Gbits/sec 0 273 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 4.77 GBytes 4.10 Gbits/sec 0 sender
[ 4] 0.00-10.00 sec 4.77 GBytes 4.10 Gbits/sec receiver


这是 linux 虚机到 windows 虚机做的测试 看起来至少不该卡在千兆上=。=!
GrayXu
2022-01-04 12:10:21 +08:00
显然不可能“linux 本身不支持发起远程存储自身的拷贝”。

没看到你说客户端怎么挂载存储节点的。
CallMeReznov
2022-01-04 12:26:19 +08:00
巨型帧开了吗?
JoeoooLAI
2022-01-04 15:09:52 +08:00
感觉是是巨型帧问题,如果操作系统不同会有较大的速度差异的话
xinh
2022-01-04 15:59:46 +08:00
@hewitt29 在 pve 上虚拟 10G 网卡,MTU 设置 9K ,但 iperf3 测速跟文件传输速度差别好大,将就用着。
hankai17
2022-01-04 16:30:52 +08:00
win 行 linux 不行 协议栈问题?
hewitt29
2022-01-04 16:59:04 +08:00
@GrayXu

mount -t cifs -o username=xxx,password=xxx //isilon.emcstor.com/pcloud /home/nsite/

这种形式
hewitt29
2022-01-04 17:01:22 +08:00
@xinh 现在也是将就用着。。。但是单位对拷贝时间还是有一定需求的,在考虑是不是把拷贝服务迁移到 win 上了
neutrinos
2022-01-04 17:31:05 +08:00
用 ebpf 跟踪一下时间花在哪
neutrinos
2022-01-04 17:35:16 +08:00
@cstj0505 可考虑无限带宽
hewitt29
2022-01-04 23:22:17 +08:00
@CallMeReznov @JoeoooLAI 试了下改 mtu=9000 ,并没有什么变化
lff0305
2022-01-05 11:03:25 +08:00
确认下虚拟机的网络配置(e1000 还是 vmnet/vmnet3, 现在应该是建议 vmnet3 了), 网络配置(桥接还是 NAT), 是否走了 VMWare 的虚拟交换机等等等,
再在系统里面确认下是否安装了 VmTools (网络驱动)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/826004

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX