GH GambleHub

時間の同期

なぜ必要なのか?

単一の正確な時間は、イベントの組織化、ログ/トレイルの正確な相関、トランザクションの署名、レポートの再現性の基礎です。キャッシュフローのあるプラットフォームでは、コンプライアンスと信頼の問題です。「誰が最初だったか」「、結果が記録されたとき」「、どのシードが使用されたか」です。

基本的なコンセプト

UTCとTAI: UTCには跳躍2番目の挿入が含まれています。TAI-それらなし。ほとんどのシステムはUTCで動作します。
2番目の跳躍:2番目の挿入/削除。サポート/緩和(smear)はシームレスな操作のために重要です。
Stratum (NTP):標準からの距離のレベル(0-atom/GNSS、 1-サーバー、2+-クライアント)。
PTP(英語版):Grandmaster (GM)→Boundary Clock (BC )/Transparent Clock (TC)→Slave。
PPS: GNSS/ジェネレータからの正確なアライメントのためのパルス毎秒。
サーボ:ローカルクロック(chrony/ptp4l/phc2sys)の周波数/位相を補正するアルゴリズム。

PTP時のNTP

NTP (Chrony):ミリ秒/100分のミリ秒の正確さ;WAN/インターネット;シンプルで信頼性の高い。
PTP (IEEE 1588):サブミリ秒とハードウェアマーク付きマイクロ秒まで;ネットワーク規律(L2/マルチキャスト/QoS)が必要です。
ハイブリッド:NTP/ChronyはPTP-GMへの参照を供給します;さらにデータセンターに-HWタイムスタンプ付きのPTP。

時間源と回復力

GNSS (GPS/GLONASS/Galileo/BeiDou)+PPSを主参考にしてください。
OCXO/TCXO(ジェネレータ)衛星が失われたときのホールドオーバー用。
バックアップ参照:2つの独立したGNSS受信機、異なるアンテナ/ケーブル、障壁を詰め込む。
セカンダリNTPプール:外部の信頼できるプロバイダとプライベートサーバ(VPN経由)。
BMC (Best Master Clock)と手動フェイルオーバープランを備えたGrandmaster x2。

PTPネットワークアーキテクチャ

プロファイル:デフォルト、テレコム(G.8275。x)、力。データセンターでは、デフォルトまたはベンダーのプロファイルがより一般的です。
Transparent Clock (TC)-スイッチによって補正フィールドが追加され、精度が向上します。
境界クロック(BC):スイッチ/ルーター-クライアントが最も高く、マスターが下位セグメントになります。
QoS: PTPマルチキャスト/ユニキャストの優先順位付け、キューの最小化。
分離:時間のための熱心なVLAN/VRF;PTPパスにL3-NATはありません。

セキュリティ: NTP、 PTP保護のためのNTS

NTP: use NTS (Network Time Security、 RFC 8915)-タイムサーバのTLS認証。周囲には対称キー(classic auth)が許可されています。オートキーは時代遅れです。
PTP:ネイティブMAC/認証はほとんど使用されません。L2/L3上のネットワーク絶縁、ACL、 MACsec/IPsecで補償します。
GNSS:詰め込むこと/なりすまし保護-信号の質のモニター、DOPの監視、ジオフィルター、異常な検出。

飛躍的な第二の処置および潤滑

飛躍-発表:NTP/Chronyは、次の2番目の挿入を発表します。
Smear: ± 0の日ストレッチ。ステップを避ける5 s(または他の窓)。Googleのようなスミアは「ジャンプ」を放棄するのに便利ですが、すべてのサービスは単一のポリシー(または輪郭を分離する)に従わなければなりません。

時間のSLO(例)

オフセットp95クライアント↔参照≤ 1。0 ms (データセンターNTP回路)、p99 ≤ 5 ms。
HWタイムスタンプ付きPTP:ドメイン内のオフセットp95 ≤ 20 μ s、 p99 ≤ 100 μ s。
ジッタ(stddev) ≤ 0。2ms (NTP)/≤ 5 μ s (PTP-HW)。
クロックステップイベント=0;プロダクションクラスのslew(滑らかな訂正)だけ。
ホールドオーバーOCXOでドリフト:≤ 1 ppm(制御とアラート)。

エンジニアリングプラクティス(NTP/Chrony)

