次の方法で共有


NDIS_IPSEC_OFFLOAD_V2構造体 (ntddndis.h)

[IPsec タスク オフロード機能は非推奨であり、使用しないでください。]

NDIS_IPSEC_OFFLOAD_V2構造体は、NDIS_OFFLOAD 構造体のインターネット プロトコル セキュリティ (IPsec) バージョン 2 タスク オフロード機能に関する情報を提供します。

構文

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;

メンバーズ

Encapsulation

IPsec オフロードでサポートされている MAC カプセル化の種類。 このメンバーの詳細については、次の「解説」セクションを参照してください。

IPv6Supported

IPv6 トラフィックでの IPsec オフロード処理がサポートされている場合に、TRUE に設定されるブール値。 それ以外の場合、このメンバーは FALSE

IPv4Options

NIC が IPv4 オプションを使用したパケットの IPsec オフロードをサポートしている場合に、TRUE に設定されたブール値。 それ以外の場合、このメンバーは FALSE

IPv6NonIPsecExtensionHeaders

NIC が IPsec ヘッダーに加えて IPsec 以外の IPv6 拡張ヘッダーを持つパケットの IPsec オフロード処理をサポートしている場合に、TRUE に設定されたブール値。 それ以外の場合、このメンバーは FALSE

Ah

NIC が認証ヘッダー (AH) セキュリティ ペイロードを含む送受信パケットに対して IPsec オフロード操作を実行できる場合に、TRUE に設定されたブール値。 それ以外の場合、このメンバーは FALSE

Esp

NIC がカプセル化セキュリティ ペイロード (ESP) を含む送受信パケットに対して IPsec オフロード操作を実行できる場合に、TRUE に設定されたブール値。 それ以外の場合、このメンバーは FALSE

AhEspCombined

NIC が AH ペイロードと ESP ペイロードの両方を含む送受信パケットに対して IPsec オフロード操作を実行できる場合に、TRUE に設定されたブール値。 それ以外の場合、このメンバーは FALSE

Transport

NIC が送受信パケットのトランスポート モード部分のセキュリティ ペイロードを処理できる場合に、TRUE に設定されるブール値。 (パケットのトランスポート モード部分は、エンド ツー エンド接続に関連します)。それ以外の場合、このメンバーは FALSE

Tunnel

NIC が送受信パケットのトンネル モード部分のセキュリティ ペイロードを処理できる場合に、TRUE に設定されるブール値。 (パケットのトンネル モード部分はトンネル接続に関係します)。それ以外の場合、このメンバーは FALSE

IPsec レイヤーが IPsec タスク オフロード インターフェイス経由でトンネル パケットを送信する場合、IPsec レイヤーはそれらのパケットに対して LSO (LSO) を使用しないようにします。
 

TransportTunnelCombined

NIC がトランスポート モード部分と送受信パケットのトンネル モード部分の両方のセキュリティ ペイロードを処理できる場合に、TRUE に設定されたブール値。 それ以外の場合、このメンバーは FALSE 。 パケットのトランスポート モード部分は、エンド ツー エンド接続に関係します。 パケットのトンネル モード部分は、トンネル接続に関連します。

LsoSupported

NIC が大きな送信オフロード (LSO) をサポートしている場合に true に設定されているブール値。 それ以外の場合、このメンバーは FALSE 。 NIC の LSO 機能は、LsoV1 で指定されているか、NDIS_OFFLOAD 構造体の LsoV2 メンバー 指定されていることに注意してください。 LsoSupported フラグ は、接続が IPsec で保護されている場合、それらのメンバーで指定されている機能も有効であることを示します。

ExtendedSequenceNumbers

NIC が IPsec 拡張シーケンス番号をサポートしている場合 TRUE に設定されるブール値。 それ以外の場合、このメンバーは FALSE

UdpEsp

NIC が解析できる UDP カプセル化 ESP データ パケットの種類。 UDP カプセル化の種類の詳細については、「UDP-ESP カプセル化の種類の」を参照してください。 このメンバーには、次のフラグの 1 つ以上を指定できます。

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_NONE

IPsec オフロード処理は、どの UDP カプセル化の種類にも使用できません。

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT

IPsec オフロードは、UDP によってカプセル化された ESP カプセル化トランスポート モード パケットでサポートされます。

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TUNNEL

IPsec オフロードは、UDP カプセル化されたパケットのトンネル モード部分でサポートされます。 パケットのトランスポート モード部分は UDP カプセル化されておらず、ESP で保護されていません。

IPSEC_OFFLOAD_V2_TRANSPORT_OVER_UDP_ESP_ENCAPSULATION_TUNNEL

IPsec オフロードは、UDP カプセル化されたパケットのトンネル モード部分でサポートされます。 パケットのトランスポート モード部分は UDP カプセル化されませんが、ESP で保護されます。

IPSEC_OFFLOAD_V2_UDP_ESP_ENCAPSULATION_TRANSPORT_OVER_TUNNEL

IPsec オフロードは、UDP カプセル化されていないパケットのトンネル モード部分でサポートされます。 パケットのトランスポート モード部分は UDP カプセル化され、ESP で保護されます。

AuthenticationAlgorithms

NIC がサポートする IPsec 認証アルゴリズムを識別するビット マスク。 ミニポート ドライバーは、次の値のビットごとの OR を指定します。

IPSEC_OFFLOAD_V2_AUTHENTICATION_MD5

NIC は、暗号化チェックサムを計算または検証するために、キー付きメッセージ ダイジェスト 5 (MD5) アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_1

NIC では、暗号化チェックサムを計算または検証するために、セキュリティで保護されたハッシュ アルゴリズム (SHA) 1 アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_AUTHENTICATION_SHA_256

NIC は、暗号化チェックサムを計算または検証するために SHA 256 アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_128

NIC では、暗号化チェックサムを計算または検証するために、Advanced Encryption Standard - Galois/Counter Mode (AES-GMAC) 128 アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_192

NIC では、暗号化チェックサムを計算または検証するために、AES-GMAC 192 アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_AUTHENTICATION_AES_GCM_256

NIC では、暗号化チェックサムを計算または検証するために、AES-GMAC 256 アルゴリズムを使用できます。

EncryptionAlgorithms

NIC がサポートする IPsec 暗号化アルゴリズムを識別するビット マスク。 このビット マスクは、次の値のビットごとの OR です。

IPSEC_OFFLOAD_V2_ENCRYPTION_NONE

NIC では、NULL 暗号化を使用できます。つまり、暗号化なしで、認証情報を使用して ESP ペイロードを使用できます。

IPSEC_OFFLOAD_V2_ENCRYPTION_DES_CBC

NIC では、ESP ペイロードの暗号化と復号化に DES アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_ENCRYPTION_3_DES_CBC

NIC は、ESP ペイロードの暗号化と復号化に triple-DES アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_128

NIC は、暗号化チェックサムの暗号化と計算、または ESP ペイロードの暗号化チェックサムの暗号化解除と検証に、AES-GCM 128 アルゴリズムを使用できます。 このアルゴリズムは結合モード アルゴリズムであることに注意してください。

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_192

NIC では、暗号化チェックサムの暗号化と計算、または ESP ペイロードの暗号化チェックサムの暗号化と検証に、AES-GCM 192 アルゴリズムを使用できます。 このアルゴリズムは結合モード アルゴリズムであることに注意してください。

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_GCM_256

NIC は、暗号化チェックサムの暗号化と計算、または ESP ペイロードの暗号化チェックサムの暗号化解除と検証に、AES-GCM 256 アルゴリズムを使用できます。 このアルゴリズムは結合モード アルゴリズムであることに注意してください。

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_128

NIC は、ESP ペイロードの暗号化と復号化に Advanced Encryption Standard - cipher-block chaining mode (AES-CBC) 128 アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_192

NIC は、ESP ペイロードの暗号化と復号化に AES-CBC 192 アルゴリズムを使用できます。

IPSEC_OFFLOAD_V2_ENCRYPTION_AES_CBC_256

NIC は、ESP ペイロードの暗号化と復号化に AES-CBC 256 アルゴリズムを使用できます。

SaOffloadCapacity

NIC にオフロードできる SA バンドル (ESP または AH またはその両方を含む場合があります) の数。 TCP/IP は、オフロードされた SA バンドルの数を保持し、ミニポート ドライバーが報告した SA バンドルの最大数を超える数を追加しないでください。

備考

NDIS 6.1 以降のバージョンでは、NDIS_IPSEC_OFFLOAD_V2構造体は、NDIS_OFFLOAD 構造体の IPsecV2 メンバーで使用されます。 NDIS_IPSEC_OFFLOAD_V2構造体は、ミニポート アダプターが IPsec オフロード処理に提供する現在またはサポートされている機能を指定します。

メモ IPsec タスク オフロードをサポートするには、ミニポート ドライバーは、トンネル メンバーで TRUE 指定する必要があります。
 
NDIS_OFFLOADは、 NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES 構造体、NDIS_BIND_PARAMETERS 構造体、 NDIS_FILTER_ATTACH_PARAMETERS 構造体、 OID_TCP_OFFLOAD_CURRENT_CONFIG OID と NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG 状態の表示。

OID_TCP_OFFLOAD_CURRENT_CONFIGの場合、NDIS_OFFLOAD構造体は、ミニポート アダプターがサポートするタスク オフロード機能を指定します。 現在のオフロード機能が変更された場合、ミニポート ドライバーは、新しい機能を報告します。 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG 状態の表示。

NDIS_IPSEC_OFFLOAD_V2の カプセル化 メンバーは、ミニポート アダプターが IPsec オフロードをサポートする MAC カプセル化を定義します。

に応答して、クエリ要求 OID_TCP_OFFLOAD_CURRENT_CONFIG、NDIS は、カプセル化 メンバーで、サポートされているカプセル化設定を示すカプセル化フラグのビットごとの OR を提供します。 ミニポート ドライバーは、イーサネット カプセル化 (NDIS_ENCAPSULATION_IEEE_802_3) を提供する必要があります。 その他の種類のカプセル化は省略可能です。

次の場合は、次の場合状態表示 NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG、ミニポート ドライバーは、現在の機能を示すカプセル化フラグのビットごとの OR を、カプセル化 メンバーで提供します。

カプセル化 メンバーには、次のフラグが定義されています。

必要条件

要件 価値
サポートされる最小クライアント NDIS 6.1 以降でサポートされています。
ヘッダー ntddndis.h (Ndis.h を含む)

関連項目

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