NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO 结构 (ndis/nbluso.h)
NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO 结构指定用于将 UDP 分段卸载 (USO) 任务从 TCP/IP 传输卸载到微型端口适配器的信息。 NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO结构是NET_BUFFER_LIST OOB 信息的一部分。
语法
typedef struct _NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO {
union {
struct {
ULONG MSS : 20;
ULONG UdpHeaderOffset : 10;
ULONG Reserved : 1;
ULONG IPVersion : 1;
} Transmit;
PVOID Value;
};
} NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO, *PNDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO;
成员
Transmit
包含 USO 信息的各个位字段的结构。
Transmit.MSS
每个 UDP 段的最大段大小 (MSS) (以字节为单位)。 TCP/IP 传输在将大型 UDP 数据包传递到微型端口驱动程序进行分段之前写入此值。
Transmit.UdpHeaderOffset
UDP 标头从 UDP 数据包的开头开始的偏移量(以字节为单位)。 微型端口驱动程序可以使用 UdpHeaderOffset 来确定 UDP 标头的位置,这样它们就不必分析 IP 标头。
Transmit.Reserved
保留。 微型端口驱动程序不得读取或写入此值。
Transmit.IPVersion
数据包的 IP 版本。 对于 IPv4 数据包, IPVersion 设置为 NDIS_UDP_SEGMENTATION_OFFLOAD_IPV4。 对于 IPv6 数据包, IPVersion 设置为 NDIS_UDP_SEGMENTATION_OFFLOAD_IPV6。
Value
USO 信息的 PVOID 版本。 微型端口驱动程序可以使用此成员来访问原始信息,而不是特定字段。
注解
NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO结构是NET_BUFFER_LIST结构中包含的信息的一部分。
若要设置和获取 USO 信息,请将 UdpSegmentationOffloadInfo 索引与 NET_BUFFER_LIST_INFO 宏一起使用。 NET_BUFFER_LIST_INFO 返回 ULONG 值 (而不是指向 ULONG 值的指针) 。
TCP/IP 传输更新NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO结构的 MSS 和 UdpHeaderOffset 成员,然后再将大型数据包发送到微型端口驱动程序。
注意
包含 USO 信息的任何 NET_BUFFER_LIST 结构也包含单个 NET_BUFFER 结构。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10版本 1912 |
标头 | ndis/nbluso.h (包括 ndis.h) |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