Lorsqu'une machine virtuelle Windows dans vSphere 5.1 et versions ultérieures transmet de grands paquets UDP, le débit est inférieur à celui attendu ou oscille même en l'absence d'un trafic significatif.
Problème
Lorsqu'une machine virtuelle Windows transmet des paquets UDP d'une taille supérieure à 1 024 octets, vous obtenez un débit plus faible que prévu ou oscillant même en l'absence d'un trafic significatif. Dans le cas d'un serveur de flux vidéo, la lecture vidéo marque des pauses.
Cause
Pour chaque paquet UDP d'une taille supérieure à 1 024 octets, la pile réseau de Windows attend une interruption de fin de transmission avant d'envoyer le paquet suivant. Contrairement aux versions précédentes, vSphere 5.1 et versions ultérieures ne fournit pas de solution transparente pour ce problème.
Solution
- Augmentez le seuil en octets auquel Windows change son comportement pour les paquets UDP en modifiant le Registre du système d'exploitation Windows invité.
- Localisez la clé de Registre HKLM\System\CurrentControlSet\Services\Afd\Parameters.
- Ajoutez une valeur sous le nom FastSendDatagramThreshold de type DWORD égale à 1500.
- Modifiez les paramètres de fusion de la carte réseau de machine virtuelle.
Si la machine virtuelle Windows dispose d'un adaptateur vNIC VMXNET3, configurez l'un des paramètres suivants du fichier
.vmx de la machine virtuelle. Utilisez
vSphere Web Client ou modifiez directement le fichier
.vmx.
Action |
Paramètre |
Valeur |
Augmentez le taux d'interruptions de la machine virtuelle à une valeur supérieure au taux de paquets attendu. Par exemple, si le taux de paquets attendu est de 15 000 interruptions par seconde, réglez le taux d'interruptions à 16 000 interruptions par seconde. Définissez le paramètre ethernetX.coalescingScheme sur rbc et le paramètre ethernetX.coalescingParams sur 16000. Le taux d'interruptions par défaut est de 4 000 interruptions par seconde. |
ethernetX.coalescingScheme ethernetX.coalescingParams |
rbc 16000 |
Désactivez la fusion pour obtenir un faible débit ou des charges de travail sensibles à la latence. Pour plus d'informations sur la configuration des charges de travail à faible latence, reportez-vous à Meilleures pratiques pour le réglage des performances des charges de travail sensibles à la latence sur les machines virtuelles vSphere. |
ethernetX.coalescingScheme |
désactivé |
Rétablissez l'algorithme de fusion des versions antérieures d'ESXi.
Note : La possibilité de rétablir un algorithme antérieur ne sera pas disponible dans les versions ultérieures de vSphere.
|
ethernetX.coalescingScheme |
étalonner |
X près d'ethernet représente le numéro de séquence de la vNIC dans la machine virtuelle.
Pour obtenir des informations sur la configuration des paramètres dans le fichier .vmx, reportez-vous à la documentation Administration d'une machine virtuelle vSphere.
- Modifiez les paramètres de fusion d'hôte d'ESXi.
Cette approche affecte toutes les machines virtuelles et toutes les cartes réseau de machine virtuelle sur l'hôte.
Vous pouvez modifier la liste des paramètres système avancés pour l'hôte dans vSphere Web Client ou en utilisant une commande de console vCLI sur l'hôte à partir d'ESXi Shell.
Action |
Paramètre dans vSphere Web Client |
Paramètre pour la commande esxcli system settings sdvanced set |
Valeur |
Définissez un taux d'interruptions supérieur au taux de paquets attendu. Par exemple, définissez-le sur 16 000 si vous attendez 15 000 interruptions par seconde. |
Net.CoalesceScheme Net.CoalesceParams |
/Net/CoalesceScheme /Net/CoalesceParams |
rbc 16000 |
Désactivez la fusion pour un faible débit ou pour les charges de travail sensibles à la latence. Pour plus d'informations sur la configuration des charges de travail à faible latence, reportez-vous à Meilleures pratiques pour l'ajustement des performances des charges de travail sensibles à la latence sur les machines virtuelles vSphere. |
Net.CoalesceDefaultOn |
/Net/CoalesceDefaultOn |
0 |
Rétablissez le schéma de fusion de versions antérieures d'ESXi.
Note : La possibilité de rétablir un algorithme antérieur ne sera pas disponible dans les versions ultérieures de vSphere.
|
Net.CoalesceScheme |
/Net/CoalesceScheme |
étalonner |
Pour obtenir des informations sur la configuration d'un hôte dans vSphere Web Client, reportez-vous à la documentation Gestion de vCenter Server et des hôtes. Pour obtenir des informations sur la définition des propriétés d'hôte à l'aide d'une commande vCLI, reportez-vous à la documentation Référence de vSphere Command-Line Interface.