Chrony の読み方
Chrony (クローニー) です。
Chronyとは
NTPクライアントとNTPサーバーの実装のひとつ。
ntpdより効率良く正確な時刻同期を提供します。
Chrony を使用すると、以下のことが実現できます。
- システムクロックを、NTP サーバーと同期する
- システムクロックを、GPS レシーバーなどの基準クロックと同期する
- システムクロックを、手動で入力した時間と同期する
- ネットワーク内の他のコンピューターにタイムサービスを提供する
Chrony公式
chronyc ntpdata コマンドとは
chronyc ntpdata コマンドとは、NTPソースについて、最後に有効な測定値、およびその他のNTP固有の情報を表示するコマンドです。
コマンドにNTPソースを指定すれば、 そのソースの情報を表示します。
アドレスが指定されていない場合はすべてのNTPソースを表示します。
NTPソースを指定してコマンドを実行する場合は、以下のように記述します。
chronyc ntpdata [address]
chronyc ntpdata の出力結果の見方
コマンドを実行すると以下のような結果が出力されます。
Remote address : 203.0.113.15 (CB00710F)
Remote port : 123
Local address : 203.0.113.74 (CB00714A)
Leap status : Normal
Version : 4
Mode : Server
Stratum : 1
Poll interval : 10 (1024 seconds)
Precision : -24 (0.000000060 seconds)
Root delay : 0.000015 seconds
Root dispersion : 0.000015 seconds
Reference ID : 47505300 (GPS)
Reference time : Fri Nov 25 15:22:12 2016
Offset : -0.000060878 seconds
Peer delay : 0.000175634 seconds
Peer dispersion : 0.000000681 seconds
Response time : 0.000053050 seconds
Jitter asymmetry: +0.00
NTP tests : 111 111 1111
Interleaved : No
Authenticated : No
TX timestamping : Kernel
RX timestamping : Kernel
Total TX : 24
Total RX : 24
Total valid RX : 24
Remote address
NTPサーバーまたはピアのIPアドレス。( ) 内は対応する参照ID。
Remote port
リクエストの送信先のUDPポート番号。
標準のNTPポートは123です。
Local address
応答を受信するローカルIPアドレス。( ) 内は対応する参照ID。
Leap status
Leap のステータスで、Normal、Insert second、Delete second、または Not synchronized のいずれかになります。(Leapは「飛躍」の意)
時刻の補正が入る際にNormal意外のステータスになる模様。
Version, Mode, Stratum, Poll interval, Precision, Root delay, Root dispersion, Reference ID, Reference time
-> NTPサーバーで、最後に有効だった応答のNTP値。
Offset, Peer delay, Peer dispersion
それぞれの測定値。
Offset(オフセット)とは、何かの位置を指し示す際に、基準となる位置からの差(ズレ)を表す値のこと。今回は、NTPサーバーを基準としたNTPクライアントとの時間のズレを指す。
Response time
サーバーまたはピアが要求の処理に使用した時間と、応答を送信する前に待機した時間。
Jitter asymmetry
ソースへの通信で生じたネットワークジッターの推定された不均衡の度合い。
不均衡の度合いは-0.5から0.5の間である可能性がある。
負の値は、送信元に送信されるパケットの遅延が、送信元から返送されるパケットの遅延よりも変動しやすいことを意味します。
NTP tests
RFC 5905の、1から3、5から7をテストし、最大遅延、遅延率、遅延開発率、および同期ループを確認します。
Interleaved
応答がインターリーブモードであったかどうかを示します。
Authenticated
応答が認証されたかどうかを示します。
TX timestamping
ローカル送信タイムスタンプのソース。 有効な値は、デーモン、カーネル、およびハードウェアです。
RX timestamping
ローカル受信タイムスタンプのソース。
Total TX
ソースに送信されたパケットの数。
Total RX
送信元から受信したすべてのパケットの数。
Total valid RX
ソースから受信した有効なパケットの数。
この記事のソース
この記事は以下のmanを参考に作成しています。
man chronyc
ネットワークジッターとは
ネットワークは、高速であることと遅延が小さいか大きいかというのは別の話です。
例えば 1 Gbps のネットワークよりも遅延の大きい 10 Gbps のネットワークもありえます。
遅延の幅も常に一定とは限らず、変化します。
この遅延時間の変化度合いを「ゆらぎ (ジッタ : jitter)」と呼びます。
つまり、ネットワークジッターとは、遅延時間の変化度合のことを言います。
参考
https://milestone-of-se.nesuke.com/nw-basic/grasp-nw/network-delay-jitter-realtime-bulk/
RFC 5905とは
RFC(Request for Comments)は、インターネットで用いられるさまざまな技術の標準化や運用に関する事項など幅広い情報共有を行うために公開される文書シリーズです。
RFC 5905(およびRFC 7822)は、NTPに関するドキュメントです。
参考 1
https://www.nic.ad.jp/ja/newsletter/No24/090.html/
参考 2
https://www.nic.ad.jp/ja/basics/terms/ntp.html
インターリーブモードとは
NTP クライアントが、送信後に生成された送信タイムスタンプを受け取るようにする設定のこと。以下、Red Hat 8のマニュアルより抜粋。
11.8.5. インターリーブモードの有効化
ハードウェアの NTP アプライアンスではなく、chrony など、ソフトウェアの NTP 実装を実行する汎用コンピューターの NTP サーバーは、パケット送信後にのみハードウェア送信タイムスタンプを取得します。
この動作により、サーバーは、対応するパケットのタイムスタンプを保存できません。
NTP クライアントが、送信後に生成された送信タイムスタンプを受け取るようにするには、/etc/chrony.conf のサーバーディレクティブに xleave オプションを追加し、クライアントが NTP インターリーブモードを使用するように設定します。
設定例
server ntp.local minpoll 0 maxpoll 0 xleave