windows10

关注公众号 jb51net

关闭
操作系统 > Windows系列 > windows10 >

Win10虚拟机网速很卡怎么办? Hyper-V虚拟机网络慢的原因及解决方案参考

脚本之家

不少的用户们在会安装Hyper-V虚拟机来进行运行操作,不过不少的用户们在使用Hyper-V虚拟机的时候发现网速很慢,那么这要怎么设置?用户们可以看看是不是因为您的虚拟机没有好的处理器或足够的内存,下面就让本站来为用户们来仔细的介绍一下Win10 Hyper虚拟机网速慢怎么解决方法吧。

Win10 Hyper虚拟机网速慢怎么解决方法

1、首先,您应该注意 Windows Server 2019/2022(和 Windows 10 1809+)上的 Hyper-V 中出现的接收段合并 (RSC) 功能。接收分段合并在虚拟交换机级别 (vSwitch) 使用。

2、RSC 允许通过将多个 TCP 段组合成更大的段来减少 CPU 负载并提高网络吞吐量。 网络性能得到提高,因为大型分段的处理速度比许多较小的分段更快。

3、在以前的 Hyper-V 版本 (Windows Server 2016/2012R2) 中,NIC 级别仅支持硬件接收段合并模式。

如果启用了 RSC 支持,则可能会导致某些硬件配置中出现额外的网络延迟、默认情况下, Windows Server 2019 上的所有外部交换机启用 RSC。

您可以使用以下命令检查是否为虚拟交换机启用了 RSC:

Get-VMSwitch | Select-Object *RSC*

可以使用以下命令禁用对客户端网络适配器上的 IPv4 流量使用 RSC:

Disable-NetAdapterRsc -Name “Ethernet” -IPv4

检查禁用 RSC 后 Hyper-V VM 中的复制速度是否提高。如果网络速度有所提高,则可以在 VM 连接到的虚拟交换机上禁用 RSC。

4、您可以使用 iperf 工具检查网络吞吐量。

1)要禁用特定虚拟交换机的软件 RSC,请运行以下命令:

Set-VMSwitch -Name vSwitchName -EnableSoftwareRsc $false

您可以即时启用/禁用RSC,它不会影响任何活动连接。

或者,您可以在Windows主机上完全禁用RSC:

netsh int tcp set global rsc=disabled

2)网络适配器驱动程序中的虚拟机队列 (VMQ) 模式

在某些情况下,如果在物理 Hyper-V 主机的网络适配器驱动程序中启用了 VMQ(虚拟机队列),则可能会导致 Hyper-V 虚拟机中的网络性能不佳。

VMQ 是一项硬件功能,如果您的硬件不支持它在驱动程序中启用,则可能会导致数据包丢失和网络延迟增加。

该问题是 Broadcom 千兆网络适配器的典型问题,在所有 Hyper-V 版本 (Windows Server 2012 R2/2016/2019) 中都会出现。

VMQ 旨在通过将数据包从物理网络适配器直接转发到虚拟机来提高网络性能。

可以在网络适配器驱动程序的属性中禁用 VMQ。

或者,可以使用 PowerShell 显示支持 VMQ 的网络适配器列表及其状态:

Get-NetAdapterVmq

5、要禁用特定网卡的 VMQ,请运行以下命令(网络适配器将在几秒钟内不可用):

Set-NetAdapterVmq -Name “NICName” -Enabled $False

禁用 VMQ 后,最好重新启动主机并检查网络性能。

6、确保在 Windows 中禁用

QoS 带宽限制策略。

7、在Windows Server 2019上优化Hyper-V的TCP设置

1)将当前的TCP设置保存在Hyper-V主机上,并应用新设置,这些设置将使Windows Server 2019中的TCP设置几乎与Windows Server 2016中的TCP设置相似。

2)保存当前设置:

Get-NetTCPSetting -SettingName Datacenter,DatacenterCustom,InternetCustom,Internet|select SettingName,CongestionProvider,CwndRestart,ForceWS|Export-csv c:\backup\ws2019_network_stack_settings_nettcp_backup.csv

8、默认情况下,在Windows Server 2019和Windows 10 1709 +中,使用TCP的CUTRIC实现。此算法针对具有高延迟的高速网络进行了优化(默认情况下在 Linux 内核 2.6.19 及更高版本中也使用它)。

仅在 Windows Server 2019 或 Hyper-V 2019 中应用以下设置。

1)为 LAN 应用新的 NetTCP 设置:

Set-NetTCPSetting -SettingName DatacenterCustom,Datacenter -CongestionProvider DCTCP
Set-NetTCPSetting -SettingName DatacenterCustom,Datacenter -CwndRestart True
Set-NetTCPSetting -SettingName DatacenterCustom,Datacenter -ForceWS Disabled

2)对于广域网:

Set-NetTCPSetting -SettingName InternetCustom,Internet -CongestionProvider CTCP
Set-NetTCPSetting -SettingName InternetCustom,Internet -DelayedAckTimeoutMs 50
Set-NetTCPSetting -SettingName InternetCustom,Internet -ForceWS Disabled

3)在 TCP 堆栈级别禁用网络 RSS 和 RSC 网络优化方法:

netsh int tcp show global
netsh int tcp set global RSS=Disabled
netsh int tcp set global RSC=Disabled

4)或在网卡级别:

Get-NetAdapter | Set-NetAdapterAdvancedProperty -DisplayName “Recv Segment Coalescing (IPv4)” -DisplayValue “Disabled” -NoRestart
Get-NetAdapter | Set-NetAdapterAdvancedProperty -DisplayName “Recv Segment Coalescing (IPv6)” -DisplayValue “Disabled” -NoRestart
Get-NetAdapter | Set-NetAdapterAdvancedProperty -DisplayName “Receive Side Scaling” -DisplayValue “Disabled” –NoRestart

为所有虚拟机禁用 vRSS:

Get-VM | Set-VMNetworkAdapter -VrssEnabled $FALSE

5)在网卡上禁用大型发送卸载 (LSO):

Get-NetAdapter | Set-NetAdapterAdvancedProperty -DisplayName “Large Send Offload Version 2 (IPv4)” -DisplayValue “Disabled” -NoRestart
Get-NetAdapter | Set-NetAdapterAdvancedProperty -DisplayName “Large Send Offload Version 2 (IPv6)” -DisplayValue “Disabled” -NoRestart
Get-NetAdapter | Restart-NetAdapter

9、您还可以在网络适配器属性的“高级”选项卡中禁用这些选项:

这些TCP堆栈设置将使Windows Server 2019网络协议设置类似于以前的Windows Server版本。

以上就是Win10 Hyper虚拟机网速慢先的解决方法,希望大家喜欢,请继续关注脚本之家。

相关推荐:

Win10系统中HyperV虚拟机怎么访问本机磁盘?

window10虚拟机hyperv怎么配置? Win10设置自带虚拟机的技巧