「NTP」の版間の差分

提供: Wikinote
移動: 案内検索
行6: 行6:
  
 
これ [http://www.amazon.co.jp/Expert-Network-Time-Protocol-Experience/dp/1590594843/hagio.org-22 Expert Network Time Protocol: An Experience in Time with NTP (Expert)] 誰か翻訳して…。
 
これ [http://www.amazon.co.jp/Expert-Network-Time-Protocol-Experience/dp/1590594843/hagio.org-22 Expert Network Time Protocol: An Experience in Time with NTP (Expert)] 誰か翻訳して…。
 +
 +
== メモ ==
 +
* ntpd はサーバでもクライアントでも UDP 123 番ポートを用いる。
  
 
== ツール等 ==
 
== ツール等 ==

2010年4月12日 (月) 22:54時点における版

Network Time Protocol

やってることは単に時刻を合わせて、時計の進み方を正確にするだけなのに、異様に奥が深い NTP について。

ちなみに、ntp 付属文書の 日本語訳 やってます。いつまでかかることやら。

これ Expert Network Time Protocol: An Experience in Time with NTP (Expert) 誰か翻訳して…。

メモ

  • ntpd はサーバでもクライアントでも UDP 123 番ポートを用いる。

ツール等

ntptime

カーネルの時計関連の情報を表示・設定することができる。

[hagio@lab ~]$ ntptime
ntp_gettime() returns code 0 (OK)
  time cd8dcff1.8d374000  Mon, Apr 13 2009 23:51:29.551, (.551624),
  maximum error 20085 us, estimated error 0 us
ntp_adjtime() returns code 0 (OK)
  modes 0x0 (),
  offset 0.000 us, frequency 77.335 ppm, interval 1 s,
  maximum error 20085 us, estimated error 0 us,
  status 0x1 (PLL),
  time constant 6, precision 1.000 us, tolerance 512 ppm,

それぞれの値の意味は…難しいんだこれが。誰か解説本書いてくれないかなあ。

ntp_adjtime() から返っている status 値は、/usr/include/linux/timex.h で定義されている以下の値を取る。

/*     
 * Status codes (timex.status) 
 */    
#define STA_PLL                0x0001  /* enable PLL updates (rw) */
#define STA_PPSFREQ    0x0002  /* enable PPS freq discipline (rw) */
#define STA_PPSTIME    0x0004  /* enable PPS time discipline (rw) */
#define STA_FLL                0x0008  /* select frequency-lock mode (rw) */

#define STA_INS                0x0010  /* insert leap (rw) */
#define STA_DEL                0x0020  /* delete leap (rw) */
#define STA_UNSYNC     0x0040  /* clock unsynchronized (rw) */ ★いわゆる 11 分モードのとき、0 になる
#define STA_FREQHOLD   0x0080  /* hold frequency (rw) */

#define STA_PPSSIGNAL  0x0100  /* PPS signal present (ro) */
#define STA_PPSJITTER  0x0200  /* PPS signal jitter exceeded (ro) */
#define STA_PPSWANDER  0x0400  /* PPS signal wander exceeded (ro) */
#define STA_PPSERROR   0x0800  /* PPS signal calibration error (ro) */

#define STA_CLOCKERR   0x1000  /* clock hardware fault (ro) */

#define STA_RONLY (STA_PPSSIGNAL | STA_PPSJITTER | STA_PPSWANDER | \
    STA_PPSERROR | STA_CLOCKERR) /* read-only bits */

参考文献

うるう秒関連

その他

  • 最近の携帯電話に搭載されている自動時刻合わせ機能は、基地局からの制御情報に含まれる時刻情報を利用している。したがって、i-mode などを用いた NTP でもなければ、標準電波を利用した、いわゆる電波時計でもない。電波っちゃ電波だけど。