电脑和NAS都换了2.5G网口,交换机也标着2.5G,复制文件却只有每秒110MB左右。有人怀疑网线,有人怀疑机械硬盘,还有人看到压缩包更快就认为网络没问题。
110MB/s确实接近千兆以太网在文件复制中的常见上限,但一个复制速度不能证明根因。文件复制同时经过网络、两端存储、SMB协议、缓存和文件结构。先把这些变量拆开。
前面文章全2.5G网口,复制文件为什么还只有110MB/s?讲过一些,有些片面;本篇结合大家的留言综合梳理成比较全面的。
排查顺序拆成五组证据:看协商速率,用iperf3测纯网络,确认NAS的存储拓扑,测真实存储卷的持续读写,最后对照SMB大文件和小文件。五组证据完成后,文件复制结果才有解释价值。

Windows PowerShell:
Get-NetAdapter | Select-Object Name, Status, LinkSpeed
Linux:
ethtool <网卡名> | grep -E 'Speed|Duplex|Link detected'
NAS后台通常也能看到网口协商速率。需要同时确认电脑网口、交换机两端口、NAS网口,而不是只看其中一端。

结果判断:
-
任一端显示1.0Gbps:先查网线、端口能力、转接器、驱动和节能设置。 -
显示100Mbps:重点查水晶头、线序、接触和网口。 -
全部2.5Gbps:进入iperf3,不要继续凭文件复制猜。
网线八芯导通也不能证明高频性能合格。短距离质量正常的Cat5e通常可以跑2.5G,但旧墙线、模块、接头和强干扰环境仍可能让链路降速或产生重传。
在NAS或另一台电脑启动服务端:
iperf3 -s
在测试电脑运行:
iperf3 -c <服务端IP> -P 4
iperf3 -c <服务端IP> -P 4 -R
-P 4使用四条并行流,-R反向测试。先测正向和反向,可以发现单方向驱动、网卡或链路问题。

2.5Gbps是链路标称速率,iperf3不会稳定显示2.50Gbps。协议开销、CPU和实现都会降低有效吞吐。家庭环境中若结果明显超过1Gbps并接近设备合理水平,说明网络链路基本发挥了2.5G能力;若长期停在约940Mbps,仍像千兆路径。
测试时关闭其他大流量任务,使用有线连接,记录CPU占用和重传。不要为了追求数字先开启巨帧。巨帧需要全链路一致,配置不一致会制造新的访问问题。
“NAS里装了几块盘”不足以判断性能。先在存储管理器中记录:
-
单盘、JBOD还是Basic卷。 -
RAID1、RAID0、RAID10、RAID5、RAID6或厂商的混合阵列方案。 -
ZFS镜像、RAIDZ、Btrfs存储池等具体布局。 -
是否启用SSD读缓存、写回缓存、内存缓存、压缩、加密和快照。
不同结构的持续性能差异很大:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
阵列正在重建、数据校验、快照整理或后台去重时,复制速度会波动。测试前记录这些任务,不能把后台任务造成的降速归给网络。
网络通过后,分别测试源端读取和NAS目标卷写入。NAS内部有阵列时,物理单盘测试不能代表SMB实际写入的存储池;优先使用NAS提供的卷级基准,或在专用测试目录创建测试文件。
不要直接对块设备或重要文件执行写入测试。先建立空的专用测试目录,使用不会与业务文件重名的测试文件。例如:
fio --name=seqwrite --filename=/专用测试目录/fio-test.bin \
--size=4G --rw=write --bs=1M --direct=1 --iodepth=8
fio –name=seqread –filename=/专用测试目录/fio-test.bin \
–size=4G –rw=read –bs=1M –direct=1 –iodepth=8
写入测试会覆盖同名测试文件。先确认路径、剩余空间和快照策略,完成后核对文件名再删除。业务NAS可以优先使用厂商自带的无损测试,避免给生产阵列增加额外写入。
单块机械硬盘的连续速度会随盘片位置、型号和负载变化。多盘阵列要看存储池的持续速度,SSD和内存缓存则会让短测试看起来更快。观察初始峰值之后的稳定区间,并重复一次测试,确认数据已经落盘而不是仍停在缓存中。
若NAS支持查看每块盘、存储池和缓存的实时利用率,复制时同时观察。单盘达到高利用率而网络未跑满,方向更接近磁盘;多盘都不忙但CPU满载,则要检查加密、压缩、校验、SMB签名或协议处理。
完成前四组证据后,选择一个足够大的单文件测试,记录源盘读取、目标盘写入、CPU和网络吞吐。再用大量小文件做第二组对照。

大量小文件需要反复创建目录项、更新元数据、校验权限和发起请求,速度会远低于单个大文件。把小文件先打包后传输更快,主要因为减少文件数量和元数据往返,不是ZIP或RAR提高了网线速度。
Windows复制窗口还会受到缓存影响。短时间的峰值不等于磁盘持续写入速度,测试要看稳定区间。
|
|
|
|
|
|
|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

协商正确但iperf3异常,再检查网卡驱动、EEE节能、CPU中断、交换机端口统计和网线重传。只有全链路设备都支持并能统一配置时才测试巨帧。不要把巨帧当作2.5G必开项。
最终复测顺序:链路速率、iperf3正反向、存储拓扑、源端读取、目标卷持续写入、单大文件和小文件。还要记录阵列是否重建、缓存是否命中和CPU是否满载。
单盘、多盘和阵列没有一个通用速度。先确认数据最终写到哪里,再判断2.5G网络有没有成为瓶颈。




