NDIS パケット タイムスタンプ インターフェイスは、精度タイム プロトコル (PTP) バージョン 2 のネットワーク インターフェイス カード (NIC) のハードウェア タイムスタンプ機能をサポートしています。
多くの NIC では、独自のハードウェア クロックを使用してパケットを受信または送信するときに、ハードウェアでタイムスタンプを生成できます。 NDIS 6.82 以降では、NDIS パケット タイムスタンプを使用すると、NIC ドライバーにハードウェア タイムスタンプのサポートを追加できます。
タイムスタンプのサポートを有効にして、クロック同期アプリケーションの精度を向上させることができます。 ミニポート ドライバーは、既定ですべての種類のタイムスタンプのサポートを無効にする必要があります。
具体的には、NDIS パケット タイムスタンプは、トランスポートとして UDP を使用して PTP プロトコルを実装するアプリケーションがそれらを使用できるように、オペレーティング システムでハードウェア タイムスタンプを使用できるようにします。 PTP は、ハードウェア タイムスタンプを使用してシステム間のより正確な時刻同期を実現できるプロトコルです。
パケットがネットワークアダプタハードウェアによって送受信されるタイミングにタイムスタンプの生成が近いほど、同期アプリケーションの精度が高くなります。 NDIS パケット タイムスタンプは、NIC ハードウェアで生成されたタイムスタンプを使用できるようにすることで、時刻同期アプリケーションの精度を向上させることができます。
NDIS パケット タイムスタンプを使用すると、PTP バージョン 2 アプリケーション (IEEE で定義) が 2 段階モードで動作し、NIC のハードウェア タイムスタンプ機能を使用できるようになります。 2 段階モードでは、PTP パケットのタイムスタンプがハードウェアから取得され、ハードウェアでオンザフライで生成されるのではなく、個別のメッセージとして伝達されます。
NDIS パケット タイムスタンプを使用すると、次の機能が提供されます。
NIC ハードウェアのタイムスタンプ機能を検出します。
NIC ハードウェア クロックのタイムスタンプを、UDP 経由で実行されている PTP バージョン 2 のトラフィックに関連付けます (PTP に定義されている標準の UDP ポート (319 や 320 など) を使用)。
NIC ハードウェアのクロックを無料の実行クロックとして使用します。 ネットワーク ハードウェアのクロックに対してクエリを実行し、ネットワーク ハードウェア クロックとシステム クロック間の関係を確立する機能により、これを実現できます。
ソフトウェアタイムスタンプを生成します。
NDIS パケット タイムスタンプ インターフェイスのターゲットはイーサネット ハードウェアです。 このインターフェイスは、PTP バージョン 2 トラフィックのハードウェア タイムスタンプ生成を特にサポートする NIC と、すべてのトラフィックに対してハードウェア タイムスタンプを生成できる NIC の両方で動作します。これらの NIC は PTP トラフィックでも動作します。
このセクションでは...
パケット へのタイムスタンプのアタッチ