Opérations d’enregistrement de commutateur extensible Hyper-V
Lorsqu’une partition enfant Hyper-V est arrêtée, enregistrée ou migrée en direct, l’état d’exécution de la partition est enregistré. Pendant l’opération d’enregistrement, une extension de commutateur extensible Hyper-V peut économiser des données d’exécution sur une carte réseau extensible.
Lorsqu’une opération d’enregistrement est effectuée sur une partition enfant Hyper-V, l’interface de commutateur extensible informe l’extension de l’opération. L’extension est avertie via les demandes d’identificateur d’objet (OID) suivantes :
OID_SWITCH_NIC_SAVE
L’interface de commutateur extensible signale le bord du protocole du commutateur extensible pour émettre cet OID pendant l’opération d’enregistrement d’une carte réseau de commutateur extensible. Lorsqu’elle gère cette requête OID, l’extension retourne les données d’exécution pour la carte réseau. Une fois les données d’exécution enregistrées, elles sont restaurées via des demandes de jeu OID de OID_SWITCH_NIC_RESTORE.
Lorsqu’elle reçoit la demande de méthode OID_SWITCH_NIC_SAVE , l’extension peut effectuer l’une des opérations suivantes :
Si l’extension a des données d’exécution à enregistrer, elle initialise une structure NDIS_SWITCH_NIC_SAVE_STATE et définit les différents membres, tels que le membre ExtensionId , pour s’identifier et les données qu’elle enregistre. L’extension enregistre également les données dans la structure NDIS_SWITCH_NIC_SAVE_STATE en commençant par les octets SaveDataOffset à partir du début de la structure, puis termine la demande de méthode OID avec NDIS_STATUS_SUCCESS.
Si la structure NDIS_SWITCH_NIC_SAVE_STATE ne fournit pas une taille de mémoire tampon suffisante, énumérée dans le membre NDIS_OBJECT_HEADER Size pour contenir l’état d’exécution, l’extension définit le champ BytesNeededed de la structure de méthode sur NDIS_SIZEOF_NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 plus la quantité de mémoire tampon nécessaire pour contenir les données d’enregistrement, et termine l’OID avec NDIS_STATUS_BUFFER_TOO_SHORT. L’OID sera réédité avec la taille requise.
Si l’extension n’a pas de données d’exécution à enregistrer, elle doit appeler NdisFOidRequest. Cela transfère la demande de méthode OID aux extensions sous-jacentes dans la pile de pilotes de commutateur extensible. Pour plus d’informations sur cette procédure, consultez Filtrage des requêtes OID dans un pilote de filtre NDIS.
Pour plus d’informations sur cette demande OID, consultez Gestion de la demande de OID_SWITCH_NIC_SAVE.
OID_SWITCH_NIC_SAVE_COMPLETE
L’interface de commutateur extensible signale au bord du protocole du commutateur extensible l’émission de cet OID à la fin de l’opération d’enregistrement des données d’exécution pour une carte réseau de commutateur extensible.
Cette demande OID informe l’extension que l’opération d’enregistrement est terminée uniquement pour une carte réseau de commutateur extensible spécifiée.
Pour plus d’informations sur cette requête OID, consultez Gestion de la demande de OID_SWITCH_NIC_SAVE_COMPLETE.
Pendant l’opération d’enregistrement des données d’exécution, la périphérie du protocole du commutateur extensible émet des requêtes OID de OID_SWITCH_NIC_SAVE et OID_SWITCH_NIC_SAVE_COMPLETE pour l’interface réseau d’une partition enfant Hyper-V est connectée. Si plusieurs partitions enfants Hyper-V sont arrêtées ou migrées en direct, la périphérie du protocole émet des ensembles distincts de OID_SWITCH_NIC_SAVE et OID_SWITCH_NIC_SAVE_COMPLETE demandes pour chaque connexion d’interface réseau.
Note La périphérie du protocole du commutateur extensible n’entrelacera pas les opérations d’enregistrement pour les données d’exécution pour la même carte réseau. La périphérie du protocole démarre une opération d’enregistrement de données d’exécution pour une carte réseau uniquement une fois qu’une opération d’enregistrement précédente a été effectuée sur la même carte réseau. Toutefois, la périphérie du protocole peut démarrer une opération d’enregistrement pour une carte réseau alors qu’une autre opération d’enregistrement est en cours pour une autre carte réseau. Pour cette raison, nous recommandons vivement aux extensions d’effectuer des opérations d’enregistrement de manière non entrelacée. Par exemple, les extensions ne doivent pas supposer qu’une nouvelle opération d’enregistrement ne peut pas démarrer sur une autre carte réseau avant qu’une opération d’enregistrement en cours ne soit terminée pour une autre carte réseau.