Windows Server 2012 and our FREE Hyper-V Server 2012 include native teaming of network adapters to provide load balancing, bandwidth aggregation and failover capabilities using standard Ethernet NICs. IT Pros have been really interested in NIC teaming, because it can provide the extra bandwidth and fault tolerance needed for business critical networks segments supporting virtual machines, clusters, live migrations and storage – all over commodity network adapters!
NIC Teaming is GREAT! But … Do I need to configure my network switches?
One of the common questions on NIC teaming is whether special network switches and/or customized switch configurations are needed to fully support NIC Teaming in Windows Server 2012. And, the answer is … it depends! You see, NIC Teaming can be configured in either a “Switch Independent” mode or a “Switch Dependent” mode.
When configuring NIC Teaming in “Switch Independent” mode, the teaming configuration will work with any Ethernet switches – even non-intelligent switches – because Windows Server 2012 handles all of the intelligence with this NIC teaming mode. No special configuration changes are necessary. You can even use this mode to team across separate switches in scenarios that require switch diversity for extra network fault tolerance. See below for the configuration setting for “Switch Independent” mode …
Are there any special considerations when using “Switch Independent” mode?
When using Switch Independent mode, there are a few considerations to keep in mind:
- If you are using NIC teaming for Failover, rather than load balancing across multiple active NICs, switch independent mode works great. Just set your second NIC in the team as the “Standby adapter” and you’re all set. When a failover occurs, the Standby NIC will become active and the server will notify the network switch of this change via standard network protocols.
- When using NIC teaming for Load Balancing across multiple active NICs, there’s two load balancing modes you can use with “Switch Independent” mode:
- Address Hash – Load balances outbound network traffic across all active NICs, but only receives inbound traffic via one of the NICs in the team. Since the switch isn’t actively involved in the “Switch Independent” teaming mode, it can’t load balance inbound traffic across all active NICs. This mode can work well if your server has little traffic inbound and lots of traffic outbound that you are trying to load balance – Web servers and FTP servers are examples of typical server roles that work well in this scenario.
- Hyper-V Port – If your server is a Hyper-V host with multiple running VMs, this load balancing mode is normally preferred in most situations. When using “Hyper-V Port” load balancing, VM’s will be distributed across the network team and each VM’s outbound and inbound traffic will be handled by a specific active NIC. This mode works really well in scenarios where you are consolidating many VM’s on a physical Hyper-V host, but where none of the VM’s are generating a network load that exceeds the bandwidth of one NIC in the team. In this use case, NIC teaming provides a very cost-effective way of load balancing the aggregate traffic from all VMs across the active team members, but remember … each VM is assigned to a specific NIC in the team, so none of the VM’s will be able to access more bandwidth than what one NIC provides.
Here’s where you set the “Load Balancing Mode” when configuring NIC teaming:
What about other NIC teaming scenarios?
If you have servers that align with other usage scenarios, you’ll likely need to get your network switches involved in the NIC teaming configuration by using one of the “Switch Dependent” NIC teaming modes with “Address Hash” load balancing. Specifically, I’ve seen the following usage scenarios arise where a switch dependent team mode is needed:
- Physical servers with heavy inbound AND outbound network load
- Virtual Machines that have a network load greater than the bandwidth capacity of one NIC in the team
In these scenarios, you can configure the NIC team to use one of the “Switch Dependent” team modes by configuring the “Teaming Mode” to either of the following values:
- LACP – if your network switch supports the Link Aggregation Control Protocol ( aka., 802.1ax ) for dynamic link aggregation.
- Static – if your network switch doesn’t support LACP and requires a static link aggregation configuration
Note that when configuring one of these “Switch Dependent” modes, you’ll also need to configure your network switch to appropriately handle traffic the network team. On the Cisco switch in my lab, here’s the configuration I used with the “Static” team mode:
kemlabsw01(config)# int port-channel1
kemlabsw01(config-if)# description NIC team for Windows Server 2012
kemlabsw01(config-if)# int gi0/23
kemlabsw01(config-if)# channel-group 1 mode on
kemlabsw01(config-if)# int gi0/24
kemlabsw01(config-if)# channel-group 1 mode on
kemlabsw01(config)# port-channel load-balance src-dst-ip
Your Turn … Now You Try It!
As part of our Windows Server 2012 “Early Experts” Installer Quest, we have additional study resources and a hands-on lab available where you can practice NIC teaming for FREE. Join us and begin the Installer Quest today!
Share Your Experiences!
Are you using NIC Teaming in your environment? Share your experiences in the comments below!
Hope this helps,