Freigeben über


NDIS_IPSEC_OFFLOAD_V2 Struktur (ntddndis.h)

[Das Offload-Feature für IPsec-Aufgaben ist veraltet und sollte nicht verwendet werden.]

Die NDIS_IPSEC_OFFLOAD_V2-Struktur enthält Informationen zur Internetprotokollsicherheit (IPsec) Version 2 der Aufgaben offload-Funktionen in der NDIS_OFFLOAD-Struktur.

Syntax

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;

Angehörige

Encapsulation

Die MAC-Kapselungstypen, die für das Offload von IPsec unterstützt werden. Weitere Informationen zu diesem Mitglied finden Sie im folgenden Abschnitt "Hinweise".

IPv6Supported

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die IPsec-Offloadverarbeitung für IPv6-Datenverkehr unterstützt wird. Andernfalls ist dieses Element FALSE.

IPv4Options

Ein BOOLESCHER Wert, der auf TRUE- festgelegt ist, wenn die NIC IPsec-Offload von Paketen mit IPv4-Optionen unterstützt. Andernfalls ist dieses Element FALSE.

IPv6NonIPsecExtensionHeaders

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC die IPsec-Offloadverarbeitung für Pakete mit Nicht-IPsec-IPv6-Erweiterungsheadern zusätzlich zu IPsec-Headern unterstützt. Andernfalls ist dieses Element FALSE.

Ah

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC IPsec-Offloadvorgänge beim Senden und Empfangen von Paketen ausführen kann, die eine Authentifizierungsheader-Sicherheitsnutzlast (AH) enthalten. Andernfalls ist dieses Element FALSE.

Esp

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC IPsec-Offloadvorgänge beim Senden und Empfangen von Paketen ausführen kann, die eine Kapselung der Sicherheitsnutzlast (ESP) enthalten. Andernfalls ist dieses Element FALSE.

AhEspCombined

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC IPsec-Offloadvorgänge beim Senden und Empfangen von Paketen ausführen kann, die sowohl eine AH-Nutzlast als auch eine ESP-Nutzlast enthalten. Andernfalls ist dieses Element FALSE.

Transport

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC Sicherheitsnutzlasten für den Transportmodusteil des Sendens und Empfangens von Paketen verarbeiten kann. (Der Transportmodusteil eines Pakets bezieht sich auf eine End-to-End-Verbindung.) Andernfalls ist dieses Element FALSE.

Tunnel

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC Sicherheitsnutzlasten für den Tunnelmodusteil des Sendens und Empfangens von Paketen verarbeiten kann. (Der Tunnelmodusteil eines Pakets bezieht sich auf eine Tunnelverbindung.) Andernfalls ist dieses Element FALSE.

Hinweis Wenn die IPsec-Ebene Tunnelpakete über eine IPsec-Task offload-Schnittstelle sendet, stellt die IPsec-Ebene sicher, dass große Sende offload (LSO) für diese Pakete nicht verwendet wird.
 

TransportTunnelCombined

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC Sicherheitsnutzlasten sowohl für den Transportmodusteil als auch für den Tunnelmodusteil des Sende- und Empfangspakets verarbeiten kann. Andernfalls ist dieses Element FALSE. Der Transportmodusteil eines Pakets bezieht sich auf eine End-to-End-Verbindung. Der Tunnelmodusteil eines Pakets bezieht sich auf eine Tunnelverbindung.

LsoSupported

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC große Sende offload (LSO) unterstützt. Andernfalls ist dieses Element FALSE. Beachten Sie, dass die LSO-Funktionen der NIC im LsoV1 oder LsoV2- Member der NDIS_OFFLOAD Struktur angegeben werden. Das LsoSupported Flag gibt an, dass die in diesen Membern angegebenen Funktionen auch gültig sind, wenn die Verbindung mit IPsec gesichert ist.

ExtendedSequenceNumbers

