NIC Teaming in Server 2012

Having spent the last few days battling with the HP Network Configuration Utility (HP NCU) Microsoft’s decision to do away with the need for third party NIC teaming software is a very welcome addition of Server 2012.

Microsoft have never officially supported NIC teaming for Hyper-V (if you had problems and needed to talk to Microsoft support, more than likely you would have to dissolve the team before you could progress your support call too far). I have seen many network related Hyper-V issues that have boiled down to either be NIC driver or a third party teaming utility not playing nicely.

Built in NIC teaming has been a long requested feature, VMWare have had NIC teaming for a while so it’s no great surprise Microsoft have decided to include it. A great feature of this teaming solution is that you will be able to take a NIC from any manufacturer and team them e.g. I could team an Intel and a Broadcom card into a single team. This gives you some great redundancy advantages – if you upgrade the Intel driver and it stops working, no problem the Broadcom can keep the team up and running.

Creating a team is simple – just go to the Server Manager > Locate the teaming link under server properties and follow the very easy wizard.

Next just select the NIC ports you wanted to be included in the team (you can have a whopping 32 ports per team – using LBFO I could have 32 x 10Gb ports (although that would come in at a hefty price) simply having 32x 1Gb ports allows for some extreme bandwidth! This will be very useful for networks such as the live migration, especially as now you can have simultaneous migration happening at once.

Next give your new team a name and off you go. There are a few more additional options you can set, such as:

Team Mode:

Static Teaming: This mode is supported by most server-class switches. As the name suggests this is a manual configuration on the switch and server to form the teams.

Switch Independent: You don’t need to tell the switch anything or connect to different switches – although you can (and should) for better redundancy.

LACP (Link Aggregation Control Protocol): This will dynamically identify the links between the server and the switch. This will allow for the automatic creating of a team. LACP could also expand or reduce the number of NICs in the team.

Load Balancing Mode:

Hyper-V Port: The switch will balance the traffic on multiple links, based on the destination MAC address for the virtual machine.

Address Hash: This is a simple algorithm approach. Based in the components of the packet it creates a hash, it then sends packets with that hash to one of the available NICs.

Stand-by Adaptor: The name says it all – but you can have an active, active or active passive set-up by selecting the NIC you want to be waiting in the wings in case one of the active ports runs into problems.

Once the team has been created you can easily add or remove ports as required. You will see your newly created team in your adaptor settings of the ‘Network & Sharing Center’ as you would any other adaptor and this is where you can set your IP addressing requirements.

Obviously all this can also be achieved with PowerShell using the module ‘Netlbfo’

PS C:\Users\Administrator> Get-Command -Module Netlbfo

CommandType      Name                                              
Function         Add-NetLbfoTeamMember                       
Function        Add-NetLbfoTeamNic                              
Function         Get-NetLbfoTeam                                     
Function         Get-NetLbfoTeamMember                        
Function         Get-NetLbfoTeamNic                                  
Function         New-NetLbfoTeam                                     
Function         Remove-NetLbfoTeam                                  
Function         Remove-NetLbfoTeamMember               
Function         Remove-NetLbfoTeamNic                         
Function       Rename-NetLbfoTeam                                  
Function        Set-NetLbfoTeam                                    
Function         Set-NetLbfoTeamMember                          
Function         Set-NetLbfoTeamNic    

To create your team:
New-NetLbfoTeam -Name “ProductionTeam1” -TeamMembers LAN04,LAN02,LAN03 -TeamingMode Static

PS C:\Users\Administrator> Get-NetLbfoTeam
Name                   : Production Team 1
Members                : {Ethernet 4, Ethernet 3, Ethernet 2}
TeamNics               : Production Team 1
TeamingMode            : SwitchIndependent
LoadBalancingAlgorithm  : TransportPorts
Status                 : Down

One VERY cool feature is that all of this will also work within a virtual machine! This will mean that a VM will be able to be connected to more than one virtual switch. This will provide great redundancy all the way though the network layer from physical switch through to VM.

I think this is a great new feature for Windows Server 2012 and I’m sure many people will be recreating their teams with this ASAP and uninstalling their 3rd party vendor applications.


3 thoughts on “NIC Teaming in Server 2012

  1. Amazing article, thank you, I will subscribe to you RSS now!

  2. Loving the Blogs Joe

  3. We’re a bunch of volunteers and opening a new scheme in our community. Your web site provided us with valuable information to work on. You have done an impressive process and our entire community will be grateful to you.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s