Just leaving notes here for a problem I faced where the network speeds in my Windows 11 VM would be much slower than from the Unraid host. Speeds would be about 300mbps on iperf3 and all over the place depending on what speed test site I used. This also affected a USB NIC I tried. I was able to achieve 15+gbps to the vm host with the default number of virtio threads after this fix. I don't know what disabled the receive window tuning though.
TL;DR Set Receive Window Autotuning Level to Normal running "Set-NetTCPSetting -AutoTuningLevelLocal Normal" in an elevated powershell prompt.
You can check your current settings by running
Reference: https://learn.microsoft.com/en-us/windows-server/networking/technologies/network-subsystem/net-sub-performance-tuning-nics
Specs:
AMD Ryzen R9 5900X
Asus ROG Strix B550-E Motherboard (Intel I225-V 2.5G NIC)
64 GB DDR4-3600
Nvidia GTX 1660 Ti
Nvidia RTX 2070
Network:
Onboard Intel I225-V 2.5G NIC @ 1G
Ubiquiti Dream Machine SE
AT&T Fiber 1G Symmetrical
Unraid Network Configuration:
VM XML:
Relevant Network block:
<interface type='bridge'>
<mac address='52:54:00:25:50:ee'/>
<source bridge='br0'/>
<target dev='vnet1'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
Data Points:
Before:
Speed Test Screenshots:
Iperf3 Runs:
10.39.0.1 - Router
10.39.0.10 - Unraid Host
After:
Speed Test Screenshots:
Iperf3 Runs: