Compartilhar via


NDIS_TCP_LARGE_SEND_OFFLOAD_V1 estrutura (ntddndis.h)

A estrutura NDIS_TCP_LARGE_SEND_OFFLOAD_V1 fornece informações de LSOV1 (versão de descarregamento de envio grande) na estrutura NDIS_OFFLOAD.

Sintaxe

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;

Membros

IPv4

Uma estrutura dentro NDIS_TCP_LARGE_SEND_OFFLOAD_V1 que contém os seguintes membros:

IPv4.Encapsulation

Configurações de encapsulamento para IPv4. Para obter mais informações sobre esse membro, consulte a seção Comentários a seguir.

IPv4.MaxOffLoadSize

Os bytes máximos de dados do usuário que o transporte pode passar para o driver de miniporto em um único pacote. O transporte não passará um pacote para o driver de miniporto que contém mais bytes de dados do usuário do que MaxOffLoadSize especifica. Se esse pacote precisar ser transmitido, o transporte em si segmenta o pacote em pacotes menores.

IPv4.MinSegmentCount

O número mínimo de segmentos pelos quais um pacote TCP grande deve ser divisível antes que o transporte possa descarregá-lo para o hardware para segmentação. O transporte não descarregará um pacote grande para o driver de miniporto para segmentação, a menos que o driver de miniporto possa criar pelo menos tantos segmentos quanto MinSegmentCount especifica do pacote. Se um pacote TCP grande não atender ao requisito mínimo de segmento, o transporte TCP/IP em si segmenta o pacote em pacotes menores.

IPv4.TcpOptions

Um valor ULONG que um driver de miniporto define para indicar que o driver de miniporto pode segmentar um pacote TCP grande cujo cabeçalho TCP contém opções TCP ou indicar que essa funcionalidade está habilitada ou desabilitada. O transporte TCP/IP define esse valor para habilitar ou desabilitar essa funcionalidade.

IPv4.IpOptions

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporto pode segmentar um pacote TCP grande cujo cabeçalho IP contém opções de IP ou indicar que essa funcionalidade está habilitada ou desabilitada.

Observações

A estrutura NDIS_TCP_LARGE_SEND_OFFLOAD_V1 é usada no membro LsoV1 da estrutura NDIS_OFFLOAD. NDIS_TCP_LARGE_SEND_OFFLOAD_V1 especifica serviços atuais ou compatíveis que um adaptador de miniporto fornece para segmentar pacotes TCP grandes em pacotes menores. O NDIS também fornece um grande descarregamento de envio versão 2 (LSOV2), que é uma versão aprimorada do LSO. Para obter mais informações sobre LSOV2, consulte NDIS_TCP_LARGE_SEND_OFFLOAD_V2.

NDIS_OFFLOAD é usado no estrutura NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES, estrutura NDIS_BIND_PARAMETERS, NDIS_FILTER_ATTACH_PARAMETERS estrutura, OID_TCP_OFFLOAD_CURRENT_CONFIG OID e o NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicação de status.

Para OID_TCP_OFFLOAD_CURRENT_CONFIG, a estrutura de NDIS_OFFLOAD especifica os recursos de descarregamento de tarefas compatíveis com um adaptador de miniporto. Se os recursos de descarregamento atuais forem alterados, um driver de miniporto relatará os novos recursos em um NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicação de status.

O membro de encapsulamento de NDIS_TCP_LARGE_SEND_OFFLOAD_V1 define as funcionalidades ou configurações de encapsulamento LSOV1 para o adaptador de miniporto.

Em resposta a um OID_TCP_OFFLOAD_CURRENT_CONFIG solicitação de consulta, o NDIS fornece um OR bit a bit dos sinalizadores de encapsulamento, que indicam as configurações de encapsulamento com suporte, no membro de Encapsulamento. Os drivers de miniporto devem fornecer encapsulamento Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Os outros tipos de encapsulamento são opcionais.

Para um NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicação de status, o driver de miniporto fornece um OR bit a bit dos sinalizadores de encapsulamento, que indicam os recursos atuais, no membro Encapsulamento.

Os seguintes sinalizadores são definidos para o membro de Encapsulamento:

NDIS_ENCAPSULATION_NONE ou NDIS_ENCAPSULATION_NOT_SUPPORTED
Especifica que não há suporte para descarregamento de encapsulamento.

NDIS_ENCAPSULATION_NULL
Especifica o encapsulamento NULL.

NDIS_ENCAPSULATION_IEEE_802_3
Especifica o encapsulamento IEEE 802.3.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
Especifica o encapsulamento IEEE 802.3p e IEEE 802.3q.

NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
Especifica que as configurações de encapsulamento IEEE 802.3p e IEEE 802.3q são especificadas no membro NetBufferListInfo de cada estrutura NET_BUFFER_LIST.

NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
Especifica o encapsulamento llc (controle de vínculo lógico) para protocolos roteados, conforme descrito no RFC 1483. Esse sinalizador também é usado para indicar o encapsulamento Ethernet LLC/SNAP.

Os valores no TcpOptions e IpOptions membros do NDIS_TCP_LARGE_SEND_OFFLOAD_V1 especificar o suporte ao adaptador de miniporto no OID_TCP_OFFLOAD_CURRENT_CONFIG OID ou o NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicação de status. Esses membros podem ter um dos seguintes valores:

NDIS_OFFLOAD_NOT_SUPPORTED
O adaptador de miniporto não dá suporte ao recurso especificado pelo membro.

NDIS_OFFLOAD_SUPPORTED
O adaptador de miniporto dá suporte ao recurso especificado pelo membro

Requisitos

Requisito Valor
de cliente com suporte mínimo Com suporte no NDIS 6.0 e posterior.
cabeçalho ntddndis.h (inclua Ndis.h)

Consulte também

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