Hyper-V 확장 가능한 스위치 저장 작업
Hyper-V 자식 파티션이 중지, 저장 또는 실시간 마이그레이션되면 파티션의 런타임 상태가 저장됩니다. 저장 작업 중에 Hyper-V 확장 가능 스위치 확장은 확장 가능한 NIC(스위치 네트워크 어댑터)에 대한 런타임 데이터를 저장할 수 있습니다.
Hyper-V 자식 파티션에서 저장 작업을 수행하는 경우 확장 가능한 스위치 인터페이스는 확장에 작업에 대해 알릴 수 있습니다. 확장은 다음 OID(개체 식별자) 요청을 통해 알림을 받습니다.
OID_SWITCH_NIC_SAVE
확장 가능한 스위치 인터페이스는 확장 가능한 스위치 NIC에 대한 저장 작업 중에 이 OID를 실행하도록 확장 가능한 스위치의 프로토콜 에지를 신호합니다. 이 OID 요청을 처리하면 확장은 NIC에 대한 런타임 데이터를 반환합니다. 런타임 데이터가 저장되면 OID_SWITCH_NIC_RESTORE OID 집합 요청을 통해 복원됩니다.
OID_SWITCH_NIC_SAVE 메서드 요청을 받으면 확장은 다음 중 하나를 수행할 수 있습니다.
확장에 저장할 런타임 데이터가 있는 경우 NDIS_SWITCH_NIC_SAVE_STATE 구조를 초기화하고 ExtensionId 멤버와 같은 다양한 멤버를 설정하여 자체 및 저장 중인 데이터를 식별합니다. 또한 확장은 구조의 시작부터 SaveDataOffset 바이트를 시작하는 NDIS_SWITCH_NIC_SAVE_STATE 구조 내에 데이터를 저장한 다음 NDIS_STATUS_SUCCESS 사용하여 OID 메서드 요청을 완료합니다.
NDIS_SWITCH_NIC_SAVE_STATE 구조체가 런타임 상태를 유지하기 위해 NDIS_OBJECT_HEADER Size 멤버에 열거된 충분한 버퍼 크기를 제공하지 않는 경우 확장은 메서드 구조의 BytesNeeded 필드를 NDIS_SIZEOF_NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 및 저장 데이터를 저장하는 데 필요한 버퍼 양을 설정합니다. 및 는 NDIS_STATUS_BUFFER_TOO_SHORT 사용하여 OID를 완료합니다. OID는 필요한 크기로 재발행됩니다.
확장에 저장할 런타임 데이터가 없는 경우 NdisFOidRequest를 호출해야 합니다. 그러면 확장 가능한 스위치 드라이버 스택의 기본 확장에 OID 메서드 요청이 전달됩니다. 이 절차에 대한 자세한 내용은 NDIS 필터 드라이버에서 OID 요청 필터링을 참조하세요.
이 OID 요청에 대한 자세한 내용은 OID_SWITCH_NIC_SAVE 요청 처리를 참조하세요.
OID_SWITCH_NIC_SAVE_COMPLETE
확장 가능한 스위치 인터페이스는 확장 가능한 스위치 NIC에 대한 런타임 데이터 저장 작업이 완료될 때 이 OID를 실행하도록 확장 가능한 스위치의 프로토콜 에지를 알릴 수 있습니다.
이 OID 요청은 확장 가능한 지정된 스위치 NIC에 대해서만 저장 작업이 완료되었음을 확장에 알렸습니다.
이 OID 요청에 대한 자세한 내용은 OID_SWITCH_NIC_SAVE_COMPLETE 요청 처리를 참조하세요.
런타임 데이터에 대한 저장 작업 중에 확장 가능한 스위치의 프로토콜 에지가 Hyper-V 자식 파티션의 네트워크 인터페이스에 대한 OID_SWITCH_NIC_SAVE 및 OID_SWITCH_NIC_SAVE_COMPLETE OID 요청을 발급합니다. 여러 Hyper-V 자식 파티션이 중지되거나 실시간 마이그레이션되는 경우 프로토콜 에지는 각 네트워크 인터페이스 연결에 대한 별도의 OID_SWITCH_NIC_SAVE 및 OID_SWITCH_NIC_SAVE_COMPLETE 요청 집합을 발급합니다.
참고 확장 가능한 스위치의 프로토콜 에지는 동일한 NIC에 대한 런타임 데이터에 대한 저장 작업을 인터리브하지 않습니다. 프로토콜 에지는 이전 저장 작업이 동일한 NIC에서 완료된 후에만 NIC에 대한 런타임 데이터 저장 작업을 시작합니다. 그러나 프로토콜 에지는 다른 NIC에 대해 다른 저장 작업이 진행 중인 동안 NIC에 대한 저장 작업을 시작할 수 있습니다. 이 때문에 확장에서 인터리브되지 않은 방식으로 저장 작업을 수행하는 것이 좋습니다. 예를 들어 확장은 다른 NIC에 대해 진행 중인 저장 작업이 완료되기 전에 다른 NIC에서 새 저장 작업을 시작할 수 없다고 가정해서는 안 됩니다.