当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 Windows 上限制网络文件传输速度

作者:精品下载站 日期:2024-12-14 22:57:11 浏览:14 分类:玩电脑

在 Windows 上限制网络文件传输速度


在本文中,我们将向您展示如何使用内置工具和第三方工具限制与 Windows Server 2016 和 Windows 10 之间的网络数据传输速率。您可能知道 Windows 应用程序默认使用大部分可用网络接口带宽。如果任务(主要是 SMB 共享网络文件夹)使用网络适配器的所有可用带宽,可能会导致一些问题。您可以限制网络共享文件夹的最大文件复制速率,从而为其他应用程序的用户提供有保证的网络适配器资源。

为了管理 TCP/IP 网络中的流量类别或优先级,使用QoS(服务质量)技术。

在 Windows 上配置 QoS 组策略

您可以使用 QoS GPO 设置来管理 Windows 中的流量优先级。在这种情况下,我将限制所有出站连接的数据传输速率。 (即使用户从您的服务器复制文件,该策略也会应用。)使用此示例,您可以限制任何应用程序、端口或主机/站点的速率。

QoS 组策略受以下支持:

  • Windows Server 2008 或更高版本

  • Windows Vista 或更高版本

首先,检查您的网络适配器设置,确保启用了Qos Packet Scheduler选项。

[玩转系统] 在 Windows 上限制网络文件传输速度

  1. 运行本地组策略编辑器控制台(

    gpedit.msc

    ),转到计算机配置-> Windows 设置-> 基于策略的 QoS ,然后单击创建新策略;

    [玩转系统] 在 Windows 上限制网络文件传输速度

  2. 指定策略名称,选中指定出站限制率选项并设置限制率。这是您想要限制出站流量的速率(以 MBps/KBps 为单位);

    注意。您还可以设置 DSCP 值。 DSCP(差分服务代码点)可用于 Cisco/Mikrotik 等高级路由器。根据网络数据包的 DSCP 值,路由器将为其设置优先级。如果您不确定路由器上的 DSCP QoS 设置,请不要使用此选项。

    [玩转系统] 在 Windows 上限制网络文件传输速度

  3. 然后,您可以选择将应用策略的进程/应用程序(可执行文件 .exe)或 IIS http(s) 站点。我选中了所有应用程序选项;

    [玩转系统] 在 Windows 上限制网络文件传输速度

  4. 您可以指定计算机上将应用策略的 IP 接口。如果您有多个网络适配器或 IP 别名,则可能需要它;

  5. 您还可以设置目标IP地址来限制其传输速率;

    [玩转系统] 在 Windows 上限制网络文件传输速度

  6. 然后指定策略将应用到的协议(TCP、UDP 或 TCP 和 UDP)。您还可以选择源端口和目标端口。如果您不确定您的应用使用什么协议,请选择TCP 和 UDP。如果您想限制 SMB 文件夹中共享文件的访问速率,请选择 TCP 和端口 445

    [玩转系统] 在 Windows 上限制网络文件传输速度

已配置Windows下的QoS策略。您无需重新启动计算机,网络中的数据传输速率将在您应用更改后立即调整。请注意,即使您已选择 MB 作为其值,限制速率 在策略编辑器中也会以千字节为单位显示。

[玩转系统] 在 Windows 上限制网络文件传输速度

由于我选择了所有应用程序和所有端口,因此该策略将最大网络文件传输速率限制为

3 MB

(包括使用文件资源管理器 — explorer.exe 进行文件复制)。在下面的屏幕截图中,您可以看到配置的 QoS 策略降低了 Windows 上的网络文件传输速率。

[玩转系统] 在 Windows 上限制网络文件传输速度

此外,高级 QoS 策略仅在计算机配置组策略部分中可用。您可以在入站 TCP 流量选项卡中限制入站 TCP 流量(DSCP 标记覆盖选项卡指的是 DSCP 设置,我们在此不讨论)。

[玩转系统] 在 Windows 上限制网络文件传输速度

