NTPの精度に関する研究資料はありますか?


13

私の知る限り、NTP同期の精度はネットワークに大きく依存しています。インターネット上で50マイクロ秒から「1秒未満」までの数値を見てきました。さて、これは大きな違いです。

精度への依存は研究すべき大きな問題であると考えていますが、これまでのところ、特定の構成がその特定の精度を付与することを明確に示す資料を見つけることができませんでした。

http://www.ntp.org/ntpfaq/NTP-s-algo.htmに記載されています

NTP同期を維持するには、サーバーとクライアントの間で128ミリ秒未満の時間差が必要です。インターネットの一般的な精度は約5ミリ秒から100ミリ秒の範囲であり、ネットワークの遅延によって変動する可能性があります。最近の調査[2]は、NTPサーバーの90%が100ms未満のネットワーク遅延を持ち、約99%が1秒以内に同期ピアに同期されることを示唆しています。

PPS同期により、Pentium PC(Linuxの実行など)で50µsの精度と0.1 PPM未満の安定性を達成できます。

それは何かですが、このトピックについてさらに徹底的な分析があるのでしょうか?


3
私はこの質問は研究努力をまったく示しておらず、それに基づいてダウン票を投じていると思いますが、OPがntp.orgの資料を読んだことすら明確ではありません-私はそれが合法的な質問だと思いますし、その根拠。プロトコルが盲目的に展開して最高の結果を期待するのではなく、宣伝どおりに機能する理由を知りたいと思うのは時間の無駄ではありません。
MadHatter

質問を更新してくれてありがとう、私は私の投票を取り消しました。とはいえ、あなたが来た場所に送り返されるのは面倒だと感じるかもしれませんが、質問したときにどこに行ったのか教えていない場合、どうやって知ることができますか? また、上記のテキストには、NTPサーバーの精度を研究している学術論文へのポインターが含まれています。あなたはそれを読みましたか?もしそうなら、なぜそれが十分ではなかったのかを示していただけますか?
MadHatter

けっこうだ。このペーパーは、NTPネットワークに関する14年前の総合調査です。さらにリンクがありますが、それらはすべて、もちろんさらに古いものです。Google ScholarとCiteSeerを試しましたが、リンクのほとんどは90年代のMillsとMillnarの同じ作品です。私はまだブラウジングしていますが、私はトピックから少し離れており、これには多くの時間がかかる可能性があるため、コミュニティに助けを求めることにしました。
akalenuk

1
NTPは少なくとも14年間変わっていませんが、なぜ精度が大幅に変わったのでしょうか?以下で説明するように、NTPは超正確であることを意味するものではなく、1秒以内に到達することを意味します(おそらく、その情報不足の引用はどこから来たのでしょう)。1ミリ秒未満の精度が必要な場合は、PTPを使用します。非常に幅広い展開で意図したとおりの結果が得られることの正確さを研究することには、何の価値もありません。
クリスS

2
実際に、クリスは、仕事の2枚は、インターネット上のNTPサーバの精度(常に優れていたではないプロトコル自体が、)ことが明らかに作る引用し今1999年との間で改善しました。これは、インターネットのほうが優れているためであると考えられます-レイテンシーは以前よりもやや低く、変動が少ないためです-一部はS1サーバーの品質が向上したためです(1999年の論文では、S1サーバーの最も一般的なクロックソースはOSクロック!)。OPがこの質問をしてくれてうれしいです。価値があると思います。
MadHatter

回答:


14

誰もあなたのネットワークがインターネットとその上のクロックサーバーにどれだけうまく接続されているかを誰も知らないので、誰もあなたのネットワークでNTPがどれだけうまく機能するかを保証できません。ただし、ntp.orgのクロックディシプリンアルゴリズムページによると

連続して実行し続けると、家庭またはオフィス環境の高速LAN上のNTPクライアントは、名目上1ミリ秒以内に同期を維持できます。周囲温度の変動が摂氏1度未満の場合、クロックオシレータのネイティブ周波数オフセットが100 PPM以上であっても、クロックオシレータの周波数は100万分の1(PPM)以内に抑えられます。

LANとインターネットのクロックサーバーとの間の大きいが安定したレイテンシは、非常に可変のレイテンシほど精度に悪影響を与えないことに注意してください。

上記の推定値を取得した場所(「50マイクロ秒から...「1秒未満」」)を言うことはありませんので、コメントすることはできませんが、私の経験では、直接接続していない限り50usはありそうにありませんあなたがインターネットに接続し、南極でアップストリームサーバーを使用している場合は、1の可能性はありません。

