How to Set Up Windows Server 2016 Host Networking
Host networking in Windows Server 2016 refers to the configuration of the physical and virtual network infrastructure on Hyper-V hosts, including the Hyper-V virtual switch, NIC teaming, virtual network adapters, Quality of Service (QoS) policies, and RDMA (Remote Direct Memory Access) capabilities. Properly configured host networking is the foundation on which virtual machine networking, container networking, and SDN all depend. Getting it right ensures maximum throughput, low latency, high availability, and proper traffic isolation between management, VM, and storage networks.
Windows Server 2016 introduces several important improvements to host networking, including Switch Embedded Teaming (SET), which combines NIC teaming functionality directly into the Hyper-V extensible switch, and enhanced support for RDMA over Converged Ethernet (RoCE) and iWARP for high-performance storage networking.
Prerequisites
You need: Windows Server 2016 installed on the Hyper-V host, one or more physical NICs (10GbE or faster recommended for production), administrative PowerShell access, and an understanding of your network topology including VLAN assignments for management, VM, storage, and live migration traffic.
Step 1: Install the Hyper-V Role
If Hyper-V is not already installed, add it via PowerShell:
Install-WindowsFeature Hyper-V, RSAT-Hyper-V-Tools -IncludeManagementTools -Restart
Step 2: Configure Switch Embedded Teaming
Switch Embedded Teaming (SET) is the recommended NIC teaming approach in Windows Server 2016 with Hyper-V. Unlike traditional NIC teaming, SET is integrated into the Hyper-V virtual switch, allowing SR-IOV and RDMA to work simultaneously with teaming. Create a SET-enabled virtual switch using two physical adapters:
New-VMSwitch -Name "HostSwitch" -NetAdapterName @("NIC1","NIC2") -EnableEmbeddedTeaming $true -AllowManagementOS $true
Verify the switch was created with SET enabled:
Get-VMSwitch -Name "HostSwitch" | Select-Object EmbeddedTeamingEnabled, NetAdapterInterfaceDescriptions
Step 3: Create Host Virtual Network Adapters
Create multiple host vNICs (virtual NICs for the management OS) to separate traffic types. Best practice is to have dedicated vNICs for management, live migration, storage (SMB), and clustering:
Add-VMNetworkAdapter -ManagementOS -Name "Management" -SwitchName "HostSwitch"
Add-VMNetworkAdapter -ManagementOS -Name "LiveMigration" -SwitchName "HostSwitch"
Add-VMNetworkAdapter -ManagementOS -Name "SMB1" -SwitchName "HostSwitch"
Add-VMNetworkAdapter -ManagementOS -Name "SMB2" -SwitchName "HostSwitch"
Step 4: Assign VLANs to Host vNICs
Assign each vNIC to its appropriate VLAN to enforce traffic separation:
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Management" -Access -VlanId 100
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "LiveMigration" -Access -VlanId 200
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "SMB1" -Access -VlanId 300
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "SMB2" -Access -VlanId 300
Step 5: Enable RDMA on Storage vNICs
For SMB Direct (RDMA-based SMB), enable RDMA on the storage virtual NICs. First verify hardware support:
Get-NetAdapterRdma
Enable RDMA on the SMB host vNICs:
Enable-NetAdapterRdma -Name "vEthernet (SMB1)"
Enable-NetAdapterRdma -Name "vEthernet (SMB2)"
Map each SMB vNIC to a specific physical adapter for predictable affinity, ensuring load is distributed across both physical NICs:
Set-VMNetworkAdapterTeamMapping -ManagementOS -VMNetworkAdapterName "SMB1" -PhysicalNetAdapterName "NIC1"
Set-VMNetworkAdapterTeamMapping -ManagementOS -VMNetworkAdapterName "SMB2" -PhysicalNetAdapterName "NIC2"
Step 6: Configure QoS Policies
Quality of Service ensures that critical traffic like live migration and cluster heartbeats get adequate bandwidth. Configure minimum bandwidth policies:
New-VMSwitchTeam -Name "HostSwitch"
Set-VMNetworkAdapter -ManagementOS -Name "LiveMigration" -MinimumBandwidthWeight 30
Set-VMNetworkAdapter -ManagementOS -Name "SMB1" -MinimumBandwidthWeight 30
Set-VMNetworkAdapter -ManagementOS -Name "SMB2" -MinimumBandwidthWeight 30
For DCB (Data Center Bridging) environments, configure priorities using NetQos policies:
New-NetQosPolicy -Name "SMB" -NetDirectPortMatchCondition 445 -PriorityValue8021Action 3
New-NetQosTrafficClass "SMB" -Priority 3 -BandwidthPercentage 50 -Algorithm ETS
Enable-NetQosFlowControl -Priority 3
Step 7: Verify Host Networking Configuration
Review the complete virtual switch and host vNIC configuration:
Get-VMSwitch | Format-List *
Get-VMNetworkAdapter -ManagementOS | Format-Table Name, SwitchName, IPAddresses, VlanSetting
Test network throughput between hosts using ntttcp or the built-in iPerf tools to validate the host networking is performing as expected. Proper host networking configuration in Windows Server 2016 forms the performance and reliability backbone for all virtual machine and container workloads running on Hyper-V.