Network Earth Position Protocol(NEPP)
地球公転位置に基づく実数暦の表現および同期プロトコル
日本語ドラフト 00
概要
本書は、地球の年周運動に基づく連続的な暦座標「Earth Date」を表現し、ネットワークを通じて同期するための実験的プロトコル、Network Earth Position Protocol(NEPP)を提案する。
従来の民用暦は、地球の自転に由来する「日」を離散的な基本単位として年を構成している。しかし、地球の自転運動と公転運動は互いに独立した天文現象であり、1公転は整数個の自転周期では表せない。そのため、従来の暦では閏日などの補正が必要となる。
NEPPは、年を整数個の日から構成しない。
NEPPでは、地球中心から見た太陽の見かけの方向と、国際的に標準化された天文基準系および天文モデルに基づいてNEPP太陽黄経 λ を定義し、地球暦座標 Earth Date(ED)を、
ED = Y + λ / 360°
として表す。
ここで、Yは地球年を表す整数、λは0°以上360°未満のNEPP太陽黄経である。
NEPPはさらに、NTPに類似したネットワーク同期機構を備える。クライアントは基準となるEarth DateをNEPPサーバから取得し、ネットワーク遅延、自身の地球暦時計のずれ、公転座標の局所的な進行速度などを推定し、同期する。
SI秒はEarth Dateを定義しない。SI秒は、物理時間の測定、補間、予測、通信遅延の評価、および同期のためにのみ用いる。
NEPPは、
1年 = N日
あるいは、
1年 = N秒
という関係を定義しない。
NEPPが表すのは、
「現在、地球は一年のどこにいるか」
である。
1. はじめに
地球上の「日」と「年」は、異なる天文現象に由来する。
歴史的な「日」は、地球の自転に由来する。
「年」は、地球の太陽周回運動に由来する。
地球が太陽を1周する間に、地球自身が整数回だけ自転しなければならない物理的理由は存在しない。
にもかかわらず、従来の暦は1年を整数個の「日」によって表現している。
そのため、暦を季節の年周運動と一致させ続けるには補正が必要となる。グレゴリオ暦では、この補正として閏日が用いられている。
NEPPは、この前提そのものを取り除く。
NEPPでは、
「年は整数個の日から構成される」
とは考えない。
代わりに、地球が年周運動のどの位置にあるかを直接、連続値として表現する。
例えば、
2026.448827361
というEarth Dateでは、
2026
が地球年を、
0.448827361
がその地球年における公転座標を表す。
したがってNEPPが答える問いは、
「年が始まってから何日経過したか」
ではなく、
「現在、地球は一年のどこにいるか」
である。
NEPPでは、以下の概念を明確に分離する。
・物理的な経過時間
・地球の自転
・人間の生活周期
・地球の年周暦
これらは相互に関連するが、同一の物理量ではない。
2. 要求事項を表す用語
本書における「しなければならない」「してはならない」「すべきである」「してもよい」等の要求強度は、IETF BCP 14、RFC 2119およびRFC 8174の考え方に準じる。
英語版においては、MUST、MUST NOT、SHOULD、SHOULD NOT、MAY等の大文字表記を用いる。
3. 用語
3.1. Earth Date(地球暦座標)
Earth Date、略してEDは、本書で定義する実数値の地球暦座標である。
整数部分は地球年を表し、小数部分はその年における年周座標を表す。
3.2. Earth Year(地球年)
Earth Year、地球年Yは、Earth Dateの整数部分である。
地球年Yは、NEPP太陽黄経が0°となる位置から始まり、太陽黄経が1周して再び0°となるまでとする。
移行期における年番号Yは、その開始点となる春分を含むグレゴリオ暦年と同じ番号を用いる。
例えば、グレゴリオ暦2026年中に発生する春分から始まる地球年を、
Earth Year 2026
とする。
3.3. NEPP Solar Longitude(NEPP太陽黄経)
NEPP太陽黄経λは、第4節で定義する角度座標である。
これは、地球中心から見た太陽の見かけの方向と、国際的に標準化された黄道、赤道、歳差・章動モデルに基づいて決定する。
3.4. Earth Date Clock(地球暦時計)
Earth Date Clockは、現在のEarth Dateを端末内部で継続的に推定する機構である。
3.5. NEPP Server
NEPP Serverは、基準となるEarth Dateと同期に必要な情報を提供するネットワークサービスである。
3.6. NEPP Client
NEPP Clientは、1台以上のNEPP Serverを利用して、自身のEarth Date Clockを同期するシステムである。
3.7. Physical Time(物理時間)
本書における物理時間とは、主としてSI秒によって測定される時間間隔を指す。
物理時間とEarth Dateは異なる物理量である。
4. Earth Dateの天文学的定義
4.1. 基本定義
Earth Date EDは、
ED = Y + λ / 360°
と定義する。
ここで、
Y
は地球年を表す整数、
λ
はNEPP太陽黄経であり、
0° ≦ λ < 360°
とする。
ラジアンを用いる場合は、
ED = Y + λ / 2π
とする。
4.2. NEPP黄道
NEPPで使用する黄道は、国際天文学連合(IAU)の標準的な黄道定義に基づく。
黄道極は、Barycentric Celestial Reference System(BCRS)における地球・月重心系の平均軌道角運動量ベクトルに基づいて定義する。
黄道の歳差はIAU 2006歳差モデルと整合する方法で求める。
4.3. NEPP赤道
NEPP太陽黄経の算出に使用する地球赤道の方向は、標準的な歳差・章動モデルを反映しなければならない。
NEPPの基準実装では、
IAU 2006 歳差モデル
+
IAU 2000A 章動モデル
の組み合わせを使用する。
これは、IAU SOFAおよびIERS Conventionsで用いられる標準的なIAU 2006/2000Aモデルと整合しなければならない。
4.4. 太陽の地心視方向
NEPPに用いる太陽方向は、地球中心から見た方向とする。
単純な幾何学的な地球-太陽ベクトルではなく、標準的な天文計算によって得られる太陽の見かけの地心視方向を用いる。
必要な光行時間、光行差その他の天文補正は、IAU、IERSその他の国際的な天文標準に従って適用する。
基準NEPP Serverは、高精度な太陽系天体暦を使用することが望ましい。
使用した天体暦の違いがNEPP Serverの公称精度に影響を及ぼす場合、サーバは使用した天体暦またはモデルを識別可能にしなければならない。
4.5. NEPP太陽黄経の定義
太陽の見かけの地心視方向ベクトルをSとする。
第4.2節に従って得られるNEPP黄道面をEとする。
第4.3節に従って得られる地球赤道面をQとする。
EとQの交線のうち、春分方向に対応する昇交方向をNEPP太陽黄経0°の方向とする。
太陽方向Sを黄道面Eへ射影し、この0°方向から、見かけの太陽年周運動の方向に測った角度をNEPP太陽黄経λとする。
λは、
0° ≦ λ < 360°
へ正規化する。
4.6. 季節とEarth Date
この定義により、主要な季節点は概念的に、
春分 Y.000000000...
夏至 Y.250000000...
秋分 Y.500000000...
冬至 Y.750000000...
次の春分 (Y+1).000000000...
となる。
これらは角度座標を4等分したものであり、物理時間を4等分したものではない。
5. Earth Dateの非等速性
5.1. 円運動を仮定しない
NEPPは、地球が太陽の周囲を一定角速度で円運動すると仮定してはならない。
Earth Dateの進行を、
1日あたり一定量
あるいは、
1秒あたり一定量
として定義してはならない。
5.2. 理想楕円軌道も暦の定義には用いない
NEPPは、地球が理想的な二体問題のケプラー楕円軌道に厳密に従うことも要求しない。
実際の太陽系では、月、他の惑星その他の天体による摂動が存在する。
NEPPは、採用した天体暦および標準天文モデルによって表される実際の天文状態に従う。
5.3. Earth Dateの進行速度
したがって、
dED/dt
は一定ではない。
近日点付近と遠日点付近などでは、SI時間に対するEarth Dateの進行速度が異なる。
これはNEPPの仕様上の誤差ではなく、意図された性質である。
Earth Dateの等しい差は、等しい年周角度差を表す。
等しい物理時間差を表すものではない。
6. SI時間との関係
6.1. 暦と物理時間の分離
SI秒はEarth Dateを定義しない。
Earth Dateは、第4節の天文学的定義によって決定する。
SI秒はNEPPにおいて、
・測定
・推定
・補間
・予測
・通信遅延の評価
・ネットワーク同期
のための物理時間単位として使用する。
6.2. 地球年を秒数で定義しない
NEPPでは、
1 Earth Year = N SI秒
という固定関係を定義してはならない。
あるY.000000000から次の(Y+1).000000000までに実際に何SI秒が経過するかは、地球および太陽系の力学的状態によって決まる。
それは暦の定数ではない。
6.3. 1秒あたりのEarth Date増分も固定しない
NEPPでは、普遍的な定数Kを用いて、
ED(t + 1秒) = ED(t) + K
と定義してはならない。
Earth Dateの瞬間的な変化率、
r = dED/dt
は天文状態に応じて変化する。
6.4. ローカル補間
NEPP Clientは同期と同期の間に、ローカル発振器を用いて物理時間を測定し、Earth Dateを補間してもよい。
基準時点におけるEarth DateをED₀、経過SI時間をΔtとすれば、
ED(t)
≈ ED₀
+ r₀ Δt
+ 1/2 a₀ Δt²
+ ...
と近似できる。
ここで、
r₀ = dED/dt
a₀ = d²ED/dt²
である。
長期間の自走保持には、多項式近似の代わりにローカル天文モデルを使用してもよい。
6.5. 原子時および天文時系
NEPPの内部計算では、必要に応じて、
TAI
TT
TDB
その他の標準的な原子時・天文時系を使用してもよい。
これらは天体暦の評価、物理時間間隔の測定、天文計算のための入力である。
Earth Dateそのものの構成要素ではない。
6.6. UTCからの独立
Earth Dateの定義にUTCは必要ない。
UTCに閏秒が挿入または削除されても、Earth Dateの値には不連続は生じない。
既存システムとの互換性のため、
Earth Date ⇔ UTC
の変換サービスを提供してもよい。
ただしUTCはEarth Dateを定義しない。
6.7. 時間間隔と暦座標
NEPPは、物理時間を測定する単位としてのSI秒を置き換えない。
例えば、
「実験を3600秒間実施する」
は物理時間間隔の指定である。
一方、
「Earth Date 2026.700000に実験を開始する」
は暦座標の指定である。
両者は異なる量を記述している。
7. 基準Earth Dateの決定
7.1. 天文データ源
基準NEPP Serverは、高精度な太陽系天体暦と第4節に定める天文標準からEarth Dateを算出することが望ましい。
すべてのNEPP Serverが独自に天体観測を行う必要はない。
7.2. トレーサビリティ
NEPP Serverは、必要に応じて、
・使用した天体暦
・使用したIAU/IERSモデル
・計算方式または実装
・推定誤差
を識別可能にすることが望ましい。
7.3. SOFAとの関係
NEPP実装は、IAU Standards of Fundamental Astronomy(SOFA)およびIERS Conventionsと整合した計算方法を用いることが望ましい。
ただし、特定のSOFA関数やソフトウェア実装そのものをEarth Dateの定義とはしない。
規範的な定義は第4節の天文学的定義である。
SOFAは、その定義を再現するための標準的な参照実装として利用できる。
8. NEPP同期モデル
8.1. 基本方針
NEPPは単なる天文位置問い合わせサービスではない。
NEPPは、ネットワーク上のEarth Date Clockを同期するプロトコルである。
その役割は、従来時間に対してNTPが果たしている役割に類似する。
8.2. 4座標交換
基本的なNEPP同期では、次の4イベントを用いる。
E1 クライアント送信
E2 サーバ受信
E3 サーバ送信
E4 クライアント受信
各イベントには、その端末がその瞬間に保持していたEarth Dateを対応させる。
サーバはE1、E2、E3を応答に含める。
E4はクライアントが応答受信時にローカルで取得する。
8.3. オフセット推定
同期交換が十分短く、Earth Dateの進行速度を局所的に一定とみなせる場合、クライアントはNTPに類似した式、
θED =
((E2 - E1) + (E3 - E4)) / 2
によってEarth Date Clockのオフセットを推定してもよい。
θEDが正の場合、クライアントのEarth Date Clockは基準サーバより遅れていることを示す。
8.4. 非等速性への対応
Earth DateはSI時間に対して完全な等速ではない。
したがって、高精度な同期ではネットワーク遅延をEarth Dateだけで評価せず、Earth Date進行速度、
R = dED/dt
とSI時間を用いる。
通常のネットワーク往復時間のような短時間では、Earth Dateの速度変化は極めて小さいため、必要精度の範囲内で局所線形近似を用いてもよい。
9. NEPP Timestamp
9.1. 基本表現
NEPP Timestampは、
Earth Year 32 bit
Orbital Fraction 64 bit
からなる96 bit固定長表現を基本とする。
Earth Yearは符号付き32 bit整数とする。
Orbital Fractionは符号なし64 bit固定小数点値とし、
F = λ / 360°
を、
floor(F × 2^64)
として符号化する。
Earth Dateは、
ED = Y + F
である。
10. NEPP基本パケット
基本NEPPパケットは、NTPに類似した以下の情報を持つ。
Status
Version
Mode
Stratum
Poll
Precision
Root Delay
Root Uncertainty
Reference ID
Reference Earth Date
Origin Earth Date
Receive Earth Date
Transmit Earth Date
Earth Date Rate
Astronomical Model Identifier
追加情報は拡張フィールドとして格納してもよい。
11. Status
NTPのLeap Indicatorに相当する2 bitフィールドは、NEPPでは閏秒を表さない。
例として、
0 正常同期
1 天文基準データ劣化
2 予測のみで動作中
3 未同期
とする。
NEPPには閏日状態および閏秒状態は存在しない。
12. Stratum
NEPPはNTPに類似した階層構造を持ってもよい。
Stratum 0
基準天体暦、天文基準系、認定された地球・太陽位置データ源
Stratum 1
Stratum 0から直接Earth Dateを算出するNEPP Server
Stratum 2
Stratum 1から同期するNEPP Server
...
Stratum 0は通常、ネットワーク上のNEPP Serverそのものではなく、基準源を表す。
13. PollとPrecision
Pollは、推奨同期間隔をSI秒の2のべき乗として表してもよい。
例えば、
interval = 2^Poll SI秒
とする。
ここでSI秒は通信および同期間隔を表すためにのみ使用される。
Precisionは、そのサーバのEarth Date Clockの精度を表す。
具体的な符号化方式は今後の版で定める。
14. Earth Date Rate
NEPP Serverは、同期時点付近におけるEarth Dateの進行速度、
R = dED/dt
を提供することが望ましい。
単位は、
Earth Date / SI second
とする。
これはEarth Dateの定義ではなく、クライアントが同期間のEarth Dateを推定するための補助情報である。
必要に応じて、
d²ED/dt²
などの高次微分を拡張フィールドとして提供してもよい。
15. 自走保持
NEPP Clientは、ネットワーク接続を常時必要としてはならない。
同期後は、
・最後に同期したEarth Date
・ローカル発振器
・Earth Date Rate
・必要に応じた天文予測モデル
を用いてEarth Dateを自走保持する。
NEPP Serverへの再接続時には、蓄積した発振器誤差および予測誤差を補正する。
16. 複数サーバ
高信頼性が必要なNEPP Clientは、複数の独立したNEPP Serverを参照することが望ましい。
サーバ選択では、
・Stratum
・Root Uncertainty
・ネットワーク遅延
・過去の安定性
・使用天体暦
・モデルの独立性
などを考慮してもよい。
17. NTPとの関係
NEPPは、適用可能な範囲においてNTPの実績あるネットワーク同期アーキテクチャを利用する。
両者には、
・基準源
・Stratum
・Poll
・Precision
・Root Delay
・不確かさ
・4タイムスタンプ型交換
・複数サーバ選択
・クロック補正
・自走保持
という共通概念が存在する。
ただし同期対象は異なる。
NTPが答える問いは、
「今、何時か」
である。
NEPPが答える問いは、
「今、地球は一年のどこにいるか」
である。
NTPで扱う時間座標は、局所的にはSI秒によって等速に進む。
NEPPのEarth Dateは天文学的な公転座標であり、SI秒に対して等速ではない。
そのためNEPPは、NTPにはない明示的な、
dED/dt
および天文モデル情報を扱う。
18. 地球自転との関係
NEPPは地球の自転を定義しない。
UT1、Earth Orientation Parametersその他の地球姿勢情報は、Earth Dateとは独立した物理量である。
必要なアプリケーションは、IERS等の地球姿勢サービスから別途取得すればよい。
NEPPはEarth Yearに整数個の地球自転が含まれることを要求しない。
19. 人間の生活周期
NEPPは「日」という生活概念を禁止しない。
地球の自転は、地球上の生物および社会にとって依然として重要な環境周期である。
したがって、システムは必要に応じて、
・Earth Date
・SI物理時間
・地球自転
・地方太陽時
・人間の生活スケジュール
を独立に保持してよい。
NEPPが取り除くのは、
「年は整数個の日から構成されなければならない」
という制約である。
20. 閏日および閏秒
20.1. 閏日
NEPPには閏日は存在しない。
閏日は、年を整数個の日として表そうとすることによって必要となる補正である。
NEPPにはその制約が存在しない。
20.2. 閏秒
NEPP Earth Dateには閏秒も存在しない。
UTCと地球自転の調整はEarth Dateの定義に影響しない。
21. 未来のEarth Date
未来のEarth Dateに対応する物理時刻は、高精度な天体暦を用いて予測できる。
ただし、
ED = 2027.250000000
という記述の意味は、
Earth Year 2027においてNEPP太陽黄経が90°へ到達したイベント
そのものである。
そのイベントがUTCで何月何日何時になるかは予測値であり、Earth Dateの定義ではない。
22. 地球外での利用
NEPPは地球基準の暦であるが、地球上の端末だけに限定されない。
宇宙船は、
・宇宙船固有時
・乗員生活時間
・Earth Date
を独立して保持してよい。
通信遅延や相対論効果が無視できない場合、Earth Dateがどの時空イベントに対応する値であるかを明示しなければならない。
NEPPは宇宙全体に共通する絶対的同時刻を定義しない。
23. 従来暦との共存
NEPPは当初、既存の民用暦と共存することを想定する。
移行期の表示例として、
2026年8月31日 13:00 UTC
Earth Date: 2026.xxxxxxxxx
のような形式を使用してもよい。
NEPPネイティブな表示では、
EARTH
2026.4488
だけを表示してもよい。
既存システムとの互換性のため、Earth Dateと従来暦との変換サービスを提供してもよい。
24. セキュリティ
偽造されたNEPP応答によって、クライアントが誤ったEarth Dateを保持したり、Earth Dateを基準としたイベントが誤った物理時刻に発火したりする可能性がある。
NEPP実装は、
・サーバ認証
・完全性保護
・リプレイ攻撃対策
・鮮度確認
・遅延攻撃対策
を考慮すべきである。
高信頼性用途では、複数の独立したNEPP Serverを比較することが望ましい。
25. プライバシー
基本的なNEPP同期に、利用者の氏名、位置情報、民用暦情報を送信する必要はない。
実装は不要な識別情報を送信しないことが望ましい。
ただし通常のネットワーク通信と同様に、IPアドレス等の通信メタデータは観測され得る。
26. IANA
本ドラフト00では、IANAに対する割り当て要求を行わない。
将来、NEPP用のUDPポート番号、登録済みReference IDその他の識別子が必要となった場合、別途IANAへの登録を要求する。
27. 実装案
最小限のNEPP実験系は、以下から構成できる。
1. 天体暦からEarth Dateを算出するライブラリ
2. Stratum 1 NEPP Server
3. NEPP同期クライアント
4. Earth Date Clock
5. Earth Date表示ソフトウェア
表示先として、
・コマンドライン
・PCのシステム時計
・スマートフォン
・スマートウォッチ
・組込み機器
・宇宙機
などが考えられる。
28. 今後のプロトコル設計
Earth Dateの基本的な天文学的定義は本ドラフトで規定した。
今後の版では、主として以下のネットワークプロトコル上の詳細を定める必要がある。
・NEPPパケットの完全なビット配置
・固定小数点数の詳細
・Earth Date Rateの符号化
・不確かさの表現
・Stratumの詳細
・サーバ選択アルゴリズム
・同期アルゴリズム
・認証方式
・サーバ発見方式
・UDP等のトランスポート
・IANA登録項目
・モデル識別子
・天体暦更新時の互換性
これらはプロトコル工学上の問題であり、Earth Dateそのものの定義を変更するものではない。
29. 設計原則
NEPPは、以下の原則に基づく。
-
年は、整数個の日ではなく、公転に基づく連続的な暦座標である。
-
Earth Dateは、実際の天文状態に従う。
-
Earth Dateは、地球の等速公転を仮定しない。
-
Earth Dateは、理想的なケプラー楕円のみを暦の定義とはしない。
-
SI秒は物理時間を測定するが、暦を定義しない。
-
地球の自転と公転は、別々の座標として扱う。
-
NEPPは、Earth Dateの配信だけでなく、そのネットワーク同期を行う。
-
ネットワーク上の時計を地球に同期させるのであって、地球を時計に合わせるのではない。
要約すれば、
地球が暦に従うのではない。
暦が地球に従う。
30. 参考文献
規範的参考文献
IAU 2006 Resolution B1
Adoption of the P03 Precession Theory and Definition of the Ecliptic.
IAU 2000A
IAU 2000A Precession-Nutation Model.
IERS Conventions (2010)
IERS Technical Note No. 36.
RFC 2119
Key words for use in RFCs to Indicate Requirement Levels.
RFC 8174
Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words.
参考資料
IAU SOFA
Standards of Fundamental Astronomy.
RFC 5905
Network Time Protocol Version 4: Protocol and Algorithms Specification.
著者
Kenichi Iwata
Tottori University
Japan