可以直接用windows性能监视器实时查看smb共享读写吞吐量和延迟,需添加smb client shares和smb client network interface两类计数器,分别监控共享级吞吐(read/write bytes/sec)、延迟(read/write latency avg. ms)及网卡级流量(bytes received/sent/sec),并结合阈值与日志辅助定位问题。
可以直接用 windows 性能监视器(perfmon)实时查看 smb 共享的读写吞吐量和延迟,关键在于添加正确的 smb 客户端性能计数器,并理解指标含义。
SMB 客户端性能计数器选择
在 Perfmon 中添加计数器时,需定位到 SMB Client Shares 和 SMB Client Network Interface 类别,它们分别反映共享级和网络接口级的性能数据:
-
\SMB Client Shares(
)\Read Bytes/sec 和 Write Bytes/sec:显示该共享当前每秒读/写的数据量,单位为字节。这是最直接的吞吐量指标。 -
\SMB Client Shares(
)\Read Latency Avg. (ms) 和 Write Latency Avg. (ms):表示该共享上所有读/写操作的平均响应延迟(毫秒),反映 I/O 效率。 -
\SMB Client Network Interface(
)\Bytes Received/sec 和 Bytes Sent/sec:从网卡维度看 SMB 流量总量,有助于判断是否受网络带宽限制。
添加与配置步骤
以管理员身份运行 perfmon,点击左侧“性能监视器”,再点工具栏“+”按钮添加计数器:
- 在“可用计数器”列表中展开“SMB Client Shares”,勾选目标共享名下的 Read Bytes/sec、Write Bytes/sec、Read Latency Avg. (ms)、Write Latency Avg. (ms);
- 若需对比网络层表现,再展开“SMB Client Network Interface”,添加对应网卡的收发字节数;
- 确认后,图形会实时刷新。右键图表可调整时间缩放、添加标尺或导出数据。
识别典型异常值
监控时注意以下阈值参考(非绝对,需结合业务场景判断):
- 读写延迟持续高于 20–30 ms:可能提示存储响应慢、网络拥塞或客户端缓存未生效;
- 吞吐量远低于理论带宽(如 1 Gbps 网络下长期低于 80 MB/s):需排查 CPU 占用、SMB 加密/签名开销、或磁盘持续写入瓶颈;
- Read Latency 高但 Write Latency 正常:常见于大文件顺序读场景,可能与远程存储缓存策略或预读设置有关;
- 计数器为空或显示“无数据”:说明该共享当前无活跃 SMB 客户端连接,或系统未启用 SMB 客户端性能计数器(Windows 默认开启,无需额外注册)。
补充建议
单靠 Perfmon 的实时曲线有时难以定位根因,建议配合使用:
- 用 robocopy /J /LOG+ 执行大文件拷贝,观察 Perfmon 中延迟与吞吐变化趋势;
- 检查事件日志中的 Microsoft-Windows-SMBClient/Operational,关注重试、断连或认证失败事件;
- 若服务器端是 Windows Server,同步查看 SMB Server Shares 计数器,比对客户端与服务端视角是否一致。











