Partager via


OID_SWITCH_NIC_RESTORE

La périphérie du protocole du commutateur extensible Hyper-V émet une demande d’ensemble d’identificateur d’objet (OID) de OID_SWITCH_NIC_RESTORE pour informer l’extension de commutateur extensible des données d’exécution qui peuvent être restaurées pour un port de commutateur extensible et sa connexion à la carte réseau.

Le membre InformationBuffer de la structure NDIS_OID_REQUEST contient un pointeur vers une structure NDIS_SWITCH_NIC_SAVE_STATE . Cette structure est allouée par le bord du protocole du commutateur extensible.

Notes

Lorsqu’elle reçoit la demande de jeu OID de OID_SWITCH_NIC_RESTORE, l’extension de commutateur extensible doit d’abord déterminer si elle possède les données d’exécution. Pour ce faire, l’extension compare la valeur du membre ExtensionId de la structure NDIS_SWITCH_NIC_SAVE_STATE à la valeur GUID que l’extension utilise pour s’identifier.

Si l’extension possède les données d’exécution d’un port de commutateur extensible, elle restaure ces données de la manière suivante :

  1. L’extension copie les données d’exécution dans le membre SaveData dans le stockage alloué à l’extension.

    Note La valeur du membre PortId de la structure NDIS_SWITCH_NIC_SAVE_STATE peut être différente de la valeur PortId au moment de l’enregistrement des données d’exécution. Cela peut se produire si les données d’exécution ont été enregistrées pendant une migration dynamique d’un hôte vers un autre. Toutefois, la configuration du port de commutateur extensible est conservée pendant la migration dynamique. Cela permet à l’extension de restaurer les données d’exécution sur le port de commutateur extensible à l’aide de la nouvelle valeur PortId .

  2. L’extension termine la demande de jeu OID avec NDIS_STATUS_SUCCESS.

Si l’extension ne possède pas les données d’exécution spécifiées, l’extension appelle NdisFOidRequest pour transférer cette demande de jeu d’OID aux extensions sous-jacentes dans la pile de pilotes de commutateur extensible. Dans ce cas, l’extension ne doit pas modifier la structure NDIS_SWITCH_NIC_SAVE_STATE associée à la requête OID.

Si le OID_SWITCH_NIC_RESTORE demande de jeu est reçu par le bord miniport du commutateur extensible, il termine la requête OID avec NDIS_STATUS_SUCCESS. Cela avertit le bord du protocole du commutateur extensible qu’aucune extension ne possède les données d’exécution.

Pour plus d’informations sur la restauration des données d’exécution, consultez Restauration du commutateur extensible Hyper-V Run-Time données.

Note Si l’extension échoue à la demande de jeu d’OID, le commutateur extensible échouera l’ensemble de l’opération de restauration. Par conséquent, l’extension doit éviter d’échouer la requête OID si c’est possible. Par exemple, si l’extension ne peut pas allouer la ressource nécessaire pour restaurer les données d’exécution, elle doit échouer la demande OID si elle ne peut pas fonctionner correctement sans restaurer les données d’exécution. Toutefois, si l’extension peut récupérer à partir de la condition d’échec, elle ne doit pas échouer la demande de jeu OID.

Codes d’état de retour

Si l’extension termine la demande de jeu OID de OID_SWITCH_NIC_RESTORE, elle retourne l’un des codes status suivants.

Code d’état Description

NDIS_STATUS_SUCCESS

La demande OID s’est terminée avec succès.

NDIS_STATUS_Xxx

La demande a échoué pour d’autres raisons.

Spécifications

Version

Pris en charge dans NDIS 6.30 et versions ultérieures.

En-tête

Ntddndis.h (inclure Ndis.h)

Voir aussi


NDIS_OID_REQUEST

NDIS_SWITCH_NIC_SAVE_STATE

NdisFOidRequest