(57)【要約】【課題】  ネットワークやサーバの負荷を増加させることなく大容量のコンテンツを効率的に配信する。【解決手段】  Ｐ２Ｐネットワーク１０に接続するサーバ１４は、配信するコンテンツＣを、複数のコンテンツフラグメントＣＦに分割すると共に、コンテンツフラグメントからコンテンツを復元可能とするコンテンツ情報ＣＩを生成する。また、サーバは、コンテンツフラグメントをピアに分散配布すると共に、コンテンツ情報をＰ２Ｐネットワーク上に公開する。これにより、コンテンツを取得したいピアは、先ず、コンテンツ情報を取得し、このコンテンツ情報に基づいてコンテンツフラグメントを収集し、収集したコンテンツフラグメントからコンテンツを復元することにより取得できる。【選択図】        図４
2006178782.tif 000002
【特許請求の範囲】
【請求項１】
情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信するときの情報処理方法であって、
コンテンツを複数のフラグメントに分割すると共にフラグメントからコンテンツを復元可能とする関連情報を生成して、
分割した前記フラグメントのそれぞれを所定のピアに共有データとして分散して配布すると共に、前記コンテンツの関連情報を公開し、
該関連情報から前記フラグメントのそれぞれを前記ピアツーピアネットワーク内で収集可能とすると共に、収集した前記フラグメントに基づいて前記コンテンツを復元可能とすることを特徴とする情報処理方法。
【請求項２】
前記フラグメントの一部を変更した新たなコンテンツを配信するときに、前記変更したフラグメントを配布すると共に、元のコンテンツのフラグメントと新たなフラグメントによって新たなコンテンツを復元可能とする関連情報を生成して公開することを特徴とする請求項１に記載の情報処理方法。
【請求項３】
前記関連情報に基づいて前記フラグメントを収集した前記ピアが、前記フラグメントの少なくとも一つを共有データとして保持することを特徴とする請求項１又は請求項２に情報処理方法。
【請求項４】
前記共有データとして保持するフラグメントを、該当ピアから所定範囲内のピアが保持している前記フラグメントに基づいて設定することを特徴とする請求項３に記載の情報処理方法。
【請求項５】
情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信する配信情報の処理方法であって、
前記コンテンツを複数のフラグメントに分割すると共に、
前記フラグメントから前記コンテンツを復元可能とする関連情報を生成して、
前記関連情報をピアツーピアネットワークに公開すると共に、
前記フラグメントを各ピアの要求に応じて転送可能とする共有データとして前記ピアツーピアネットワーク内の所定のピアに分散して配布することの特徴とする配信情報の処理方法。
【請求項６】
情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信可能とする配信情報処理プログラムであって、
前記コンテンツを複数のフラグメントに分割するステップと、
前記フラグメントから前記コンテンツを復元可能とする関連情報を生成するステップと、
前記関連情報をピアツーピアネットワークに公開するステップと、
前記フラグメントを共有データとして前記ピアツーピアネットワーク内の所定のピアに分散するステップと、
を含むことを特徴とする配信情報処理プログラム。
【請求項７】
情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信可能とする配信処理装置であって、
前記コンテンツを複数のフラグメントに分割する分割手段と、
前記フラグメントから前記コンテンツを復元可能とする関連情報を生成すると共に該関連情報をピアツーピアネットワークに公開する情報生成手段と、
前記フラグメントを前記ピアツーピアネットワーク内の所定のピアに分散して配布し、前記ピアの要求に応じて該ピアへ転送可能とする共有データとして保持させる配布手段と、
を含むことを特徴とする配信処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ピアツーピア（Ｐ２Ｐ、Peer  to  Peer）ネットワークに係り、詳細には、Ｐ２Ｐネットワークで映像や音楽などの各種のコンテンツなどの配信情報を配信するときの情報処理方法、配信情報の処理方法、配信情報処理プログラム及び配信処理装置に関する。
【背景技術】
【０００２】
コンピュータなどの情報処理装置を情報処理端末とし、ネットワークを介して相互に接続するネットワークシステムの形態としては、クライアントサーバシステムに加えて、Ｐ２Ｐ（Peer  to  Peer：ピアツーピア）システムがある。
【０００３】
クライアントサーバシステムは、サーバが各種の情報資源を管理したり各種のアプリケーションなどを提供するサービスを実行し、クライアントがサーバから提供されるサービスを受けるシステムとなっている。
【０００４】
これに対して、Ｐ２Ｐシステムは、基本的には専用のサーバを設けず、ネットワークに接続された個々のピア（例えばパーソナルコンピュータなど）が対等なシステムであり、個々のピアが所定のサービスを提供する他のピアに提供するサーバとして動作可能とするシステムとなっている。
【０００５】
すなわち、Ｐ２Ｐシステムでは、各種のサーバを設けることができるが、サーバとしての動作を個々のピアで分散して行うこともできるようになっており、このようなＰ２Ｐシステムに対する種々の技術提案がなされている（例えば、特許文献１、特許文献２参照。）。
【０００６】
一方、ネットワーク帯域の拡大に伴ってブロードバンド化が急速に進展しており、これにより、ネットワークを用いてメールマガジンや広告などのコンテンツを多量に配信することが多くなっていると共に、画像や動画、音声などのマルチメディアコンテンツなどの大容量のコンテンツをネットワーク上で配信されるようになっている。
【０００７】
ところで、ネットワークを用いてコンテンツを配信するときには、配信するコンテンツを格納した配信サーバを配信処理装置として設置し、そこから各情報処理端末を用いてコンテンツをダウンロードする方法が一般的となっている。
【０００８】
しかし、この方法では、各情報処理端末からの配信サーバへのアクセスが集中すると、配信サーバの処理能力が不足（オーバーフロー）してしまったり、配信サーバが接続される回線のネットワーク帯域が使いきられてしまうことがある。このような状態となると、配信サーバへアクセスできなくなったり、ダウンロード速度が極端に低下し、ダウンロードに時間がかかったり、ダウンロードが途中で止まってしまう。
【０００９】
これを防止するために、高性能の配信サーバを複数設置したり、それぞれのサーバへ接続する回線のネットワーク帯域を広げるなどの処置が必要となり、設備コスト、管理コストの増大が生じる。
【００１０】
一方、サーバへのアクセス集中を抑えるために、グローバルＩＰを有するクライアント間をピアツーピア接続することにより、サーバに接続するクライアントの数を抑えるネットワークの提案がなされている（例えば、特許文献３参照。）。
【特許文献１】特開２００２−３３５２６９号公報
【特許文献２】特開２００２−２５６３６３号公報
【特許文献３】特開２００３−２０３０２３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、動画や音楽などの大容量のコンテンツを配信する場合、配信サーバに接続する情報処理端末の数を抑えたとしても、配信サーバからダウンロードしなければならない。このために、配信サーバへのアクセスが集中してしまうと、配信サーバへアクセスできなくなったり、ダウンロード速度が極端に低下し、ダウンロードに時間がかかったり、ダウンロードが途中で止まってしまうなどの問題を解消することができない。
【００１２】
また、バージョンアップなどによってコンテンツの一部を変更したときなどでは、そのコンテンツを新たにサーバからダウンロードしなければならず、このときにも、配信サーバへアクセスが集中してしまうことになってしまう。
【００１３】
本発明は上記事実に鑑みてなされたものであり、配信サーバなどから大容量のコンテンツを配信するときなどにおいて、アクセス集中による負荷の増大を抑えて効率的な配信を可能とする情報処理方法、配信情報の処理方法、配信情報処プログラム及び配信処理装置を提案することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するために本発明は、情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信するときの情報処理方法であって、コンテンツを複数のフラグメントに分割すると共にフラグメントからコンテンツを復元可能とする関連情報を生成して、分割した前記フラグメントのそれぞれを所定のピアに共有データとして分散して配布すると共に、前記コンテンツの関連情報を公開し、該関連情報から前記フラグメントのそれぞれを前記ピアツーピアネットワーク内で収集可能とすると共に、収集した前記フラグメントに基づいて前記コンテンツを復元可能とすることを特徴とする。
【００１５】
この発明によれば、ピアツーピアネットワーク内の各ピアに配信するコンテンツを、複数のフラグメントに分割すると共に、フラグメントから元のコンテンツを復元するための関連情報を生成し、関連情報をピアツーピアネットワーク上に公開すると共に、フラグメントを所定のピアに分散して頒布する。
【００１６】
コンテンツを取得したいピアは、先ず、ピアツーピアネットワーク上で公開されている取得したいコンテンツの関連情報を取得し、この関連情報からコンテンツを収集する。これにより、収集したコンテンツと関連情報に基づいてコンテンツを復元する。
【００１７】
これにより、コンテンツを取得するために、配信サーバなどの配信処理装置にピアからのアクセスが集中することがない。また、個々のフラグメントは、元のコンテンツに比べて容量が小さくなるので、ネットワーク上での負荷軽減が可能となる。
【００１８】
このような関連情報としては、元のコンテンツを復元するのに必要はフラグメントを特定する情報及び、フラグメントを連結するときの順序などを含むものであれば良い。
【００１９】
また、本発明は、前記フラグメントの一部を変更した新たなコンテンツを配信するときに、前記変更したフラグメントを配布すると共に、元のコンテンツのフラグメントと新たなフラグメントによって新たなコンテンツを復元可能とする関連情報を生成して公開することを特徴とする。
【００２０】
この発明によれば、例えばバージョンアップ等によってコンテンツの一部を変更したときに、変更部分にあたるフラグメントのみを新たに配布すると共に、このフラグメントを用いた関連情報を生成して公開する。
【００２１】
これにより、バージョンアップしたコンテンツの配信可能とするときの作業を簡略化できると共に、元のコンテンツを保持しているピアは、変更されたフラグメントのみを取得するだけでよいので、変更されたコンテンツを取得するときの効率向上が図られる。
【００２２】
さらに、本発明は、前記関連情報に基づいて前記フラグメントを収集した前記ピアが、前記フラグメントの少なくとも一つを共有データとして保持することを特徴とする。
【００２３】
この発明によれば、コンテンツを取得したピアが、フラグメントの一つを共有データとして保持する。これにより、フラグメントをネットワーク上に分散させることができるので、他のピアがコンテンツを取得するときの時間短縮等が可能となる。
【００２４】
すなわち、ピアツーピアネットワークでは、ピアを経由して情報の授受を行う。このために、経由するピアの数が多くなると、情報伝達に時間を要する。このときに、フラグメントを分散させて、経由するピアの数が少ない近くのピアからフラグメントを取得できるようにすることができる。
【００２５】
このような本発明においては、前記共有データとして保持するフラグメントを、該当ピアから所定範囲内のピアが保持している前記フラグメントに基づいて設定することが好ましい。
【００２６】
このときには、例えば、周囲のピアに一つのコンテンツを構成するためのフラグメントの有無を確認し、所有しているピアが少ないか何れのピアも所有していないフラグメントを共有データとして保持することがより好ましく、これにより、周囲のピアが、そのコンテンツを取得するときの時間短縮及びネットワークの負荷軽減を図ることができる。
【００２７】
このような本発明を達成するための配信情報の処理方法は、情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信する配信情報の処理方法であって、前記コンテンツを複数のフラグメントに分割すると共に、前記フラグメントから前記コンテンツを復元可能とする関連情報を生成して、前記関連情報をピアツーピアネットワークに公開すると共に、
前記フラグメントを各ピアの要求に応じて転送可能とする共有データとして前記ピアツーピアネットワーク内の所定のピアに分散して配布することの特徴とする。
【００２８】
また、配信情報処理プログラムは、情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信可能とする配信情報の処理プログラムであって、前記コンテンツを複数のフラグメントに分割するステップと、前記フラグメントから前記コンテンツを復元可能とする関連情報を生成するステップと、前記関連情報をピアツーピアネットワークに公開するステップと、前記フラグメントを共有データとして前記ピアツーピアネットワーク内の所定のピアに分散するステップと、を含むことを特徴とする。
【００２９】
さらに、配信処理装置は、情報処理端末として設けられているピアが相互に仮想的に接続されたピアツーピアネットワークで、ピアからの要求に応じて所定のコンテンツを配信可能とする配信処理装置であって、前記コンテンツを複数のフラグメントに分割する分割手段と、前記フラグメントから前記コンテンツを復元可能とする関連情報を生成すると共に該関連情報をピアツーピアネットワークに公開する情報生成手段と、前記フラグメントを前記ピアツーピアネットワーク内の所定のピアに分散して配布し、前記ピアの要求に応じて該ピアへ転送可能とする共有データとして保持させる配布手段と、を含むものであればよく、この配信処理装置をピアツーピアネットワークに設けることにより、ネットワークの負荷を軽減しながらコンテンツの配信が可能となる。
【発明の効果】
【００３０】
以上説明したように本発明によれば、大容量のコンテンツを配信するときに、サーバにアクセスが集中するのを防止することができる。これにより、コンテンツを配信するためのサーバやネットワークに対するコスト上昇を抑え、効率的なコンテンツ配信が可能となるという優れた効果が得られる。
【発明を実施するための最良の形態】
【００３１】
以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。図１には、本実施の形態に適用したネットワーク１０の概略構成を示している。このネットワーク１０では、多数の情報処理端末１２が接続されて形成されている。また、このネットワーク１０には、配信用のコンテンツを格納する配信サーバなどのサーバ１４が直接的又は、他のネットワーク等を介して間接的に接続されるようになっており、これにより、サーバ１４に格納しているコンテンツを、情報処理端末１２のそれぞれがダウンロード可能となっている。
【００３２】
このネットワーク１０では、情報処理端末１２が仮想的に相互に接続されたＰ２Ｐ（Peer  to  Peer）ネットワークを形成している。すなわち、ネットワーク１０では、情報処理端末１２がピアとなっている（以下、情報処理端末をピア１２とする）。
【００３３】
なお、各ピア１２は、ファイアウォールによるアクセス制限下にあってもよく、ＮＡＴ（Network  Address  Translation）によってアドレス変換されて接続されるものであっても良く、ピア１２同士の接続方式は、ＩＰｖ４（Internet  Protocol  version  ４）の機能を用いるＴＣＰ（Transmission  Control  Protocol）、ＨＴＴＰ（HyperText  Transfer  Protocol）、ＳＭＴＰ（Simple  Mail  Transfer  Protocol）を用いることができる。
【００３４】
ピア１２としては、パーソナルコンピュータなどの各種のコンピュータのみならず、ＰＤＡ（Personal  Digital  Assistance）、携帯電話、プリンタ、コピー機、プリンタ機能とコピー機能を含む複数の機能を備えた複合機などのネットワーク接続可能なハードウェア、又は、これらの機能を実現するソフトウエアを含むことができるが、本実施の形態では、主としてパーソナルコンピュータ、ＰＤＡ、携帯電話など、ユーザーが操作して利用する情報処理端末への適用例を説明する。
【００３５】
Ｐ２Ｐネットワークでは、ピア１２が各種のサーバ機能を持つことができると共に、Ｐ２Ｐネットワーク１０では、ＳＭＰＴサーバなどの各種サーバが接続されていても良く、ネットワーク１０は、Ｐ２Ｐネットワークにサーバ１４を接続した所謂ハイブリッドＰ２Ｐネットワークの形態となっているが、以下では、ネットワーク１０をＰ２Ｐネットワーク１０として説明する。また、このような、Ｐ２Ｐネットワーク１０の基本的構成は、従来公知の構成を適用でき、以下では、Ｐ２Ｐネットワーク１０の基本的構成については概略のみを説明する。
【００３６】
Ｐ２Ｐネットワーク１０では、目的等に応じて複数のピア１２ごとにグループ（以下、「ピアグループ１６」とする）を構成することができる。このとき、ピア１２は、少なくとも一つのピアグループ１６に属するが、単一のピアグループ１６のみに属すものであっても良く、複数のピアグループ１６に属するものであっても良い。
【００３７】
図２には、ピア１２の概略構成を示している。ピア１２には、Ｐ２Ｐネットワーク１０内でデータ等を共有するためのデータ共有部１８が設けられている。データ共有部１８には、Ｐ２Ｐ基盤構成部２０及びＰ２Ｐ基盤管理データ記憶部２２が形成されている。また、ピア１２には、データ共有部１８外に、アプリケーション実行部２４及びアプリケーションメモリ２６などを含んで形成されている。
【００３８】
Ｐ２Ｐ基盤構成部２０は、メッセージ制御部２８、送信部３０、受信部３２及びデータ管理部３４を含んで形成されている。送信部３０は、メッセージ制御部２８から受け取ったメッセージやデータなどを、Ｐ２Ｐネットワーク１０内へ送信する。
【００３９】
また、受信部３２は、Ｐ２Ｐネットワーク１０内で送信されるデータのうち自機ないし自機の属するピアグループ１６に必要なデータや、ピアグループ１６内で送信されるデータを受信し、受信したデータをメッセージ制御部２８へ受け渡す。なお、送信部３０と送信部３２は、並列動作するようになっている。
【００４０】
メッセージ制御部２８は、サービス実行部３６及びメッセージディスパッチ部３８を含んで形成されている。サービス実行部３６は、ピア検索サービス、告知情報公開サービス、告知情報取得サービス、グループ管理サービス、ユーザー管理サービス及び、ピア管理サービスなどの各種のサービスを実行する。このときに、サービス実行部３６では、各サービスの情報を相互に授受しながら、それぞれのサービスを実行する。
【００４１】
ピア検索サービスは、ピアグループ１６を含むＰ２Ｐネットワーク１０に参加しているピア１２及び、自機が必要とするサービス（機能）を提供可能なピア１２を検索する。なお、検索範囲は、必要とするサービスの名称や属性、メッセージ等を送信する際に経由するピア数であるホップ数の閾値などを指定して制御する公知の任意の方法を適用することができる。
【００４２】
告知情報公開サービスは、自機が提供可能なサービスなどの情報を告知情報とし、この告知情報をＰ２Ｐネットワーク１０内に公開する機能を備えている。このとき、アプリケーション実行部２４で実行するアプリケーション等を提供可能なサービスに設定することにより、該当アプリケーション等を告知情報に含めることができる。なお、告知情報の公開は、例えば、他のピア１２から問い合わせがあった場合に行うものであっても良く、自機がＰ２Ｐネットワーク１０にログインするときに行ってもよく、また、ログイン中に定期的ないし不定期的などの任意のタイミングで行うものであっても良い。
【００４３】
告知情報取得サービスは、ピア検索サービスによって検索されたピア１２から送信された告知情報及び、ピア１２が自発的に送信した告知情報を取得する。また、告知情報取得サービスでは、取得したピア１２ごとの告知情報を用いたデータ管理を行うことができる。
【００４４】
Ｐ２Ｐ基盤管理データ記憶部２２には、ＨＤＤなどを用いた共有データ記憶部４０が設けられており、データ管理部３４は、告知情報を受け取ると供給データ記憶部４０に記憶する。これにより、ピア１２では、Ｐ２Ｐネットワーク１０やピアグループ１６内の各ピア１２のそれぞれが提供しているサービスの把握が可能となるようにしている。
【００４５】
グループ管理サービスは、ピアグループ１６への参加や脱退、新たなピアグループ１６の作成などをグループ情報を管理する。ここで管理するグループ情報は、例えば、グループＩＤと、ピア１２ごとに決められているユーザーＩＤとの対応関係を示す情報を用いることができる。
【００４６】
このグループ情報は、共有データ記憶部４０に記憶され、このグループ情報を参照することにより、自機と共にピアグループ１６ないしＰ２Ｐネットワーク１０に属しているピア１２の把握が可能となっている。
【００４７】
ユーザー管理サービス（ステータス情報管理サービス）は、ピア１２のステータス情報を管理する。ステータス情報には、各ピア１２のピアＩＤ、ピア１２を使用するユーザーを特定するユーザーＩＤ、ユーザー名、メールアドレスなどの情報を含んでいる。なお、ピアＩＤとしては、ＩＰアドレスやＵＲＩ（Uniform  Resource  Identifier）などを用いることができる。
【００４８】
このステータス情報は、前記したグループ情報に対比させて共有データ記憶部４０に記憶されるようになっており、これにより、ピア１２では、ピアグループ１６内のピア１２やＰ２Ｐネットワーク１０内のピア１２のステータスの把握が可能となっている。
【００４９】
メッセージディスパッチ部３８は、アプリケーション実行部２４で作成されたメッセージや他のピア１２との間で送受信されるメッセージを解析し、解析結果をサービス実行部３６へ受け渡す。サービス実行部３６では、メッセージディスパッチ部３８で解析した情報に基づいたサービスを実行する。
【００５０】
また、Ｐ２Ｐ基盤管理データ記憶部２２は、Ｐ２Ｐネットワーク１０におけるスパンニングツリーに関する情報などの経路情報、ピア１２ごとの公開情報、自機の属するピアグループ１６に関するグループ情報、ピア１２ごとのステータス情報などに加え、隣接情報、ユーザー情報などを含む各種の情報を記憶する。
【００５１】
隣接情報には、自機に隣接するピア１２に関するピアＩＤなどであり、隣接するピア１２としては、例えば自機から送信したパケットに対する応答時間が予め設定している時間内のピア１２であり、例えば、他のピア１２と通信する過程において得られる応答時間などを用いて作成、更新することができ、また、手動的に設定するものであっても良い。
【００５２】
ピア１２の公開情報は、サービス実行部３６のピア検索サービスによって検索されたピア１２のピアＩＤなどのステータス情報、告知情報取得サービスによって取得したＰ２Ｐネットワーク１０上やピアグループ１６内の各ピア１２が提供しているサービスに関する情報を含む。
【００５３】
一方、アプリケーション実行部２４は、ピア１２にインストールされている各種のアプリケーションを実行する。また、アプリケーションメモリ２６には、アプリケーション実行部２４で実行されるアプリケーションのプログラムやデータなどの各種のプログラム、データなどを記憶する。
【００５４】
このように構成されているピア１２では、ピアグループ１６内のピア１２やＰ２Ｐネットワーク１０に設けているピア１２を指定してメッセージをマルチキャストすることができる。
【００５５】
また、ピア１２では、Ｐ２Ｐネットワーク１０にブロードキャストすることにより、Ｐ２Ｐネットワーク１０への告知情報の公開や、他のピア１２の告知情報の取得が可能となっている。
【００５６】
一方、Ｐ２Ｐネットワーク１０内では、他のピア１２へメッセージを転送する機能を有する転送機能付きピア１２と、転送機能付きピア１２を用いてメッセージの転送を行うエンドピアを含むことができる。このとき、転送機能付きピア１２には、サービス実行部３６にメッセージ転送サービス機能が設けられている。
【００５７】
これにより、例えば、エンドピア１２は、共有データから転送機能付きピア１２を検索し、転送機能付きピア１２にメッセージを発信する。転送機能付きピア１２では、メッセージを受信すると受信したメッセージを解析し、メッセージに記述された処理サービスを実行する。
【００５８】
このときに、メッセージの転送要求であれば、転送先のピア１２にメッセージを転送する。
【００５９】
また、要求されるサービスが、例えば、ファイルやコンテンツなどを取得するためのファイル探索であれば、共有データから該当ファイルやコンテンツの有無、該当ファイルやコンテンツを保持しているピア１２に関する情報の有無を確認する。
【００６０】
このときに、ピア１２が該当ファイルやコンテンツを保持しているか、又は該当ファイルやコンテンツを保持しているピア１２に関する情報を取得していれば、該当する情報のメッセージを発信元（検索元）のピア１２へ送信する。
【００６１】
また、転送機能付きピア１２では、該当ファイルやコンテンツに関する情報を保持していなければ、ファイル探索メッセージを作成し、作成したメッセージを周囲のピア１２へブロードキャスト又はマルチキャストし、応答メッセージから検索ファイルやコンテンツに関する情報を取得すると、取得した情報を発信元のピア１２へ配信する。
【００６２】
これにより、発信元のピア１２は、検索ファイルやコンテンツに関する情報を取得することができ、この情報に基づいて検索ファイルやコンテンツをダウンロードすることにより取得可能となる。
【００６３】
一方、転送機能付きピア１２では、自機に予め他の転送機能付きピア１２が記憶されており、他の転送機能付きピア１２に対してマルチキャスト又はブロードキャストによって、グループ情報やユーザー情報等の各情報の発信要求を行う。
【００６４】
この要求に基づいて転送機能付きピア１２のそれぞれでグループ情報やユーザー情報を取得することにより、Ｐ２Ｐネットワーク１０を構成している各ピア１２のユーザー情報、ピア情報を共有データとして共有データ記憶部４０に記憶する。
【００６５】
また、ピア１２のそれぞれでは、隣接情報を記憶している。この隣接情報は、周囲のピア１２にメッセージを発信したときに、該当メッセージに対する応答時間などから取得するようになっている。また、ピア１２のそれぞれは、隣接情報に、隣接している転送機能付きピア１２を含んでいる。
【００６６】
転送機能付きピア１２では、各ピアに隣接情報要求をブロードキャストして、各ピア１２の隣接情報を取得する。また、転送機能付きピア１２は、自機が保持している各ピア１２の隣接情報及び自機の隣接情報を、他の転送機能付きピア１２にマルチキャストすると共に、他の転送機能付きピア１２が保持している隣接情報を要求することにより、隣接情報の交換を行う。
【００６７】
転送機能付きピア１２では、隣接情報を定期的に取得してスパンニングツリーの計算を行う。スパンニングツリーは、メッセージの転送経路を、転送機能付きピア１２が分岐点又は通過点となるツリー構造とするものであり、転送機能付きピア１２では、スパンニングツリーの計算を行って、各エンドピア１２への経路情報として記憶する。このときの経路情報には、経由するピア１２の数であるホップ数も計算されて記憶される。
【００６８】
ところで、Ｐ２Ｐネットワーク１０に接続されるサーバ１４では、配信用のコンテンツＣを格納しており、ピア１２からの要求によってコンテンツＣをピア１２へ配信する。ピア１２は、このコンテンツＣをダウンロードすることにより、コンテンツＣの利用が可能となっている。
【００６９】
サーバ１４では、コンテンツとして比較的大容量の映像や音楽等の配信が可能となっており、ビデオ映像（ビデオストリーム）をコンテンツとしたオンデマンドビデオ配信、音楽をコンテンツとするオンデマンドミュージック配信を行う。また、サーバ１４では、音声、音楽ないし映像を作成しながら配信する所謂インターネット放送などが可能とあるようにしている。
【００７０】
さらに、Ｐ２Ｐネットワーク１０では、各種の学習教材をコンテンツとしてサーバ１４に格納してオンデマンド配信を行うことにより、所謂ｅラーニングなどが可能となるようにしている。
【００７１】
図３に示すように、サーバ１４には、コンテンツ記憶部４２が設けられている。このコンテンツ記憶部４２には、配布するコンテンツ及びコンテンツのリスト情報（コンテンツリスト）が記憶される。
【００７２】
また、サーバ１４には、コンテンツ分割部４４、コンテンツ情報生成部４６、コンテンツ配布部４８及びコンテンツ情報公開部５０が設けられている。
【００７３】
コンテンツ分割部４４は、コンテンツを複数のコンテンツフラグメントに分割する。すなわち、図４に示すように、多数のコンテンツＣ、Ｃ1、Ｃ2・・Ｃmが格納されるようになっており、サーバ１４では、それぞれのコンテンツ（以下、コンテンツＣを例示して説明する）ＣをコンテンツフラグメントＣＦ1、ＣＦ2、・・ＣＦn（以下、総称するときには、コンテンツフラグメントＣＦとする）分割する。
【００７４】
コンテンツ情報生成部４６では、コンテンツＣを形成するためのコンテンツフラグメントＣＦに関する構成情報及びコンテンツフラグメントＣＦを連結してコンテンツＣを復元するための構成情報をコンテンツ情報ＣＩとして生成する。
【００７５】
これにより、コンテンツ情報ＣＩに基づいてコンテンツフラグメントＣＦを収集し、収集したコンテンツフラグメントＣＦをコンテンツ情報ＣＩに基づいて連結することにより、コンテンツＣの復元が可能となるようにしている。
【００７６】
コンテンツ配布部４８は、コンテンツ分割部４４で分割して生成した各コンテンツフラグメントＣＦを、サーバ１４の周囲のピア１２などの予め設定しているピア１２へ分散させて配布する。このときに、コンテンツフラグメントＣＦと共に、コンテンツ情報ＣＩを合わせて配布するようにしても良い。
【００７７】
これにより、Ｐ２Ｐネットワーク１０では、コンテンツＣが、コンテンツフラグメントＣＦとして複数のピア１２に分散されて共有データとして保持（キャッシュ）され、Ｐ２Ｐネットワーク１０では、コンテンツＣに対するコンテンツ情報ＣＩを取得し、このコンテンツ情報ＣＩに基づいてコンテンツフラグメントＣＦを収集することにより、コンテンツＣを取得できるようにしている。なお、サーバ１４からのコンテンツＣＦの最初の分散先は、サーバ１４に隣接するピア１２とすることができるが、分散先はこれに限るものではない。
【００７８】
ここで、Ｐ２Ｐネットワーク１０に参加しているピア１２でのコンテンツＣの取得（ダウンロード）の概略を説明する。
【００７９】
図５には、ピア１２でのコンテンツＣのダウンロードの概略を示している。このフローチャートは、ピア１２でコンテンツＣを取得するときに実行され、最初のステップ１００では、サーバ１４で配信しているコンテンツＣのリスト（コンテンツリスト）を要求する。このコンテンツリストの要求は、サーバ１４へ行うものであってもよく、また、Ｐ２Ｐネットワーク１０やピアグループ１６で共有データとして保持されているコンテンツのリストを要求するものであっても良い。
【００８０】
ピア１２では、コンテンツリストを取得すると、ステップ１０２でダウンロードするコンテンツＣを決定する。
【００８１】
次のステップ１０４では、決定したコンテンツＣのコンテンツ情報ＣＩの検索し、コンテンツ情報ＣＩを取得する。このコンテンツ情報ＣＩの検索及び取得は、Ｐ２Ｐネットワーク１０でのファイル検索サービスを実行することにより行うことができる。なお、Ｐ２Ｐネットワーク１０では、コンテンツ情報ＣＩが、共有データとして公開されているので、予めコンテンツ情報ＣＩを共有データなどとして保持しているときには、ステップ１００〜１０４が省略されることもありうる。
【００８２】
ピア１２では、コンテンツ情報ＣＩを取得すると、ステップ１０６へ移行し、コンテンツ情報ＣＩに基づいて、コンテンツＣを復元するために必要なコンテンツフラグメントＣＦを設定する。このとき、既に保持しているコンテンツフラグメントＣＦがあれば、残りのコンテンツフラグメントＣＦを要求するコンテンツフラグメントＣＦに設定する。
【００８３】
次に、ステップ１０８では、設定に基づいて要求コンテンツフラグメントＣＦの検索及び取得を行う。コンテンツフラグメントＣＦの取得は、コンテンツＣから分割された各コンテンツフラグメントＣＦのそれぞれに対して検索要求メッセージを発し、各コンテンツフラグメントＣＦを保持しているピア１２を特定する。この後、それぞれのピア１２に対して、コンテンツフラグメントＣＦのダウンロード要求を行う。コンテンツフラグメントＣＦを保持しているピア１２は、コンテンツフラグメントＣＦが要求されることにより、コンテンツフラグメントＣＦを、要求元のピア１２へ転送する。
【００８４】
コンテンツＣをダウンロードするピア１２では、ステップ１１０で全てのコンテンツフラグメントＣＦのダウンロードが完了したか否かを確認する。すなわち、コンテンツＣを分割することにコンテンツフラグメントＣＦ1〜ＣＦnが生成されているときには、このコンテンツフラグメントＣＦ1〜ＣＦnの全てをダウンロードするなどして揃ったか否かを確認する。
【００８５】
ここで、要求したコンテンツフラグメントＣＦのダウンロードが終了し、必要とするコンテンツフラグメントＣＦの全てが揃うとステップ１１０で肯定判定してステップ１１２へ移行する。このステップ１１２では、コンテンツ情報ＣＩに基づいてコンテンツＣＦを連結することによりコンテンツＣを復元する。
【００８６】
これにより、サーバ１４から配信されるコンテンツＣを、ピア１２が取得することができる。
【００８７】
このように、Ｐ２Ｐネットワーク１０では、要求元となるピア１２では、順次、コンテンツフラグメントＣＦを取得することができる。このとき、コンテンツフラグメントＣＦは、複数のピア１２に分散されており、また、元のコンテンツＣが大容量であっても、コンテンツフラグメントＣＦが分割されているために容量が小さくなっている。
【００８８】
このために、多数のピア１２からコンテンツフラグメントＣＦの転送要求があっても、コンテンツフラグメントＣＦを保持しているピア１２に大きな負荷をかけてしまうことがない。
【００８９】
また、Ｐ２Ｐネットワーク１０上で多数のピア１２がコンテンツＣのダウンロードを行っても、実質的にサーバ１４にアクセスしないため、コンテンツＣの配信元であるサーバ１４に対しても、大きな負荷をかけてしまうことがない。
【００９０】
これにより、Ｐ２Ｐネットワーク１０では、大容量のコンテンツＣであっても、サーバ１４やネットワークに負荷をかけることなく効率的に取得することができる。
【００９１】
このように、コンテンツＣを、複数のコンテンツフラグメントＣＦ（ＣＦ１〜ＣＦｎ）に分割することにより、コンテンツＣが大容量であっても、個々の容量が比較的小さいコンテンツフラグメントＣＦのダウインロードによってコンテンツＣを復元することができる。
【００９２】
このとき、例えば、コンテンツＣが映像や音楽などで、コンテンツフラグメントＣＦ1、ＣＦ2、・・、ＣＦnの順で再生が行われる場合、最初のコンテンツフラグメントＣＦ1を取得し、このコンテンツフラグメントＣＦ1の再生を行いながら、バックグラウンドで次のコンテンツフラグメントＣＦ2、ＣＦ3、・・、ＣＦnのダウンロードを行うようにすることができる。
【００９３】
これにより、大容量のコンテンツＣであっても、最初のコンテンツフラグメントＣＦ1を取得するだけで、コンテンツＣの再生を開始することができるので、ダウンロードを開始してから再生を開始するまでの時間を大幅に短縮することができる。
【００９４】
一方、Ｐ２Ｐネットワーク１０では、コンテンツＣをダウンロードしたピア１２が、必要に応じてコンテンツフラグメントＣＦの一つを共有データとして保持（キャッシュ）することがある。なお、一つのピア１２でキャッシュするコンテンツフラグメントＣＦは、複数であっても良いが、ピア１２の負荷を分散することを考慮したときには、一つのコンテンツフラグメントＣＦであることが好ましい。
【００９５】
このときには、ピア１２において、隣接情報から所定範囲内のピア１２の間で、コンテンツフラグメントＣＦ1〜ＣＦnのそれぞれについてキャッシュされているか否かを確認する。
【００９６】
図６には、このときの処理の概略を示している。このフローチャートでは、最初のステップ１２０で、ホップ数Ｈｐを設定（初期値Ｈｐ＝１）の設定を行い、コンテンツフラグメントＣＦを保持しているピア１２の検索範囲を設定する。
【００９７】
この後、ステップ１２２では、設定した範囲（ホップ数Ｈｐ）でのファイル検索を行う。すなわち、経路情報に基づいて設定範囲内のピア１２へコンテンツＣのコンテンツフラグメントＣＦの有無を確認するメッセージをマルチキャストする。
【００９８】
これにより、メッセージを受け取ったピア１２のそれぞれは、応答メッセージを返信する。
【００９９】
ピア１２では、この応答メッセージから、コンテンツフラグメントＣＦを保持しているか否か、すなわち、検索ファイルの有無を確認し、コンテンツフラグメントＣＦを保持しているピア１２から応答メッセージがあると、ステップ１２４で肯定判定してステップ１２６へ移行する。コンテンツＣを構成するための全てのコンテンツフラグメントＣＦが揃っているか否かを確認する。
【０１００】
このときに、全てのコンテンツフラグメントＣＦが揃っていなければ、ステップ１２６で否定判定して、次のピア１２からの応答メッセージを確認する。
【０１０１】
また、設定範囲内でコンテンツフラグメントＣＦが揃わなければ、ステップ１２４で否定判定してステップ１２８へ移行する。このステップ１２８では、ホップ数Ｈｐをインクリメントすることにより設定範囲を広げ、ステップ１３０では、設定したホップ数Ｈｐが予め設定している許容範囲であるか否かを確認する。
【０１０２】
ここで、新たな設定範囲（ホップ数Ｈｐ）が許容範囲であれば、ステップ１３０で肯定判定してステップ１２２へ移行し、新たに設定した範囲でコンテンツフラグメントＣＦの検索を行う。
【０１０３】
このようにして予め設定されている許容範囲内で、コンテンツＣのコンテンツフラグメントＣＦの全てが揃っていないときには、ステップ１３０で否定判定してステップ１３２へ移行する。
【０１０４】
このステップ１３２では、検索範囲内のピア１２の間でキャッシュされていないコンテンツフラグメントＣＦの一つを選択し、選択したコンテンツフラグメントＣＦを共有データとしてキャッシュするように設定し、他のピア１２からこのコンテンツフラグメントＣＦが要求されたときに転送可能となるようにする。
【０１０５】
すなわち、図７に示すように、コンテンツＣをダウンロードしたピア１２（ここではピア１２Ａとする）から所定の範囲（所定のホップ数Ｈｐ、例えば図７で二点鎖線で示す範囲）に、他のピア１２（ここでは、ピア１２Ｂ、１２Ｃ、・・、１２Ｅ）があるとき、ピア１２Ａは、ピア１２Ｂ、１２Ｃ、・・、１２ＥにコンテンツフラグメントＣＦ（ＣＦ1〜ＣＦn）の何れかをキャッシュしているかを確認する。
【０１０６】
ここで、例えば、ピア１２Ｂ、１２Ｃ、・・、１２Ｅの間で、コンテンツフラグメントＣＦ1、ＣＦ3、・・、ＣＦnがキャッシュされているのを確認し、コンテンツフラグメントＣＦ2がキャッシュされていなければ、ピア１２Ａは、このコンテンツフラグメントＣＦ2をキャッシュする。
【０１０７】
これにより、ピア１２Ａ〜１２Ｅの間で、コンテンツＣを構成するコンテンツフラグメントＣＦが揃うので、ピア１２Ａ〜１２Ｅに隣接するピア１２（近隣のピア１２）などは、コンテンツＣ（コンテンツフラグメントＣＦ）のダウンロードを近隣のピア１２（１２Ａ〜１２Ｅ）から短時間で効率的に行うことができる。
【０１０８】
また、このときには、Ｐ２Ｐネットワーク１０の比較的狭い範囲でコンテンツフラグメントＣＦの送受信で行うことができるため、他のデータの送受信に影響を与えてしまうのを抑えることができる。
【０１０９】
なお、図６を用いた説明では、検索範囲を順に拡大したが、これに限らず、予め設定している範囲（ホップ数）内のピア１２に、マルチキャストすることにより、１回の検索でコンテンツフラグメントの有無を確認するようにしてもよく、さらに、コンテンツフラグメントＣＦをダウンロードするときに、最も離れたピア１２からダウンロードしたコンテンツフラグメントＣＦをキャッシュするなど、キャッシュするコンテンツフラグメントＣＦは、任意の方法で決定するものであって良い。
【０１１０】
一方、サーバ１２では、既に配信しているコンテンツＣの一部を変更したコンテンツＣａを配信するときには、コンテンツＣａを分割し、コンテンツフラグメントＣａＦを生成する。この後、コンテンツＣを分割したコンテンツフラグメントＣＦと、コンテンツフラグメントＣａＦで、異なるコンテンツフラグメントＣａＦのみを、ピア１２に配布するようにしている。
【０１１１】
すなわち、図８に示すように、コンテンツＣが、コンテンツフラグメントＣＦ1、ＣａＦ2、ＣＦ3・・ＣＦnで構成され、コンテンツＣのコンテンツフラグメントＣＦの間でコンテンツフラグメントＣａＦ2のみが異なるときには、このコンテンツフラグメントＣａＦ2のみを新たにピア１２に配布すると共に、コンテンツＣａに対するコンテンツ情報ＣａＩを生成し、このコンテンツ情報ＣａＩをコンテンツ情報ＣＩに換えて公開する。
【０１１２】
ここで、既にコンテンツＣをダウンロードしているピア１２が、新たに配信されるコンテンツＣａをダウンロードしたいときには、コンテンツ情報ＣａＩに基づいて、コンテンツフラグメントＣａＦ2のみを取得すれば、コンテンツＣａを復元することがきる。
【０１１３】
これにより、基本的構成の同じコンテンツＣがあれば、新たなコンテンツＣａの配信が容易となる。また、ピア１２では、バージョンアップ等によってコンテンツＣの一部が変更されたコンテンツＣａをダウンロードするために、変更されていないコンテンツフラグメントＣａＦまでダウンロードする必要がなく、コンテンツＣａの効率的なダウンロードが可能となる。
【０１１４】
したがって、例えば、映像や音声をコンテンツとして、ビデオ配信やミュージック配信を行うときに、本編にコマーシャル映像やコマーシャルメッセージを挟むときに、コマーシャル映像やコマーシャルメッセージの交換が容易となる。
【０１１５】
また、例えば、ミュージックライブを本編のコンテンツとして、最新のチケット情報を挟むことにより、ミュージックライブを視聴しながら、ライブチケットの広告を行うことができる。
【０１１６】
さらに、旅行映像などを本編のコンテンツとするときには、関連する旅行広告や旅行案内など挟むことにより、旅行映像などの視聴者に、ツアーの案内や観光案内などを簡単に行うことができる。
【０１１７】
また、ｅラーニングを行うときに、受講者の能力に合わせた演習問題などの配信を簡単に行うことができる。
【０１１８】
なお、以上説明した本実施の形態は、本発明の構成を限定するものではない。例えば、本実施の形態では、オンデマンドビデオ配信、オンデマンドミュージック配信、インターネット放送、ｅラーニングなどを適用例としたが、本発明は、これに限るものではなく、ネットワークを介して配信する情報であれば、映像や音楽などに限らず、任意の情報配信に適用することができる。
【０１１９】
また、本実施の形態では、サーバ１４が接続されたＰ２Ｐネットワーク１０を例に説明したが、本発明は、Ｐ２Ｐネットワークの各ピアへの情報配信を行うものであれば、任意の構成のネットワークに適用することができる。
【図面の簡単な説明】
【０１２０】
【図１】本実施の形態に適用したP２Ｐネットワークの概略図である。
【図２】Ｐ２Ｐネットワークを形成するピアの概略構成図である。
【図３】Ｐ２Ｐネットワークに接続されるサーバの一例を示す要部の概略構成図である。
【図４】Ｐ２Ｐネットワーク上でのフラグメントとコンテンツ情報の分散を示す概略図である。
【図５】コンテンツの取得の一例を示す流れ図である。
【図６】キャッシュするフラグメントの選択処理の一例を示す流れ図である。
【図７】図６の処理に基づいたフラグメントの配置とキャッシュするフラグメントを示す概略図である。
【図８】一部を変更したコンテンツのフラグメントとコンテンツ情報の分散を示す概略図である。
【符号の説明】
【０１２１】
１０    Ｐ２Ｐネットワーク
１２    ピア
１４    サーバ
１８    データ共有部
４４    コンテンツ分割部
４６    コンテンツ情報生成部
４８    コンテンツ配布部
Ｃ、Ｃａ    コンテンツ
ＣＦ（ＣＦ1〜ＣＦn）、ＣａＦ（ＣａＦ2）    コンテンツフラグメント
ＣＩ、ＣａＩ    コンテンツ情報（関連情報）
【図１】
2006178782.tif 000003
【図２】
2006178782.tif 000004
【図３】
2006178782.tif 000005
【図４】
2006178782.tif 000006
【図５】
2006178782.tif 000007
【図６】
2006178782.tif 000008
【図７】
2006178782.tif 000009
【図８】
2006178782.tif 000010