(57)【要約】【課題】ネットワークを介したデータ取得処理を、様々な伝送方式から最適構成を選択して実行する装置および方法を提供する。【解決手段】ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する構成において、データの需要度（人気度）に応じて、データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定して、決定伝送方式に従ったデータ伝送を行なう構成とした。本構成により、例えば、カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式等からのデータ伝送方式の選択、組み合わせが可能となり、効率的で確実なデータ伝送方式によるデータ伝送が実現される。【選択図】  図３１
2004180092.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する再生指示装置としての情報処理装置であり、
複数のデータ伝送方式から、返信データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定部と、
前記データ伝送率設定部において決定したデータ伝送率に基づいて、再生要求処理対象データの設定処理およびアドレス設定処理を行ない、設定した再生要求処理対象データ指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成するパケット生成部と、
前記パケット生成部において生成したパケットを送信するネットワークインタフェース部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記データ伝送率設定部は、
再生対象データの需要度に基づいてデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記データ伝送率設定部は、
カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式の少なくともいずれかの方式を含むデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記データ伝送率設定部は、
再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データを有し、前記対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記データ伝送率設定部は、
需要度：ｘと、各伝送方式ごとの帯域割合：ｙと、各データ伝送方式の識別値：ｎとして設定する関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用し、需要情報に基づいて決定する需要度：ｘの値に従って各データ伝送方式のデータ伝送率決定処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記データ伝送率設定部は、
再生対象データの需要度が予め設定された閾値より高い場合は、適用データ伝送方式をカルーセル伝送方式として設定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記情報処理装置は、さらに、
デインタリーブ処理およびＦＥＣ復号処理を実行するデータ復元処理部を有し、
前記データ復元処理部は、前記データ再生処理要求を受信したノードから受信するパケットから抽出される再生対象データについてのデインタリーブ処理およびＦＥＣ復号処理を実行し、データ復元を行なう構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記情報処理装置は、さらに、
前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な判定用データを設定するルール判断条件設定部を有し、
前記パケット生成部は、
前記ルール判断条件設定部において設定した判定用データを格納するとともに、再生処理対象データの指示データを格納したデータ再生処理要求パケットを生成する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項９】
前記ルール判断条件設定部は、
前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な再生ルール判断条件記述としての確率値：βを設定する処理を実行する構成であり、
前記パケット生成部は、
前記再生ルール判断条件記述としての確率値：βを格納したパケットを生成する処理を実行する構成であることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記ノードに格納された再生対象データは、データをｐ個のブロック数に分割し、ｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換した符号化率ｑ／ｐの符号化処理データであり、
前記ルール判断条件設定部は、
前記データ再生処理要求を受信するノードにおいて返信確率：βでデータを返信させる確率値：βを再生ルール判断条件記述として設定する構成であり、前記ネットワークに接続された記録指示装置から指定される記録確率：α、および前記符号化ブロック数：ｑと、ネットワーク接続ノード数：ｎによって算出可能な返信ブロック数：ｑ×α×ｎ×βと、前記ブロック数：ｐとの関係が、
返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐ
となるように前記確率値：βを設定する構成であることを特徴とする請求項８に記載の情報処理装置。
【請求項１１】
ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置としての情報処理装置であり、
ネットワーク接続ノードとのデータ送受信を実行する通信部と、
前記通信部を介してネットワーク接続ノードから受信する需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成するとともに、該生成需要度情報に基づいて前記需要度情報取得要求に対応する応答情報を生成して前記通信部を介して送信する制御部と、
を有することを特徴とする情報処理装置。
【請求項１２】
前記制御部は、
前記カウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行する構成を有することを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記制御部は、
前記カルーセル伝送処理要求に、カルーセル伝送の実行対象データの識別子、および受信した需要度情報取得要求の送信元ノードアドレス情報に基づいて設定したカルーセル伝送の宛先アドレス情報を格納する処理を実行する構成であることを特徴とする請求項１２に記載の情報処理装置。
【請求項１４】
ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する再生指示装置における情報処理方法であり、
複数のデータ伝送方式から、返信データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定ステップと、
前記データ伝送率設定ステップにおいて決定したデータ伝送率に基づいて、再生要求処理対象データの設定処理およびアドレス設定処理を行ない、設定した再生要求処理対象データ指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成するパケット生成ステップと、
前記パケット生成ステップにおいて生成したパケットを送信するパケット送信ステップと、
を有することを特徴とする情報処理方法。
【請求項１５】
前記データ伝送率設定ステップは、
再生対象データの需要度に基づいてデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する処理を含むことを特徴とする請求項１４に記載の情報処理方法。
【請求項１６】
前記データ伝送率設定ステップは、
カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式の少なくともいずれかの方式を含むデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する処理を含むことを特徴とする請求項１４に記載の情報処理方法。
【請求項１７】
前記データ伝送率設定ステップは、
再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行することを特徴とする請求項１４に記載の情報処理方法。
【請求項１８】
前記データ伝送率設定ステップは、
需要度：ｘと、各伝送方式ごとの帯域割合：ｙと、各データ伝送方式の識別値：ｎとして設定する関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用し、需要情報に基づいて決定する需要度：ｘの値に従って各データ伝送方式のデータ伝送率決定処理を実行することを特徴とする請求項１４に記載の情報処理方法。
【請求項１９】
前記データ伝送率設定ステップは、
再生対象データの需要度が予め設定された閾値より高い場合は、適用データ伝送方式をカルーセル伝送方式として設定する処理を実行することを特徴とする請求項１４に記載の情報処理方法。
【請求項２０】
前記情報処理方法は、さらに、
デインタリーブ処理およびＦＥＣ復号処理を実行するデータ復元処理ステップを有し、
前記データ復元処理ステップは、前記データ再生処理要求を受信したノードから受信するパケットから抽出される再生対象データについてのデインタリーブ処理およびＦＥＣ復号処理を実行し、データ復元を行なうことを特徴とする請求項１４に記載の情報処理方法。
【請求項２１】
前記情報処理方法は、さらに、
前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な判定用データを設定するルール判断条件設定ステップを有し、
前記パケット生成ステップは、
前記ルール判断条件設定ステップにおいて設定した判定用データを格納するとともに、再生処理対象データの指示データを格納したデータ再生処理要求パケットを生成することを特徴とする請求項１４に記載の情報処理方法。
【請求項２２】
前記ルール判断条件設定ステップは、
前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な再生ルール判断条件記述としての確率値：βを設定する処理を実行する構成であり、
前記パケット生成ステップは、
前記再生ルール判断条件記述としての確率値：βを格納したパケットを生成する処理を実行する構成であることを特徴とする請求項２１に記載の情報処理方法。
【請求項２３】
前記ノードに格納された再生対象データは、データをｐ個のブロック数に分割し、ｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換した符号化率ｑ／ｐの符号化処理データであり、
前記ルール判断条件設定ステップは、
前記データ再生処理要求を受信するノードにおいて返信確率：βでデータを返信させる確率値：βを再生ルール判断条件記述として設定し、前記ネットワークに接続された記録指示装置から指定される記録確率：α、および前記符号化ブロック数：ｑと、ネットワーク接続ノード数：ｎによって算出可能な返信ブロック数：ｑ×α×ｎ×βと、前記ブロック数：ｐとの関係が、
返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐ
となるように前記確率値：βを設定することを特徴とする請求項２１に記載の情報処理方法。
【請求項２４】
ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置における情報処理方法であり、
通信部を介してネットワーク接続ノードから需要度情報取得要求を受信するステップと、
前記需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成するステップと、
前記カウント情報に基づく需要度情報を応答情報として格納したパケットを生成し、前記通信部を介して送信するステップと、
を有することを特徴とする情報処理方法。
【請求項２５】
前記情報処理方法は、さらに、
前記カウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行するステップを有することを特徴とする請求項２４に記載の情報処理方法。
【請求項２６】
前記情報処理方法は、さらに、
前記カルーセル伝送処理要求に、カルーセル伝送の実行対象データの識別子、および受信した需要度情報取得要求の送信元ノードアドレス情報に基づいて設定したカルーセル伝送の宛先アドレス情報を格納する処理を実行するステップを含むことを特徴とする請求項２５に記載の情報処理方法。
【請求項２７】
ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行するコンピュータ・プログラムであり、
複数のデータ伝送方式から、返信データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定ステップと、
前記データ伝送率設定ステップにおいて決定したデータ伝送率に基づいて、再生要求処理対象データの設定処理およびアドレス設定処理を行ない、設定した再生要求処理対象データ指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成するパケット生成ステップと、
前記パケット生成ステップにおいて生成したパケットを送信するパケット送信ステップと、
を有することを特徴とするコンピュータ・プログラム。
【請求項２８】
ネットワークを介した伝送データの需要度情報を提供する処理を実行するコンピュータ・プログラムであり、
通信部を介してネットワーク接続ノードから需要度情報取得要求を受信するステップと、
前記需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成するステップと、
前記カウント情報に基づく需要度情報を応答情報として格納したパケットを生成し、前記通信部を介して送信するステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置および情報処理方法、並びにコンピュータ・プログラムに関する。さらに詳細には、ネットワーク等で接続された複数のノード（情報処理装置）に分散格納されたデータ（コンテンツ）、あるいは特定のノード、例えばサーバ等に格納されたデータ等をネットワークを介して送受信する構成において、異なる複数の伝送方式を状況に応じて組み合わせて実行することで、伝送効率を高めたデータ再生を可能とした情報処理装置および情報処理方法、並びにコンピュータ・プログラムに関する。
【０００２】
【従来の技術】
近年、インターネット等の通信ネットワークには、様々な情報処理装置、例えばパーソナルコンピュータ（ＰＣ）、大型コンピュータ、サーバ、その他の通信機器が接続され、各ネットワーク接続機器間の映像、画像データ、音声データ、あるいは各種プログラム等のコンテンツの転送、あるいは様々な処理データの転送が行なわれている。ネットワークを通じてやりとりされるコンテンツの種類は、テキスト・静止画などから、動画・音声などのマルチメディアコンテンツへと移行が進んでおり、コンテンツの大容量化が著しく進んでいる。
【０００３】
あるデータを、ネットワークを介して互いに接続された多数の情報処理端末に分散して記録する大規模ストレージシステムが注目されている。このような分散型ストレージシステムにおいて、データを記録管理するサーバは、マルチキャスト等によって情報処理端末やその他のサーバにデータを送信して、データを情報処理端末や他のサーバに備えられたローカルの記録媒体に記録している。
【０００４】
この場合、オンデマンドでデータを取り出せるようにするためには、記録媒体に多量のデータを記録しなければならない。例えば、１本当たり約２ギガバイトのデータ容量になる映画の場合、このような映像データを５００本分記録するとすれば、１テラバイト以上の容量が必要となる。
【０００５】
また、ストリーミングによってデータを提供する場合の例として、サーバがデータを要求しているクライアントに対してユニキャストでデータを提供する際には、エラーのない伝送を行うために、例えば、ＴＣＰ／ＩＰの到着済み信号（ＡＣＫ）のようにデータの再送を要求するプロトコルが用いられる。
【０００６】
ところが、この手法は、サーバ側に多大な負担がかかるため、高性能なサーバ１台を用いたとしても、現状では、数百台のクライアントにしかサービスを提供することができない。また、ＵＤＰ／ＩＰのようなＡＣＫを用いないプロトコルを使用したとしても、サービス可能なクライアントの数は、数千台程度である。このように、ストリーミングによってデータを提供しようとすると、サーバ側のコストが増大し、クライアントの数が制限されてしまう。
【０００７】
そこで近年では、マルチキャスト技術にＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ）を用いて、データの再送を要求することなく複数のクライアントにデータを送信する方式が提案されている。これは、サーバがマルチキャストでストリームを繰り返し送信し、クライアントは、このストリームから必要な信号を拾い上げ、拾い上げたデータを復号して再生する方式である。
【０００８】
この方式を利用して、１本２ギガバイトになる映画の映像データ５００本分を１０分以内に送信する場合には、約１４．７ギガビット／秒の伝送帯域が必要である。さらに、同量の映像データを１分以内に送信する場合には、約１４７ギガビット／秒の伝送帯域が必要になる。これは、理論値であるが、このような容量及び伝送方式に耐えうるサーバは、非常にコストがかかり、実現したとしても実用的でない。また、複数のホストにデータを分散して記録するという方式もあるが、このシステムを実現しようとすると、巨大なデータを複数のサーバで管理しなければならないため、データ管理やデータ通信のための処理が増大してしまう。
【０００９】
また、近年、情報処理装置間の直接通信処理としてのピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワーク技術が開発され、利用されている。Ｐ２Ｐネットワークとは、集中的に処理を行なうサーバを設置するのではなく、各ネットワーククライアントが持つ資源としての情報処理装置、例えばＰＣ、携帯端末、ＰＤＡ、携帯電話、さらに、通信処理可能な機能を持つあるいは通信機器に接続された記憶手段としてのディスク装置、あるいはプリンタ等、様々な機器をお互いにネットワークを介して通信し、各ネットワーククライアントが持つ資源の共有を可能とした構成である。
【００１０】
ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワーク技術は、米ＩＢＭ社が提唱するＡＰＰＮ（Ａｄｖａｎｃｅｄ  Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ  Ｎｅｔｗｏｒｋｉｎｇ）の中で用いられたのが最初とされている。このネットワークを使うことで、従来のようなクライアント−サーバ型ネットワークにおいてコンテンツ配信を行う場合に必要となる巨大な配信サーバを設置する必要がなくなり、各ネットワーククライアントが持つ資源に分散配置されたコンテンツを多くのユーザが利用可能となり、大容量のコンテンツの分散格納および、配信が可能となる。
【００１１】
ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワークには、「ピュア（Ｐｕｒｅ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワーク」と「ハイブリッド（Ｈｙｂｒｉｄ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワーク」の２つのネットワーク形態がある。
【００１２】
ピュア（Ｐｕｒｅ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワークとは、システムの各構成要素（ピア：Ｐｅｅｒ）が等しい機能・役割を持ち、対等なコミュニケーションを行うネットワーク形態である。それを用いた代表的なサービスとしてはグヌーテラ（Ｇｎｕｔｅｒｌｌａ）が挙げられる。ハイブリッド（Ｈｙｂｒｉｄ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワークとは、ピュア（Ｐｕｒｅ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワークに加えて、システムの各構成要素（ピア：Ｐｅｅｒ）間の相互作用を円滑にするための制御用サーバを用いるネットワーク形態のことである。それを用いた代表的なサービスとしてはナップスター（Ｎａｐｓｔｅｒ）が挙げられる。
【００１３】
ナップスター（Ｎａｐｓｔｅｒ）に代表されるハイブリッドピア・ツー・ピア（Ｈｙｂｒｉｄ  Ｐ２Ｐ）方式では、ネットワーク接続された端末がコンテンツを取得しようとする場合には、まず中央のサーバでコンテンツリソースを検索し、端末は、検索情報に基づいて、そのリソースを保有しているノード（他のネットワーク接続端末）にアクセスし、コンテンツの取得を行なう。この方式では、中央サーバにすべてのノードのリソース情報を登録する必要があり、さらに検索が中央サーバに集中するという欠点がある。
【００１４】
そこで、リソース検索等の処理を複数の装置に分散させて実行する方式が提案された。この処理分散方式では、処理実行の判断装置をツリー状の関係に配置するなどの方法により管理し、管理情報に基づいてリソース検索等の処理を複数の装置に分散させて実行するものである。しかし、この方式でも、処理を実行する装置が数百万など多数になると、ツリー構成を管理する情報量の増大、複数の処理装置に実行命令を伝達させるための処理命令数の増大、あるいはツリーの一貫性の保障などの問題が発生する。また、複数の処理実行判断装置による判断処理が必要となるため、処理遅延が起こる問題がある。
【００１５】
これらの弱点を補うために、すべての命令をすべてのネットワーク接続ノードに送り、各ノードにおいて受信した処理命令を自分が実行するかどうかを判断をさせる方式がある。これが、グヌーテラ（Ｇｎｕｔｅｌｌａ）に代表されるピュア・ピア・ツー・ピア（Ｐｕｒｅ  Ｐ２Ｐ）方式である。この方式は、ハイブリッドピア・ツー・ピア（Ｈｙｂｒｉｄ  Ｐ２Ｐ）方式と違って、リソース検索処理を実行する中央サーバを持たない構成であり、各ノード間で直接、検索要求を送受信してリソースの件策を実行して、ヒットした端末にコンテンツ送信等の処理要求を依頼する構成である。
【００１６】
このグヌーテラ（Ｇｎｕｔｅｌｌａ）に代表されるピュア・ピア・ツー・ピア（Ｐｕｒｅ  Ｐ２Ｐ）方式においても、検索命令の転送には、ツリー構造やネットワーク構造などのルーティングを使うことによって、すべてのまたはできるだけ多くのノードに対して検索を行わせる構成が有効である。しかし、この方式においても、自ノードで実行しない処理命令の命令転送処理を実行することになり、伝送経路に負担がかかる欠点がある。
【００１７】
例えばすべてのネットワーク接続ノードを検索して、処理要求を全ノードに到達させるためには、複雑なルーティング管理が必要となる。一方、ベストエフォート方式のノード検索を実行すると、すべてのノードに命令を伝達することは保証されず、必要なリソースを見つけ出せない場合がある。また、ノード検索のための通信が多発するとネットワークにおける輻輳が発生するという問題もある。
【００１８】
一方、データの伝送方式にはいくつかの方式がある。まず、第１の方式として、単一のノードからすべてのデータを引き出す方式がある。この方式では、確実にデータが引き出されるがデータの有無を判定するための事前検索が必要となる。コンテンツを所有するノードに負荷が集中するという問題がある。また、接続ノードがダウンした場合、データの再生が継続できないという問題がある。この単一ノードを利用したデータダウンロードは、ごく少数の再生指示装置、すなわちノードからデータを受信して再生する装置がデータを利用する場合有効である。本方式では、パケットの重複などの伝送ロスは少ない。
【００１９】
次に、第２の方式として、単一のノードからデータをカルーセル伝送する方式がある。カルーセル伝送とは、データを繰り返し送信する方式で回転木馬からその名前を取っている。この方式で、マルチキャストを用いると、とても大きな数の再生指示装置にデータを伝送することができるが、任意のタイミングでデータを取り出すことができないので、データの遅れなどの解消のためには、時間当たりの繰り返し回数を増やすことで待ち時間を減らす方法しかなかった。このカルーセル方式は、同時再生者数が多い場合には効率がよい方式であるが、リアルタイム性と任意のタイミングで再生という両方を満たすことはできない。本方式においても、パケットの重複などの伝送ロスは少ない。
【００２０】
また、第３の方式として、チェーニングと呼ばれる手法がある。チェーニングとは、別のノードからあるデータを直前に受け取ったノードがある場合、もとのノードにデータを要求するのではなく、直前にデータを受け取ったノードに接続して転送してもらう手法である。チェーニングでは、確実にデータがあるかどうかはわからないが、少数の再生指示装置が特定のデータを利用する場合は、ネットワーク負荷も過大とならず効率的なデータ伝送が実現される。しかし、多数の再生装置が接続する場合は、カルーセル伝送方式のほうが効率がよい。
【００２１】
さらに、第４の方式としてローカルにキャッシュを多数、確保する方式が考えられる。すなわち再生を実行する装置において、データをすべてキャッシュする方式である。しかし、このようなキャッシュ方式を用いる場合は、ローカルの記憶装置の容量がかなり大きくないと実用にならない。再生時のネットワーク負荷は事実上０であるが、配信時のネットワーク負荷はすべての方式のなかでもっとも大きくなるという問題がある。
【００２２】
【発明が解決しようとする課題】
上述したように、データ伝送方式には、様々な方式があるが、いずれも一長一短があり、状況に応じて適切な方式が異なるということが言える。本発明は、コンテンツデータの再生等、データの取得によるデータ処理を実行する構成において、異なる複数の伝送方式を状況に応じて組み合わせて実行することで、伝送効率を高めたデータ取得、データ再生を可能とした情報処理装置および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００２３】
また、本発明は、複数の端末（ノード）の接続されたネットワーク構成において、例えばコンテンツ再生処理等のデータ処理をネットワーク接続された複数の端末（ノード）に設置された記憶手段を利用して実行する場合に、事前のノード検索等の処理を行なうことなく、所定のルールに基づいてコンテンツ再生要求を送信し、これらの要求を受信した端末（ノード）において、自律的に命令を実行するかしないかを判断して命令の選択的な実行を行なう構成とすることで、多数のパケット転送によるネットワークトラフィックの増大を抑えて効率的にデータ処理を実行することを可能とした情報処理装置および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００２４】
【課題を解決するための手段】
本発明の第１の側面は、
ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する再生指示装置としての情報処理装置であり、
複数のデータ伝送方式から、返信データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定部と、
前記データ伝送率設定部において決定したデータ伝送率に基づいて、再生要求処理対象データの設定処理およびアドレス設定処理を行ない、設定した再生要求処理対象データ指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成するパケット生成部と、
前記パケット生成部において生成したパケットを送信するネットワークインタフェース部と、
を有することを特徴とする情報処理装置にある。
【００２５】
さらに、本発明の情報処理装置の一実施態様において、前記データ伝送率設定部は、再生対象データの需要度に基づいてデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する構成であることを特徴とする。
【００２６】
さらに、本発明の情報処理装置の一実施態様において、前記データ伝送率設定部は、カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式の少なくともいずれかの方式を含むデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する構成であることを特徴とする。
【００２７】
さらに、本発明の情報処理装置の一実施態様において、前記データ伝送率設定部は、再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データを有し、前記対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行する構成であることを特徴とする。
【００２８】
さらに、本発明の情報処理装置の一実施態様において、前記データ伝送率設定部は、需要度：ｘと、各伝送方式ごとの帯域割合：ｙと、各データ伝送方式の識別値：ｎとして設定する関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用し、需要情報に基づいて決定する需要度：ｘの値に従って各データ伝送方式のデータ伝送率決定処理を実行する構成であることを特徴とする。
【００２９】
さらに、本発明の情報処理装置の一実施態様において、前記データ伝送率設定部は、再生対象データの需要度が予め設定された閾値より高い場合は、適用データ伝送方式をカルーセル伝送方式として設定する処理を実行する構成であることを特徴とする。
【００３０】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、さらに、デインタリーブ処理およびＦＥＣ復号処理を実行するデータ復元処理部を有し、前記データ復元処理部は、前記データ再生処理要求を受信したノードから受信するパケットから抽出される再生対象データについてのデインタリーブ処理およびＦＥＣ復号処理を実行し、データ復元を行なう構成であることを特徴とする。
【００３１】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、さらに、前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な判定用データを設定するルール判断条件設定部を有し、前記パケット生成部は、前記ルール判断条件設定部において設定した判定用データを格納するとともに、再生処理対象データの指示データを格納したデータ再生処理要求パケットを生成する構成であることを特徴とする。
【００３２】
さらに、本発明の情報処理装置の一実施態様において、前記ルール判断条件設定部は、前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な再生ルール判断条件記述としての確率値：βを設定する処理を実行する構成であり、前記パケット生成部は、前記再生ルール判断条件記述としての確率値：βを格納したパケットを生成する処理を実行する構成であることを特徴とする。
【００３３】
さらに、本発明の情報処理装置の一実施態様において、前記ノードに格納された再生対象データは、データをｐ個のブロック数に分割し、ｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換した符号化率ｑ／ｐの符号化処理データであり、前記ルール判断条件設定部は、前記データ再生処理要求を受信するノードにおいて返信確率：βでデータを返信させる確率値：βを再生ルール判断条件記述として設定する構成であり、前記ネットワークに接続された記録指示装置から指定される記録確率：α、および前記符号化ブロック数：ｑと、ネットワーク接続ノード数：ｎによって算出可能な返信ブロック数：ｑ×α×ｎ×βと、前記ブロック数：ｐとの関係が、返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐとなるように前記確率値：βを設定する構成であることを特徴とする。
【００３４】
さらに、本発明の第２の側面は、
ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置としての情報処理装置であり、
ネットワーク接続ノードとのデータ送受信を実行する通信部と、
前記通信部を介してネットワーク接続ノードから受信する需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成するとともに、該生成需要度情報に基づいて前記需要度情報取得要求に対応する応答情報を生成して前記通信部を介して送信する制御部と、
を有することを特徴とする情報処理装置にある。
【００３５】
さらに、本発明の情報処理装置の一実施態様において、前記制御部は、前記カウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行する構成を有することを特徴とする。
【００３６】
さらに、本発明の情報処理装置の一実施態様において、前記制御部は、前記カルーセル伝送処理要求に、カルーセル伝送の実行対象データの識別子、および受信した需要度情報取得要求の送信元ノードアドレス情報に基づいて設定したカルーセル伝送の宛先アドレス情報を格納する処理を実行する構成であることを特徴とする。
【００３７】
さらに、本発明の第３の側面は、
ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する再生指示装置における情報処理方法であり、
複数のデータ伝送方式から、返信データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定ステップと、
前記データ伝送率設定ステップにおいて決定したデータ伝送率に基づいて、再生要求処理対象データの設定処理およびアドレス設定処理を行ない、設定した再生要求処理対象データ指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成するパケット生成ステップと、
前記パケット生成ステップにおいて生成したパケットを送信するパケット送信ステップと、
を有することを特徴とする情報処理方法にある。
【００３８】
さらに、本発明の情報処理方法の一実施態様において、前記データ伝送率設定ステップは、再生対象データの需要度に基づいてデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する処理を含むことを特徴とする。
【００３９】
さらに、本発明の情報処理方法の一実施態様において、前記データ伝送率設定ステップは、カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式の少なくともいずれかの方式を含むデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する処理を含むことを特徴とする。
【００４０】
さらに、本発明の情報処理方法の一実施態様において、前記データ伝送率設定ステップは、再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行することを特徴とする。
【００４１】
さらに、本発明の情報処理方法の一実施態様において、前記データ伝送率設定ステップは、需要度：ｘと、各伝送方式ごとの帯域割合：ｙと、各データ伝送方式の識別値：ｎとして設定する関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用し、需要情報に基づいて決定する需要度：ｘの値に従って各データ伝送方式のデータ伝送率決定処理を実行することを特徴とする。
【００４２】
さらに、本発明の情報処理方法の一実施態様において、前記データ伝送率設定ステップは、再生対象データの需要度が予め設定された閾値より高い場合は、適用データ伝送方式をカルーセル伝送方式として設定する処理を実行することを特徴とする。
【００４３】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、デインタリーブ処理およびＦＥＣ復号処理を実行するデータ復元処理ステップを有し、前記データ復元処理ステップは、前記データ再生処理要求を受信したノードから受信するパケットから抽出される再生対象データについてのデインタリーブ処理およびＦＥＣ復号処理を実行し、データ復元を行なうことを特徴とする。
【００４４】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な判定用データを設定するルール判断条件設定ステップを有し、前記パケット生成ステップは、前記ルール判断条件設定ステップにおいて設定した判定用データを格納するとともに、再生処理対象データの指示データを格納したデータ再生処理要求パケットを生成することを特徴とする。
【００４５】
さらに、本発明の情報処理方法の一実施態様において、前記ルール判断条件設定ステップは、前記データ再生処理要求を受信するノードにおいて、処理要求に従った処理を実行するか否かの判定処理に適用可能な再生ルール判断条件記述としての確率値：βを設定する処理を実行する構成であり、前記パケット生成ステップは、前記再生ルール判断条件記述としての確率値：βを格納したパケットを生成する処理を実行する構成であることを特徴とする。
【００４６】
さらに、本発明の情報処理方法の一実施態様において、前記ノードに格納された再生対象データは、データをｐ個のブロック数に分割し、ｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換した符号化率ｑ／ｐの符号化処理データであり、前記ルール判断条件設定ステップは、前記データ再生処理要求を受信するノードにおいて返信確率：βでデータを返信させる確率値：βを再生ルール判断条件記述として設定し、前記ネットワークに接続された記録指示装置から指定される記録確率：α、および前記符号化ブロック数：ｑと、ネットワーク接続ノード数：ｎによって算出可能な返信ブロック数：ｑ×α×ｎ×βと、前記ブロック数：ｐとの関係が、返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐとなるように前記確率値：βを設定することを特徴とする。
【００４７】
さらに、本発明の第４の側面は、
ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置における情報処理方法であり、
通信部を介してネットワーク接続ノードから需要度情報取得要求を受信するステップと、
前記需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成するステップと、
前記カウント情報に基づく需要度情報を応答情報として格納したパケットを生成し、前記通信部を介して送信するステップと、
を有することを特徴とする情報処理方法にある。
【００４８】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記カウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行するステップを有することを特徴とする。
【００４９】
さらに、本発明の情報処理方法の一実施態様において、前記情報処理方法は、さらに、前記カルーセル伝送処理要求に、カルーセル伝送の実行対象データの識別子、および受信した需要度情報取得要求の送信元ノードアドレス情報に基づいて設定したカルーセル伝送の宛先アドレス情報を格納する処理を実行するステップを含むことを特徴とする。
【００５０】
さらに、本発明の第５の側面は、
ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行するコンピュータ・プログラムであり、
複数のデータ伝送方式から、返信データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定ステップと、
前記データ伝送率設定ステップにおいて決定したデータ伝送率に基づいて、再生要求処理対象データの設定処理およびアドレス設定処理を行ない、設定した再生要求処理対象データ指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成するパケット生成ステップと、
前記パケット生成ステップにおいて生成したパケットを送信するパケット送信ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００５１】
さらに、本発明の第６の側面は、
ネットワークを介した伝送データの需要度情報を提供する処理を実行するコンピュータ・プログラムであり、
通信部を介してネットワーク接続ノードから需要度情報取得要求を受信するステップと、
前記需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成するステップと、
前記カウント情報に基づく需要度情報を応答情報として格納したパケットを生成し、前記通信部を介して送信するステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００５２】
【作用】
本発明の構成によれば、ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する構成において、データの需要度（人気度）に応じて、データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定して、決定伝送方式に従ったデータ伝送を行なう構成としたので、例えば、カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式等からのデータ伝送方式の選択、組み合わせが可能となり、効率的で確実なデータ伝送方式によるデータ伝送が実現される。
【００５３】
本発明の構成によれば、再生処理を実行する際製指示装置は、再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データを有し、対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行するか、あるいは、需要度：ｘと、各伝送方式ごとの帯域割合：ｙと、各データ伝送方式の識別値：ｎとして設定する関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用し、需要情報に基づいて決定する需要度：ｘの値に従って各データ伝送方式のデータ伝送率決定処理を実行する構成としたので、需要度情報に基づく伝送方式の決定処理を効率的に実行することが可能となる。
【００５４】
さらに、本発明の構成によれば、再生対象データの需要度が予め設定された閾値より高い場合は、適用データ伝送方式をカルーセル伝送方式として設定する処理を実行する構成としたので、多数のノードからのデータ取得要求に対応したデータ転送に適したカルーセル伝送を自動的に選択実行する処理が可能となる。
【００５５】
さらに、本発明の構成によれば、ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置を構成し、ネットワーク接続ノードから受信する需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成し提供する構成としたので、リアルタイムでの需要度情報が把握可能であり、最新の需要度情報を提供可能となる。
【００５６】
さらに、本発明の構成によれば、ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置の計測するカウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行する構成としたので、需要度の増加に即座に対応した最適なデータ伝送制御が実現される。
【００５７】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００５８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【００５９】
【発明の実施の形態】
以下、本発明の情報処理装置および情報処理方法、並びにコンピュータ・プログラムについて、図面を参照して、詳細に説明する。説明は、以下の項目順に行なう。
１．ネットワーク構成
２．ノードとしての情報処理装置構成
３．記録指示装置構成およびデータ記録処理
４．再生指示装置構成およびデータ再生処理
５．データ記録再生処理シーケンス
６．伝送方式の最適組合わせに基づくデータ伝送処理
７．情報処理装置のハード構成
【００６０】
［１．ネットワーク構成］
まず、本発明の情報処理装置を適用したデータ処理を実現するネットワーク構成例について図１を参照して説明する。図１は、ネットワークを構成する端末にデータを分散して記録する分散型ストレージシステムの具体例を示す図である。分散型ストレージシステムは、ネットワーク１００の通信網に接続されたｎ個のノード１１１、１１２、…、１１５と、各ノードへのデータの記録を指示制御する記録指示装置１０１と、各ノードに記録されたデータを読み出す再生指示装置１０２とを有する。
【００６１】
なお、本実施例では、記録指示装置１０１と、各ノード１１１〜１１５と、再生指示装置１０２とを別の装置として説明するが、これら両装置の機能を有する記録再生指示装置のような装置があってもよい。また、ノードの各々が記録指示装置や再生指示装置としての機能を装備することもできる。この場合、ネットワークを構成する各装置を区別なく使用できる。なお、記録指示装置、再生指示装置、ノードを総称して情報処理装置と呼ぶ。
【００６２】
すなわち、図２に示すような、ネットワーク構成を想定可能である。情報処理装置は、他の情報処理装置との通信可能な構成を有し通信ネットワークにより接続される。ネットワークは、基本的には、ルックアップサーバ（Ｌｏｏｋ−ｕｐＳｅｒｖｅｒ）としての制御用サーバを持たないピュア（Ｐｕｒｅ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワークである。
【００６３】
図２に示すように、各情報処理装置１２１〜１２６がネットワーク１１０を介して相互に通信を実行し、コンテンツ記録処理やコンテンツ再生処理等の各種のデータ処理を実行する。なお、本発明は、制御用サーバが存在するハイブリッド（Ｈｙｂｒｉｄ）ピア・ツー・ピア（Ｐ２Ｐ：Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ）ネットワークにおいても適用可能であり、特にネットワーク構成を限定して適用可能なものではなく、情報処理装置相互において通信が可能な構成であればよい。
【００６４】
図２に示す情報処理装置１２１〜１２６のいずれかがコンテンツの記録要求、あるいはコンテンツの再生要求をネットワーク接続された情報処理装置に出力する。コンテンツの記録要求を行なう場合は、例えば所定のルールに基づくマルチキャストアドレスを設定した記録要求処理要求パケットを生成し、パケットにコンテンツをＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ）をかけるとともにインターリーブ処理した分割データとして格納し、他の情報処理装置に対して送信する。これらのパケットを受信した情報処理装置は、データ記録処理を実行するか否かを自律的に判定して、判定に基づくコンテンツ記録処理を行なう。
【００６５】
また、コンテンツの再生処理を行なう場合は、情報処理装置１２１〜１２６のいずれかがコンテンツ再生要求を他の情報処理装置、例えば所定のルールに基づくマルチキャストアドレスを設定した要求パケットを生成して送信する。これらのパケットを受信した情報処理装置は、データ抽出処理を実行するか否かを自律的に判定して、判定に基づくコンテンツ抽出処理を行ない、要求に従って抽出したデータ、例えばＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ）をかけるとともにインターリーブ処理した分割データをパケットに格納して再生要求情報処理装置に対して送信する。
【００６６】
なお、図１、図２においては、ネットワークを構成するルータなどの伝送制御装置を省略してあるが、実際には、ノードを通過するパケットの経路を選択するルータなどの伝送制御装置が設けられている。伝送制御装置は、ノードとは別に設けられていてもよいし、ノードが伝送制御装置としての機能を有していてもよい。
【００６７】
［２．ノードとしての情報処理装置構成］
次に、ノードとして機能する情報処理装置の構成について説明する。図３は、ノードとして機能する情報処理装置の構成を示す図である。
【００６８】
図３に示すように情報処理装置（ノード）２００は、ルール判断処理部２０１、データ処理部２０２、パケット処理部２０３、データ送受信部２０４を有する。データ送受信部２０４は、ネットワークを介して接続された他の情報処理装置に対する送信パケットの出力、および他の情報処理装置からの受信パケットの入力処理を実行する。
【００６９】
パケット処理部２０３は、自装置から、ネットワーク接続された他の情報処理装置に対して送信するパケットの生成処理、あるいは他の情報処理装置から受信したパケットの解析処理等を行なう。
【００７０】
データ処理部２０２は、それぞれの情報処理装置に格納されたデータ処理プログラムに従った処理を実行する。例えば、ネットワークに接続された他の記録指示装置あるいは再生指示装置等の情報処理装置からのデータ処理要求に基づくデータ処理、例えばコンテンツ再生要求であれば、指定コンテンツを記憶部２０５から取り出して、パケット処理部２０３に出力する処理である。また、コンテンツ記録要求であれば、入力コンテンツを記憶部２０５に入力格納する処理である。
【００７１】
ルール判断処理部２０１は、本発明の情報処理装置に固有の処理を実行する処理部であり、入力したパケットに記述された［ルール判断条件記述］としての確率値：α、あるいはβをもとに、パケットに基づくデータ処理、例えばデータ記録命令に対応する処理としてのデータ受信および記憶部に対する格納処理、あるいはデータ再生命令に対応する処理としての記憶部からのデータ抽出および送信処理、これらの処理を実行するか否かを判定する処理を実行する。本発明の構成においては、記録命令を実行する確率をαとし、再生命令を実行する確率をβとして設定し、それぞれ記録指示装置、再生指示装置が送信する記録要求または再生要求パケットにこれらの確率値が設定される。
【００７２】
例えばコンテンツ記録処理を実行する場合、分散型ストレージシステムを構成するノードの数ｎが十分に大きく、且つ復号化されたブロックの個数ｑが十分に大きい場合、全てのノードにパケットが均等に記録され、分散型ストレージシステム全体としてαの確率でデータが記録される。
【００７３】
また、コンテンツ再生処理を実行する場合、各ノードのルール判断処理部２０１では、再生命令を実行するか否かを確率：βに基づいて判断して実行する。このように再生命令では、それぞれのノードで一定の確率でしか命令が実行されないので、パケットの消失が起こる。しかし、複数の分散ノードからトータルで十分な数のパケットが送られてくるように再生命令が実行される確率βを設定しておけば、これを結合して、ＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｌｌｅｃｔｉｏｎ）に基づくエラーコレクションを実行して、元のデータを再生できる。
【００７４】
［３．記録指示装置構成およびデータ記録処理］
次に、記録指示装置およびデータ記録処理について説明する。図４は、記録指示装置２５０の構成を示す図である。記録指示装置２５０は、複数のノードに対する記録処理要求対象データ（コンテンツ）を入力するデータ入力部２５１、例えばＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｌｌｅｃｔｉｏｎ）符号化、および符号化データに対するインターリーブ処理等のデータ加工を実行するデータ加工部２５２、前述の［ルール判断条件記述］としての確率値：αを設定するルール判断条件設定部２５３、データ加工部２５２で生成した加工データおよびルール判断条件設定部２５３で設定したルール判断条件記述を格納し、アドレスを設定したパケットを生成するパケット生成部２５４、およびネットワークとの接続を行うネットワークインターフェース２５５を有している。
【００７５】
ここで、ＦＥＣ符号化とは、トルネード符号化方式、リードトルネード符号化方式、ターボ符号方式などの受信側で誤り訂正を行う符号化方式の総称であり、データ加工部２５２は、データ入力部２５１から入力されたデータをｐ個のブロックに分割し、このｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換する。このｐ個のブロックからｑ個のブロックに符号化することを符号化率ｑ／ｐの符号化といい、この符号化率ｑ／ｐを変更することによって、この分散型ストレージシステムの記録効率や伝送効率を変更することができる。
【００７６】
インターリーブ処理は、符号化されたデータの順番を並び換える処理である。インターリーブすることによってデータを分散させ、パケットの消失によって発生するバーストエラーがランダムエラーになるようにすることができ、その結果、消失データ部をＦＥＣに従ったエラーコレクションによって訂正することが可能となる。
【００７７】
ＦＥＣエンコード処理およびインタリーブ処理について、図５を参照して説明する。図５（ａ）に示すように、入力した元データをｐ個のブロックに分割する。そして、図５（ｂ）に示すように、符号化率ｑ／ｐのＦＥＣ符号化を施し、ｐ個のブロックに分割したデータをｑ個の符号化ブロックに変換する。
【００７８】
上述したように、ＦＥＣ符号化とは、トルネード符号化方式、リードトルネード符号化方式、ターボ符号化方式などの受信側で誤り訂正を行う符号化方式の総称であり、ＦＥＣ符号化を用いて、あるデータを符号化率ｑ／ｐで符号化した場合、論文ＲＩＺＺ０９７（ｈｔｔｐ：／／ｗｗｗ．ｉｅｔ．ｕｎｉｐｉ．ｉｔ／￣ｌｕｉｇｉ／ｆｅｃ．ｈｔｍｌ＃ｆｅｃ．ｐｓ）に発表されているように、ｐ個以上の符号化されたブロックが残存すれば、幾つかのブロックが消失しても、元のメッセージが復元できるようになっている。
【００７９】
ＦＥＣ符号化を施されたデータは、図５（ｃ）に示すようにインターリーブ処理が実行され。符号化されたデータの順番を並び換え、データを分散させる。インターリーブ処理のなされたデータは、ルール判断条件設定部２５３に出力され、前述の［ルール判断条件記述］としての確率値：αを設定する。
【００８０】
［ルール判断条件記述］としての確率値：αの設定処理は、前述のデータ加工部の処理に関連して設定される。データ加工部は、データをｐ個のブロック数に分割し、生成したｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換する符号化率ｑ／ｐの符号化処理を実行するものとした場合、ルール判断条件設定部２５３は、データ記録処理要求を受信するノードにおいて記録確率：αでデータを記録させる確率値：αを記録ルール判断条件記述として設定する構成であり、ネットワークに接続された再生指示装置１０２（図１参照）から指定される返信確率：β、および前記符号化ブロック数：ｑと、ネットワーク接続ノード数：ｎによって算出可能な返信ブロック数：ｑ×α×ｎ×βと、ブロック数：ｐとの関係が、
返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐ
となるように確率値：αを設定する。この設定により、再生指示装置の再生要求によって各ノードから返信確率：βで返信される返信データからの確実なデータ復元が保証される。
【００８１】
パケット生成部２５４は、データ加工部２５２で生成した加工データを所定の大きさに分割し、ルール判断条件設定部２５３で設定したルール判断条件記述を格納し、アドレスを含むヘッダやフッタを付加したパケットを生成して、ネットワークインターフェース２５５を介して送信する。なお、パケットは送信ノードに応じたアドレス設定、すなわちユニキャスト若しくはマルチキャストを用いて分散型ストレージシステムを構成する各ノードに送信する。
【００８２】
図６は、パケット生成部２５４によって生成されるパケット４０の構造を示す図である。パケットは、ヘッダ、記録ルール判断条件記述、ペイロード、フッタから構成される。ペイロードには、ＦＥＣエンコード処理およびインターリーブ処理がなされた加工データ（加工コンテンツ）が格納される。ヘッダとフッタには、データの種類を示すデータＩＤ、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）のチェックサム、パケット送信先ノードの固有識別子としてのＧＵＩＤ（Ｇｌｏｂａｌ  Ｕｎｉｑｕｅ  ＩＤ）、ネットワークアドレスなどの制御情報が記述されている。
【００８３】
記録ルール判断条件記述には、後述する各ノードがこのパケットを記録する確率：αが記述されている。パケットを受信したノードのルール判断処理部２０１（図３参照）は、この記録確率αに基づいてパケットを記録する。
【００８４】
分散型ストレージシステムを構成する全てのノードは、この記録確率に基づいてパケットを記録するか否かを決定する。これにより、分散型ストレージシステムを構成するノードに確率αでデータが記録されることになる。この分散型ストレージシステムでは、ノードの数ｎが十分に大きく、且つ復号されたブロック数ｑが十分に大きい場合に、各ノードに均等な確率でデータを分散することができる。
【００８５】
なお、記録ルール判断条件記述を加工コンテンツを格納したパケットと別のパケットに格納し、加工コンテンツを格納したパケットに記録ルール判断条件記述を格納したパケットのリンク情報を格納し、加工コンテンツを格納したパケットを受信したノードがリンク情報に基づいて対応する記録ルール判断条件記述格納パケットを取得する構成としてもよい。
【００８６】
次に、記録指示装置からの記録処理要求パケットの送信に基づいて、パケットを受信したノードが自律的にコンテンツを記録するか否かを判定して処理を実行する記録処理手順について説明する。
【００８７】
図７は、記録指示装置１０１から複数ノード１１１〜１１５に対して、データ記録命令としての図６に示すデータ記録処理要求パケットを送信する処理を説明する図である。記録指示装置は、図６で説明したＦＥＣ処理およびインターリーブ処理を施した加工データをペイロードとし、さらに、ルール判断条件記述としての確率値：αを設定したパケットを各ノードに対してユニキャストあるいはマルチキャスト送信する。
【００８８】
図８を参照して、パケットを受信したノードにおける処理手順を説明する。まず、ステップＳ１０１で、データ記録処理要求パケットを待機し、ステップＳ１０２でパケットを受信したと判定すると、ステップＳ１０３において、乱数生成処理を実行し、ステップＳ１０４において、生成した乱数と、データ記録処理要求パケット内に格納された記録ルール判断条件記述：確率αとの比較を行ない、比較結果に基づいて、命令の実行、非実行を判定する。
【００８９】
例えば、生成乱数＞確率αであれば、パケットのペイロードとして格納された加工データを自己の記憶手段に記録する処理を実行し、生成乱数≦確率αであれば、データ記録処理を実行しない。
【００９０】
なお、各ノードにおいて生成される乱数は、分散型ストレージシステムを構成するノードの数ｎが十分に大きく、且つ復号化されたブロックの個数ｑが十分に大きい場合、全てのノードにパケットが均等に記録され、分散型ストレージシステム全体としてαの確率でデータが記録されるように発生乱数の範囲が設定される。
【００９１】
ステップＳ１０４における乱数に基づく比較処理結果として、データ記録処理要求を実行すべきとの判定がなされれば、ステップＳ１０５に進み、パケットのペイロードとして格納された加工データの抽出処理を実行して、自装置（ノード）の記憶手段に抽出データを記録する処理を実行する。一方、乱数に基づく比較処理結果として、データ記録処理要求を実行しないとの判定がなされれば、ステップＳ１０６に進み、データ記録処理を実行せずに処理を終了する。
【００９２】
このように、データ記録処理要求（命令）を受信した情報処理装置は、パケット内に格納された記録ルール判断条件記述と乱数との比較に基づいて自律的に命令の実行、非実行を判定し、判定に従った処理を行なう。
【００９３】
次に、図９の処理フローを参照して、データ記録処理要求を受信した情報処理装置側において、ハッシュ値を算出して、ハッシュ値に基づいて自律的にデータ記録処理要求の実行、非実行を判定する処理について説明する。
【００９４】
まず、ステップＳ２０１で、データ処理要求パケットを待機し、ステップＳ２０２でパケットを受信したと判定すると、ステップＳ２０３において、受信パケット内の格納データに基づくハッシュ値生成処理を実行し、ステップＳ２０４において、生成したハッシュ値に基づいて、命令の実行、非実行を判定する。
【００９５】
例えば、情報処理装置は、それぞれ予め設定された閾値としての設定値を記憶部に格納し、生成ハッシュ値＞設定値であれば、命令実行、生成ハッシュ値≦設定値であれば、命令を非実行とするなどの設定とする。
【００９６】
ハッシュ値の生成対象とするデータ処理要求パケット内に格納されたデータは、図１０に示すように、例えばコンテンツデータの識別子（データＩＤ）、あるいはデータの一部、例えばデータ先頭から所定（ｎ）ビットのデータをハッシュ対象データとして設定するなどが可能である。ハッシュ値算出は例えばＭＤ５の適用が可能であり、図１０に示すようにデータＩＤのＭＤ５によるハッシュ値、あるいはデータ内容のＭＤ５によるハッシュ値が生成される。
【００９７】
ステップＳ２０４におけるハッシュ値に基づく判定結果として、データ記録処理要求を実行すべきとの判定がなされれば、ステップＳ２０５に進み、パケットのペイロードとして格納された加工データの抽出処理を実行して、自装置（ノード）の記憶手段に抽出データを記録する処理を実行する。一方、ハッシュ値に基づく比較処理結果として、データ記録処理要求を実行しないとの判定がなされれば、ステップＳ２０６に進み、データ記録処理を実行せずに処理を終了する。
【００９８】
このように、データ記録処理要求（命令）を受信した情報処理装置は、パケット内に格納されたデータのハッシュ値と各ノードの設定値との比較に基づいて自律的に命令の実行、非実行を判定し、判定に従った処理を行なう。
【００９９】
［４．再生指示装置構成およびデータ再生処理］
次に、データの再生指示を各ノードに送信し、各ノードから再生対象のデータを受信してデータ再生処理を実行する再生指示装置１０２（図１参照）について説明する。図１１は、再生指示装置２７０の構成を示す図である。再生指示装置２７０は、ネットワークを介しての外部とのデータの送受信を行うネットワークインターフェース２７１、ノードに再生対象データを指定した再生データ送信を要求するパケットを生成するデータ要求パケット生成部２７２、データ要求パケットに設定する［ルール判断条件記述］としての確率値：βを決定するルール判断条件設定部２７３を有する。
【０１００】
さらに、ネットワークインターフェース２７１は、各ノードからの再生データ格納パケットを受信し、再生指示装置２７０のパケット処理部２７４は、パケットに分割されたデータを結合する処理を実行する。さらに、データ復元処理部２７５は、受信パケットから抽出したデータのデインターリーブ処理、ＦＥＣデコード処理を実行し、コンテンツデータの復元を実行する。復元したデータはデータ処理部２７６に入力され、モニタやスピーカ（図示省略）などの外部機器に出力したり、図示しない記録装置に格納されたりする。
【０１０１】
データ要求パケット生成部２７２は、分散型ストレージシステムを構成する各ノードにデータを要求するパケットを送信する。図１２は、データを要求するパケットの構成を示す図である。パケットは、ヘッダ、再生ルール判断条件記述部、リクエスト記述部、フッタから構成される。リクエスト記述部には、要求するデータを識別するためのデータＩＤが記録される。ヘッダとフッタには、ＣＲＣのチェックサム、ノードのネットワークアドレスやＧＵＩＤ、データの順序を示すシーケンス番号などの制御情報が記録される。
【０１０２】
再生ルール判断条件記述部には、ルール判断条件設定部２７３の決定した返信確率βを設定する。返信確率βは、パケットを受信したノードがデータを返信するか否かの判定を行うための変数である。この変数をもとに、データを返信すると判定するノードもあれば、データを返信しないと判定するノードもあるが、返信確率βは、分散型ストレージシステム全体をマクロ的にみたときの値であり、分散型ストレージシステム全体では、各ノードのデータを返信する確率がβになる。そのため、分散型ストレージシステムにｎ個のノードが存在する場合に、返信されるパケットの割合は、ノードの個数ｎと返信確率βを掛け合わせた値ｎ×βとなる。
【０１０３】
パケット処理部２７４は、各ノードから返信されたパケットを結合する。図１３は、ノードから返信されたパケットのデータ構造を示す図である。図１３に示すようにパケットは、ヘッダ、ペイロード、フッタから構成され、ペイロードには各ノードが記憶部から抽出したデータ、すなわち、先に図５を参照して説明したＦＥＣ処理およびインターリーブ処理のなされたデータブロックが格納され、ヘッダとフッダには、ＣＲＣのチェックサムや受信側のノードのネットワークアドレス、パケットの順序を示すシーケンス番号など、制御情報が格納される。
【０１０４】
図１３に示すパケットを再生指示装置が受信すると、パケット処理部２７４はパケット解析を実行し、シーケンス番号を読み取り、受信したパケットの順序を入れ替え、ヘッダやフッタなどの制御情報を除去して、シーケンス番号の順にパケットを結合する。
【０１０５】
データ復元処理部２７５は、受信データブロックにデインターリーブをかけ、データの並びを整列させ、さらにデインターリーブされたデータにＦＥＣ復号を施し、元のデータを復元する。
【０１０６】
ＦＥＣおよびデインタリーブ処理に基づくデータ復元処理ついて、図１４を参照して説明する。図１４（ａ）に示すように、各ノードからの受信パケットは、ネットワーク上において消失が発生し、受信データブロックと消失データブロックが混在することになる。
【０１０７】
なお、受信データブロックは、先に図５を参照して説明したように、符号化率ｑ／ｐのＦＥＣ符号化を施し、ｐ個のブロックに分割したデータをｑ個の符号化ブロックに変換したブロックデータである。
【０１０８】
再生指示装置における、データ復元処理部２７５は、まず、受信データブロックにデインターリーブをかけ、データの並びを整列させ、図１４（ｂ）に示すデインタリーブ処理データを生成する。デインタリーブ処理データには消失パケット、すなわち消失ブロックに基づくデータ消失部が存在する。しかしデインタリーブ処理により、これらのエラーは、エラー部が大きなデータ領域として存在するバーストエラーではなく、微少データ領域からなるランダムエラーとなる。このような微少データ領域からなるランダムエラーは、ＦＥＣによるエラーの解消が可能である。
【０１０９】
データ復元処理部２７５は、図１４（ｂ）に示すデインタリーブ処理データについて、ＦＥＣによるエラー訂正を実行し、図１４（ｃ）に示す復元データを生成する。上述したように、ＦＥＣ符号化とは、トルネード符号化方式、リードトルネード符号化方式、ターボ符号化方式などの受信側で誤り訂正を行う符号化方式の総称であり、ＦＥＣ符号化を用いて、あるデータを符号化率ｑ／ｐで符号化した場合、論文ＲＩＺＺ０９７（ｈｔｔｐ：／／ｗｗｗ．ｉｅｔ．ｕｎｉｐｉ．ｉｔ／￣ｌｕｉｇｉ／ｆｅｃ．ｈｔｍｌ＃ｆｅｃ．ｐｓ）に発表されているように、ｐ個以上の符号化されたブロックが残存すれば、幾つかのブロックが消失しても、元のメッセージが復元できる。
【０１１０】
データ復元処理部２７５によって復元されたデータは、データ処理部２７６に出力される。データ処理部２７６は、復号されたデータを、図示しない記録部に保存したり、モニタやスピーカなどの出力部に出力インターフェースを介して出力する。
【０１１１】
本発明に従った分散型ストレージシステムは、記録確率αで各ノードにデータを記録し、各ノードに記録したデータを返信確率βで返信させるシステムであり、図１に示す記録指示装置１０１から出力される元データは、α×ｎ×βの割合で返信される。例えば、ｐ個のブロックをｑ個のブロックに符号化すると、ｑ×α×ｎ×β個のブロックが返信される。前述の論文ＲＩＺＺ０９７に記載のように、この返信されたブロックの個数が復号前のブロックの個数ｐよりも多い場合、データは復号可能である。そのため、返信されるブロックの個数がｐ個より多くなるように、α、β、ｑ／ｐの値を決定しておくと、目的のデータを復号することができる。
【０１１２】
すなわち、再生指示装置２７０におけるルール判断条件設定部２７３は、ノードに格納された再生対象データが、ｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換した符号化率ｑ／ｐの符号化処理データであるとき、ネットワークに接続された記録指示装置から指定される記録確率：αと返信確率：βおよびｐ，ｑ、および前記符号化ブロック数：ｑと、ネットワーク接続ノード数：ｎによって算出可能な返信ブロック数：ｑ×α×ｎ×βと、ブロック数：ｐとの関係が、
返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐ
となる確率値：βとして設定する。この設定により、再生指示装置の再生要求によって各ノードから返信確率：βで返信される返信データからの確実なデータ復元が保証される。
【０１１３】
このように、本具体例における分散型ストレージシステムは、
ｐ≧ｑ×α×ｎ×β
を満たすように、符号化率ｑ／ｐ、記録確率α、返信確率βを設定すればよいので、上述の式を満たす範囲で符号化率ｑ／ｐ、記録確率α、返信確率βを変更することにより、データの記録効率や伝送効率を変更させることができる。以下、ｑ／ｐ、α、βの各パラメータの設定例について説明する。
【０１１４】
例えば、非常に多くの返信要求があるデータに対して、記録確率αの値を大きくし、返信確率βの値を小さくすると、各ノードから送信されるデータが少なくなり、ノードにおけるデータの検索処理やデータの送信処理が簡略化されるようになる。
【０１１５】
また、記録確率αの値を大きくするかわりに、符号化率ｑ／ｐの値を大きくして、返信確率βを小さくしても、各ノードにおけるデータの検索処理やデータの送信処理を簡略化することができる。
【０１１６】
また、符号化率ｑ／ｐを小さくし、記録確率αを大きくすると、送信するパケットの数を抑えることができる。これは、ｐが十分大きいときに効果的である。また、記録確率αを小さくし、符号化率ｑ／ｐを小さくすることで、同一のパケットを複数のノードに記録することを避けることができる。これは、ｐが十分小さいときに効果がある。
【０１１７】
また、返信確率βを大きくし、記録確率α又は符号化率ｑ／ｐを小さくすることにより、分散型ストレージシステム全体に記録される符号化データの容量を小さくすることができる。或いは、データの記録時、出力時又は送信時などに、パケットの消失する確率をａとすると、ａ×ｎ×α×ｑ×βがｐよりも十分大きくなるようにα、β、ｑ／ｐの値を制御することによって、十分な数のデータが返信される。
【０１１８】
また、複数のノードから返信されるユニークなパケットの個数を数学的に推定し、記録確率、返信確率、または符号化率を大きくすることで、ユニークなパケットが到着する確率を高くすることができる。
【０１１９】
次に、再生指示装置からの再生処理要求パケットの送信に基づいて、パケットを受信したノードが自律的にコンテンツを抽出し送信するか否かを判定して処理を実行する再生処理手順について説明する。
【０１２０】
図１５は、再生指示装置１０２から複数ノード１１１〜１１５に対して、データ再生命令としての図１２に示すデータ再生処理要求パケットを送信する処理を説明する図である。再生指示装置は、再生指定データの識別子、例えばコンテンツＩＤ、ＧＵＩＤ等をリクエスト記述として設定し、さらに、ルール判断条件記述としての確率値：βを設定した図１２に示すデータ再生処理要求パケットを生成し、パケットを各ノードに対してユニキャストあるいはマルチキャスト配信する。
【０１２１】
図１６は、図１２に示すデータ再生処理要求パケットを受信したノードが再生命令に従って、データ再生処理、すなわち自ノードの記憶部からの指定データの読み取り、パケット生成、パケット送信を実行するか、しないかを自律的に判定し、処理実行の判定を行なったノードにおいてのみ再生データを格納したパケット、すなわち図６で説明したＦＥＣ処理およびインターリーブ処理を施した加工データをペイロードとしたパケット（図１３参照）を生成して、再生指示装置１１２に対して送信する。
【０１２２】
図１７を参照して、ルール判断条件記述としての確率値：βを設定した図１２に示すデータ再生処理要求パケットを受信したノードにおける処理手順を説明する。まず、ステップＳ３０１で、データ再生処理要求パケットを待機し、ステップＳ３０２でパケットを受信したと判定すると、ステップＳ３０３において、乱数生成処理を実行し、ステップＳ３０４において、生成した乱数と、データ再生処理要求パケット内に格納された再生ルール判断条件記述：確率βとの比較を行ない、比較結果に基づいて、命令の実行、非実行を判定する。
【０１２３】
例えば、生成乱数＞確率βであれば、自己の記憶手段に格納された指定コンテンツを抽出し、抽出データをペイロードとしたパケット（図１３参照）を生成して、再生指示装置に対して送信する処理を実行し、生成乱数≦確率βであれば、データ再生処理を実行しない。
【０１２４】
ステップＳ３０４における乱数に基づく比較処理結果として、データ再生処理要求を実行すべきとの判定がなされれば、ステップＳ３０５に進み、自装置（ノード）の記憶手段に格納された加工データの抽出処理を実行して、抽出データをペイロードとしたパケット（図１３参照）を生成して、再生指示装置に対して送信する処理を実行する。一方、乱数に基づく比較処理結果として、データ再生処理要求を実行しないとの判定がなされれば、ステップＳ３０６に進み、データ再生処理を実行せずに処理を終了する。
【０１２５】
このように、データ再生処理要求（命令）を受信した情報処理装置は、パケット内に格納された再生ルール判断条件記述と乱数との比較に基づいて自律的に命令の実行、非実行を判定し、判定に従った処理を行なう。
【０１２６】
次に、図１８の処理フローを参照して、データ再生処理要求を受信した情報処理装置側において、ハッシュ値を算出して、ハッシュ値に基づいて自律的にデータ再生処理要求の実行、非実行を判定する処理について説明する。
【０１２７】
まず、ステップＳ４０１で、データ再生処理要求パケットを待機し、ステップＳ４０２でパケットを受信したと判定すると、ステップＳ４０３において、受信パケット内の格納データに基づくハッシュ値生成処理を実行し、ステップＳ４０４において、生成したハッシュ値に基づいて、命令の実行、非実行を判定する。
【０１２８】
例えば、情報処理装置は、それぞれ予め設定された閾値としての設定値を記憶部に格納し、生成ハッシュ値＞設定値であれば、命令実行、生成ハッシュ値≦設定値であれば、命令を非実行とするなどの設定とする。
【０１２９】
ハッシュ値の生成対象とするデータは、先にデータ記録要求の処理の判定と同様、図１０に示す、例えばコンテンツデータの識別子（データＩＤ）、あるいはデータの一部、例えばデータ先頭からＸビットのデータをハッシュ対象データとして設定するなどが可能である。ハッシュ値算出は例えばＭＤ５の適用が可能であり、図１０に示すようにデータＩＤのＭＤ５によるハッシュ値、あるいはデータ内容のＭＤ５によるハッシュ値が生成される。
【０１３０】
ステップＳ４０４におけるハッシュ値に基づく判定結果として、データ記録処理要求を実行すべきとの判定がなされれば、ステップＳ４０５に進み、自装置（ノード）の記憶手段に格納された加工データの抽出処理を実行して、抽出データをペイロードとしたパケット（図１３参照）を生成して、再生指示装置に対して送信する処理を実行する。一方、ハッシュ値に基づく比較処理結果として、データ再生処理要求を実行しないとの判定がなされれば、ステップＳ４０６に進み、データ再生処理を実行せずに処理を終了する。
【０１３１】
このように、データ再生処理要求（命令）を受信した情報処理装置は、パケット内に格納されたデータのハッシュ値と各ノードの設定値との比較に基づいて自律的に命令の実行、非実行を判定し、判定に従った処理を行なう。
【０１３２】
［５．データ記録再生処理シーケンス］
次に、図１９を参照して記録指示装置からノードに対するデータ記録処理要求の発行、ノードにおけるデータ記録処理、再生指示装置からノードに対するのデータ再生処理要求の発行、ノードにおけるデータ抽出、パケット送信処理の一連の処理シーケンスについて、まとめて説明する。
【０１３３】
記録指示装置は、まず、ステップＳ１１において、記録対象データ（コンテンツ）の加工、すなわち、ＦＥＣ処理、およびインターリーブ処理を実行する。この処理は、先に図５を参照して説明した処理である。
【０１３４】
次に、記録指示装置は、ステップＳ１２において、データ記録処理要求（命令）パケットの生成処理を実行する。インターリーブ処理のなされたデータがペイロードとして格納されるとともに、ルール判断条件設定部２５３（図４参照）において決定される［ルール判断条件記述］としての確率値：αを設定したパケットを生成する。
【０１３５】
次に、記録指示装置は、ステップＳ１３において、送信ノードに応じたアドレス設定、すなわちユニキャスト若しくはマルチキャストを用いて分散型ストレージシステムを構成する各ノードに送信する。
【０１３６】
記録指示装置からのデータ記録処理要求（命令）パケットを受信したノードの処理は、先に、図８、図９を参照して説明した処理の実行、非実行を自律的に判断して行なわれる処理となる。図１９には、２つのノード（ノード１，２）の処理を示してあるが、この他にも多数のノードにおいて、自律的な判断（確率制御）が実行され、データ記録処理を実行するノード、データ記録処理を実行しないノードが存在する。
【０１３７】
図１９に示す２つのノード（ノード１，２）は、ステップＳ２１，Ｓ３１の確率制御処理、すなわち、図８を参照して説明した生成乱数と、受信パケット（データ記録処理要求パケット）中の記録ルール判断条件記述として設定された確率：αとの比較に基づく、処理実行／非実行の判定処理、あるいは、図９を参照して説明したパケット内データに基づくハッシュ値と、ノードの設定値との比較に基づく、処理実行／非実行の判定処理を実行する。
【０１３８】
図１９に示す２つのノード（ノード１，２）は、ステップＳ２１，Ｓ３１の確率制御処理の結果として、いずれもデータ記録処理を実行するとの結論が得られ、ステップＳ２２，Ｓ３２において、データ記録処理を実行する。記録対象データは、記録指示装置から受信したデータ記録処理要求パケットに格納されたＦＥＣおよびインタリーブされた加工データである。
【０１３９】
次に、再生指示装置は、ステップＳ４１において、再生処理要求（命令）パケット（図１２参照）を各ノードに対して送信する。再生対象となるコンテンツＩＤ等をリクエスト記述として格納し、再生ルール判断条件記述（確率：β）ほ設定したパケットである
【０１４０】
再生処理要求（命令）パケット（図１２参照）を受信した各ノード、すなわち図１９に示す２つのノード（ノード１，２）は、ステップＳ５１，Ｓ６１の確率制御処理、すなわち、図１７を参照して説明した生成乱数と、受信パケット（データ再生処理要求パケット）中の再生ルール判断条件記述として設定された確率：βとの比較に基づく、処理実行／非実行の判定処理、あるいは、図１８を参照して説明したパケット内データに基づくハッシュ値と、ノードの設定値との比較に基づく、処理実行／非実行の判定処理を実行する。
【０１４１】
図１９に示すノード１は、ステップＳ５１の確率制御処理の結果として、データ再生処理を実行するとの結論が得られ、ステップＳ５２において、再生処理要求（命令）パケットのリクエスト記述に従って、自ノードの記憶部から対応データを取得し、取得データをペイロードとして格納したパケット（図１３参照）を生成して、ステップＳ５３において、再生指示装置に対して送信する。
【０１４２】
一方、図１９に示すノード２は、ステップＳ６１の確率制御処理の結果として、データ再生処理を実行しないとの結論が得られ、データ抽出およびパケット生成、送信を実行せずに処理を終了する。
【０１４３】
なお、図１９には、ノード１からのみのデータが再生指示装置に送信されている構成となっているが、図示しないノード３〜ｎからのデータ格納パケットが再生指示装置に送信され、再生指示装置は、多数のもノードから多数のパケットを受信している。
【０１４４】
再生データを格納したパケットを受信した再生指示装置は、ステップＳ７１において、受信データブロックにデインターリーブをかけ、データの並びを整列させ、さらにデインターリーブされたデータにＦＥＣ復号を施し、元のデータを復元する。
【０１４５】
ＦＥＣおよびデインタリーブ処理に基づくデータ復元処理ついては、先に図１４を参照して説明した通りである。消失パケットが存在しても、デインタリーブ処理により、エラーは、エラー部が大きなデータ領域として存在するバーストエラーではなく、ランダムエラーとなり、ＦＥＣ復号処理により元のデータが復元される。
【０１４６】
このように、データ記録あるいは再生処理要求（命令）を受信した情報処理装置は、各処理要求パケットに設定された記録ルール判断条件記述、または再生ルール判断条件記述、あるいはその他のパケット内データに基づいて、自律的に命令の実行、非実行を判定し、判定に従った処理を行なうことが可能となる。
【０１４７】
以上のように、本実施例における分散型ストレージシステムは、システムを構成するノードに記録確率αを記述したパケットを送信することにより、データを分散して記録する。そして、ノードに記録されたデータを返信確率βで返信させることにより、データの取り出しを行う。このように、データを分散して記録すると、一つのサーバにデータ管理の負荷が集中することなく、データを格納することができる。また、一つのデータを複数のノードで共有するため、システム全体で必要となるデータ容量が少なくて済む。
【０１４８】
また、複数のノードからデータを受信するようにすると、一つのサーバにトラフィックが集中することがなくなり、安定した通信量でデータの送受信が行える。
【０１４９】
また、α、β、ｑ／ｐの値を変更することにより、伝送効率や記録するデータ量を変更することができる。さらに、データの記録時、出力時、送信時などにパケットが消失するとき、消失する確率ａを考慮して、α、β、ｑ／ｐのパラメータの値を変更して、パケットが消失しても復号に十分なデータを取り出せるようにすることもできる。
【０１５０】
また、この分散型ストレージシステムでは、記録確率と返信確率に基づいた演算によってデータの分散記録・読み出しを実行できるため、データの管理が単純であり、カムコーダや携帯電話などの処理能力の少ない家庭用の機器であってもこのシステムに適応できる。また、カムコーダや携帯電話などの処理能力の低い家庭用の機器をノードとして用いることができるようになるため、数百万台規模の分散型ストレージシステムが容易に構築できる。
【０１５１】
また、上記分散ストレージシステムにおいては、記録指示装置は、記録させるデータと記録確率を同じパケットで送信したが、記録させるデータと記録確率を異なるパケットで送信したり、外部の記録装置に記録し、各情報処理ノードから参照するようにしてもよい。
【０１５２】
なお、上述した実施例では、ネットワークに接続された情報処理装置におけるパケット転送処理を実行する構成例を中心として説明したが、本発明は、パケット転送構成を持つ構成に限らず、例えば無線通信装置相互の通信、あるいはＰＣ等の情報処理装置の電子回路を構成するデバイス間通信においても、それぞれ転送データに対して、前述した処理ルール判断条件記述に対応するデータを設定することで、処理要求データを受信した無線通信装置、あるいはデバイスにおいて要求処理を実行するか否かの自律的な判断が可能となる。
【０１５３】
［６．伝送方式の最適組合わせに基づくデータ伝送処理］
次に、伝送方式の最適組合わせに基づくデータ伝送処理について説明する。先に図１を参照して説明したようなネットワークに多数のノードが接続され、データ記録指示装置、あるいは再生指示装置からの処理要求に基づいて各ノードが応答して処理データを送信するような構成において、例えばデータ再生処理を実行する場合、再生指示装置が必要な再生データを取得するためには、複数のノードからデータを取得するデータ取得方式、あるいは従来技術の欄で説明したカルーセル伝送等、様々な方式によってデータを取得することが可能である。以下では、これらの様々なデータ伝送方式を適宜組み合わせて適用することにより効率的なデータ伝送を可能とした例について説明する。
【０１５４】
データ伝送方式としては例えば以下の方式がある。単一のノードからデータを繰り返し送信するカルーセル伝送方式、直前にデータを受け取ったノードに接続してデータを受信するチェーニング方式、複数の分散キャッシュからデータを受信し、集積データに基づいてデータを取得する方式、全データを格納しているノード、例えば記録指示装置に接続して全データを取得するサーバクライアント方式、さらに、必要データを自己のノードにローカルに格納し、ローカルキャッシュからデータを取得することで再生時のデータ転送を不要としたローカルキャッシュ方式、これらの方法が再生データ取得方式として適用可能である。
【０１５５】
以下、説明する実施例は、データ（コンテンツ）再生処理を行なう際に、上記の様々な方式を適宜組み合わせて実行することにより、ネットワークトラフィックを減少させ、効率的で確実なデータ再生を実現する構成である。
【０１５６】
図２０を参照して本実施例における再生指示装置の構成について説明する。再生指示装置は、再生に必要なデータを他のノードから取得する場合は、データの再生指示を各ノードに送信し、各ノードから再生対象のデータを受信してデータ再生処理を実行する。また、自己のキャッシュ（ローカルキャッシュ）に存在する場合は、キャッシュからデータを取り出して再生を実行する。
【０１５７】
図２０を参照して再生指示装置３１０について説明する。再生指示装置３１０は、ネットワークを介した外部装置とのデータの送受信を行うネットワークインターフェース３１１、ノードに再生対象データを指定した再生データ送信を要求するパケットを生成するデータ要求パケット生成部３１２、データ要求パケットに設定する［ルール判断条件記述］としての確率値：βを決定するルール判断条件設定部３１３を有する。
【０１５８】
さらに、複数のデータ伝送方式から１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定するデータ伝送率設定部３１８を有する。データ要求パケット生成部３１２は、データ伝送率設定部３１８において決定したデータ伝送率に基づいて、再生要求処理対象データを設定するとともに、パケットのアドレス設定処理を行ない、再生要求処理対象データの指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成する。
【０１５９】
データ伝送率設定部３１８は、再生対象データの需要度に基づいてデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する構成であり、カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式の少なくともいずれかの方式を含むデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定する。
【０１６０】
さらに、ネットワークインターフェース３１１は、各ノードからの再生データ格納パケットを受信し、再生指示装置３１０のパケット処理部３１４は、パケットに分割されたデータを結合する処理を実行する。さらに、データ復元処理部３１５は、受信パケットから抽出したデータのデインターリーブ処理、ＦＥＣデコード処理を実行し、データの復元を実行する。復元したデータはデータ処理部３１６に入力され、モニタやスピーカ（図示省略）などの外部機器に出力したり、図示しない記録装置に格納されたりする。また、データ記憶部３１７はローカルキャッシュとして適用され、再生対象データが格納可能である。格納データが加工データである場合は、データ復元処理部３１５において復元処理がなされた後、再生される。非加工データとして格納している場合は、復元処理を行なうことなく、データ処理部３１６において再生される。
【０１６１】
データ要求パケット生成部３１２は、分散型ストレージシステムを構成する各ノードにデータを要求するパケットを送信する。送信パケット構成は、先に図１２を参照して説明した通りであり、ヘッダ、再生ルール判断条件記述部、リクエスト記述部、フッタから構成される。リクエスト記述部には、要求するデータを識別するためのデータＩＤが記録される。ヘッダとフッタには、ＣＲＣのチェックサム、ノードのネットワークアドレスやＧＵＩＤ、データの順序を示すシーケンス番号などの制御情報が記録される。
【０１６２】
再生ルール判断条件記述部には、ルール判断条件設定部３１３の決定した返信確率βを設定する。返信確率βは、パケットを受信したノードがデータを返信するか否かの判定を行うための変数である。この変数をもとに、要求データを自己の記憶部から抽出してパケットを生成してデータ返信を実行するか否かを判定する。
【０１６３】
変数に従った判定処理の結果、要求処理を実行するノードもあれば、実行しないノードもあるが、返信確率βは、分散型ストレージシステム全体をマクロ的にみたときの値であり、分散型ストレージシステム全体では、各ノードのデータを返信する確率がβになる。そのため、分散型ストレージシステムにｎ個のノードが存在する場合に、返信されるパケットの割合は、ノードの個数ｎと返信確率βを掛け合わせた値ｎ×βとなる。
【０１６４】
ただし、本実施例においては、カルーセル、チェーニング、クライアントサーバ型等、様々なデータ伝送方式を適用するものであり、それぞれの伝送方式に応じて、ルール判断条件設定部３１３は、返信確率βを設定することが可能である。すなわち、カルーセルの場合βａ、チェーニングの場合βｂ、クライアントサーバ型の場合βｃ等である。ただし、上述した分散ノードからのデータ受信方式にのみ返信確率βを設定し、その他の方式には、返信確率の設定は行なわないとする構成としてもよい。
【０１６５】
パケット処理部３１４は、各ノードから返信されたパケットを結合する。返信パケットは、先に図１３を参照して説明した構成を持つ。図１３に示すようにパケットは、ヘッダ、ペイロード、フッタから構成され、ペイロードには各ノードが記憶部から抽出したデータ、すなわち、先に図５を参照して説明したＦＥＣ処理およびインターリーブ処理のなされたデータブロックが格納され、ヘッダとフッダには、ＣＲＣのチェックサムや受信側のノードのネットワークアドレス、パケットの順序を示すシーケンス番号など、制御情報が格納される。
【０１６６】
図１３に示すパケットを再生指示装置が受信すると、パケット処理部３１４はパケット解析を実行し、シーケンス番号を読み取り、受信したパケットの順序を入れ替え、ヘッダやフッタなどの制御情報を除去して、シーケンス番号の順にパケットを結合する。
【０１６７】
データ復元処理部３１５は、受信データブロックにデインターリーブをかけ、データの並びを整列させ、さらにデインターリーブされたデータにＦＥＣ復号を施し、元のデータを復元する。ＦＥＣおよびデインタリーブ処理に基づくデータ復元処理ついては、先に図１４を参照して説明した通りである。
【０１６８】
データ復元処理部３１５によって復元されたデータは、データ処理部３１６に出力される。データ処理部３１６は、復号されたデータを、図示しない記録部に保存したり、モニタやスピーカなどの出力部に出力インターフェースを介して出力する。
【０１６９】
上述したように、本実施例の再生指示装置では、複数の伝送方式に対応するため複数のインターフェース（Ａ，Ｂ，・・）をインターフェース３１１に持つ。これらの各インタフェースを介してルール判断条件設定部３１３が伝送方式に応じて決定した返信確率（βａ，βｂ・・）を設定した再生処理要求（命令）パケットを送信する。
【０１７０】
図２１は、再生処理要求（命令）パケットをネットワーク接続された各ノードに送信する処理を説明する図である。各ノードは、一つまたは複数の伝送方法を提供する。図には、一部しか書いていないが、カルーセル、分散キャッシュ、チェーニング、クライアントサーバなどの方式を提供する多数のノードがネットワーク分布している。
【０１７１】
再生指示装置３５１は、例えばカルーセル伝送を実行するノード３７１、チェーニング伝送を実行するノード３７４、分散キャッシュ方式によるデータ格納を行なっているノード３７５、その他のノード３７２，３７３に対して、先に図１２を参照して説明した再生ルール判断条件記述として、各伝送方式に応じて返信確率（βａ，βｂ・・）を設定し、再生指定データの識別子、例えばコンテンツＩＤ、ＧＵＩＤ等をリクエスト記述として設定したデータ再生処理要求パケットを生成し、パケットを各ノードに対してユニキャストあるいはマルチキャスト配信する。
【０１７２】
図２２は、再生処理要求（命令）パケットの返事として各ノード３７１〜３７５から再生指示装置３５１にデータが送信される様子を示している。図１２に示すデータ再生処理要求パケットを受信したノードが再生命令に従って、データ再生処理、すなわち自ノードの記憶部からの指定データの読み取り、パケット生成、パケット送信を実行するか、しないかを自律的に判定し、処理実行の判定を行なったノードにおいてのみ再生データを格納したパケット、すなわち図６で説明したＦＥＣ処理およびインターリーブ処理を施した加工データをペイロードとしたパケット（図１３参照）を生成して、再生指示装置３５１に対して送信する。各ノードは、カルーセル、分散キャッシュ、チェーニング、クライアントサーバそれぞれの方式でデータを返却する。
【０１７３】
再生指示装置が再生に必要なデータを取得する方式の詳細、および各方式の特性について、図２３を参照して説明する。図２３は、再生対象データ等の取得すべきデータの伝送方式あるいは格納方式別に、特性をまとめている。方式としては、カルーセル方式、分散キャッシュ方式、チェーニング方式、ローカルキャッシュ方式、クライアントサーバ方式の各種類に区分し、さらに分散キャッシュ方式は、キャッシュノードが再生指示装置等のデータ取得処理を実行する装置から近距離にあるか遠距離にあるかを区別して示してある。
【０１７４】
カルーセルは、あるデータに関するデータの群を繰り返しマルチキャストを使って送信するデータ伝送方式である。カルーセル方式で送られるデータがマルチキャストとして送信される場合、あるアドレスを読み出すことだけが出来、単位時間あたりの受信データ量の変更は出来ない。従って、例えば１００の長さのあるデータを単位時間１０の速度で繰り返し送信した場合、データが前述のインターリーブ処理により、ランダム入れ替え処理がなされていると、単位時間に有効なデータを受信する確率は１０％となる。
【０１７５】
ただし、ストリーミングデータ配信などの場合には、単位時間に受信した有効データ以外のデータも、将来必ず関係するデータとして適用可能、すなわちデインターリーブ処理に適用可能なデータ部となるので、これらのデータを自装置の記憶部にキャッシュしておけば、新たにデータを受信することなく、キャッシュデータを利用することで帯域削減につながる。この帯域削減効果を図２４に示す。時間に従ってローカルにキャッシュされるデータの量が増えるためカルーセル以外で受け取る必要があるパケットの量が減っていく。すなわち、すべてのデータをカルーセル伝送で実行することなく、一部データをカルーセル伝送することで、帯域削減効果が発生する。
【０１７６】
次に、確率分布による分散キャッシュについて説明する。この方式は、図６を参照して説明した記録ルール判断条件記述を設定した記録処理要求パケットを各ノードに送信し、ノード側で自律的な処理判断を実行してデータ記録を行なったデータを、再生指示装置が再生要求パケットを送信して取得するものである。他の方式とくらべてもっとも柔軟な運用が可能な伝送方式である。例えば各ノードをグループ分けすることにより、ネットワークの負荷のあまりかからない近いノード群を得ることが出来れば、出来るだけ近いグループから再生パケットを受け取るように制御することが可能となる。
【０１７７】
例えばデータ再生処理要求を送信するノード群を再生指示装置に近接するノード群とするアドレス（マルチキャストアドレス）設定とする処理を行なうことで、パケットの伝送ロスは最小限に減らすことが出来る。例えば図２５に示すアドレステーブルを適用して、再生指示装置が、データ再生処理要求を送信するノード群を、自装置に近距離にあるノードに限定するマルチキャストアドレスを設定したり、自装置から中距離、あるいは遠距離、あるいは全ノード等、様々なノードに限定するマルチキャストアドレスを設定することで、ネットワークのトラフィックの制御が可能となる。
【０１７８】
次は、チェーニング伝送方式について説明する。チェーニングはノードが再生指示装置を兼ねるとき直前または以前に再生したデータをキャッシュしておきこれを再利用する方式である。
【０１７９】
例えば、直前または以前に再生したデータに対応する識別子情報と、データを送信したノードの識別情報を保持し、これらの保持情報に基づいて、図２６に示すように、データ（コンテンツ）ＩＤと、データを送信したノードに対するアドレスを含むユニキャストまたはマルチキャストアドレスを対応付けたアドレステーブルを生成し、このテーブルを参照して、再生指示装置が送信するデータ再生要求（命令）パケットの設定アドレスを決定する。
【０１８０】
チェーニングは、例えば急激に人気が出てきたコンテンツ（データ）に対して、有効な方式であるが、データを保持しているノードが少ないと遠くからデータを送ってもらわなければならず、パケットの重複などの伝送ロスも大きいので、コンテンツデータが多くのノードに保持された状態、すなわち分散キャッシュ状態に至るまでの間だけ用いるのが望ましい。
【０１８１】
データの再生時におけるリアルタイム伝送をしないローカルキャッシュを用いる方式も可能である。すなわち、再生処理を実行する装置自身のローカルキャッシュにデータを格納し、その格納データを再生処理に利用する方法である。ただし、この方式は、分散キャッシュ処理を実行する各ノードのキャッシュ容量が非常に大きく特定のデータに偏っている場合に対応するものと考えられる。
【０１８２】
クライアントサーバ型の伝送方式は、例えばカルーセル、分散キャッシュ、チェーニング、ローカルキャッシュの各方式で取得不可能なデータについてのデータ伝送に適用可能であり、大元のデータを格納している装置、すなわち記録指示装置等、データを確実に保持したサーバに問い合わせてデータを取得する処理方式である。このクライアントサーバ型のデータ送信は、他のノードに全くキャッシュされていないような、ごく少数の再生指示装置だけが要求するデータについて適したデータ配信処理構成であり、利用頻度の少ないデータも確実に取得できる。
【０１８３】
図２３には、上述の各方式の特性をまとめている。特性としては、距離、ネット負荷、データ発見率、オンデマンド適性、伝送ロス、効率のいい需要の６項目について示してある。距離に関しては、再生指示装置とデータ格納ノードのネットワーク上での距離を示す。分散キャッシュ方式はグループ分けにより遠いものと近いものにわけることができるが、その他のものに関してはわけることが出来ないため「遠」の分類にした。ネットワーク負荷に関しては、伝送距離と伝送パケットの量の掛け算で評価した。「小」がネットワーク負荷が小さく、「大」がネットワーク負荷が大きい。距離が遠くてもネットワーク負荷が小さく出来るのはカルーセル方式のみで、そのほかはネットワーク負荷が距離に応じて大きくなっている。ただし、ローカルキャッシュは事前にダウンロードする時に大きな負荷がかかる。
【０１８４】
データ発見確率は、あるデータを再生指示装置が要求したとき、その伝送路で伝送される可能性が大きいか小さいかを表している。オンデマンド性は、あるデータを再生指示装置が要求したときすぐに再生が開始できるかを示している。伝送ロスは、重複パケットを含めたデータ伝送のロスについてで、「大」のほうが望ましくない。以上を総合すると、データの需要とそれに適した伝送方式が分類できる。これを示すのが、「効率のいい需要」の項目である。
【０１８５】
このような、様々な特性を持つ異なる伝送方式を確率的ルールに基づいてシームレスに統合し、ネットワーク接続されたノード（情報処理装置）１台から数千万台やそれ以上までそれぞれのデータ需要（人気度）に応じたデータ転送制御を行う。
【０１８６】
データ需要（人気度）に応じたデータ転送制御について、図２７を参照して説明する。図２７は、縦軸に対数軸として示すデータ需要（人気度）、横軸にデータ取得の各方式を適用する割合（帯域割合）を示したものである。帯域割合は、各データ伝送方式のデータ伝送率に相当する。
【０１８７】
例えば需要度（人気度）が極めて高いａ以上の領域にあるデータ（コンテンツ）は、カルーセル伝送を１００％実行する。需要度（人気度）がｂのポイントにあるデータ（コンテンツ）は、カルーセル伝送を適用する帯域割合を３０％とし、分散キャッシュからのデータ取得に適用する帯域割合を７０％とする。ここで帯域割合は、ほぼデータ取得率に相当すると考えることができる。すなわち、人気度が高い（ポイントｂ）コンテンツデータの３０％のデータはカルーセル伝送で取得し、残りの７０％のデータは分散キャッシュからのデータ取得によって取得することができる。
【０１８８】
また、需要度（人気度）がｃのポイントを持つデータ（コンテンツ）は、分散キャッシュからのデータ取得に適用する帯域割合を４３％とし、チェーニングとクライアントサーバ型のデータ転送を５７％とする。さらに、需要度（人気度）が低く、ｄのポイント以下のデータ（コンテンツ）は、全てをクライアントサーバ型のデータ転送とする。
【０１８９】
データ伝送率設定部３１８（図２０参照）は、図２７に示すような再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データを有し、前記対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行する。
【０１９０】
データ要求パケット生成部３１２は、データ伝送率設定部３１８において決定したデータ伝送率に基づいて、再生要求処理対象データを設定するとともに、アドレス設定処理を行ない、再生要求処理対象データの指示データをリクエスト記述として格納したデータ再生処理要求パケットを生成する。例えば需要度（人気度）がｃのポイントを持つデータ（コンテンツ）である場合には、分散キャッシュからのデータ取得割合が４３％であり、チェーニングとクライアントサーバ型のデータ転送が５７％であるので、分散キャッシュからのデータ取得要求パケットのリクエスト記述には全コンテンツの４３％のデータ取得要求を記述して、アドレスとしては分散ノードに対応するマルチキャストアドレスを設定する。
【０１９１】
さらに、残りの５７％のデータ要求は、クライアントサーバ型のデータ要求として実行する。すなわちサーバ（例えば記録指示装置）に対するアドレスを設定して、５７％のデータ要求をリクエスト記述として格納したパケットをサーバに送信する。
【０１９２】
このような伝送方式の使い分けにより、効率的なデータ転送が実現される。ネットワークに接続された多数ノード、例えば数十万ノードからのデータ取得要求があるようなコンテンツはカルーセルのみ送信処理を行ない、需要が減少するに従って、「カルーセル＋分散」、「分散＋チェーニング＋クライアントサーバ」、さらに、需要の少ないデータについては「クライアントサーバのみ」のように、需要度（人気度）によってデータ取得に適用する方式を切り替える。
【０１９３】
本実施例では、このようなポリシーをデータの需要度（人気度）で表す方式を提案している。図２７では、データの需要度（人気度）に応じて、「カルーセル＋分散」、「分散＋チェーニング＋クライアントサーバ」、「クライアントサーバのみ」の４つのタイプの切り分け例を示しているが、データ伝送の組み合わせおよび序列の組み合わせは図に示す構成に限らず、様々な設定が可能である。さらに、他の伝送方式を組み込む構成としてもよい。また、図２７に示す構成例には、ローカルキャッシュ方式の処理が含まれないが、ローカルキャッシュデータがある場合には、利用帯域の割合をローカルキャッシュデータから取得可能な割合分、減少させて構成することが可能となる。
【０１９４】
上述したように、本実施例では、取得データの需要度（人気度）に応じてデータの伝送方式、取得方式を変更する構成である。取得データの需要度（人気度）に関する指標データは、例えば自由に閲覧可能なウェブサイト等に設定し、再生指示装置となるノードが最新の需要度情報を得て、取得した情報に従って再生要求を実行する構成とすることが好ましい。再生指示装置となるノード自身が保有する独自の情報、あるいは推定情報に基づく処理を行なってもよい。
【０１９５】
図２８は、需要度情報を提供する需要情報提供装置４２１をネットワーク上に設定した例を示す。需要情報提供装置４２１は、ネットワーク接続されたノードの数、各ノードの実行可能な伝送方式情報、さらにデータ（コンテンツ毎）の需要情報を集積格納し、再生指示装置４１１の要求に応じてこれらの情報を提供する。なお、図２８では、再生指示装置４１１を他のノード４３１〜４３５と区別して示してあるが、いずれのノード４３１〜４３５も再生指示装置として機能し得る。
【０１９６】
需要情報提供装置４２１は、ネットワーク接続されたノードの数、各ノードの実行可能な伝送方式情報、さらにデータ（コンテンツ毎）の需要情報を提供するのみならず、カルーセル伝送開始のタイミング制御を行なう構成としてもよい。すなわち、オリジナルデータを持つノードからカルーセル伝送を開始する際、需要情報提供装置４２１から伝送開始要求を送信し、ノードが伝送開始要求を受信したことを条件としてカルーセル伝送を開始する。カルーセル伝送を実行するノードは、例えばオリジナルデータを保有している記録指示装置、データを自己の記憶手段に保有しているノード等である。なお、カルーセル伝送を実行するノードは、１つのノードのみ、あるいは複数のノードとしてもよい。
【０１９７】
需要情報提供装置４２１は、ネットワーク接続ノードとのデータ送受信を実行する通信部と、需要度情報を生成し生成情報の提供処理制御を実行する制御部を有する情報処理装置によって構成される。
【０１９８】
制御部においては、例えば、通信部を介してネットワーク接続ノードから受信する需要度情報取得要求数のカウント処理が実行され、該カウント情報に基づいて、各データ対応の需要度情報が生成される。通信部を介してネットワーク接続ノードから需要度情報取得要求を受信すると、制御部はカウント値に基づく応答情報を生成して送信する。
【０１９９】
また、需要情報提供装置４２１の制御部は、カウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行する。これらの処理については、後述する。
【０２００】
次に図２９を参照して、記録指示装置からノードに対するデータ記録処理要求の発行、ノードにおけるデータ記録処理、再生指示装置から需要情報提供装置に対する問い合わせおよび応答情報受信、さらに応答情報に基づくノードに対するのデータ再生処理要求の発行、ノードにおけるデータ抽出、パケット送信処理の一連の処理シーケンスについて、まとめて説明する。
【０２０１】
記録指示装置は、まず、ステップＳ５０１において、記録対象データ（コンテンツ）の加工、すなわち、ＦＥＣ処理、およびインターリーブ処理を実行する。この処理は、先に図５を参照して説明した処理に対応する。
【０２０２】
次に、記録指示装置は、ステップＳ５０２において、データ記録処理要求（命令）パケットの生成処理を実行する。インターリーブ処理のなされたデータがペイロードとして格納されるとともに、ルール判断条件設定部２５３（図４参照）において決定される［ルール判断条件記述］としての確率値：αを設定したパケットを生成する。
【０２０３】
次に、記録指示装置は、ステップＳ５０３において、送信ノードに応じたアドレス設定、すなわちユニキャスト若しくはマルチキャストを用いて分散型ストレージシステムを構成する各ノードに送信する。
【０２０４】
記録指示装置からのデータ記録処理要求（命令）パケットを受信したノードの処理は、先に、図８、図９を参照して説明した処理の実行、非実行を自律的に判断して行なわれる処理となる。図２９には、２つのノード（ノード１，２）の処理を示してあるが、この他にも多数のノードにおいて、自律的な判断（確率制御）が実行され、データ記録処理を実行するノード、データ記録処理を実行しないノードが存在する。
【０２０５】
図２９に示す２つのノード（ノード１，２）は、ステップＳ５１１，Ｓ５２１の確率制御処理、すなわち、図８を参照して説明した生成乱数と、受信パケット（データ記録処理要求パケット）中の記録ルール判断条件記述として設定された確率：αとの比較に基づく、処理実行／非実行の判定処理、あるいは、図９を参照して説明したパケット内データに基づくハッシュ値と、ノードの設定値との比較に基づく、処理実行／非実行の判定処理を実行する。
【０２０６】
図２９に示す２つのノード（ノード１，２）は、ステップＳ５１１，Ｓ５２１の確率制御処理の結果として、いずれもデータ記録処理を実行するとの結論が得られ、ステップＳ５１２，Ｓ５２２において、データ記録処理を実行する。記録対象データは、記録指示装置から受信したデータ記録処理要求パケットに格納されたＦＥＣおよびインタリーブされた加工データである。
【０２０７】
次に、再生指示装置は、ステップＳ５３１において、需要情報提供装置に対して問い合わせを実行し、ステップＳ５３２の応答において、再生予定コンテンツに対する需要情報、さらに必要であれば各ノードの実行可能な伝送方式についての情報を取得する。
【０２０８】
さらに、再生指示装置は、需要情報提供装置から取得した情報に基づいて再生データの伝送方式を決定し、ステップＳ５３３において決定情報に基づいて再生処理要求（命令）パケット（図１２参照）を生成し、ステップＳ５３４において、パケットを各ノードに対して送信する。再生データの伝送方式は、例えば、カルーセル、分散キャッシュ、チェーニング＋クライアント、クライアントサーバ方式のいずれかであり、パケットには決定した伝送方式を実行可能なノードに対するアドレスが設定される。さらにパケットには再生対象となるコンテンツＩＤ等をリクエスト記述として格納し、必要に応じて再生ルール判断条件記述（確率：β）が設定される。
【０２０９】
再生処理要求（命令）パケット（図１２参照）を受信した各ノード、すなわち図２９に示す２つのノード（ノード１，２）は、ステップＳ５４１，Ｓ５５１の確率制御処理、すなわち、図１７を参照して説明した生成乱数と、受信パケット（データ再生処理要求パケット）中の再生ルール判断条件記述として設定された確率：βとの比較に基づく、処理実行／非実行の判定処理、あるいは、図１８を参照して説明したパケット内データに基づくハッシュ値と、ノードの設定値との比較に基づく、処理実行／非実行の判定処理を実行する。
【０２１０】
図２９に示すノード１は、ステップＳ５５１の確率制御処理の結果として、データ再生処理を実行するとの結論が得られ、ステップＳ５５２において、再生処理要求（命令）パケットのリクエスト記述に従って、自ノードの記憶部から対応データを取得し、取得データをペイロードとして格納したパケット（図１３参照）を生成して、ステップＳ５５３において、再生指示装置に対して送信する。
【０２１１】
一方、図２９に示すノード２は、ステップＳ５４１の確率制御処理の結果として、データ再生処理を実行しないとの結論が得られ、データ抽出およびパケット生成、送信を実行せずに処理を終了する。
【０２１２】
なお、図２９には、ノード１からのみのデータが再生指示装置に送信されている構成となっているが、図示しないノード３〜ｎからのデータ格納パケットが再生指示装置に送信され、再生指示装置は、多数のノードから多数のパケットを受信している。
【０２１３】
再生データを格納したパケットを受信した再生指示装置は、ステップＳ５６１において、受信データブロックにデインターリーブをかけ、データの並びを整列させ、さらにデインターリーブされたデータにＦＥＣ復号を施し、元のデータを復元する。
【０２１４】
ＦＥＣおよびデインタリーブ処理に基づくデータ復元処理ついては、先に図１４を参照して説明した通りである。消失パケットが存在しても、デインタリーブ処理により、エラーは、エラー部が大きなデータ領域として存在するバーストエラーではなく、ランダムエラーとなり、ＦＥＣ復号処理により元のデータが復元される。
【０２１５】
次に、図２９のシーケンスチャートにおける、再生指示装置の「需要の問い合わせ」から「加工されたデータの復元」までの詳細処理手順について、図３０のフローチャートを参照して説明する。
【０２１６】
まず、再生指示装置は再生対象コンテンツが決定すると、ステップＳ６０１において、需要情報提供装置に対して問い合わせを実行する。問い合わせには例えばコンテンツの識別子（コンテンツＩＤ）を格納したパケットを生成して需要情報提供装置に対して送信する。
【０２１７】
次に、ステップＳ６０２において、再生指示装置は、需要情報提供装置から受信した需要情報に基づいて、再生データの取得方式、すなわちデータ伝送態様を決定する。これは、先に図２７を参照して説明した需要度と帯域割合との対応関係に基づいて決定する。例えば、前述したように、需要度（人気度）が極めて高いａ以上の領域にあるデータ（コンテンツ）は、カルーセル伝送を１００％実行する。需要度（人気度）がｂのポイントにあるデータ（コンテンツ）は、カルーセル伝送を適用する帯域割合を３０％とし、分散キャッシュからのデータ取得に適用する帯域割合を７０％とするなどである。
【０２１８】
なお、カルーセル、分散キャッシュ、チェーニング＋クライアント、クライアントサーバの各態様について、コンテンツの需要と伝送経路における確率の割合との関係を表した関数を設定し、関数に基づいて伝送態様を決定することも可能である。ｘを図２７の縦軸の需要度（対数軸）とし、ｙを各伝送経路ごとの帯域割合（％：横幅）として設定した関数群：ｙ＝Ｄｎ（ｘ）を設定する。ｎは、例えばカルーセル：ｎ＝１、分散キャッシュ：ｎ＝２、チェーニング＋クライアント：ｎ＝３、クライアントサーバ：ｎ＝４等、態様毎に設定される。
【０２１９】
これらの関数群：ｙ＝Ｄｎ（ｘ）において、任意のｘに対するΣＤｎ（ｘ）＝１になるように、Ｄｎ（ｘ）を定める。需要情報提供装置から受信した需要情報に基づいて、図２７の縦軸に相当する需要度：ｘを取得し、関数群：ｙ＝Ｄｎ（ｘ）にｘを設定して、ｎ＝１〜４それぞれの帯域：ｙ、すなわち、カルーセル、分散キャッシュ、チェーニング＋クライアント、クライアントサーバそれぞれの帯域を決定する。
【０２２０】
すなわち、データ伝送率設定部３１８（図２０参照）は、需要度：ｘと、各伝送方式の帯域割合：ｙと、各データ伝送方式毎の識別値：ｎとにより設定される関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用して、需要情報に基づいて決定される需要度：ｘの値を用いて各データ伝送方式のデータ伝送率決定処理を実行する。あるいは、図２７に示した需要度と帯域割合の対応データに基づいて実行すべき伝送方式の選択および帯域割合の設定を行なう構成としてもよい。
【０２２１】
ｘが大きくなるにしたがって、需要が高い場合有効な伝送経路が選択されるように関数：Ｄｎ（ｘ）は設定され、伝送路の最適な選択が可能となる。しかし、現実にはその伝送路を使用できるノードにデータがない場合もありえるので、データの不足が生じた場合、一般に需要が高いときに有効な伝送路よりも需要が低いときに有効な伝送路のほうが、よりデータがノードに含まれる確率が高くなることから、ｘを調整することによって、確実にデータがある伝送路の割合を増やすことで伝送路を最適化する。この調整処理は、図３０のフローにおけるステップＳ６０６からステップＳ６０９、ステップＳ６０３の処理に対応する。
【０２２２】
図３０の処理フローに戻り説明を続ける。ステップＳ６０２において、需要度に基づく再生対象データの伝送態様を決定すると、ステップＳ６０３において、決定したデータ伝送態様に応じた返信確率を必要に応じて設定する。これは例えば分散キャッシュからのデータ取得の際に再生要求パケットに設定する再生ルール判断条件記述（図１２参照）としての返信確率：βである。その他の伝送方式においても、各伝送方式に応じた返信確率：βｎを必要に応じて設定する。
【０２２３】
次にステップＳ６０４において、再生ルール判断条件記述を設定するとともに、再生対象データの識別情報をリクエスト記述とした再生要求パケット（図１２参照）を送信する。ステップＳ６０５において、再生データをペイロードとしたデータパケット（図１３参照）を受信する。ステップＳ６０６において、復号処理（ＦＥＣ復号）実行可能なデータが取得できたか否かを判定し、取得していれば、ステップＳ６０７において復号処理を実行する。復号処理については、例えば先に図１４を参照して説明したデインタリーブと、ＦＥＣ復号を含む処理が実行される。
【０２２４】
なお、ノードに格納された再生対象データが、ｐ個のブロックにＦＥＣ符号化を施してｑ個のブロックに変換した符号化率ｑ／ｐの符号化処理データであるとき、ネットワークに接続された記録指示装置から指定される記録確率：αと返信確率：βが設定されると、返信ブロック数は、ｑ×α×ｎ×βとなり、返信ブロック数：ｑ×α×ｎ×β＞ブロック数：ｐとなれば、返信データからデータ復元が可能となる。ステップＳ６０６では、返信ブロック数が上記条件を満足するか否かを判定する。満足しない場合は、さらに待機してデータ受信を継続してもよいが、前述したように、ステップＳ６０９において、データ伝送態様の変更を実行して、ステップＳ６０３以下の処理を再実行することも可能である。
【０２２５】
ステップＳ６０６で、復号処理（ＦＥＣ復号）実行可能なデータが取得できたと判定すると、ステップＳ６０７において復号処理を実行し、ステップＳ６０８において、復号データに基づいてデータ再生を実行する。
【０２２６】
次に、図３１を参照して、需要情報提供装置がコンテンツの需要が増加したことを検出し、その検出情報に基づいて、カルーセル伝送を開始する制御を行なう処理シーケンスについて説明する。
【０２２７】
需要情報提供装置は、コンテンツ需要度を、例えば再生指示装置からの需要度問い合わせ受信回数をカウントすることで計測する。再生指示装置からの需要度問い合わせ受信回数が多ければそれだけそのデータ（コンテンツ）の需要が多いものと判定する。需要情報提供装置は、再生指示装置からの需要度問い合わせ受信回数が予め設定した閾値を超えたとき、コンテンツ配信をカルーセル伝送に切り替える制御を実行する。すなわち、同様のコンテンツを受信しているノードが多くなった場合、カルーセル伝送を実行可能なノード、例えば記録指示装置に対してカルーセル伝送を指示する。
【０２２８】
カルーセル伝送指示要求には、需要情報提供装置の受領した特定のデータに対する需要問い合わせのあったデータ（コンテンツ）識別情報、および問い合わせに設定された送信元アドレス情報を含む。カルーセル伝送を実行可能なノードは、需要情報提供装置から受信したカルーセル伝送指示要求に含まれるノードアドレスを包含するアドレス、例えばマルチキャストアドレスを設定して、データ（コンテンツ）識別情報に対応するデータをペイロードとして設定したパケットを生成してカルーセル伝送を開始する。
【０２２９】
需要情報提供装置がコンテンツ需要度に基づいてカルーセル伝送を開始させる処理について、図３１の処理シーケンスに従って説明する。図３１には２つの再生指示装置Ａ，Ｂが同一コンテンツの再生を行なう例を示しているが、さらに多数のノードが同一データ（コンテンツ）の再生を行なう構成でも同様の処理が行なわれる。ステップＳ７１１において、複数の再生指示装置から需要情報提供装置に対して需要情報の問い合わせが行われる。この需要情報問い合わせには、問い合わせ対象となるデータ（コンテンツ）の識別子が含まれる。需要情報提供装置は、問い合わせログ情報として、問い合わせ対象のデータ（コンテンツ）識別子と、問い合わせ元情報としての問い合わせノードのアドレス情報を格納する。
【０２３０】
ステップＳ７１２において、需要情報提供装置は問い合わせ元の再生指示装置に対する応答処理として、需要情報を提供する。ステップＳ７１３において、各再生指示装置は、需要情報に基づいてデータの伝送方式を決定し、再生ルール判断条件記述としての返信確率を設定した再生要求パケットを生成して、ステップＳ７１４においてパケットを送信する。
【０２３１】
一方、需要情報提供装置は、再生指示装置からの需要度問い合わせ受信回数をカウントして、需要度問い合わせ受信回数が予め設定した閾値を超えたと判断すると、ステップＳ７１６において、カルーセル伝送を実行可能なノード５０１に対して、カルーセル伝送開始要求を送信する。
【０２３２】
カルーセル伝送開始要求には、需要情報提供装置の受領した特定のデータに対する需要問い合わせのあったデータ（コンテンツ）識別情報、および問い合わせに設定された送信元アドレス情報を含む。
【０２３３】
カルーセル伝送を実行可能なノード５０１は、ステップＳ７１７において、需要情報提供装置から受信したカルーセル伝送指示要求に含まれるノードアドレスを包含するアドレス、例えばマルチキャストアドレスを設定して、データ（コンテンツ）識別情報に対応するデータをペイロードとして設定したパケットを生成してカルーセル伝送を開始する。
【０２３４】
再生指示装置は、ステップＳ７１８において、受信データブロックにデインターリーブをかけ、データの並びを整列させ、さらにデインターリーブされたデータにＦＥＣ復号を施し、元のデータを復元する。ＦＥＣおよびデインタリーブ処理に基づくデータ復元処理ついては、先に図１４を参照して説明した通りである。消失パケットが存在しても、デインタリーブ処理により、エラーは、エラー部が大きなデータ領域として存在するバーストエラーではなく、ランダムエラーとなり、ＦＥＣ復号処理により元のデータが復元される。
【０２３５】
このように、需要情報提供装置がコンテンツの需要が増加したことを検出し、その検出情報に基づいて、カルーセル伝送を開始する制御を行なうことにより、個々の再生指示装置が異なる伝送方式で再生対象データを受信している状態をカルーセル伝送に切り替えることが可能となり、ネットワークトラフィックの減少、データ伝送の効率化が可能となる。
【０２３６】
［７．情報処理装置のハード構成］
次に、上述の実施例において説明したノード、記録指示装置、再生指示装置、および需要情報提供装置を構成する情報処理装置のハード構成例について説明する。
【０２３７】
図３２に、制御手段としてＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備えた情報処理装置例を示す。図３２に示す構成について説明する。ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９０１は、各種プログラムを実行するプロセッサである。ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ−Ｍｅｍｏｒｙ）９０２は、ＣＰＵ９０１が実行するプログラム、あるいは演算パラメータとしての固定データを格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０３は、ＣＰＵ９０１の処理において実行されるプログラム、およびプログラム処理において適宜変化するパラメータの格納エリア、ワーク領域として使用される。
【０２３８】
ＨＤＤ９０４はハードディスクの制御を実行し、ハードディスクに対する各種データ、プログラムの格納処理および読み出し処理を実行する。エンコード／デコード処理部９０５は、コンテンツ等の送信データのエンコード処理、受信データのデコード処理を前述した処理に従って実行する。
【０２３９】
バス９２１はＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｎｅｔ／Ｉｎｔｅｒｆａｃｅ）バス等により構成され、各モジュール、入出力インタフェース８２２を介した各入出力装置とのデータ転送を可能にしている。
【０２４０】
入力部９１１は、例えばキーボード、ポインティングデバイスを含む入力部である。キーボードやマウス等を介して入力部９１１が操作された場合、あるいは、通信部９１３からのデータを受信した場合などにＣＰＵ９０１に指令が入力され、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０２に格納されているプログラムを実行する。出力部９１２は、例えばＣＲＴ、液晶ディスプレイ等であり、各種情報をテキストまたはイメージ等により表示する。
【０２４１】
通信部９１３は情報処理装置間の通信、あるいは、その他のエンティテイとの通信処理を実行し、ＣＰＵ９０１の制御の下に、各記憶部から供給されたデータ、あるいはＣＰＵ９０１、エンコード／デコード処理部９０５によって処理されたデータを送信したり、他エンティテイからのデータを受信する処理を実行する。
【０２４２】
ドライブ９１４は、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  ＲｅａｄＯｎｌｙ  Ｍｅｍｏｒｙ），ＭＯ（Ｍａｇｎｅｔｏ  ｏｐｔｉｃａｌ）ディスク，ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体９１５の記録再生を実行するドライブであり、各リムーバブル記録媒体９１５からのプログラムまたはデータ再生、リムーバブル記録媒体９１５に対するプログラムまたはデータ格納を実行する。
【０２４３】
各記憶媒体に記録されたプログラムまたはデータを読み出してＣＰＵ９０１において実行または処理を行なう場合は、読み出したプログラム、データは入出力インタフェース９２２、バス９２１を介して例えば接続されているＲＡＭ９０３に供給される。
【０２４４】
なお、明細書中において説明した各処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが専用のハードウェアに組み込まれているコンピュータ、又は各種のプログラムをインストールすることで各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、フレキシブルディスクやＣＤ−ＲＯＭ等のプログラム読み取り可能な記録媒体にプログラムを格納して提供してもよいし、インターネットなどの通信網を介してプログラムをダウンロードしてもよい。
【０２４５】
具体的には、プログラムは記録媒体としてのハードディスクやＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ），ＭＯ（Ｍａｇｎｅｔｏ  ｏｐｔｉｃａｌ）ディスク，ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０２４６】
また、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０２４７】
なお、ノード、記録指示装置、再生指示装置を構成する情報処理装置としては、カムコーダ、パーソナルビデオレコーダーやホームゲートウェイなどが考えられるが、データを記録する記録部と、所定の演算を行う制御部と、データの送受信を行うネットワークインターフェースを有していればその他の構成を備える装置であってもよい。
【０２４８】
また、記録確率α、返信確率βをパケット中に記録したが、記録確率α、返信確率βを任意の記録装置、若しくはパケットなどに記録し、各ノードがその値を参照するようにしてもよい。また、ＦＥＣ符号化としてリードトルネード符号化方式を利用した場合には、インターリーブ処理を省略することもできる。
【０２４９】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【０２５０】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０２５１】
【発明の効果】
以上、説明してきたように、本発明の構成によれば、ネットワーク接続されたノードに対してデータ再生処理要求を送信するとともに、返信データに基づくデータ再生処理を実行する構成において、データの需要度（人気度）に応じて、データの伝送方式として適用する１以上のデータ伝送方式を選択するとともに選択各方式のデータ伝送率を決定して、決定伝送方式に従ったデータ伝送を行なう構成としたので、例えば、カルーセル伝送方式、チェーニング伝送方式、分散キャッシュ方式、クライアントサーバ方式等からのデータ伝送方式の選択、組み合わせが可能となり、効率的で確実なデータ伝送方式によるデータ伝送が実現される。
【０２５２】
本発明の構成によれば、再生処理を実行する際製指示装置は、再生対象データの需要度と、適用データ伝送方式のデータ伝送率としての帯域割合との対応データを有し、対応データに従って再生対象データの需要度情報に基づくデータ伝送方式の選択および選択各方式のデータ伝送率の決定処理を実行するか、あるいは、需要度：ｘと、各伝送方式ごとの帯域割合：ｙと、各データ伝送方式の識別値：ｎとして設定する関数群：ｙ＝Ｄｎ（ｘ）（ただし、ΣＤｎ（ｘ）＝１）を適用し、需要情報に基づいて決定する需要度：ｘの値に従って各データ伝送方式のデータ伝送率決定処理を実行する構成としたので、需要度情報に基づく伝送方式の決定処理を効率的に実行することが可能となる。
【０２５３】
さらに、本発明の構成によれば、再生対象データの需要度が予め設定された閾値より高い場合は、適用データ伝送方式をカルーセル伝送方式として設定する処理を実行する構成としたので、多数のノードからのデータ取得要求に対応したデータ転送に適したカルーセル伝送を自動的に選択実行する処理が可能となる。
【０２５４】
さらに、本発明の構成によれば、ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置を構成し、ネットワーク接続ノードから受信する需要度情報取得要求数をカウントし、該カウント情報に基づく各データ対応の需要度情報を生成し提供する構成としたので、リアルタイムでの需要度情報が把握可能であり、最新の需要度情報を提供可能となる。
【０２５５】
さらに、本発明の構成によれば、ネットワークを介した伝送データの需要度情報を提供する需要情報提供装置の計測するカウント情報に基づくデータ対応需要度が、予め設定した閾値以上となった場合に、カルーセル伝送実行ノードに対して、閾値以上となった需要度に対応するデータのカルーセル伝送処理要求の送信制御を実行する構成としたので、需要度の増加に即座に対応した最適なデータ伝送制御が実現される。
【図面の簡単な説明】
【図１】本発明の適用可能な分散型ストレージシステム構成例について説明する図である。
【図２】本発明の適用可能なネットワーク構成例について説明する図である。
【図３】ネットワーク接続される情報処理装置（ノード）の構成について説明する図である。
【図４】記録指示装置の構成について説明する図である。
【図５】記録指示装置において実行するデータのＦＥＣ符号化処理およびインタリーブ処理について説明する図である。
【図６】記録指示装置から送信するデータ記録処理要求パケットの構成について説明する図である。
【図７】記録指示装置からノードに対するデータ記録処理要求パケットの送信処理について説明する図である。
【図８】記録指示装置からデータ記録処理要求パケットを受信したノードにおける自律的な処理実行判定処理を含む処理手順を説明するフロー図である。
【図９】記録指示装置からデータ記録処理要求パケットを受信したノードにおける自律的な処理実行判定処理を含む処理手順を説明するフロー図である。
【図１０】記録指示装置からデータ記録処理要求パケットを受信したノードにおける自律的な処理実行判定において生成するハッシュ値の例について説明する図である。
【図１１】再生指示装置の構成について説明する図である。
【図１２】再生指示装置から送信するデータ再生処理要求パケットの構成について説明する図である。
【図１３】データ再生処理要求パケットを受信したノードから再生指示装置に対して送信するパケットの構成について説明する図である。
【図１４】再生指示装置において実行するデータのデインタリーブ処理およびＦＥＣ復号処理について説明する図である。
【図１５】再生指示装置からノードに対するデータ再生処理要求パケットの送信処理について説明する図である。
【図１６】再生指示装置からデータ再生処理要求パケットを受信したノードからのデータ格納パケットの送信処理について説明する図である。
【図１７】再生指示装置からデータ再生処理要求パケットを受信したノードにおける自律的な処理実行判定処理を含む処理手順を説明するフロー図である。
【図１８】再生指示装置からデータ再生処理要求パケットを受信したノードにおける自律的な処理実行判定処理を含む処理手順を説明するフロー図である。
【図１９】記録指示装置からのデータ記録処理要求、ノードにおけるデータ記録処理、および再生指示装置からのデータ再生処理要求、ノードにおけるデータ抽出送信処理、再生指示装置における再生処理について説明するシーケンス図である。
【図２０】再生指示装置の構成例を示す図である。
【図２１】再生処理要求（命令）パケットをネットワーク接続された各ノードに送信する処理を説明する図である。
【図２２】再生処理要求（命令）パケットの返事として各ノードから再生指示装置にデータが送信される様子を示す図である。
【図２３】再生指示装置が再生に必要なデータを取得する方式および各方式の特性について記す図である。
【図２４】カルーセル伝送およびその他の伝送方式の併用による帯域削減効果について説明する図である。
【図２５】再生指示装置との距離に応じたマルチキャストアドレスを設定するために適用するアドレステーブルの例を示す図である。
【図２６】データ（コンテンツ）ＩＤと、データ送信ノードアドレスを設定したアドレステーブルの例を示す図である。
【図２７】縦軸に対数軸として示すデータ需要（人気度）、横軸にデータ取得の各方式を適用する割合（帯域割合）を示した需要と帯域割合の対応例を示す図である。
【図２８】需要度情報を提供する需要情報提供装置をネットワーク上に設定した例を示す図である。
【図２９】記録指示装置からノードに対するデータ記録処理要求の発行、ノードにおけるデータ記録処理、再生指示装置から需要情報提供装置に対する問い合わせおよび応答情報受信、さらに応答情報に基づくノードに対するのデータ再生処理要求の発行、ノードにおけるデータ抽出、パケット送信処理の一連の処理シーケンスについて説明する図である。
【図３０】再生指示装置の「需要の問い合わせ」から「加工されたデータの復元」までの詳細処理手順について示すフロー図である。
【図３１】需要情報提供装置がコンテンツの需要が増加したことを検出し、その検出情報に基づいて、カルーセル伝送を開始する制御を行なう処理シーケンスについて説明する図である。
【図３２】本発明の情報処理装置のハードウェア構成例について説明する図である。
【符号の説明】
１００  ネットワーク
１０１  記録指示装置
１０２  再生指示装置
１１１〜１１５  ノード
１１０  ネットワーク
１２１〜１２６  情報処理装置
２００  情報処理装置（ノード）
２０１  ルール判断処理部
２０２  データ処理部
２０３  パケット処理部
２０４  データ送受信部
２５０  記録指示装置
２５１  データ入力部
２５２  データ加工部
２５３  ルール判断条件設定部
２５４  パケット生成部
２５５  ネットワークインタフェース
２７０  再生指示装置
２７１  ネットワークインタフェース
２７２  データ要求パケット生成部
２７３  ルール判断条件設定部
２７４  パケット処理部
２７５  データ復元処理部
２７６  データ処理部
３１０  再生指示装置
３１１  ネットワークインタフェース
３１２  データ要求パケット生成部
３１３  ルール判断条件設定部
３１４  パケット処理部
３１５  データ復元処理部
３１６  データ処理部
３１７  データ記憶部
３１８  データ伝送率設定部
３５１  再生指示装置
３７１〜３７５  ノード
４１１  再生指示装置
４２１  需要情報提供装置
４３１〜４３５  ノード
９０１  ＣＰＵ
９０２  ＲＯＭ
９０３  ＲＡＭ
９０４  ＨＤＤ
９０５  エンコード／デコード処理部
９１１  入力部
９１２  出力部
９１３  通信部
９１４  ドライブ
９１５  リムーバブル記憶媒体
９２１  バス
９２２  入出力インタフェース
【図１】
2004180092.tif 000003
【図２】
2004180092.tif 000004
【図３】
2004180092.tif 000005
【図４】
2004180092.tif 000006
【図５】
2004180092.tif 000007
【図６】
2004180092.tif 000008
【図７】
2004180092.tif 000009
【図８】
2004180092.tif 000010
【図９】
2004180092.tif 000011
【図１０】
2004180092.tif 000012
【図１１】
2004180092.tif 000013
【図１２】
2004180092.tif 000014
【図１３】
2004180092.tif 000015
【図１４】
2004180092.tif 000016
【図１５】
2004180092.tif 000017
【図１６】
2004180092.tif 000018
【図１７】
2004180092.tif 000019
【図１８】
2004180092.tif 000020
【図１９】
2004180092.tif 000021
【図２０】
2004180092.tif 000022
【図２１】
2004180092.tif 000023
【図２２】
2004180092.tif 000024
【図２３】
2004180092.tif 000025
【図２４】
2004180092.tif 000026
【図２５】
2004180092.tif 000027
【図２６】
2004180092.tif 000028
【図２７】
2004180092.tif 000029
【図２８】
2004180092.tif 000030
【図２９】
2004180092.tif 000031
【図３０】
2004180092.tif 000032
【図３１】
2004180092.tif 000033
【図３２】
2004180092.tif 000034