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 を含む) |