vInfra.ch

Guillaume LACAILLE's Blog

Agrégation de liens sur Hyper-V: Dynamic vs TransportPorts

Petites précisions sur la capacité des algorithmes de load-balancing d’Hyper-V et Windows Server 2012 R2 et la bande-passante qu’il est possible d’atteindre.

En regardant de plus près les commandes de création de teaming de port sur Hyper-V 2012 R2, il s’avère qu’il existe deux algorithmes de load-balancing 4-Tuple Address Hash: TranportPorts, disponible également sous Hyper-V et Windows Server 2012, et Dynamic, disponible depuis 2012 R2.

Ces deux algorithmes sont des 4-Tuple Address Hash, cela signifie que l’algorithme distribue les packets en fonction des couples adresse IP et le Port TCP source et destination. Cependant une nuance importante est à faire entre les deux.

Nous parlerons ici que de l’implémentation en mode Switch Independant.

Mais alors quelle différence ?

Il s’agit d’une nuance…qui peut avoir son importance !

Switch-Independant TransportPorts

Lorsque vous configurez votre serveur Hyper-V en mode Switch Independant – TransportPorts, Hyper-V va distribuer les flux sortant sur toutes les cartes réseau. Seule la carte primaire du team recevra les flux entrants.

Dans ce mode, si une machine virtuelle échange des données vers un autre serveur (qui n’est pas sur le même hôte Hyper-V) en utilisant seulement 1 port TCP source et 1 port TCP destination, la bande passante sera d’au maximum la bande passante d’1 des cartes du team.

Switch-Independant Dynamic

Lorsque vous configurez votre serveur Hyper-V en mode Switch Independant – Dynamic, Hyper-V va distribuer les flux sortant sur toutes les cartes réseau. Hyper-V créé un mappage entre les cartes physiques et cartes virtuelles en entrée pour répartir la charge sur toutes les cartes du team. Une carte virtuelle n’étant mappée qu’à une seule carte physique à la fois (en mode switch independant).

Dans ce mode, si une machine virtuelle échange des données vers un autre serveur (qui n’est pas sur le même hôte Hyper-V) en utilisant seulement 1 port TCP source et 1 port TCP destination, la bande passante sera d’au maximum l’agrégation de la bande passante de toutes les cartes du team.

Exemples

Flux sortants

Dans ce premier exemple (Figure 1), nous configurons le serveur Hyper-V en mode Switch Independant – TransportPort. Les paquets sont transmis uniquement sur le même port physique en sortie car nous communiquons sur un seul couple [IP – TCP Port], même si il y a de nombreux paquets.

Si l’application utilise plusieurs ports (source ou destination) entre ces deux machines, les flux seront distribués sur les deux cartes du team.

Figure 1: Switch-Independant TransportPort 1 VM vers 1 Serveur

Figure 1: Switch-Independant TransportPort

Dans ce deuxième exemple (Figure 2), nous configurons le serveur Hyper-V en mode Switch Independant – Dynamic. Les paquets sont distribués sur toutes les cartes du team en fonction de leur charge, même s’il s’agit du même couple [IP – TCP Port].

Figure 2: Switch-Independant Dynamic 1 VM vers 1 Serveur

Figure 2: Switch-Independant Dynamic

Flux entrant

Dans ce troisième exemple (Figure 3), nous configurons le serveur Hyper-V en mode Switch Independant – TransportPort. Les paquets entrant vers les machines virtuelles passent tous par la carte primaire du team. La bande-passante en entrée doit être partagée avec toutes les machines virtuelles.

Figure 3: Switch-Independant TransportPort

Figure 3: Switch-Independant TransportPort

Dans ce dernier exemple, en Switch Independant – Dynamic, les flux entrants sont répartis sur les cartes physiques pour chaque VM. La bande passante en entrée peut être partagée entre plusieurs machines virtuelles, mais répartie sur les différentes cartes en fonction de leur charge. La bande passante en entrée ne dépassera toutefois pas la bande passante d’une seule carte du team pour une machine virtuelle donnée.

Figure 4: Switch-Independant Dynamic

Figure 4: Switch-Independant Dynamic

Ce qu’il faut retenir du mode Dynamic

Le mode de load-balancing Dynamic offre une gestion encore plus fine du load-balancing des flux sortants, en mode Switch independant, comme en mode switch dependant. La différence ne sera effective que pour les applications nécessitant une très grosse bande passante en TCP/IP sur un unique couple Adresse IP / Port TCP. Les autres applications utilisant plusieurs ports sources et/ou destination entre les deux machines ne verront pas leur performances augmenter de manière significative. Si nécessaire d’autres solutions peuvent venir augmenter leur performances.

Pour les flux entrants cependant, en switch independant, le mode dynamic fonctionne comme le mode Hyper-V Port, l’avantage est de pouvoir répartir les flux entrant sur les différentes cartes du team, sans avoir besoin de configurer quoi que ce soit sur le switch et donc d’améliorer les performances globales pour ces flux entrant. Bien entendu, les performances seront toujours moins importantes que lors de l’utilisation du LACP sur le switch, mais permet de s’affranchir de la configuration réseau et/ou de permettre de réduire le coût du matériel réseau.

 

, , , , , , , , , ,

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *