NDIS_IPSEC_OFFLOAD_V2 struttura (ntddndis.h)
[La funzionalità Di offload attività IPsec è deprecata e non deve essere usata.]
La struttura NDIS_IPSEC_OFFLOAD_V2 fornisce informazioni sulle funzionalità di offload dell'attività internet (IPsec) versione 2 nella struttura di 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;
Members
Encapsulation
Tipi di incapsulamento MAC supportati per l'offload IPsec. Per altre informazioni su questo membro, vedere la sezione Osservazioni seguenti.
IPv6Supported
Valore BOOLEAN impostato su TRUE se l'elaborazione offload IPsec nel traffico IPv6 è supportata. In caso contrario, questo membro è FALSE.
IPv4Options
Valore BOOLEAN impostato su TRUE se la scheda di interfaccia di rete supporta l'offload IPsec dei 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 offload IPsec per i pacchetti con intestazioni di estensione IPv6 non IPsec oltre alle intestazioni di estensione 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 contenenti un payload di sicurezza di 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 contenenti 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 di invio e ricezione in modalità trasporto. 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 di invio e ricezione dei pacchetti. La parte in modalità tunnel di un pacchetto riguarda una connessione tunnel. In caso contrario, questo membro è FALSE.
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 di invio e ricezione di pacchetti. 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 un offload di invio di grandi dimensioni (LSO). In caso contrario, questo membro è FALSE. Si noti che le funzionalità LSO della scheda di interfaccia di rete vengono specificate nei membri LsoV1 o LsoV2 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 a cui è possibile analizzare la scheda di interfaccia di rete. Per una descrizione dei tipi di incapsulamento UDP, vedere Tipi di incapsulamento UDP-ESP. Questo membro può essere uno o più dei flag seguenti:
IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE
L'elaborazione offload IPsec non è disponibile per alcun 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 che è UDP-encapsulated. 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 che è UDP-encapsulated. La parte in modalità trasporto di un pacchetto non è udp-incapsulata 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 non incapsulato da UDP. La parte in modalità trasporto di un pacchetto è UDP-encapsulated e ESP-protected.
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 (Keyed Message Digest 5) 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 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 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 disattivati nella scheda di interfaccia di rete. TCP/IP gestisce un conteggio del numero di bundle SA caricati e non deve aggiungere più del numero massimo di bundle SA segnalati dal driver miniport.
Commenti
Nelle versioni successive e NDIS 6.1 viene usata la struttura NDIS_IPSEC_OFFLOAD_V2 nel membro IPsecV2della struttura NDIS_OFFLOAD. La struttura NDIS_IPSEC_OFFLOAD_V2 specifica le funzionalità correnti o supportate fornite da una scheda miniport per l'elaborazione di offload IPsec.
Per OID_TCP_OFFLOAD_CURRENT_CONFIG, la struttura NDIS_OFFLOAD specifica le funzionalità di offload attività supportate da una scheda 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 membro Encapsulation di NDIS_IPSEC_OFFLOAD_V2 definisce gli incapsulamenti MAC supportati da una scheda miniport per il 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 Encapsulation . I driver Miniport devono fornire 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 Incapsulation .
I flag seguenti sono definiti per il membro Encapsulation :
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato in NDIS 6.1 e versioni successive. |
Intestazione | ntddndis.h (include Ndis.h) |