Hyper-V SET Team Causing TCP Retransmissions with Dynamic Load Balancing

Lysa Analyst 0 Reputation points
2026-09-07T14:51:39.1133333+00:00

Hi guys,

Guest VMs are seeing frequent TCP retransmissions when network traffic is distributed across a Hyper-V Switch Embedded Teaming (SET) configuration. Packet captures indicate that Dynamic load balancing is distributing traffic across multiple physical NICs and resulting in out-of-order delivery.

What is the correct way to change the SET load-balancing algorithm to HyperVPort?

Tqsm!

Lysa

Windows for business | Windows Client for IT Pros | Storage high availability | Virtualization and Hyper-V
0 comments No comments

2 answers

Sort by: Newest
  1. Domic Vo 32,140 Reputation points Independent Advisor
    2026-09-07T15:23:10.86+00:00

    Hi Lysa,

    the issue you’re seeing is a known behavior with Switch Embedded Teaming when the load‑balancing algorithm is set to Dynamic. Dynamic mode can hash flows across multiple physical NICs, which is efficient but can cause out‑of‑order packets in certain workloads, especially with TCP streams that are sensitive to ordering. To eliminate the retransmissions, you should switch the algorithm to HyperVPort, which pins each VM’s traffic to a single physical NIC port.

    The correct way to change this is through PowerShell. Run the following command on the Hyper‑V host:

    Code

    Set-VMSwitchTeam -LoadBalancingAlgorithm HyperVPort -Name <YourSwitchName>
    

    Replace <YourSwitchName> with the name of your SET vSwitch. You can confirm the current setting with:

    Code

    Get-VMSwitchTeam -Name <YourSwitchName>
    

    After applying the change, traffic from each VM will be consistently mapped to one NIC, avoiding out‑of‑order delivery. Keep in mind that HyperVPort sacrifices some throughput balancing compared to Dynamic, but it is the recommended algorithm for workloads where packet ordering is critical, such as database or latency‑sensitive applications.

    I hope you've found something useful here. If it helps you get more insight into the issue, it's appreciated to accept the answer. Should you have more questions, feel free to leave a message. Have a nice day!

    Domic Vo.

    Was this answer helpful?

    0 comments No comments

  2. AI answer

    2026-09-07T14:51:56.21+00:00

    Use PowerShell to set the SET virtual switch team to HyperVPort:

    Set-VMSwitchTeam -Name "<SETSwitchName>" -LoadBalancingAlgorithm HyperVPort
    

    Set-VMSwitchTeam configures a virtual switch team, and the accepted values for -LoadBalancingAlgorithm are HyperVPort and Dynamic.

    If the issue is caused by Dynamic distributing outbound traffic across multiple physical NICs, switching to HyperVPort pins each virtual NIC to a physical adapter instead of using Dynamic flow distribution. In Hyper-V guidance for clustered deployments, the recommended NIC teaming settings are:

    • Teaming mode: Switch Independent
    • Load balancing mode: Hyper-V Port

    Important: changing the load-balancing algorithm affects live traffic on the switch team. Perform the change during a maintenance window if the VMs are production workloads.


    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.