A: Windows Server 2008 R2 Hyper-V and later supports Virtual Machine Device Queues (VMDq).
Windows Server 2008 Hyper-V does not support VMDq.
By default, VMDq is disabled in the adapter. To enable VMDq, perform the following:
- Start Device Manager (devmgmt.msc).
- Expand Network adapters.
- Right-click your VMDq-capable NIC and select Properties.
- Select the Advanced tab.
Select Virtual Machine Queues and select Properties (the exact process will vary by NIC and driver). Then select the "Enable Virtual Machine
Queues" check box and click OK to all dialog boxes. (See screen shot below.)
After VMDq is enabled and you have virtual machines (VMs) running that are linked to a virtual switch connected to the NIC, you can go back to the NIC and look at the actual queues created, the CPU core that the queue is using, and the data flow.
In my example, I have a 82575 Intel NIC that supports four VMDqs, but others support more, especially the 10Gbps NICs (which are likely to have far more VMs per port because of increased available bandwidth). (See screen shot below.)
If it doesn’t seem to be working, check the two registry values under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\VMSMP\Parameters, which are BelowTenGigVmqEnabled and TenGigVmqEnabled for less than 10Gb and 10Gb VMDq enablement. They need to be set to 1; however, the Intel driver should set these registry values automatically.
Microsoft has a detailed guide on all the Windows 2008 R2 Hyper-V networking enhancements called “Networking Deployment Guide: Deploying High-Speed Networking.” Also, Intel has specific guidelines about network connectivity at its web page.
Get more answers at John Savill's FAQs for Windows.