[重要安全性通知] 发现假冒 Qfinder Pro 网站。了解详情 >

本内容经过机器翻译。请参见机器翻译免责声明
切换为英语

How do I troubleshoot it if my NAS transfer speeds dropped dramatically ?
如果我的 NAS 传输速度急剧下降,我该如何排查问题?


最后修订日期: 2026-03-31

适用产品

  • All QNAP NAS models running QTS / QuTS hero

症状

  • NAS 传输速度下降(例如,从几百 MB/ s 下降到几十 MB/s)。
  • 没有进行硬件更换(没有更换硬盘、没有更换电缆、没有更换网卡)。
  • 没有进行配置更改(没有固件更新,没有更改网络设置,没有更改协议)。

步骤

步骤 1:测试纯网络吞吐量(iperf3)

独立于任何文件协议验证网络连接。这是较重要的较高步测试。

# 在 NAS 上(启动 iperf3 服务器) iperf3 -s  # 在客户端 PC 上(单流) iperf3 -c <nas_ip> -t 10  # 在客户端 PC 上(多流用于聚合测试) iperf3 -c <nas_ip> -t 10 -P 4
链路类型预期的 iperf3 结果
1GbE~940 Mbps (~117 MB/s)
10GbE~9.4 Gbps (~1.17 GB/s)
25GbE~23.5 Gbps (~2.9 GB/s)
如果您的 NAS 上未安装iperf3,请参阅 QNAP FAQ 如何在 QTS 和 QuTS hero 中安装 iperf3?获取分步安装说明。或者,您可以在同一交换机段的两个客户端 PC 之间运行iperf3以验证交换机和电缆性能。
  • 如果 iperf3 结果也很低,则网络路径是瓶颈。继续执行步骤 2。
  • 如果 iperf3 结果是正常,物理网络可能没问题;问题在文件服务层。跳到步骤 4。

步骤 2:隔离网络路径(单链路测试)

重要:不要在链路聚合或多路径激活时测试。一次测试一个网卡→一根电缆→一个交换机端口。

2a. 检查网卡链路协商

  • 在 QTS / QuTS hero 中,进入控制台 → 网络与虚拟交换机 → 接口,并验证每个物理适配器的速度双工值。
# (可选)通过 SSH 检查每个接口的协商速度和双工
ethtool eth0 | grep -E "Speed|Duplex|Link detected| 自动协商"
ethtool eth1 | grep -E "Speed|Duplex|Link detected| 自动协商"
# 对所有活动接口重复(eth2, eth3, ...)
  • 协商降至 1GbE(或更低)的 10GbE 网卡将把吞吐量限制在大约 117 MB/s。
  • 半双工协商会降低吞吐量并导致冲突。
  • 如果自动协商显示速度异常,请尝试更换电缆或交换机端口。

2b. 检查接口错误计数器

# 检查数据包错误、丢弃和溢出
ifconfig eth0 | grep -E "errors|dropped|overruns|frame|carrier"
# 或使用 ip -s:
ip -s link show eth0
  • 非零接收错误发送错误丢弃溢出可能表示电缆、SFP 或交换机端口问题。
  • 在大传输前后运行检查以查看计数器是否增加。

2c. 测试电缆和 SFP/DAC 模块(如果使用) 

  • 将 DAC 电缆或 SFP 模块替换为已知良好的。
  • 将 NAS 直接连接到客户端 PC(绕过交换机)以隔离交换机问题。
  • 尝试不同的交换机端口。
  • 如果使用光纤 SFP+,检查是否有脏污的连接器或弯曲的光纤。


步骤 3:验证 MTU 一致性(巨型帧)

NAS、交换机和客户端之间的 MTU 不匹配是吞吐量崩溃的常见原因。

# 检查 NAS 接口上的 MTU
ip link show | grep mtu

# 检查客户端上的 MTU(Windows)
netsh interface ipv4 show subinterfaces