Ein BOOLESCHER Wert, der auf TRUE festgelegt ist, wenn die NIC erweiterte Sequenznummern von IPsec unterstützt. Andernfalls ist dieses Element FALSE.

UdpEsp

Die Typen von UDP-gekapselten ESP-Datenpaketen, die die NIC analysieren kann. Eine Beschreibung der UDP-Kapselungstypen finden Sie unter UDP-ESP Kapselungstypen. Dieses Element kann eine oder mehrere der folgenden Flags sein:

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE

Die IPsec-Offloadverarbeitung steht für keinen UDP-Kapselungstyp zur Verfügung.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT

IPsec-Offload wird für ein ESP-gekapseltes Transportmoduspaket unterstützt, das von UDP gekapselt wird.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TUNNEL

IPsec-Offload wird für den Tunnelmodusteil eines Pakets unterstützt, das UDP-gekapselt ist. Der Transportmodusteil des Pakets ist nicht UDP-gekapselt und nicht ESP-geschützt.

IPSEC_OFFLOAD_V2_TRANSPORT_OVER_UDP_ESP_ENCAPSULATION_TUNNEL

IPsec-Offload wird für den Tunnelmodusteil eines Pakets unterstützt, das UDP-gekapselt ist. Der Transportmodusteil eines Pakets ist nicht UDP-gekapselt, sondern ESP-geschützt.

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT_OVER_TUNNEL

IPsec-Offload wird für den Tunnelmodusteil eines Pakets unterstützt, das nicht UDP-gekapselt ist. Der Transportmodusteil eines Pakets ist UDP-gekapselt und ESP-geschützt.

AuthenticationAlgorithms

Eine Bitmaske, die die von der NIC unterstützten IPsec-Authentifizierungsalgorithmen identifiziert. Miniport-Treiber geben einen bitweisen OR der folgenden Werte an:

IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5

Die NIC kann den Md5-Algorithmus (Keyed Message Digest 5) zum Berechnen oder Validieren einer kryptografischen Prüfsumme verwenden.

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1

Die NIC kann den Algorithmus für den sicheren Hashalgorithmus (SHA) 1 zum Berechnen oder Validieren einer kryptografischen Prüfsumme verwenden.

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256

Die NIC kann den SHA 256-Algorithmus zum Berechnen oder Validieren einer kryptografischen Prüfsumme verwenden.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128

Die NIC kann den Advanced Encryption Standard - Galois/Counter Mode (AES-GMAC) 128 Algorithmus zum Berechnen oder Validieren einer kryptografischen Prüfsumme verwenden.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192

Die NIC kann den AES-GMAC 192-Algorithmus zum Berechnen oder Validieren einer kryptografischen Prüfsumme verwenden.

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256

Die NIC kann den AES-GMAC 256-Algorithmus zum Berechnen oder Validieren einer kryptografischen Prüfsumme verwenden.

EncryptionAlgorithms

Eine Bitmaske, die die von der NIC unterstützten IPsec-Verschlüsselungsalgorithmen identifiziert. Diese Bitmaske ist ein bitweiser OR der folgenden Werte:

IPSEC_OFFLOAD_V2_ENCRYPTION_NONE

Die NIC kann null-Verschlüsselung verwenden, d. h. die ESP-Nutzlast ohne Verschlüsselung, aber mit Authentifizierungsinformationen.

IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC

Die NIC kann den DES-Algorithmus zum Verschlüsseln und Entschlüsseln von ESP-Nutzlasten verwenden.

IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC

Die NIC kann den Dreifach-DES-Algorithmus zum Verschlüsseln und Entschlüsseln von ESP-Nutzlasten verwenden.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128

Die NIC kann den AES-GCM 128-Algorithmus verwenden, um eine kryptografische Prüfsumme zu verschlüsseln und zu berechnen oder eine kryptografische Prüfsumme für eine ESP-Nutzlast zu validieren und zu validieren. Beachten Sie, dass dieser Algorithmus ein Kombinierter Modusalgorithmus ist.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192

