Ricezione di richieste OID sulle modifiche alla configurazione del commutatore estendibile Hyper-V
L'interfaccia del commutatore estendibile notifica alle estensioni sottostanti le modifiche apportate alla configurazione del componente del commutatore estendibile e ai parametri dei criteri inviando richieste di set OID (Extensible Switch Object Identifier). Queste richieste vengono inviate dal bordo del protocollo dell'opzione estendibile per notificare alle estensioni sottostanti le modifiche apportate ai parametri del componente del commutatore estendibile e ai parametri dei criteri. Queste richieste OID passano attraverso lo stack di driver del commutatore estendibile al bordo miniport sottostante dell'interruttore estendibile.
La figura seguente illustra il percorso di controllo del commutatore estendibile per le richieste OID per NDIS 6.40 (Windows Server 2012 R2) e versioni successive.
La figura seguente mostra il percorso di controllo del commutatore estendibile per le richieste OID per NDIS 6.30 (Windows Server 2012).
Nota Nell'interfaccia del commutatore estendibile, i driver di filtro NDIS sono noti come estensioni del commutatore estendibile e lo stack di driver è noto come stack di driver switch estendibile.
Il bordo del protocollo del commutatore estendibile genera richieste OID set per i tipi di notifiche seguenti:
Modifiche alla configurazione della porta nel commutatore estendibile.
Ad esempio, il driver di protocollo genera problemi OID_SWITCH_PORT_CREATE per notificare alle estensioni sottostanti la creazione di una porta sul commutatore estendibile. Analogamente, il driver del protocollo genera problemi OID_SWITCH_PORT_DELETE per notificare alle estensioni l'eliminazione di una porta.
Per altre informazioni su questo tipo di notifica OID, vedere Porte commutatori estendibili Hyper-V.
Modifiche alla connessione della scheda di rete a una porta sul commutatore estendibile.
Ad esempio, i problemi del driver del protocollo OID_SWITCH_NIC_CONNECT per notificare alle estensioni sottostanti la connessione di una scheda di rete a una porta sul commutatore estendibile. Analogamente, i problemi del driver del protocollo OID_SWITCH_NIC_DISCONNECT per notificare alle estensioni che la scheda di rete è stata disconnessa dalla porta.
Per altre informazioni su questo tipo di notifica OID, vedere Schede di rete del commutatore estendibile Hyper-V.
Modifiche ai criteri della porta o del commutatore estendibile.
Ad esempio, i problemi del driver del protocollo OID_SWITCH_PROPERTY_ADD per notificare alle estensioni sottostanti l'aggiunta di una proprietà del commutatore estendibile. Analogamente, i problemi del driver del protocollo OID_SWITCH_PORT_PROPERTY_DELETE per notificare alle estensioni l'eliminazione di una proprietà di porta.
Per altre informazioni su questo tipo di notifica OID, vedere Managing Hyper-V Extensible Switch Policies.For more information about this type of OID notification, see Managing Hyper-V Extensible Switch Policies.
Nota L'estensione non riceve una notifica delle modifiche apportate ai criteri di porta o switch predefiniti gestiti dal bordo miniport sottostante del commutatore estendibile.
Salvare o ripristinare i dati delle porte di runtime.
Ad esempio, i problemi del driver del protocollo OID_SWITCH_NIC_SAVE per notificare alle estensioni sottostanti di salvare i dati di runtime per una porta specificata nel commutatore estendibile. Questi URI vengono rilasciati quando lo stato hyper-V viene salvato o migrato in un altro host. Analogamente, i problemi del driver del protocollo OID_SWITCH_NIC_RESTORE per notificare alle estensioni che i dati delle porte di runtime vengono ripristinati nel commutatore estendibile.
Per altre informazioni su questo tipo di notifica OID, vedere Gestione del commutatore estendibile Hyper-V Run-Time Dati.
Il driver miniport dell'estensione del commutatore estendibile è responsabile del completamento di queste richieste OID. Tuttavia, con alcune richieste OID switch estendibili, un'estensione sottostante può non riuscire a inviare una richiesta OID per inviare una notifica. Ad esempio, quando il driver del protocollo del commutatore estendibile notifica ai driver di filtro una nuova porta che verrà creata sul commutatore estendibile, invia una richiesta di set OID di OID_SWITCH_PORT_CREATE. Un'estensione di filtro o inoltro sottostante può terminare la creazione della porta completando la richiesta OID con STATUS_DATA_NOT_ACCEPTED.
L'estensione del commutatore estendibile deve seguire queste linee guida quando viene chiamata la funzione FilterOidRequest per una richiesta OID del commutatore estendibile:
L'estensione non deve modificare i dati a cui punta il parametro OidRequest .
Per alcune richieste OID del commutatore estendibile, l'estensione può completare la richiesta OID con STATUS_DATA_NOT_ACCEPTED. In questo modo viene attivata l'operazione su un componente commutatore estendibile per il quale è stata eseguita la richiesta OID.
Ad esempio, l'estensione può completare la richiesta di OID_SWITCH_NIC_CREATE con STATUS_DATA_NOT_ACCEPTED. Il driver potrebbe dover eseguire questa operazione se non riesce a soddisfare i criteri configurati sulla porta specificata a cui viene creata la connessione di rete.
L'estensione può completare le richieste in questo modo per gli OID seguenti:
Se l'estensione non completa la richiesta OID, deve chiamare NdisFOidRequest per inoltrare la richiesta allo stack di driver del commutatore estendibile.
Nota Prima che il driver chiami NdisFOidRequest, il driver deve chiamare NdisAllocateCloneOidRequest per allocare una struttura NDIS_OID_REQUEST e trasferire le informazioni sulla richiesta alla nuova struttura.
L'estensione deve monitorare il risultato di completamento della richiesta OID quando viene chiamata la relativa funzione FilterOidRequestComplete . In questo modo l'estensione consente di determinare se l'operazione su un componente commutatore estendibile è stata completata correttamente o è stata attivata da un'estensione sottostante.
Per altre informazioni su come filtrare e inoltrare una richiesta OID, vedere Filtro delle richieste OID in un driver di filtro NDIS.
NDIS e driver di filtro overlying possono inviare richieste OID per le tecnologie di offload hardware alla scheda di rete fisica sottostante. Sono incluse le richieste OID per le tecnologie di offload, ad esempio la coda di macchine virtuali (VMQ), la sicurezza del protocollo Internet (IPsec) e la virtualizzazione I/O radice singola (SR-IOV).
Quando queste richieste OID arrivano all'interfaccia del commutatore estendibile, incapsula la richiesta OID all'interno di un NDIS_SWITCH_NIC_OID_REQUEST. Il bordo del protocollo del commutatore estendibile invia quindi una richiesta OID di OID_SWITCH_NIC_REQUEST che contiene questa struttura.
Un'estensione di inoltro del commutatore estendibile può fornire supporto per una tecnologia di offload hardware NDIS in una o più schede fisiche associate alla scheda di rete esterna. In questa configurazione, la scheda di rete esterna del commutatore estendibile è associata al bordo miniport virtuale di un driver intermedio multiplexer (MUX) NDIS. Il driver intermedio MUX è associato a un team di una o più reti fisiche nell'host. Questa configurazione è nota come team di commutatori estendibili. Per altre informazioni sui team dei commutatori estendibili, vedere Tipi di configurazioni delle schede di rete fisiche.
In questa configurazione, le estensioni del commutatore estendibile vengono esposte a ogni scheda di rete del team. In questo modo l'estensione di inoltro nello stack di driver del commutatore estendibile può gestire la configurazione e l'uso di singole schede di rete nel team. Ad esempio, l'estensione può fornire supporto per una soluzione di failover di bilanciamento del carico (LBFO) sul team inoltrando pacchetti in uscita a singole schede. Tale estensione è nota come provider di raggruppamento. Per altre informazioni sui provider di teaming, vedere Teaming Provider Extensions.For more information about teaming providers providers extensions, see Teaming Provider Extensions.
Gestendo la richiesta OID di OID_SWITCH_NIC_REQUEST, i provider di raggruppamento possono partecipare alla configurazione del team dell'adattatore per gli offload hardware. Ad esempio, l'estensione può generare la propria richiesta OID di OID_SWITCH_NIC_REQUEST per configurare una scheda fisica con parametri per l'offload hardware.
Per altre informazioni su come gestire la richiesta OID OID_SWITCH_NIC_REQUEST , vedere Inoltro di richieste OID a schede di rete fisiche.
Nota I driver di filtro delle estensioni possono generare richieste OID di OID_SWITCH_NIC_REQUEST per rilasciare IDE privati a qualsiasi scheda fisica associata alla scheda di rete esterna del commutatore estendibile.
Nota Le richieste di riavvio dello stack che usano NdisFRestartFilter non verranno completate mentre una richiesta OID del commutatore estendibile è in sospeso. Per questo motivo, un'estensione in attesa di un riavvio dello stack deve completare tutte le richieste OID in corso.
Per altre informazioni sul percorso di controllo per le richieste OID del commutatore estendibile, vedere Percorso di controllo commutatore estendibile Hyper-V per le richieste OID.