広告
広告
https://www.7key.jp/nw/technology/protocol/sntp.html#what
SNTPは分散した多数の端末間でネットワークを使用して時刻を同期させるために使うプロトコルです。精確な時刻情報源を階層的に構築するNTPプロトコルを基にし、クライアント向けに軽量化されたプロトコルとなっています。SNTPではSNTPクライアントからNTPサーバに対する時刻情報のリクエストとそれに対するレスポンスのみが用意されており、NTPのような統計的な誤差の処理機能などは持っていません。このため、ネットワークトラフィックの混雑などの理由により同期精度が下がる可能性もあります。
NTP及びSNTPの以前のバージョンと、SNTPv4との重要な変更点は、SNTPv4はIPv6とOSIアドレッシングを適応させるためにヘッダ情報が修正された点です。このためにSNTPv3が説明されていますRFC1769は廃止となっています。
https://www.7key.jp/nw/technology/protocol/sntp.html#format
以下はNTP及びSNTPv4のメッセージフォーマットを表したものです。このメッセージはIPヘッダとUDPヘッダに続きます。このメッセージフォーマットは、参照識別子フィールドの内容以外はRFC1305で記述されているNTPメッセージフォーマットと同一です。
このフィールドはその日の最後の1分に閏秒を挿入または削除することを警告します。
NTP及びSNTPバージョン番号を示すフィールドです。このバージョン番号は、バージョン3(IPv4のみ)では3、バージョン4(IPv4、IPv6、OSI)では、4となっています。IPv4、IPv6、OSIを識別する必要がある場合はカプセル化されたパケットの内容を詳しく調べる必要があります。
ユニキャストまたはエニーキャストモードでは、クライアントはリクエスト時にモードを3に設定します。サーバは応答でモードに4を設定します。マルチキャストモードでは、サーバはモードを5に設定します。
ローカル時計の階層レベルを示します。
連続するメッセージの最大間隔を表します。単位は秒で、最も近い2のべき乗で表されます。このフィールドに現れる値は、現在のところ4(16秒)から14(16284秒)です。ただし、ほとんどのアプリケーションで6(64秒)から10(1024秒)という副次的な範囲のみを使用しています。
ローカル時計の精度を示します。単位は秒で、最も近い2のべき乗で表されます。このフィールドに通常現れる値は、-6といったコンセントの周波数の時計で使用されるものから、-20といった一部のワークステーションにあるようなマイクロ秒時計で使用されるものまでの範囲にあります。
32bitの符号付き固定小数点数で、Stratum 1までの往復遅延の合計を示しています。小数点がビット15と16の間にある秒単位で表されます。この値は相対時間と周波数変位によって正負両方の値をとります。通常、数ミリ秒の負の値から数百ミリ秒の正の値までの範囲にあります。
32bit符号無しの固定小数点数で、Stratum 1との名目的な相対誤差を示しいます。小数点がビット15とビット16の間にある秒単位で表されます。通常、0から数百ミリ秒の範囲にあります。
固有の参照源を確認するためのビット列です。NTPv3またはv4の場合、Stratum 0、Stratum 1のサーバにおいて、当フィールドは4文字アスキー文字列が入ります(左寄せでパディングは0)。NTPv3のStratum 2では、32bitの参照源のIPv4アドレスとなります。NTPv4のStratum 2では、参照源の最新の送信タイムスタンプの下位32ビットが入ります。Stratum 1では当フィールドを下記に従って外部参照源を識別するコードに設定しなければなりません。
ローカル時計が最後に設定あるいは、修正された時刻を示します。
クライアントからサーバへリクエストが発信された時間を64bitタイムスタンプフォーマットで示します。
サーバへリクエストが到着した時間を64bitタイムスタンプフォーマットで示します。
サーバからクライアントに応答が発信された時間を64ビットタイムスタンプフォーマットで示します。
NTP認証手順が実装される際にその鍵識別子とメッセージ概要フィールドは、メッセージ認証コード(MAC)情報を含みます。
https://www.7key.jp/nw/technology/protocol/sntp.html#supplement
広告