Wenn eine virtuelle Windows-Maschine in vSphere große UDP-Pakete überträgt, ist der Durchsatz geringer als erwartet oder schwankt, auch wenn anderer Datenverkehr zu vernachlässigen ist.

Problem

Wenn eine virtuelle Windows-Maschine UDP-Pakete größer als 1024 Byte überträgt, ist der Durchsatz geringer als erwartet oder schwankt, auch wenn anderer Datenverkehr zu vernachlässigen ist. Im Falle eines Video-Streaming-Servers hält die Video-Wiedergabe an.

Ursache

Für jedes UDP-Paket größer als 1024 Byte wartet der Windows-Netzwerkstapel auf einen Übertragungsabschluss-Interrupt, bevor das nächste Paket gesendet wird. vSphere bietet keine transparente Umgehung der Situation.

Lösung

  • Erhöhen Sie den Schwellenwert in Byte, bei dem Windows sein Verhalten in Bezug auf UDP-Pakete ändert, indem Sie die Registrierung des Windows-Gastbetriebssystems ändern.
    1. Suchen Sie den Registrierungsschlüssel HKLM\System\CurrentControlSet\Services\Afd\Parameters.
    2. Fügen Sie einen Wert mit dem Namen FastSendDatagramThreshold vom Typ DWORD gleich 1500 hinzu.
    Weitere Informationen zum Beheben dieses Problems in der Windows-Registrierung finden Sie auf http://support.microsoft.com/kb/235257.
  • Ändern Sie die Vereinigungseinstellungen der Netzwerkkarte der virtuellen Maschine.
    Wenn die virtuelle Windows-Maschine über einen VMXNET3 vNIC-Adapter verfügt, konfigurieren Sie einen der folgenden Parameter in der .vmx-Datei der virtuellen Maschine. Verwenden Sie den vSphere Client oder ändern Sie direkt die .vmx-Datei.
    Aktion Parameter Wert
    Erhöhen Sie die Interrupt-Rate der virtuellen Maschine auf eine höhere Rate als die erwartete Paketrate. Wenn die erwartete Paketrate beispielsweise 15000 Interrupts pro Sekunde entspricht, legen Sie die Interrupt-Rate auf 16000 Interrupts pro Sekunde fest. Setzen Sie den Parameter ethernetX.coalescingScheme auf rbc und den Parameter ethernetX.coalescingParams auf 16000. Die Standard-Interrupt-Rate beträgt 4000 Interrupts pro Sekunde.

    ethernetX.coalescingScheme

    ethernetX.coalescingParams

    rbc

    16000

    Deaktivieren Sie die Vereinigung für geringen Durchsatz oder latenzempfindliche Arbeitslasten. Informationen zum Konfigurieren von Arbeitslasten mit niedriger Latenz finden Sie unter Best Practices for Performance Tuning of Latency-Sensitive Workloads in vSphere VMs. ethernetX.coalescingScheme Deaktiviert

    Stellen Sie den Vereinigungsalgorithmus früherer ESXi-Versionen wieder her.

    Hinweis: In höheren vSphere-Versionen kann ein früherer Algorithmus nicht wiederhergestellt werden.
    ethernetX.coalescingScheme kalibrieren

    Das X neben ethernet steht für die fortlaufende Nummer der vNIC in der virtuellen Maschine.

    Weitere Informationen zum Konfigurieren von Parametern in der .vmx-Datei finden Sie in der vSphere-Administratorhandbuch für virtuelle Maschinen-Dokumentation.

  • Ändern Sie die Vereinigungseinstellungen des ESXi-Hosts.
    Dieser Ansatz betrifft alle virtuellen Maschinen und alle Netzwerkkarten virtueller Maschinen auf dem Host.

    Sie können die Liste „Erweiterte Systemeinstellungen“ für den Host im vSphere Client oder mithilfe eines vCLI-Konsolenbefehls auf dem Host aus der ESXi Shell bearbeiten.

    Aktion Parameter im vSphere Client Parameter für den Befehl esxcli system settings sdvanced set Wert
    Legen Sie eine Standard-Interrupt-Rate fest, die höher als die erwartete Paketrate ist. Legen Sie beispielsweise die Interrupt-Rate auf 16000 fest, wenn 15.000 Interrupts pro Sekunde erwartet werden.

    Net.CoalesceScheme

    Net.CoalesceParams

    /Net/CoalesceScheme

    /Net/CoalesceParams

    rbc

    16000

    Deaktivieren Sie die Vereinigung für geringen Durchsatz oder latenzempfindliche Arbeitslasten. Informationen zum Konfigurieren von Arbeitslasten mit niedriger Latenz finden Sie unter Best Practices for Performance Tuning of Latency-Sensitive Workloads in vSphere VMs. Net.CoalesceDefaultOn /Net/CoalesceDefaultOn 0

    Stellen Sie das Vereinigungsschema früherer ESXi-Versionen wieder her.

    Hinweis: In höheren vSphere-Versionen kann ein früherer Algorithmus nicht wiederhergestellt werden.
    Net.CoalesceScheme /Net/CoalesceScheme kalibrieren

    Weitere Informationen zum Konfigurieren eines Hosts aus dem vSphere Client finden Sie in der vCenter Server und Hostverwaltung-Dokumentation. Weitere Informationen zum Festlegen von Hosteigenschaften mithilfe eines vCLI-Befehls finden Sie in der ESXCLI – Referenz-Dokumentation.