Freigeben über


Hyper-V Erweiterbare Switch-Wiederherstellungsvorgänge

Wenn eine Hyper-V untergeordnete Partition neu gestartet wird, nachdem sie beendet oder live migriert wurde, wird der Laufzeitstatus der Partition wiederhergestellt. Während des Wiederherstellungsvorgangs kann ein Hyper-V erweiterbarer Switch-Erweiterungstreiber Laufzeitdaten eines erweiterbaren Switch-Netzwerkadapters (NIC) wiederherstellen.

Wenn ein Wiederherstellungsvorgang auf einer Hyper-V untergeordneten Partition ausgeführt wird, signalisiert die erweiterbare Switchschnittstelle den Protokollrand des erweiterbaren Switches, um eine OID-Setanforderung von OID_SWITCH_NIC_RESTORE auszugeben. Das InformationBuffer-Element der NDIS_OID_REQUEST-Struktur für die OID_SWITCH_NIC_RESTORE-Anforderung enthält einen Zeiger auf eine NDIS_SWITCH_NIC_SAVE_STATE Struktur.

Bei der Verarbeitung dieser OID-Anforderung stellt die Erweiterung die Laufzeitdaten für den Netzwerkadapter wieder her. Diese Laufzeitdaten wurden zuvor über OID-Anforderungen von OID_SWITCH_NIC_SAVE und OID_SWITCH_NIC_SAVE_COMPLETE gespeichert.

Wenn sie die OID_SWITCH_NIC_RESTORE Anforderung empfängt, muss die erweiterbare Switcherweiterung zuerst bestimmen, ob sie die Laufzeitdaten besitzt. Der Treiber vergleicht dazu den Wert des ExtensionId-Members der NDIS_SWITCH_NIC_SAVE_STATE-Struktur mit dem GUID-Wert, den der Treiber zur eigenen Identifizierung verwendet.

Wenn die Erweiterung die Laufzeitdaten besitzt, werden diese Daten wie folgt wiederhergestellt:

  1. Die Erweiterung kopiert die Laufzeitdaten des Mitglieds SaveData in den vom Treiber zugewiesenen Speicher.

    Hinweis Der Wert der PortId Member der NDIS_SWITCH_NIC_SAVE_STATE-Struktur kann sich vom wert PortId zum Zeitpunkt des Speicherns der Laufzeitdaten unterscheiden. Dies kann vorkommen, wenn Laufzeitdaten während einer Livemigration von einem Host zu einem anderen gespeichert wurden. Die Konfiguration der erweiterbaren Switch-NIC wird jedoch während der Livemigration beibehalten. Dadurch kann die Erweiterung die Laufzeitdaten mithilfe des neuen PortId-Werts auf der erweiterbaren Switch-NIC wiederherstellen.

  2. Die Erweiterung schließt die OID-Setanforderung mit NDIS_STATUS_SUCCESS ab.

Wenn die Erweiterung nicht über die Laufzeitdaten verfügt, muss sie NdisFOidRequest aufrufen. Dadurch wird die OID-Methodenanforderung an zugrunde liegende Erweiterungen im erweiterbaren Switchtreiberstapel weitergeleitet. Weitere Informationen zu diesem Verfahren finden Sie unter Filtern von OID-Anforderungen in einem NDIS-Filtertreiber.

OID_SWITCH_NIC_RESTORE_COMPLETE
Die erweiterbare Switchschnittstelle signalisiert den Protokollrand des erweiterbaren Switches, um diesen OID bei Abschluss des Wiederherstellungsvorgangs der Laufzeitdaten für eine erweiterbare Switch-NIC auszustellen.

Diese OID-Anforderung benachrichtigt die Erweiterung, dass der Wiederherstellungsvorgang nur für eine angegebene erweiterbare Switch-NIC abgeschlossen wurde.

Weitere Informationen zu dieser OID-Anforderung finden Sie unter OID_SWITCH_NIC_RESTORE_COMPLETE.

Während des Wiederherstellungsvorgangs für Laufzeitdaten werden durch den Protokollrand des erweiterbaren Switches OID-Anforderungen wie OID_SWITCH_NIC_RESTORE und OID_SWITCH_NIC_RESTORE_COMPLETE für die Netzwerkschnittstelle einer untergeordneten Partition vom Typ Hyper-V ausgegeben, die verbunden ist. Wenn mehrere Hyper-V-Unterpartitionen wiederhergestellt werden, gibt die Protokoll-Schnittstelle separate Sätze von OID_SWITCH_NIC_RESTORE und OID_SWITCH_NIC_RESTORE_COMPLETE Anfragen für jede Netzwerkschnittstellenverbindung aus.

Anmerkung Der Protokollrand des erweiterbaren Switches wird keine Wiederherstellungsvorgänge für Laufzeitdaten für die gleiche NIC interleaven. Der Protokoll-Edge startet einen Laufzeitdatenwiederherstellungsvorgang für eine NIC nur, nachdem ein vorheriger Wiederherstellungsvorgang auf derselben NIC abgeschlossen wurde. Der Protokoll-Edge kann jedoch einen Wiederherstellungsvorgang für eine NIC starten, während ein anderer Wiederherstellungsvorgang für eine andere NIC ausgeführt wird. Aus diesem Grund wird dringend empfohlen, dass Erweiterungen Wiederherstellungsvorgänge auf nicht-überlappende Weise ausführen. Beispielsweise sollten Erweiterungen nicht davon ausgehen, dass ein neuer Wiederherstellungsvorgang nicht auf einer anderen NIC gestartet werden kann, bevor ein fortlaufender Wiederherstellungsvorgang für eine andere NIC abgeschlossen wurde.

Weitere Informationen zu dieser OID-Anforderung finden Sie unter Wiederherstellen von Hyper-V Extensible Switch Run-Time Daten.