NDIS_NIC_SWITCH_VPORT_INFO 结构 (ntddndis.h)

NDIS_NIC_SWITCH_VPORT_INFO 结构指定在网络适配器的网络适配器交换机上 (VPort) 虚拟端口的配置。

语法

typedef struct _NDIS_NIC_SWITCH_VPORT_INFO {
  NDIS_OBJECT_HEADER                         Header;
  NDIS_NIC_SWITCH_VPORT_ID                   VPortId;
  ULONG                                      Flags;
  NDIS_NIC_SWITCH_ID                         SwitchId;
  NDIS_VPORT_NAME                            VPortName;
  NDIS_SRIOV_FUNCTION_ID                     AttachedFunctionId;
  ULONG                                      NumQueuePairs;
  NDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION InterruptModeration;
  NDIS_NIC_SWITCH_VPORT_STATE                VPortState;
  GROUP_AFFINITY                             ProcessorAffinity;
  ULONG                                      LookaheadSize;
  ULONG                                      NumFilters;
} NDIS_NIC_SWITCH_VPORT_INFO, *PNDIS_NIC_SWITCH_VPORT_INFO;

成员

Header

NDIS_NIC_SWITCH_VPORT_INFO 结构的类型、修订和大小。 此成员的格式设置为 NDIS_OBJECT_HEADER 结构。

微型端口驱动程序必须将 HeaderType 成员设置为 NDIS_OBJECT_TYPE_DEFAULT。 若要指定 NDIS_NIC_SWITCH_VPORT_INFO 结构的版本,驱动程序必须将 HeaderRevision 成员设置为以下值:

NDIS_NIC_SWITCH_VPORT_INFO_REVISION_1

NDIS 6.30 及更高版本的原始版本。

Size 成员设置为 NDIS_SIZEOF_NIC_SWITCH_VPORT_INFO_REVISION_1。

VPortId

一个NDIS_NIC_SWITCH_VPORT_ID值,用于唯一标识网络适配器上的 VPort) (虚拟端口。

值 NDIS_DEFAULT_VPORT_ID 指定交换机上的默认 VPort。 默认 VPort 始终附加到网络适配器的 PCI Express (PCIe) 物理功能 (PF) 。

注意 具有指定 VPortId 值的非默认 VPort 之前必须通过 OID_NIC_SWITCH_CREATE_VPORT 的 OID 方法请求创建。
 

Flags

包含标志的按位 OR 的 ULONG 值。 此成员是为 NDIS 保留的。

SwitchId

一个NDIS_NIC_SWITCH_ID值,用于唯一标识在网络适配器上创建的网络适配器交换机。 通过 VPortId 成员标识的 VPort 是在 SwitchId 成员指定的交换机上创建的。

交换机标识符是介于零和网络适配器支持的交换机数之间的整数。 值 NDIS_DEFAULT_SWITCH_ID 表示默认网络适配器交换机。

注意从 Windows Server 2012 开始,单根 I/O 虚拟化 (SR-IOV) 接口仅支持网络适配器上的默认网络适配器交换机。 此成员的值必须设置为 NDIS_DEFAULT_SWITCH_ID。
 

VPortName

一个 NDIS_VPORT_NAME 值,该值指定在网络适配器交换机上创建的 VPort 的名称。 此成员包含 VPort 的用户友好说明。

AttachedFunctionId

一个 NDIS_SRIOV_FUNCTION_ID 值,该值指定 VF 或 VPort 所附加到的 PF 的标识符。

注意 如果此值NDIS_PF_FUNCTION_ID,则 VPort 将附加到 PF。
 

NumQueuePairs

一个 ULONG 值,该值指定为此 VPort 配置的队列对数。

队列对由传输队列和接收队列组成。 与默认 VPort 关联的队列对在创建交换机时通过 OID_NIC_SWITCH_CREATE_SWITCH的 OID 方法请求进行配置。 通过 OID_NIC_SWITCH_CREATE_VPORT的 OID 方法请求,在非默认 VPort 上配置一个或多个队列对。

InterruptModeration

一个NDIS_NIC_SWITCH_VPORT_INTERRUPT_MODERATION值,该值指定 VPort 的中断审查设置。

VPortState

一个NDIS_NIC_SWITCH_VPORT_STATE值,该值指定 VPort 的状态。

ProcessorAffinity

一个GROUP_AFFINITY值,该值指定组号和此 VPort 可以与之关联的 CPU 的位图。

此成员仅对附加到 PF 的 VPort 有效。 此字段对于附加到 VF 的非默认 VPort 无效。

LookaheadSize

此成员留待将来使用。 此成员必须设置为零。

NumFilters

一个 ULONG 值,该值指定已在网络适配器上配置的接收筛选器数。

注意 从 NDIS 6.30 开始,微型端口驱动程序必须为网络适配器上设置的当前接收筛选器数维护计数器。 每次通过 OID_RECEIVE_FILTER_SET_FILTER的 OID 集请求设置接收筛选器时,驱动程序都必须递增计数器。 每次通过 OID_RECEIVE_FILTER_CLEAR_FILTER的 OID 集请求清除接收筛选器时,驱动程序还必须递减计数器。
 

注解

NDIS_NIC_SWITCH_VPORT_INFO结构包含有关以下内容之一的信息:

  • 以前通过 OID_NIC_SWITCH_CREATE_VPORT 的 OID 方法请求创建的非默认 VPort。
  • 附加到 PF 的默认 VPort。 默认 VPort 始终存在,并且无法删除。

一个或多个 NDIS_NIC_SWITCH_VPORT_INFO 结构通过 NDIS_NIC_SWITCH_VPORT_INFO_ARRAY 结构返回。

有关 SR-IOV 接口的详细信息,请参阅 单根 I/O 虚拟化 (SR-IOV) 概述

要求

要求
最低受支持的客户端 在 NDIS 6.30 及更高版本中受支持。
标头 ntddndis.h (包括 Ndis.h)

另请参阅

NDIS_NIC_SWITCH_VPORT_INFO_ARRAY

NDIS_OBJECT_HEADER

OID_NIC_SWITCH_CREATE_VPORT

OID_NIC_SWITCH_VPORT_PARAMETERS