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_OFFLOAD, *PNDIS_OFFLOAD;

成员

Header

NDIS_OFFLOAD结构的NDIS_OBJECT_HEADER结构。 设置 Header 指定要NDIS_OBJECT_TYPE_OFFLOAD的结构的 Type 成员。

按如下所示设置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

大型发送卸载版本 1 (LSOV1) 信息 NDIS_TCP_LARGE_SEND_OFFLOAD_V1 结构。

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 及更高版本中可用。
 

注解

NDIS_OFFLOAD结构在以下位置使用:

要求

   
最低受支持的客户端 Windows Vista,在 NDIS 6.0 及更高版本中受支持。
最低受支持的服务器 Windows Server 2008
Header ntddndis.h (包括 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)