Event ID 106 when a Hyper-V virtual switch is bound to an LBFO team

Symptoms
Consider the following scenario:
  • You have a Windows Server 2012-based or Windows Server 2012 R2-based computer that is configured together with one or more load balancing and failover (LBFO) teams.
  • A Hyper-V virtual switch is bound to one of the LBFO teams.
In this scenario, one of the following events is logged intermittently:

Log Name:      System
Source:        Microsoft-Windows-Hyper-V-VmSwitch
Date:          9/5/2014 6:14:12 PM
Event ID:      106
Task Category: None
Level:         Error
Keywords:     
User:          SYSTEM
Computer:      Server1.contoso.com
Description:
Available processor sets of the underlying physical NICs belonging to the LBFO team NIC /DEVICE/{EC20D5A1-E73E-4148-83C2-4989AFCE2E33} (Friendly Name: Microsoft Network Adapter Multiplexor Driver #3) on switch 4E936889-877B-4390-9DC1-F218A1A9D6B8 (Friendly Name: Contoso_LAN) are not configured correctly. Reason: The processor sets overlap when LBFO is configured with sum-queue mode.


Log Name:      System
Source:        Microsoft-Windows-Hyper-V-VmSwitch
Date:          9/5/2014 6:14:12 PM
Event ID:      106
Task Category: None
Level:         Error
Keywords:     
User:          SYSTEM
Computer:      Server1.contoso.com
Description:
Available processor sets of the underlying physical NICs belonging to the LBFO team NIC /DEVICE/{EC20D5A1-E73E-4148-83C2-4989AFCE2E33} (Friendly Name: Microsoft Network Adapter Multiplexor Driver #3) on switch 4E936889-877B-4390-9DC1-F218A1A9D6B8 (Friendly Name: Contoso_LAN) are not configured correctly. Reason: The processor sets are not identical when LBFO is configured with min-queue mode.

Cause
If Error 106 says, "Reason: The processor sets overlap when LBFO is configured with sum-queue mode," you have to use the Set-NetAdapterVmq Windows PowerShell command to configure each network adapter in your team to use different processors. (Because LBFO teaming is set up for Sum of Queues, the network adapters in the team have to use nonoverlapping processor sets.)

If Error 106 says, "Reason: The processor sets are not identical when LBFO is configured with min-queue mode," you have to use the Set-NetAdapterVmq Windows PowerShell command to configure each network adapters in your team to use the same processors. (Because LBFO teaming is set up for Min Queue mode, the network adapters in the team have to use overlapping processor sets.)  
Resolution
If Error 106 says, "Reason: The processor sets overlap when LBFO is configured with sum-queue mode," you can use the following example Windows PowerShell commands to separate the processors so that each network adapter uses different processors for virtual machine queue (VMQ). Also, you need to install the hotfix in KB article 3031598 to resolve other known issues after making these configuration changes. 

Note These are example commands. You can vary the BaseProcessorNumber and MaxProcessors settings based on how many processors the server has and which processors you don’t want to use for VMQ. 
Set-NetAdapterVmq -Name NIC1 -BaseProcessorNumber 2 -MaxProcessors 2
Note This network adapter would use processor 2 and 3 for VMQ.

Set-NetAdapterVmq -Name NIC2 -BaseProcessorNumber 4 -MaxProcessors 2 
Note This network adapter would use processor 4 and 5 for VMQ.

Note If the server has processor Hyper Threading enabled, you must modify how you set the BaseProcessorNumber and MaxProcessors settings to fix the Error 106 in sum-queue mode.

If you are unsure whether Hyper Threading is enabled on the server, one easy way to determine this is to run the Get-NetAdapterRSS Windows PowerShell cmdlet and then look at the output line for RssProcessorArray. If it says 0:0/0 0:1/0 0:2/0....., then Hyper Threading is OFF. If it says 0:0/0 0:2/0 0:4/0..., then Hyper Threading is ON. RSS and VMQ only use core processors when Hyper Threading is ON, so that means the even-numbered processors.

So, if you are setting the previously mentioned commands on a Hyper-Threaded server, you can only set the BaseProcessorNumber to an even number. Also, MaxProcessors must be set to the number of processors to use, that VMQ can use.

For example, if you have (two) six core processors and Hyper Threading enabled, you will see 24 processors in Windows tools that show you processors, such as Task Manager. VMQ can only use 12 of those, since it only uses the even numbered processors. To split these processors across two NICs and fix the Error 106, you would use the following commands to set each NIC to use different processors for VMQ:
Set-NetAdapterVMQ -Name NIC1 -BaseProcessorNumber 0 -MaxProcessors 6 (so this NIC would use processor 0,2,4,6,8,10 for VMQ)
Set-NetAdapterVMQ -Name NIC2 -BaseProcessorNumber 12 -MaxProcessors 6 (so this NIC would use processor 12,14,16,18,20,22 for VMQ)
If Error 106 says, "Reason: The processor sets are not identical when LBFO is configured with min-queue mode," you can use the following example Windows PowerShell commands so that each network adapter uses the same processors for VMQ.

Note These are example commands. You can vary the BaseProcessorNumber and MaxProcessors settings based on how many processors the server has and which processors you don’t want to use for VMQ. 
 
Set-NetAdapterVmq -Name NIC1 -BaseProcessorNumber 2 -MaxProcessors 4 
Note This network adapter would use processor 2, 3, 4, and 5 for VMQ
Set-NetAdapterVmq -Name NIC2 -BaseProcessorNumber 2 -MaxProcessors 4 
Note This network adapter would also use processor 2, 3, 4, and 5 for VMQ

Set-NetAdapterVmq sets the VMQ properties of the network adapter. 

After setting the VMQ processors correctly so all network adapters use the same processors for VMQ, you may still get the Error 106 "Reason: The processor sets are not identical when LBFO is configured with min-queue mode" if you have also adjusted the "Preferred NUMA node" setting for any network adapters to use a specific NUMA node. The default setting for this is "System Default" and is the preferred setting when using VMQ. If you set a specific Preferred NUMA node, and the NUMA nodes are different on the network adapters, then the network adapters are not using the same processors for VMQ.

Example: In the above example, you set NIC1 and NIC2 to both use processors 2, 3, 4, and 5. If your server has 8 NUMA nodes with 4 processors in each NUMA node, and you set NIC1 to Preferred NUMA node 0 and you set NIC2 to Preferred NUMA node 1, then you are actually setting NIC1 to use processors 2 and 3 and NIC2 to use processors 4 and 5 because processors 2, 3, 4, and 5 are split across 2 NUMA nodes representing processors 0, 1, 2, 3 and 4, 5, 6, 7.



Properties

Article ID: 2974384 - Last Review: 01/08/2016 18:14:00 - Revision: 9.0

Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Standard

  • kbexpertiseadvanced kbsurveynew kbtshoot KB2974384
Feedback