NDIS_IPSEC_OFFLOAD_V1 構造体 (ntddndis.h)

NDIS_IPSEC_OFFLOAD_V1構造体は、NDIS_OFFLOAD構造のインターネット プロトコル セキュリティ (IPsec) タスク オフロード情報を提供します。

NDIS_IPSEC_OFFLOAD_V1 は NDIS 6.0 専用です。 NDIS 6.1 以降の場合は、 NDIS_IPSEC_OFFLOAD_V2を使用します。
 

構文

typedef struct _NDIS_IPSEC_OFFLOAD_V1 {
  struct {
    ULONG Encapsulation;
    ULONG AhEspCombined;
    ULONG TransportTunnelCombined;
    ULONG IPv4Options;
    ULONG Flags;
  } Supported;
  struct {
    ULONG Md5 : 2;
    ULONG Sha_1 : 2;
    ULONG Transport : 2;
    ULONG Tunnel : 2;
    ULONG Send : 2;
    ULONG Receive : 2;
  } IPv4AH;
  struct {
    ULONG Des : 2;
    ULONG Reserved : 2;
    ULONG TripleDes : 2;
    ULONG NullEsp : 2;
    ULONG Transport : 2;
    ULONG Tunnel : 2;
    ULONG Send : 2;
    ULONG Receive : 2;
  } IPv4ESP;
} NDIS_IPSEC_OFFLOAD_V1, *PNDIS_IPSEC_OFFLOAD_V1;

メンバー

Supported

IPsec タスク オフロードのサポートを指定し、次の情報を含む NDIS_IPSEC_OFFLOAD_V1 内の構造体。

Supported.Encapsulation

IPsec のカプセル化設定。 このメンバーの詳細については、次の「解説」セクションを参照してください。

Supported.AhEspCombined

ハードウェアが、認証ヘッダー (AH) セキュリティ ペイロードとカプセル化セキュリティ ペイロード (ESP) の両方を含むパケットの送受信に対して IPsec 操作を実行できることを示すようにミニポート ドライバーが設定する ULONG 値。 AhEspCombined の値が 0 の場合、NIC はこの機能をサポートしていないことを示します。

Supported.TransportTunnelCombined

NIC がトランスポート モード部分と送受信パケットのトンネル モード部分の両方のセキュリティ ペイロードを処理できることを示すためにミニポート ドライバーが設定する ULONG 値。 (パケットのトランスポート モード部分は、エンド ツー エンド接続に関連します。パケットのトンネル モード部分は、トンネル接続に関連します)。 TransportTunnelCombined の値が 0 の場合、NIC はこの機能をサポートしていないことを示します。

Supported.IPv4Options

NIC が IPv4 で IPsec 操作を実行できることを示すためにミニポート ドライバーが設定する ULONG 値は、IP ヘッダーに IP オプションが含まれているパケットを送受信します。 IPv4Options の値 0 は、NIC がこの機能をサポートしていないことを示します。

Supported.Flags

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

意味
IPSEC_TPT_UDPESP_ENCAPTYPE_IKE
内部使用のために予約されています。
IPSEC_TUN_UDPESP_ENCAPTYPE_IKE
内部使用のために予約されています。
IPSEC_TPTOVERTUN_UDPESP_ENCAPTYPE_IKE
内部使用のために予約されています。
IPSEC_TPT_UDPESP_OVER_PURE_TUN_ENCAPTYPE_IKE
内部使用のために予約されています。
IPSEC_TPT_UDPESP_ENCAPTYPE_OTHER
このフラグを設定すると、NIC は UDP カプセル化されたトランスポート モード パケットを解析できます。

このフラグがクリアされると、NIC は UDP カプセル化されたトランスポート モード パケットを解析できません。

IPSEC_TUN_UDPESP_ENCAPTYPE_OTHER
このフラグを設定すると、NIC は UDP カプセル化トンネル モードパケットを解析できます。

このフラグがクリアされると、NIC にはこの機能がありません。