# 检查客户端上的 MTU(Linux / macOS)
ifconfig | grep mtu
所有三个端点(NAS、交换机、客户端)必须具有相同的 MTU。如果路径中的任何设备具有较小的 MTU,数据包可能会被分段或静默丢弃。
  • 快速测试:暂时将所有设备的 MTU 设置为 1500(标准)并重新测试。如果速度提高,问题可能是巨型帧配置错误。
  • 巨型帧(MTU 9000)必须在 NAS、交换机端口客户端 NIC 上启用——所有三个。
# 暂时将 NAS 接口重置为标准 MTU(示例) ifconfig eth0 mtu 1500  # 使用 ping 测试以验证端到端 MTU(从客户端) ping -f -l 8972 <nas_ip>    # Windows(8972 = 9000 - 28 headers) ping -M do -s 8972 <nas_ip> # Linux

步骤 4:检查后台任务和系统负载

周期性速度变慢的常见原因:计划的池清理和备份作业可能会消耗大量磁盘 I /O,并导致传输速度在运行时下降。如果速度问题在可预测的时间间隔(例如,每周或每晚)发生,请首先检查计划。

4a. 检查计划的池清理

  • 在 QTS / QuTS hero 中,进入存储与快照总管 → 存储 / 快照,选择存储池,然后点击管理 → 操作以检查清理计划
  • RAID 清理会读取阵列中每个磁盘上的每个块——这可能会在运行时将传输性能降低 50% 或更多。
  • QTS 默支持能会定期安排清理(例如,每月);QuTS hero(ZFS)也有其自己的清理计划。
# 检查活动的 RAID 清理或重建
cat /proc/mdstat | grep -E "resync|recovery|reshape|check"

# 检查 ZFS 清理状态(QuTS hero)
zpool status | grep -E "scan|scrub"

4b. 检查计划的备份作业

  • HBS 3 (Hybrid Backup Sync)、RTRR、rsync 和快照复制任务在运行时可能会占用磁盘 I/O 或网络带宽。
  • 在 QTS / QuTS hero 中,打开HBS 3并检查活动和计划任务;还要检查任何第三方备份软件。
  • 如果备份任务与用户文件传输同时运行,二者将竞争 I/O。

步骤 5:验证存储层(确认)

如果所有网络测试通过,确认存储层不是瓶颈。

# 快速 RAID 健康检查
cat /proc/mdstat

# 存储性能测试
qcli_存储 -t

# 本地文件系统吞吐量(绕过网络)
dd if=/dev/zero of=/share/CACHEDEV1_DATA/testfile bs=1M count=1024 oflag=direct
dd if=/share/CACHEDEV1_DATA/testfile of=/dev/null bs=1M iflag=direct
rm /share/CACHEDEV1_DATA/testfile
  • 如果本地dd 吞吐量也很低,检查 SSD 缓存状态(存储与快照总管 → 缓存加速)——退化的缓存可能会限制 I/O。
  • 如果磁盘吞吐量显示异常,检查 S.M.A.R.T. 健康状态。

步骤 6:收集诊断数据以获得支持

如果上述步骤未解决问题,请收集这些数据并在提交支持请求前导出系统日志。

https://service.qnap.com/提交支持请求并附上输出。


警告

  • 不要同时进行多项更改——一次只更改一个变量并重新测试。
  • 在进行更改之前记录原始设置,尤其是网络、MTU、绑定和交换机配置。
  • 仅查看 SMB 结果不足以确定根本原因——如果所有协议都很慢,首先执行网络层隔离。
  • dd写入测试会在卷上创建一个临时文件——确保有足够的可用空间,并在之后清理。
  • 在生产系统上禁用 SSD 缓存可能会暂时降低依赖它的工作负载的性能。如有可能,请在维护窗口期间进行此测试。
  • 在比较两个 NAS 设备时,确保固件版本、已安装的应用程序、NIC 配置和卷配置相同。

进一步阅读

这篇文章有帮助吗?

谢谢您,我们已经收到您的意见。

请告诉我们如何改进这篇文章:

如果您想提供其他意见,请于下方输入。

选择规格

      显示更多 隐藏更多
      open menu
      back to top