目次

参考:金融取引システム・高頻度取引(HFT)に必要なネットワーク

時刻同期のNTPとPTPの違い(PPS)

時刻を正確にすることは、障害の調査やパフォーマンス計測をする場合などとても重要です。

最近では、さらにより精度の高い情報が必要になってきています。
たとえば、高頻度取引(HFT)にとっては、ネットワークの遅延情報がとても重要になってきます。
フレームにタイムスタンプヘッダを付与し、モニタリングし、いかに遅延をなくすかを分析します。



時刻の単位

秒(s)
ミリ秒(ms)
マイクロ秒(µs)
ナノ秒(ns)

1 s   = 1,000 ms  = 1,000,000 µs = 1,000,000,000 ns
0.1 s  = 100 ms   = 100,000 µs =  100,000,000 ns
0.01 s  = 10 ms   = 10,000 µs =  10,000,000 ns
0.001 s  = 1 ms    = 1,000 µs  =  1,000,000 ns
0.0001 s  = 0.1 ms   = 100 µs  =  100,000 ns
0.00001 s  =  0.01 ms  = 10 µs =  10,000 ns
0.000001 s  =  0.001 ms  = 1 µs =  1,000 ns


時刻同期の比較

時刻同期方式 精度 媒体 インターフェース
NTP <1~10ms LAN/WAN環境 Ethnernet
PTP v1/v2 IPv4 ハイブリッドタイムスタンプ <10~100us LAN環境 Ethnernet
PTP v2 IPv4 ハードウェアタイムスタンプ <1us LAN環境 Ethnernet
1PPS信号 <1us 同軸 同軸
GPS <1us GPS衛星 同軸

Endrun IEEE 1588 PTP グランドマスタークロック

1PPSとは


NTPとPTPの比較

NTPとは

うるう秒(閏秒 : leap second)

地球の自転が遅い状態が続いたり、自転の速い状態が続いたりすると、地球の自転によって決まる時刻と原子時計によって決まる時刻のずれが大きくなります。そのようなとき、時刻のずれを修正するために「うるう秒」を実施します。

質問4-3)「うるう秒」ってなに? | 国立天文台(NAOJ)

■通常(うるう秒なし)
X時59分58秒
X時59分59秒
X時00分00秒
X時00分01秒
■うるう秒あり
X時59分58秒
X時59分59秒
X時59分60秒  <- うるう秒
X時00分00秒
X時00分01秒
過去のうるう秒
第27回 2017/1/1 +1 秒
第26回 2015/7/1 +1 秒
第25回 2012/7/1 +1 秒
第24回 2009/1/1 +1 秒
第23回 2006/1/1 +1 秒
第22回 1999/1/1 +1 秒
第21回 1997/7/1 +1 秒
第20回 1996/1/1 +1 秒
第19回 1994/7/1 +1 秒
第18回 1993/7/1 +1 秒
第17回 1992/7/1 +1 秒
第16回 1991/1/1 +1 秒
第15回 1990/1/1 +1 秒


PTPとは

詳細は、PTPプロトコルの詳細


PTPが使われる場面


うるう秒がない

NTPは、地球の自転周期に追従するうるう秒がある時刻系ですが、
PTPは、国際原子時(TAI)をつかっており、うるう秒がない時刻系になります。


ハードウェア・タイム・スタンプとソフトウェア・タイム・スタンプ

ハードウェア・タイム・スタンプ PTPは数十分の1ミリ秒以内の精度でシステムを同期
ソフトウェア・タイム・スタンプPTPは数十ミリ秒以内の精度でシステムを同期


グランドマスター(Grandmaster)

ハードウェアタイムスタンプの
グランドマスター
グランドマスタークロックは GPS 時刻に対して 30ナノ秒以上の精度
ハードウェアタイムスタンプの
スレーブ
専用NICによるハードウェアタイムスタンプとPTPソフトウェアデーモン
100ナノ秒以上の同期精度
ソフトウェアタイムスタンプの
スレーブ
既存のハードウェアとPTPデーモンで実現
10から100マイクロ秒程度の精度での同期
マザーボード上のシステムクロックの精度は悪く、
またソフトウェアタイムスタンプは OS の遅延の影響を受ける
1PPS 出力がないために、ソフトウェアスレーブとマスターの同期精度の測定はログファイルの記録に頼る必要がある。


PTPに使われるスイッチ

通常TTL1なのでL3スイッチやルータを通過できませんが、TTLを大きくしてスイッチを通過させることが可能です.

一般的なスイッチ

