Condividi tramite


Panoramica delle schede di rete estendibili Hyper-V

Il commutatore estendibile Hyper-V supporta le connessioni da vari tipi di schede di rete virtuali o fisiche. La connessione a questi tipi di schede di rete viene eseguita tramite una porta di commutatore estendibile. Le porte vengono create prima che venga eseguita una connessione della scheda di rete virtuale e vengono eliminate dopo l'eliminazione della connessione della scheda di rete.

Ad esempio, quando viene avviata una partizione figlio Hyper-V, l'interfaccia commutatore estendibile crea una porta prima che la scheda di rete della macchina virtuale (VM) venga esposta all'interno del sistema operativo guest. Dopo l'esposizione e l'enumerazione della scheda di rete vm, l'interfaccia commutatore estendibile crea una connessione di rete tra la scheda di rete vm e la porta di commutatore estendibile. Se la partizione figlio viene arrestata, l'interfaccia del commutatore estendibile elimina prima la connessione di rete e quindi elimina la porta del commutatore estendibile.

Il commutatore estendibile Hyper-V supporta le connessioni dai tipi di schede di rete virtuali seguenti:

Schede di rete esterne
Si tratta di una scheda di rete di commutatore estendibile esposta nel sistema operativo di gestione in esecuzione nella partizione padre Hyper-V. Ogni commutatore estendibile supporta una sola connessione scheda di rete esterna.

La scheda di rete esterna fornisce una connessione all'interfaccia di rete fisica disponibile nell'host. La scheda di rete esterna può essere accessibile dalla partizione padre Hyper-V e da tutte le partizioni figlio.

Per altre informazioni su questo tipo di scheda di rete, vedere Schede di rete esterne.

Schede di rete interne
Si tratta di una scheda di rete di commutatore estendibile esposta nel sistema operativo di gestione in esecuzione nella partizione padre Hyper-V. Ogni commutatore estendibile supporta una sola connessione scheda di rete interna.

La scheda di rete interna fornisce l'accesso a un commutatore estendibile per i processi eseguiti nel sistema operativo di gestione. Ciò consente a questi processi di inviare o ricevere pacchetti tramite il commutatore estendibile.

Per altre informazioni su questo tipo di scheda di rete, vedere Schede di rete interne.

Schede di rete della macchina virtuale
Si tratta di una scheda di rete di commutatore estendibile esposta nel sistema operativo guest in esecuzione nella partizione figlio Hyper-V.

Nota In Hyper-V una partizione figlio è nota anche come macchina virtuale.

La scheda di rete vm supporta i tipi di virtualizzazione seguenti:

  • La scheda di rete della macchina virtuale potrebbe essere una virtualizzazione sintetica di una scheda di rete (scheda di rete sintetica). In questo caso, il client del servizio virtuale di rete (NetVSC) eseguito nella macchina virtuale espone questa scheda di rete virtuale. NetVSC inoltra i pacchetti a e dalla porta del commutatore estendibile sul bus di macchina virtuale (VMBus).

  • La scheda di rete della macchina virtuale potrebbe essere una virtualizzazione emulata di una scheda di rete fisica (scheda di rete emulata). In questo caso, la scheda di rete della macchina virtuale simula una scheda di rete Intel e usa l'emulazione hardware per inoltrare i pacchetti a e dalla porta del commutatore estendibile.

Per altre informazioni su questo tipo di scheda di rete, vedere Schede di rete macchina virtuale.

Le connessioni della scheda di rete del commutatore estendibile vengono create, aggiornate ed eliminate tramite le richieste OID di commutatore estendibili seguenti:

OID_SWITCH_NIC_CREATE
Il bordo del protocollo dell'commutatore estendibile genera una richiesta del set OID di OID_SWITCH_NIC_CREATE per notificare le estensioni di commutatori estendibili sulla creazione di una connessione della scheda di rete a una porta commutatore estendibile. La porta deve essere stata creata in precedenza tramite una richiesta del set OID di OID_SWITCH_PORT_CREATE.

