レイヤー越えが出来ない人たち

物にはそれぞれの役割というものがある。
もちろん、本来の役割を超えて利用されることもある。可能性は無限大だ。

だが、ある物に固執し、本来ならば他の物で対応されるべきものまでをも無理に対応しようとすることは褒められたものではない。コンピューターシステムでは、そのような行為はコストを増大させることになったり、設計に無理を生じさせる。

spモードはなぜIPアドレスに頼らざるを得なかったか : 高木浩光@自宅の日記

NTT DoCoMoのspモードでの障害は当初の予想よりも深刻な根本設計レベルの問題が原因であることが指摘されている。Web技術者にとって、IPアドレスとユーザーを結びつけるなどということはあり得ない。だが、NTT DoCoMoにとってはそうでもなかったらしい。

高木さんのブログでその背景などが推測されているが、今回の件だけではなく、NTT DoCoMoなどのキャリア系の人たちに共通する特徴がある。電話屋の発想*1。 以前、IPv6関係の仕事にどっぷりと浸かっていたころ、某キャリアの方々のIPアドレスで様々な認証を行おうという発想には正直ついていけなかった。ビデオストリーミングなどを行う際、プレミアユーザーとそれ以外を分け、プレミアユーザーには高品質でビデオを視聴させたいという。これ自身は良くある話だ。しかし、それをIPアドレスで振り分けると聞いたときには耳を疑った*2。何故、ユーザー認証をしないんだろう。確かに、ユーザーとIPアドレスを結びつけると、IPレベルの負荷分散やQoSをそのまま使える。だが、IPアドレスは常に変化する、どうするのだろうと聞いてみたところ、Mobile IPを利用するという。当時でも、今でも、まだ実用には課題の多いMobile IPを前提に考えるのは無理があるように思われた。

Mobile IPラバーはほかにも多くいた。FMC(Fixed Mobile Convergence)という夢はステキだが、バンド幅からレイテンシーから異なる様々な通信網とデバイスがある中で、FMCをスムーズに実現するのはどんなに大変だろう。

私もMobile IPに対しての興味は引き続き強いので、Mobile IPを必要以上に貶すのは避けたいが、これに代表されるように、低レイヤーで多くの機能を実現しようとするメンタリティが感じられ、それにはついていけなかった。

同じことは、Windowsが当時導入したIPv6の匿名アドレス *3に反対する議論からも感じられた。

自分の持つ技術に固執し、新しい技術(この場合はWeb技術など)の習得を怠っているのではないか、もしくは無意識のうちにそれらを使うことを避けているのではないかと考え、このようなことは他国でも起きていないか、某有名JavaScriptライブラリ(フレームワーク)の若い作者に聞いてみたことがあった。彼は米国の例だがと断った上で、現役技術者はレイヤーや技術の新旧にこだわらずに貪欲に技術を習得し、使っていると言った。となると、これは日本固有の(影響力の強いシニアな)技術者の問題か、企業の方針か。

電話網の発想で個体のIDや通信網から割り振られるID *4を様々な認証などに使うというのがやはり背景にありそうだが、これは企業としての方針以外にも、染み付いた技術者の思考や嗜好というものもあるのではないかと思う。業界を超えた技術者の交流や人材が流動しない日本の課題がここにもあるのかもしれない。

*1:通信事業者はもはや電話ではなく通信を司っているので、本来ならば電話だけでなく通信全般を俯瞰して設計すべきである。通信事業者はもはや電話屋ではない。ここで言う「電話屋の発想」とは固定の技術に囚われてしまっている例

*2:ユーザー認証を行った上で、そのときにそのユーザーが使っているIPアドレスを取得し、それを用いてIPレベルで対応するという話ではない。最初からIPアドレスとユーザーが結びついているというのだ。

*3:[http://tools.ietf.org/html/rfc4941:title=RFC 4941 Privacy Extensions for Stateless Address Autoconfiguration in IPv6]

*4:IPアドレスなど