一般的なイーサネットスイッチは受け取ったパケットを一旦蓄積してから出力します。
蓄積する時間は予測できず、ネットワークの負荷の影響も受けるためにパケットの遅延はばらつきます。

高速低遅延スイッチ 高速低遅延な蓄積伝送スイッチは、少ないネットワーク負荷においては安定した精度の高い同期を実現しますが、蓄積伝送ゆえパケット遅延のばらつきが生じ、これが時刻同期に悪い影響を与えます。
IEEE-15888機能を持つスイッチ
BC
(Boundary Clock)
(境界クロック)
PTPv1でも利用可能
マスターから見て BC はスレーブのように振る舞い、サブネットに対してはマスターとして振る舞います。
BC は PTP のパケットだけを扱い、一般のイーサネットスイッチやルーターがその他全てのトラフィックを担います。
分離されたサブネットにあるスレーブは、 BC がマスターであるかのようにそれに同期します。
バウンダリークロックを多段に使用することは誤差の累積を招きます.
BC を設置する際は PTP パケットのためにサブネットを用意します。
TC
(Transparent Clock)
(透過クロック)
PTP v2 で定義された
パケットを蓄積している時間を計測し、その時間を Follow-up message の補正項に書き込みます。
スレーブがパケットの遅延を計算する際に、タイムスタンプとこの補正項を使います。
トランスペアレントクロックの動作には2つのモードE2EとP2Pがあり、混用することはできません
E2E : End-to-End
P2P : Peer-to-Peer



List of PTP implementations - Wikipedia


LinuxでPTPを使う方法


時刻ソースの種類

時刻ソース 精度
GNSS(GPS) ±1µs/回(マイクロ秒)
光テレホンJJY ±1ms/回
テレホンJJY ±10ms/回

±1µs/回の精度が必要な場合、GNSS(GPS)しか選択肢がないです。

GNSSとは(GPSなど)

GPS時刻の遅延(18秒)

2021年1月時点で、GPS時刻は、うるう秒がないため、UTC 世界時刻よりも18秒早いです。
次のうるう秒で、19秒早くなります。

光テレホンJJY

テレホンJJY



時刻ソースタイプについて | タイムサーバー | セイコーソリューションズ




時刻同期に必要な機器

オシレータ (Oscillator:発振器)の種類

GNSS信号を受信できなくなってしまった場合に、機器内蔵のオシレーターが時刻を保持します。
複数の種類があり選択することが可能です。
少し安めの機器が、「OCXO」を利用しており、高価な機器が「ルビジウム」を利用しています。

XO Crystal Oscillator
安価で、多くの腕時計に使用されます
TCXO Temperature Compensated Crystal Oscillator
温度補償水晶発振器
周囲温度による発振器周波数のズレを自動補正
400 us/日
OCXO Oven Controlled Crystal Oscillator
恒温槽付水晶発振器ともよばれ、恒温槽内の温度を一定に保つことで、
恒温槽内の水晶発振器の周波数変動を低減します。
25 us/日
ルビジウム原子発振器 原子や分子毎の決まった周波数の電磁波を基準として、水晶発振器よりも高精度な周波数を出力 1 us/日
セシウム原子発振器 原子や分子毎の決まった周波数の電磁波を基準として、水晶発振器よりも高精度な周波数を出力

フルノGPS/GNSS基準周波数発生器[GPSDO、GNSSDO] | 技術 | GPS/GNSSチップ&モジュール | フルノ製品情報


タイムサーバ

タイムサーバは、オプションが色々あるので、購入する時はベンダーとしっかり話して購入しましょう。

メーカー 製品 時刻ソース 配信プロトコル、出力信号
SEIKO TS-2950 GNSS、光テレホンJJY
など
NTP 、PTP 、1PPS
など
Microsemi SyncServer S600 / S650 GNSS、1PPS NTP、PTP、1PPSなど


その他用語メモ

BNC 同軸ケーブル(the coax cable)に使われるコネクタ
Bayonet Neill Concelman
BNC Femail(同軸)
CSAC Chip Scale Atomic Clock
超小型原子時計
オシロスコープ 電気信号をグラフとして表示する機器
アンプ GPS信号増幅器
アレスタ 避雷器
スプリッター
T1/E1 T1/E1のGrandMasterには、T1/E1のInputやOutputがある機種もあります。
T1回線は、北米、E1回線はヨーロッパで使われていた。
T1回線は、1.544Mbps、E1回線は2.048Mbps。
日本では、ISDNで、T1が使われていた。


参考