NDIS_OFFLOAD结构(ntddndis.h)
NDIS_OFFLOAD 结构指定了多个可卸载到网络适配器 的计算任务。
语法
typedef struct _NDIS_OFFLOAD {
NDIS_OBJECT_HEADER Header;
NDIS_TCP_IP_CHECKSUM_OFFLOAD Checksum;
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 LsoV1;
NDIS_IPSEC_OFFLOAD_V1 IPsecV1;
NDIS_TCP_LARGE_SEND_OFFLOAD_V2 LsoV2;
ULONG Flags;
NDIS_IPSEC_OFFLOAD_V2 IPsecV2;
NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD Rsc;
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD EncapsulatedPacketTaskOffloadGre;
NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_V2 EncapsulatedPacketTaskOffloadVxlan;
UCHAR EncapsulationTypes;
NDIS_RFC6877_464XLAT_OFFLOAD Rfc6877Xlat;
NDIS_UDP_SEGMENTATION_OFFLOAD UdpSegmentation;
NDIS_UDP_RSC_OFFLOAD UdpRsc;
} NDIS_OFFLOAD, *PNDIS_OFFLOAD;
成员
Header
NDIS_OFFLOAD 结构的 NDIS_OBJECT_HEADER 结构。 设置 标头 指定为NDIS_OBJECT_TYPE_OFFLOAD的结构 类型 成员。
设置 修订 和 大小NDIS_OBJECT_HEADER 结构的成员,如下所示:
- 对于 NDIS 6.83 及更高版本的驱动程序:
- 将 修订 设置为NDIS_OFFLOAD_REVISION_6(NDIS 6.83)。
- 将 大小 设置为NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_6。
- 对于 NDIS 6.70 及更高版本的驱动程序:
- 将 修订 设置为NDIS_OFFLOAD_REVISION_5(NDIS 6.70)。
- 将 大小 设置为NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_5。
- 对于 NDIS 6.50 及更高版本的驱动程序:
- 将 修订 设置为NDIS_OFFLOAD_REVISION_4(NDIS 6.50)。
- 将 大小 设置为NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_4。
- 对于 NDIS 6.30 及更高版本的驱动程序:
- 将 修订 设置为NDIS_OFFLOAD_REVISION_3(NDIS 6.30)。
- 将 大小 设置为NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_3。
- 对于 NDIS 6.1 和 6.20 驱动程序:
- 将 修订 设置为NDIS_OFFLOAD_REVISION_2(NDIS 6.1)。
- 将 大小 设置为NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_2。
- 对于 NDIS 6.0 驱动程序:
- 将 修订 设置为NDIS_OFFLOAD_REVISION_1(NDIS 6.0)。
- 将 大小 设置为NDIS_SIZEOF_NDIS_OFFLOAD_REVISION_1。
Checksum
校验和卸载 NDIS_TCP_IP_CHECKSUM_OFFLOAD 结构中的信息。
LsoV1
NDIS_TCP_LARGE_SEND_OFFLOAD_V1 结构中的大型发送卸载版本 1 (LSOV1) 信息。
IPsecV1
Internet 协议安全性 (IPsec) 卸载 NDIS_IPSEC_OFFLOAD_V1 结构中的信息。
LsoV2
大型发送卸载版本 2 (LSOV2) 卸载 NDIS_TCP_LARGE_SEND_OFFLOAD_V2 结构中的信息。
Flags
指定网络适配器支持的属性的按位 OR 标志。 定义了以下标志。
价值 | 意义 |
---|---|
IPSEC_OFFLOAD_V2_AND_TCP_CHECKSUM_COEXISTENCE 0x00000002 |
网络适配器支持 IPsecV2 和 TCP 校验和。 |
IPSEC_OFFLOAD_V2_AND_UDP_CHECKSUM_COEXISTENCE 0x00000004 |
网络适配器支持 IPsecV2 和 UDP 校验和。 |
IPsecV2
Internet 协议安全性 (IPsec) 卸载 NDIS_IPSEC_OFFLOAD_V2 结构中的版本 2 信息。
Rsc
接收段合并(RSC) 卸载 NDIS_TCP_RECV_SEG_COALESCE_OFFLOAD 结构中的信息。
EncapsulatedPacketTaskOffloadGre
使用泛型路由封装(NVGRE)任务卸载 NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD 结构中的 信息 网络虚拟化。 此成员只能由支持 NVGRE 格式数据包的任务卸载的微型端口驱动程序设置。
注意:此成员仅在 NDIS 6.30 及更高版本中可用。
EncapsulatedPacketTaskOffloadVxlan
VXLAN 封装的数据包任务卸载 NDIS_ENCAPSULATED_PACKET_TASK_OFFLOAD_V2 结构中的信息。 此成员只能由支持 VXLAN 格式数据包的任务卸载的微型端口驱动程序设置。 VXLAN 类似于 NVGRE,但协议不同。
注意:此成员仅在 NDIS 6.50 及更高版本中可用。
EncapsulationTypes
为封装数据包任务卸载启用的封装类型。
注意:此成员仅在 NDIS 6.50 及更高版本中可用。
Rfc6877Xlat
464XLAT 硬件卸载 NDIS_RFC6877_464XLAT_OFFLOAD 结构中的信息。
注释:此成员仅在 NDIS 6.70 及更高版本中可用。
UdpSegmentation
UDP 分段卸载(USO)硬件卸载 NDIS_UDP_SEGMENTATION_OFFLOAD 结构中的信息。
注意:此成员仅在 NDIS 6.83 及更高版本中可用。
UdpRsc
UDP 接收段合并卸载(URO)硬件卸载 NDIS_UDP_RSC_OFFLOAD 结构中的信息。
注意:此成员仅在 NDIS 6.89 及更高版本中可用。
言论
NDIS_OFFLOAD 结构用于以下位置:
- NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES 结构的 DefaultOffloadConfiguration 成员
- NDIS_BIND_PARAMETERS 结构的 DefaultOffloadConfiguration 成员
- NDIS_FILTER_ATTACH_PARAMETERS 结构的 DefaultOffloadConfiguration 成员
- NDIS_OID_REQUEST 结构的 InformationBuffer 成员(OID_TCP_OFFLOAD_CURRENT_CONFIG OID 请求中使用)
- NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG 状态指示的 StatusBuffer 成员
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista,在 NDIS 6.0 及更高版本中受支持。 |
支持的最低服务器 | Windows Server 2008 |
标头 | ntddndis.h (include Ndis.h) |
另请参阅
确定网络适配器 的 RSC 功能
NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES
NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG
NDIS_TCP_LARGE_SEND_OFFLOAD_V1
NDIS_TCP_LARGE_SEND_OFFLOAD_V2
OID_TCP_OFFLOAD_CURRENT_CONFIG