編集:質問で引用したテキストは、1999年に、ntpサーバーの99%が1秒以内に同期されることを確かに証明した論文へのポインターを与えます。幸いなことに、最近の作業があります。で、この論文(私は彼らの図を理解していれば1を正しく。)パラナ州、ブラジルの連邦大学からいくつかの著者は、2005年に実験を繰り返し、見つかった99%の北部こと-以上のように99.5% -サーバのは、今より少ないオフセットを持っています100ms、およびその90%のオフセットは10ms未満です。これは私の経験と非常によく適合しています(上記参照)。

編集2:最後のしわ:これらすべての研究は、ローカルクロックがどれほど正確であるかを調査するのではなく、それがアップストリームの基準クロックとどの程度異なるかを調査します。これらは明らかに同じものではありません。しかし、最初は知らない。時計がどれだけ間違っているかを知るには、正確に何時かを知る必要があります。それを知っていたら、そもそもなぜ時計を間違って設定したのでしょうか?これらの調査で測定しているの、ローカルクロックと絶対時間の差ではなく、ローカルクロックと基準クロックの差であることに注意してください。


+1プールサーバーも実行しました。国全体で20ミリ秒を超えるドリフトを明確に監視するのは奇妙でした。
クリスS

9

どのような問題を解決しようとしていますか?

NTPよりも高い精度を必要とする環境で遭遇した解決策は、Precision Time Protocol(PTP)です。科学コンピューティングおよび金融コンピューティングアプリケーションで使用しました。ただし、トレードオフがあります。

参照:centos6 / rhelでのptp時間同期


4
「解決しようとしている問題は何ですか?」私のお気に入りの質問-私はいつもそれを尋ねます。
mfinni

@mfinni、どのクライアントが最初に送信するかをランク付けする必要がある場合(例:HFT)、時間を正確に把握するのに役立ちます。
Pacerier 14

6

言及する価値がある他のいくつかのこと:

  • 仮想マシンで100ミリ秒未満のクロックジッタが発生するのは幸運です。そのため、以下はすべて物理ホスト用です。
  • 100ミリ秒未満のジッタは、ほぼすべてのタスクでほぼ測定不能であり、インターネット上で簡単に達成できます。
  • いくつかの一般的なサービス環境では30ms未満のジッターが必要になる場合があり(以前のジョブでログの相関関係に必要でした)、接続が「コンシューマー」リンク(衛星ではないなど)でない同じ大陸のNTPサーバーを使用して簡単に達成できます、ADSL、DOCSIS、GPON、UMTS / LTE / HSPA /など)
  • これ以下の絶対精度を得るには、品質ベンダー(Symmetricomなど)のハードウェアNTPサーバーをインストールする必要があります。
  • サブ10msの(多くの場合、サブ1msのは)地元の契約は簡単に(あなたが少なくて行うことができますが、3または5を使用するには理由があります)単にトリオを有することによって達成することができるすべての非科学アプリケーションのほとんどのために同じデータセンターの十分な範囲内で

5

私の最大の関心:私はマインバーグのエージェントです:-)

はい Chronyまたはntpdを実行するベアメタル上のLinux「クライアント」を、GPS、ローカル原子時計、またはそのようなソースによって統制されたLinuxベースのNTPサーバーに同期する場合、50マイクロ秒(マイクロ秒)のジッター。

ローカルGPS(PPS相互接続)を備えたマシンでは、OSで実行されているntpdインスタンスとそのPPS refclockドライバーの入力との間に、おそらく0〜2マイクロ秒のオフセットがあります。

「LANを介したエンドツーエンド」の50 usの残りは、バッファリング、可変IRQレイテンシ、LANおよび関連するコンピュータバスなどに干渉する他のトラフィックのいくつかの段階の結果です。50 usは、トラフィックが非常に少ないLANを意味します。スイッチだけでも数マイクロ秒のジッターを追加できます。また、複雑な機能を備えたハイエンドスイッチは、レイテンシとジッターを追加します。言い換えると、実際のLANで実際の状況でこれらの50マイクロ秒を達成するのはかなり難しい場合があります。

同様に、PPSオフセットのこれらのcca <2usは、正常に動作するPCハードウェアでのIRQレイテンシの不確実性と一般的なバスレイテンシジッタに起因します。

NTPとその実装ntpdとChronyは、確実にNTPトランザクションの往復時間を測定し、その往復の半分を差し引いて(実際に)加算することに注意してください。また、異常値の拒否、定足数のコンセンサス、シスピアの選択、およびNTPデーモンがアップストリームクエリに対する応答をフィルタリングします。したがって、他の人が言ったように、PingおよびTracerouteで表示されるミリ秒は、ローカルクロックを直接オフセットしません。重要なのは、トランザクションの往復の変動性、つまり、アップストリームNTPサーバーへのパス上の他のトラフィックです。Ntpq -pはあなたの友達です。

