ノート:Time Protocol
「他タイムプロトコルとの関係および紹介」について
[編集]本稿内で、他の時間系プロトコルに関する紹介が記載されていますが、このうち Network Time Protocol はかなり充実した記事になっているようです。また、Simple Network Time Protocolについても独立記事が存在し、かつてはかなり有用な内容を含んでいました (参照: 2006年11月4日 (土) 14:27版 が、現在はほとんど削り取られてしまっているようです。
そこで、独立した記事のあるものは「関連項目」節を設けてリンクを貼り、主要な仕組みの記述はそちらに譲って、本稿内では「比較」の記述にとどめることを提案します。また、SNTPの部分については一部転記、その他のプロトコルについても分割が考え得るところだと思いますが、いかがでしょうか。 --Kuropen(会話) 2013年2月10日 (日) 16:27 (UTC)
Kuropen様への回答
[編集]Network Time Protocol と、Simple Network Time Protocolの現状は知っていました。
「主要な仕組みの記述はそちらに譲って、本稿内では「比較」の記述にとどめる」について 確かにその方が全体的に纏まると思います。 ですが、Network Time Protocolは間違い多く、SNTPと共通部分しか記述されておらず、NTPオリジナルの記述が抜けております。
残念ですが、プロトコルや実装に関する知識がないNTP利用者が、見える範囲で記述したと思われます。 当方としては、NTPやSNTPが正しい記述をしてから、訂正させていただきたいです。
NTPがこのままだと辞書としてはづかしくないですか? ざっと目をとうしただけでも下記は正しくありません。
(1)概要
[編集]間違いの要因:ハードウェア時計(RTC)とOS時計の関係を知らないためだと思います。 NTPの同期は、RTCの同期ではなく、OS時計の同期が目的です。
※根拠 マルチタスクOSでは、RTCはOS起動時にしかOS時計に反映しません。 その後は、コンピュータのクロックを分周した、タイマー割込みを積算してOS時計を維持します。 現在のコンピュータでも、タイマー割込みは、厳密な1秒は作れません。そのため時計がズレてゆくのです。 これは、RTCのズレより大きいのです。 そのため、ネットワーク時計同期の仕組みが考えられました。
RTCへの反映は、NTPの範疇外です。
理由は、RTCはハードウェアであり、OSにより反映方法が異なります。
されらに、NTP発祥のUNIXもそうですが、ユーザモードではRTC操作できません。
これは、カーネルレベルで動作するドライバクラスしかできないのです。だから規格化していないのです。
※これは、OS実装の携われば知る事実です。
RTCメインで使うOSは、シングルタスクのOSです。
OSが時計を必要とするのは、ファイルの書込みだけだからです。
(2)処理の概略
[編集]これも正確ではありません。 -「NTPサーバに接続」 正しくは、「接続はしません、UDPによるNTPパケット送信する」です。 -「受け取った時刻情報を補正して自動的にミリ秒単位の精度で自機・OSの時計を校正する。」 正しくは、サーバから受取った時刻情報から、「サーバとの時刻差分を算出」し、実機のOS時計の校正を行うです。 「通信遅延時間の計測」と書いている意味を正しく理解していれば、「閏秒の扱い」が嘘である事がわかるはづです。 精度に関しては、OS側ライブラリコールに依存します。 これがRTCならば、秒単位です。市販されているLSIを見ればミリ秒はまず売っていません。
(3)ドリフトの修正
[編集]これは実装者が考える部分で記述はありません。 少なくても、「RFC1305 NTP Version 3」か「RFC5905 NTP Version 4」と読んで、かつ実装経験があれば、間違いがわかるはづです。
(4)NTPの実装
[編集]ntpdateは、SNTPのユーティリティでクロックデーモンの登録して簡易的に時計合わせを提供したものです。 つまりNTPではありません。
SNTP
[編集]Simple Network Time Protocolの 2006年11月4日 (土) 14:27版の内容を拝見させていただきました。
NTPパケットに関する知識と、実装処理は正しい認識だと思いますが、消されていますね。残念! --以上の署名のないコメントは、Sgs00127(会話・投稿記録)さんが 2015-04-05T08:18:25(UTC) に投稿したものです(nnh(会話)による付記)。
「他タイムプロトコルとの関係および紹介」の扱いについて
[編集]「他タイムプロトコルとの関係および紹介」節がTime Protocolにある意味がよくわかりません。Time Protocolは、現在では実質的に使われていないプロトコルです。そもそも、特定のプロトコルの項目内にこのような記述があるのがおかしいので、やるのであれば「時刻同期プロトコルの比較」のような独立項目にするべきでしょう。--nnh(会話) 2019年3月7日 (木) 01:04 (UTC)
- 1年以上前の話ですが続けます。クロック同期(時刻同期)という項目を作成しましたので、こちらにまとめようと思います。もっとも、当該の節は出典皆無なのでどれくらい使えるのかという話もありますが……。--nnh(会話) 2020年6月24日 (水) 06:02 (UTC)
- 一応、正式に分割提案を出しました。が、どれくらい統合できるものか。RFCの記載くらいしか統合できないのではないかという気もします。DAYTIMEプロトコルは場違い(応答として人間可読の時間を返すだけで、時間取得自体が目的ではない)なので、転記せず、単純に除去する予定です。--nnh(会話) 2020年6月29日 (月) 02:21 (UTC)
- 特にご意見がありませんでしたので、分割・統合を実施します。--nnh(会話) 2020年7月6日 (月) 09:20 (UTC)