Time Protocol

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
TCP/IP群
アプリケーション層

BGP / DHCP / DNS / FTP / HTTP / IMAP / IRC / LDAP / MGCP / NNTP / NTP / POP / RIP / RPC / RTP / SIP / SMTP / SNMP / SSH / Telnet / TFTP / TLS/SSL / XMPP

カテゴリ
トランスポート層

TCP / UDP / DCCP / SCTP / RSVP

カテゴリ
ネットワーク層

IP (IPv4, IPv6) / ICMP / ICMPv6 / IGMP / IPsec

カテゴリ
リンク層

ARP/InARP / NDP / OSPF / トンネリング (L2TP) / PPP / MAC (イーサネット, IEEE 802.11, DSL, ISDN)

カテゴリ

Time Protocol(タイム・プロトコル)とは、RFC868に記述される、シンプルな時計同期機構を提供するプロトコルである。 OSI参照モデルの第7層(アプリケーション層)に位置し、TCPUDPポートの37番を使用するもので、 TCPとUDPポートのどちらかまたは、両方を使用して設計を行なう。

通信手順[編集]

TCP/IP版の通信手順[編集]

  1. サーバ
    ポート番号37でオープンし、リッスン状態で待機する。
  2. クライアント
    ポート番号37に接続を行う。
  3. サーバ
    接続後、時計データを送信する。
  4. クライアント
    時計データを受理し、切断を行う。

※サーバ側で時間を送信できない場合は、接続を拒否する。

UDP/IP版の通信手順[編集]

  1. サーバ
    ポート番号37で受信待ちする。
  2. クライアント
    空のパケットをポート番号37に送信する。
  3. サーバ
    空のパケットを受信後、時計データを返信する。

時計データ[編集]

協定世界時 (UTC) の1900年1月1日00:00を起点とする32ビット符号なし整数で、単位は経過秒を送信する。

関連RFC[編集]

他タイムプロトコルとの関係および紹介[編集]

Daytime Protocol[編集]

概要[編集]

Time Protocolとは同一精度である。 ポイント・ツー・ポイントによる通信機構を使用する。

設計コンセプトの違いは[編集]

  • Daytime Protocolは見て確認を重視しており、時刻はASCII文字列が送信される。
  • Time Protocolは、コンピュータで処理が行いやすように設計されており、数値が送信される。

関連RFC[編集]

  • RFC867 Daytime Protocol

SNTP(Simple Network Time Protocol)[編集]

概要[編集]

NTPパケットを利用した、簡易時計同期プロトコル。 Time Protocolより精度は高く、またNTP程の高度なアルゴリズムを実装せず、簡単に扱えることを目的とする。 時計の基準時刻は、UTCの1900年1月1日00:00を起点とする。 通信モードは、一般的にNTPサーバ・クライアントモードのみ実装していることが多く、それ以外のモードは任意実装。

Time Protocolとの違い[編集]

  • ネットワーク遅延計算を含んだ時計同期機構を備えている。
  • NTPと同様に階層構造のアーキテクチャをもち、タイムサーバを分散することが可能。
  • 時計パケットの最小単位はNTPパケットを利用しているため200ピコ秒のまでの格納が可能。

ただし、時計同期精度はパケットほどの精度は、出すことはできない。 SNTPは時計同期精度に関する規約はなく、実装者による設定が精度となる。

関連RFC[編集]

  • RFC1361 SNTP
  • RFC1769 SNTP
  • RFC2030 SNTP Version 4 for IPv4, IPv6 and OSI
  • RFC4330 SNTP Version 4 for IPv4, IPv6 and OSI

NTP(Network Time Protocol)[編集]

概要[編集]

NTPパケットを利用した、厳密な時計同期機構を搭載する。 ネットワーク遅延計算,コンピュータ負荷の安定度など多岐にわたり計測アルゴリズムを搭載する。 時計をコンピュータ機器への反映方式は、いくつか提案されているが実装者による選択となっている。

時計同期精度に関する規約[編集]

  • 時計候補の許容範囲:10ミリ秒~4秒未満を時計候補となるように規定されている。
  • 時計反映判定:10ミリ秒以下は、初期値として誤差修正の範囲から外されている。(設定値のため1ミリ秒まで精度を上げることが可能)

SNTPとの違い[編集]

  • タイムサーバに対する厳密な評価機構を搭載している。(評価機構に合格したものを、時計同期候補とし、その中で最も高い評価を得た時計と同期する。)
  • 複数のタイムサーバ選抜機構(評価機構を含む)がアルゴリズムとして定義されている。
  • 上位タイムサーバへの問合わせ周期は2のべき乗で、安定度を計測しポーリング周期を自動的に変更するアルゴリズムが定義されている。
  • 複数の時計同期アルゴリズムが通信モードとして用意されている。
  • サーバの負荷制御機構が定義されている(任意実装)。
  • セキュリティ機構が定義されている(任意実装)。
  • SNMPのMIB定義が行われている(Version4より定義)。
  • 管理機構の定義がある。

関連RFC[編集]

  • RFC958 NTP 提案
  • RFC1059 NTP Version 1 仕様と実装
  • RFC1119 NTP Version 2 仕様と実装
  • RFC1129 NTP Version 2 同期機構の提案
  • RFC1305 NTP Version 3 仕様と実装 
  • RFC5905 NTP Version 4 プロトコルとアルゴリズム仕様
  • RFC5906 NTP Version 4 Autokey仕様(セキュリティモデル仕様)
  • RFC5907 NTP Version 4 管理オブジェクトの定義(SNMPのMIB情報の定義)
  • RFC5908 NTP Version 4 DHCPv6追加仕様

PTP(Precision Time Protocol)[編集]

概要[編集]

IEEE1588に基づく高精度時計同期機構のアプリケーション領域で、LANに特化したプロトコル。 時刻源としては、GPS衛星の他にCDMA携帯電話基地局を使用する[要出典]。 時刻源の根拠は、以下の通り。(参考文献:PTP白書[1]

  • すべてのGPS衛星は非常に正確な原子時計を内蔵しており、その精度は米国国防総省により常に監視補正されている。
  • 携帯電話会社が管理し、CDMAシステムが機能するために10マイクロ秒以内のタイミング精度が保たれている。

プロトコルは、2つのバージョンが存在する。

  • IEEE-1588-2002 V1
  • IEEE-1588-2008 V2

タイムスタンプ精度は、10マイクロ秒以下としている。 ただし、IEEE1588に対応するハードウェアを搭載していない機器では、NTPと同じ程度の精度となる。