Windows文件服务器SMB出站流量限速需通过原生“基于策略的QoS”实现,仅作用于TCP 445端口的服务器出站流量,单位Kbps,须在服务器本机配置,支持gpedit.msc图形化或PowerShell批量部署。
windows 文件服务器的流量监管与限速,核心目标是控制 smb 协议出站带宽(即从服务器向客户端传输文件时的速率),避免单次大文件共享挤占全部上行链路,影响视频会议、远程桌面、erp 等关键业务。这不是限制整机网卡,而是精准节流 smb 流量——主要靠系统原生的“基于策略的 qos”实现,无需第三方工具。
明确限速对象:只管 SMB 出站,不碰入站和其它服务
Windows 共享文件夹走的是 SMB 协议,默认使用 TCP 445 端口(现代 Windows 主力端口)。限速必须作用于服务器的出站方向(Outbound),也就是服务器向外发送数据的那部分流量。这样既不影响客户端上传(如往服务器存文件),也不干扰 DNS、HTTP、RDP 等其他端口的通信。注意:此方法对客户端无效,限速规则需部署在文件服务器本机或域控制器上。
图形化操作:组策略编辑器(gpedit.msc)快速配置
适用于 Windows 专业版、企业版、教育版及 Server 系统:
- 按 Win + R,输入 gpedit.msc 回车
- 导航至:计算机配置 → Windows 设置 → 基于策略的 QoS
- 右键“基于策略的 QoS” → “新建策略”
- 策略名称建议填 Limit_SMB_Outbound_20Mbps(便于识别)
- 在“指定限速”处勾选,并输入数值——单位是 Kbps(不是 KB/s):例如限 20 Mbps = 20480 Kbps
- 协议类型选 TCP,目标端口留空,源端口填 445;勾选“仅对匹配的出站流量应用此策略”
命令行补位:PowerShell 批量部署与验证
当需在多台服务器统一配置,或脚本化运维时,用 PowerShell 更高效:
- 创建策略命令示例(限 10 Mbps):
New-NetQosPolicy -Name "SMB_Out_10M" -IPSrcPortMatchCondition 445 -IPProtocolMatchCondition TCP -ThrottleRateActionBitsPerSecond 10485760 -NetworkProfile All - 查看当前所有 QoS 策略:
Get-NetQosPolicy - 临时禁用某策略:
Disable-NetQosPolicy -Name "SMB_Out_10M" - 验证是否生效:用另一台机器从该服务器复制大文件,同时打开任务管理器 → 性能 → 网络,观察“发送”速率是否稳定在设定值附近
辅助监控:用性能监视器确认实际效果
仅靠策略不等于生效,建议搭配基础监控验证:
- 运行 perfmon → 添加计数器 → 选择 Network Interface → Bytes Sent/sec
- 定位到对应网卡,添加后观察曲线:启动大文件下载时,峰值应被压平在理论限速值附近(换算:X Kbps ÷ 8 = X/8 KB/s)
- 若未达预期,检查是否策略未启用、源端口写错(误写成目标端口)、或系统版本不支持(Windows 10 家庭版无 gpedit,Server 2008 及以上均支持)

















