next up previous
Next: 社会的インパクト Up: Napster Previous: Napster

Napsterの仕組

Napsterプロトコルが実現しているファイル共有システムは、厳密にはP2Pでは なく、中央で全体の制御を担当するサーバ群と実際にファイルの検索・共有を 行うクライアントに機能が分かれている。これはC/SとP2Pのハイブリッド・シ ステムにあたり、先に挙げた分散システムの条件のうち、条件2の「制御の分 散」には従っていないシステム形態であると言える。

Napsterのサービスは、以下のように3つに分けて考えることができる。

  1. ログインおよびファイルリストの更新(C/S)
    Napsterクライアントは、まずアクセス用サーバに接続し、ここでファイル共 有サーバ群の中の一つに接続がリダイレクトされる。ログインの完了後、クラ イアントから現在接続しているサーバに対して公開ファイルのインデックス情 報をアップロードする。これによって、各クライアントとそれぞれが公開して いる音楽ファイルを関連づけるリストが更新され、同一サーバに接続している 他のユーザからの検索が可能になる。
  2. ファイル検索(C/S)
    各クライアントから任意のキーワードでファイル名の検索を行う。サーバは検 索にヒットしたファイルのファイル名やサイズなどの情報をクライアントに応 答する。ここでは、検索が成立する前提として、音楽ファイルのパス名やファ イル名にはアーティストの名前や曲名等が含まれているという暗黙の了解があ る。
  3. ファイル転送(P2P)
    検索に対する応答を受け取ったクライアントは、その中から欲しいファイル名 を選択し、サーバにファイル転送要求を送る。サーバは、当該ファイルを持っ ているクライアントに転送要求を通知した後、ファイルを要求しているクライ アントに接続先のIPアドレスとポート番号を知らせる。ここからはクライアン ト同士のP2P通信となり、ファイル所有側から要求側へ直接ファイル転送が行 われる。このためNapsterサーバはファイルを持つ必要がなく、ピア同士の接 続の橋渡しをするだけで良い。このファイル転送の方式はWWWのように少数の サーバへ全てのユーザがアクセスするモデルとは異なり、ユーザ間で直接送受 信を行うものである。各クライアントは目的の音楽ファイルを持っている相手 のうち、帯域幅やpingレスポンスの値を参照して、最も通信条件の良さそうな 相手を選んでファイル転送を行うことができる。



OCHIDA Tadashi
Sat Feb 10 01:41:46 JST 2001