Network Time Protocolとは何ですか?
Network Time Protocolは、ネットワーク上の複数のコンピューター間で時刻を正確に同期する手段です。 ほとんどのコンピューターの時計は毎日少なくとも1秒の時間を失いますが、これは平均的なユーザーにとってそれほど重要ではありません。 多くのセキュリティおよびイベントログシステムは、インターネットを含む複数のネットワーク上のコンピューターを追跡する必要があります。 これらのシステムは、リンクされたコンピューターのNetwork Time Protocolとのクロック同期に依存しています。 このプロトコルは、国際原子時間標準を維持するサーバーからクライアントの正確な時間を頻繁に更新します。
NTPの頭字語でも知られるNetwork Time Protocolは、1980年代後半に標準として初めて確立されました。 認証、アルゴリズム、精度、外部同期を改善するために、1990年代を通じていくつかの改訂が行われました。 2010年に、NTPバージョン4がInternet Engineering Task Force(IETF)によってRequest For Comments(RFC)5905で提案されました。バージョン4には、公開キー暗号化、ナノ秒時間精度、およびタイムサーバーを自動的に見つける方法が含まれます。 また、新しいハードウェア基準クロックとオペレーティングシステムのサポートだけでなく、改善されたアルゴリズムと精度も含まれています。
小規模なローカルネットワーク上のユーザーは、電子メールまたはファイルの変更のタイムスタンプの順序が乱れている場合にのみ、少しイライラすることがあります。 ただし、多くのユーザーとインターネット上の共有リソースを含むネットワークは、これにより大きな影響を受けます。 金融取引データベース、産業用制御アプリケーション、およびネットワーク監視ソフトウェアでは、通常、取引を記録するシステムだけでなく、データを報告するすべてのコンピューターで24時間正確な時間が重要です。 Network Time Protocolおよびそれをサポートする国際時間サーバーは、これらのニーズに対処できます。
ネットワーク管理者は、タイムサーバーから手動で各クライアントの時刻を毎日更新できます。 システムは、再起動するたびに時間をリロードするように構成することもできます。 ただし、温度やオペレーティングシステムの問題を含む多くの要因により、時間ごとの時間のずれは重要です。 通常、最善の解決策は、ネットワークタイムプロトコルを使用して、1日に複数回、非常に小さな増分で各クロックを自動的にリセットすることです。 この方法を使用すると、システムおよびユーザーは、比較的大きな、突然の時間の前方または後方への飛躍によって「驚かされる」ことはありません。
Network Time Protocolを使用するクライアントは、インターネットベースのサーバーまたはハードワイヤード外部タイムソースから正確な時刻を取得できます。 最終的に、両方のソースが国際時間サーバーから協定世界時(UTC)を取得します。 ハードワイヤードソースは、直接または特別な無線信号を介して間接的に受信する場合があります。 通常、ネットワークソースは、NTPソフトウェアを実行しているサーバーの複数のレイヤーを介して間接的に取得します。 原子時計に直接配線されているタイムサーバーはわずかですが、世界中の何万ものサーバーがローカルシステムに時刻を中継しています。
各NTPクライアントで実行されているネットワーク時間関連のソフトウェアは、非常に正確かつ規則的にクロックを更新し続けます。 クライアントがインターネットに接続されていない場合、NTPアルゴリズムは過去のパフォーマンスに基づいて現在の時刻を推定します。 NTPのすべての機能を必要としないシステムでは、Simple Network Time Protocol(SNTP)と呼ばれる機能を削減したバージョンを使用できます。