Condividi tramite


struttura NDIS_IPSEC_OFFLOAD_V2 (ntddndis.h)

[La funzionalità Offload attività IPsec è deprecata e non deve essere usata.]

La struttura NDIS_IPSEC_OFFLOAD_V2 fornisce informazioni sulle funzionalità di offload delle attività IPsec (Internet Protocol Security) versione 2 nella struttura NDIS_OFFLOAD.

Sintassi

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;

Membri

Encapsulation

Tipi di incapsulamento MAC supportati per l'offload IPsec. Per altre informazioni su questo membro, vedere la sezione Osservazioni seguente.

IPv6Supported

Valore BOOLEAN impostato su TRUE se è supportata l'elaborazione dell'offload IPsec nel traffico IPv6. In caso contrario, questo membro è FALSE.

IPv4Options

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete supporta l'offload IPsec di pacchetti con opzioni IPv4. In caso contrario, questo membro è FALSE.

IPv6NonIPsecExtensionHeaders

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete supporta l'elaborazione dell'offload IPsec per i pacchetti con intestazioni di estensione IPv6 non IPsec oltre alle intestazioni IPsec. In caso contrario, questo membro è FALSE.

Ah

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete può eseguire operazioni di offload IPsec su invio e ricezione di pacchetti che contengono un payload di sicurezza dell'intestazione di autenticazione (AH). In caso contrario, questo membro è FALSE.

Esp

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete può eseguire operazioni di offload IPsec su invio e ricezione di pacchetti che contengono un payload di sicurezza incapsulante (ESP). In caso contrario, questo membro è FALSE.

AhEspCombined

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete può eseguire operazioni di offload IPsec su invio e ricezione di pacchetti che contengono sia un payload AH che un payload ESP. In caso contrario, questo membro è FALSE.

Transport

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete può elaborare i payload di sicurezza per la parte in modalità trasporto di pacchetti di invio e ricezione. La parte in modalità trasporto di un pacchetto riguarda una connessione end-to-end. In caso contrario, questo membro è FALSE.

Tunnel

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete può elaborare i payload di sicurezza per la parte in modalità tunnel dei pacchetti di invio e ricezione. La parte in modalità tunnel di un pacchetto riguarda una connessione tunnel. In caso contrario, questo membro è FALSE.

Nota Quando il livello IPsec invia pacchetti di tunnel su un'interfaccia di offload dell'attività IPsec, il livello IPsec garantisce che non venga usato offload di invio (LSO) di grandi dimensioni per tali pacchetti.
 

TransportTunnelCombined

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete può elaborare i payload di sicurezza sia per la parte in modalità trasporto che per la parte in modalità tunnel dei pacchetti di invio e ricezione. In caso contrario, questo membro è FALSE. La parte in modalità trasporto di un pacchetto riguarda una connessione end-to-end. La parte in modalità tunnel di un pacchetto riguarda una connessione tunnel.

LsoSupported

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete supporta l'offload di invio (LSO) di grandi dimensioni. In caso contrario, questo membro è FALSE. Si noti che le funzionalità LSO della scheda di interfaccia di rete vengono specificate nel LsoV1 o LsoV2 membri della struttura NDIS_OFFLOAD. Il flag LsoSupported indica che le funzionalità specificate in tali membri sono valide anche se la connessione è protetta con IPsec.

ExtendedSequenceNumbers

Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete supporta i numeri di sequenza estesi IPsec. In caso contrario, questo membro è FALSE.

UdpEsp

Tipi di pacchetti di dati ESP incapsulati da UDP che l'interfaccia di rete può analizzare. Per una descrizione dei tipi di incapsulamento UDP, vedere UDP-ESP Tipi di incapsulamento. Questo membro può essere uno o più dei flag seguenti:

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE

L'elaborazione offload IPsec non è disponibile per qualsiasi tipo di incapsulamento UDP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT

L'offload IPsec è supportato per un pacchetto incapsulato in modalità trasporto ESP incapsulato da UDP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TUNNEL

L'offload IPsec è supportato per la parte in modalità tunnel di un pacchetto incapsulato da UDP. La parte in modalità trasporto del pacchetto non è incapsulata da UDP e non è protetta da ESP.

IPSEC_OFFLOAD_V2_TRANSPORT_OVER_UDP_ESP_ENCAPSULATION_TUNNEL

L'offload IPsec è supportato per la parte in modalità tunnel di un pacchetto incapsulato da UDP. La parte in modalità trasporto di un pacchetto non è incapsulata da UDP, ma è protetta da ESP.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT_OVER_TUNNEL

L'offload IPsec è supportato per la parte in modalità tunnel di un pacchetto che non è incapsulato da UDP. La parte in modalità trasporto di un pacchetto è incapsulata da UDP e protetta da ESP.

AuthenticationAlgorithms

Maschera di bit che identifica gli algoritmi di autenticazione IPsec supportati dalla scheda di interfaccia di rete. I driver Miniport specificano un OR bit per bit dei valori seguenti:

IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5

La scheda di interfaccia di rete può usare l'algoritmo MD5 (Message Digest 5) con chiave per il calcolo o la convalida di un checksum crittografico.

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1

