estructura NDIS_TCP_LARGE_SEND_OFFLOAD_V1 (ntddndis.h)

La estructura NDIS_TCP_LARGE_SEND_OFFLOAD_V1 proporciona información de la versión 1 (LSOV1) de envío grande en la estructura de NDIS_OFFLOAD .

Sintaxis

typedef struct _NDIS_TCP_LARGE_SEND_OFFLOAD_V1 {
  struct {
    ULONG Encapsulation;
    ULONG MaxOffLoadSize;
    ULONG MinSegmentCount;
    ULONG TcpOptions : 2;
    ULONG IpOptions : 2;
  } IPv4;
} NDIS_TCP_LARGE_SEND_OFFLOAD_V1, *PNDIS_TCP_LARGE_SEND_OFFLOAD_V1;

Miembros

IPv4

Estructura dentro de NDIS_TCP_LARGE_SEND_OFFLOAD_V1 que contiene los miembros siguientes:

IPv4.Encapsulation

Configuración de encapsulación para IPv4. Para obtener más información sobre este miembro, vea la siguiente sección Comentarios.

IPv4.MaxOffLoadSize

Bytes máximos de datos de usuario que el transporte puede pasar al controlador de miniporte en un solo paquete. El transporte no pasará un paquete al controlador de miniporte que contiene más bytes de datos de usuario que maxOffLoadSize especifica. Si este tipo de paquete debe transmitirse, el propio transporte segmenta el paquete en paquetes más pequeños.

IPv4.MinSegmentCount

El número mínimo de segmentos que un paquete TCP grande debe ser divisible antes de que el transporte pueda descargarlo en el hardware para la segmentación. El transporte no descargará un paquete grande al controlador de minipuerto para la segmentación, a menos que el controlador de miniporte pueda crear al menos tantos segmentos como MinSegmentCount especifique del paquete. Si un paquete TCP grande no cumple el requisito de segmento mínimo, el propio transporte TCP/IP segmenta el paquete en paquetes más pequeños.

IPv4.TcpOptions

Valor de ULONG que establece un controlador de minipuerto para indicar que el controlador de minipuerto puede segmentar un paquete TCP grande cuyo encabezado TCP contiene opciones TCP o para indicar que esta funcionalidad está habilitada o deshabilitada. El transporte TCP/IP establece este valor para habilitar o deshabilitar esta funcionalidad.

IPv4.IpOptions

Valor de ULONG que establece un controlador de minipuerto para indicar que un adaptador de minipuerto puede segmentar un paquete TCP grande cuyo encabezado IP contiene opciones de IP o para indicar que esta funcionalidad está habilitada o deshabilitada.

Comentarios

La estructura NDIS_TCP_LARGE_SEND_OFFLOAD_V1 se usa en el miembro LsoV1 de la estructura NDIS_OFFLOAD . NDIS_TCP_LARGE_SEND_OFFLOAD_V1 especifica los servicios actuales o compatibles que proporciona un adaptador de miniporte para segmentar paquetes TCP grandes en paquetes más pequeños. NDIS también proporciona una versión de descarga de envío grande 2 (LSOV2), que es una versión mejorada de LSO. Para obtener más información sobre LSOV2, consulte NDIS_TCP_LARGE_SEND_OFFLOAD_V2.

NDIS_OFFLOAD se usa en . NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES estructura, estructura de NDIS_BIND_PARAMETERS , NDIS_FILTER_ATTACH_PARAMETERS estructura, OID_TCP_OFFLOAD_CURRENT_CONFIG OID y NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicación de estado.

Para OID_TCP_OFFLOAD_CURRENT_CONFIG, la estructura de NDIS_OFFLOAD especifica las funcionalidades de descarga de tareas que admite un adaptador de miniporte. Si cambian las funcionalidades de descarga actuales, un controlador de minipuerto informa de las nuevas funcionalidades de un NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicación de estado.

El miembro encapsulación de NDIS_TCP_LARGE_SEND_OFFLOAD_V1 define las funcionalidades de encapsulación LSOV1 o la configuración del adaptador de minipuerto.

En respuesta a un OID_TCP_OFFLOAD_CURRENT_CONFIG solicitud de consulta, NDIS proporciona un OR bit a bit de las marcas de encapsulación, que indican la configuración de encapsulación admitida, en el miembro Encapsulation . Los controladores de minipuerto deben proporcionar encapsulación Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Los demás tipos de encapsulación son opcionales.

Para un NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicación de estado, el controlador de minipuerto proporciona un OR bit a bit de las marcas de encapsulación, que indican las funcionalidades actuales, en el miembro Encapsulation .

Las marcas siguientes se definen para el miembro Encapsulation :

NDIS_ENCAPSULATION_NONE o NDIS_ENCAPSULATION_NOT_SUPPORTED
Especifica que no se admite la descarga de encapsulación.

NDIS_ENCAPSULATION_NULL
Especifica la encapsulación NULL.

NDIS_ENCAPSULATION_IEEE_802_3
Especifica la encapsulación IEEE 802.3.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
Especifica la encapsulación IEEE 802.3p y IEEE 802.3q.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
Especifica que la configuración de encapsulación IEEE 802.3p y IEEE 802.3q se especifica en el miembro NetBufferListInfo de cada estructura de NET_BUFFER_LIST.

NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Especifica la encapsulación del control de vínculos lógicos (LLC) para los protocolos enrutados, como se describe en RFC 1483. Esta marca también se usa para indicar la encapsulación Ethernet LLC/SNAP.

Los valores de los miembros TcpOptions e IpOptions de NDIS_TCP_LARGE_SEND_OFFLOAD_V1 especificar la compatibilidad con el adaptador de miniporte en . OID_TCP_OFFLOAD_CURRENT_CONFIG OID o NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicación de estado. Estos miembros pueden tener uno de los siguientes valores:

NDIS_OFFLOAD_NOT_SUPPORTED
El adaptador de minipuerto no admite la característica que especifica el miembro.

NDIS_OFFLOAD_SUPPORTED
El adaptador de minipuerto admite la característica que especifica el miembro.

Requisitos

Requisito Value
Cliente mínimo compatible Se admite en NDIS 6.0 y versiones posteriores.
Encabezado ntddndis.h (include Ndis.h)

Consulte también

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OFFLOAD

NDIS_OID_REQUEST

NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG NDIS_TCP_LARGE_SEND_OFFLOAD_V2

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG