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 。
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 オフロード処理に提供する現在またはサポートされている機能を指定します。
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 を含む) |