IPSEC_TPTOVERTUN_UDPESP_ENCAPTYPE_OTHER
このフラグを設定すると、NIC は UDP カプセル化されたトンネル モード パケット経由でトランスポートを解析できます。

このフラグがクリアされると、NIC にはこの機能がありません。

IPSEC_TPT_UDPESP_OVER_PURE_TUN_ENCAPTYPE_OTHER
このフラグを設定すると、NIC はトンネル モード パケット経由で UDP カプセル化トランスポートを解析できます。

このフラグがクリアされると、NIC にはこの機能がありません。

 

NIC が UDP カプセル化された ESP パケットを解析できないミニポート ドライバーは、 フラグ メンバーにフラグを設定できません。

IPv4AH

AH ペイロードのサポートを指定し、次の情報を含む NDIS_IPSEC_OFFLOAD_V1 内の構造体。

IPv4AH.Md5

NIC が AH ペイロード、ESP ペイロード、またはその両方の暗号化チェックサムを計算または検証するためにキー付き MD5 アルゴリズムを使用できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4AH.Sha_1

NIC が AH ペイロード、ESP ペイロード、またはその両方の暗号化チェックサムを計算または検証するために SHA 1 アルゴリズムを使用できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4AH.Transport

NIC がエンドツーエンド接続に関連するパケットの部分の暗号化チェックサムを計算または検証できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4AH.Tunnel

NIC がトンネル接続に関連するパケットの部分の暗号化チェックサムを計算または検証できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4AH.Send

NIC が送信パケットの暗号化チェックサムを計算できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4AH.Receive

NIC が受信パケットの暗号化チェックサムを検証できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4ESP

ESP ペイロードのサポートを指定し、次の情報を含む NDIS_IPSEC_OFFLOAD_V1 内の構造体。

IPv4ESP.Des

NIC が ESP ペイロードを暗号化および復号化するための DES アルゴリズムをサポートしていることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4ESP.Reserved

このメンバーは予約されています。

IPv4ESP.TripleDes

NIC が ESP ペイロードを暗号化および復号化するための triple-DES アルゴリズムをサポートしていることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4ESP.NullEsp

NIC が null 暗号化をサポートしていることを示すためにミニポート ドライバーが設定する ULONG 値。つまり、暗号化を使用せずに認証情報を含む ESP ペイロードです。

IPv4ESP.Transport

NIC がエンドツーエンド接続に関連するパケットの部分の ESP データを暗号化および復号化できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4ESP.Tunnel

NIC がトンネル接続に関連するパケットの部分の ESP データを暗号化および復号化できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4ESP.Send

NIC が送信パケット内の ESP ペイロードを暗号化および復号化できることを示すためにミニポート ドライバーが設定する ULONG 値。

IPv4ESP.Receive

NIC が受信パケット内の ESP ペイロードを暗号化および復号化できることを示すためにミニポート ドライバーが設定する ULONG 値。

注釈

NDIS_IPSEC_OFFLOAD_V1構造体は、NDIS_OFFLOAD構造体の IPsecV1 メンバーで使用されます。 NDIS_IPSEC_OFFLOAD_V1構造体は、ミニポート アダプターがインターネット プロトコル セキュリティ (IPsec) に提供する現在またはサポートされているサービスを指定します。

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_V1カプセル化メンバーは、ミニポート アダプターの IPsec オフロード カプセル化設定を定義します。

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

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

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

要件

要件
サポートされている最小のクライアント NDIS 6.0 でサポートされています。
Header ntddndis.h (Ndis.h を含む)

こちらもご覧ください

NDIS_BIND_PARAMETERS

NDIS_FILTER_ATTACH_PARAMETERS

NDIS_IPSEC_OFFLOAD_V2

NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES

NDIS_OFFLOAD

NDIS_OID_REQUEST

NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG

NET_BUFFER_LIST

OID_TCP_OFFLOAD_CURRENT_CONFIG