Just a quick note to share my experience in NIC teaming algorithm with 2012 R2 hosts and Hyper-V and hopefully dispel some myths..
Many documents/blogs recommend the load balancing algorithm to be Dynamic by default. In my experience this is not the optimal configuration.
For NIC teams that are used for VM Guest networking, the Load Balancing Algorithm should be set to Hyper-V Port by default.
Every Hyper-V environment I have built in the last few years has performed significantly better using Hyper-V Port as the preferred load balancing algorithm. This has been on various flavours of kit from various vendors (Cisco UCS, Fujitsu, HP, Dell & IBM) using various chipsets (Intel, Emulex, Mellanox, and Broadcom – yuk!!)
An example of the Uplink port settings in SCVMM:
And the LBFO Team on a Hyper-V host:
I have had this debate several times and for clients that were keen to stick the the Microsoft default, we started with Dynamic. Once we put some load on, we changed to Hyper-V Port and as expected it always outperformed the default Dynamic configuration.