How to Configure Windows Server 2019 Host Networking

Host networking in Windows Server 2019 encompasses the configuration of physical and virtual network adapters, Hyper-V virtual switches, NIC teaming, RDMA, SR-IOV, and host networking services that underpin SDN workloads and containerized applications. Proper host networking configuration is foundational to the performance and reliability of any Hyper-V, container, or SDN deployment. This guide covers the key aspects of host networking configuration on Windows Server 2019.

Viewing and Managing Physical Network Adapters

Begin by auditing the physical network adapters on your host. Use PowerShell to list all adapters with their speed, status, and driver information:

Get-NetAdapter | Select Name, InterfaceDescription, Status, LinkSpeed, MacAddress | Format-Table

Check advanced adapter properties to determine if hardware offload features are available:

Get-NetAdapterAdvancedProperty -Name "Ethernet" | Select DisplayName, DisplayValue

Enable Jumbo Frames (9014-byte MTU) on adapters for storage and live migration traffic:

Set-NetAdapterAdvancedProperty -Name "Storage_NIC1" -RegistryKeyword "JumboPacket" -RegistryValue 9014

Configuring NIC Teaming

NIC teaming (LBFO – Load Balancing and Failover) combines multiple physical NICs into a single logical adapter for redundancy and bandwidth aggregation. Create a NIC team with two adapters:

New-NetLbfoTeam `
    -Name "HostTeam" `
    -TeamMembers "Ethernet 1","Ethernet 2" `
    -TeamingMode SwitchIndependent `
    -LoadBalancingAlgorithm TransportPorts `
    -Confirm:$false

Verify the team is operational:

Get-NetLbfoTeam -Name "HostTeam" | Select Name, Status, TeamingMode, LoadBalancingAlgorithm
Get-NetLbfoTeamMember -Team "HostTeam" | Select Name, AdministrativeMode, OperationalStatus

Creating and Configuring Hyper-V Virtual Switches

The Hyper-V Virtual Switch is the core networking component for VMs and containers on the host. For production deployments, create an External virtual switch bound to the NIC team:

New-VMSwitch `
    -Name "ExternalSwitch" `
    -NetAdapterName "HostTeam" `
    -AllowManagementOS $true `
    -MinimumBandwidthMode Weight

For SDN and container networking, create a dedicated internal switch:

New-VMSwitch `
    -Name "InternalSwitch" `
    -SwitchType Internal

Enable the Virtual Filtering Platform (VFP) extension used by SDN and Windows containers:

Get-VMSwitchExtension -VMSwitchName "ExternalSwitch" | Where-Object {$_.Name -like "*VFP*" -or $_.Name -like "*Filtering*"} | Enable-VMSwitchExtension

Configuring SET (Switch Embedded Teaming)

Switch Embedded Teaming (SET) is the recommended teaming solution for Windows Server 2019 when Hyper-V is present. SET integrates directly into the Hyper-V Virtual Switch and supports RDMA. Create a virtual switch with SET:

New-VMSwitch `
    -Name "SETSwitch" `
    -NetAdapterName "RDMA_NIC1","RDMA_NIC2" `
    -EnableEmbeddedTeaming $true `
    -AllowManagementOS $false

Verify SET configuration:

Get-VMSwitch -Name "SETSwitch" | Select Name, EmbeddedTeamingEnabled, NetAdapterInterfaceDescriptions

Configuring Virtual NICs (vNICs) on the Host

After creating the virtual switch, add host vNICs for management, storage, live migration, and cluster communication:

Add-VMNetworkAdapter -ManagementOS -Name "Mgmt" -SwitchName "SETSwitch"
Add-VMNetworkAdapter -ManagementOS -Name "Storage1" -SwitchName "SETSwitch"
Add-VMNetworkAdapter -ManagementOS -Name "Storage2" -SwitchName "SETSwitch"
Add-VMNetworkAdapter -ManagementOS -Name "LiveMigration" -SwitchName "SETSwitch"

Assign VLANs to the host vNICs for traffic isolation:

Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Mgmt" -Access -VlanId 10
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Storage1" -Access -VlanId 20
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Storage2" -Access -VlanId 21
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "LiveMigration" -Access -VlanId 30

Configuring RDMA and DCB

RDMA (Remote Direct Memory Access) reduces CPU overhead for storage (SMB Direct) and live migration. Enable RDMA on the storage vNICs and configure Data Center Bridging (DCB) for priority flow control:

Enable-NetAdapterRdma -Name "vEthernet (Storage1)"
Enable-NetAdapterRdma -Name "vEthernet (Storage2)"

Verify RDMA is enabled:

Get-NetAdapterRdma | Select Name, Enabled

Install and configure DCB for RDMA traffic prioritisation:

Install-WindowsFeature Data-Center-Bridging

New-NetQosPolicy "SMB_Direct" -NetDirectPortMatchCondition 445 -PriorityValue8021Action 3
New-NetQosPolicy "LiveMigration" -IPProtocolMatchCondition TCP -IPPortMatchCondition 6600 -PriorityValue8021Action 5
New-NetQosTrafficClass "SMB" -Priority 3 -Algorithm ETS -Bandwidth 50
New-NetQosTrafficClass "LiveMig" -Priority 5 -Algorithm ETS -Bandwidth 30
Enable-NetQosFlowControl -Priority 3

Configuring SR-IOV

SR-IOV (Single Root I/O Virtualization) allows VMs to bypass the Hyper-V virtual switch and directly access the physical NIC hardware, improving performance for high-throughput workloads. Enable SR-IOV on the virtual switch:

New-VMSwitch `
    -Name "SRIOVSwitch" `
    -NetAdapterName "SRIOV_NIC" `
    -EnableIov $true `
    -AllowManagementOS $true

Enable SR-IOV on a VM’s network adapter:

Set-VMNetworkAdapter -VMName "ProductionVM01" -Name "Network Adapter" -IovWeight 100

Monitoring Host Networking

Monitor adapter utilization and errors regularly:

Get-NetAdapterStatistics | Select Name, ReceivedBytes, SentBytes, ReceivedPackets, SentPackets, ReceivedDiscardedPackets, OutboundDiscardedPackets
Get-NetAdapterHardwareInfo | Select Name, Segment, Function, Slot

Check for network driver and firmware updates regularly, as many performance issues with RDMA and SR-IOV are resolved in updated drivers. Review NDIS event logs:

Get-WinEvent -LogName "Microsoft-Windows-NDIS/Operational" -MaxEvents 100 | Where-Object {$_.LevelDisplayName -ne "Information"} | Format-List TimeCreated, Message

A well-configured host networking stack is the foundation of reliable Hyper-V virtualization, container workloads, and SDN environments on Windows Server 2019. Prioritizing SET over LBFO, enabling RDMA for storage and live migration, and isolating traffic types with VLANs and QoS policies ensures optimal performance and manageability at scale.