跳到主要内容

解决 Windows Server SMB 跑不满速度

· 9 分钟阅读
月子喵

最近给我的服务器增加了一块 Intel P3605, 把 Unraid 上面的所有虚拟机都迁移过去. 单独开了一个 Share 测试速度, 我的 PC 和服务器是用 10G 的光纤直连的, 但是测试发现根本跑不满速度, 大概只有 4 - 5 Gbps.

截图
Preview

虽然咱用不着 1G/s 这么大的速度, 但是作为垃圾佬为什么不榨干他的性能呢

解决

硬盘

这固态虽然 8 可能性能瓶颈, 本着测试的严谨还是测试了一下

加载中.....

/dev/nvme0n1 就是我的 P3605, 3G/s 完全不是瓶颈

网卡

然后怀疑是网卡的问题, 先用 Iperf 测速, 先给 Unraid 服务器装上 (官网下载, 选择最下面的 Linux manual Installation 64 bits (AMD64)

Manual installation of iperf3 3.1.3 64 bits :

  1. sudo wget -O /lib64/libiperf.so.0 https://iperf.fr/download/ubuntu/libiperf.so.0_3.1.3
  2. sudo wget -O /usr/bin/iperf3 https://iperf.fr/download/ubuntu/iperf3_3.1.3
  3. sudo chmod +x /usr/bin/iperf3

这里修改了 so 库存放的位置

iperf3 -s 启动服务器, 客户端 iperf3 -c <服务器IP>

加载中.....

巨型帧

emm 看起来的确是, 查了查说是网卡的巨型帧没开启, 进入设备管理器, 选择你的网卡 -> 高级 -> 巨帧数据包, 将禁用改成 9014字节

截图
Preview

加载中.....

似乎高了一点, 但是看起来是误差的样子, 和巨型帧应该没关系

并行

最后我试了一下给 iperf3 加了一个 -P <并行客户端数量> 设置为 3

加载中.....

SMB3.0

好家伙, 差不多跑满了, 这说明应该是不是网卡的问题, 那就是 SMB 本身的问题. 想起来 SMB3.0 有一个特性是 多通道, 先打开看看

截图
Preview

NMD, server 1903 不支持

最后的解决办法

最后 google 到的, 在 PowerShell里面输入,

加载中.....

开启 SMB3

舒服惹~