(57)【要約】【課題】配信完了期限が予め設定されているコンテンツであっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たるリクエストノードに配信することが可能な情報処理装置を提供する。【解決手段】ネットワークを介して接続されたコンテンツノードから、配信完了期限が設定されているコンテンツの配信を受けるリクエストノードにおいて、当該配信完了期限までの残り時間を検出し、検出された残り時間全体に渡ってそのコンテンツが配信され且つ当該残り時間内に配信完了するために必要なダウンロード速度を、その残り時間に基づいて決定し、その決定されたダウンロード速度を示す情報を含むコンテンツ要求情報をリクエストノードに送信する。【選択図】図１
2008250370.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された配信元情報処理装置から、配信完了期限が予め設定されている配信情報の配信を受ける情報処理装置において、
前記配信完了期限までの残り時間を検出する検出手段と、
配信対象となっている前記配信情報が、前記検出された残り時間全体に渡って当該情報処理装置に対して配信され且つ当該残り時間内に配信完了するために必要な当該配信情報の配信態様を、前記検出された残り時間に基づいて決定する決定手段と、
前記決定された配信態様を示す態様情報を含み且つ前記配信を要求する要求情報を、前記配信元情報処理装置に送信する要求手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記配信態様は前記ネットワーク内における前記配信情報の配信速度であり、
配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する未配信情報量検出手段を備え、
前記決定手段は、前記検出された未配信情報量を前記残り時間で除した速度を前記配信速度として決定し、
更に前記要求手段は、前記決定された配信速度を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に送信することを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記配信情報は、複数の部分配信情報により構成され、
前記配信態様は、前記ネットワーク内における前記配信情報の配信所要時間であり、
配信されるべき前記配信情報のうち未配信の前記部分配信情報の数を未配信数として検出する未配信数検出手段を備え、
前記決定手段は、前記検出された未配信数を前記残り時間で除した時間を未配信の前記部分配信情報毎の前記配信所要時間として決定し、
前記要求手段は、前記決定された配信所要時間内に未配信の前記部分配信情報の配信が完了するための前記要求情報を、前記配信元情報処理装置に送信することを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
前記配信情報は複数の前記配信元情報処理装置から配信され、
前記配信態様は実際に前記配信情報の配信元となる前記配信元情報処理装置を示すものであり、
実際に前記配信情報の配信に供されていない前記配信元情報処理装置を検出する情報処理装置検出手段を備え、
前記決定手段は、前記検出された情報処理装置を新たな配信元として決定し、
前記要求手段は、前記決定された新たな配信元情報処理装置を加えた複数の前記配信元情報処理装置から前記配信情報が夫々配信されるように、前記要求情報を実際に配信元となる各前記配信元情報処理装置に送信することを特徴とする情報処理装置。
【請求項５】
請求項１に記載の情報処理装置において、
前記配信態様は、前記配信情報を分割して得られる配信情報ブロック一つ分の情報量であり、
配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する未配信情報量検出手段と、
前記配信完了期限までに前記配信情報ブロックの配信を要求することが可能な回数である要求可能回数を検出する回数検出手段と、
を備え、
前記決定手段は、前記検出された未配信情報量を前記検出された要求可能回数で除した値を前記一つ分の情報量として決定し、
前記要求手段は、前記決定された一つ分の情報量を前記態様情報として含み且つ当該一つ分の情報量を有する前記配信情報ブロックの配信を要求する旨の前記要求情報を、前記配信元情報処理装置に送信することを特徴とする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置において、
前記配信態様は、前記配信情報を分割して得られる配信情報ブロックの配信を要求する旨の前記要求情報を複数回前記配信元情報処理装置に対して送信する際の送信間隔であり、
配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する未配信情報量検出手段を備え、
前記決定手段は、前記検出された未配信情報量を前記配信情報ブロック一つ分として予め設定されている情報量で除した値の逆数を前記送信間隔として決定し、
前記要求手段は、前記配信情報ブロック一つ分の前記配信情報の配信を要求する旨の前記要求情報を、前記決定された送信間隔で前記配信元情報処理装置に送信することを繰り返すことを特徴とする情報処理装置。
【請求項７】
請求項１から６のいずれか一項に記載の情報処理装置において、
前記決定手段は、前記配信完了期限までに前記配信が完了するように、現在の前記検出された残り時間に基づいて新たな前記配信態様を再決定し、
前記要求手段は、前記再決定された新たな配信態様を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に再度送信することを特徴とする情報処理装置。
【請求項８】
請求項７に記載の情報処理装置において、
前記決定手段は、予め設定された期間毎に前記配信態様の再決定を行うことを繰り返すことを特徴とする情報処理装置。
【請求項９】
請求項７に記載の情報処理装置において、
前記決定手段は、予め設定された量の前記配信情報の配信が完了する度に前記配信態様の再決定を行うことを繰り返すことを特徴とする情報処理装置。
【請求項１０】
請求項７に記載の情報処理装置において、
前記決定手段は、前記配信情報の配信経路となっている前記ネットワークにおいて前記配信に対する障害が発生したとき、前記配信態様の再決定を行うことを繰り返すことを特徴とする情報処理装置。
【請求項１１】
請求項１から１０のいずれか一項に記載の情報処理装置において、
当該情報処理装置において、前記配信情報以外の他の情報の授受を前記ネットワーク内において実行している場合に、当該授受を中断するか否かを判定する中断判定手段と、
前記中断判定手段により前記授受を中断すべきと判定されたとき、当該授受を中断する中断手段と、
を備えることを特徴とする情報処理装置。
【請求項１２】
請求項１１に記載の情報処理装置において、
前記中断判定手段は、前記検出された残り時間が、前記配信情報の配信が可能となってから前記配信完了期限までの期間に対して予め設定された割合以下の時間となったとき、前記授受を中断すると判定することを特徴とする情報処理装置。
【請求項１３】
請求項１１に記載の情報処理装置において、
前記中断判定手段は、前記配信情報の実際の配信速度が予め設定されている閾値配信速度以下となったとき、前記授受を中断すると判定することを特徴とする情報処理装置。
【請求項１４】
請求項１１に記載の情報処理装置において、
前記配信情報は、複数の部分配信情報により構成され、
未配信の前記部分配信情報の配信に充てることが可能な時間である充当可能時間を検出する充当可能時間検出手段を備え、
前記中断判定手段は、いずれかの前記部分配信情報に対応する前記充当可能時間が予め設定されている閾値時間以下となったとき、前記授受を中断すると判定することを特徴とする情報処理装置。
【請求項１５】
コンピュータを、請求項１から１４のいずれか一項に記載の情報処理装置として機能させることを特徴とする情報処理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び当該情報処理装置用の情報処理プログラムの技術分野に属し、より詳細には、インターネット等のネットワークを介して複数の情報処理装置が接続されなるネットワークシステムを構成する当該情報処理装置及び当該情報処理装置用の情報処理プログラムの技術分野に属する。
【背景技術】
【０００２】
近年、インターネット等のネットワーク技術は著しく進歩しつつあり、その中で、例えば下記特許文献１に開示されている如きコンテンツ配信システムに関する研究が行われている。
【０００３】
ここで、当該コンテンツ配信システムにおいて、例えば映画等のコンテンツを配信する場合には、当該コンテンツに相当する動画情報等を蓄積／記憶しているコンテンツノードから、当該コンテンツの視聴を希望する者により操作されるリクエストノードに対して当該動画情報等が配信（伝送）される。なお、当該「コンテンツノード」の定義付けについては、例えば下記特許文献１の明細書段落番号［００７１］を参照することができ、また当該「リクエストノード」の定義付けについては、例えば下記特許文献１の明細書段落番号［００６４］及び［００６５］を参照することができる。
【０００４】
そして、当該配信時の配信速度については、例えば上記リクエストノードにおけるコンテンツの配信が途切れない程度の配信速度で当該配信が実行されれば、実用上の問題はなかった。
【０００５】
一方、上記コンテンツ配信システムにより配信されるコンテンツの中には、当該配信先たるリクエストノードへの配信完了期限が定められているものがある。具体的には、例えばある映画の公開前にその予告編に相当する動画情報を配信する場合、その予告編たる動画情報は、対応する映画の公開までに当該映画の視聴を希望する者により操作されるリクエストノードにその配信を完了する必要がある。
【０００６】
そして、上述した配信完了期限が定められているコンテンツの配信は、実際にそのコンテンツが視聴されているか否かに拘わらず実行される場合が多いが、下記特許文献１等の従来技術においては、当該配信完了期限が定められているコンテンツの配信速度をどのように設定するかについては考慮されていなかった。
【特許文献１】特開２００６−１９７４００
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで、上記配信完了期限が定められているコンテンツの配信において、その配信速度を必要以上に速く設定すると、その配信を担うネットワークとしての負荷の増大や、当該配信元たるコンテンツノードにおける負荷の増大を招くと言う問題点があった。
【０００８】
一方、当該コンテンツの配信について配信速度が遅くなってしまうと、その配信完了期限に間に合わなくなる場合があると言う問題点もある。
【０００９】
そこで、本発明は上記の各問題点に鑑みて為されたもので、その目的の一例は、配信完了期限が予め設定されているコンテンツであっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たるリクエストノードに配信することが可能な情報処理装置及び当該情報処理装置用の情報処理プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、請求項１に記載の発明は、ネットワークを介して接続されたコンテンツホルダ等の配信元情報処理装置から、配信完了期限が予め設定されている配信情報の配信を受ける情報処理装置において、前記配信完了期限までの残り時間を検出する制御部等の検出手段と、配信対象となっている前記配信情報が、前記検出された残り時間全体に渡って当該情報処理装置に対して配信され且つ当該残り時間内に配信完了するために必要な当該配信情報の配信態様を、前記検出された残り時間に基づいて決定する制御部等の決定手段と、前記決定された配信態様を示す態様情報を含み且つ前記配信を要求する要求情報を、前記配信元情報処理装置に送信する通信部等の要求手段と、を備える。
【００１１】
よって、配信完了期限までの残り時間全体に渡って配信情報が配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示す態様情報を含ませて配信要求をするので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要な配信情報の配信を当該配信完了期限までに確実に完了させることができる。
【００１２】
上記の課題を解決するために、請求項２に記載の発明は、請求項１に記載の情報処理装置において、前記配信態様は前記ネットワーク内における前記配信情報の配信速度であり、配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する制御部等の未配信情報量検出手段を備え、前記決定手段は、前記検出された未配信情報量を前記残り時間で除した速度を前記配信速度として決定し、更に前記要求手段は、前記決定された配信速度を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に送信するように構成される。
【００１３】
よって、未配信の配信情報の情報量を残り時間で除することによりその後の配信速度を決定して要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
【００１４】
上記の課題を解決するために、請求項３に記載の発明は、請求項１に記載の情報処理装置において、前記配信情報は、複数の部分配信情報により構成され、前記配信態様は、前記ネットワーク内における前記配信情報の配信所要時間であり、配信されるべき前記配信情報のうち未配信の前記部分配信情報の数を未配信数として検出する制御部等の未配信数検出手段を備え、前記決定手段は、前記検出された未配信数を前記残り時間で除した時間を未配信の前記部分配信情報毎の前記配信所要時間として決定し、前記要求手段は、前記決定された配信所要時間内に未配信の前記部分配信情報の配信が完了するための前記要求情報を、前記配信元情報処理装置に送信するように構成される。
【００１５】
よって、未配信の部分配信情報の数で残り時間を除することによりその後の部分配信情報毎の配信所要時間を決定し、当該配信所要時間内に対応する部分配信情報の配信が完了するように要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
【００１６】
上記の課題を解決するために、請求項４に記載の発明は、請求項１に記載の情報処理装置において、前記配信情報は複数の前記配信元情報処理装置から配信され、前記配信態様は実際に前記配信情報の配信元となる前記配信元情報処理装置を示すものであり、実際に前記配信情報の配信に供されていない前記配信元情報処理装置を検出する制御部等の情報処理装置検出手段を備え、前記決定手段は、前記検出された情報処理装置を新たな配信元として決定し、前記要求手段は、前記決定された新たな配信元情報処理装置を加えた複数の前記配信元情報処理装置から前記配信情報が夫々配信されるように、前記要求情報を実際に配信元となる各前記配信元情報処理装置に送信するように構成される。
【００１７】
よって、未使用の配信元情報処理装置があるとき、それを加えた複数の配信元情報処理装置から配信情報が配信されるように要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
【００１８】
上記の課題を解決するために、請求項５に記載の発明は、請求項１に記載の情報処理装置において、前記配信態様は、前記配信情報を分割して得られる配信情報ブロック一つ分の情報量であり、配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する制御部等の未配信情報量検出手段と、前記配信完了期限までに前記配信情報ブロックの配信を要求することが可能な回数である要求可能回数を検出する制御部等の回数検出手段と、を備え、前記決定手段は、前記検出された未配信情報量を前記検出された要求可能回数で除した値を前記一つ分の情報量として決定し、前記要求手段は、前記決定された一つ分の情報量を前記態様情報として含み且つ当該一つ分の情報量を有する前記配信情報ブロックの配信を要求する旨の前記要求情報を、前記配信元情報処理装置に送信するように構成される。
【００１９】
よって、未配信の配信情報の情報量を配信情報ブロックの配信要求可能回数で除して得られる情報量を、その後の配信情報ブロック一つ分の情報量と決定して要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
【００２０】
上記の課題を解決するために、請求項６に記載の発明は、請求項１に記載の情報処理装置において、前記配信態様は、前記配信情報を分割して得られる配信情報ブロックの配信を要求する旨の前記要求情報を複数回前記配信元情報処理装置に対して送信する際の送信間隔であり、配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する制御部等の未配信情報量検出手段を備え、前記決定手段は、前記検出された未配信情報量を前記配信情報ブロック一つ分として予め設定されている情報量で除した値の逆数を前記送信間隔として決定し、前記要求手段は、前記配信情報ブロック一つ分の前記配信情報の配信を要求する旨の前記要求情報を、前記決定された送信間隔で前記配信元情報処理装置に送信するように構成される。
【００２１】
よって、未配信の配信情報の情報量を配信情報ブロック一つ分の情報量で除した後に逆数化して得られる送信間隔をその後の配信情報ブロックの送信間隔と決定し、当該決定された送信間隔をもって配信情報ブロックの配信を要求することを繰り返すので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
【００２２】
上記の課題を解決するために、請求項７に記載の発明は、請求項１から６のいずれか一項に記載の情報処理装置において、前記決定手段は、前記配信完了期限までに前記配信が完了するように、現在の前記検出された残り時間に基づいて新たな前記配信態様を再決定し、前記要求手段は、前記再決定された新たな配信態様を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に再度送信するように構成される。
【００２３】
よって、新たな配信態様を再決定し、それを示す態様情報を含む要求情報を再度送信するので、ネットワーク等の状況の変化により配信完了期限までに配信完了させるための配信態様が変化しても、それに追随して確実に配信を配信完了期限までに完了させることができる。
【００２４】
上記の課題を解決するために、請求項８に記載の発明は、請求項７に記載の情報処理装置において、前記決定手段は、予め設定された期間毎に前記配信態様の再決定を行うことを繰り返すように構成される。
【００２５】
よって、予め設定された期間毎に新たな配信態様を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
【００２６】
上記の課題を解決するために、請求項９に記載の発明は、請求項７に記載の情報処理装置において、前記決定手段は、予め設定された量の前記配信情報の配信が完了する度に前記配信態様の再決定を行うように構成される。
【００２７】
よって、予め設定された量の配信が完了する度に新たな配信態様を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
【００２８】
上記の課題を解決するために、請求項１０に記載の発明は、請求項７に記載の情報処理装置において、前記決定手段は、前記配信情報の配信経路となっている前記ネットワークにおいて前記配信に対する障害が発生したとき、前記配信態様の再決定を行うように構成される。
【００２９】
よって、配信経路となっているネットワーク上に障害が発生したとき新たな配信態様を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
【００３０】
上記の課題を解決するために、請求項１１に記載の発明は、請求項１から１０のいずれか一項に記載の情報処理装置において、当該情報処理装置において、前記配信情報以外の他の情報の授受を前記ネットワーク内において実行している場合に、当該授受を中断するか否かを判定する制御部等の中断判定手段と、前記中断判定手段により前記授受を中断すべきと判定されたとき、当該授受を中断する制御部等の中断手段と、を備える。
【００３１】
よって、配信情報の配信以外に他の情報の授受をネットワーク内において実行しているとき、当該他の情報の授受を中断すべきか否かを判定し、当該中断すべき時は当該他の情報の授受を中断して配信情報の配信のみを行うので、必要に応じて配信情報の配信を優先化して配信完了期限までにその配信を完了させることができる。
【００３２】
上記の課題を解決するために、請求項１２に記載の発明は、請求項１１に記載の情報処理装置において、前記中断判定手段は、前記検出された残り時間が、前記配信情報の配信が可能となってから前記配信完了期限までの期間に対して予め設定された割合以下の時間となったとき、前記授受を中断すると判定するように構成される。
【００３３】
よって、検出された現在残り時間が、配信可能となってから配信完了期限までの期間に対して予め設定された割合以下となったとき、他の情報の授受を中断すると判定するので、実際に残り時間が短くなったときに他の情報の授受を中断することで、効率的に他の情報の授受を中断して配信情報の配信を優先させることができる。
【００３４】
上記の課題を解決するために、請求項１３に記載の発明は、請求項１１に記載の情報処理装置において、前記中断判定手段は、前記配信情報の実際の配信速度が予め設定されている閾値配信速度以下となったとき、前記授受を中断すると判定するように構成される。
【００３５】
よって、配信情報の実際の配信速度が閾値配信速度以下となったときに、可及的速やかに配信情報の配信を実行すべき状態であるとして他の情報の授受を中断すると判定するので、効率的に他の情報の授受を中断して配信情報の配信を優先させることができる。
【００３６】
上記の課題を解決するために、請求項１４に記載の発明は、請求項１１に記載の情報処理装置において、前記配信情報は、複数の部分配信情報により構成され、未配信の前記部分配信情報の配信に充てることが可能な時間である充当可能時間を検出する制御部等の充当可能時間検出手段を備え、前記中断判定手段は、いずれかの前記部分配信情報に対応する前記充当可能時間が予め設定されている閾値時間以下となったとき、前記授受を中断すると判定するように構成される。
【００３７】
よって、いずれかの部分配信情報に対応する充当可能時間が閾値時間以下となったときに、可及的速やかに配信情報の配信を実行すべき状態であるとして他の情報の授受を中断すると判定するので、効率的に他の情報の授受を中断して配信情報の配信を優先させることができる。
【００３８】
上記の課題を解決するために、請求項１５に記載の発明は、コンピュータを、請求項１から１４のいずれか一項に記載の情報処理装置として機能させる。
【００３９】
よって、配信完了期限までの残り時間全体に渡って配信情報が配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示す態様情報を含ませて配信要求をするように当該コンピュータが機能するので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要な配信情報の配信を当該配信完了期限までに確実に完了させることができる。
【発明の効果】
【００４０】
本発明によれば、配信完了期限までの残り時間全体に渡って配信情報が配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示す態様情報を含ませて配信要求をするので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要な配信情報の配信を当該配信完了期限までに確実に完了させることができる。
【００４１】
従って、配信完了期限が予め設定されている配信情報であっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たる情報処理装置に配信することができる。
【発明を実施するための最良の形態】
【００４２】
次に、本発明を実施するための最良の形態について図面に基づいて説明する。なお、以下に説明する実施形態は、上記特許文献１に記載の発明と同様のコンテンツ配信システム（すなわち、映画や音楽等のコンテンツを配信するいわゆるＰ２Ｐ（Pear-to-Pear）型のコンテンツ配信システム）に対して本発明を適用した場合の実施の形態である。
【００４３】
（Ｉ）本発明の原理
初めに、本発明に係る実施形態について具体的に説明する前に、本発明の原理について説明する。
【００４４】
先ず、本発明におけるコンテンツ配信システムに係るハードウエア構成、当該コンテンツ配信のための仕組み（当該コンテンツの配信のために必要なメッセージの授受に用いられる分散ハッシュテーブル（ＤＨＴ（Distributed Hash Table））は、基本的には上記特許文献１に開示されているコンテンツ配信システムに係るハードウエア構成及びコンテンツ配信のための仕組みと同様のものが適用される。すなわち、本実施形態のコンテンツ配信システムに係るハードウエア構成及びＤＨＴは、具体的には、例えば上記特許文献１の明細書段落番号［００３９］乃至［００７２］並びに図１乃至図５に記載されているハードウエア構成及びＤＨＴが用いられる。
【００４５】
上述したように、配信完了期限が予め定められているコンテンツの配信については、上記特許文献１に記載の発明ではなんら考慮されていない。
【００４６】
これに対し、以下に実施形態を説明する本発明では、図１（ａ）に例示するように、あるコンテンツの取得開始が各ノードにおいて可能となったタイミング以降そのコンテンツの配信完了期限までがコンテンツ取得期間とされ、その間における任意のタイミングから各リクエストノードにおけるコンテンツの取得が開始される。
【００４７】
ここで、当該コンテンツの取得は、各リクエストノード夫々の使用者の都合等により、当該各リクエストノード夫々において異なるタイミング（例えば図１（ａ）に例示するタイミングＴaとタイミングＴb）で開始されるのが通常である。これに対し、当該コンテンツ自体については、いずれのリクエストノードに配信されるものであってもその配信完了期限が定められている。
【００４８】
そこで、本発明では、各リクエストノード毎に、実際の取得開始からそのコンテンツに係る配信完了期限までの残り時間を求め、その多少に応じてその残り時間を最大限利用するように当該コンテンツの配信態様を変更し、当該変更後の配信態様にて必要なコンテンツの配信を受けるように、当該コンテンツの配信元であるコンテンツノードに対する要求情報（後述するクエリ）を送出する。
【００４９】
このとき、当該配信態様として具体的には、例えば図１（ａ）に例示するように各リクエストノード毎にその取得開始タイミング（例えば図１（ａ）に例示するタイミングＴaとタイミングＴb）に応じた配信速度（ダウンロード速度。例えば図１（ａ）に例示する速度Ｖaと速度Ｖb）を指定して上記要求情報を出すものが主として考えられる。
【００５０】
また、他の例としては、配信されるべきコンテンツをそのデータ量に基づいて複数のコンテンツブロックＢに等分し、当該分割された各コンテンツブロックＢの配信を要求するタイミングを図１（ｂ）に例示するように変えることで、実質的にダウンロード速度を変える構成としても良い。
【００５１】
更に、当該コンテンツを、複数種類のデータ量を夫々に有するコンテンツブロックＢ１乃至Ｂ６、…、に分割し、当該分割されたコンテンツブロックＢ１乃至Ｂ６、…、の配信を図１（ｃ）に例示するように一定要求間隔Ｔiで要求することで、実質的にダウンロード速度を変える構成としても良い。
【００５２】
本発明では、以上の原理により、各リクエストノードに対する配信が一度に集中することに起因するネットワークとしての過大な負荷の防止と、配信完了期限の徒過を防止と、を両立させる。
【００５３】
次に、上記原理に基づく本発明に係る実施形態について、具体的に図１乃至図８を用いて説明する。
【００５４】
（II）実施形態
以下では、図１に例示する原理に則った本発明に係る実施形態について、図２乃至図８を用いて説明する。なお、上述したように、実施形態におけるコンテンツ配信システムに係るハードウエア構成、ＤＨＴ及びルーティングテーブル等は、夫々、基本的には上記特許文献１に開示されているコンテンツ配信システムに係るものと同様のものが適用されるので、以下に説明する実施形態においては、本発明に係るコンテンツの配信段階に係る処理について主として説明する。
【００５５】
また、図２は実施形態に係るノード一般の概要構成を示すブロック図であり、図３は実施形態に係るリクエストノードにおけるメッセージ処理の全体を示すフローチャートであり、図４乃至図８は当該リクエストノードにおける実施形態に係るコンテンツの配信処理の細部を夫々示すフローチャートである。
【００５６】
なお、実施形態に係る各ノードは、基本的には同様のハードウエア構成を備えており、コンテンツ配信システム内における役割の相違に応じて異なる動作をすることとなる。ここで、当該役割とは、具体的には、配信対象たるコンテンツの所在を問い合わせると共にその配信を要求するリクエストノードとしての役割、当該リクエストノードや配信経路上にある他のノードからクエリを受信するキャッシュノードとしての役割、当該コンテンツを管理するルートノードとしての役割、及び、配信対象たるコンテンツに相当するコンテンツデータを保持するコンテンツノードとしての役割、の四つがある。このとき、上記「リクエストノード」の定義付けについては、上述したように上記特許文献１の明細書段落番号［００６４］及び［００６５］を参照することができ、上記「クエリ」の定義付けについては、例えば上記特許文献１の明細書段落番号［００６５］を参照することができ、上記「キャッシュノード」の定義付けについては、例えば上記特許文献１の明細書段落番号［００７１］及び［００７２］を参照することができ、上記「ルートノード」の定義付けについては、例えば上記特許文献１の明細書段落番号［００５３］を参照することができ、更に上記「コンテンツノード」の定義付けについては、上述したように上記特許文献１の明細書段落番号［００７１］を参照することができる。更に、各役割としてのノードの動作についての詳細は、例えば上記特許文献１の明細書段落番号［００９３］乃至［０１１５］並びに同図１０及び図１１を参照することができる。
【００５７】
図２に示すように、実施形態に係るノード１は、演算機能を有するＣＰＵ、作業用ＲＡＭ、各種データ及びプログラムを記憶するＲＯＭ等から構成された検出手段、決定手段、未配信情報量検出手段、未配信数検出手段、情報処理装置検出手段、回数検出手段、中断判定手段、中断手段、充当可能時間検出手段及びコンピュータとしての制御部１１と、コンテンツデータ、インデックス情報（当該インデックス情報については、例えば上記特許文献１の明細書段落番号［００７１］を参照することができる）、上記ＤＨＴ及びその他のプログラム等を記憶保存（格納）するためのＨＤＤ等から構成された記憶部１２（上記コンテンツデータについては、保存されていないノード１もある）と、受信されたコンテンツデータを一時蓄積するバッファメモリ１３と、コンテンツデータに含まれるエンコードされたビデオデータ（映像情報）及びオーディオデータ（音声情報）等をデコード（データ伸張や復号化等）するデコーダ部１４と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部１５と、当該映像処理部１５から出力されたビデオ信号に基づき映像表示するＣＲＴ（Cathode Ray Tube）又は液晶ディスプレイ等の表示部１６と、上記デコードされたオーディオデータをアナログオーディオ信号にＤ（Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する音声処理部１７と、当該音声処理部１７から出力されたオーディオ信号を音波として出力するスピーカ１８と、ネットワークを通じて他のノード１との間の情報の通信制御を行なうための要求手段としての通信部２０と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部１１に対して与える入力部（例えば、キーボード、マウス、或いは操作パネル等）２１と、を備えて構成され、制御部１１、記憶部１２、バッファメモリ１３、デコーダ部１４及び通信部２０はバス２２を介して相互に接続されている。
【００５８】
そして、制御部１１に含まれるＣＰＵが記憶部１２等に記憶された各種プログラムを実行することにより、上記リクエストノード、上記キャッシュノード、上記ルートノード又は上記コンテンツノードのいずれか一つとしてノード１全体を統括制御する。
【００５９】
また、記憶部１２内には、上記特許文献１の第４図（ｄ）に例示された如きルーティングテーブルが不揮発性に記憶され、上記メッセージの授受やコンテンツの配信に供されている。
【００６０】
次に、実施形態に係るノード１において主として制御部１１により実行される、コンテンツ配信システムとしてのメッセージ処理（実施形態に係るダウンロード速度の決定処理等を含む）について、具体的に図３乃至図８を用いて説明する。
【００６１】
（III）メッセージ処理の全体構成
先ず、実施形態に係るメッセージ処理の全体構成について、図３を用いて説明する。なお、以下に説明するメッセージ処理の前提として、リクエストノードからのクエリに応じて、実施形態に係る配信対象たるコンテンツに相当するコンテンツデータを蓄積しているコンテンツノードが、当該リクエストノードにおいて既に特定されているものとする。
【００６２】
図３に示すように、制御部１１は、各ノード１において実行される当該メッセージ処理としては、初めに、当該ノード１自体の電源スイッチがオフとされたか否かを判定し（ステップＳ１）、オフとされているときは（ステップＳ１；ＹＥＳ）そのまま当該メッセージ処理を終了する。一方、オフとされていないときは（ステップＳ１；ＮＯ）、制御部１１は、既に特定されているコンテンツノードから取得可能なコンテンツの内容を示すコンテンツリストに相当するリスト情報を、ルートノード又はキャッシュノードから受領しているか否かを判定する（ステップＳ２）。
【００６３】
そして、当該リスト情報を受領済であるときは（ステップＳ２；ＹＥＳ）、制御部１１は、当該受領したコンテンツリストを用いて取得すべきコンテンツの決定し（ステップＳ３）、更に当該決定したコンテンツを蓄積しているコンテンツノードを検索するためのクエリをコンテンツ配信システム内に送出する（ステップＳ４）。ここで、当該ステップＳ４において、後述するダウンロード速度決定処理において複数のコンテンツノードを一度に検索する必要があるときは、制御部１１は、その検索する必要がある数のコンテンツノードを検索する旨のクエリを送出する。
【００６４】
次に、検索されたコンテンツに対応するダウンロード速度（又は当該ダウンロード速度に相当するコンテンツブロックＢのデータ量及び要求間隔（図１（ｂ）参照）、或いは、当該ダウンロード速度に相当するコンテンツブロックＢ１乃至Ｂ６、…、夫々のデータ量及び一定要求間隔Ｔi（図１（ｃ）参照）。以下、これら三つを纏めてダウンロード速度等と称する）を、そのリクエストノードの制御部１１が決定する（ステップＳ５）。このステップＳ５の処理については後ほど詳述する。
【００６５】
そして、当該決定されたダウンロード速度等を示す情報を含み且つコンテンツのダウンロードを要求するクエリをリクエストノードの制御部１１が、生成し、コンテンツ配信システム内に送出する（ステップＳ６）。その後、当該クエリに対応して当該コンテンツのダウンロードを開始する（ステップＳ７）。
【００６６】
次に、当該ダウンロードの実行中においては、制御部１１は、当該コンテンツの当該ダウンロードが完了したか否かを常に監視する（ステップＳ８）。そして、当該ダウンロードが完了しているときは（ステップＳ８；ＹＥＳ）、制御部１１は、ダウンロードすべき全てのコンテンツについて当該ダウンロードが完了しているか否かを判定する（ステップＳ１１）。全てのコンテンツについてダウンロードが完了しているときは（ステップＳ１１；ＹＥＳ）、制御部１１は、上記ステップＳ１に戻って上述してきた一連の処理を繰り返す。またステップＳ１１の判定において、未だダウンロードすべきコンテンツが残っているときは（ステップＳ１１；ＮＯ）、制御部１１は、上記ステップＳ３に戻ってそれ以降の処理を繰り返す。
【００６７】
他方、ステップＳ８の判定において、当該ダウンロードが完了してないときは（ステップＳ８；ＮＯ）、制御部１１は、現時点で現在ダウンロード中のコンテンツにおけるダウンロード速度を見直すか否かを判定する（ステップＳ９）。このステップＳ９の処理についても、後ほど詳述する。
【００６８】
そして、制御部１１は、ステップＳ９の判定の結果としての「返り値」が「Ｔ（True）」であるか否かを判定する（ステップＳ１０）。当該返り値が「Ｔ」であるときは（ステップＳ１０；ＹＥＳ）、制御部１１は、当該ダウンロード速度を見直すタイミングが到来しているとして上記ステップＳ５の処理に移行する。一方当該返り値が「Ｔ」でない、すなわち「Ｆ（False）」であるときは（ステップＳ１０；ＮＯ）、制御部１１は、現在はダウンロード速度の見直しタイミングではないとして現在のダウンロード速度を維持して引き続きダウンロードを実行する（ステップＳ７）。
【００６９】
以上説明したステップＳ５乃至Ｓ１０の処理が、ダウンロード速度の見直しタイミングの到来毎に繰り返されることで、図１に例示した如くダウンロード速度の最適化が実行され、配信完了期限までに必要なコンテンツのダウンロードが完了することとなる。
【００７０】
次に、上記ステップＳ２の判定に戻って、当該判定において必要なリスト情報が未だ受領されていないときは（ステップＳ２；ＮＯ）、制御部１１は、何らかの新たなメッセージをネットワーク及び通信部２０を介して受信したか否かを判定する（ステップＳ１２）。
【００７１】
ステップＳ１２の判定において、新たなメッセージを何ら受信していないときは（ステップＳ１２；ＮＯ）、制御部１１は、上記ステップＳ１に戻って上述してきた一連の処理を繰り返す。一方、新たなメッセージを受信したときは（ステップＳ１２；ＹＥＳ）、制御部１１は、その受信したメッセージが他のノード１からの転送依頼メッセージ（すなわち、更に上位のノード１に転送すべきクエリメッセージ又は更に下位のノード１に転送すべき返答メッセージ等）であるか否かを判定する（ステップＳ１３）。そして、転送依頼メッセージでないときは（ステップＳ１３；ＮＯ）、制御部１１は、その受信したメッセージに対応してノード装置１において予め定義付けられている他の処理を実行し（ステップＳ１７）、上記ステップＳ１に戻って上述してきた一連の処理を繰り返す。
【００７２】
他方、ステップＳ１３の判定において、受信したメッセージが転送依頼メッセージであるときは（ステップＳ１３；ＹＥＳ）、制御部１１は、その時点において、当該メッセージの転送に対して、そのリクエストノードにおいて取得すべきコンテンツのダウンロード（上記ステップＳ７参照）の方を優先すべき状態にあるか否かを判定する状況判定処理を行う（ステップＳ１４）。このステップＳ１４の処理についても、後ほど詳述する。
【００７３】
そして、制御部１１は、ステップＳ１４の処理の結果としての返り値が「Ｔ」であるか否かを判定する（ステップＳ１５）。当該返り値が「Ｔ」であるときは（ステップＳ１５；ＹＥＳ）、制御部１１は、その時点では受信したメッセージの転送よりも当該コンテンツのダウンロードを優先すべきであるとして当該メッセージの転送処理を中断し（ステップＳ１６）、上記ステップＳ１に戻って上述してきた一連の処理を繰り返す。
【００７４】
一方、ステップＳ１５の判定において、当該返り値が「Ｔ」でない、すなわち「Ｆ」であるときは（ステップＳ１５；ＮＯ）、制御部１１は、そのまま上記ステップＳ１に戻って上述してきた一連の処理を繰り返す。
【００７５】
次に、図３に示すステップＳ９、Ｓ１４及びＳ９夫々の処理の細部について、具体的に図４乃至図８を用いて説明する。
【００７６】
（Ａ）ステップＳ９の処理の詳細について
先ず、説明の都合上、上記ステップＳ９の処理の詳細について、図４を用いて説明する。なお、図４（ａ）乃至（ｃ）は、当該ステップＳ９の処理として採用し得る具体的な処理を夫々示すフローチャートである。
【００７７】
（ａ）第一の例
上記ステップＳ９としてのダウンロード速度の見直しタイミングとなっているか否かの判定については、例えば、図４（ａ）に示すように、制御部１１が、予め設定された所定期間（例えば、６００秒）が経過したか否か（ステップＳ２０）を判定する。当該所定時間が経過した場合は（ステップＳ２０；ＹＥＳ）、制御部１１は、返り値を「Ｔ」としてダウンロード速度を見直す。当該所定時間が経過していない場合は（ステップＳ２０；ＮＯ）、制御部１１は、返り値を「Ｆ」として現在のダウンロード速度を維持する。
【００７８】
（ｂ）第二の例
また他の例として、例えば、図４（ｂ）に示すように、制御部１１は、予め指定された個数のコンテンツのダウンロードが終了したか否か（ステップＳ２１）を判定する。当該指定数のダウンロードが終了した場合は（ステップＳ２１；ＹＥＳ）、制御部１１は、返り値を「Ｔ」としてダウンロード速度を見直す。当該指定数のダウンロードが終了していない場合は（ステップＳ２１；ＮＯ）、制御部１１は、返り値を「Ｆ」として現在のダウンロード速度を維持する。なお、この場合の「指定数」は、例えば、ダウンロードすべきコンテンツの総数との関係で、当該総数の２割に相当する個数とするのが好適である。
【００７９】
（ｃ）第三の例
更に他の例としては、例えば、図４（ｃ）に示すように、制御部１１は、現在実行されているダウンロードに何らかの障害（例えば、経路状の他のノード１の電源がオフとされることに起因する経路途絶等）が発生したか否か（ステップＳ２２）を判定する。当該障害が発生した場合は（ステップＳ２２；ＹＥＳ）、制御部１１は、返り値を「Ｔ」としてダウンロード速度を見直す当該障害が発生していない場合は（ステップＳ２２；ＮＯ）、制御部１１は、返り値を「Ｆ」として現在のダウンロード速度を維持する。
【００８０】
（Ｂ）ステップＳ１４の処理の詳細について
次に、上記ステップＳ１４の処理の詳細について、図５を用いて説明する。なお、図５（ａ）乃至（ｃ）は、当該ステップＳ１４の処理として採用し得る具体的な処理を夫々示すフローチャートである。
【００８１】
（ａ）第一の例
上記ステップＳ１４としてのダウンロード状況の判定処理は、例えば図５（ａ）に示すように、制御部１１は、そのコンテンツの配信完了期限までの残り時間を検出する。制御部１１は、その残り時間がコンテンツ取得期間（図１（ａ）参照）全体の例えば二割以下であるか否か（ステップＳ２５）を判定する。当該残り時間が二割以下である場合は（ステップＳ２５；ＹＥＳ）、制御部１１は、返り値を「Ｔ」として当該ダウンロード処理の方を他のメッセージの転送処理に対して優先すべきとする。当該残り時間が二割より多い場合は（ステップＳ２５；ＮＯ）、制御部１１は、返り値を「Ｆ」としてダウンロード処理を優先する必要はないと判定する。
【００８２】
（ｂ）第二の例
また他の例として、例えば図５（ｂ）に示すように、制御部１１は、現時点での実際のダウンロード速度が予め設定された閾値速度以下となっているか否か（ステップＳ２６）を判定する。当該閾値速度以下となっている場合は（ステップＳ２６；ＹＥＳ）、制御部１１は、返り値を「Ｔ」として当該ダウンロード処理の方を他のメッセージの転送処理に対して優先させて増速させる。当該閾値速度より速い場合は（ステップＳ２６；ＮＯ）、制御部１１は、返り値を「Ｆ」としてダウンロード処理を優先する必要はないと判定する。なお、この場合の「閾値速度」は、例えば、そのリクエストノードが通信部２０を介して物理的に接続されているネットワークにおける帯域幅（最大配信速度）等との関係で、当該帯域幅に対して３割に相当する閾値速度とするのが好適である。
【００８３】
（ｃ）第三の例
更に他の例としては、例えば図５（ｃ）に示すように、制御部１１は、そのコンテンツの配信完了期限までの残り時間を検出する。制御部１１は、以降にダウンロードすべきコンテンツの数と残り時間とから、以降にダウンロードすべきコンテンツ一つ当たりのダウンロード時間として当該コンテンツに割り当てることが可能なダウンロード時間を算出し、算出したダウンロード時間が予め設定されている当該ダウンロード時間の閾値以下か否かを判定する（ステップＳ２７）。当該ダウンロード時間が閾値以下である場合は（ステップＳ２７；ＹＥＳ）、制御部１１は、返り値を「Ｔ」として当該ダウンロード処理の方を他のメッセージの転送処理に対して優先すべきとする。当該ダウンロード時間が閾値より長い場合は（ステップＳ２７；ＮＯ）、制御部１１は、返り値を「Ｆ」としてダウンロード処理を優先する必要はないと判定する。また、この場合の「ダウンロード時間の閾値」は、例えば、検出されている残り時間との関係で、当該残り時間に対して２割に相当する閾値とするのが好適である。
【００８４】
（Ｃ）ステップＳ５の処理の詳細について
最後に、上記ステップＳ５の処理の詳細について、図６乃至図８を用いて説明する。なお、図６乃至図８は、当該ステップＳ５の処理として採用し得る具体的な処理を夫々示すフローチャートである。
【００８５】
（ａ）第一の例
上記ステップＳ５としてのダウンロード速度決定処理は、例えば図６（ａ）に示すように、制御部１１は、そのコンテンツのダウンロードにおける残りのデータ量Ｄを算出する（ステップＳ３０）。制御部１１は、当該コンテンツの配信完了期限までの残り時間Ｔを算出する（ステップＳ３１）。制御部１１は、当該算出されたデータ量Ｄを残り時間Ｔで除した値をもってその時点でのダウンロード速度として決定する（ステップＳ３２）。
【００８６】
（ｂ）第二の例
また他の例として、例えば図６（ｂ）に示すように、制御部１１は、リクエストノードとして取得すべき全てのコンテンツ（当該全てのコンテンツの配信完了期限が同一であるとする）のうちその時点で未取得であるコンテンツの数Ｎを算出する（ステップＳ３３）。制御部１１は、各コンテンツの配信完了期限までの残り時間Ｔを同様に制御部１１において算出する（ステップＳ３４）。制御部１１は、当該算出された残りコンテンツ数Ｎを残り時間Ｔで除した値を残りのコンテンツ一つ分に充てられるダウンロード時間Ｔcとする（ステップＳ３５）。制御部１１は、当該ダウンロード時間の逆数（１／Ｔc）をもってその時点でのダウンロード速度として決定する（ステップＳ３５、Ｓ３６）。
【００８７】
（ｃ）第三の例
次に、更に他の例を図７（ａ）を用いて説明する。なお、図７（ａ）に示すダウンロード速度決定処理の前提としては、図３に示すコンテンツ検索処理（ステップＳ４）の段階で、コンテンツノードが複数個検索されているものとする。このとき、当該検索数としては、一般的には十個乃至二十個のコンテンツノードが検索されることが好ましいが、本実施形態の実用上は五個以下のコンテンツノードであっても実行可能である。
【００８８】
当該他の例としては、図７（ａ）に示すように、制御部１１は、上述したステップＳ１４の処理に係る状況判定処理を実行した後（ステップＳ１４）、当該ステップＳ１４の判定の結果としての返り値が「Ｔ」であるか否かを判定する（ステップＳ４０）。当該返り値が「Ｆ」である（すなわち、当該コンテンツのダウンロードを他のメッセージの転送に優先させて行うべき状態にない）ときは（ステップＳ４０；ＮＯ）、制御部１１は、そのまま図３に示すステップＳ６の処理に移行する。一方、当該返り値が「Ｔ」である（すなわち、現在当該コンテンツのダウンロードを他のメッセージの転送に優先させて行うべき状態にある）ときは（ステップＳ４０；ＹＥＳ）、制御部１１は、当該他のメッセージの転送中（すなわち、当該他のメッセージのアップロード中又はダウンロード中）であるか否かを判定する（ステップＳ４１）。
【００８９】
そして、当該転送中でないときは（ステップＳ４１；ＮＯ）、制御部１１は、後述するステップＳ４３の処理に移行する。一方、転送中であるときは（ステップＳ４１；ＹＥＳ）、制御部１１は、当該転送を直ちに中止する（ステップＳ４２）。次に、上記ステップＳ４１の判定において他のメッセージの転送中でないとき（ステップＳ４１；ＮＯ）又は上記ステップＳ４２の処理後、制御部１１は、現時点においてリクエストノードが接続されていない他のコンテンツノードがコンテンツ配信システム内に存在しているか否かを判定する（ステップＳ４３）。
【００９０】
これにより、未接続のコンテンツノードが存在しているときは（ステップＳ４３；ＹＥＳ）、制御部１１は、その未接続のコンテンツノードからのコンテンツのダウンロードを新たに開始して（ステップＳ４４）、図３に示すステップＳ６の処理に移行する。
【００９１】
一方、ステップＳ４３の判定において、未接続のコンテンツノードが既にないときは（ステップＳ４３；ＮＯ）、制御部１１は、現在接続されているコンテンツノードからのダウンロードを継続するものとしてそのまま図３に示すステップＳ６の処理に移行する。
【００９２】
（ｄ）第四の例
次に、更に他の例を図７（ｂ）を用いて説明する。なお、図７（ｂ）において、図７（ａ）を用いて説明した処理と同様の処理については同様のステップ番号を付して細部の説明は省略する。
【００９３】
当該他の例としては、図７（ｂ）に示すように、制御部１１は、上述したステップＳ１４の処理に係る状況判定処理を実行した後（ステップＳ１４）、更に図７（ａ）を用いて説明したステップＳ４０乃至Ｓ４２の処理を実行する。
【００９４】
次に、制御部１１は、そのコンテンツのダウンロードにおける残りのデータ量Ｄを算出する（ステップＳ４５）。制御部１１は、当該コンテンツの配信完了期限までの残り時間Ｔを算出する（ステップＳ４６）。制御部１１は、当該算出されたデータ量Ｄを残り時間Ｔで除した値をもってその時点でのダウンロード速度として決定して（ステップＳ４７）、図３に示すステップＳ６の処理に移行する。
【００９５】
（ｅ）第五の例
次に、更に他の例を図８（ａ）を用いて説明する。なお、図８（ａ）において、図７（ａ）を用いて説明した処理と同様の処理については同様のステップ番号を付して細部の説明は省略する。
【００９６】
また、図８（ａ）に示す例は、図１（ｃ）を用いて説明した原理に相当するダウンロード速度決定処理の例である。
【００９７】
当該他の例としては、図８（ａ）に示すように、制御部１１は、上述したステップＳ１４の処理に係る状況判定処理を実行した後（ステップＳ１４）、更に図７（ａ）を用いて説明したステップＳ４０乃至Ｓ４２の処理を実行する。
【００９８】
次に、制御部１１は、リクエストノードとして取得すべき全てのコンテンツ（当該全てのコンテンツの配信完了期限が同一であるとする）のうちその時点で未取得であるコンテンツのデータ量Ｄを算出する（ステップＳ５０）。
【００９９】
そして、制御部１１は、各コンテンツの配信完了期限までにおいてコンテンツデータの取得要求が可能な回数Ｃを、例えば１０００回程度として算出する（ステップＳ５１）。ここで、当該取得要求に際しては、既にコンテンツノードが検索されているため改めて当該要求に係るクエリメッセージをリクエストノードから送信する必要はない。当該取得要求として具体的には、例えば、取得を所望するコンテンツに相当するコンテンツデータのうちの必要な部分を、そのバイト数又はバイト番号等で指定する指定メッセージを送信する。そして、上記回数Ｃはこの指定メッセージを送る回数を指すものである。
【０１００】
これらにより、制御部１１は、当該算出された残りのデータ量Ｄを要求可能回数Ｃで除した値を、その時点における残りのコンテンツにおける一つのコンテンツブロックＢｘ（ｘ＝１、２、３、４、…）のデータ量とし（ステップＳ５２）、そのデータ量のコンテンツブロックＢｘに分割してコンテンツのダウンロードを継続すべく図３に示すステップＳ６の処理に移行する。
【０１０１】
（ｆ）第六の例
最後に、更に他の例を図８（ｂ）を用いて説明する。なお、図８（ｂ）において、図７（ａ）を用いて説明した処理と同様の処理については同様のステップ番号を付して細部の説明は省略する。
【０１０２】
また、図８（ｂ）に示す例は、図１（ｂ）を用いて説明した原理に相当するダウンロード速度決定処理の例である。
【０１０３】
当該他の例としては、図８（ｂ）に示すように、制御部１１は、上述したステップＳ１４の処理に係る状況判定処理を実行した後（ステップＳ１４）、更に図７（ａ）を用いて説明したステップＳ４０乃至Ｓ４２の処理を実行する。
【０１０４】
次に、制御部１１は、リクエストノードとして取得すべき全てのコンテンツ（当該全てのコンテンツの配信完了期限が同一であるとする）のうちその時点で未取得であるコンテンツのデータ量Ｄを算出する（ステップＳ５０）。
【０１０５】
そして、制御部１１は、以降配信完了期限まで間における上記コンテンツデータの取得要求（上記「第五の例」参照）におけるコンテンツブロックＢのデータ量Ｓを、例えば５１２キロバイト程度として算出する（ステップＳ５５）。これにより、制御部１１は、当該算出された残りのデータ量ＤをコンテンツブロックＢのデータ量Ｓで除した値の逆数（次元は「時間」）を、その時点におけるクエリの送出間隔（図１（ｃ）における一定要求間隔Ｔiに相当）とし（ステップＳ５６）、その間隔でクエリを送出すべく図３に示すステップＳ６の処理に移行する。
【０１０６】
以上夫々説明したように、実施形態に係るリクエストノードとしての動作によれば、配信完了期限までの残り時間全体に渡ってコンテンツが配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示すクエリを送出するので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要なコンテンツの配信を当該配信完了期限までに確実に完了させることができる。
【０１０７】
従って、配信完了期限が予め設定されているコンテンツであっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たるノード１（リクエストノード）に配信することができる。
【０１０８】
また、所定の条件下で新たなダウンロード速度を再決定し、それを示すクエリを再度送出するので、ネットワーク等の状況の変化により配信完了期限までに配信完了させるための配信態様が変化しても、それに追随して確実に配信を配信完了期限までに完了させることができる。
【０１０９】
更に、コンテンツの配信以外に他のメッセージの転送処理を実行しているとき、当該他のメッセージの転送処理を中断すべきか否かを判定し、当該中断すべき時は当該他のメッセージの転送処理を中断してコンテンツの配信を優先させて行うので、必要に応じてコンテンツの配信を優先化して配信完了期限までにその配信を完了させることができる。
【０１１０】
更にまた、上記ステップＳ９としての第一の例（図４（ａ）参照）によれば、予め設定された所定期間毎に新たなダウンロード速度を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
【０１１１】
また、上記ステップＳ９としての第二の例（図４（ｂ）参照）によれば、予め設定されたデータ量の配信が完了する度に新たなダウンロード速度を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
【０１１２】
更に、上記ステップＳ９としての第三の例（図４（ｃ）参照）によれば、配信経路となっているネットワーク上に障害が発生したとき新たなダウンロード速度を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
【０１１３】
更にまた、上記ステップＳ１４としての第一の例（図５（ａ）参照）によれば、検出された配信完了期限までの残り時間が、配信可能となってから配信完了期限までの期間に対して予め設定された割合（例えば二割）以下となったとき、他のメッセージの転送処理を中断すると判定するので、実際に残り時間が短くなったときに他のメッセージの転送処理を中断することで、効率的に当該他のメッセージの転送処理を中断してコンテンツの配信を優先させることができる。
【０１１４】
また、上記ステップＳ１４としての第二の例（図５（ｂ）参照）によれば、コンテンツの実際のダウンロード速度が予め設定されている閾値速度以下となったときに、可及的速やかにコンテンツの配信を実行すべき状態であるとして他のメッセージの転送処理を中断すると判定するので、効率的に他のメッセージの転送処理を中断してコンテンツの配信を優先させることができる。
【０１１５】
更に、上記ステップＳ１４としての第三の例（図５（ｃ）参照）によれば、いずれかのコンテンツに対応する配信時間が閾値時間以下となったときに、可及的速やかにコンテンツの配信を実行すべき状態であるとして他のメッセージの転送処理を中断すると判定するので、効率的に他のメッセージの転送処理を中断してコンテンツの配信を優先させることができる。
【０１１６】
更にまた、上記ステップＳ５としての第一の例（図６（ａ）参照）によれば、未取得のコンテンツのデータ量Ｄを残り時間Ｔで除することによりその後のダウンロード速度を決定してクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
【０１１７】
また、上記ステップＳ５としての第二の例（図６（ｂ）参照）によれば、未取得のコンテンツ数Ｎで残り時間Ｔを除することによりその後のコンテンツ毎の所要時間を決定し、当該所要時間内に対応するコンテンツの配信が完了するようにクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
【０１１８】
更に、上記ステップＳ５としての第三の例（図７（ａ）参照）によれば、未使用のコンテンツノードがあるとき、それを加えた複数のコンテンツノードからコンテンツが配信されるようにクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
【０１１９】
更にまた、上記ステップＳ５としての第五の例（図８（ａ）参照）によれば、未取得のコンテンツのデータ量ＤをコンテンツブロックＢｘの配信要求可能回数Ｃで除して得られるデータ量を、その後のコンテンツブロックＢｘ一つ分のデータ量と決定してクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
【０１２０】
また、上記ステップＳ５としての第六の例（図８（ｂ）参照）によれば、未取得のコンテンツのデータ量ＤをコンテンツブロックＢ一つ分の情報量で除した後に逆数化して得られる送信間隔をその後のコンテンツブロックＢの要求間隔Ｔiと決定し、当該決定された要求間隔ＴiをもってコンテンツブロックＢの配信をクエリを送出することを繰り返すので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
【０１２１】
また、図３乃至図８に夫々示すフローチャートに対応するプログラムを、フレキシブルディスク又はハードディスク等の情報記録媒体に記録しておき、又はインターネット等を介して取得して記録しておき、これらを汎用のコンピュータで読み出して実行することにより、当該コンピュータを実施形態に係る制御部１１として活用することも可能である。
【産業上の利用可能性】
【０１２２】
以上夫々説明したように、本願はいわゆるＰ２Ｐ型のコンテンツ配信システムの分野に利用することが可能であり、特に配信完了期限が定められているコンテンツを配信することがあるコンテンツ配信システムの分野に適用すれば特に顕著な効果が得られる。
【図面の簡単な説明】
【０１２３】
【図１】本発明の原理を説明する図であり、（ａ）は当該原理を説明するタイミングチャートであり、（ｂ）は当該原理の具体例を説明するタイミングチャート（Ｉ）であり、（ｃ）は当該原理の具体例を説明するタイミングチャート（II）である。
【図２】実施形態に係るノードの概要構成を示すブロック図である。
【図３】実施形態に係るメッセージ処理の全体を示すフローチャートである。
【図４】実施形態に係るダウンロード速度の見直しタイミングの設定処理を示すフローチャートであり、（ａ）は当該見直しタイミングの設定処理の第一例を示すフローチャートであり、（ｂ）は当該見直しタイミングの設定処理の第二例を示すフローチャートであり、（ｃ）は当該見直しタイミングの設定処理の第三例を示すフローチャートである。
【図５】実施形態に係る状況判定処理を示すフローチャートであり、（ａ）は当該状況判定処理の第一例を示すフローチャートであり、（ｂ）は当該状況判定処理の第二例を示すフローチャートであり、（ｃ）は当該状況判定処理の第三例を示すフローチャートである。
【図６】実施形態に係るダウンロード速度決定処理を示すフローチャート（Ｉ）であり、（ａ）は当該ダウンロード速度決定処理の第一例を示すフローチャートであり、（ｂ）は当該ダウンロード速度決定の第二例を示すフローチャートである。
【図７】実施形態に係るダウンロード速度決定処理を示すフローチャート（II）であり、（ａ）は当該ダウンロード速度決定処理の第三例を示すフローチャートであり、（ｂ）は当該ダウンロード速度決定の第四例を示すフローチャートである。
【図８】実施形態に係るダウンロード速度決定処理を示すフローチャート（III）であり、（ａ）は当該ダウンロード速度決定処理の第五例を示すフローチャートであり、（ｂ）は当該ダウンロード速度決定の第六例を示すフローチャートである。
【符号の説明】
【０１２４】
１    ノード
１１    制御部
１２    記憶部
１３    バッファメモリ
１４    デコーダ部
１５    映像処理部
１６    表示部
１７    音声処理部
１８    スピーカ
２０    通信部
２１    入力部
２２    バス
Ｔi    要求間隔
Ｂ、Ｂ１、Ｂ２、Ｂ３、Ｂ４、Ｂ５、Ｂ６    コンテンツブロック
【図１】
2008250370.tif 000003
【図２】
2008250370.tif 000004
【図３】
2008250370.tif 000005
【図４】
2008250370.tif 000006
【図５】
2008250370.tif 000007
【図６】
2008250370.tif 000008
【図７】
2008250370.tif 000009
【図８】
2008250370.tif 000010