SNTP【Simple Network Time Protocol】

広告

広告

SNTPとは

最終更新
2006-07-27T00:21:00+09:00
この記事のURI参照
https://www.7key.jp/nw/technology/protocol/sntp.html#what

SNTPは分散した多数の端末間でネットワークを使用して時刻を同期させるために使うプロトコルです。精確な時刻情報源を階層的に構築するNTPプロトコルを基にし、クライアント向けに軽量化されたプロトコルとなっています。SNTPではSNTPクライアントからNTPサーバに対する時刻情報のリクエストとそれに対するレスポンスのみが用意されており、NTPのような統計的な誤差の処理機能などは持っていません。このため、ネットワークトラフィックの混雑などの理由により同期精度が下がる可能性もあります。

NTP及びSNTPの以前のバージョンと、SNTPv4との重要な変更点は、SNTPv4はIPv6OSIアドレッシングを適応させるためにヘッダ情報が修正された点です。このためにSNTPv3が説明されていますRFC1769は廃止となっています。

SNTPメッセージフォーマット

最終更新
2006-07-27T20:29:00+09:00
この記事のURI参照
https://www.7key.jp/nw/technology/protocol/sntp.html#format

以下はNTP及びSNTPv4のメッセージフォーマットを表したものです。このメッセージはIPヘッダとUDPヘッダに続きます。このメッセージフォーマットは、参照識別子フィールドの内容以外はRFC1305で記述されているNTPメッセージフォーマットと同一です。

SNTPメッセージフォーマット

LI(閏秒指示子/2bit)

このフィールドはその日の最後の1分に閏秒を挿入または削除することを警告します。

0【00】
警告なし
1【01】
その日の最後の1分が61秒
2【10】
その日の最後の1分が59秒
3【11】
警告状態(時計が同期していない)

VN(バージョン番号/3bit)

NTP及びSNTPバージョン番号を示すフィールドです。このバージョン番号は、バージョン3(IPv4のみ)では3、バージョン4(IPv4、IPv6OSI)では、4となっています。IPv4、IPv6、OSIを識別する必要がある場合はカプセル化されたパケットの内容を詳しく調べる必要があります。

モード(3bit)

ユニキャストまたはエニーキャストモードでは、クライアントはリクエスト時にモードを3に設定します。サーバは応答でモードに4を設定します。マルチキャストモードでは、サーバはモードを5に設定します。

0
予約
1
対象能動
2
対象受動
3
クライアント
4
サーバ
5
ブロードキャスト
6
NTP制御メッセージのため予約
7
私的使用のため予約

階層(8bit)

ローカル時計の階層レベルを示します。

0
不明または有効ではない階層
1
Stratum 1であることを示す
2-15
Stratum 2〜15であることを示す
16-255
予約

ポーリング間隔(8bit)

連続するメッセージの最大間隔を表します。単位は秒で、最も近い2のべき乗で表されます。このフィールドに現れる値は、現在のところ4(16秒)から14(16284秒)です。ただし、ほとんどのアプリケーションで6(64秒)から10(1024秒)という副次的な範囲のみを使用しています。

精度(8bit)

ローカル時計の精度を示します。単位は秒で、最も近い2のべき乗で表されます。このフィールドに通常現れる値は、-6といったコンセントの周波数の時計で使用されるものから、-20といった一部のワークステーションにあるようなマイクロ秒時計で使用されるものまでの範囲にあります。

ルート遅延(32bit)

32bitの符号付き固定小数点数で、Stratum 1までの往復遅延の合計を示しています。小数点がビット15と16の間にある秒単位で表されます。この値は相対時間と周波数変位によって正負両方の値をとります。通常、数ミリ秒の負の値から数百ミリ秒の正の値までの範囲にあります。

ルート拡散(32bit)

32bit符号無しの固定小数点数で、Stratum 1との名目的な相対誤差を示しいます。小数点がビット15とビット16の間にある秒単位で表されます。通常、0から数百ミリ秒の範囲にあります。

参照識別子(32bit)

固有の参照源を確認するためのビット列です。NTPv3またはv4の場合、Stratum 0、Stratum 1のサーバにおいて、当フィールドは4文字アスキー文字列が入ります(左寄せでパディングは0)。NTPv3のStratum 2では、32bitの参照源のIPv4アドレスとなります。NTPv4のStratum 2では、参照源の最新の送信タイムスタンプの下位32ビットが入ります。Stratum 1では当フィールドを下記に従って外部参照源を識別するコードに設定しなければなりません。

LOCL
同期のための外部的な手段のないサブネットで、1次参照として利用される外部の時計を計測しないローカル時計
PPS
各国で標準時のために個別に測定されている原子時計又は、他の秒単位の振動源
NIST ダイアルアップ モデムサービス
USNO
USNO モデムサービス
PTB
PTB (Germany) モデムサービス
TDF
Allouis (France) ラジオ 164 kHz
DCF
Mainflingen (Germany) ラジオ 77.5 kHz
MSF
Rugby (UK) ラジオ 60 kHz
WWV
Ft. Collins (US) ラジオ 2.5、 5、 10、 15、 20 MHz
WWVB
Boulder (US) ラジオ 60 kHz
WWVH
Kaui Hawaii (US) ラジオ 2.5、 5、 10、 15 MHz
CHU
Ottawa (Canada) ラジオ 3330、 7335、 14670 kHz
LORC
LORAN-C 無線航行システム
OMEG
OMEGA 無線航行システム
GPS
全地球無線測位システム
GOES
静止軌道周回衛星

参照タイムスタンプ(64bit)

ローカル時計が最後に設定あるいは、修正された時刻を示します。

開始タイムスタンプ(64bit)

クライアントからサーバへリクエストが発信された時間を64bitタイムスタンプフォーマットで示します。

受信タイムスタンプ(64bit)

サーバへリクエストが到着した時間を64bitタイムスタンプフォーマットで示します。

送信タイムスタンプ(64bit)

サーバからクライアントに応答が発信された時間を64ビットタイムスタンプフォーマットで示します。

鍵識別子(任意/32bit)

NTP認証手順が実装される際にその鍵識別子とメッセージ概要フィールドは、メッセージ認証コード(MAC)情報を含みます。

補足知識

最終更新
2006-07-27T00:44:00+09:00
この記事のURI参照
https://www.7key.jp/nw/technology/protocol/sntp.html#supplement

広告

Copyright (C) 2006 七鍵 key@do.ai 初版:2006年07月27日 最終更新:2006年07月27日