La OID_SWITCH_NIC_CREATE richiesta notifica solo all'estensione che viene visualizzata una nuova connessione della scheda di rete commutatore estendibile e che il traffico di pacchetti potrebbe presto iniziare a verificarsi sulla porta specificata.

L'estensione può veto la notifica di creazione restituendo STATUS_DATA_NOT_ACCEPTED per la richiesta OID. Ad esempio, se un'estensione non può soddisfare i criteri configurati sulla porta usata per la connessione alla scheda di rete, l'estensione deve veto la notifica di creazione.

Se l'estensione accetta la notifica di creazione, deve inoltrare la richiesta OID verso il basso lo stack di driver del commutatore estendibile. L'estensione monitora lo stato di completamento di questa richiesta OID per determinare se le estensioni sottostanti hanno veto la notifica di creazione.

Quando viene creata la connessione alla scheda di rete, viene assegnato un valore NDIS_SWITCH_NIC_INDEX. Questo valore di indice identifica la connessione della scheda di rete in una porta di commutatore estendibile. Le connessioni alle schede di rete esterne, interne e vm vengono assegnate un valore NDIS_SWITCH_NIC_INDEX di NDIS_SWITCH_DEFAULT_NIC_INDEX. Ogni scheda di rete fisica o virtuale associata alla scheda di rete esterna viene assegnato un valore NDIS_SWITCH_NIC_INDEX nel modo seguente:

  • Se la scheda di rete fisica o virtuale è associata direttamente alla scheda di rete esterna, viene assegnato un valore NDIS_SWITCH_NIC_INDEX di uno.

  • Se la scheda di rete fisica fa parte di un team di commutatori estendibili, viene assegnato un valore NDIS_SWITCH_NIC_INDEX maggiore o uguale a uno. Un team di commutatori estendibili è una configurazione in cui un team di una o più schede di rete fisiche sono associate alla scheda di rete esterna estendibile.

Per altre informazioni sulle diverse configurazioni in cui è possibile associare schede di rete fisiche alla scheda di rete esterna, vedere Tipi di configurazioni della scheda di rete fisica.

Per altre informazioni sui valori NDIS_SWITCH_NIC_INDEX, vedere Valori di indice della scheda di rete.

Nota L'estensione non può generare o inoltrare pacchetti sulla connessione della scheda di rete fino a quando il bordo del protocollo del commutatore estendibile genera una richiesta OID set di OID_SWITCH_NIC_CONNECT.

OID_SWITCH_NIC_CONNECT
Il bordo del protocollo dell'commutatore estendibile genera una richiesta del set OID di OID_SWITCH_NIC_CONNECT per notificare le estensioni di commutatori estendibili che una connessione della scheda di rete del commutatore estendibile è completamente operativa.

L'estensione deve sempre inoltrare questa richiesta impostata verso il basso dello stack di driver di commutatore estendibile. L'estensione non deve avere esito negativo nella richiesta.

Dopo aver completato la richiesta OID con NDIS_STATUS_SUCCESS, la connessione alla scheda di rete e la porta del commutatore estendibile sono completamente operative. Quando la connessione alla scheda di rete si trova in questo stato, l'estensione può eseguire le operazioni seguenti:

  • Generare o inoltrare il traffico dei pacchetti alla connessione della scheda di rete della porta.

  • Problema di OID o indicatori di stato estendibili che usano la porta come porta di origine.

  • Chiamare ReferenceSwitchNic per incrementare un contatore di riferimento per la connessione alla scheda di rete. L'interfaccia del commutatore estendibile non elimina una connessione scheda di rete mentre il contatore di riferimento ha un valore diverso da zero.

OID_SWITCH_NIC_UPDATED
Il bordo del protocollo del commutatore estendibile genera una richiesta del set OID di OID_SWITCH_NIC_UPDATED per notificare le estensioni di commutatori estendibili che i parametri per una scheda di rete di commutatori estendibili sono stati aggiornati. L'OID verrà rilasciato solo per le schede di interfaccia di rete già connesse e non sono ancora state avviate il processo di disconnessione. Queste modifiche di configurazione di runtime possono includere NicFriendlyName, MTU, NetCfgInstanceId, PermanentMacAddress, VMMacAddress, CurrentMacAddress e VFAssigned.

