情報とパルサー

炉辺夜話情報科学編第6夜

宝石を散りばめたように,夜空には,様々な色の星々が瞬いている.ちらちらと揺れ,止まったかと思うと,また瞬く.何となく,星々が語りかけているかのように見える,この瞬きは,実は,大気の揺らぎに依るものである.だから,大気圏の外から眺めれば,星々は,じっと瞳を凝らしたままである.

しかし,宇宙は広いもので,実際に忙しなく瞬いている星々もいる.パルサーと呼ばれる中性子星である.1 秒から 0.001 秒(1 ミリ秒)単位の周期で瞬いているそうだ.人間の「一瞬」は,およそ 0.1 秒だそうだから,これと同程度か,更に百倍も速く「瞬いて」いる訳だ.

話は変わって,LAN の時計の話である.

LAN には,多くのコンピュータが接続されている.周知のように,各コンピュータには時計が内蔵されており,コンピュータ内の様々な機器やソフトウェアの制御に用いられている.また,コンピュータ間の連携にも必要なことがある.そこで,ワークステーション(UNIX)を使った LAN には,ネットワーク上のコンピュータの時刻を合わせる(時刻同期)機構(NTP あるいは 4.3BSD では timed プロトコル)が用意されている.ネットワークを通過する時間は一定ではないから,完全に一致させることはできないが,timed の場合は,20 ミリ秒以下の誤差を目標にしている.

では,どのように時刻を合わせるのか.時刻合わせは,バラバラにやっても,「時間がかかる」だけである.人がやる場合のことを考えてみると,誰かの時計を基準として,他の者はそれに合わせるのが普通であり,確実である.コンピュータの場合も同じで,基準となるコンピュータ(マスター)を定めておき,他のコンピュータ(スレーブ)は,その時刻に合わせるのである.こうしておけば,いつでもマスターの時刻と,最大 20 ミリ秒の誤差(勿論,これは目標)で,全てのコンピュータの時計が合うことになり,LAN 全体の同期がとれる.このお陰で,朝 9 時に全部署のシステムが動き出す,というような芸当ができるのである.

もし,マスターに何らかの障害が発生し,時刻同期がとれなくなったら,どうなるだろうか.各コンピュータの時計は,微妙に特性が異なるから,少しずつ時刻がずれていき,ついには,全くバラバラな時刻を示すようになるだろう.ある部署ではシステムが動いているが,別の部署では未だお休み中.部署間でデータを送っていたら,突然向こうのシステムが終業してしまった.などと混乱するに違いない.(timed の場合は,マスターがいなくなった場合,残ったスレーブ間でマスターを選出するように仕組まれているので,ご安心を.)

この LAN の例は,あるシステムが「全体として」何らかの動作をするためには,時刻の同期が必要なことを示している.各部署の動作を合わせるためには,必ずしも時刻を使う必要はないから,もう少し正確に言えば,何らかの同期情報を伝送できることが必要なのである.

さて,最も単純な仕組みとして,マスターがスレーブに「号令」をかけるとしよう.前述の timed のケースでは,この号令が,全てのスレーブに 20 ms 以内に伝わる必要があるが,この許容誤差は,大きいのだろうか,小さいのだろうか.

ところで,良く知られているように,情報は光より速く伝わらない.これは,物理学の「光速度不変の原理」と「特殊相対性原理」からの結論である.正確に言えば,真空中の光の速さ 300,000 km/s を超えることはできない.(水中では,光は,これより遅く伝わる.およそ 3/4 程度.従って,この光より速い物質があり得る.原子炉などで見られる水中の高エネルギー素粒子が放つチェレンコフ輻射は,天上の青とでも言うべき美しい色をしている.)

この光の速さでも,地球を一周するには,130 ミリ秒程かかるから,前述の 20 ミリ秒では,およそ 6,000 km しか届かないことになる.従って,単純な「号令」システムは,せいぜい米国の国内だけに通用する仕組みに過ぎないのである.(LAN の時刻同期の機構は,これ程単純ではない.)

さて,パルサーである.パルサーが遠い地球から見て点滅しているということは,何らかの同期機構があるということである.ある一点が光ると,それが伝わり全体が光る.消えると,その情報が伝わりたちまちにして他の点も消える.そういう仕組みが必要なのである.各点が独立して点滅しているのだったら,次第に同期がずれて,遠くから見ると全体が薄ぼんやりと光っているようにしか見えないだろう.

自然現象であるから,この同期機構は,基本的に「号令」システムであると考えることにしよう.すると,最も速くて光速伝送であるから,周期を 3 ミリ秒とすれば,0.003 s × 300,000 km/s = 9000 km 程度の距離.つまり,パルサーの大きさは,最大でも,およそ 1000 km の単位であることが分かる.

因みに,太陽の直径は,およそ 140 万キロメートルである.パルサーは,太陽より桁違いに小さいことが分かる.

パルサーの大きさの限界を推定するために使ったのは,「光は最高速」という物理学の(原理に近い)結論と,「システムの全体的な動きには,情報伝達が必要」という当たり前の(情報科学の)「原理」だけである.この原理だけで,パルサーが「(当時の)異端児」であることが推定できるのである.

原理の威力と言うべきだろうか.

(現在,パルサーの点滅は,星の回転によるものであり,半径は数十キロメートル程度と考えられている.)