TCXOを備えたタイミング用の基本的なGPS受信機では、PPS出力に100〜200 nsの残留ジッタ+ワンダーが発生する可能性があります。GPSがロックされている限り、NTPに十分に適しています。(ホールドオーバーのパフォーマンスは、TCXOの場合はあまり良くありません。)OCXOを備えた高品質のタイミングGPSは100 ns以内で、10〜30 nsの残留誤差(グローバルUTCからのオフセット)のようです。

GPSジェネレーターを備えたラボでのベンチマークよりも、実際の衛星が大気中を飛行して大気中を照らしていることは、受信機にとってやや厳しいゲームであることに注意してください。

PTPはハンマーです。グランドマスター、スレーブ、および任意のスイッチでHWサポートが必要ですが、すべてを取得すると、ナノ秒の下位2桁までの残留オフセットが可能になります。私は個人的にこれを、HWをサポートするi210 NICで実行されているptp4lで見ました(ナノ秒の解像度でのタイムスタンプ)。

i210チップは不思議です。PPS信号の入力または出力に使用できる4つの汎用ピンがあります。i210(およびいくつかの大手ベンダーのOEMバージョン)を搭載したリファレンスIntelアドオンNICボードには、少なくとも2つのGPIOピン(Intelによって呼び出されるSDP)にアクセスできるピンヘッダーが装備されています。PTPグランドマスターポートの実装とは別に、PPS入力を活用して、パケットキャプチャの正確なタイムスタンプを取得できます。サーボループを実行してi210のPHCをext.PPSに微調整するには、PPSの正確なソースとソフトウェアのカスタムピースが必要です。私のテスト装置では、これにより、1桁のns(1秒の​​反復あたり)の残留オフセットが生じました。これは、キャプチャタイムスタンプで取得する精度です。最新のLinuxカーネルで最近のtcpdumpまたはwiresharkを実行する場合(すべてのソフトウェアはナノ秒レベルの解像度をサポートする必要があります)。さらに良いこと:私はずっと行き、正確なアップストリーム10MHz基準にロックされたNICクロック用に25MHzを生成する単純なPLLシンセを構築しました。その後、パケットキャプチャリグのサーボループの残留オフセットが0になりました(10 MHzの基準が同じGPSボックスからのPPSと位相同期していることの証明)。

PTPグランドマスターは、8 nsごとに実際の粒度でタイムスタンプを提供するように指定できることに注意してください(1 nsの解像度のデータ型で)。これは理にかなっています-ギガビットイーサネットは、MACの内部でバイトクロックとして使用される125 MHzクロックを使用する傾向があり、このクロックはおそらくGMIIでも使用され、メタリック1000Base-TXのシンボルクロックでもあります(4ペア並行して、ペアあたりシンボルあたり2ビット)。したがって、1000Base-FX(光ファイバー)をSERDESとともに使用し、PHYのHWタイムスタンプユニットの個々のSERDESビットまで機能する過激な実装を使用している場合を除き、これらの8 nsは、ギガビットイーサネットで現実的に期待できるすべてです。一部のチップデータシート(PTPサポート付き)では、MIIデータパスにバッファリングがなく、そこからジッターが発生する可能性があるとさえ主張しています。

PTPパケットには、実際に、サブナノ秒の深い解像度を可能にするデータ型で保存されたタイムスタンプが含まれています。しかし、「サブナノ秒の分数フィールド」は現在では一般的に使用されていません。AFAIRは、ホワイトラビットプロジェクト(スイスの研究センターCERNに関連)のみがサブns精度をこれまでに実装しています。

PTPは、ハードウェアアクセラレーションなしの純粋なソフトウェアでも利用できます。その場合、SWベースのGMおよびSWベースのクライアントの場合、NTPと同様の残留ジッター、つまり、専用だがPTPを認識しないLANで約50 usを取得することを期待してください。直接相互接続(中間スイッチなし)およびSW専用クライアント(PTP非対応PC NIC)のHWグランドマスターからサブマイクロ秒の精度を得たことを思い出します。NTPと比較して、PTPのサーボははるかに速く収束します。

いくつかの「宿題」をしている間に、最近、広域光ファイバルートを介してPPSまたは同様の「離散」タイミング信号を転送すると、温度依存の伝播時間「ワンダー」の影響を受けやすいことがわかりました。そして、これを実験的にテストする方法はありませんが、インターウェブのいくつかのソースは、1 kmあたり40〜76ピコ秒とケルビンの数値を引用しています。この種の「サーマルワンダー」はシンプレックスPPS伝送の「帯域内」を緩和することはできませんが、PTPは標準パス遅延測定(全二重伝送に依存)に基づいてこれを本質的に事後補償します。

さまざまなタイミングテクノロジー/インターフェイスでの「精度」がどのように見えるかの概要については、ここまでです。どのレベルの精度で十分かは、アプリケーションや実際のニーズによって異なります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.