なぜChrony:パケット損失/非対称性に強い「ノイズの多い」ネットワークに収束し、柔軟なNTS。

最小限の「クロニー」conf'(サーバ):
conf
Sources (top-level servers)
server ntp1. example iburst nts server ntp2. example iburst nts
Local GNSS with PPS (if any)
refclock SHM 0 poll 4 refid GNSS refclock PPS /dev/pps0 poll 4 refid PPS lock GNSS
Access restrictions allow 10. 0. 0. 0/8 deny all
makestep adjustment policy 0. 1 3 rtcsync log tracking measurements statistics
検証と監視:
bash chronyc tracking chronyc sources -v chronyc sourcestats -v

クライアント:少なくとも2つのサーバーを指定します。必要に応じて、早い開始時には'makestep'、必要に応じて'maxslewrate'を含める。

エンジニアリングプラクティス(PTP/linuxptp)

ハードウェアタイムスタンプ(HW-TS): PHC (PHC=PTPハードウェアクロック)を持つNIC/ドライバが必要です。

チェック:
bash ethtool -T eth0      grep timestamp phc2sys -l
ptp4l (slave/GM/BC)-設定の例:
conf
[global]
twoStepFlag      1 time_stamping     hardware tx_timestamp_timeout 30 logging_level     6 clock_class      248 clock_accuracy    0x20 priority1       128 priority2       128 delay_mechanism    E2E network_transport   L2 dsptp_domain     0

[eth0]
delay_filter     moving_average delay_filter_length  10 announceReceiptTimeout 3 syncReceiptTimeout   3
PHCバンドル→システムクロック:
bash
PHC NIC -> system clock (slew)
phc2sys -s /dev/ptp0 -c CLOCK_REALTIME -O 0 -E ntpshm -w
境界/透明クロックの場合:BC/TC対応スイッチのファームウェア/イメージを使用し、プロファイルを有効にします。pmcのモニター補正フィールド:
bash pmc -u -b 0 "GET TIME_STATUS_NP"

Kubernetes、仮想化およびコンテナ

ノードは通常のホストとK8sに同期されます。コンテナはホスト時間を使用します。
PTPの場合:HW-TSを持つ専用ノード上のPTP Operator/DaemonSet(例えば、'linuxptp-daemonset');PHCでNICをマーキングするための'NodeFeatureDiscovery'。
時間感度(RNG/ゲームイベント)によるワークロード分離:tains/tolerations→nodeとより良い同期。
仮想化では、ハイパーバイザの積極的な「仮想」ドリフトプルーフリーダーを無効にし、1つの期間(ゲストNTP/PTPまたはハイパーバイザから)を使用します。

ネットワークとQoS

時間VLAN/VRFを分離し、遅延やジッタを最小限に抑えます。
PTP E2Eの場合-経路非対称を避ける。P2Pの場合-link-local delayを使用します。
どこでも合意されている場合にのみジャンボMTUエンドツーエンドを有効にします。それ以外の場合は、標準的なMTUですが、安定したキューです。

UDP/123経由でNTPをルーティングし、NTS-TLSポートを許可します。PTPの場合、正しいマルチキャストACL (224。0.1.129/130).

監視とアラート

測定するもの:
  • オフセット、ジッタ、周波数ドリフト、修正/秒
  • PTP: 'offsetFromMaster'、 'meanPathDelay'、 'grandmasterIdentity'、 'stepsRemoved'。
  • GNSSの場合:SNR、 DOP、可視衛星、PPSジッタ。
ツールボックス:
  • 'chrony'をPrometheus (chrony-exporter)、テキストログ→Lokiにエクスポートします。
  • 'linuxptp' 'statistics('ptp4l -m')、node-exporter textfileによるメトリック。
  • ネットワークカウンタ:drops/retransmit/queue-len on time-VLAN。
アラート(アイデア):
  • NTPオフセットp95> 1 ms for 5 min。
  • PTP offsetFromMaster> 25 μ s (p95) 5 mm。
  • GNSS/PPSの損失>1分(ホールドオーバーに切り替える)。
  • 計画されたウィンドウ外のグランドマスター変更(BMC)。
  • RTC ↔システムクロック>ブートしきい値の違い。

運用と更新