La scheda di interfaccia di rete può usare l'algoritmo SHA (Secure Hash Algorithm) 1 per il calcolo o la convalida di un checksum crittografico.

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256

La scheda di interfaccia di rete può usare l'algoritmo SHA 256 per il calcolo o la convalida di un checksum crittografico.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128

La scheda di interfaccia di rete può usare l'algoritmo Advanced Encryption Standard - Galois/Counter Mode (AES-GMAC) 128 per il calcolo o la convalida di un checksum crittografico.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192

La scheda di interfaccia di rete può usare l'algoritmo AES-GMAC 192 per il calcolo o la convalida di un checksum crittografico.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256

La scheda di interfaccia di rete può usare l'algoritmo AES-GMAC 256 per il calcolo o la convalida di un checksum crittografico.

EncryptionAlgorithms

Maschera di bit che identifica gli algoritmi di crittografia IPsec supportati dalla scheda di interfaccia di rete. Questa maschera di bit è un OR bit per bit dei valori seguenti:

IPSEC_OFFLOAD_V2_ENCRYPTION_NONE

La scheda di interfaccia di rete può usare la crittografia Null, ovvero il payload ESP senza crittografia, ma con informazioni di autenticazione.

IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC

La scheda di interfaccia di rete può usare l'algoritmo DES per crittografare e decrittografare i payload ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC

La scheda di interfaccia di rete può usare l'algoritmo triple-DES per crittografare e decrittografare i payload ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128

La scheda di interfaccia di rete può usare l'algoritmo AES-GCM 128 per crittografare e calcolare un checksum crittografico o decrittografare e convalidare un checksum crittografico per un payload ESP. Si noti che questo algoritmo è un algoritmo in modalità combinata.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192

La scheda di interfaccia di rete può usare l'algoritmo AES-GCM 192 per crittografare e calcolare un checksum crittografico o decrittografare e convalidare un checksum crittografico per un payload ESP. Si noti che questo algoritmo è un algoritmo in modalità combinata.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256

La scheda di interfaccia di rete può usare l'algoritmo AES-GCM 256 per crittografare e calcolare un checksum crittografico o decrittografare e convalidare un checksum crittografico per un payload ESP. Si noti che questo algoritmo è un algoritmo in modalità combinata.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128

La scheda di interfaccia di rete può usare l'algoritmo Advanced Encryption Standard - cipher-block chaining (AES-CBC) 128 per crittografare e decrittografare i payload ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192

La scheda di interfaccia di rete può usare l'algoritmo AES-CBC 192 per crittografare e decrittografare i payload ESP.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256

La scheda di interfaccia di rete può usare l'algoritmo AES-CBC 256 per crittografare e decrittografare i payload ESP.

SaOffloadCapacity

Numero di bundle SA, che possono includere ESP o AH o entrambi, che possono essere scaricati nella scheda di interfaccia di rete. TCP/IP gestisce un conteggio del numero di bundle SA offloaded e non deve aggiungere più del numero massimo di bundle SA segnalati dal driver miniport.

Osservazioni

In NDIS 6.1 e versioni successive, la struttura NDIS_IPSEC_OFFLOAD_V2 viene usata nel membro IPsecV2 della struttura NDIS_OFFLOAD. La struttura NDIS_IPSEC_OFFLOAD_V2 specifica le funzionalità correnti o supportate fornite da un adattatore miniport per l'elaborazione dell'offload IPsec.

Nota Per supportare l'offload delle attività IPsec, il driver miniport deve specificare TRUE nel membro tunnel.
 
NDIS_OFFLOAD viene usato nel struttura NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES, struttura NDIS_BIND_PARAMETERS, NDIS_FILTER_ATTACH_PARAMETERS struttura, OID_TCP_OFFLOAD_CURRENT_CONFIG OID e NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicazione dello stato.

Per OID_TCP_OFFLOAD_CURRENT_CONFIG, la struttura NDIS_OFFLOAD specifica le funzionalità di offload delle attività supportate da un adattatore miniport. Se le funzionalità di offload correnti cambiano, un driver miniport segnala le nuove funzionalità in un NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG indicazione dello stato.

Il Encapsulation membro di NDIS_IPSEC_OFFLOAD_V2 definisce gli incapsulamenti MAC supportati da un adattatore miniport per l'offload IPsec.

In risposta a un OID_TCP_OFFLOAD_CURRENT_CONFIG richiesta di query, NDIS fornisce un OR bit per bit dei flag di incapsulamento, che indicano le impostazioni di incapsulamento supportate, nel membro incapsulamento. I driver Miniport devono fornire l'incapsulamento Ethernet (NDIS_ENCAPSULATION_IEEE_802_3). Gli altri tipi di incapsulamento sono facoltativi.

Per un oggetto NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG'indicazione dello stato, il driver miniport fornisce un OR bit per bit dei flag di incapsulamento, che indicano le funzionalità correnti, nel membro incapsulamento.

I flag seguenti sono definiti per il membro incapsulamento:

Fabbisogno

Requisito Valore
client minimo supportato Supportato in NDIS 6.1 e versioni successive.
intestazione ntddndis.h (include Ndis.h)

Vedere anche

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