web-dev-qa-db-ja.com

Red Hat Linux NTP一貫性のない値

最近、サーバーでNTP高い遅延値とオフセット値が発生しています。

$ ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*10.161.50.254   .SLK.            1 u  962 1024  377   23.942   -2.157   0.819
+10.147.50.253   .SLK.            1 u 1001 1024  377   26.628    2.991   0.245

ただし、同期の詳細を手動で照会すると、値が大きく異なります。

$ ntpdate -q  10.161.50.254
server 10.161.50.254, stratum 1, offset -0.001250, delay 0.04601
 5 Mar 11:14:37 ntpdate[29876]: adjust time server 10.161.50.254 offset -0.001250 sec

最初の出力遅延は約24秒ですが、2番目の出力遅延は1秒未満です。これはオフセット値についても同じです。どの出力が有効か知りたいのですが。 2番目の出力がより正確である場合、なぜ最初の出力で同じように表示されないのですか。誰かがそのような違いの原因を説明できますか、どれが有効で、私は参照する必要がありますか?

(私たちのサービスは時間に非常に敏感であり、そのような不一致は、負のサービス使用期間時間などの異常なレポートになります)

1
aschkant

遅延はミリ秒単位の時間だと思います。

http://www.clock.org/ntp/debug.html

そのリンクは、出力の読み方について少し詳しく説明しています。ただし、ネットワークの速度にもよりますが、24msはほぼ正しいようです。 ntpdateの出力も考慮する必要があります。

https://superuser.com/questions/393426/how-inaccurate-is-my-system-clock-on-unix

これは、ntpdate -qが数秒で報告していることを詳しく説明しています。 46msは、ntpq -p出力の遅延とほぼ同じ時間です。

1
David O.

他のコメントと回答が指摘しているように、ntpdateからのオフセットは秒単位ですが、ntpqはミリ秒単位で表示します。したがって、オフセットに実際の不一致はありません(これは重要なことです)。あなたの時間はかなり密接に同期しています。しかし、報告された遅延にはまだ矛盾があります。

サーバーのピアに対して遅延のテストをいくつか行ったところ、次のようになりました。

  • ピア1(ローカルLAN上のストラタム1 BeagleBone Black):ntpdate経由で0.02689秒、ntpq経由で0.598ミリ秒、ping経由で平均1.032ミリ秒-ntpdateおよびntpq:26.292ミリ秒

  • ピア2(約1000 km離れたパブリックストラタム1サーバー):ntpdate経由で0.04485秒、ntpq経由で18.662ミリ秒、ping経由で平均18.379ミリ秒-ntpdateおよびntpq:26.188ミリ秒

  • ピア3(太平洋全体のパブリックストラタム1サーバー):ntpdate経由で0.21938秒、ntpq経由で193.844ミリ秒、ping経由で平均207.875ミリ秒-ntpdateおよびntpq:25.536ミリ秒

私の結論:ntpdateはやや非効率的であり、(私のマシンでは)平均で約25〜26ミリ秒の固定オーバーヘッドが追加され、ntpdおよび/またはLinuxUDPスタックは通常わずかに多いpingやLinuxICMPスタックよりも効率的です。

1
Paul Gear