開始/停止-まず、ネットワーク/GNSS/PPS→GM→BC/TC→クライアントを復元します。
Leap-second:事前に発表し、smearポリシーと互換性を確認します。
アップデート:ファームウェアNIC/スイッチ、 'linuxptp/chrony'-オフセット制御でステージング。
Runbooks: GNSSの損失、GMの交換、PTPドメインの再配置、クラスタのずれ、VLANのクラッシュ。

実装チェックリスト

  • サービスとログのSLO(オフセット/ジッタ)が定義されています。
  • 2つの独立した時間源(GNSS+NTP)、 2つのGM、 IUD/手動 Feilover計画。
  • 専用の時間VLAN/VRF、 QoS、 ACL/MACsec;BC/TC PTPが有効になっています。
  • どこでも単一の飛躍ポリシー(smear/stepは販売で禁止されています)。
  • クロニーNTS;ptp4l/phc2sys-PHCのあるノードでは、設定servv。
  • オフセット/ジッタ/GM/GNSS損失、アラート、ダッシュボードの監視。
  • Runbooks: GNSS、 GMフェイルオーバー、跳躍秒、ドリフトハントの損失。
  • 監査ドキュメント-ソース、構成、SLOレポート、GMシフトログ。

よくあるエラー

保護されていないタイムサーバー1台;制御なしで公共のプールおよびプライベートプールを混合します。
「騒々しい」L3ルート/非対称、BC/TCなしによるPTP。
NTS/Isolationなし-NTP スプーフィング/PTPスプーフィング機能。
サブシステムの異なる飛躍ポリシー→サービス間の時間の「クラック」。
監視ドリフト/ホールドオーバー、突然のステップ修正を無視します。
デュアルディシンバーチャルマシン(ホスト+ゲスト)→不一致。

iGaming/fintech固有の

法的に重要なタイムスタンプ:トランザクション/イベントログにオフセットと同期ステータスを保存します(有効性を証明するため)。
イベントオーダー:クロスサービスコレータは、単なる「壁」ではなく、単調な論理クロック+UTCラベルを使用します。
トーナメント/マッチ:単一の時間ソース(PTP-domain/NTP-server)、前面のTTLキャッシュ、「whistle」の前のオフセットチェックによる開始/停止を修正します。
RNG/seed初期化:暗号ソースから初期化し、コンポーネントとしてのみ時間を使用し、SLO内のオフセットをチェックします。
レポート/レギュレータ:定期的な時間SLOレポートとGM/ソースのシフトログ。

ミニプレイブック

1)速いクラスタ時間の監査

1.各ノードの'chronyc tracking'→オフセット/ジッタを収集します。
2.PTPノードの'ptp4l -m'/'pmc'→GM、 delay、 stepsRemovedをチェックします。
3.飛躍ポリシーを確認し、均一性を確認します。

2) GNSSの損失

1.holdover (OCXO)アラートに移動します。
2.VPN経由で外部NTPを一時的な参照として接続します。
3.アンテナ/ケーブル/受信機を点検して下さい;交換プランです。

3)グランドマスター変更

1.Check priority BMC;2番目のGMを手動で上げます。
2.航空機/クライアントでのオフセット制御。必要に応じてphc2sysを再起動します。
3.時系列オフセットインシデントレポート。

[結果]

信頼できるタイムループは安定した参照(GNSS+PPS+OCXO)、正しいPTPネットワークアーキテクチャ(BC/TC/QoS/isolation)、 NTSによる安全なNTP、一貫したリープポリシー、スロー修正規律、およびSLO O観測可能性(オフセット/ジッタ/ホールドオーバー)。すべてをランブックに記録し、定期的にオフセットをチェックし、エクササイズから学びます。他のすべてが「震える」場合でも、あなたの時間は正確です。

Contact

お問い合わせ

ご質問やサポートが必要な場合はお気軽にご連絡ください。いつでもお手伝いします!

Telegram
@Gamble_GC
統合を開始

Email は 必須。Telegram または WhatsApp は 任意

お名前 任意
Email 任意
件名 任意
メッセージ 任意
Telegram 任意
@
Telegram を入力いただいた場合、Email に加えてそちらにもご連絡します。
WhatsApp 任意
形式:+国番号と電話番号(例:+81XXXXXXXXX)。

ボタンを押すことで、データ処理に同意したものとみなされます。