NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO 構造体 (ndis/nbluso.h)

NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO構造体は、TCP/IP トランスポートからミニポート アダプターに UDP セグメント化オフロード (USO) タスクをオフロードするために使用される情報を指定します。 NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO構造体は、NET_BUFFER_LIST OOB 情報の一部です。

構文

typedef struct _NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO {
  union {
    struct {
      ULONG MSS : 20;
      ULONG UdpHeaderOffset : 10;
      ULONG Reserved : 1;
      ULONG IPVersion : 1;
    } Transmit;
    PVOID Value;
  };
} NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO, *PNDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO;

メンバー

Transmit

USO 情報の個々のビット フィールドを含む構造体。

Transmit.MSS

各 UDP セグメントの最大セグメント サイズ (MSS) (バイト単位)。 TCP/IP トランスポートは、セグメント化のために大きな UDP パケットをミニポート ドライバーに渡す前に、この値を書き込みます。

Transmit.UdpHeaderOffset

UDP パケットのパケットの先頭からの UDP ヘッダーのオフセット (バイト単位)。 ミニポート ドライバーは、 UDPHeaderOffset を使用して、IP ヘッダーを解析する必要がないように、UDP ヘッダーの場所を決定できます。

Transmit.Reserved

予約済み。 ミニポート ドライバーは、この値を読み取ったり書き込んだりすることはできません。

Transmit.IPVersion

パケットの IP バージョン。 IPv4 パケットの場合、 IPVersion は NDIS_UDP_SEGMENTATION_OFFLOAD_IPV4 に設定されます。 IPv6 パケットの場合、 IPVersion は NDIS_UDP_SEGMENTATION_OFFLOAD_IPV6 に設定されます。

Value

USO 情報の PVOID バージョン。 ミニポート ドライバーは、このメンバーを使用して、特定のフィールドではなく生の情報にアクセスできます。

注釈

NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO構造体は、NET_BUFFER_LIST構造体に含まれる情報の一部です。

USO 情報を設定して取得するには、NET_BUFFER_LIST_INFO マクロで UdpSegmentationOffloadInfo インデックスを使用します。 NET_BUFFER_LIST_INFO は ULONG 値を返します (ULONG 値へのポインターではありません)。

TCP/IP トランスポートは、ミニポート ドライバーに大きなパケットを送信する前に、NDIS_UDP_SEGMENTATION_OFFLOAD_NET_BUFFER_LIST_INFO構造体の MSS および UdpHeaderOffset メンバーを更新します。

注意

USO 情報を含む NET_BUFFER_LIST 構造体にも、1 つの NET_BUFFER 構造体が含まれます。

要件

要件
サポートされている最小のクライアント Windows 10 バージョン 1912
Header ndis/nbluso.h (ndis.h を含む)

こちらもご覧ください

UDP セグメント化オフロード (USO)

NET_BUFFER_LIST