Hyper-V 확장 가능한 스위치 복원 작업

Hyper-V 자식 파티션이 중지되거나 실시간 마이그레이션된 후 다시 시작되면 파티션의 런타임 상태가 복원됩니다. 복원 작업 중에 Hyper-V 확장 가능 스위치 확장 드라이버는 확장 가능한 NIC(스위치 네트워크 어댑터)에 대한 런타임 데이터를 복원할 수 있습니다.

Hyper-V 자식 파티션에서 복원 작업을 수행하는 경우 확장 가능한 스위치 인터페이스는 확장 가능한 스위치의 프로토콜 에지에 신호를 전송하여 OID_SWITCH_NIC_RESTORE OID 집합 요청을 실행합니다. OID_SWITCH_NIC_RESTORE 요청에 대한 NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 NDIS_SWITCH_NIC_SAVE_STATE 구조체에 대한 포인터가 포함됩니다.

이 OID 요청을 처리하면 확장은 네트워크 어댑터의 런타임 데이터를 복원합니다. 이 런타임 데이터는 이전에 OID_SWITCH_NIC_SAVE 및 OID_SWITCH_NIC_SAVE_COMPLETE OID 요청을 통해 저장되었습니다.

OID_SWITCH_NIC_RESTORE 요청을 받으면 확장 가능한 스위치 확장이 런타임 데이터를 소유하는지 여부를 먼저 결정해야 합니다. 드라이버는 NDIS_SWITCH_NIC_SAVE_STATE 구조체의 ExtensionId 멤버 값을 드라이버가 자신을 식별하는 데 사용하는 GUID 값과 비교하여 이 작업을 수행합니다.

확장이 런타임 데이터를 소유하는 경우 다음과 같은 방법으로 이 데이터를 복원합니다.

  1. 확장은 SaveData 멤버의 런타임 데이터를 드라이버 할당 스토리지에 복사합니다.

    참고NDIS_SWITCH_NIC_SAVE_STATE 구조체의 PortId 멤버 값은 런타임 데이터가 저장되었을 때의 PortId 값과 다를 수 있습니다. 이는 실시간 마이그레이션 중에 런타임 데이터가 한 호스트에서 다른 호스트로 저장된 경우에 발생할 수 있습니다. 그러나 확장 가능한 스위치 NIC의 구성은 실시간 마이그레이션 중에 유지됩니다. 이렇게 하면 확장에서 새 PortId 값을 사용하여 런타임 데이터를 확장 가능한 스위치 NIC로 복원할 수 있습니다.

  2. 확장은 NDIS_STATUS_SUCCESS 사용하여 OID 집합 요청을 완료합니다.

확장이 런타임 데이터를 소유하지 않는 경우 NdisFOidRequest를 호출해야 합니다. 그러면 확장 가능한 스위치 드라이버 스택의 기본 확장에 OID 메서드 요청이 전달됩니다. 이 절차에 대한 자세한 내용은 NDIS 필터 드라이버에서 OID 요청 필터링을 참조하세요.

OID_SWITCH_NIC_RESTORE_COMPLETE
확장 가능한 스위치 인터페이스는 확장 가능한 스위치 NIC에 대한 런타임 데이터의 복원 작업이 완료될 때 이 OID를 실행하도록 확장 가능한 스위치의 프로토콜 에지를 알릴 수 있습니다.

이 OID 요청은 지정된 확장 가능한 스위치 NIC에 대해서만 복원 작업이 완료되었음을 확장에 알렸습니다.

이 OID 요청에 대한 자세한 내용은 OID_SWITCH_NIC_RESTORE_COMPLETE 참조하세요.

런타임 데이터에 대한 복원 작업 중에 확장 가능한 스위치의 프로토콜 에지가 Hyper-V 자식 파티션의 네트워크 인터페이스에 대한 OID_SWITCH_NIC_RESTOREOID_SWITCH_NIC_RESTORE_COMPLETE OID 요청을 발급합니다. 여러 Hyper-V 자식 파티션이 복원되는 경우 프로토콜 에지는 각 네트워크 인터페이스 연결에 대해 별도의 OID_SWITCH_NIC_RESTORE 및 OID_SWITCH_NIC_RESTORE_COMPLETE 요청 집합을 발급합니다.

참고 확장 가능한 스위치의 프로토콜 에지는 동일한 NIC에 대한 런타임 데이터에 대한 복원 작업을 인터리브하지 않습니다. 프로토콜 에지는 이전 복원 작업이 동일한 NIC에서 완료된 후에만 NIC에 대한 런타임 데이터 복원 작업을 시작합니다. 그러나 프로토콜 에지는 다른 NIC에 대해 다른 복원 작업이 진행 중인 동안 NIC에 대한 복원 작업을 시작할 수 있습니다. 이 때문에 확장은 인터리브되지 않은 방식으로 복원 작업을 수행하는 것이 좋습니다. 예를 들어 확장은 다른 NIC에 대해 진행 중인 복원 작업이 완료되기 전에 다른 NIC에서 새 복원 작업을 시작할 수 없다고 가정해서는 안 됩니다.

이 OID 요청에 대한 자세한 내용은 Hyper-V 확장 가능한 스위치 Run-Time 데이터 복원을 참조하세요.