如您所见,交通限制分为 4 级。下表显示了级别及其比率。

Inbound TCP throughput levelMaximum Transfer Rate064 KB1256 KB21 MB316 MB

通过 PowerShell 管理 Windows 网络 QoS 策略

您可以使用 PowerShell 创建和管理网络 QoS 策略。例如,要创建限制 SMB(共享文件)流量带宽的 QoS 策略,请使用以下命令:

New-NetQosPolicy -Name "SMBRestrictFileCopySpeed" -SMB -ThrottleRateActionBitsPerSecond 10MB
Name : SMBRestrictFileCopySpeed
Owner : Group Policy (Machine)
NetworkProfile : All
Precedence : 127
Template : SMB
JobObject :
ThrottleRate : 10.486 MBits/sec

要显示计算机上应用的 QoS 策略的列表,请运行以下命令:

Get-NetQosPolicy

[玩转系统] 在 Windows 上限制网络文件传输速度

要编辑或删除 QoS 策略,

Set-NetQosPolicy

Remove-NetQosPolicy

使用 cmdlet。

Remove-NetQosPolicy -Name SMBRestrictFileCopySpeed

Set-SmbBandwidthLimit:使用 PowerShell 配置 SMB 带宽限制

Set-SmbBandwidthLimit cmdlet 允许限制 SMB 协议上的文件传输速率。首先,使用 PowerShell 安装 Windows Server 组件 SMB 带宽限制

Add-WindowsFeature -Name FS-SMBBW

或者您可以从图形服务器管理器安装它(添加 Windows 功能 -> SMB 带宽限制)。

通常该模块用于配置Hyper-V实时迁移的带宽限制。例如,以下命令将最大虚拟机迁移速度限制为 100 MB/s。

Set-SmbBandwidthLimit -Category LiveMigration -BytesPerSecond 100MB

[玩转系统] 在 Windows 上限制网络文件传输速度

您还可以使用-Category Default参数来限制通过SMB的常见文件传输流量。

Set-SmbBandwidthLimit -Category Default -BytesPerSecond 10MB

FS-SMBBW 在 Windows Server 2012 R2 或更高版本中可用。

限制 Robocopy 中的文件传输带宽

使用 robocopy 时,您还可以使用特殊参数来限制通过网络复制/移动文件的速度。它是/ipg(数据包间间隙)。该密钥以毫秒为单位设置包之间的间隙,用于减少通过低速通道复制文件时的网络负载。 Robocopy 通过网络以 64 KB 块传输数据。因此,如果您知道网络链接的带宽,则可以根据传输速率要求计算相关的 /ipg 值。

如果您不想深入研究公式,可以使用现成的 Robocopy IPG 计算器:http://www.zeda.nl/index.php/en/robocopyipgcalculator-en-2

[玩转系统] 在 Windows 上限制网络文件传输速度

您还可以使用 BITS 协议将数据复制到速度慢或不稳定的网络链接(请参阅有关如何使用 BITS 和 PowerShell 复制大文件的文章中的示例)。 BITS 协议允许根据通道负载动态管理两个主机之间的数据传输速度,并支持下载恢复。

使用第三方工具进行流量整形

根据端口、应用程序或目标来限制 Windows 中吞吐量的最流行的商业解决方案是 NetLimiter。 最受欢迎的免费工具是TMeter Free。

还值得一提的是:

  1. Glasswire - 还包括防火墙和网络监视器;

  2. NetBalancer - 网络监控和设置流量规则;

  3. cFosSpeed - 可以配置应用程序的流量优先级;

  4. Net Peeker - 与 Glasswire 一样,它具有防火墙功能并可以设置流量优先级。

Windows QoS策略可以很好地限制网络中的数据传输速率,所以如果你想这样做,首先尝试QoS。与任何其他策略一样,您可以使用以下命令在域级别配置它们

gpmc.msc

安慰。

第三方软件有更多的功能和图形界面,但这些应用程序大多是商业的。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