Una guida alle impostazioni avanzate della NIC Windows - RSS / LSO / EEE / Attiva LAN
· Aggiornato il: · Go Komura · Windows, Rete, NIC, Ethernet, Ottimizzazione prestazioni, Sviluppo Windows
La scheda [Avanzate] di una scheda NIC Windows è piena di parole sconosciute.
Jumbo Packet, Large Send Offload, Interrupt Moderation, Receive Side Scaling, Flow Control, Energy Efficient Ethernet. Guardare solo i nomi ti fa venire voglia di abilitare tutto, ma in realtà la risposta giusta dipende da a cosa vuoi dare la priorità.
- Vuoi aumentare la produttività per i trasferimenti di massa?
- Vuoi ridurre la latenza per i pacchetti piccoli?
- Vuoi ridurre l’utilizzo della CPU?
- Vuoi che la ripresa del sonno e il Wake on LAN siano stabili?
- Vuoi isolare i problemi di compatibilità con driver o interruttori?
Lascialo sul vago e vai “accendi tutto”, “imposta semplicemente Jumbo 9014”, “è lento, quindi impostalo su 1 Gbps pieno” - e avrai un incidente, abbastanza di routine.
Questo articolo illustra il modo pratico di pensare quando si toccano le impostazioni avanzate della NIC, mirando principalmente agli adattatori Ethernet cablati su Windows 10 / 11 / Windows Server. Spieghiamo il significato di ciascuna impostazione, cosa tende ad accadere quando la si alza / abbassa / abilita / disabilita e quando vale la pena toccarla, in modo da poterla esaminare tutta in una volta.
Tieni presente che i nomi visualizzati e i valori selezionabili della scheda NIC variano considerevolmente in base al fornitore e al driver.
Jumbo Packet può essere Jumbo Frames, Receive Buffers può essere Receive Descriptors, Priority & VLAN può essere Packet Priority & VLAN. In questo articolo, le impostazioni con significati strettamente correlati vengono trattate insieme.
1. Prima la conclusione
In primo luogo, le conclusioni che raramente mancano nella pratica.
- Velocità e duplex rimangono su Auto per impostazione predefinita. Quando un collegamento scende a 100 Mbps, passare direttamente a un
1.0 Gbps Full Duplexbloccato è l’ultima risorsa, non la prima. - Checksum Offload / RSS / LSO / RSC rimangono abilitati o alle impostazioni predefinite come regola. Spegnerli tutti con noncuranza tende a sprecare CPU.
- Utilizza Jumbo Packet solo quando si allinea end-to-end. Imposta solo la scheda NIC su 9014 mentre il percorso intermedio rimane su 1500 e hai scavato una trappola.
- Interrupt Moderation è un tiro alla fune tra throughput e latenza. Impostazioni più alte alleggeriscono la CPU ma aumentano la latenza.
- Flow Control può aiutare a ridurre le cadute, ma può anche diffondere la congestione.
- EEE / Green Ethernet / Selective Suspend sono impostazioni di risparmio energetico, non impostazioni di velocità.
- VMQ / SR-IOV sono per host Hyper-V: non è una magia che accelera un normale PC desktop.
- La riattivazione su Pattern Match provoca facilmente riattivazioni involontarie, quindi se tutto ciò che desideri è Wake on LAN, appoggiarsi a Magic Packet è più sicuro.
- I vecchi oggetti come TCP Chimney Offload non dovrebbero essere toccati oggi.
In breve, le impostazioni avanzate della NIC non sono “un luogo in cui abilitare tutto ciò che sembra potente”. Sono un luogo in cui decidi quale velocità effettiva, latenza, CPU, consumo energetico e compatibilità vuoi perseguire, quindi tocca un elemento alla volta.
2. Dove trovare le impostazioni
2.1 Nella GUI
Tramite connessioni di rete
- Esegui
ncpa.cpl - Fare clic con il pulsante destro del mouse sull’adattatore di destinazione
- Proprietà → Configura
- Scheda Avanzate
Tramite Gestione dispositivi
- Gestione dispositivi
- Schede di rete
- Fare clic con il pulsante destro del mouse sulla NIC di destinazione → Proprietà
- Scheda Avanzate
Gli articoli elencati qui sono i protagonisti di questo articolo. Detto questo, anche le impostazioni nella scheda Risparmio energia contano molto nella pratica e ne parleremo più avanti.
2.2 Nel PowerShell
PowerShell semplifica l’elenco dei valori correnti e l’esecuzione di un backup prima di modificare qualsiasi cosa.
Get-NetAdapter
Get-NetAdapterAdvancedProperty -Name "Ethernet" |
Sort-Object DisplayName |
Format-Table DisplayName, DisplayValue, RegistryKeyword, RegistryValue -Auto
Su alcuni NICs, RegistryKeyword utilizza nomi standardizzati e viene visualizzato come *RSS, *VMQ, *SRIOV, *EEE e così via.
Tuttavia, DisplayName e DisplayValue dipendono dal driver. Quando si scrivono script di modifica, è più sicuro enumerare prima l’elenco sulla macchina reale.
3. Regole di base prima di toccare qualsiasi cosa
Salta questi prima di toccare le impostazioni NIC e quasi sicuramente finirai in una palude.
3.1 Decidi prima “cosa vuoi migliorare”
La stessa lamentela, “la rete è lenta”, può significare cose completamente diverse.
- Le copie di file di grandi dimensioni sono lente → throughput, RSS, RSC, LSO, Jumbo, buffer
- Le piccole richieste / risposte sembrano lente → Interrupt Moderation, RSC, EEE, profondità della coda
- La CPU è alta → scarichi, RSS, RSC, interrupts
- Le cose vanno male dopo la ripresa del sonno → Selective Suspend, Gestione energetica, WoL
- Disconnessioni / calo occasionali a 100Mbps → cavo, dispositivo peer, Speed & Duplex, EEE, driver
Tocca le stesse impostazioni per obiettivi diversi e peggiorerai le cose, non migliori.
3.2 Sospettare innanzitutto il livello fisico e il dispositivo peer
Ci sono molti problemi che le impostazioni NIC non possono risolvere.
- Cavi difettosi
- Compatibilità switch / router / dock
- Firmware vecchio
- Sottodimensionato USB NICs
- Errori sul lato sinistro
- Perdita di pacchetti e ritrasmissioni
In particolare, per calo a 100 Mbps, collegamento instabile e solo interruzione dei trasferimenti in blocco, esaminare prima il livello fisico e il peer è più veloce che esaminare le impostazioni.
3.3 Modifica un elemento alla volta
Cambia Jumbo, LSO, RSC, RSS e EEE tutto in una volta e non saprai mai quale contava. Annota le impostazioni prima di modificarle, modifica un elemento alla volta e misura la differenza. Questa è la disciplina di base.
3.4 Decidere cosa misurare
Come minimo, vuoi guardare questi:
- Velocità di collegamento (1G / 2,5G / 10G, ecc.)
- Produttività
- Latenza
- Utilizzo della CPU
- Statistiche NIC (perdite / errori / carenza di buffer)
- Stabilità del sonno ripreso
I cambiamenti di impostazione sono molto più forti se giudicati dai numeri, non solo dalle sensazioni.
4. Le impostazioni principali in un’unica tabella
Innanzitutto, una tabella che mostra a colpo d’occhio il ruolo di ciascuna impostazione.
| Impostazione | Cosa fa | Cosa tende ad accadere quando viene sollevato / abilitato | Cosa tende ad accadere quando si abbassa / disabilita | Politica di base |
|---|---|---|---|---|
| Velocità e duplex | Negoziazione / velocità di collegamento pin e duplex | Può connettersi con vecchi peer quando abbinato, ma le mancate corrispondenze causano discrepanze duplex e rallentamenti | Il ritorno ad Auto è la scelta stabile con attrezzature moderne | Automatico per impostazione predefinita |
| Pacchetto Jumbo / Cornici Jumbo | Utilizza frame più grandi dello standard MTU | Il sovraccarico della CPU e dell’intestazione diminuisce durante i trasferimenti di grandi dimensioni | Alta compatibilità ma più pacchetti | Solo su percorsi dedicati abbinati end-to-end |
| Checksum Offload | La scheda NIC gestisce i checksum IP / TCP / UDP | La CPU tende a diminuire | Più calcoli lato OS, la CPU tende ad aumentare | Abilitato di regola |
| LSO / TSO | Segmenti NIC grandi TCP invia | Aiuta a inviare un throughput elevato e CPU | Maggiore carico della CPU, ma utile per l’isolamento della compatibilità | Normalmente abilitato |
| RSC / LRO | La scheda NIC si unisce ha ricevuto segmenti TCP | Aiuta a ricevere throughput e CPU | Granularità più fine, che può favorire una bassa latenza | Abilitato se focalizzato sulla ricezione |
| RSS | Distribuisci l’elaborazione della ricezione su CPUs | Miglioramento del throughput / scalabilità su multi-core | I colli di bottiglia si accumulano su una singola CPU | Abilitato per impostazione predefinita su multi-core |
| Interrupt Moderation | Frequenza acceleratore interrupt | Allevia la CPU ma tende ad aggiungere latenza | Riduce la latenza ma aumenta il carico della CPU / DPC | Inizia da predefinito / Adattivo |
| Ricevi / Transmit Buffers | Profondità anello / tampone | Aiuta ad aumentare la tolleranza e la produttività sostenuta | Meno utilizzo della memoria, ma più debole contro i cali | Aumenta solo in caso di short |
| Flow Control | Invia / ricevi frame di pausa 802.3x | Può ridurre le gocce | Può favorire la latenza della coda | Allinearsi al design generale della rete |
| Priorità & VLAN | Etichettatura 802.1p / 802.1Q | Abilita VLAN / QoS | Funziona come un semplice L2 | Solo quando necessario |
| VMQ / SR-IOV | Assistenza NIC per Hyper-V / virtualizzazione | Aiuta VM throughput / CPU | Più semplice come un normale host | Per host Hyper-V |
| EEE / Green Ethernet | Inattività a basso consumo per il risparmio energetico | Potenza inferiore, ma si verificano problemi di compatibilità | Più potenza, ma a volte più stabile | Non è un’impostazione di velocità |
| Selective Suspend | Riduci il consumo della scheda NIC quando è inattiva | Potenza inferiore | La stabilità del curriculum a volte migliora | Un candidato da isolare in caso di difficoltà |
| Riattivazione Magic Packet / Pattern Match | Condizioni di veglia durante il sonno | Abilita l’avvio remoto | Più facile prevenire scie involontarie | Abilita solo quando necessario |
5. Impostazioni del collegamento e della dimensione del frame
5.1 Velocità e fronte-retro
Questa impostazione regola la negoziazione della velocità di collegamento e full / half duplex. I nomi visualizzati includono Speed & Duplex, Link Speed e Link Speed & Duplex.
Cosa fa
In Ethernet, la scheda NIC e il dispositivo peer decidono quale velocità e duplex utilizzare.
Vedrai spesso opzioni come:
- Negoziazione automatica
- 100Mbps full-duplex
- Full duplex da 1,0 Gbps
- Full duplex da 2,5 Gbps
- Full duplex da 10 Gbps
Cosa cambia quando lo cambi
Impostandolo su Automatico
- Tra i dispositivi moderni, questo è fondamentalmente il più stabile
- A 1000BASE-T e superiori, la modalità presupposta è spesso Auto
- Si allinea bene anche con EEE e con la negoziazione master / slave
Appuntarlo manualmente
- Può correggere la compatibilità con vecchi switch o peer a loro volta fissati
- Tuttavia, uno stato come un lato bloccato / un lato Auto è una ricetta per gli incidenti
- Una mancata corrispondenza duplex provoca rallentamenti, ritrasmissioni e ritardi bizzarri
Base pratica
Normalmente, lascialo su Auto. “Non raggiungerà 1 Gbps, quindi fissalo a 1 Gbps completo” sembra decisivo ma di solito non coglie la vera causa.
5.2 Pacchetto Jumbo / Frame Jumbo
Questa è l’impostazione per utilizzare frame Ethernet più grandi dello standard. I nomi visualizzati includono Jumbo Packet, Jumbo Frames e Jumbo Packet Size.
Cosa fa
Ethernet ordinaria di solito funziona con un MTU presunto di 1500. L’abilitazione dei frame Jumbo ti consente di utilizzare frame di grandi dimensioni di circa 9000 byte.
Ma quest’area è piena di trappole sui nomi.
- I conducenti potrebbero visualizzare la dimensione del frame, come
9014 Bytes - OS e gli strumenti possono utilizzare la vista L3, come
MTU 9000 - I cambi possono contare inclusi i tag CRC o VLAN
Confronta i numeri grezzi fianco a fianco e verrai scoperto, come di consueto.
Cosa cambia quando lo cambi
Alzarlo / abilitarlo
- Meno pacchetti durante l’invio di dati di grandi dimensioni
- Meno passaggi di elaborazione dell’intestazione
- L’utilizzo della CPU tende a diminuire
- D’altra parte, ogni pacchetto occupa il cavo più a lungo
- Se qualcosa lungo il percorso non lo supporta, provoca cadute o frammentazione
Ripristino standard / disattivazione
- Massima compatibilità
- Altri pacchetti
- Il sovraccarico della CPU / intestazione aumenta durante i trasferimenti di massa
Base pratica
Jumbo significa qualcosa solo quando si allinea end-to-end:
- la tua scheda di rete
- NIC del peer
- gli interruttori intermedi
- l’overhead di eventuali VLANs o switch virtuali nel percorso
Se uno qualsiasi di questi rimane a 1500, non otterrai alcun beneficio e probabilmente nuovi problemi.
5.3 Modalità Gigabit Master / Slave
Su 1000BASE-T, questa impostazione riguarda quale lato guida l’orologio come master e quale segue come slave. Su un normale PC praticamente non lo tocchi mai.
Riferimento
- Auto per impostazione predefinita
- Valutalo solo per problemi di qualità del collegamento con apparecchiature specifiche del vecchio peer
- A meno che il venditore non dica diversamente, non trattarlo come una manopola per la regolazione delle prestazioni
5.4 Attendere il collegamento e altre impostazioni dello stato del collegamento
Impostazioni come Wait for Link riguardano se il driver attende il successo della negoziazione automatica prima di segnalare lo stato del collegamento.
Log Link State Event è una diagnostica che registra il collegamento attivo / inattivo nel registro eventi.
Riferimento
- Il PCs ordinario può rimanere ai valori predefiniti
- Sono più importanti per l’aspetto all’avvio e la diagnostica del failover che per le prestazioni grezze
- Non oggetti da toccare per primi
6. Impostazioni che influiscono sul carico, sulla velocità effettiva e sulla latenza della CPU
Questa è la band che sembra più “promettente”. Spesso aiuta, ma la direzione dell’aiuto si divide in modo netto.
6.1 Checksum Offload
Inserisce il calcolo del checksum IP / TCP / UDP sulla scheda NIC.
Riferimento
- Abilitato di regola
- Tienilo se vuoi una CPU inferiore
- Gli errori di checksum riscontrati nelle acquisizioni sono solitamente un artefatto dell’offload
- Disattivarlo temporaneamente per l’isolamento della compatibilità va bene
6.2 Offload invio di grandi dimensioni (LSO) / TSO / Offload TCP Segmentazione
La scheda NIC suddivide i dati di invio TCP di grandi dimensioni in frame piccoli.
A cosa serve
- Velocità di invio elevata
- Utilizzo ridotto della CPU
- Invii sostenuti più grandi
Riferimento
- Normalmente abilitato
- Se si sospetta la compatibilità di un’app o di un driver specifico, disattivalo temporaneamente e confrontalo
6.3 Coalescenza dei segmenti di ricezione (RSC)/Offload di ricezione di grandi dimensioni
Unisce più segmenti TCP sul lato di ricezione.
A cosa serve
- Throughput lato ricezione
- Utilizzo ridotto della CPU
Avvertenze
- Può essere uno svantaggio per la bassa latenza o l’osservazione per pacchetto
- Cambia leggermente il modo in cui dovrebbero essere interpretate le acquisizioni e le osservazioni temporali
Riferimento
- Abilita se desideri ricevere throughput
- Valutalo se ti interessa la latenza del piccolo traffico di richieste / risposte
6.4 Offload UDP più recenti (USO / URO)
Nelle versioni recenti di NICs e OS, potrebbero essere visualizzati anche offload più recenti per UDP invio / ricezione.
Riferimento
- Anche se presente, all’inizio non allontanarsi dalle impostazioni predefinite
- Misurare solo quando il conducente è sufficientemente nuovo e il carico di lavoro target è chiaro
- Non forzarlo durante la risoluzione dei problemi
6.5 Scaling laterale di ricezione (RSS)
Gli spread vengono elaborati su più CPUs. Sulle macchine multi-core questo è molto importante.
Riferimento
- Abilitato per impostazione predefinita su multi-core
- Controllalo prima ogni volta che viene agganciata una singola CPU
- È anche al centro della scena rispetto a Hyper-V e alle configurazioni ad alto rendimento
6.6 RSS Code / RSS Processori / RSS Profilo
Questi determinano il grado di parallelismo RSS.
Riferimento
- Inizia dalle impostazioni predefinite
- Aumentare solo dopo che l’utilizzo della CPU o la distorsione della coda sono visibili
- Avviarlo alla cieca al massimo può aumentare il carico di interrupt e DPC
6.7 Interrupt Moderation / Interrupt Moderation Tariffa
Limita la frequenza interrupt, scambiando il carico della CPU con la latenza.
Tendenze
- Superiore / Adattivo → Sollievo per la CPU, ma la latenza tende ad aumentare
- Abbassa / Spento → Latenza inferiore, ma il carico della CPU / DPC tende ad aumentare
Riferimento
- Inizia da predefinito / Adattivo
- Valuta Basso / Spento se il jitter dei pacchetti piccoli ti disturba
- Per i trasferimenti di massa, le impostazioni predefinite sono solitamente la scelta più sensata
6.8 Receive Buffers / Ricevi descrittori e Transmit Buffers / Trasmetti descrittori
Questi modificano la profondità degli anelli / respingenti.
Cosa aiutano
- Tolleranza allo scoppio
- Produttività sostenuta
- Evitare le cadute
Effetti collaterali
- Maggiore consumo di memoria
- Code più profonde possono aggiungere ritardi nella coda
Riferimento
- Aumentare solo quando sono visibili cadute o carenza di buffer
- Evita “massimo, solo perché”
6.9 Flow Control
Riguarda l’invio e la ricezione di frame di pausa 802.3x.
Riferimento
- Un candidato se vuoi meno gocce
- Ma i frame in pausa possono diffondere la congestione altrove
- Trattatelo con cautela nei sistemi a bassa latenza
- Consideralo insieme alla progettazione complessiva della rete
7. VLAN, QoS e impostazioni di virtualizzazione
7.1 Priorità & VLAN / Priorità pacchetto & VLAN / NDIS QoS
La banda che gestisce la priorità 802.1Q VLANs e 802.1p.
Riferimento
- Pensaci solo quando usi davvero VLAN / QoS
- In un ambiente con porta di accesso semplice, le impostazioni predefinite vanno bene
- Le configurazioni che taggano i frame implicitamente rendono l’isolamento più difficile: attenzione
7.2 VMQ / VMMQ / SR-IOV
Queste impostazioni diventano significative solo su host Hyper-V e piattaforme di virtualizzazione.
Riferimento
- Non fa parte della normale ottimizzazione del desktop
- In un host Hyper-V, valutarli insieme alla configurazione del vSwitch, all’assegnazione della coda e alle impostazioni lato guest
- Guardando solo un lato raramente si ottiene la risposta giusta
7.3 RDMA / DCB / PFC sono un altro mondo
Quest’area, inclusa SMB Ethernet diretta e senza perdite, è davvero un mondo diverso.
Riferimento
- Tienilo separato dalla normale ottimizzazione desktop 1GbE / 2.5GbE
- Controllare la documentazione del fornitore insieme al design dello switch-side
8. Impostazioni di risparmio energetico, sospensione e Wake on LAN
8.1 Ethernet a risparmio energetico (EEE) / Green Ethernet
Riduce il consumo energetico durante il collegamento inattivo, per il risparmio energetico.
Come vederlo
- Non è un’impostazione della velocità
- Influisce sul consumo energetico
- A seconda del dispositivo peer e del cablaggio, diventa un candidato all’isolamento per collegamenti instabili o downshift a 100 Mbps
Riferimento
- Per uso generale, le impostazioni predefinite vanno bene
- Per collegamenti instabili, downshift a 100 Mbps o utilizzo critico per la latenza, è un candidato al primo isolamento
8.2 Selective Suspend / Sospensione dispositivo / Controllo collegamento standby
In parole povere: quanto profondamente la scheda NIC può dormire quando è inattiva o durante la sospensione del sistema.
Riferimento
- Sui laptop, inizia dalle impostazioni predefinite
- Se ci sono problemi nel curriculum, sospettalo prima
- Per il controllo dell’apparecchiatura PCs e il funzionamento 24 ore su 24, 7 giorni su 7, disabilitarlo completamente è spesso la scelta più chiara
8.3 Riattivazione al Magic Packet / Riattivazione al pattern Match
Questi riattivano un PC in sospensione sulla rete.
Riferimento
- Se hai bisogno di Wake on LAN, abilita Magic Packet
- In caso contrario, disabilita
- Pattern Match solo quando la necessità è esplicita
Accenderlo solo sulla scheda NIC e non riattivarlo è del tutto normale. Controllare il lato BIOS / UEFI e la scheda Risparmio energia come insieme.
8.4 ARP Scarica / NS Scarica
La scheda NIC risponde al traffico minimo per conto del sistema anche durante la sospensione.
Riferimento
- Normalmente abilitato / predefinito va bene
- Viene toccato principalmente temporaneamente quando si isolano i problemi di compatibilità relativi al sonno
8.5 La scheda Gestione energetica
Separata dalla scheda Avanzate, le proprietà della scheda NIC dispongono di una scheda Risparmio energia. È anche silenziosamente importante.
I tre che vedi di più:
- Consenti al computer di spegnere il dispositivo per risparmiare energia
- Consenti al dispositivo di riattivare il computer
- Consenti solo a magic packet di riattivare il computer
Riferimento
- In caso di errori di ripristino, sospettare prima
Allow the computer to turn off this device... - Per evitare scie spurie, abilitare
Only allow a magic packet... - Se Wake on LAN non è necessario, tutte le impostazioni di riattivazione possono rimanere disabilitate
9. Altre impostazioni che vedi spesso ma che tocchi raramente
9.1 Indirizzo di rete / Indirizzo amministrato localmente
Un’impostazione che sostituisce manualmente l’indirizzo MAC.
Riferimento
- Non toccarlo normalmente
- Non è un’impostazione delle prestazioni
- Utilizzare solo in ambienti di laboratorio o per esigenze particolari
9.2 Spaziatura adattiva tra i frame
Un vero veterano. Nella moderna Ethernet full-duplex commutata non ha alcun ruolo di primo piano.
Riferimento
- Su un LAN moderno e ordinario, lasciare le impostazioni predefinite
- Toccare solo quando vecchie apparecchiature o ambienti speciali vengono forniti con le istruzioni del fornitore
9.3 Divisione dei dati dell’intestazione
Principalmente orientato al server: aiuta l’elaborazione della CPU gestendo separatamente le intestazioni dei pacchetti e i payload.
Riferimento
- Per server / carichi di lavoro specifici
- Sui client generici, lasciare le impostazioni predefinite
9.4 Bassa latenza Interrupts
Alcuni fornitori espongono un articolo come Low Latency Interrupts.
Riferimento
- Usalo solo quando la misurazione dimostra che vince
- Non è una band che si accende con l’atmosfera
9.5 Vecchi elementi come TCP Chimney Offload / IPsec Task Offload
Potresti vederli sui vecchi NICs e driver.
Riferimento
- Non toccare, non usare è la risposta corretta oggi
- Non lasciarti trascinare dalle conoscenze sulla compatibilità o dai vecchi documenti
10. Guida approssimativa per obiettivo
10.1 Desktop / laptop ordinario
- Velocità e duplex: Auto
- MTU / Jumbo: 1500 / disabilitato
- Checksum Offload: abilitato
- LSO: abilitato
- RSC: abilitato
- RSS: abilitato
- Interrupt Moderation: predefinito / Adattivo
- Buffer: predefiniti
- Flow Control: predefinito
- EEE / Green Ethernet: predefinito
- Selective Suspend: predefinito
- Wake on LAN: solo quando necessario
In altre parole, non allontanarsi dalle impostazioni predefinite è la linea di base.
10.2 NAS / backup / copie di massa
- Velocità e duplex: Auto
- Jumbo: valuta se un percorso dedicato può essere abbinato end-to-end
- Checksum Offload: abilitato
- LSO: abilitato
- RSC: abilitato
- RSS: abilitato
- Code RSS: aumentare leggermente se necessario
- Ricezione / Transmit Buffers: aumentare leggermente se compaiono gocce
- Interrupt Moderation: predefinito / leggermente più alto
- EEE: valuta la disabilitazione se la stabilità viene prima
Per trasferimenti di grandi dimensioni, meno pacchetti, meno CPU ed evitare la carenza di code sono ciò che tende a ripagare.
10.3 Telecamere industriali / controllo apparecchiature / critici in termini di latenza
- Velocità e duplex: Auto per impostazione predefinita; pin per abbinare il peer, se necessario
- Jumbo: valuta se fotocamera / NIC / cambia tutta la linea
- Checksum Offload: abilitato prima
- LSO: valuta temporaneamente la disabilitazione se si sospetta la compatibilità lato invio
- RSC: un candidato disabilitato quando la latenza o l’osservazione vengono prima
- Interrupt Moderation: valuta Basso / Spento
- Buffer: non effettuare un provisioning eccessivo
- Flow Control: valuta gli effetti collaterali dei fotogrammi in pausa
- EEE / Green Ethernet: un candidato disabile
- Selective Suspend / gestione energetica: un candidato disabile
Le impostazioni ottimizzate per il throughput non sono automaticamente favorevoli alla bassa latenza.
10.4 Host Hyper-V
- VMQ / VMMQ / SR-IOV: valutare per configurazione
- RSS: importante per il traffico lato host
- RSC: vincolato dalla configurazione del vSwitch
- QoS / VLAN: allineato al design vSwitch
- Flow Control / PFC: considerare insieme al design storage / RDMA
Non si tratta di un’ottimizzazione del desktop: si tratta di progettazione di una piattaforma di virtualizzazione.
10.5 Impostazioni temporanee per la risoluzione dei problemi
Quando si isola un difetto, tornare a un mondo semplice è potente.
- Velocità e duplex: Auto
- MTU: 1500
- Jumbo: disabilitato
- EEE: disabilitato
- LSO: temporaneamente disabilitato
- RSC: temporaneamente disabilitato
- Interrupt Moderation: predefinito o inferiore
- Riattivazione / risparmio energetico: disabilitato se non necessario
- Impostazioni pre-modifica: sempre salvate
Nel lavoro isolato, semplificare il comportamento batte ottimizzare le prestazioni.
11. Primi posti in cui guardare, per sintomo
11.1 Dovrebbe essere 1 Gbps / 2,5 Gbps, ma è 100 Mbps
L’ordine di verifica è più o meno questo.
- Cavo
- Dock / scheda NIC USB / adattatore
- La porta lato switch
- Aggiornamento del driver
- EEE / Green Ethernet
- Riportare Velocità e duplex su Auto
- Se tutto il resto fallisce, prova un’impostazione bloccata abbinata al peer
Il blocco manuale viene effettuato per ultimo, non per primo.
11.2 I trasferimenti di massa sono lenti, ma il ping è normale
Cosa vuoi vedere:
- Checksum Offload
- LSO
- RSC
- RSS
- Ricevi / Transmit Buffers
- Jumbo Frames (se il percorso è dedicato)
- Gocce / errori nelle statistiche NIC
Questo è un problema di throughput, quindi Jumbo, code e offload tendono ad essere ciò che aiuta.
11.3 La piccola latenza di richiesta / risposta è elevata o il jitter disturba
Le cinque cose da controllare:
- Interrupt Moderation
- RSC
- EEE
- Flow Control
- Se i buffer sono stati sovradimensionati
In questa fascia, le ottimizzazioni in stile batch possono effettivamente aumentare la latenza percepita.
11.4 La scheda NIC scompare dopo la ripresa della modalità di sospensione / nessuna connettività per alcuni secondi
Concentrandosi sulla gestione energetica, le cinque cose da considerare:
- Selective Suspend
- Impostazioni relative alla sospensione / standby del dispositivo
Allow the computer to turn off this device...nella scheda Risparmio energia- Firmware dock / scheda di rete USB
- La combinazione delle impostazioni di attivazione
I problemi di ripresa riguardano più spesso la gestione dell’alimentazione che la scheda NIC stessa.
11.5 Le catture di pacchetti mostrano moltissimi errori di checksum
Prima di lasciarsi prendere dal panico e dichiarare che “la linea è interrotta”, controlla questi.
- Checksum Offload è abilitato?
- LSO è abilitato?
- La cattura viene effettuata prima della trasmissione o via cavo?
- Sembra lo stesso da un altro host o da una porta mirror?
Gli errori di checksum in un’acquisizione locale sono, molto spesso, proprio come appare l’offload.
Il terzo punto, “la cattura avviene prima della trasmissione o sul cavo?”, merita una nota. Quando catturi sul tuo PC, vedi il pacchetto prima che la NIC calcoli e inserisca il checksum. Se l’offload è attivo, il campo checksum è ancora vuoto o temporaneo, quindi l’analizzatore lo segnala come errato. In realtà, sul cavo il pacchetto ha quasi sempre un checksum corretto.
Gli strumenti di verifica sono sostanzialmente questi tre.
| Strumento | Ruolo | Note |
|---|---|---|
| Wireshark | Analizzatore grafico classico | Ha un’opzione per disabilitare la validazione del checksum; è il primo posto da sospettare in ambienti con offload |
| pktmon | Strumento di monitoraggio pacchetti incluso di default in Windows 10 / Windows Server 2019 (1809) e successivi | Nessuna installazione aggiuntiva. Permette anche di rilevare drop e applicare filtri |
| Porta mirror dello switch | L’unico modo sicuro per vedere sul cavo | Si guarda al di fuori del PC di origine, quindi non è influenzata dall’offload |
I log di pktmon possono essere convertiti in pcapng e aperti direttamente in Wireshark.
pktmon etl2pcap log.etl --out capture.pcapng
Se “in locale si vedono checksum error, ma sulla porta mirror sono normali”, si tratta con certezza dell’effetto dell’offload. Conferma prima di toccare le impostazioni.
11.6 Solo Hyper-V VMs sono lenti / La CPU è distorta
Cosa guardare va oltre lo stile desktop RSS.
- VMQ / VMMQ
- SR-IOV
- Associazione vSwitch
- VLAN / QoS
- La divisione del lavoro tra le code lato host RSS e lato VM
Nella virtualizzazione, disegnare un’immagine di chi sta effettivamente elaborando i pacchetti rende le cose molto più facili da risolvere.
12. Note pratiche per il controllo e la modifica tramite PowerShell
12.1 Salvare prima lo stato corrente
Un backup prima di cambiare le cose.
Get-NetAdapterAdvancedProperty -Name "Ethernet" |
Select-Object Name, DisplayName, DisplayValue, RegistryKeyword, RegistryValue |
Export-Csv .\nic-advanced-backup.csv -NoTypeInformation -Encoding UTF8
12.2 Elencare le impostazioni
Get-NetAdapterAdvancedProperty -Name "Ethernet" |
Sort-Object DisplayName |
Format-Table DisplayName, DisplayValue, RegistryKeyword -Auto
12.3 Controlla RSS / RSC / statistiche
Get-NetAdapterRss -Name "Ethernet"
Get-NetAdapterRsc -Name "Ethernet"
Get-NetAdapterStatistics -Name "Ethernet"
12.4 Esempi di modifiche
I nomi visualizzati effettivi differiscono in base alla scheda NIC, quindi elencali prima, quindi modificali.
# Example: change Jumbo Packet (values differ per NIC)
Set-NetAdapterAdvancedProperty -Name "Ethernet" `
-DisplayName "Jumbo Packet" `
-DisplayValue "9014 Bytes"
# Example: set the number of RSS receive queues
Set-NetAdapterRss -Name "Ethernet" -NumberOfReceiveQueues 4
12.5 Verifica della connettività Jumbo
# Equivalent to standard MTU 1500
ping <peer IP> -f -l 1472
# Equivalent to MTU 9000
ping <peer IP> -f -l 8972
1472 e 8972 sono le dimensioni del carico utile dopo aver sottratto le intestazioni IP / ICMP. 9014 Bytes dell’UI del driver e questi numeri di ping non corrispondono tra loro.
12.6 Note pratiche
- Alcune impostazioni richiedono la disattivazione / riattivazione dell’adattatore o il riavvio
- DisplayName potrebbe essere localizzato
- Anche all’interno dello stesso fornitore, i nomi degli articoli possono cambiare con la versione del driver
- Se si automatizza con PowerShell, è più sicuro enumerare prima i valori sulla macchina reale, quindi scrivere
13. Riepilogo
A giudicare solo dai nomi degli elementi, ogni impostazione avanzata della NIC Windows sembra “potente”. In realtà, questo è un mondo in cui la risposta giusta cambia a seconda che tu stia cercando throughput, latenza, CPU, potenza o compatibilità.
Riassumendo i punti chiave di questo articolo:
- Velocità e duplex rimangono su Auto per impostazione predefinita
- Jumbo solo quando si allinea end-to-end
- Checksum / RSS / LSO / RSC: i valori predefiniti sono forti, di regola
- Interrupt Moderation è un compromesso tra throughput e latenza
- Buffer: solo quanto necessario
- EEE / Selective Suspend / Le impostazioni di riattivazione riguardano l’alimentazione e la ripresa
- VMQ / SR-IOV sono una questione Hyper-V
- Non toccare i vecchi oggetti scaricati
E le tre cose che contano di più:
- Decidi cosa vuoi migliorare
- Cambia un elemento alla volta
- Confronta prima e dopo con i numeri
Le impostazioni della scheda NIC non sono un interruttore magico per accelerare. Ma quando l’obiettivo è giusto, ripagano notevolmente. Quando l’obiettivo non è raggiunto, si ritorcono contro altrettanto facilmente.
14. Riferimenti
Di seguito sono riportati i materiali ufficiali e dei fornitori su cui è stato basato questo articolo. I driver Windows e NIC variano molto nella terminologia, quindi alla fine è più sicuro verificare con il nome del driver e la versione della propria NIC.
- Microsoft Learn: Proprietà avanzate della NIC
- Microsoft Learn: Ottimizzazione delle prestazioni della scheda di rete in Windows Server
- Microsoft Learn: Funzionalità e tecnologie solo hardware (HO).
- Microsoft Learn: Panoramica della virtualizzazione I / O a radice singola (SR-IOV)
- Microsoft Learn: Parole chiave INF standardizzate per NDIS QoS
- Microsoft Learn: Parole chiave INF standardizzate per la gestione dell’energia
- Microsoft Learn: Impostazione dei parametri RSS
- Microsoft Learn: Panoramica della coalescenza dei segmenti di ricezione
- Microsoft Learn: Come ottimizzare le impostazioni di gestione energetica dell’adattatore di rete
- Microsoft Learn: Funzionalità di rete deprecate in Windows Server
- Supporto Intel: Impostazioni avanzate per schede Ethernet Intel
- Supporto Intel: per velocità bloccate, Jumbo, Interrupt Moderation, EEE, WoL e simili, è più sicuro controllare gli articoli di supporto per il tuo modello NIC specifico
Articoli correlati
Articoli recenti con gli stessi tag per approfondire argomenti vicini.
Non racchiudere HttpClient in un using ── guida pratica alla comunicazione HTTP nelle app aziendali C# (pattern di creazione, timeout, retry)
Creare un nuovo HttpClient con using a ogni richiesta esaurisce i socket, mentre renderlo static non segue i cambi di DNS: analizziamo il...
Outsourcing e sviluppo su commissione di app Windows: cosa chiarire prima di affidare l'incarico
Prima di affidare in outsourcing o su commissione lo sviluppo di un'app Windows, ecco i punti da chiarire: revisione del software esisten...
Il curioso amore di uno sviluppatore, ovvero: come ho imparato a non preoccuparmi e ad amare Windows
Windows è complicato. Ma questa complicazione è anche quella di un sistema operativo che da decenni porta sulle spalle il lavoro reale.
Icone nella system tray e notifiche toast nelle app Windows — le insidie di NotifyIcon e come scegliere l'AppNotification giusta
Una guida pratica per mantenere un'applicazione Windows aziendale residente nella system tray (area di notifica) e avvisare l'utente tram...
Fino a quando funzioneranno le applicazioni VB6? — Lo stato del supporto al runtime e un percorso pratico verso la migrazione a .NET
Fino a quando continueranno a funzionare le applicazioni VB6? Questo articolo chiarisce l'asimmetria tra la politica di supporto del runt...
Argomenti correlati
Queste pagine collocano l’argomento in un contesto più ampio di servizi e decisioni.
Argomenti tecnici Windows
Portale su sviluppo Windows, analisi dei problemi e valorizzazione delle risorse esistenti.
Servizi collegati all’argomento
L’articolo è direttamente collegato ai servizi seguenti.
Consulenza tecnica e revisione del progetto
Questo argomento richiede di guardare oltre le sole impostazioni della NIC, ovvero il percorso di rete, i modelli di invio / ricezione dell'applicazione e le condizioni operative di lunga durata, quindi si abbina bene alla consulenza tecnica e alla revisione della progettazione.
Analisi dei bug e delle cause
L'isolamento delle interruzioni dei collegamenti, dei downshift a 100 Mbps, degli errori di ripresa e del degrado del throughput è una soluzione naturale per il nostro servizio di indagine dei bug e di analisi delle cause principali.
Domande frequenti
Domande che ricorrono nelle consulenze sull’argomento dell’articolo.
- Devo impostare manualmente Velocità e Duplex o lasciarlo su Auto?
- Lascialo su Auto per impostazione predefinita. Tra i dispositivi moderni, la negoziazione automatica è fondamentalmente la più stabile e a 1000BASE-T e superiori è spesso la modalità presupposta. Il blocco manuale può correggere la compatibilità con vecchi switch che sono essi stessi fissati, ma uno stato in cui un lato è bloccato e l'altro è Auto è una ricetta per mancata corrispondenza duplex, ritrasmissioni e ritardi bizzarri. Quando un collegamento scende a 100 Mbps, controlla prima il cavo, il dock o la scheda NIC USB, cambia porta, driver e EEE: un'impostazione bloccata è l'ultima risorsa, non la prima.
- Devo abilitare i Jumbo Frames sul mio Windows PC?
- Solo quando si allinea end-to-end: la tua scheda NIC, la scheda NIC del peer, gli switch intermedi e l'overhead di qualsiasi VLANs o switch virtuale devono tutti supportare la dimensione del frame maggiore. Se un collegamento qualsiasi nel percorso rimane a MTU 1500, non si ottiene alcun vantaggio e probabilmente nuovi problemi come interruzioni o frammentazione. Fai attenzione anche alle trappole dei nomi: i driver potrebbero mostrare la dimensione del frame come 9014 byte mentre OS parla di MTU 9000 - e verifica la connettività con ping utilizzando il flag -f e un payload di 8972 byte per MTU 9000.
- Quali offload NIC dovrebbero rimanere abilitati?
- Di norma, mantieni Checksum Offload, RSS, LSO e RSC abilitati o ai valori predefiniti: disattivarli tutti con noncuranza tende a sprecare CPU. RSS è importante soprattutto su macchine multi-core ogni volta che una singola CPU è ancorata all'elaborazione di rete e RSC aiuta il throughput lato ricezione, sebbene possa rappresentare uno svantaggio per il traffico di richiesta / risposta ridotto e a bassa latenza. Vecchi oggetti come TCP Chimney Offload e IPsec Task Offload non dovrebbero essere toccati oggi. Gli errori di checksum riscontrati nelle acquisizioni di pacchetti locali sono solitamente solo un artefatto dell'offload, non una linea spezzata.
- Perché la mia scheda NIC scompare o si guasta dopo la ripresa della modalità di sospensione?
- I problemi di ripresa riguardano più spesso la gestione dell'alimentazione che la scheda NIC stessa. Sospettare innanzitutto le impostazioni Selective Suspend e di sospensione del dispositivo, insieme a "Consenti al computer di spegnere il dispositivo per risparmiare energia" nella scheda Risparmio energia, nel dock o nel firmware NIC USB e alla combinazione delle impostazioni di riattivazione. Per il controllo dell'apparecchiatura PCs e il funzionamento 24 ore su 24, 7 giorni su 7, disabilitare completamente le opzioni di risparmio energetico è spesso la scelta più chiara e, se è necessario Wake on LAN, fare affidamento su Magic Packet anziché su Pattern Match, che provoca facilmente riattivazioni involontarie.
Profilo dell’autore
Pagina di presentazione dell’autore dell’articolo.
Go Komura
Rappresentante di KomuraSoft LLC
Specializzato nello sviluppo di software Windows, nella consulenza tecnica e nell’analisi dei malfunzionamenti, soprattutto nei progetti con sistemi esistenti e guasti difficili da riprodurre.