다음을 통해 공유


OID_NIC_SWITCH_ENUM_VPORTS

오버레이 드라이버 또는 사용자 모드 애플리케이션은 배열을 가져오기 위해 OID_NIC_SWITCH_ENUM_VPORTS OID(개체 식별자) 메서드 요청을 실행합니다. 배열의 각 요소는 네트워크 어댑터의 NIC 스위치에서 생성된 VPort(가상 포트)의 특성을 지정합니다.

이 OID 쿼리 요청에서 성공적으로 반환된 후 NDIS_OID_REQUEST 구조체의 InformationBuffer 멤버에는 다음이 포함된 버퍼에 대한 포인터가 포함됩니다.

설명

드라이버와 사용자 모드 애플리케이션을 오버레이하는 것은 네트워크 어댑터의 NIC 스위치에 할당된 VPort를 열거하기 위해 OID_NIC_SWITCH_ENUM_VPORTS OID 쿼리 요청을 실행합니다.

드라이버 또는 애플리케이션이 OID 요청을 발급하기 전에 요청과 함께 전달되는 NDIS_NIC_SWITCH_VPORT_INFO_ARRAY 구조를 초기화해야 합니다. 드라이버 또는 애플리케이션은 NDIS_NIC_SWITCH_VPORT_INFO_ARRAY 구조를 초기화할 때 다음 지침을 따라야 합니다.

  • 플래그 멤버에서 NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH 플래그를 설정하면 지정된 NIC 스위치에서 만든 모든 VPort에 대한 정보가 반환됩니다. NIC 스위치는 해당 구조체의 SwitchId 멤버에 의해 지정됩니다.

    참고 Windows Server 2012 SR-IOV 인터페이스는 네트워크 어댑터의 기본 NIC 스위치만 지원합니다. Flags 멤버에 설정된 플래그에 관계없이 SwitchId 멤버는 NDIS_DEFAULT_SWITCH_ID 설정해야 합니다.

  • NDIS_NIC_SWITCH_VPORT_INFO_ARRAY_ENUM_ON_SPECIFIC_FUNCTION 플래그가 Flags 멤버에 설정된 경우 네트워크 어댑터의 지정된 PCI Express(PCIe) PF(물리적 함수) 또는 VF(가상 함수)에 연결된 모든 VPort에 대한 정보가 반환됩니다. PF 또는 VF는 해당 구조체의 AttachedFunctionId 멤버에 의해 지정됩니다.

    AttachedFunctionId 멤버가 NDIS_PF_FUNCTION_ID 설정되면 네트워크 어댑터의 PF에 연결된 기본 VPort를 포함한 모든 VPort에 대한 정보가 반환됩니다. AttachedFunctionId 멤버가 유효한 VF 식별자로 설정된 경우 지정된 VF에 대한 모든 VPort에 대한 정보가 반환됩니다.

    참고 Windows Server 2012 시작하여 기본이 아닌 VPort 하나만 VF에 연결할 수 있습니다. 그러나 여러 VPort(기본 VPort 포함)를 PF에 연결할 수 있습니다.

  • Flags 멤버를 0으로 설정하면 네트워크 어댑터의 PF 또는 VF에 연결된 모든 VPort에 대한 정보가 반환됩니다. 이 경우 SwitchIdAttachedFunctionId 의 값은 무시됩니다.

자세한 내용은 네트워크 어댑터에서 가상 포트 열거를 참조하세요.

반환 상태 코드

NDIS는 미니포트 드라이버에 대한 OID_NIC_SWITCH_ENUM_VPORTS 요청의 OID 메서드 요청을 처리합니다. 드라이버에 이 OID 요청이 발급되지 않습니다.

NDIS가 OID_NIC_SWITCH_ENUM_VPORTS 요청을 처리하면 다음 상태 코드 중 하나를 반환합니다.

상태 코드 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 포함)

추가 정보


NDIS_NIC_SWITCH_VPORT_INFO

NDIS_NIC_SWITCH_VPORT_INFO_ARRAY

NDIS_OID_REQUEST

OID_NIC_SWITCH_CREATE_SWITCH

OID_NIC_SWITCH_PARAMETERS