(57)【要約】【課題】特定のサーバを必要としない環境下において、Ｐ２Ｐネットワークを構成する端末のプレゼンスや端末が所属する端末グループを確実かつ低コストで取得でき、コンテンツ受信端末がＰ２Ｐネットワークから離脱していたときも、再参加後に自端末宛コンテンツを取得で切るようにする。【解決手段】高い端末機能能力を有する端末により構成される分散ハッシュテーブル３１に、端末グループ３２の情報を格納する段階と、コンテンツ受信端末１５２が有するプレゼンス情報を端末グループ３２内で共有する段階と、転送対象のコンテンツ受信端末１５２がＰ２Ｐネットワークから離脱している場合に、コンテンツを分割し、端末グループ３２内で漂流させる段階と、コンテンツ受信端末１５２がＰ２Ｐネットワークに再参加したときに、端末グループ３２に対して自端末宛のコンテンツを要求して取得する段階と、を設ける。【選択図】      図３
2006244223.tif 000002
【特許請求の範囲】
【請求項１】
複数の端末が自律分散協調により任意の情報及び／またはコンテンツデータを送受信するＰ２Ｐネットワーク上での、端末間でコンテンツ転送を行なう方法であって、
コンテンツ受信端末と関連性を有する端末群により端末グループを構成し、Ｐ２Ｐネットワーク中から端末機能能力に応じて選択された端末により構成される分散ハッシュテーブルに、前記端末グループの情報を格納する段階と、
前記コンテンツ受信端末が有するプレゼンス情報を、前記コンテンツ受信端末が所属する端末グループ内で共有する段階と、
コンテンツ送信端末が、前記分散ハッシュテーブルを参照して前記コンテンツ受信端末がどの端末グループに所属するのかを把握し、前記把握した端末グループに対して前記コンテンツ受信端末のプレゼンス情報を要求する段階と、
転送対象のコンテンツ受信端末が前記Ｐ２Ｐネットワークから離脱している場合に、転送されるべきコンテンツのデータサイズおよび前記端末グループの端末の能力を考慮しコンテンツを分割し、前記端末グループ内の前記Ｐ２Ｐネットワークに現在参加中の端末に対して前記コンテンツの複製を分散配備する段階と、
前記転送対象のコンテンツ受信端末が前記Ｐ２Ｐネットワークに参加したときに、当該転送対象のコンテンツ受信端末は先に自己が所属していた前記端末グループに再度参加し、前記端末グループに対して自端末宛のコンテンツを要求し、前記自端末宛のコンテンツ情報が存在する場合は当該コンテンツを取得して取得した旨を前記端末グループに通知する段階と、
を有するＰ２Ｐコンテンツ転送方法。
【請求項２】
前記Ｐ２Ｐネットワークに参加する各端末が、自端末の性能値を定期的に取得する段階と、
所定のしきい値以上の能力を有する端末が、前記分散ハッシュテーブルに自端末の能力を通知し、当該端末が既に分散ハッシュテーブルを構成している端末よりより良い能力を有する場合に当該端末を新規の分散ハッシュテーブルを構成する端末として登録する段階と、
を有する、請求項１に記載のＰ２Ｐコンテンツ転送方法。
【請求項３】
前記端末グループに属する各端末が、自端末の性能値を定期的に取得する段階とともに取得した性能値を前記端末グループ内の他端末と交換する段階と、
前記端末グループ内で最も性能値の高い端末をＧＷ−ＲＰ端末として決定し、前記分散ハッシュテーブルに保存される自端末グループのＧＷ−ＲＰ端末のアドレスとして、前記決定されたＧＷ−ＲＰ端末のアドレスを登録する段階と、
前記ＧＷ−ＲＰ端末が前記Ｐ２Ｐネットワークから離脱したときに、前記端末グループ内から新たなＧＷ−ＲＰ端末を選出し、前記分散ハッシュテーブルに前記新たなＧＷ−ＲＰ端末を登録する段階と、
前記ＧＷ−ＲＰ端末が、前記コンテンツ送信端末からの前記ＧＷ−ＲＰ端末が属する端末グループのコンテンツ受信端末に関する要求を受け付け、前記ＧＷ−ＲＰ端末が属する端末グループに対してフラッディングを行ない前記コンテンツ送信端末に取得情報を返却する段階と、
前記端末グループの各端末が、当該端末グループのＧＷ−ＲＰ端末及び他の端末のアドレスのキャッシュ情報を保存し、前記Ｐ２Ｐネットワークへの再参加時に前記キャッシュ情報を利用して同一端末グループに再参加する段階と、
を有する、請求項１に記載のＰ２Ｐコンテンツ転送方法。
【請求項４】
前記コンテンツ送信端末が前記コンテンツ受信端末の識別子により前記分散ハッシュテーブルを検索したとき、当該コンテンツ受信端末が所属する端末グループのＧＷ−ＲＰ端末のアドレスが前記コンテンツ送信端末に返される、請求項３に記載のＰ２Ｐコンテンツ転送方法。
【請求項５】
前記端末グループを構成する端末が、リンクを構築する端末間で相互にネットワークに参加しているかを定期的に検出し、端末の異常離脱によるプレゼンス情報の更新を行なう段階を有する、請求項１に記載のＰ２Ｐコンテンツ転送方法。
【請求項６】
相対的に変更頻度が低い情報を前記分散ハッシュテーブルに保存し、相対的に変更頻度が高い情報を前記端末グループ内で当該情報の複製を保持することにより管理する、請求項１乃至５のいずれか１項に記載のＰ２Ｐコンテンツ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｐ２Ｐ（ピア・ツー・ピア；peer-to-peer）ネットワークでのコンテンツの転送方法に関し、特に、コンテンツ転送の対象となる端末がネットワークに参加していない場合であっても、その後、その端末がネットワークに参加したときにその端末がコンテンツを取得できるようにするＰ２Ｐコンテンツ転送方法に関する。
【背景技術】
【０００２】
ネットワークに中央サーバを設け、中央サーバを介してコンテンツを転送する場合には、中央サーバとして高速大容量のものを必要とし、また、サーバ周りにトラフィックが集中する、という問題点が生ずる。Ｐ２Ｐネットワークにおいては、端末間でコンテンツを直接転送（エンド・ツー・エンド；end-to-end）することにより、中央サーバを用いることによるデメリットの多くを解決した。またＰ２Ｐネットワークは、各端末が自律的にＰ２Ｐネットワークへの参加・離脱を行なうことにより維持されている。
【０００３】
しかしながら、Ｐ２Ｐネットワークでの従来のコンテンツ転送では、例えばあるユーザＡがあるユーザＢにコンテンツを転送しようとした時、ユーザＢの端末がネットワークから離脱した状態の場合にはコンテンツを直接転送できないこととなる。例えば多くのＩＰ(Internet Protocol)メッセンジャ系のソフトウェアは、エンド・ツー・エンドでのコンテンツ転送機能を有しているが、転送対象端末がネットワークから離脱している状態の場合では、コンテンツを転送できない。この課題を解決するために、（１）一時的にコンテンツを保管するサーバをネットワーク内に用意する、あるいは、（２）Ｐ２Ｐネットワークを利用し、ネットワークに現に参加中の端末にコンテンツを一時的に保管・漂流してもらうなどの手法がとられている。ここで漂流とは、コンテンツが端末間を流転する概念として用いられている。
【０００４】
サーバを用意する手法は、信頼性の高いサーバを利用することにより、転送コンテンツがコンテンツ受信者に確実に届くようになると考えられが、リッチコンテンツ等のデータサイズが年々増大しており、そのような増大するデータサイズに対応するためのストレージ（記憶装置）コスト増やネットワークトラフィックコスト増の問題を孕んでいる。
【０００５】
一方、コンテンツを一時的に保管、漂流させる手法では、転送コンテンツをＰ２Ｐネットワーク内に漂流させ、コンテンツ受信者がその漂流しているコンテンツを取得することにより、コンテンツ転送を可能とする。コンテンツ受信者がＰ２Ｐネットワークから自ノード宛の漂流コンテンツを取得する方法として、Ｇｎｕｔｅｌｌａ（グヌーテラ）で用いられているようにＰ２Ｐネットワークをブロードキャストする手法が挙げられるが、そのような手法では、Ｐ２Ｐネットワークを構成する端末数の増加により、検索パケットが対象コンテンツを保持する端末に到達するための検索コストが高くなる。
【０００６】
この課題を解決するために、コンテンツ受信者がコンテンツを検索するためのさまざまなコンテンツ検索手法が提案されている。
【０００７】
特開２００３−１７８０８９号公報（特許文献１）では、Ｐ２Ｐネットワークにおける制御用サーバが、ユーザの興味情報に基づいて、各ジャンルに対する関心や興味を示すパラメータによって興味ベクトルを設定し、検索要求ユーザの興味ベクトルに近い興味ベクトルを選択してコンテンツ有無の問い合わせ先として設定する。この構成により、制御用サーバにコンテンツ情報を保持する必要なく、確度の高いコンテンツ検索処理が実行可能となる。しかしながら、あるジャンルやアーティスト等などの興味ベクトルを利用したコンテンツ検索方法は、あるコンテンツの取得ユーザとしては多数のユーザが対象として想定されるといったように、コンテンツ取得者の概念が広く、特定の個人宛のコンテンツを検索するのには向いていない。すなわち、特定の個人宛のコンテンツといった一対一にコンテンツとユーザを結びつけるような状況下では、興味ベクトルといった概念は有効性を発揮しない。
【０００８】
一方、Ｐ２Ｐネットワークへのコンテンツの漂流方法としては、従来、特定の端末にコンテンツが集中しないように複製を均等に分散管理することにより、例えば特定の端末がダウンしたことによってコンテンツが失われることを防止し、コンテンツがＰ２Ｐネットワークから失われないことを担保している。特開２００４−２２０１８３号公報（特許文献２）には、分散型記憶処理を構成する端末のグループ分けを行ない、グループに対して設置されたグループ管理装置の制御により、グループの各端末の記憶容量に応じた破綻のないデータ記憶処理を実現することが提案されている。
【０００９】
しかしながら、ネットワークを構成する端末数の増加に対しては端末グループ化の概念は有用であるが、Ｐ２Ｐネットワーク環境下でグループを構成する各端末はネットワークへの参加と離脱を行なうため、離脱した端末を再び同一グループに参加させるためには特定のサーバへの問い合わせを必要とする。また、離脱した端末が再度同一のグループに参加することができない場合には、グループ内で均等にコンテンツを分散管理することができなくなり、特定グループに所属するコンテンツ受信端末がネットワークから離脱しているときでもコンテンツを受信できるようにコンテンツ送信端末が受信端末の所属グループ内の他端末にコンテンツの複製を保存しても、コンテンツ受信端末が再び同一グループに再参加できなければコンテンツの複製は意味を持たなくなり、また、コンテンツ送信者は、コンテンツ受信者がどの端末グループに所属するかを把握できなければ複製の保存先端末グループを決定することはできない、という問題点を生ずる。
【００１０】
また各端末の所属グループやプレゼンス情報（ネットワークへの参加・離脱等）を取得可能であるならば、コンテンツ受信端末がＰ２Ｐネットワークに参加中であればエンド・ツー・エンドでコンテンツを受信端末に転送し、離脱中であれば他端末にコンテンツを漂流させるなど、手法の使い分けが可能となる。サーバを用いることなく所属グループやプレゼンス情報を管理する手法として、分散ハッシュテーブル（ＤＨＴ；distributed hash table）の利用が考えられる。所属グループのように一度決定してしまえばそれ以降の情報の変更はあまりないと考えられるものはともかく、プレゼンス情報のように頻繁に更新が必要な情報を分散ハッシュテーブル内で更新することは、作業コスト増につながる、という問題点を生じる。また、端末側から分散ハッシュテーブルに対してプレゼンス情報の更新を行なわなければ情報の更新が行なわれないが、このことは、端末がＰ２Ｐネットワークから正常手続きを踏まない異常離脱を行なった場合、実際は端末がＰ２Ｐネットワークにすでに存在しないにも関わらず分散ハッシュテーブル上ではその端末が参加となっているという、不一致状態をもたらすことになる。
【特許文献１】特開２００３−１７８０８９号公報
【特許文献２】特開２００４−２２０１８３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上述したように、従来の手法では、特定のサーバを用いることなく、Ｐ２Ｐネットワークを構成する端末のプレゼンス（参加・離脱情報等）や端末が所属する端末グループの取得を確実かつ低コストで行うことは難しい。
【００１２】
本発明の目的は、特定のサーバを必要としない環境下において、Ｐ２Ｐネットワークを構成する端末のプレゼンス（参加・離脱情報等）や端末が所属する端末グループを確実かつ低コストで取得できるようにし、コンテンツ受信者がＰ２Ｐネットワークから離脱中である場合でも、コンテンツ受信者が再びＰ２Ｐネットワークに参加した時に自宛のコンテンツを確実に取得できるようにするコンテンツ転送方法を提供することにある。
【課題を解決するための手段】
【００１３】
本発明のＰ２Ｐコンテンツ転送方法は、複数の端末が自律分散協調により任意の情報及び／またはコンテンツデータを送受信するＰ２Ｐネットワーク上での、端末間でコンテンツ転送を行なう方法であって、コンテンツ受信端末と関連性を有する端末群により端末グループを構成し、Ｐ２Ｐネットワーク中から端末機能能力に応じて選択された端末により構成される分散ハッシュテーブルに、端末グループの情報を格納する段階と、コンテンツ受信端末が有するプレゼンス情報を、コンテンツ受信端末が所属する端末グループ内で共有する段階と、コンテンツ送信端末が、分散ハッシュテーブルを参照してコンテンツ受信端末がどの端末グループに所属するのかを把握し、把握した端末グループに対してコンテンツ受信端末のプレゼンス情報を要求する段階と、転送対象のコンテンツ受信端末がＰ２Ｐネットワークから離脱している場合に、転送されるべきコンテンツのデータサイズおよび端末グループの端末の能力を考慮しコンテンツを分割し、端末グループ内のＰ２Ｐネットワークに現在参加中の端末に対してコンテンツの複製を分散配備する段階と、転送対象のコンテンツ受信端末がＰ２Ｐネットワークに参加したときに、その転送対象のコンテンツ受信端末は先に自己が所属していた端末グループに再度参加し、端末グループに対して自端末宛のコンテンツを要求し、自端末宛のコンテンツ情報が存在する場合はそのコンテンツを取得して取得した旨を端末グループに通知する段階と、を有する。
【００１４】
すなわち本発明では、Ｐ２Ｐネットワークにおいてコンテンツ転送の対象となる端末がネットワークに参加していない場合でも、ネットワークに接続中の端末にコンテンツを一時保管し、転送対象端末がネットワークに再び参加した時に自宛のコンテンツを発見・取得するようにする。これにより、特定のサーバを必要とせずに、かつ効率的に、一時保管コンテンツをネットワーク中に配備・取得を可能とする。
【００１５】
本発明では、Ｐ２Ｐネットワークに参加する各端末が、自端末の性能値を定期的に取得する段階と、所定のしきい値以上の能力を有する端末が、分散ハッシュテーブルに自端末の能力を通知し、その端末が既に分散ハッシュテーブルを構成している端末よりより良い能力を有する場合にその端末を新規の分散ハッシュテーブルを構成する端末として登録する段階と、をさらに設けてもよい。
【００１６】
また本発明では、端末グループに属する各端末が、自端末の性能値を定期的に取得する段階とともに取得した性能値を端末グループ内の他端末と交換する段階と、端末グループ内で最も性能値の高い端末をＧＷ−ＲＰ端末として決定し、分散ハッシュテーブルに保存される自端末グループのＧＷ−ＲＰ端末のアドレスとして、決定されたＧＷ−ＲＰ端末のアドレスを登録する段階と、ＧＷ−ＲＰ端末がＰ２Ｐネットワークから離脱したときに、端末グループ内から新たなＧＷ−ＲＰ端末を選出し、分散ハッシュテーブルに新たなＧＷ−ＲＰ端末を登録する段階と、ＧＷ−ＲＰ端末が、コンテンツ送信端末からのＧＷ−ＲＰ端末が属する端末グループのコンテンツ受信端末に関する要求を受け付け、ＧＷ−ＲＰ端末が属する端末グループに対してフラッディングを行ないコンテンツ送信端末に取得情報を返却する段階と、端末グループの各端末が、その端末グループのＧＷ−ＲＰ端末及び他の端末のアドレスのキャッシュ情報を保存し、Ｐ２Ｐネットワークへの再参加時にキャッシュ情報を利用して同一端末グループに再参加する段階と、を設けてもよい。ＧＷ−ＲＰ端末を設定する場合には、コンテンツ送信端末がコンテンツ受信端末の識別子により分散ハッシュテーブルを検索したとき、そのコンテンツ受信端末が所属する端末グループのＧＷ−ＲＰ端末のアドレスがコンテンツ送信端末に返されるようにしてもよい。
【００１７】
端末グループを構成する端末は、リンクを構築する端末間で相互にネットワークに参加しているかを定期的に検出し、端末の異常離脱によるプレゼンス情報の更新を行なうようにしてもよい。
【００１８】
本発明においては、相対的に変更頻度が低い情報を分散ハッシュテーブルに保存し、相対的に変更頻度が高い情報を端末グループ内で当該情報の複製を保持することにより管理して、分散ハッシュテーブルの情報更新コストを低減させることが好ましい。
【発明の効果】
【００１９】
本発明は、（１）サーバを設けない環境において、ネットワークの全探索を用いずとも、Ｐ２Ｐネットワークに接続する端末のプレゼンス情報（参加・離脱）を高信頼で得ることができ、（２）ネットワークから離脱中に送信された自端末宛のコンテンツを検索コストを軽減して発見し、取得するが可能であり、（３）不要な漂流コンテンツを削除することを可能とするとともに、Ｐ２Ｐネットワークを構成する各端末のストレージコストを圧迫しないため、データサイズに依存せずコンテンツをＰ２Ｐネットワーク内を漂流させることが可能である、という効果がある。
【発明を実施するための最良の形態】
【００２０】
次に、本発明の好ましい実施の形態について、図面を参照して説明する。
【００２１】
図１は、本発明の実施の一形態のコンテンツ転送方法が適用されるネットワークと、そのネットワークに接続される端末とを示している。
【００２２】
インターネットなどの伝達ネットワーク３に対して、ユーザＡの端末１（利用者端末＃１）及びユーザＢの端末２（利用者端末＃２）が接続している。Ｐ２Ｐネットワークは、物理ネットワークとしての伝達ネットワーク３上に論理的に構成されている。端末１、２には、物理的装置として、中央演算装置（ＣＰＵ）、２次記憶装置１４、２４、ネットワークインタフェースが存在しており、これらの性能値は、端末種類によってそれぞれ異なっている。端末１、２は、論理的に、アプリケーション１１、２１と、Ｐ２Ｐネットワークを介してファイルを転送するファイル転送装置１２、２２と、Ｐ２Ｐネットワークに対するインタフェースを構成しＰ２Ｐネットワークと通信するＰ２Ｐ通信装置１３、２３を備えている。
【００２３】
アプリケーション１１、２１は、両方の端末１、２において同様のものであるので、以下では、端末１のアプリケーション１１について説明する。このアプリケーションは、一般にはソフトウエアであって端末に設けられるＣＰＵによって実行されるものであるが、以下に説明する各機能部の機能を実現するものであり、したがって、機能部ごとにハードウェアで構成することによってアプリケーション１１、２１と同等の機能を実現することができる。
【００２４】
アプリケーション１は、機能部として、大別すると、端末についての基本情報（端末の識別番号（ＩＤ）やネットワークに対する接続状態）を管理する端末基本情報管理部１１１と、端末の性能値を計測して端末性能情報を管理する端末性能情報処理部１１２と、分散ハッシュテーブル（ＤＨＴ）に関する処理を行うことにより端末情報の取得のための処理を行う端末情報取得処理部１１３と、コンテンツに対する各種の処理を実行するコンテンツ処理部１１４とからなっている。
【００２５】
端末基本情報管理部１１１は、端末の状態遷移（ネットワークへの参加、離脱）を管理する端末状態遷移管理部１１１１と、端末のＩＤに関する情報を管理する端末識別情報管理部１１１２とを備えている。端末性能情報処理部１１２は、端末を構成する物理装置の性能値に関する情報である端末性能情報を取得する端末性能情報管理部１１２１と、端末性能情報管理部１１２１から端末の性能値を取得するとともに他端末との間でこれらの性能値を交換して各端末の性能を判断する性能情報判断処理部１１２２とを備えている。端末情報取得処理部１１３は、分散ハッシュテーブル（ＤＨＴ）による検索処理を行うＤＨＴ情報検索処理部１１３１と端末グループに関する情報を管理する端末グループ内情報管理部１１３２とを備えている。コンテンツ処理部１１４は、コンテンツの分割数を定めてコンテンツの分割を行うコンテンツ分割処理部１１４１と、ネットワーク内を漂流しているコンテンツの検索を行うコンテンツ検索処理部１１４２と、漂流しているコンテンツを取得するコンテンツ取得処理部１１４３と、コンテンツの削除処理を行うコンテンツ削除処理部１１４４とを備えている。
【００２６】
次に、本発明に基づくコンテンツ転送方法について、（１）端末の初期設定および性能判定、（２）ＤＨＴ（分散ハッシュテーブル）端末及びＧＷ−ＲＰ端末の決定、（３）端末グループの構成、（４）端末の情報登録、（５）コンテンツの転送、（６）コンテンツの取得および削除、に分けて説明する。
【００２７】
図３はネットワーク構成を俯瞰して示すものであり、上述したように、伝達ネットワーク３上にＰ２Ｐネットワークが論理的に構成されている。さらに、ネットワークに含まれる端末は、端末グループ３２にまとめられている。端末グループごとに、ゲートウェイ機能や端末グループ内の端末のプレゼンス情報を管理する機能を有するＧＷ−ＲＰ端末１５３が設定されている。さらに、ネットワーク内には、分散ハッシュテーブル（ＤＨＴ）を構成し分散ハッシュテーブルの一部を格納する複数のＤＨＴ端末１５４が設定されている。これらの一群のＤＨＴ端末１５４によって、分散ハッシュテーブル３１が形成されている。Ｐ２Ｐネットワークであるので、ネットワーク内の各端末は、コンテンツ送信端末１５１として、コンテンツ受信端末１５２として、ＧＷ−ＲＰ端末１５３として、ＤＨＴ端末１５４として機能し得るものであるが、端末がＧＷ−ＲＰ端末１５３あるいはＤＨＴ端末１５４として機能するためには、その端末は、ある端末性能条件を満たす必要がある。また、各端末に関する情報としては、ＤＨＴ端末１５４によって管理されるものと、端末グループ内で管理されるものとがある。各端末は、サービス要求に応じて、これら２通りの情報を使い分けている。一例として、比較的変更頻度が低い静的な情報（端末の識別子や端末が所属するグループの識別子）については分散ハッシュテーブルで管理するようにし、端末のプレゼンス情報などの変更頻度が高い動的な情報については、端末グループ内で管理するようにする。
【００２８】
（１）端末の初期設定および性能判定方法：
上述したように端末には物理的装置として中央演算装置、２次記憶装置、ネットワークインタフェースが存在し、端末種類によりそれぞれ性能値が異なる。そこで端末性能情報管理部１１２１は、これらの物理的装置の性能値に関する情報を定期的に取得し、端末の物理性能値を示す端末性能情報を作成する。また、端末はＰ２Ｐネットワークに対して参加・離脱を行うが、端末性能情報管理部１１２１は、ある一定期間の間にその端末が時間的にどれだけの割合でＰ２Ｐネットワークに参加していたかを判断し、その割合を端末の生存時間(keep alive)性能値とする。その後、端末性能情報管理部１１２１は、物理性能値および生存時間性能値より、端末の性能値を取得する。性能値としては、図４に示すように、例えば、ＣＰＵの仕様（スペック）、端末におけるハードディスク装置（ＨＤＤ）の空容量、端末が接続するネットワーク（ＮＷ）の帯域などが挙げられる。そして、これらの各性能値に基づいて、他端末との評価のための性能値が決定される。図においては、評価のための性能値は、ＣＰＵの仕様、ＨＤＤの空き容量、ネットワーク帯域、及び生存時間についての関数ｆで表わされている。
【００２９】
一方、各端末の端末識別情報管理部１１１２は、端末の初期設定として、Ｐ２Ｐネットワーク内で端末を一意に識別するためのＩＤを作成する。このＩＤとしては、例えば、端末を所有する（あるいは利用する）ユーザのメールアドレスを利用することができる。端末識別情報管理部１１１２は、このメールアドレスに対してあるハッシュ関数を適用し、ハッシュキーを生成する。このハッシュキーは、端末を一意に識別する識別子として、後述するＤＨＴ情報検索処理部１１３１での検索に利用される。
【００３０】
（２）ＤＨＴ端末及びＧＷ−ＲＰ端末の決定：
上述のようにして各端末の初期設定が行われ、端末の性能値が取得されると、複数の端末の内、ある端末性能条件を満たすものがＤＨＴ端末１５４、ＧＷ−ＲＰ端末１５３として決定される。特に、分散ハッシュテーブルを構成するために分散ハッシュテーブルの一部を格納するＤＨＴ端末１５４には、ネットワーク中の極めて高い端末機能能力を有する端末が使用される。
【００３１】
図４に示すように、各端末の性能情報判断処理部１１２２は、端末性能情報管理部１１２１から端末の性能値を取得する。またＰ２Ｐ通信装置１３を用いてその性能値を同じ端末グループに属する端末の性能情報判断処理部に通知する。このようにして性能情報判断処理部１１２２が各端末の性能値を取得すると、性能情報判断処理部１１２２は、このようにして取得された他端末の性能値に比べて自端末の性能の方が上位である場合には、自端末を、所属する端末グループ内のＧＷ−ＲＰ端末１５３であると仮決定する。そして、仮に決定されたＧＷ−ＲＰ端末は、ＤＨＴ情報検索処理部１１３１に対して自端末のＩＤすなわち上述したハッシュキーで検索を行ない、自端末が所属する端末グループのテーブルに対して自アドレスを新規ＧＷ−ＲＰ端末として登録処理する。
【００３２】
次に、図５に示すように、ＧＷ−ＲＰ端末は、自端末の性能値がある性能しきい値を超えている場合には、自端末の性能値をＤＨＴ端末群に通知する。ＤＨＴ端末群は、通知された端末が現在構成されているＤＨＴ端末群のものよりより良い性能を有している場合には、そのＧＷ−ＲＰ端末を新たにＤＨＴ端末群の構成端末として動作させる。具体的には、ＤＨＴ端末１５４は、そのＤＨＴ情報検索処理部１１３１において、分散ハッシュテーブル３１に登録されているＧＷ−ＲＰ端末の中から特に性能値が高い端末を選出し、新規の分散ハッシュテーブルとして登録し旧分散ハッシュテーブルからのデータを引き継ぐ。そして、新たにＤＨＴ端末として振舞うことになったＧＷ−ＲＰ端末が所属する端末グループでは、そのＧＷ−ＲＰ端末がＤＨＴ端末として扱われることとなったことにより、新たに、ＧＷ−ＲＰ端末１５３を選出する。
【００３３】
（３）端末グループの構成：
本実施形態では、相互に関連性を有する端末によって端末グループが構成される。ここで関連性とは、例えば、地理的にあるいはネットワークのトポロジ的に相互に近いところにある、といったものであってもよい。あるいは、ある端末を起点にフラッディング等の検索パケットを送信したときに、十分許容できる時間範囲内で全端末からの応答を期待できるような関係にある、といったものでもよい。後者の場合には、端末グループは、フラッディング等の検索パケットを送信したときに十分許容できる時間範囲内で全端末からの応答を期待できるよう端末で構成されることになる。
【００３４】
ある端末が初めてＰ２Ｐネットワークに参加する時、その端末の端末識別情報管理部１１１２は上述のようにしてハッシュキーを生成する。その後、ＤＨＴ情報検索処理部１１３１に対してそのハッシュキーを用いて検索を行い、その端末が所属すべき端末グループ３２を決定し、同時に、その端末グループのＧＷ−ＲＰ端末１５３のアドレスを取得する。その後、その新たに参加した端末は、端末グループ内情報管理部１１３２によって、ＧＷ−ＲＰ端末１５３を起点として端末グループ内の端末のアドレスをフラッディングで取得し、取得した端末アドレスのいずれかとリンクを構築する。このようにして、その端末は、Ｐ２Ｐネットワークに参加する。
【００３５】
Ｐ２Ｐネットワークに参加している端末は、端末グループ内情報管理部１１３２によって、端末グループの各端末のアドレス情報を定期的に取得するとともに、再参加時に分散ハッシュテーブル３１の検索を行なって端末グループを探索する必要がないように、再参加時にはそのアドレス情報を利用して端末グループに参加する。またネットワークへの再参加に際して端末は、取得するアドレスの内、端末グループに再参加できる確度が高いアドレス、例えば固定アドレスを利用するようにし、また、接続時間の長さなどを基準に、接続に用いるアドレスの順番を設ける。これら手順でも端末グループに再参加できない場合は、再参加しようとする端末は、上述した分散ハッシュテーブル検索により端末グループのＧＷ−ＲＰ端末１５３を確認し、前述の手順を同様に行なう。
【００３６】
（４）端末の情報登録：
本実施形態では、端末が持つ情報の内、静的な情報、例えば端末を所有するユーザのハッシュキーやコンテンツをセキュアに転送するための公開鍵等の情報は、分散ハッシュテーブルに格納するものとして、ＤＨＴ情報検索処理部１１３１に対して自ハッシュキーによってそれらの検索を行ない、あるいは、分散ハッシュテーブル（検索テーブル）に対して情報の登録を行なう。また端末が持つ情報には多数の種類が存在するが、ユーザのハッシュキーや公開鍵以外の情報であっても、比較的更新頻度が小さい情報であれば、分散ハッシュテーブルに対して情報を登録することも認められる。
【００３７】
このような手順を採用することにより、分散ハッシュテーブル３１を構成するＤＨＴ端末のＤＨＴ情報検索処理部１１３１内での情報の更新頻度を減らすことが可能となり、更新負荷を最小限にとどめ、情報のバックアップおよび読み出し要求に応えることが可能になる。
【００３８】
端末が持つ情報のうち、動的な情報、例えば端末のＩＰアドレス、プレゼンス情報（参加・離脱）や、端末の端末状態遷移管理部１１１１で求められる性能値などの情報は、端末グループ３２内の複数の端末間で、それらの端末の端末状態遷移管理部１１１１においてその情報の複製を格納することにより、相互に持ち合うこととする。情報の複製を持ち合う端末間では、定期的にまたは情報更新時にビザンチン合意１５５を行なうことにより、端末が保持する情報の不一致を防ぐことができ、耐故障性が向上する。ビザンチン合意（ビザンチン将軍問題とも言う）によれば、端末間での情報の欠落や不一致、一部端末の故障があったとしても、それらの障害を有する端末の数が一定以下であれば、必ず、正しい情報を得ることができることが、数学的に証明されている。また端末が持つ情報には多数の種類が存在するが、端末のＩＰアドレス、プレゼンス情報（参加・離脱）や性能値以外の情報であっても、比較的更新頻度が高い情報であれば、端末グループ３２内の端末間で情報を管理することも認められる。
【００３９】
このような手順を採用することにより、特定の端末グループ３２内の端末間での更新処理によって比較的更新頻度の高い情報の更新をすることが可能となる。その結果、Ｐ２Ｐネットワーク全体における情報更新処理、特に分散ハッシュテーブルにおける情報更新処理の必要がなくなるとともに、情報の局所化が図られることによって、必要とする端末情報を取得できることの確度を高められる。
【００４０】
（５）コンテンツの転送：
次に、コンテンツの転送に説明する。コンテンツ送信者の端末（コンテンツ送信端末１５１）は、コンテンツ受信者の端末（コンテンツ受信端末１５２）に対してコンテンツを転送する時、図６に示すように、コンテンツ受信者（転送先ユーザ）の例えばメールアドレスからハッシュ関数を用いることよって、コンテンツ受信端末１５２のハッシュキーを生成する。そして、このハッシュキーを用いて、ＤＨＴ端末群のＤＨＴ端末１５４のＤＨＴ情報検索処理部１１３１に対して検索を行い（すなわち、分散ハッシュテーブル３１に対して検索を行い）、コンテンツ受信端末１５２が所属する端末グループ３２と、この端末グループ３２のＧＷ−ＲＰ端末１５３のアドレスとを取得する。その後、コンテンツ送信端末１５１は、ＧＷ−ＲＰ端末１５３に対し、コンテンツ受信者の端末に係わる情報の要求を行ない、ＧＷ−ＲＰ端末１５３は、自端末グループ内に対してブロードキャスト検索を行なってコンテンツ受信端末１５２に係わる情報を取得し、コンテンツ送信端末１５１に対して情報の返却を行なう。また関連情報を持つ端末が、直接、コンテンツ送信端末１５１に対して情報の返却を行なうことも許容される。
【００４１】
次に、コンテンツ送信端末１５１は、コンテンツ受信端末１５２のプレゼンス情報を、端末グループ３２内の複数の端末の端末状態遷移管理部１１１１から取得する。コンテンツ受信端末１５２がＰ２Ｐネットワークに参加しているのであれば、コンテンツ送信端末１５１は、コンテンツ４をコンテンツ受信端末１５２にエンド・ツー・エンドで転送する。一方、コンテンツ受信端末１５２がネットワークから離脱している場合には、図７に示すように、コンテンツ送信端末１５１は、コンテンツ４を、コンテンツ受信端末１５２が属する端末グループ３２のＧＷ−ＲＰ端末１５３に対して転送する。すると、ＧＷ−ＲＰ端末１５３のコンテンツ分割処理部１１４１は、端末グループ３２内の各端末の性能値に基づいて、コンテンツ４の分割数、およびコンテンツの分割によって作成されるコンテンツ断片４１の複製数を決定し、端末グループ３２内の各端末間で、コンテンツ断片４１を転送処理（漂流）４２させる。
【００４２】
（６）コンテンツの取得および削除：
離脱していたコンテンツ受信端末１５２が再びネットワークに接続したとき、コンテンツ受信端末１５２は、自端末宛のコンテンツであってネットワーク内を漂流しているコンテンツを取得しようとする。その際、図８に示すように、コンテンツ受信端末１５２は、端末グループ３２へ再参加時に、自端末のコンテンツ検索処理部１１４２を用いて、端末グループ３２内で自端末宛のコンテンツ４のブロードキャスト検索を行なう（矢印４３）。自端末宛のコンテンツ４が存在する場合は、コンテンツ取得処理部１１４３は、漂流しているコンテンツ断片４１を保持する複数端末からそれらのコンテンツ断片４１を並列取得し（符号４４）、コンテンツ４の復元を行なう。
【００４３】
このようにしてコンテンツ受信端末１５２がコンテンツを取得した時、コンテンツ受信端末１５２は、端末グループ３２内の各端末のコンテンツ削除処理部１１４４に対して、コンテンツ削除依頼４５を通知（漂流）する。各端末のコンテンツ削除処理部１１４４は、コンテンツ削除依頼４５に従い、それらの端末が保持しているコンテンツ断片４１を削除する。なおコンテンツ削除依頼４５が端末グループ３２内を一定期間にわたって漂流するようにすることにより、離脱状態の端末に対しても削除依頼通知４５を到達させることができるようになる。
【００４４】
ところで、コンテンツ受信端末１５２がコンテンツ取得を行わない場合にも、端末グループ３２内にコンテンツ断片４１が存在して漂流することになるが、この場合は、コンテンツの漂流が一定期間行なわれた時点で各端末のコンテンツ削除処理部１１４４は、自端末の端末性能情報管理部１１２１の性能値にしたがってコンテンツ断片４１の削除を行ない、取得の見込みが薄いコンテンツ断片４１が端末グループ３２内で増加することを防止する。
【図面の簡単な説明】
【００４５】
【図１】本発明の実施の一形態のコンテンツ転送方法が適用されるネットワークと、そのネットワークに接続される端末とを示す図である。
【図２】端末の構成の詳細を示すブロック図である。
【図３】ネットワーク構成を示す俯瞰図である。
【図４】ＧＷ−ＲＰ端末の決定手順を説明する図である。
【図５】ＤＨＴ端末（分散ハッシュテーブル端末）の決定方法と、ＤＨＴ端末に対する情報要求に対する応答処理とを示す図である。
【図６】ＧＷ−ＲＰ端末を介して、端末グループから転送先端末の情報を取得する処理を説明する図である。
【図７】コンテンツ転送の処理を説明する図である。
【図８】コンテンツの取得と削除の処理を説明する図である。
【符号の説明】
【００４６】
１，２    端末
３    伝達ネットワーク
１１，２１    アプリケーション
３１    ＤＨＴ端末のネットワーク
３２    端末グループ
１１１    端末基本情報管理部
１１２    端末性能情報処理部
１１３    端末情報取得処理部
１１４    コンテンツ処理部
１１１１    端末状態遷移管理部
１１１２    端末識別情報管理部
１１２１    端末性能情報管理部
１１２２    性能情報判断処理部
１１３１    ＤＨＴ情報検索処理部
１１３２    端末グループ内情報管理部
１１４１    コンテンツ分割処理部
１１４２    コンテンツ検索処理部
１１４３    コンテンツ取得処理部
１１４４    コンテンツ削除処理部
【図１】
2006244223.tif 000003
【図２】
2006244223.tif 000004
【図３】
2006244223.tif 000005
【図４】
2006244223.tif 000006
【図５】
2006244223.tif 000007
【図６】
2006244223.tif 000008
【図７】
2006244223.tif 000009
【図８】
2006244223.tif 000010