Viva! JXTA
「JXTAがもたらすネットワークの変革」

丸山不二夫
稚内北星学園大学学長
(http://www.wakhok.ac.jp/)
2001/6/16


 Java、Jiniに続くBill Joyの新しいプロジェクト「JXTA」(http://www.jxta.org/)がその姿を現しました。僕は、このJXTAがとても気に入っています。面白いだけでなく、JXTAは、これからのネットワークの姿を変えていく力を持っていると考えています。仕事柄、コンピュータ業界の人と付き合うことが多いのですが、この魅力的なPtoPテクノロジに対して、Napsterの裁判騒動を通じて、PtoPは著作権を無視したケシカランものであるという認識が一部で生まれているのは残念なことです。PtoPに対してこうした「誤解」がある以上、JXTAを理解しようとはなかなか思わないでしょう。

 小論では、PtoP自身がどのような歴史的な背景の中で生まれたのかを振り返ってみようと思います。といっても、NapsterやGnutella、Freenetといった、個別のPtoPテクノロジの説明を行うつもりはありません。PtoPの誕生が、コンピュータとそのネットワークの歴史の中で、技術的には、ある種の必然であることを示してみようと思います。最後に、簡単なJXTAのプログラムを紹介します。

(1)PtoPとは何か?

 PtoPというのは、「ネットワーク上でマシンとマシンが対等な立場で直接に情報交換して、リソースやサービスを共有しよう」というものです。それはインターネットの世界では、当たり前のことではないかと思われた方は、この説明の中の「対等な立場で直接に情報交換」という言葉に、あらためて注意を向けてもらいたいと思います。

「対等」なネットワーク

 まず、「対等な立場」ということですが、現在のネットワークの基本的なパラダイムである「サーバ・クライアント・モデル」は、サーバとクライアントの「非対称」な役割分担に基づいています。サーバは、「召使」としてひたすら「お客さま」であるクライアントの要求を待ち続け、いったん要求が出されたら直ちにサービスを提供するというわけです。もちろん、この「サーバとクライアントの非対称性」はネットワーク上で果たすべき役割の「論理的」なレベルでの非対称性を意味するだけでした。誕生期のインターネットは、サーバ=クライアントたちの「対等」なネットワークにほかなりませんでした。もっとも、この「対等・平等」な社会は、大学や大企業の研究者といったごく少数の人たちによって担われた、それ自身としては特権的な社会を形成していました。

サーバとクライアントとの分離

 しかし、サーバとクライアントの実体的な分離とでもいうべき現象が、非力ではあるが安価なPCの登場とその急速な普及を1つの背景にして進行します。同一のマシンのネットワーク上での2つの役割の「論理的」な区別にすぎなかったサーバとクライアントは、マシンやOSの「能力差」による「実体的」な区別として意識されることが多くなります。かつての謙虚な「召使」はぶくぶくに太りだし、巨大サーバとなって新参の無能なクライアントの上に君臨し、均質だったネットワーク社会は身分制の社会に変質します。こうした傾向の進行を決定的なものにしたのは、World Wide WebとWebブラウザの登場を画期とする、いわゆるインターネットの「大爆発」だったと僕は考えています。なぜなら、このインターネットの「大衆化」は、「事実の問題」としては発信能力を専有する巨大なサーバを有する巨大なインターネット・プロバイダへの発信能力を持たないマシンしか持たない無数の匿名の個人の囲い込みにほかならなかったからです。同時に、この過程は「権利の問題」として「だれもが、インターネット上では情報を発信できる」という意識をかつてなく広げることに多大な歴史的貢献をしました。PtoPはこうした形成された意識の嫡子ともいうべきものです。

技術的な必然としてのPtoP

 こうして、今日のインターネットの姿ができたのですが、それが歴史的に形成されたものであると考えることはとても大事なことです。なぜなら、歴史的に作られたものは歴史的に変わってゆくからです。こうした考察は、これからのコンピュータ・ネットワークの変わってゆく方向性を示してくれます。僕は、PtoPの登場はコンピュータ・ネットワークのこれまでの歴史的発展から導かれる技術的な必然にほかならないと考えています。

「対等」なネットワークへ

 まず何よりも、サーバとクライアントの実体としての非対称化を根拠付けていたマシンのハードウェア性能とOSの機能の格差は、今日では急速になくなっています。

 かつてのスーパー・コンピュータの代名詞だったCRAY-1は、クロック80MHzでわずか32Mbytesのメモリを積んでいただけだったそうです。このことは、オフィスでも家庭でも、どこにもあるパソコンは決して単なる無能なクライアントなどではなく、かつてのスーパー・コンピュータのおそらく10倍近い能力を持っているということです。かつての基準で考えるなら、世界には数千万台の「スーパー・コンピュータ」が存在するのです。しかもグローバルなネットワークにつながれて。もっとも、CRAYをメールチェックにしか使わない人もたくさんいるということですが。

 「単なるクライアント」と思われていたマシンたちが自身の実力に目覚めるなら、偉そうなサーバたちに対してネットワーク上で「対等・平等」な権利を要求し始めるのは当然のことかもしれません。PtoPによるフラットなネットワークの再構築の試みは、こうしたコンピュータの性能の飛躍的な向上を背景としています。世界中のPCの眠っているパワーをインターネットで結び付けて地上最大規模のスーパー・コンピュータを作り上げ、その計算パワーで地球外知的生命体の電波の解析をしようというSETIのプロジェクト(http://setiathome.ssl.berkeley.edu/home_japanese.html)は、こうした試みの先駆です。

ネットワークの変化

 この間のネットワークのドラスティックな変化も、PtoPを技術的に準備してきました。そのことを見ておきましょう。

 インターネットの草創期には、すべてのマシンが、当時としては最高速のネットワーク上に常に存在し続けることはむしろ当然のことでした。インターネットの「大爆発」以後は、サーバとクライアントの区別をネットワークに常に接続しているマシンと、必要時にダイヤルアップするマシンの区別と考える人も珍しくありません。また、インターネットの「上流」のサーバたちのネットワークがメガ単位の比較的高速なものだったのに対して、クライアントがぶら下がるネットワークは、キロ単位のひどく遅いものでした。こうして、サーバとクライアントの違いは、マシンの能力だけでなくネットワークの能力の違いによっても補強されて、当然のものと考えられてきました。

ギルダー則とブロードバンド時代の到来

 しかし、いままた状況は大きく変わろうとしています。コンピュータのスピードやメモリ集積度が1年半(18カ月)で2倍になるという経験則「ムーアの法則」はよく知られていますが、ネットワークのスピードが9カ月で2倍になるという経験則「ギルダーの法則」が注目を集めています。歴史的には、コンピュータの性能の向上はコンピュータのネットワークに先行しますので、2つの法則の寄与は、当初はムーア則の方が大きかったのですが、これからはギルダー則の寄与が支配的になると考えられています。21世紀、コンピュータの世界は、ネットワークの高速化とPtoPの発展によって特徴付けられることになりそうです。

再び、高速・常時接続ネットワークへ

 技術的には、ネットワークの基幹部分では、これまでの時分割多重TDM(Time Wave length Division Multiplexing)方式から、波長分割多重WDM(Wave length Division Multiplexing) 方式への移行が急速に進みつつあります。ある人の試算では、WDMのもとでは、1本の細いファイバがありさえすれば6.4T(テラ)bytesの帯域が可能になるといいます。この帯域は、世界中のテレビと電話の情報を同時に流せるほどのものです。こうして、私たちのすぐ目の前には、ネットワークが事実上無制限のスピードを持ちうる世界の展望が広がっています。

 ネットワークに常時接続するか否かは、サーバとクライアントを分かつ技術的な問題というより、むしろ単純にネットワークへの接続料金の問題であるという認識は低価格で定額の高速ネットワークへの要求として急速に広がっています。今後、無数のコンピュータが、新しく高速ネットワークに常時接続されるようになることは確実です。常時接続は、情報の発信者がプロバイダのサーバに頼らずに自分のパーソナルなマシンで「直接」にネットワークに情報発信することを可能にします。こうした変化は、先に行ったPtoPの説明、「対等な立場での直接な情報交換」の「直接」という言葉の意味をはっきりと説明するように思います。ネットワークの変化も、PtoPを予告しています。

 稚内北星学園大学では、この間メディアの統合を展望して「だれもがテレビ放送可能な世界は可能か」という思考実験と、それをシミュレートする高帯域のネットワークのもとでのIPマルチキャストの環境構築を行ってきました。この問いに対する私たちの回答は「技術的には、十分可能である」というものです。私たちの関心は、こうした技術的な可能性とそれがもたらす社会的な影響を、もう一度PtoPに向かう技術の流れの中でとらえ直そうということに向けられています。

ネットワーク接続の「直接性」について

 ネットワーク接続の「直接性」については多少の補足が必要です。インターネットの、いわば貴族主義的な古典時代には、先にも述べたようにすべてのノードがネットワーク上に常時存在するのは当然のことでした。ですから、接続の「直接性」はすべての常時接続ノードがインターネット上に固定したIPアドレスを持つことによって直接に保証されていました。ノードの「恒久性」は、IPアドレスの固定化とともにDNSの階層的な名前空間の中でユニークな名前を持つことで二重に支えられていました。

新しい動的なネットワーク像へ

 インターネットの古典時代の終了は、こうした2つの名前の幸運な予定調和にもピリオドを打ちました。巨大なサーバと、そこからもっぱら情報を引き出そうとする膨大な無名のクライアントたちとの分裂は、「血統書」としてのDNSに登録名を有するインターネットの一級市民と、彼らから一時的にIPアドレスを割り当ててもらい、その限りでインターネットの世界に出入りを許される二級市民との分裂でもありました。

 しかし、この名前空間の問題の面白いところは、この分裂を再び統合するのは決してかつての牧歌的な時代への回帰ではないということにあるように思えるところです。DHCPやNAT、そのほかの技術は、いろいろな制限を含みつつも固定的ではない動的に自己を組織する新しいネットワーク像を準備しました。携帯電話やPDA、さらにはたくさんの家電製品、自動車上のデバイスたちのネットワークへの接続は、むしろ、こうしたダイナミックなネットワーク像の再構築を求めるものです。

 PtoP技術がターゲットとしているのが、DNSのエントリも持たず、かつファイアウォールの内部で一時的なアドレスを割り当てられているようなノードたちに、DNSに登録された由緒正しいスタティックなノードたちと同等の情報発信能力を与えようとするものであることには、特別の注意を払う必要があります。


 では次に、実際に簡単なシェル・コマンドのサンプルコードを眺めながら、JXTAのアーキテクチャの本質をご紹介しましょう。

  (2)シェル・コマンドの作成からアーキテクチャに触れる


Index
(1)PtoPとは何か?
 「対等」なネットワーク
 サーバとクライアントの分離
 技術的な必然としてのPtoP
 「対応」なネットワークへ
 ネットワークの変化
 ギルダー測とブロードバンド時代の到来
 再び、高速・常時接続ネットワークへ
 ネットワーク接続の「直接性」について
 四角新しい動的なネットワーク像へ
  (2)シェル・コマンドの作成からアーキテクチャに触れる
 JXTAネットワークプログラミング
 Advertisementとそのpublish/discovery
 LocalとRemote、二重のpublsih/discovery
 JXTAシェル・コマンドの作成




Java Agile フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Java Agile 記事ランキング

本日 月間