OID_SWITCH_NIC_SAVE

Hyper-V 확장 가능 스위치의 프로토콜 에지는 확장 가능한 스위치 포트 및 네트워크 어댑터 연결에 대한 런타임 데이터를 저장하는 작업 중에 OID_SWITCH_NIC_SAVE OID(개체 식별자) 메서드 요청을 실행합니다. 확장은 런타임 데이터를 나중에 저장하고 복원할 수 있도록 이 데이터를 반환합니다. 런타임 데이터가 저장되면 OID_SWITCH_NIC_RESTORE OID 집합 요청을 통해 복원됩니다.

NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 NDIS_SWITCH_NIC_SAVE_STATE 구조체에 대한 포인터가 포함되어 있습니다. 이 구조체는 확장 가능한 스위치의 프로토콜 에지에 의해 할당됩니다.

설명

OID_SWITCH_NIC_SAVE OID 메서드 요청을 받으면 확장 가능한 스위치 확장은 다음을 수행하여 런타임 데이터를 저장합니다.

  • 확장은 구조체의 시작부터 SaveDataOffset 바이트부터 시작하는 NDIS_SWITCH_NIC_SAVE_STATE 구조 내에 데이터를 저장합니다.

  • 제공된 SaveDataSize 가 필요한 저장 데이터를 저장할 만큼 크지 않은 경우 확장은 메서드 구조의 BytesNeeded 필드를 NDIS_SIZEOF_NDIS_SWITCH_NIC_SAVE_STATE_REVISION_1 및 저장 데이터를 저장하는 데 필요한 버퍼 양을 설정하고 NDIS_STATUS_BUFFER_TOO_SHORT OID를 완료합니다. OID는 필요한 크기로 재발행됩니다.

  • 확장은 ExtensionIdExtensionFriendlyName 필드를 고유한 식별자와 이름으로 채우고 OID 메서드 요청을 NDIS_STATUS_SUCCESS 완료합니다. 이로 인해 확장 가능한 스위치의 프로토콜 에지가 다른 OID 메서드 요청을 실행하여 확장이 더 많은 저장 데이터를 반환하거나 스택 내의 다른 확장에서 자체 데이터를 저장할 수 있도록 허용합니다.

참고 확장에 저장할 런타임 데이터가 없는 경우 NdisFOidRequest 를 호출하여 이 OID 메서드 요청을 확장 가능한 스위치 드라이버 스택의 기본 확장으로 전달해야 합니다. 이 절차에 대한 자세한 내용은 NDIS 필터 드라이버에서 OID 요청 필터링을 참조하세요.

Hyper-V 확장 가능 스위치는 OID를 실행하기 전에 구조체의 Header, PortId, NicIdex, SaveDataSizeSaveDataOffset 필드를 채웁니다. 확장에서 이러한 필드를 수정할 수 없습니다.

OID_SWITCH_NIC_SAVE OID 메서드 요청은 궁극적으로 확장 가능한 스위치의 기본 미니포트 에지에 의해 처리됩니다. 확장 가능한 스위치의 미니포트 가장자리에서 이 OID 메서드 요청을 받은 후 NDIS_STATUS_SUCCESS 사용하여 OID 요청을 완료합니다. 이는 확장 가능한 스위치 드라이버 스택의 모든 확장이 런타임 데이터에 대해 쿼리되었음을 확장 가능한 스위치의 프로토콜 에지에 알릴 수 있습니다. 확장 가능한 스위치의 프로토콜 에지는 저장 작업을 완료하기 위해 OID_SWITCH_NIC_SAVE_COMPLETE OID 집합 요청을 실행합니다.

확장 가능한 스위치 포트에 대한 런타임 데이터를 저장하는 방법에 대한 자세한 내용은 Hyper-V 확장 가능한 스위치 Run-Time 데이터 저장을 참조하세요.

반환 상태 코드

확장 가능한 스위치 확장은 OID_SWITCH_NIC_SAVE OID 메서드 요청에 대해 다음 상태 코드 중 하나를 반환합니다.

상태 코드 Description

NDIS_STATUS_BUFFER_TOO_SHORT

정보 버퍼의 길이가 너무 작아서 NDIS_SWITCH_NIC_SAVE_STATE 관련 런타임 데이터 확장이 데이터를 설정해야 합니다 . METHOD_INFORMATION. 필요한 최소 버퍼 크기에 대한 NDIS_OID_REQUEST 구조체의 BytesNeeded 멤버입니다.

NDIS_STATUS_SUCCESS

확장은 저장할 런타임 데이터를 반환하는 경우 이 상태 반환합니다.

NDIS_STATUS_Xxx

다른 이유로 인해 요청이 실패했습니다.

확장 가능한 스위치의 기본 미니포트 에지는 OID_SWITCH_NIC_SAVE OID 메서드 요청에 대해 다음 상태 코드를 반환합니다.

상태 코드 Description

NDIS_STATUS_SUCCESS

OID 요청이 성공적으로 완료되었습니다.

요구 사항

Version

NDIS 6.30 이상에서 지원됩니다.

헤더

Ntddndis.h(Ndis.h 포함)

추가 정보


NDIS_OID_REQUEST

NDIS_SWITCH_NIC_SAVE_STATE

NdisFOidRequest

OID_SWITCH_NIC_RESTORE

OID_SWITCH_NIC_SAVE_COMPLETE