NDIS_TCP_IP_CHECKSUM_OFFLOAD 構造体 (ntddndis.h)
NDIS_TCP_IP_CHECKSUM_OFFLOAD構造体は、 NDIS_OFFLOAD 構造のチェックサム タスク オフロード情報を提供します。
構文
typedef struct _NDIS_TCP_IP_CHECKSUM_OFFLOAD {
struct {
ULONG Encapsulation;
ULONG IpOptionsSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
ULONG IpChecksum : 2;
} IPv4Transmit;
struct {
ULONG Encapsulation;
ULONG IpOptionsSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
ULONG IpChecksum : 2;
} IPv4Receive;
struct {
ULONG Encapsulation;
ULONG IpExtensionHeadersSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
} IPv6Transmit;
struct {
ULONG Encapsulation;
ULONG IpExtensionHeadersSupported : 2;
ULONG TcpOptionsSupported : 2;
ULONG TcpChecksum : 2;
ULONG UdpChecksum : 2;
} IPv6Receive;
} NDIS_TCP_IP_CHECKSUM_OFFLOAD, *PNDIS_TCP_IP_CHECKSUM_OFFLOAD;
メンバー
IPv4Transmit
IPv4 送信情報を指定し、次のメンバーを含む NDIS_TCP_IP_CHECKSUM_OFFLOAD 内の構造体。
IPv4Transmit.Encapsulation
IPv4 送信のカプセル化設定。 このメンバーの詳細については、次の「解説」セクションを参照してください。
IPv4Transmit.IpOptionsSupported
ミニポート アダプターが IP オプションを含む IPv4 送信パケットの IP チェックサムを計算できることを示す、またはこの機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Transmit.TcpOptionsSupported
ミニポート アダプターが TCP オプションを含む IPv4 送信パケットの TCP チェックサムを計算できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Transmit.TcpChecksum
ミニポート アダプターが IPv4 送信パケットの TCP チェックサムを計算できることを示すためにミニポート ドライバーが設定する ULONG 値。 TCP/IP トランスポートは、この値を設定してこの機能を有効にするか、この機能が有効または無効になっていることを示します。
IPv4Transmit.UdpChecksum
ミニポート アダプターが IPv4 送信パケットの UDP チェックサムを計算できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Transmit.IpChecksum
ミニポート アダプターが IPv4 送信パケットの IP チェックサムを計算できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Receive
IPv4 受信情報を指定し、次のメンバーを含む NDIS_TCP_IP_CHECKSUM_OFFLOAD 内の構造体。
IPv4Receive.Encapsulation
IPv4 受信のカプセル化設定。 このメンバーの詳細については、次の「解説」セクションを参照してください。
IPv4Receive.IpOptionsSupported
ミニポート アダプターが IP オプションを含む IPv4 受信パケットの IP チェックサムを検証できることを示す、またはこの機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Receive.TcpOptionsSupported
ミニポート アダプターが TCP オプションを含む IPv4 受信パケットの TCP チェックサムを計算できることを示す、またはこの機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Receive.TcpChecksum
ミニポート アダプターが IPv4 受信パケットの TCP チェックサムを検証できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Receive.UdpChecksum
ミニポート アダプターが IPv4 受信パケットの UDP チェックサムを検証できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv4Receive.IpChecksum
ミニポート アダプターが IPv4 受信パケットの IP チェックサムを検証できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Transmit
IPv6 送信情報を指定し、次のメンバーを含む NDIS_TCP_IP_CHECKSUM_OFFLOAD 内の構造体。
IPv6Transmit.Encapsulation
IPv6 送信のカプセル化設定。 このメンバーの詳細については、次の「解説」セクションを参照してください。
IPv6Transmit.IpExtensionHeadersSupported
ミニポート アダプターが拡張ヘッダーを含む IPv6 パケットのチェックサムを計算できることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Transmit.TcpOptionsSupported
ミニポート アダプターが TCP オプションを含む IPv6 送信パケットの TCP チェックサムを計算できることを示す、またはこの機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Transmit.TcpChecksum
ミニポート アダプターが IPv6 送信パケットの TCP チェックサムを計算できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Transmit.UdpChecksum
ミニポート アダプターが IPv6 送信パケットの UDP チェックサムを計算できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Receive
IPv6 受信情報を指定し、次のメンバーを含む NDIS_TCP_IP_CHECKSUM_OFFLOAD 内の構造体。
IPv6Receive.Encapsulation
IPv6 受信のカプセル化設定。 このメンバーの詳細については、次の「解説」セクションを参照してください。
IPv6Receive.IpExtensionHeadersSupported
ミニポート アダプターが拡張ヘッダーを含む IPv6 パケットのチェックサムを検証できることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Receive.TcpOptionsSupported
ミニポート アダプターが TCP ヘッダーに TCP オプションが含まれている IPv6 受信パケットのチェックサムを計算できることを示す、またはこの機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Receive.TcpChecksum
ミニポート アダプターが IPv6 受信パケットの TCP チェックサムを検証できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
IPv6Receive.UdpChecksum
ミニポート アダプターが IPv6 受信パケットの UDP チェックサムを検証できることを示すか、この機能が有効または無効であることを示すためにミニポート ドライバーが設定する ULONG 値。
注釈
NDIS_TCP_IP_CHECKSUM_OFFLOAD構造体は、NDIS_OFFLOAD構造体の Checksum メンバーで使用されます。 NDIS_TCP_IP_CHECKSUM_OFFLOAD構造体は、パケットを送信し、受信パケットのそのようなチェックサムを検証するために IP、TCP、または UDP チェックサム (またはそのすべて) を計算するためにミニポート アダプターが提供する現在またはサポートされているサービスを指定します。
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_TCP_IP_CHECKSUM_OFFLOADの カプセル化 メンバーは、ミニポート アダプターのチェックサム オフロード カプセル化設定を定義します。
への応答として、クエリ要求OID_TCP_OFFLOAD_CURRENT_CONFIG、NDIS は、各カプセル化メンバーでサポートされているカプセル化設定を示すカプセル化フラグのビットごとの OR を提供します。 ミニポート ドライバーは、イーサネット カプセル化 (NDIS_ENCAPSULATION_IEEE_802_3) を提供する必要があります。 その他の種類のカプセル化は省略可能です。
の場合は、 状態 を示NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG、ミニポート ドライバーは、カプセル化 の各メンバー で現在の機能を示すカプセル化フラグのビットごとの OR を提供します。
カプセル化メンバーには、次のフラグが定義されています。
- NDIS_ENCAPSULATION_NOT_SUPPORTED
カプセル化オフロードがサポートされていないことを指定します。 - NDIS_ENCAPSULATION_NULL
NULL カプセル化を指定します。 - NDIS_ENCAPSULATION_IEEE_802_3
IEEE 802.3 カプセル化を指定します。 - NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q
IEEE 802.3p および IEEE 802.3q カプセル化を指定します。 - NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
各NET_BUFFER_LIST構造体の NetBufferListInfo メンバーで IEEE 802.3p および IEEE 802.3q カプセル化設定を指定します。 - NDIS_ENCAPSULATION_IEEE_LLC_SNAP_ROUTED
RFC 1483 で説明されているように、ルーティング プロトコルの論理リンク制御 (LLC) カプセル化を指定します。 このフラグは、イーサネット LLC/SNAP カプセル化を示すためにも使用されます。
NDIS_TCP_IP_CHECKSUM_OFFLOADの IpOptionsSupported、TcpOptionsSupported、IpExtensionHeadersSupported、TcpChecksum、UdpChecksum、および IpChecksum の各メンバーの値の意味は、タスク オフロード構造を含む OID または状態表示によって異なります。 これらのメンバーには、次のいずれかの値を指定できます。
- NDIS_OFFLOAD_NOT_SUPPORTED
OID_TCP_OFFLOAD_CURRENT_CONFIGでは、この値は、ミニポート アダプターがメンバーが指定する機能をサポートしないことを指定します。 - NDIS_OFFLOAD_SUPPORTED
OID_TCP_OFFLOAD_CURRENT_CONFIGでは、この値は、ミニポート アダプターがメンバーが指定する機能をサポートすることを指定します。 - NDIS_OFFLOAD_SET_OFF
NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG状態の表示で、この値は、メンバーが指定する機能が無効であることを指定します。 - NDIS_OFFLOAD_SET_ON
NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG状態の表示で、この値は、メンバーが指定する機能が有効であることを指定します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.0 以降でサポートされています。 |
Header | ntddndis.h (Ndis.h を含む) |