Compartilhar via


estrutura NDIS_TCP_IP_CHECKSUM_OFFLOAD (ntddndis.h)

A estrutura NDIS_TCP_IP_CHECKSUM_OFFLOAD fornece informações de descarregamento de tarefa de soma de verificação na estrutura NDIS_OFFLOAD .

Sintaxe

typedef struct _NDIS_TCP_IP_CHECKSUM_OFFLOAD {
  struct {
    ULONG Encapsulation;
    ULONG IpOptionsSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
    ULONG IpChecksum : 2;
  } IPv4Transmit;
  struct {
    ULONG Encapsulation;
    ULONG IpOptionsSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
    ULONG IpChecksum : 2;
  } IPv4Receive;
  struct {
    ULONG Encapsulation;
    ULONG IpExtensionHeadersSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
  } IPv6Transmit;
  struct {
    ULONG Encapsulation;
    ULONG IpExtensionHeadersSupported : 2;
    ULONG TcpOptionsSupported : 2;
    ULONG TcpChecksum : 2;
    ULONG UdpChecksum : 2;
  } IPv6Receive;
} NDIS_TCP_IP_CHECKSUM_OFFLOAD, *PNDIS_TCP_IP_CHECKSUM_OFFLOAD;

Membros

IPv4Transmit

Uma estrutura dentro NDIS_TCP_IP_CHECKSUM_OFFLOAD que especifica informações de transmissão IPv4 e que contém os seguintes membros:

IPv4Transmit.Encapsulation

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

IPv4Transmit.IpOptionsSupported

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação de IP para um pacote de envio IPv4 que contém opções de IP ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Transmit.TcpOptionsSupported

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporto pode calcular uma soma de verificação TCP para um pacote de envio IPv4 que contém opções TCP ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Transmit.TcpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação TCP para um pacote de envio IPv4. O transporte TCP/IP define esse valor para habilitar essa funcionalidade ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Transmit.UdpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação UDP para um pacote de envio IPv4 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Transmit.IpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação de IP para um pacote de envio IPv4 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Receive

Uma estrutura dentro de NDIS_TCP_IP_CHECKSUM_OFFLOAD que especifica as informações de recebimento IPv4 e que contém os seguintes membros:

IPv4Receive.Encapsulation

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

IPv4Receive.IpOptionsSupported

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporto pode validar uma soma de verificação de IP para um pacote de recebimento IPv4 que contém opções de IP ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Receive.TcpOptionsSupported

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação TCP para um pacote de recebimento IPv4 que contém opções TCP ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Receive.TcpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode validar a soma de verificação TCP para um pacote de recebimento IPv4 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Receive.UdpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporto pode validar a soma de verificação UDP de um pacote de recebimento IPv4 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv4Receive.IpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode validar uma soma de verificação de IP para um pacote de recebimento IPv4 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv6Transmit

Uma estrutura dentro de NDIS_TCP_IP_CHECKSUM_OFFLOAD que especifica informações de transmissão IPv6 e que contém os seguintes membros:

IPv6Transmit.Encapsulation

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

IPv6Transmit.IpExtensionHeadersSupported

Um valor ULONG que um driver de miniporto define para indicar que o adaptador de miniport pode calcular somas de verificação em pacotes IPv6 que contêm cabeçalhos de extensão.

IPv6Transmit.TcpOptionsSupported

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação TCP para um pacote de envio IPv6 que contém opções TCP ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv6Transmit.TcpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação TCP para um pacote de envio IPv6 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv6Transmit.UdpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação UDP para um pacote de envio IPv6 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv6Receive

Uma estrutura dentro de NDIS_TCP_IP_CHECKSUM_OFFLOAD que especifica as informações de recebimento do IPv6 e que contém os seguintes membros:

IPv6Receive.Encapsulation

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

IPv6Receive.IpExtensionHeadersSupported

Um valor ULONG que um driver de miniporto define para indicar que o adaptador de miniporta pode validar somas de verificação em pacotes IPv6 que contêm cabeçalhos de extensão.

IPv6Receive.TcpOptionsSupported

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode calcular uma soma de verificação para um pacote de recebimento IPv6 cujo cabeçalho TCP contém opções TCP ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv6Receive.TcpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporto pode validar uma soma de verificação TCP de um pacote de recebimento IPv6 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

IPv6Receive.UdpChecksum

Um valor ULONG que um driver de miniporto define para indicar que um adaptador de miniporta pode validar uma soma de verificação UDP para um pacote de recebimento IPv6 ou para indicar que essa funcionalidade está habilitada ou desabilitada.

Comentários

A estrutura NDIS_TCP_IP_CHECKSUM_OFFLOAD é usada no membro Checksum da estrutura NDIS_OFFLOAD . A estrutura NDIS_TCP_IP_CHECKSUM_OFFLOAD especifica os serviços atuais ou com suporte que um adaptador de miniporta fornece para calcular somas de verificação de IP, TCP ou UDP (ou todas elas) para enviar pacotes e validar essas somas de verificação para pacotes de recebimento.

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 status.

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

Os membros de encapsulamento do NDIS_TCP_IP_CHECKSUM_OFFLOAD definem as configurações de encapsulamento de descarregamento de soma de verificação para o adaptador de miniporta.

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, em cada um dos membros 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 status, o driver de miniporto fornece um OR bit a bit dos sinalizadores de encapsulamento, que indicam os recursos atuais, em cada um dos membros de Encapsulamento.

Os seguintes sinalizadores são definidos para os membros de encapsulamento :

  • NDIS_ENCAPSULATION_NOT_SUPPORTED
    Especifica que não há suporte para nenhum 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 de LLC (controle de link lógico) para protocolos roteados, conforme descrito em RFC 1483. Esse sinalizador também é usado para indicar o encapsulamento Ethernet LLC/SNAP.

O significado dos valores nos membros IpOptionsSupported, TcpOptionsSupported, IpExtensionHeadersSupported, TcpChecksum, UdpChecksum e IpChecksum de NDIS_TCP_IP_CHECKSUM_OFFLOAD depende de qual indicação OID ou status inclui a estrutura de descarregamento de tarefas. Esses membros podem ter um dos seguintes valores:

Requisitos

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

Confira 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

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG