NDIS_TIMESTAMP_CAPABILITY_FLAGS 構造体 (ntddndis.h)

NDIS_TIMESTAMP_CAPABILITY_FLAGS構造体は、さまざまなコンテキストでのネットワーク インターフェイス カード (NIC) とミニポート ドライバーの組み合わせタイムスタンプ機能を表します。

構文

typedef struct _NDIS_TIMESTAMP_CAPABILITY_FLAGS {
  BOOLEAN PtpV2OverUdpIPv4EventMsgReceiveHw;
  BOOLEAN PtpV2OverUdpIPv4AllMsgReceiveHw;
  BOOLEAN PtpV2OverUdpIPv4EventMsgTransmitHw;
  BOOLEAN PtpV2OverUdpIPv4AllMsgTransmitHw;
  BOOLEAN PtpV2OverUdpIPv6EventMsgReceiveHw;
  BOOLEAN PtpV2OverUdpIPv6AllMsgReceiveHw;
  BOOLEAN PtpV2OverUdpIPv6EventMsgTransmitHw;
  BOOLEAN PtpV2OverUdpIPv6AllMsgTransmitHw;
  BOOLEAN AllReceiveHw;
  BOOLEAN AllTransmitHw;
  BOOLEAN TaggedTransmitHw;
  BOOLEAN AllReceiveSw;
  BOOLEAN AllTransmitSw;
  BOOLEAN TaggedTransmitSw;
} NDIS_TIMESTAMP_CAPABILITY_FLAGS, *PNDIS_TIMESTAMP_CAPABILITY_FLAGS;

メンバー

PtpV2OverUdpIPv4EventMsgReceiveHw

値 TRUE は、パケットの受信中に、NIC がハードウェアで IPv4 UDP パケットに含まれる PTP バージョン 2 のイベント メッセージを認識し、そのようなパケットが受信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv4AllMsgReceiveHw

値 TRUE は、パケット受信中に、NIC が IPv4 UDP パケットに含まれる PTP バージョン 2 のメッセージ (PTP イベント メッセージだけでなく) をハードウェアで認識し、そのようなパケットが受信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv4EventMsgTransmitHw

値 TRUE は、パケット転送中に、NIC がハードウェアで IPv4 UDP パケットに含まれる PTP バージョン 2 のイベント メッセージを認識し、そのようなパケットが送信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv4AllMsgTransmitHw

値 TRUE は、パケット転送中に、NIC がハードウェアで IPv4 UDP パケットに含まれる PTP バージョン 2 のメッセージ (PTP イベント メッセージだけでなく) を認識し、そのようなパケットが送信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv6EventMsgReceiveHw

値 TRUE は、パケットの受信中に、NIC がハードウェアで IPv6 UDP パケットに含まれる PTP バージョン 2 のイベント メッセージを認識し、そのようなパケットが受信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv6AllMsgReceiveHw

値 TRUE は、パケット受信中に、NIC がハードウェアで IPv6 UDP パケットに含まれる PTP バージョン 2 のメッセージ (PTP イベント メッセージだけでなく) を認識し、そのようなパケットが受信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv6EventMsgTransmitHw

値 TRUE は、パケット転送中に、NIC がハードウェアで IPv6 UDP パケットに含まれる PTP バージョン 2 のイベント メッセージを認識し、そのようなパケットが送信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します。

PtpV2OverUdpIPv6AllMsgTransmitHw

値 TRUE は、パケット転送中に、NIC が IPv6 UDP パケットに含まれる PTP バージョン 2 のメッセージ (PTP イベント メッセージだけでなく) をハードウェアで認識し、そのようなパケットが送信されたときに対応するタイムスタンプをハードウェアで生成できることを示します。 FALSE の値は、ハードウェアがこれに対応しないことを示します

AllReceiveHw

TRUE の値は、NIC が受信したすべてのパケット (PTP だけでなく) に対してハードウェア タイムスタンプを生成できることを示します。 FALSE の値は、NIC にこの機能がないことを示します。

AllTransmitHw

TRUE の値は、NIC が送信されたすべてのパケット (PTP だけでなく) に対してハードウェア タイムスタンプを生成できることを示します。 FALSE の値は、NIC にこの機能がないことを示します。

TaggedTransmitHw

TRUE の値は、オペレーティング システムによって指定された場合に、NIC が特定の送信パケットのハードウェア タイムスタンプを生成できることを示します。 オペレーティング システムは、パケット内のメタデータ フィールドを使用して、ミニポート/ハードウェアにこれを示します。 詳細については、「 パケットへのタイムスタンプのアタッチ」を参照してください。 FALSE の値は、NIC にこの機能がないことを示します。

AllReceiveSw

TRUE の値は、ミニポート ドライバーが受信したすべてのパケットのソフトウェア タイムスタンプを生成できることを示します。 ドライバーは 、KeQueryPerformanceCounter API を呼び出してタイムスタンプを生成する必要があります。 FALSE の値は、NIC にこの機能がないことを示します。

AllTransmitSw

TRUE の値は、ミニポート ドライバーがすべての送信パケットのソフトウェア タイムスタンプを生成できることを示します。 パケットが送信される直前に 、KeQueryPerformanceCounter を使用してソフトウェアでタイムスタンプを生成する必要があります。 FALSE の値は、NIC にこの機能がないことを示します。

TaggedTransmitSw

TRUE の値は、ミニポート ドライバーがオペレーティング システムによって指定されたときに、特定の送信パケットのソフトウェア タイムスタンプを生成できることを示します。 オペレーティング システムは、パケット内のメタデータ フィールドを使用してミニポートにこれを示します。 詳細については、「 パケットへのタイムスタンプのアタッチ」を参照してください。 ミニポート ドライバーは、パケットが送信される直前に KeQueryPerformanceCounter を使用してタイムスタンプを生成する必要があります。 FALSE の値は、NIC にこの機能がないことを示します。

注釈

NDIS_TIMESTAMP_CAPABILITY_FLAGS構造体は、NDIS_TIMESTAMP_CAPABILITIES構造体のフィールドです。

要件

要件
サポートされている最小のクライアント Windows 11
サポートされている最小のサーバー Windows Server 2022。 NDIS 6.82 以降でサポートされています。
Header ntddndis.h (ndis.h を含む)

こちらもご覧ください

NDIS_TIMESTAMP_CAPABILITIES

KeQueryPerformanceCounter

レポートのタイムスタンプ機能と現在の構成

タイムスタンプをパケットにアタッチする