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 结构用于以下位置:

要求

要求 价值
最低支持的客户端 Windows Vista,在 NDIS 6.0 及更高版本中受支持。
支持的最低服务器 Windows Server 2008
标头 ntddndis.h (include Ndis.h)

另请参阅

确定网络适配器 的 RSC 功能

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_IPSEC_OFFLOAD_V1

NDIS_IPSEC_OFFLOAD_V2

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

NDIS_STATUS_INDICATION

NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG

NDIS_TCP_IP_CHECKSUM_OFFLOAD

NDIS_TCP_LARGE_SEND_OFFLOAD_V1

NDIS_TCP_LARGE_SEND_OFFLOAD_V2

使用通用路由封装(NVGRE)任务卸载 网络虚拟化

OID_OFFLOAD_ENCAPSULATION

OID_TCP_OFFLOAD_CURRENT_CONFIG

OID_TCP_OFFLOAD_HARDWARE_CAPABILITIES

TCP/IP 任务卸载

UDP 分段卸载 (USO)