IMに関して特に注目される動きとして、マイクロソフトがP2Pコラボレーションソフト で有名なGroove NetworksやPlaceWareと提携したり買収していることです。 このような企業のノウハウを活かしてIMがさらに高度化することが期待されます。
それではIMのシステムについてネットワーク形態から分類してどのような 長所・短所があるのか見ていきましょう。
ユーザAがユーザBと通信する時には必ずサーバAを経由します。 この通信の長所は、ユーザ間において、IPアドレス等の個人情報が漏れないこと と多対多の通信ができることです。例えば、後述のHybrid-P2Pでは、 N人のグループでIMを行うとn(n-1)/2のリンクが必要です。 これはかなり無理があります。短所はサーバとサーバ側ネットワークのリソースを 非常に消費することです。またサーバがユーザ間の通信内容を見ることができてしまい ます。サーバを介することで若干の遅延が生じることも考えられます。
まず、ユーザは名前解決サーバに自分の個人情報等を登録します。 ユーザがIMソフトを立ち上げると、自分の端末のIPアドレス等の情報を 名前解決サーバにアップデートします。
さて、ユーザAがユーザBと通信しようとすると、ユーザAは名前解決サーバAと 通信して、ユーザBのIPアドレスの入手します。ユーザAはユーザBと直接通信 を行い、データの交換をします。
さて、Hybrid-P2P型の特徴ですが、名前解決サーバは単に相手のIPアドレスを 通知するだけなのでサーバ、ネットワーク負荷が比較的 小さいということが挙げられます。また、ユーザ間で直接データをやり取りするの で、サーバはユーザ間でやり取りしているデータを見ることはできません。その他 にユーザ間が直接通信するので遅延が少ない事が期待できます。そのため、 ボイスチャットのように遅延が 少ないことが求められるアプリケーション、ファイル転送のように データ量が多いアプリケーションに適しています。
ユーザAはユーザBと直接データを通信します。Hybrid-P2P型と違うのは、 事前にユーザBのIPアドレスを何らかの方法でユーザAが取得する必要が あることです。Hybrid-P2P型であれば、サーバにあるユーザのIPアドレス を問い合わせをすることができますが、これはそのようなことができません。 長所はサーバを構築せずにIMができることです。短所は相手のIPアドレスを 事前に聞く手間がかかることです。(注:IP Messengerでは 起動時にブロードキャストすることによって、そのブロードキャストエリア内の 他のIP Messengerユーザのステータスを知る事が可能) そのため小規模グループ内でのIMに適しています。 ちなみにIP Messengerではブロードキャストが届く範囲内 でしか通信ができません。
データはユーザ間をバケツリレーで運びます。たとえばユーザDがユーザA と通信したければ、ユーザD⇔ユーザC⇔ユーザAという風に通信をします。 長所はサーバが必要でないこと、通信相手のユーザの情報を事前に知る必要 がないことです。(メタデータをグループ内に送信することで相手の検索をする ことができます。)また、IM相手の間に何人ものユーザを介することで、 匿名性を高めることができます。短所としては、通信の経路上にいるユーザの有無によって、 ネットワークトポロジーが変わるため、通信したい相手と通信できなくなる可能性 があること、経路上のユーザが通信内容を見れてしまうことです。 もちろん、ユーザはこのTree状ネットワークに参加するため、ネットワーク に既に参加しているIPアドレスを事前に知る必要があります。
(筆者注:現在、このような形態のIMがあるかどうかについて私は把握していません。 ただし、WinnyなどのP2Pアプリに搭載される可能性があります。 現在、考察中なので近日中にそのシステムを説明する予定です。)