NDIS 发出OID_PACKET_COALESCING_FILTER_MATCH_COUNT的 OID 查询请求,以获取在网络适配器上缓存或 合并的数据包数。 如果为适配器启用了 NDIS 数据包合并 且数据包与接收筛选器匹配,则网络适配器会合并收到的数据包。
NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向调用方分配的ULONG64变量的指针。 在从查询请求成功返回之前,驱动程序会更新ULONG64变量,其中包含在网络适配器上匹配接收筛选器的数据包数。
言论
从 NDIS 6.30 开始,支持 NDIS 数据包合并 的驱动程序必须支持 OID_PACKET_COALESCING_FILTER_MATCH_COUNT 的 OID 查询请求。
注意,支持 单根 I/O 虚拟化(SR-IOV) 或 虚拟机队列(VMQ) 接口的驱动程序不需要支持此 OID 的 OID 查询请求。
支持数据包合并的微型端口驱动程序必须为网络适配器上合并的每个接收数据包递增ULONG64计数器。 如果数据包与接收筛选器匹配,数据包将通过 OID 方法请求的 OID_RECEIVE_FILTER_SET_FILTER,将驱动程序过度下载到微型端口驱动程序。
驱动程序在处理OID_PACKET_COALESCING_FILTER_MATCH_COUNT的 OID 查询请求时返回此计数器的值。
微型端口驱动程序在处理 OID_PACKET_COALESCING_FILTER_MATCH_COUNT 的 OID 查询请求后,不得清除计数器。 如果满足以下条件,微型端口驱动程序必须清除计数器:
微型端口驱动程序处理 OID_PNP_SET_POWER 的 OID 集请求,以恢复为 NdisDeviceStateD0 的全功率状态。
NDIS 调用微型端口驱动程序的 MiniportResetEx 函数来重置基础网络适配器。
有关数据包合并的详细信息,请参阅 NDIS 数据包合并。
返回状态代码
微型端口驱动程序为 OID_PACKET_COALESCING_FILTER_MATCH_COUNT 的 OID 方法请求返回以下状态代码之一:
NDIS_STATUS_SUCCESS
OID 请求已成功完成。
NDIS_STATUS_INVALID_LENGTH
信息缓冲区太短。 驱动程序设置 数据。SET_INFORMATION。NDIS_OID_REQUEST 结构中的 BytesNeeded 成员达到所需的最小缓冲区大小。
NDIS_STATUS_FAILURE
由于其他原因,请求失败。
要求
版本 |
NDIS 6.30 及更高版本中受支持。 |
页眉 |
Ntddndis.h (包括 Ndis.h) |