Poor network performance in VM when creating a virtual switch and using broadcom NIC with Windows Server 2012

This issue is resolved please read post: http://cloud.klafox.rocks/?p=2050


Some customers reported me about performance issue with virtual machines running on Hyper-V V3 (Windows Server 2012) after creating a switch.

Together with colleagues we found out that the issue only appears with Broadcom network interface cards.

We saw that the issue is related by “Virtual Machine Queues” enabled on the networkadapter.

If you are facing this issue, please try to disable “Virtual Machine Queues” first on the virtual NIC in your VM. If this doesn’t resolve your issue, please disable “Virtual Machine Queues” also on the physical NIC of your server.

The issue should be fixed with a Broadcom firmware and driver update for the NIC.

You can do this in the Adapter Properties of the Network Interface Card.

Adapter Properties in BASC

Adapter Properties in BASC

Adapter Properties of a NIC

Adapter Properties of a NIC



How to create integrated NIC Teaming with Windows Server 2012 via GUI

One new and big feature in Windows Server 2012 is the integrated NIC Teaming. In the past when you want to team network interfaces in Windows, you need special 3rd party software e.g. like Broadcom Advanced Control Suite (BACS). But this brought us some problems e.g. when you run Group policies against teamed devices. Mostly the policy was not executed, I will explain this maybe in a later blogpost. Microsoft has also published some Hyper-V Scenarios where NIC Teaming is not supported.

Now this is no problem anymore.

With integrated NIC Teaming in Windows Server 2012 you can team NIC or even LOM. You can also Team different Vendors (e.g. Intel or Broadcom) together in one Team. In the past this was very difficult, unstable and also not supported. The only software that is able to do this, is Intel Advanced Networking Services (ANS) Teaming Software.

Let me show you how to configure it via GUI.


1. Open the Server Manager and click on “Configure this local Server”.

2. Now click on “disabled” at the point NIC Teaming to start the Wizzard.

3. Now you the Wizzard starts and you have a few options to add NICs to a team.

4. How to add a NIC to a Team.

Selection over NIC box:


a. Mark all NICs you want to use in your team by selecting them out of the right box with shift+click.


b. click “Tasks” and  “Add to new Team”

c. Now you see that the NICs that you selected before, are marked with a hook.

Type in a Team name.

After this open “Additional properties” and go on with Step 5 will popup.

Selection over Team box:


a. In the left box click on “Tasks” and than select “New Team”.

b. select all NICs that should be part of the Team.

Type in a Team name.

After this open “Additional properties” and go on with Step 5 will popup.

5. In the Additional properties you can configure more options.

Teaming Mode

switch-dependent modes: require switch ports teaming setting, must on same switch.
switch-independent modes: not require switch ports teaming setting, could on same switch or different switch.

Load balancing mode

Hyper-V switch port: use MAC address of the virtual machine across the team members, bandwidth will be 2 Gbit.

Adress Hash: use hash based on components of the packet on one team member, bandwidth will be 1 Gbit to one traffic, bandwidth will be balanced to other team member for more than one traffic.

Standby mode

Active/Active: failover to other team members
Active/standby: failover to standby team member (you can select on standy adapter)


6. By clicking on Primary team Interface: Team1: default VLAN.

Here you can set a Specific VLAN if you need.

7. Click “OK” to close the wizzard and save the configuration.

8. After this you should see the NIC Teaming in you Server Manager.