昨日、首都圏鉄道のSUICAシステムがダウンした。西武線は稼働していたがJRに乗り換えたら、池袋改札は停止状態、降りた駅では、
稼働状態だったが入場記録がないということで、そのまま通してくれた。尤もこちらは社用なので損得はないのだが、
年に1日くらい無料で鉄道に乗れる日というのがあってもいいと思う。
冗談はさておき、ネットワーク(通信ネットワークという意味ではなく、相互に繋がって機能するという広い意味で)
の一部の障害が全体に及んでしまう典型的な例として興味深い。
1年前くらいにNTTのIP電話網がメンテナンス時のコマンドを入力し間違えただけで、全体がダウンしたときもそうだったが、
ネットワークは一箇所の障害が連鎖的に他へ影響するという特質を持っている。
これを防ぐためにはネットワークの各々のノードが自律的に判断して障害のあるノードを切り離す「仲間外し」をすればよいのだが、
悪いノードは仲間外れにされる前に周りに影響して自分の世界に取り込んでしまうので、ネットワーク全体が落ちてしまう「伝染病」
になると事態は深刻だ。
今回のSUICAの場合、自動改札機側が異常を検知して「自主的に」電源を落としたらしいが、
その動作が特定の機種で一律に発生したことと、電源を落とした後のことをあまり考えていなかったことが災いしたようだ。
メーカによって動作が異なるところが結果的には全面的なダウンにはならずにすんだようだが、
逆に同じシステムなのにメーカによって動作が異なるのはなぜなんだろうという疑問も沸いてくる。
こういった研究は、「悪貨が良貨を駆逐する」ことを防ぐ方法を考えることになるし、
社会システムが一部の瑕疵があっても全体的な脆弱性に繋がらないようにするための実証モデルとしても使えるはずだ。
事故原因を隠さずに多面的に究明していただきたいと思う。