Switch Embedded Teaming

Switch Embedded Teaming (SET) is a new feature in the Software-Defined Networking stack that will be included in Windows Server 2016. It enables to group several physical network adapters (from one to eight) into a single virtual network adapters in a Hyper-V environment. In fact, it is SET is an alternative to standard NIC teaming.

The main advantage of SET compared to standard NIC teaming is the RDMA convergence and the RDMA virtualization for host. In this way storage traffic with SMB direct can be converged with others traffics. Below you can find a Microsoft diagram which compares the network convergence in Windows Server 2012 R2 and Windows Server 2016:

As you can see above, in Windows Server 2016, you’ll need less Physical NICs for the same job! Obviously at least 10GB NICs and QoS management will be recommended in production.

Network technologies supported and unsupported

Switch Embedded Teaming is compatible with the following network technologies:

  • Datacenter bridging (DCB)
  • Hyper-V Network Virtualization – NV-GRE and VxLAN are both supported in Windows Server 2016 Technical Preview.
  • Receive-side Checksum offloads (IPv4, IPv6, TCP) – These are supported if any of the SET team members support them.
  • Remote Direct Memory Access (RDMA)
  • SDN Quality of Service (QoS)
  • Transmit-side Checksum offloads (IPv4, IPv6, TCP) – These are supported if all of the SET team members support them.
  • Virtual Machine Queues (VMQ)
  • Virtual Receive Side Scalaing (RSS)

However SET is not compatible with these network technologies:

  • 802.1X authentication
  • IPsec Task Offload (IPsecTO)
  • QoS in host or native OSs
  • Receive side coalescing (RSC)
  • Receive side scaling (RSS)
  • Single root I/O virtualization (SR-IOV)
  • TCP Chimney Offload
  • Virtual Machine QoS (VM-QoS)

Physical NICs requirements

First the physical NICs that will be in the SET must pass the Windows Hardware Qualification and Logo. Secondly, each physical NICs must be the same (same manufacturer, model firmware and driver). To finish you can group from one to eight physical NICs in the same team.

SET settings

First of all, when you use SET, all physical network adapters are in active mode. You can’t implement a physical NIC in standby mode in the team.

Next the only teaming mode supported is the Switch Independent. So you can’t implement LACP or other things with SET. Sorry network administrator’s guys J.

To finish you can configure the Load Balancing mode as standard NIC Teaming. But you have only two options: Hyper-V Port or Dynamic.

About Live Migration

In Windows Server 2016 Technical Preview 3, SET does not support Live-Migration (But it should be supported in the final release because official Microsoft Diagrams say the opposite).

SET, VM Queues and RSS

Because the only mode supported by SET is Switch Independent, the total number of VM queues in the team is the sum of the VM Queues of each NIC in the team. It is also called the Sum-Queues.

As standard NIC teaming in Windows Server 2012 R2, it is necessary to set the RssBaseProcNumber to at least 2 and MaxRssProcessor (Powershell command: Set-NetAdapterVmq). By setting the RssBaseProcNumber to at least 2, the logical Core 0 and 1 are not used for networking purposes and leave these cores for system processing.

Play with Switch Embedded Teaming

In this Technet Topic, Microsoft recommends to use Virtual Machine Manager to manage SET. However SET can be managed from PowerShell and you can find the commands on the above topic.

To test the SET management, I add in the team two NICs that I don’t use:

So I run the New-VMSwitch command by using EnableEmbeddedTeaming option:

Next I run Get-NetAdapterRdma to verify if I have Virtual NICs RDMA capable:

Then I enable RDMA on VMSwitchSET:

To finish, I remove the VMSwitch:

About Romain Serre

Romain Serre works in Lyon as a Senior Consultant. He is focused on Microsoft Technology, especially on Hyper-V, System Center, Storage, networking and Cloud OS technology as Microsoft Azure or Azure Stack. He is a MVP and he is certified Microsoft Certified Solution Expert (MCSE Server Infrastructure & Private Cloud), on Hyper-V and on Microsoft Azure (Implementing a Microsoft Azure Solution).

One comment

  1. Hi Romain,
    I have implemented SET without tuning like RssBAseProcNumber. Event log show id 260 lot of error :
    ” Failed to move RSS queue 5 from VMQ 3 of switch 34272B1B-DA6C-440E-A2DF-817DE9EC2AAC (Friendly Name:switch), ndisStatus = -1071448015 .”
    I don’t understand that… error appear anytime but no impact on availability

    have you ever seen that ?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.


Check Also

Design the network for a Storage Spaces Direct cluster

In a Storage Spaces Direct cluster, the network is the most important part. If the ...

Configure Dell S4048 switches for Storage Spaces Direct

When we deploy Storage Spaces Direct (S2D), either hyperconverged or disaggregated, we have to configure ...

Update Mellanox network adapter firmware

Like the others, Mellanox network adapters should be updated to the latest firmware to solve ...