ニュースレターNo.41/2009年3月発行
ネットワークアーキテクチャとプロセッサアーキテクチャ
JPNIC理事/国立情報学研究所 山田 茂樹
インターネットは、世の中のネットワークインフラとして、電気通信網に代わって確固たる地位を占めるようになりました。その一方で、現在のインターネットが、スパムメールやフィッシングのようなセキュリティ問題をはじめとした、技術上、利用上のさまざまな問題点を根本から解決できずに運用されていることも事実です。
このようなインターネットの限界を克服した、新しいネットワークアーキテクチャをゼロから研究していくべきだという機運が、ここ数年、ネットワーク研究者の間に盛り上がってきました。このような活動の代表例が、アメリカ国立科学財団(NSF)が研究費を提供して、ネットワークの新技術を検証評価するためのテストベッド作りを推進するプロジェクト「GENI※1」や、既存のインターネットにとらわれずに、ネットワークの新技術を研究者にゼロから考えさせる研究プログラム「FIND※2」等です。
日本でも「新世代ネットワーク推進フォーラム※3」が設立され、IPネットワークの次の世代を見越した、新しい設計思想・技術による将来ネットワークの実現を、産学官が協力して推進する体制が整えられ、活動を開始しています。アジアでも韓国、中国、日本のネットワーク研究者を中心とする「Asia Future Internet Forum※4」が設立され、EUでは第7次研究枠組み計画(FP7)のもとで、将来ネットワークアーキテクチャの研究を進める「4WARDプロジェクト※5」や、テストベッド構築を主目的とする「FIREプロジェクト※6」等が立ち上がっています。
では、このような将来ネットワークでは、どんなネットワークアーキテクチャ、どんなネットワーク技術が中心となっていくのでしょうか?これまでに提案されている技術は、インターネットの改良的なアーキテクチャから、非IPパケットを前提としたインターネットと全く互換性がないアーキテクチャ等、技術的にはとにかく非常に多彩で、技術戦国時代の様相を呈しています。何が将来ネットワークの中心技術になっていくのか、どんな技術が成功をおさめていくのか、筆者にとっては皆目見当がつきませんが、大変興味があります。ここで言う「成功」とは技術的な成功でなく、世の中で広く使われるようになった、という商業的な意味での成功です。特に、次の世代の技術が、前の世代の技術と互換性がない場合に、技術変革が成功するのか、失敗するのかを見極めるのが大変難しいことを、並列処理システムやネットワークの研究を通して体感してきました。
技術変革が失敗した事例は、プロセッサアーキテクチャのフォン・ノイマン型から非フォン・ノイマン型への変革でしょう。コンピュータの命令実行を司るプロセッサのアーキテクチャは、1946年にジョン・フォン・ノイマン氏が提唱した「ストアドプログラム方式」、すなわち、プロセッサ内のプログラムカウンタで指定された命令をメモリから順次読み出して逐次実行する、フォン・ノイマン・アーキテクチャを基本構造としてきました。そのため、プロセッサ処理能力を飛躍的に向上させるには、プロセッサとメモリ間でやり取りする命令やデータの転送性能が、最終的にボトルネック(フォン・ノイマン・ボトルネック)になってしまうことが、1970年代に懸念されました。このフォン・ノイマン・ボトルネックを解消する方法として、フォン・ノイマン・アーキテクチャと技術的に互換性がない非フォン・ノイマン・アーキテクチャが、1970年代の中期以降にいろいろと提案されました。
フォン・ノイマン・アーキテクチャが、実行すべき命令を一つのプログラムカウンタでしか指定できないのに対し、命令の実行に必要なデータが揃いさえすれば、どの命令でも自由な順序で命令実行できる「データフロー制御方式」は、非フォン・ノイマン・アーキテクチャの代表例でした。そして、データフロープロセッサを多数組み合わせれば、プログラムの並列性を最大限抽出できる究極の超並列システムが実現できると期待され、1970年代後半から1980年代にかけて盛んに研究されました。小生が、データフロー制御方式による超並列交換機の研究に没頭したのも、この頃です。しかし、このようなデータフロープロセッサアーキテクチャの研究で実用化、商用化までたどり着いたものはほとんどなく、商業面では失敗に終わりました。その理由は、データフロープロセッサアーキテクチャは、本質的にメモリの内容を書き換えるという概念を持たないので、メモリ書き換えを許容するCやFORTRANのうな既存の手続き型言語が使えず、関数型言語という新しい概念の言語を使わねばならなかったこと、関数型言語で記載したプログラムは命令の実行順が記載通りの順でなくなり、並列処理アプリケーションの考え方も作り方も根本から見直すことをユーザーに強いたためだった、と筆者は考えています。
すなわち、データフロープロセッサは、フォン・ノイマン・プロセッサに慣れ親しんだユーザーに抵抗感を与え、結果的には、データフローを生かした新たなアプリケーションの開発を促すインセンティブを、ユーザーに与えることができなかったのだと思います。
一方で、ネットワークアーキテクチャの分野では、世間で互換性のない技術が変革に成功した事例があります。言うまでもなく「インターネット」が、ネットワークアーキテクチャもプロトコルも全く異なるISDNのような「電気通信網」を置き換えていったケースです。若い頃、交換機の研究開発に従事していた時は、次世代のネットワークはATM(Asynchronous Transfer Mode)を用いたBroadbandISDNで実現されていくだろうと思っていました。しかし、あっと言う間に、交換機がルータに置き換えられ、電気通信網がインターネットに吸収されていくのを目の当たりにしてきました。
では、インターネットアーキテクチャはプロセッサアーキテクチャと同様、前の世代と技術的互換性がなかったのに、なぜ商業的に成功したのでしょうか?その成否は、新世代の技術が、前世代の技術で提供できない/提供が困難な新しいアプリケーションやサービスに対応できる潜在能力を持っているかどうかにかかっているように思います。プロセッサアーキテクチャの分野では、フォン・ノイマン・アーキテクチャを変革してまで、新たなアプリケーションやサービスを開発しようという機運が盛り上がりませんでした。一方、ネットワークアーキテクチャの分野では、電気通信網のサービスの中心であった電話やテレビ電話のようなリアルタイム系アプリケーションとは別に、インターネットアーキテクチャに適したE-mail、Webなどの非リアルタイム系アプリケーションが次々と生み出されました。また続いて、リアルタイム系アプリケーションも取り込めるようにアーキテクチャも進化して、電気通信網を吸収することに成功してきました。
ネットワークの分野で、もし、将来、ネットワークのアーキテクチャが、インターネットアーキテクチャと技術的に互換性のないものになっていくとしたら、それはインターネットを本当に置き換えていけるのでしょうか?「お前はどう思うか?」って聞かれたら、私はこう答えることにしています。
「そりゃあ、インターネットを置き換えるものになっていくさ。いや、置き換わっていくものになって欲しいさ。だって、そう考えるのがいつの時代でも研究者の本能だもの。」
- ※1 GENI(The Global Environment for Network Innovations)
- http://www.geni.net/
- ※2 FIND(Future Internet Design)
- http://www.nets-find.net/
- ※3 新世代ネットワーク推進フォーラム
- http://forum.nwgn.jp/
- ※4 Asia Future Internet Forum
- http://www.asiafi.net/
- ※5 4WARDプロジェクト
- http://www.4ward-project.eu/
- ※6 FIRE(Future Internet Research and Experimentation)プロジェクト
- http://cordis.europa.eu/fp7/ict/fire/
プロフィール●山田茂樹 (やまだ しげき)
1974年北海道大学大学院工学研究科修士課程修了。1991年博士(工学)。1974年NTT武蔵野電気通信研究所に入社。交換機用VLSIプロセッサ、超並列交換機、分散ネットワークアーキテクチャ等の研究実用化に従事。2000年より国立情報学研究所(NII)教授。現在、同所学術ネットワーク研究開発センター長・教授。学術ネットワークSINET3の構築・運用、ユビキタスネットワークやDTN(Delay/Disruption-Tolerant Network)等の研究に従事。