2013
01.08

Windows Server 2012 NIC Teaming Part 1 – Back To Basics

Terminology

There is some terminology for a WS2012 NIC team.  The below diagram depicts this terminology:

  • Team members or network adapters: These are the physical NICs in your server or host that make up the NIC team.  I tend to use the term team member.
  • Team or NIC team: this is the aggregation of team members to give us an LBFO team.
  • Team Interfaces, Team NICs, or tNICs: This are the possible terms for the connections that are created for the NIC team.  I tend to use the term team interface.  A team has at least one team interface, and this is where the IP stack is configured

image

Team Members

A WS2012 NIC team can be comprised of up to 32 team members.  I can’t imagine ever seeing such a team in production, but you can do it.  These team members don’t have to be the same model or same manufacturer.

An interesting design is to deliberately use team members from different manufacturers for failover in the same team. Some networking issues I’ve seen have been related to 3rd party NIC drivers or firmware.  If you have an Intel NIC and a Broadcom NIC in the same team, and the Broadcom NIC has an issue, then the Intel NIC can stay online and keep the virtual machines on the network … assuming the driver failure doesn’t cause a BSOD Smile In the era of dual and quad port NICs, this would be an expensive design, but it might be valuable for true mission critical deployments (where people might die, and not honest ).

Note that it is possible to designate a team member as a hot standby NIC in the team.  This means that it remains offline until another NIC fails.  I used to struggle to figure out why you would do this.  Hans Vredeveoort (MVP) suggested one good reason to me: troubleshooting the team without breaking it.  Convert a NIC in a 2 team member team to a hot standby.  That forces traffic through the other team member and thus through one path in the physical network.

Can you mix NICs of different speeds? Yes you can BUT to be supported, the active team members in the team must be running at the same speed.

I’ve since come up with a second reason to use the hot standby option. Once again, you have a team with two team members.  You want 10 GbE networking but have limited budget for switch ports.  So you put in one 10 GbE NIC as the active NIC and one 1 GbE NIC as the hot standby.  If the 10 GbE team member goes offline then the team remains operational, although it is now crippled because it has 10% of the bandwidth that it had before the failure.  It’s an option, even if it is a pretty horrible one.

image

Team Interfaces

When you create a team, there will be one team interface.  This is kind of a network interface that appears in Control Panel (Networking), as you can see below:

image

The team interface has a device name of Microsoft Network Adapter Multiplexor Driver.  This is the device that you:

  • Configure TCP/IP on
  • Connect a Hyper-V virtual switch to

A team can have many team interfaces, BUT the team must have only 1 team interface if you are going to use the team to connect and external virtual switch.  The NIC team must be dedicated to the external virtual switch – no exceptions; Microsoft and the NIC team don’t care what your budget or bosses demands are.

You can create multiple team interfaces, e.g. a NIC team on a web server. The below example shows a scenario where the first team interface is in default mode.  This is … well … the default mode of the first team interface of any NIC team.  This interface will accept all traffic sent into a team.  A second team interface has been created.  Only one team interface can be in default mode.  Every other team interface must be in VLAN mode.  This binds a team interface to a single VLAN, so the IP stack of that team interface should be configured appropriately for that VLAN.

image

You can configure all team interfaces to be on a specific VLAN (i.e. in VLAN mode).  Any traffic that is not routed to a team interface, i.e. not on a valid VLAN, is sent to a black hole (the trash).

image

Remember, if a NIC team is to be used to connect an external virtual switch to the LAN, then that NIC team must have a single team interface.  And that NIC team must be in default mode.  No exceptions.

Don’t Get “Clever”

It is not supported to:

  • Try mix elements of 3rd party NIC teaming with WS2012 NIC teaming
  • Make teams of teams

Just keep it simple.  You also need to use team members that are on the WS2012 Hardware Compatibility List (HCL), i.e. they have been successfully logo tested for Windows Server 2012.

This information has been brought to you by Windows Server 2012 Hyper-V Installation and Configuration Guide (available on pre-order on Amazon) where you’ll find lots of PowerShell like in this script:

image

Windows Server 2012 NIC Teaming Part 4 – Load Distribution

Windows Server 2012 NIC Teaming Part 5 – Configuration Matrix

5 comments so far

Add Your Comment
  1. Is there any articles out there that explain to this level of detail the NIC Teaming setup for SCVMM 2012 SP1? I’ve been trying to learn that recently and run into some troubles.

    • Not that I’ve seen.

  2. Hi, great post, thanks. But coming from a VMware background, I’m having trouble understanding 1 thing. You say: “A team can have many team interfaces, BUT the team must have only 1 team interface if you are going to use the team to connect and external virtual switch. The NIC team must be dedicated to the external virtual switch – no exceptions; Microsoft and the NIC team don’t care what your budget or bosses demands are.”
    So if I’ve teamed my NICs, and I’m trunking multiple VLANs from the pSwitch, how do I create seperate vSwitches for different VLANs? – so that my VMs can just be given an (untagged) vNIC to the appropriate vSwitch with the VLAN they need to use?
    Or do we have to go into the vNIC properties in the VM and configure a tagged VLAN?

    • You don’t. Instead you tag the vNICs of the VMs with the VLAN IDs. This is much simpler than what you are trying to do.

      • Super, got it working now, thanks.

Get Adobe Flash player