Querying the Parameters of a Virtual Port

An overlying driver can obtain the parameters for a virtual port (VPort) on a NIC switch on a network adapter that supports single root I/O virtualization (SR-IOV). The driver issues an object identifier (OID) method request of OID_NIC_SWITCH_VPORT_PARAMETERS to obtain these parameters.

Before the overlying driver issues this OID method request, it must initialize an NDIS_NIC_SWITCH_VPORT_PARAMETERS structure. The driver must set the members of this structure in the following way:

  • The SwitchId member must be set to the identifier of the NIC switch for which parameters are to be returned.

    Note  Starting with Windows Server 2012, the SR-IOV interface supports only one NIC switch on the network adapter. This switch is known as the default NIC switch. The SwitchId member must be set to NDIS_DEFAULT_SWITCH_ID.

  • The VPortId member must be set to the identifier associated with the VPort. The overlying driver obtains the VPort identifier through one of the following ways:

After a successful return from this OID method request, the InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to an NDIS_NIC_SWITCH_VPORT_PARAMETERS structure. This structure contains the parameters for the specified VPort.

NDIS handles the OID_NIC_SWITCH_VPORT_PARAMETERS request for miniport drivers. NDIS returns the information from an internal cache of the data that it maintains from inspecting the following sources: