estrutura NDIS_IPSEC_OFFLOAD_V2 (ntddndis.h)

[O recurso de descarregamento de tarefa IPsec foi preterido e não deve ser usado.]

A estrutura NDIS_IPSEC_OFFLOAD_V2 fornece informações sobre os recursos de descarregamento de tarefa IPsec (segurança de protocolo de Internet) versão 2 na estrutura NDIS_OFFLOAD .

Sintaxe

typedef struct _NDIS_IPSEC_OFFLOAD_V2 {
  ULONG   Encapsulation;
  BOOLEAN IPv6Supported;
  BOOLEAN IPv4Options;
  BOOLEAN IPv6NonIPsecExtensionHeaders;
  BOOLEAN Ah;
  BOOLEAN Esp;
  BOOLEAN AhEspCombined;
  BOOLEAN Transport;
  BOOLEAN Tunnel;
  BOOLEAN TransportTunnelCombined;
  BOOLEAN LsoSupported;
  BOOLEAN ExtendedSequenceNumbers;
  ULONG   UdpEsp;
  ULONG   AuthenticationAlgorithms;
  ULONG   EncryptionAlgorithms;
  ULONG   SaOffloadCapacity;
} NDIS_IPSEC_OFFLOAD_V2, *PNDIS_IPSEC_OFFLOAD_V2;

Membros

Encapsulation

Os tipos de encapsulamento MAC com suporte para descarregamento IPsec. Para obter mais informações sobre esse membro, consulte a seção Comentários a seguir.

IPv6Supported

Um valor BOOLEAN definido como TRUE se houver suporte para o processamento de descarregamento IPsec no tráfego IPv6. Caso contrário, esse membro será FALSE.

IPv4Options

Um valor BOOLEAN definido como TRUE se a NIC der suporte ao descarregamento IPsec de pacotes com opções IPv4. Caso contrário, esse membro será FALSE.

IPv6NonIPsecExtensionHeaders

Um valor BOOLEAN definido como TRUE se a NIC der suporte ao processamento de descarregamento IPsec para pacotes com cabeçalhos de extensão IPv6 não IPsec, além de cabeçalhos IPsec. Caso contrário, esse membro será FALSE.

Ah

Um valor BOOLEAN definido como TRUE se a NIC puder executar operações de descarregamento IPsec em pacotes de envio e recebimento que contenham um conteúdo de segurança de cabeçalho de autenticação (AH). Caso contrário, esse membro será FALSE.

Esp

Um valor BOOLEAN definido como TRUE se a NIC puder executar operações de descarregamento IPsec em pacotes de envio e recebimento que contenham uma ESP (carga de segurança de encapsulamento). Caso contrário, esse membro será FALSE.

AhEspCombined

Um valor BOOLEAN definido como TRUE se a NIC puder executar operações de descarregamento IPsec em pacotes de envio e recebimento que contenham uma carga AH e um conteúdo ESP. Caso contrário, esse membro será FALSE.

Transport

Um valor BOOLEAN definido como TRUE se a NIC puder processar cargas de segurança para a parte do modo de transporte dos pacotes de envio e recebimento. (A parte do modo de transporte de um pacote pertence a uma conexão de ponta a ponta.) Caso contrário, esse membro será FALSE.

Tunnel

Um valor BOOLEAN definido como TRUE se a NIC puder processar cargas de segurança para a parte do modo de túnel dos pacotes de envio e recebimento. (A parte do modo de túnel de um pacote pertence a uma conexão de túnel.) Caso contrário, esse membro será FALSE.

Nota Quando a camada IPsec envia pacotes de túnel por uma interface de descarregamento de tarefa IPsec, a camada IPsec garante que o LSO (descarregamento de envio grande) não seja usado para esses pacotes.
 

TransportTunnelCombined

Um valor BOOLEAN definido como TRUE se a NIC puder processar cargas de segurança para a parte do modo de transporte e a parte do modo de túnel dos pacotes de envio e recebimento. Caso contrário, esse membro será FALSE. A parte do modo de transporte de um pacote pertence a uma conexão de ponta a ponta. A parte do modo de túnel de um pacote pertence a uma conexão de túnel.

LsoSupported

Um valor BOOLEAN definido como TRUE se a NIC der suporte ao LSO (descarregamento de envio grande). Caso contrário, esse membro será FALSE. Observe que os recursos de LSO da NIC são especificados nos membros LsoV1 ou LsoV2 da estrutura NDIS_OFFLOAD . O sinalizador LsoSupported indica que os recursos especificados nesses membros também serão válidos se a conexão for protegida com IPsec.

ExtendedSequenceNumbers

Um valor BOOLEAN definido como TRUE se a NIC der suporte a números de sequência estendidos IPsec. Caso contrário, esse membro será FALSE.

UdpEsp

Os tipos de pacotes de dados ESP encapsulados por UDP que a NIC pode analisar. Para obter uma descrição dos tipos de encapsulamento UDP, consulte Tipos de encapsulamento UDP-ESP. Esse membro pode ser um ou mais dos seguintes sinalizadores:

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE

O processamento de descarregamento IPsec não está disponível para nenhum tipo de encapsulamento UDP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT

O descarregamento IPsec tem suporte para um pacote de modo de transporte encapsulado por ESP encapsulado pelo UDP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TUNNEL

O descarregamento IPsec é compatível com a parte do modo de túnel de um pacote encapsulado por UDP. A parte do modo de transporte do pacote não é encapsulada por UDP e não é protegida por ESP.

IPSEC_OFFLOAD_V2_TRANSPORT_OVER_UDP_ESP_ENCAPSULATION_TUNNEL

O descarregamento IPsec é compatível com a parte do modo de túnel de um pacote encapsulado por UDP. A parte do modo de transporte de um pacote não é encapsulada por UDP, mas é protegida por ESP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT_OVER_TUNNEL

O descarregamento IPsec é compatível com a parte do modo de túnel de um pacote que não é encapsulado por UDP. A parte do modo de transporte de um pacote é encapsulada por UDP e protegida por ESP.

AuthenticationAlgorithms

Uma máscara de bits que identifica os algoritmos de autenticação IPsec aos quais a NIC dá suporte. Os drivers de miniporto especificam um OR bit a bit dos seguintes valores:

IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5

A NIC pode usar o algoritmo MD5 (resumo da mensagem chave 5) para computação ou validação de uma soma de verificação criptográfica.

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1

A NIC pode usar o algoritmo SHA 1 (algoritmo de hash seguro) para computação ou validação de uma soma de verificação criptográfica.

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256

A NIC pode usar o algoritmo SHA 256 para computação ou validação de uma soma de verificação criptográfica.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128

A NIC pode usar o algoritmo AES-GMAC (Advanced Encryption Standard - Galois/Counter Mode) 128 para computação ou validação de uma soma de verificação criptográfica.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192

A NIC pode usar o algoritmo AES-GMAC 192 para computação ou validação de uma soma de verificação criptográfica.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256

A NIC pode usar o algoritmo AES-GMAC 256 para computação ou validação de uma soma de verificação criptográfica.

EncryptionAlgorithms

Uma máscara de bits que identifica os algoritmos de criptografia IPsec aos quais a NIC dá suporte. Essa máscara de bits é um OR bit a bit dos seguintes valores:

IPSEC_OFFLOAD_V2_ENCRYPTION_NONE

A NIC pode usar a criptografia nula, ou seja, o conteúdo ESP sem criptografia, mas com informações de autenticação.

IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC

A NIC pode usar o algoritmo DES para criptografar e descriptografar cargas ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC

A NIC pode usar o algoritmo de DES triplo para criptografar e descriptografar cargas ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128

A NIC pode usar o algoritmo AES-GCM 128 para criptografar e calcular uma soma de verificação criptográfica ou descriptografar e validar uma soma de verificação criptográfica para uma carga ESP. Observe que esse algoritmo é um algoritmo de modo combinado.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192

A NIC pode usar o algoritmo AES-GCM 192 para criptografar e calcular uma soma de verificação criptográfica ou descriptografar e validar uma soma de verificação criptográfica para uma carga ESP. Observe que esse algoritmo é um algoritmo de modo combinado.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256

A NIC pode usar o algoritmo AES-GCM 256 para criptografar e calcular uma soma de verificação criptográfica ou descriptografar e validar uma soma de verificação criptográfica para uma carga ESP. Observe que esse algoritmo é um algoritmo de modo combinado.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128

A NIC pode usar o algoritmo AES-CBC 128 (Advanced Encryption Standard - cipher-block chaining mode) para criptografar e descriptografar cargas ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192

A NIC pode usar o algoritmo AES-CBC 192 para criptografar e descriptografar cargas ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256

A NIC pode usar o algoritmo AES-CBC 256 para criptografar e descriptografar cargas ESP.

SaOffloadCapacity

O número de pacotes SA, que podem incluir ESP ou AH ou ambos, que podem ser descarregados para a NIC. O TCP/IP mantém uma contagem do número de pacotes SA descarregados e não deve adicionar mais do que o número máximo de pacotes SA relatados pelo driver de miniporto.

Comentários

No NDIS 6.1 e versões posteriores, a estrutura NDIS_IPSEC_OFFLOAD_V2 é usada no membro IPsecV2 da estrutura NDIS_OFFLOAD . A estrutura NDIS_IPSEC_OFFLOAD_V2 especifica os recursos atuais ou com suporte que um adaptador de miniporto fornece para processamento de descarregamento IPsec.

Nota Para dar suporte ao descarregamento de tarefas IPsec, o driver de miniporto deve especificar TRUE no membro Tunnel .
 
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 miniporto relatará os novos recursos em um NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicação status.

O membro encapsulamento do NDIS_IPSEC_OFFLOAD_V2 define os encapsulamentos MAC aos quais um adaptador de miniporto dá suporte para descarregamento IPsec.

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 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, no membro Encapsulamento.

Os seguintes sinalizadores são definidos para o membro encapsulamento :

Requisitos

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

Confira também

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_IPSEC_OFFLOAD_V1

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OFFLOAD

NDIS_OID_REQUEST

NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG