NDIS_PD_CAPABILITIES 结构 (ntddndis.h)
此结构指示提供程序的 PD 功能。
语法
typedef struct _NDIS_PD_CAPABILITIES {
NDIS_OBJECT_HEADER Header;
ULONG Flags;
ULONG MaximumTxPartialBufferCount;
ULONG MaximumRxPartialBufferCount;
UCHAR RxFilterContextWidth;
ULONG CapabilityFlags;
ULONG MaxNumberOfRxQueues;
ULONG MaxNumberOfTxQueues;
ULONG MaxNumberOfRxQueuesForDefaultVport;
ULONG MaxNumberOfTxQueuesForDefaultVport;
ULONG MaxNumberOfRxQueuesPerNonDefaultVport;
ULONG MaxNumberOfTxQueuesPerNonDefaultVport;
ULONG ExactMatchProfileArrayOffset;
ULONG ExactMatchProfileArrayNumElements;
ULONG ExactMatchProfileArrayElementSize;
ULONG WildcardMatchProfileArrayOffset;
ULONG WildcardMatchProfileArrayNumElements;
ULONG WildcardMatchProfileArrayElementSize;
ULONG MinimumModerationInterval;
ULONG MaximumModerationInterval;
ULONG ModerationIntervalGranularity;
ULONG MaxRxQueueSize;
ULONG MaxTxQueueSize;
} NDIS_PD_CAPABILITIES;
成员
Header
NDIS_PD_CAPABILITIES 结构的NDIS_OBJECT_HEADER结构。 按如下所示设置此结构的成员:
- 类型 = NDIS_OBJECT_TYPE_DEFAULT
- 修订 = NDIS_PD_CAPABILITIES_REVISION_1
- 大小 = NDIS_SIZEOF_PD_CAPABILITIES_REVISION_1
Flags
此成员是保留的,必须设置为 0。
MaximumTxPartialBufferCount
提供程序支持的最大部分传输 PD_BUFFER 链长度。
MaximumRxPartialBufferCount
提供程序支持的最大部分接收 PD_BUFFER 链长度。
RxFilterContextWidth
提供程序支持的筛选器上下文宽度。 提供程序最多可以支持 64 位的宽度。
CapabilityFlags
包含提供程序支持的其他功能的标志。
标志 | 描述 |
---|---|
NDIS_PD_CAPS_RECEIVE_FILTER_COUNTERS_SUPPORTED | 此标志指示提供程序支持使用作为NDIS_PD_COUNTER枚举一部分的 PDCounterTypeReceiveFilter 类型创建计数器 |
MaxNumberOfRxQueues
提供程序支持的最大接收队列数。 这仅与 NdisPDAllocateQueue 例程创建的队列相关,因此此数字对于客户端不准确,因为客户端可以使用 NdisPDOnRssReceiveQueues 请求 PD 模式访问) 的其他预先存在的 RSS 队列 (在 NdisPDAllocateQueue 例程中未考虑。
如果提供程序仅支持客户端使用 NdisPDOnRssReceiveQueues 例程将预先存在的 RSS 队列置于 PD 模式,则提供程序可以将此值设置为 0。
MaxNumberOfTxQueues
提供程序可以使用 NdisPDAllocateQueue 例程创建的最大传输队列数。 提供程序不得将此值设置为 0。
MaxNumberOfRxQueuesForDefaultVport
提供程序支持的默认虚拟端口的最大接收队列数。
MaxNumberOfTxQueuesForDefaultVport
提供程序支持的默认虚拟端口的最大传输队列数。
MaxNumberOfRxQueuesPerNonDefaultVport
提供程序为非默认虚拟端口支持的最大接收队列数。
MaxNumberOfTxQueuesPerNonDefaultVport
提供程序为非默认虚拟端口支持的最大传输队列数。
ExactMatchProfileArrayOffset
NDIS_GFP_EXACT_MATCH_PROFILE 结构的数组的数组偏移量。
ExactMatchProfileArrayNumElements
NDIS_GFP_EXACT_MATCH_PROFILE 结构的数组的元素数。
ExactMatchProfileArrayElementSize
NDIS_GFP_EXACT_MATCH_PROFILE 结构的数组的元素数。
WildcardMatchProfileArrayOffset
NDIS_GFP_WILDCARD_MATCH_PROFILE 结构的数组的数组偏移量。
WildcardMatchProfileArrayNumElements
NDIS_GFP_WILDCARD_MATCH_PROFILE 结构的数组的元素数。
WildcardMatchProfileArrayElementSize
NDIS_GFP_WILDCARD_MATCH_PROFILE 结构的数组的元素数。
MinimumModerationInterval
MaximumModerationInterval
ModerationIntervalGranularity
MaxRxQueueSize
MaxTxQueueSize
注解
此结构必须在 8 字节边界上对齐。
如果提供程序具有支持最大 N 队列数的灵活实现,其中任何队列都可以灵活地用作 Rx 或 Tx 队列,则提供程序应为 MaxNumberOfRxQueues 和 MaxNumberOfTxQueues 值播发 ~N/2,因为客户端通常会创建匹配数量的 Rx 和 Tx 队列。
如果提供程序可以在虚拟端口之间灵活分区 Rx 或 Tx 队列,则可以将 NDIS_PD_QUEUE_COUNT_DYNAMIC 用于虚拟端口特定的最大计数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 |
最低受支持的服务器 | Windows Server 2016 |
标头 | ntddndis.h (包括 Ndis.h) |