Die NIC kann den AES-GCM 192-Algorithmus verwenden, um eine kryptografische Prüfsumme zu verschlüsseln und zu berechnen oder eine kryptografische Prüfsumme für eine ESP-Nutzlast zu validieren und zu validieren. Beachten Sie, dass dieser Algorithmus ein Kombinierter Modusalgorithmus ist.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256

Die NIC kann den AES-GCM 256-Algorithmus verwenden, um eine kryptografische Prüfsumme zu verschlüsseln und zu berechnen oder eine kryptografische Prüfsumme für eine ESP-Nutzlast zu validieren und zu validieren. Beachten Sie, dass dieser Algorithmus ein Kombinierter Modusalgorithmus ist.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128

Die NIC kann den Advanced Encryption Standard - Chiffre-Blockverkettungsmodus (AES-CBC) 128 Algorithmus zum Verschlüsseln und Entschlüsseln von ESP-Nutzlasten verwenden.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192

Die NIC kann den AES-CBC 192-Algorithmus zum Verschlüsseln und Entschlüsseln von ESP-Nutzlasten verwenden.

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256

Die NIC kann den AES-CBC 256-Algorithmus zum Verschlüsseln und Entschlüsseln von ESP-Nutzlasten verwenden.

SaOffloadCapacity

Die Anzahl der SA-Bündel, die ESP oder AH oder beide enthalten können, die in die NIC entladen werden können. Die TCP/IP verwaltet eine Anzahl der geladenen SA-Bündel und sollte nicht mehr als die maximale Anzahl von SA-Bündeln hinzufügen, die der Miniporttreiber gemeldet hat.

Bemerkungen

In NDIS 6.1 und höheren Versionen wird die NDIS_IPSEC_OFFLOAD_V2 Struktur im IPsecV2 Member der NDIS_OFFLOAD-Struktur verwendet. Die NDIS_IPSEC_OFFLOAD_V2 Struktur gibt die aktuellen oder unterstützten Funktionen an, die ein Miniportadapter für die IPsec-Offloadverarbeitung bereitstellt.

Hinweis Um das Offload von IPsec-Aufgaben zu unterstützen, muss der Miniporttreiber TRUE- im Member Tunnel angeben.
 
NDIS_OFFLOAD wird in der NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES Struktur, NDIS_BIND_PARAMETERS Struktur, NDIS_FILTER_ATTACH_PARAMETERS Struktur, OID_TCP_OFFLOAD_CURRENT_CONFIG OID und die NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG Statusanzeige.

Für OID_TCP_OFFLOAD_CURRENT_CONFIGgibt die NDIS_OFFLOAD-Struktur die Aufgaben offload-Funktionen an, die ein Miniportadapter unterstützt. Wenn sich die aktuellen Offload-Funktionen ändern, meldet ein Miniporttreiber die neuen Funktionen in einem NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG Statusanzeige.

Die Kapselung Member von NDIS_IPSEC_OFFLOAD_V2 definiert die MAC-Kapselungen, die ein Miniportadapter für IPsec offload unterstützt.

Als Reaktion auf eine OID_TCP_OFFLOAD_CURRENT_CONFIG Abfrageanforderung stellt NDIS ein bitweises OR der Kapselungskennzeichnungen bereit, die die unterstützten Kapselungseinstellungen angeben, im Kapselung Member. Miniporttreiber müssen Ethernet-Kapselung (NDIS_ENCAPSULATION_IEEE_802_3) bereitstellen. Die anderen Kapselungstypen sind optional.

Für ein NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG Statusanzeige bietet der Miniporttreiber ein bitweises OR der Kapselungsflaggen, die die aktuellen Funktionen angeben, im Kapselungselement Member.

Die folgenden Flags werden für das Kapselungselement-Member definiert:

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Unterstützt in NDIS 6.1 und höher.
Header- ntddndis.h (include Ndis.h)

Siehe auch

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