NDIS_RSC_NBL_INFO union (ndis/nblrsc.h)
NDIS_RSC_NBL_INFO 联合指定接收与 NET_BUFFER_LIST 结构关联的段合并(RSC)计数器信息。
语法
typedef union _NDIS_RSC_NBL_INFO {
struct {
USHORT CoalescedSegCount;
USHORT DupAckCount;
} Info;
PVOID Value;
} NDIS_RSC_NBL_INFO, *PNDIS_RSC_NBL_INFO;
成员
Info
包含在 NDIS_RSC_NBL_INFO的联合中的成员。 驱动程序使用 信息 来访问 RSC 信息。 信息 是具有以下成员的结构:
Info.CoalescedSegCount
NET_BUFFER_LIST 结构中的合并段数。 对于非 RSC 数据包,此成员必须设置为零。 驱动程序可以使用 NET_BUFFER_LIST_COALESCED_SEG_COUNT 宏访问此成员。
Info.DupAckCount
形成 NET_BUFFER_LIST 结构时遇到的重复 ACK 数。 仅当 CoalescedSegCount 不为零时,DupAckCount 应为非零。 驱动程序可以使用 NET_BUFFER_LIST_DUP_ACK_COUNT 宏访问此成员。
Value
包含在 NDIS_RSC_NBL_INFO的联合中的成员。 驱动程序使用 值 作为单个 PVOID访问 RSC 信息。
言论
若要访问与 NET_BUFFER_LIST 结构关联的接收段合并(RSC)计数器信息,NDIS 驱动程序调用 NET_BUFFER_LIST_INFO 宏,并指定 TcpRecvSegCoalesceInfo 属于 NDIS_RSC_NBL_INFO 联合中的信息类型。
若要访问与 NET_BUFFER_LIST 结构关联的 RSC 时间戳信息,NDIS 驱动程序调用 NET_BUFFER_LIST_INFO 宏,并指定 RscTcpTimestampDelta 信息类型,该类型是单个 ULONG 值。
单个合并单元(SCU)的 NET_BUFFER_LIST 结构与没有 RSC 的接收路径上指示的标准 NET_BUFFER_LIST 结构不同。 SCU 类似于来自线路的 IP jumbogram 数据包。 因此,每个指示的 SCU 都必须为每个 NET_BUFFER_LIST具有一个 NET_BUFFER 结构。
NET_BUFFER 可以是 MDL 链,MDL 的总大小可能超过正常最大传输单元(MTU),但必须受法定最大 IP 数据报长度的限制,请参阅 RFC791 第 3.1 节。
此外,还可以为 SCU 提供额外的 NET_BUFFER_LIST 信息。 NDIS 执行 NET_BUFFER_LIST 和 NET_BUFFER 验证。 主机 TCPIP 堆栈执行数据包检查,包括 IP 和 TCP 标头验证。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows 8 中支持 NDIS 6.30 及更高版本的驱动程序。 |
标头 | ndis/nblrsc.h (include ndis.h) |