Operaciones de restauración de conmutador extensible de Hyper-V
Cuando se reinicia una partición secundaria de Hyper-V una vez detenida o migrada en vivo, se restaura el estado en tiempo de ejecución de la partición. Durante la operación de restauración, un controlador de extensión de conmutador extensible de Hyper-V puede restaurar datos en tiempo de ejecución sobre un adaptador de red de conmutador extensible (NIC).
Cuando se realiza una operación de restauración en una partición secundaria de Hyper-V, la interfaz de conmutador extensible señala el borde del protocolo del conmutador extensible para emitir una solicitud de conjunto de OID de OID_SWITCH_NIC_RESTORE. El miembro InformationBuffer de la estructura de NDIS_OID_REQUEST para la solicitud de OID_SWITCH_NIC_RESTORE contiene un puntero a una estructura de NDIS_SWITCH_NIC_SAVE_STATE .
Cuando controla esta solicitud de OID, la extensión restaura los datos en tiempo de ejecución del adaptador de red. Estos datos en tiempo de ejecución se guardaron anteriormente a través de solicitudes de OID de OID_SWITCH_NIC_SAVE y OID_SWITCH_NIC_SAVE_COMPLETE.
Cuando recibe la solicitud de OID_SWITCH_NIC_RESTORE , la extensión de conmutador extensible debe determinar primero si posee los datos en tiempo de ejecución. El controlador lo hace comparando el valor del miembro ExtensionId de la estructura de NDIS_SWITCH_NIC_SAVE_STATE con el valor GUID que usa el controlador para identificarse a sí mismo.
Si la extensión posee los datos en tiempo de ejecución, restaura estos datos de la siguiente manera:
La extensión copia los datos en tiempo de ejecución del miembro SaveData en el almacenamiento asignado por el controlador.
Nota El valor del miembro PortId de la estructura NDIS_SWITCH_NIC_SAVE_STATE puede ser diferente del valor de PortId en el momento en que se guardaron los datos en tiempo de ejecución. Esto puede ocurrir si los datos en tiempo de ejecución se guardaron durante una migración en vivo de un host a otro. Sin embargo, la configuración de la NIC de conmutador extensible se conserva durante la migración en vivo. Esto permite que la extensión restaure los datos en tiempo de ejecución en la NIC del conmutador extensible mediante el nuevo valor PortId .
La extensión completa la solicitud de conjunto de OID con NDIS_STATUS_SUCCESS.
Si la extensión no posee los datos en tiempo de ejecución, debe llamar a NdisFOidRequest. Esto reenvía la solicitud del método OID a las extensiones subyacentes de la pila de controladores de conmutador extensible. Para obtener más información sobre este procedimiento, consulte Filtrado de solicitudes de OID en un controlador de filtro NDIS.
OID_SWITCH_NIC_RESTORE_COMPLETE
La interfaz de conmutador extensible indica el borde del protocolo del conmutador extensible para emitir este OID al finalizar la operación de restauración de datos en tiempo de ejecución para una NIC de conmutador extensible.
Esta solicitud de OID notifica a la extensión que la operación de restauración se ha completado solo para una NIC de conmutador extensible especificada.
Para obtener más información sobre esta solicitud de OID, consulte OID_SWITCH_NIC_RESTORE_COMPLETE.
Durante la operación de restauración para los datos en tiempo de ejecución, el borde del protocolo del conmutador extensible emite solicitudes de OID de OID_SWITCH_NIC_RESTORE y OID_SWITCH_NIC_RESTORE_COMPLETE para la interfaz de red de una partición secundaria de Hyper-V está conectada. Si se restauran varias particiones secundarias de Hyper-V, el perímetro del protocolo emite conjuntos independientes de OID_SWITCH_NIC_RESTORE y OID_SWITCH_NIC_RESTORE_COMPLETE solicitudes para cada conexión de interfaz de red.
Nota El borde del protocolo del conmutador extensible no intercalará las operaciones de restauración para los datos en tiempo de ejecución para la misma NIC. El perímetro del protocolo iniciará una operación de restauración de datos en tiempo de ejecución para una NIC solo después de que se haya completado una operación de restauración anterior en la misma NIC. Sin embargo, el perímetro del protocolo puede iniciar una operación de restauración para una NIC mientras que otra operación de restauración está en curso para otra NIC. Por este motivo, se recomienda encarecidamente que las extensiones realicen operaciones de restauración de forma no intercalada. Por ejemplo, las extensiones no deben suponer que una nueva operación de restauración no se puede iniciar en otra NIC antes de que se haya completado una operación de restauración en curso para una NIC diferente.
Para obtener más información sobre esta solicitud de OID, vea Restaurar conmutador extensible de Hyper-V Run-Time datos.