OID_NIC_SWITCH_ENUM_VFS
지나치게 많은 드라이버 또는 사용자 모드 애플리케이션은 배열을 가져오기 위해 OID_NIC_SWITCH_ENUM_VFS OID(개체 식별자) 메서드 요청을 실행합니다. 배열의 각 요소는 네트워크 어댑터의 NIC 스위치에서 NIC 스위치에 연결된 PCI Express(PCIe) VF(가상 함수)의 특성을 지정합니다.
이 OID 쿼리 요청에서 성공적으로 반환된 후 NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 다음이 포함된 버퍼에 대한 포인터가 포함됩니다.
배열 내의 요소 수를 정의하는 NDIS_NIC_SWITCH_VF_INFO_ARRAY 구조체입니다.
NDIS_NIC_SWITCH_VF_INFO 구조체의 배열입니다. 이러한 각 구조에는 네트워크 어댑터의 NIC 스위치에 있는 단일 VF에 대한 정보가 포함되어 있습니다. VF는 OID_NIC_SWITCH_ALLOCATE_VF OID 메서드 요청을 통해 NIC 스위치에 연결됩니다.
참고 네트워크 어댑터의 NIC 스위치에 VF가 연결되어 있지 않으면 NDIS_NIC_SWITCH_VF_INFO_ARRAY 구조체의 NumElements 멤버가 0으로 설정되고 NDIS_NIC_SWITCH_VF_INFO 구조체가 반환되지 않습니다.
설명
오버레이 드라이버 및 사용자 모드 애플리케이션은 네트워크 어댑터의 NIC 스위치에 연결된 VF를 열거하기 위해 OID_NIC_SWITCH_ENUM_VFS OID 메서드 요청을 실행합니다.
드라이버 또는 애플리케이션이 OID 요청을 발급하기 전에 요청과 함께 전달되는 NDIS_NIC_SWITCH_VF_INFO_ARRAY 구조를 초기화해야 합니다. 드라이버 또는 애플리케이션은 NDIS_NIC_SWITCH_VF_INFO_ARRAY 구조를 초기화할 때 다음 지침을 따라야 합니다.
flags 멤버에 NDIS_NIC_SWITCH_VF_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH 플래그가 설정된 경우 드라이버 또는 애플리케이션은 SwitchId 멤버를 SR-IOV 네트워크 어댑터의 NIC 스위치 식별자로 설정해야 합니다. 이러한 멤버를 이러한 방식으로 설정하면 VF 정보는 SR-IOV 네트워크 어댑터의 지정된 NIC 스위치에 대해서만 반환됩니다.
참고 오버리싱 드라이버 및 사용자 모드 애플리케이션은 OID_NIC_SWITCH_ENUM_SWITCHES OID 쿼리 요청을 실행하여 NIC 스위치 식별자를 가져올 수 있습니다.
Flags 멤버가 0으로 설정된 경우 드라이버 또는 애플리케이션은 SwitchId 멤버를 0으로 설정해야 합니다. 이러한 방식으로 이러한 멤버를 설정하면 SR-IOV 네트워크 어댑터의 모든 NIC 스위치에 대한 VF 정보가 반환됩니다.
참고 Windows Server 2012 Windows는 네트워크 어댑터의 기본 NIC 스위치만 지원합니다. Flags 멤버에 설정된 플래그에 관계없이 SwitchId 멤버는 NDIS_DEFAULT_SWITCH_ID 설정해야 합니다.
NIC 스위치에 대한 자세한 내용은 NIC 스위치를 참조하세요.
반환 상태 코드
NDIS는 미니포트 드라이버에 대한 OID_NIC_SWITCH_ENUM_VFS 요청의 OID 메서드 요청을 처리합니다. 드라이버에 이 OID 요청이 발급되지 않습니다.
NDIS는 OID_NIC_SWITCH_ENUM_VFS 요청을 처리할 때 다음 상태 코드 중 하나를 반환합니다.
상태 코드 | Description |
---|---|
NDIS_STATUS_SUCCESS |
OID 요청이 성공적으로 완료되었습니다. |
NDIS_STATUS_NOT_SUPPORTED |
미니포트 드라이버는 단일 루트 I/O 가상화(SR-IOV) 인터페이스를 지원하지 않거나 인터페이스를 사용할 수 없습니다. |
NDIS_STATUS_INVALID_PARAMETER |
NDIS_NIC_SWITCH_VF_INFO_ARRAY 구조체의 멤버 중 하나 이상의 값이 잘못되었습니다. |
NDIS_STATUS_INVALID_LENGTH |
정보 버퍼가 너무 짧습니다. NDIS는 데이터를 설정합니다 . METHOD_INFORMATION. 필요한 최소 버퍼 크기에 대한 NDIS_OID_REQUEST 구조체의 BytesNeeded 멤버입니다. |
NDIS_STATUS_FAILURE |
다른 이유로 인해 요청이 실패했습니다. |
요구 사항
Version |
NDIS 6.30 이상에서 지원됩니다. |
헤더 |
Ntddndis.h(Ndis.h 포함) |