Informazioni su come usare l'Offload segmentazione TCP (TSO) nelle schede di rete e nelle macchine virtuali VMkernel per migliorare le prestazioni di rete nei carichi di lavoro con requisiti di latenza particolarmente elevati.

TSO sul percorso di trasmissione delle schede di rete fisiche e delle schede di rete di VMkernel e delle macchine virtuali migliora le prestazioni degli host ESXi riducendo il sovraccarico della CPU per le operazioni TCP/IP di rete. Quando TSO è abilitato, la scheda di rete divide blocchi di dati più grandi in segmenti TCP al posto della CPU. VMkernel e il sistema operativo guest possono usare più cicli di CPU per eseguire le applicazioni.

Per beneficiare del miglioramento delle prestazioni offerto da TSO, abilitare TSO lungo il percorso dei dati in un host ESXi, incluse le schede di rete fisiche, VMkernel e il sistema operativo guest. Per impostazione predefinita, TSO è abilitato nel VMkernel dell'host ESXi e nelle schede delle macchine virtuali VMXNET 2 e VMXNET 3.

Per informazioni sulla posizione della segmentazione dei pacchetti TCP nel percorso dei dati, vedere l'articolo della Knowledge Base VMware Informazioni su TSO (TCP Segmentation Offload) e LRO (Large Receive Offload) in un ambiente VMware.

Gestione di TSO software in VMkernel

Se in una scheda di rete fisica si verificano problemi relativi a TSO, è possibile abilitare temporaneamente la simulazione software del TSO in VMkernel finché non vengono risolti i problemi.

Procedura

  • Eseguire questi comandi della console esxcli network nic software set per attivare o disattivare la simulazione software di TSO in VMkernel.
    • Attivare la simulazione software di TSO in VMkernel.
      esxcli network nic software set --ipv4tso=1 -n vmnicX
      esxcli network nic software set --ipv6tso=1 -n vmnicX
    • Disattivare la simulazione software di TSO in VMkernel.
      esxcli network nic software set --ipv4tso=0 -n vmnicX
      esxcli network nic software set --ipv6tso=0 -n vmnicX

    dove X in vmnicX rappresenta il numero di porte NIC nell'host.

    La modifica della configurazione persiste in tutti i riavvii dell'host.

Come verificare se TSO è supportato nelle schede di rete fisiche di un host ESXi

Esaminare se una scheda di rete fisica effettua l'offload della segmentazione dei pacchetti TCP/IP quando si stimano le prestazioni di rete in un host che esegue carichi di lavoro sensibili alla latenza. Se una scheda di rete fisica supporta TSO, TSO è abilitato per impostazione predefinita.

Procedura

  • Eseguire il seguente comando della console per determinare se TSO è abilitato sulle schede di rete fisiche in un host.
    esxcli network nic tso get

Gestione di TSO in un host ESXi

Attivare TSO (Offload segmentazione TCP) nel percorso di trasmissione affinché la NIC divida blocchi di dati più grandi in segmenti TCP. Disattivare TSO per fare in modo che la CPU esegua la segmentazione TCP.

Per impostazione predefinita, un host utilizza TSO hardware se le sue schede fisiche lo supportano.

Procedura

  1. In vSphere Client, passare all'host.
  2. Nella scheda Configura, espandere Sistema.
  3. Fare clic su Impostazioni di sistema avanzate.
  4. Modificare il valore del parametro Net.UseHwTSO per IPv4 e del parametro Net.UseHwTSO6 per IPv6.
    • Per attivare TSO, impostare Net.UseHwTSO e Net.UseHwTSO6 su 1.
    • Per disattivare TSO, impostare Net.UseHwTSO e Net.UseHwTSO6 su 0.
  5. Fare clic su OK per applicare le modifiche.
  6. Per ricaricare il modulo driver della scheda fisica, eseguire il comando della console esxcli system module set in ESXi Shell sull'host.
    1. Per disattivare il driver, eseguire il comando esxcli system module set con l'opzione --enabled false.
      esxcli	system module set	--enabled false --module nic_driver_module
    2. Per attivare il driver, eseguire il comando esxcli system module set con l'opzione --enabled true.
      esxcli	system module set	--enabled true --module nic_driver_module

risultati

Se una scheda fisica non supporta TSO hardware, VMkernel segmenta pacchetti TCP di grandi dimensioni provenienti dal sistema operativo guest e li invia alla scheda.

Come verificare se TSO è abilitato in un host ESXi

Esaminare se TSO hardware è abilitato in VMkernel quando si stimano le prestazioni di rete su un host che esegue carichi di lavoro sensibili alla latenza. Per impostazione predefinita, TSO hardware è abilitato in un host ESXi.

Procedura

  1. In vSphere Client, passare all'host.
  2. Nella scheda Configura, espandere Sistema.
  3. Fare clic su Impostazioni di sistema avanzate.
  4. Esaminare il valore dei parametri Net.UseHwTSO e Net.UseHwTSO6.
    Net.UseHwTSO mostra lo stato di TSO per IPv4 e Net.UseHwTSO6 per IPv6. TSO è abilitato se la proprietà è impostata su 1.

Gestione di TSO in una macchina virtuale Linux

Attivare il supporto TSO sulla scheda di rete di una macchina virtuale Linux in modo che il sistema operativo guest reindirizzi i pacchetti TCP che richiedono la segmentazione a VMkernel.

Prerequisiti

  • Verificare che ESXi supporti il sistema operativo guest Linux.

    Vedere la documentazione di Guida alla compatibilità di VMware.

  • Verificare che la scheda di rete nella macchina virtuale Linux sia VMXNET2 o VMXNET3.

Procedura

  • In una finestra di terminale del sistema operativo guest Linux, per attivare o disattivare TSO, eseguire il comando ethtool con le opzioni -K e tso.
    • Per attivare TSO, eseguire il comando seguente:
      ethtool -K ethY tso on
    • Per disattivare TSO, eseguire il comando seguente:
      ethtool -K ethY tso off

    dove Y in ethY è il numero di sequenza della NIC nella macchina virtuale.

Gestione di TSO in una macchina virtuale Windows

Per impostazione predefinita, TSO è attivato su una macchina virtuale Windows su schede di rete VMXNET2 e VXMNET3. Per motivi relativi alle prestazioni, è possibile disattivare TSO.

Prerequisiti

  • Verificare che ESXi supporti il sistema operativo guest Windows. Vedere la documentazione di Guida alla compatibilità di VMware.
  • Verificare che la scheda di rete nella macchina virtuale Windows sia VMXNET2 o VMXNET3.

Procedura

  1. Nel Centro rete e condivisione nel Pannello di controllo Windows, fare clic sul nome della scheda di rete.
  2. Fare clic sul suo nome.
    Una finestra di dialogo mostra lo stato della scheda.
  3. Fare clic su Proprietà e, sotto il tipo di scheda di rete, fare clic su Configura.
  4. Nella scheda Avanzate, impostare le proprietà Large Send Offload V2 (IPv4) e Large Send Offload V2 (IPv6) su Abilitato o Disattivato.
  5. Fare clic su OK.
  6. Riavviare la macchina virtuale.