L'estensione deve sempre inoltrare questa richiesta impostata verso il basso dello stack di driver di commutatore estendibile. L'estensione non deve avere esito negativo nella richiesta.

OID_SWITCH_NIC_DISCONNECT
Il bordo del protocollo dell'commutatore estendibile genera una richiesta del set OID di OID_SWITCH_NIC_DISCONNECT per notificare le estensioni di un commutatore estendibile che viene interrotta una connessione della scheda di rete commutatore estendibile. Dopo che la connessione è stata completamente interrotta, il bordo del protocollo del commutatore estendibile genera una richiesta di set OID di OID_SWITCH_NIC_DELETE.

L'estensione deve sempre inoltrare questa richiesta impostata verso il basso dello stack di driver di commutatore estendibile. L'estensione non deve avere esito negativo nella richiesta.

Dopo che l'estensione inoltra questa richiesta OID, non può più generare o inoltrare pacchetti alla porta in cui viene interrotta la connessione della scheda di rete. Inoltre, l'estensione non può più chiamare ReferenceSwitchNic per la connessione della scheda di rete.

OID_SWITCH_NIC_DELETE
Il bordo del protocollo dell'commutatore estendibile genera una richiesta del set OID di OID_SWITCH_NIC_DELETE per notificare le estensioni del commutatore estendibile che una connessione della scheda di rete commutatore estendibile è stata rimossa ed eliminata. Questa richiesta OID viene emessa solo per le connessioni di rete per cui è stata rilasciata in precedenza una richiesta di set OID di OID_SWITCH_NIC_DISCONNECT .

Nota L'estensione deve sempre inoltrare questa richiesta impostata verso il basso dello stack di driver di commutatore estendibile. L'estensione non deve avere esito negativo nella richiesta.

Dopo aver completato questa richiesta OID, il bordo del protocollo del commutatore estendibile genera una richiesta di set OID di OID_SWITCH_PORT_TEARDOWN per avviare il processo di eliminazione per la porta usata per la connessione alla scheda di rete.

L'estensione deve sempre inoltrare questa richiesta impostata verso il basso dello stack di driver di commutatore estendibile. L'estensione non deve avere esito negativo nella richiesta.

L'interfaccia del commutatore estendibile gestisce un contatore di riferimento per ogni connessione della scheda di rete creata. Una connessione della scheda di rete non verrà eliminata se il contatore di riferimento ha un valore diverso da zero. L'interfaccia fornisce le funzioni del gestore seguenti per aumentare o decrementare il contatore di riferimento di una connessione della scheda di rete del commutatore estendibile:

ReferenceSwitchNic
L'estensione del commutatore estendibile chiama questa funzione per incrementare il contatore di riferimento di una scheda di rete. Anche se il contatore di riferimento ha un valore diverso da zero, l'interfaccia del commutatore estendibile non elimina la connessione alla scheda di rete.

L'estensione deve chiamare ReferenceSwitchNic prima di eseguire le operazioni seguenti:

  • Inoltra una richiesta di OID_SWITCH_NIC_REQUEST verso il basso dello stack di driver di commutatore estendibile a una scheda esterna sottostante.

  • Inoltra uno stato NDIS_STATUS_SWITCH_NIC_STATUS indicante lo stack di driver di commutatore estendibile da un adattatore esterno sottostante.

Nota L'estensione non deve chiamare ReferenceSwitchNic per una connessione alla scheda di rete dopo che riceve una richiesta di set OID di OID_SWITCH_NIC_DISCONNECT per tale connessione.

DereferenceSwitchNic
L'estensione del commutatore estendibile chiama questa funzione per decrerere il contatore di riferimento di una porta.

Se l'estensione chiama ReferenceSwitchNic, deve chiamare DereferenceSwitchNicdopo il completamento dell'OID_SWITCH_NIC_REQUEST o NDIS_STATUS_SWITCH_NIC_STATUS indicazione.