(57)【要約】【課題】ユーザからの要求に速やかに応答して、そのユーザによって要求されたコンテンツをオーバレイネットワークからダウンロードして再生する。【解決手段】ユーザのコンテンツ取得要求に先立ち、予め選択されたコンテンツのうちの冒頭部分を表す冒頭部分データがダウンロードされて自ノード装置に保存される。さらに、ユーザのコンテンツ取得要求に応答して、ユーザによって要求されたコンテンツのうち、少なくとも、冒頭部分データを除く残存部分データがダウンロードされて自ノード装置に保存される。さらに、そのコンテンツ取得要求に応答して、要求されたコンテンツの冒頭部分データが読み出されて再生され、その再生に引き続いて、要求されたコンテンツの残存部分データが読み出されて再生される。【選択図】図３
2009049487.tif 000002
【特許請求の範囲】
【請求項１】
他の複数のノード装置と共にオーバレイネットワークを構築するノード装置であって、当該ノード装置のユーザの要求に応答してコンテンツを前記他の複数のノード装置の中から検索してダウンロードして取得するコンテンツオンデマンド型ノード装置であって、
ユーザがコンテンツを取得したいというコンテンツ取得要求をユーザから入力する要求入力手段と、
前記他の複数のノード装置のうち、予め選択されたコンテンツを保有しているコンテンツホルダを前記オーバレイネットワーク上において検索し、その検索されたコンテンツホルダから、前記予め選択されたコンテンツのうちの冒頭部分を表す冒頭部分データをダウンロードし、そのダウンロードした冒頭部分データをコンテンツＩＤによって識別可能な状態で第１記憶手段に記憶する第１データ取得手段と、
前記コンテンツ取得要求に応答して、ユーザによって要求されたコンテンツを保有している少なくとも１つのコンテンツホルダから、前記要求されたコンテンツのうち、少なくとも、前記第１記憶手段に既に記憶されている冒頭部分データを除く残存部分データをダウンロードし、そのダウンロードした少なくとも残存部分データをコンテンツＩＤによって識別可能な状態で第２記憶手段に記憶する第２データ取得手段と、
前記コンテンツ取得要求に応答して、前記第１記憶手段から、前記要求されたコンテンツの前記冒頭部分データを読み出して再生装置によって再生し、その再生に引き続いて、前記第２記憶手段から、前記要求されたコンテンツの前記残存部分データを読み出して前記再生装置によって再生する再生手段と
を含むコンテンツオンデマンド型ノード装置。
【請求項２】
前記第１データ取得手段は、前記予め選択されたコンテンツとして、前記他の複数のノード装置によって保有されている複数種類のコンテンツに実質的に一致する複数種類のコンテンツのうちの冒頭部分を表す冒頭部分データを前記第１記憶手段に記憶する請求項１に記載のコンテンツオンデマンド型ノード装置。
【請求項３】
前記第１データ取得手段は、前記予め選択されたコンテンツとして、前記他の複数のノード装置によって保有されている複数種類のコンテンツのうち、当該ノード装置または前記他の複数のノード装置のうちの少なくとも１つによって過去に取得された頻度が基準値以上であるものに実質的に一致する複数種類のコンテンツのうちの冒頭部分を表す冒頭部分データを前記第１記憶手段に記憶する請求項１に記載のコンテンツオンデマンド型ノード装置。
【請求項４】
さらに、前記冒頭部分データのサイズを、コンテンツのサイズに基づいて可変に決定する冒頭部分データサイズ決定手段を含む請求項１ないし３のいずれかに記載のコンテンツオンデマンド型ノード装置。
【請求項５】
前記冒頭部分データサイズ決定手段は、コンテンツのサイズが大きいほど大きくなるように前記冒頭部分データのサイズを決定する請求項４に記載のコンテンツオンデマンド型ノード装置。
【請求項６】
各コンテンツの全体を表すデータは、複数のセグメントに分割されており、
当該ノード装置は、セングメント単位で、コンテンツデータを、対応するコンテンツホルダからダウンロードし、
前記第１データ取得手段は、前記冒頭部分データとして、前記複数のセグメントのうち先頭に位置する先頭セグメントの全体またはその先頭セグメントのうちの先頭部分を前記第１記憶手段に記憶する請求項１ないし５のいずれかに記載のコンテンツオンデマンド型ノード装置。
【請求項７】
前記第１データ取得手段は、当該ノード装置の起動後であって、最初のコンテンツ取得要求がユーザから出される前の段階において、前記予め選択されたコンテンツの前記冒頭部分データを前記第１記憶手段に記憶する請求項１ないし６のいずれかに記載のコンテンツオンデマンド型ノード装置。
【請求項８】
前記予め選択されたコンテンツを示すコンテンツリストを受信するコンテンツリスト受信手段と、
新たなコンテンツリストを受信すると、新たなコンテンツの有無を判定する判定手段と
を含み、
前記第１データ取得手段は、前記判定手段によって新たなコンテンツがあると判定された場合に、その新たなコンテンツの前記冒頭部分データを前記第１記憶手段に記憶する請求項１ないし７のいずれかに記載のコンテンツオンデマンド型ノード装置。
【請求項９】
前記第２データ取得手段は、前記コンテンツ取得要求に応答して前記冒頭部分データが前記第１記憶手段から読み出されて前記再生装置によって再生されている間に、前記要求されたコンテンツの少なくとも前記残存部分データを前記第２記憶手段に記憶することを開始する請求項１ないし８のいずれかに記載のコンテンツオンデマンド型ノード装置。
【請求項１０】
前記要求されたコンテンツが前記第２記憶手段に記憶されているか否かを判定するコンテンツ記憶判定手段を含み、
前記第２データ取得手段は、前記要求されたコンテンツが前記第２記憶手段に記憶されていないと前記コンテンツ記憶判定手段によって判定された場合に、前記要求されたコンテンツを前記第２記憶手段に記憶する請求項１ないし９のいずれかに記載のコンテンツオンデマンド型ノード装置。
【請求項１１】
他の複数のノード装置と共にオーバレイネットワークを構築するノード装置において、当該ノード装置のユーザの要求に応答してコンテンツを前記他の複数のノード装置の中から検索してダウンロードして取得するオンデマンド型コンテンツ取得方法であって、
ユーザがコンテンツを取得したいというコンテンツ取得要求をユーザから入力する要求入力工程と、
前記他の複数のノード装置のうち、予め選択されたコンテンツを保有しているコンテンツホルダを前記オーバレイネットワーク上において検索し、その検索されたコンテンツホルダから、前記予め選択されたコンテンツのうちの冒頭部分を表す冒頭部分データをダウンロードし、そのダウンロードした冒頭部分データをコンテンツＩＤによって識別可能な状態で第１記憶手段に記憶する第１データ取得工程と、
前記コンテンツ取得要求に応答して、ユーザによって要求されたコンテンツを保有している少なくとも１つのコンテンツホルダから、前記要求されたコンテンツのうち、少なくとも、前記第１記憶手段に既に記憶されている冒頭部分データを除く残存部分データをダウンロードし、そのダウンロードした少なくとも残存部分データをコンテンツＩＤによって識別可能な状態で第２記憶手段に記憶する第２データ取得工程と、
前記コンテンツ取得要求に応答して、前記第１記憶手段から、前記要求されたコンテンツの前記冒頭部分データを読み出して再生装置によって再生し、その再生に引き続いて、前記第２記憶手段から、前記要求されたコンテンツの前記残存部分データを読み出して前記再生装置によって再生する再生工程と
を含むオンデマンド型コンテンツ取得方法。
【請求項１２】
請求項１ないし１１のいずれかに記載のオンデマンド型ノード装置の各手段としてコンピュータを機能させるために実行されるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、他の複数のノード装置と共にオーバレイネットワークを構築するノード装置において、当該ノード装置のユーザの要求に応答してコンテンツを前記他の複数のノード装置の中から検索してダウンロードして取得する技術に関するものであり、特に、ユーザからの要求に速やかに応答して、そのユーザによって要求されたコンテンツを取得して再生する技術に関するものである。
【背景技術】
【０００２】
コンピュータ技術および通信技術の進歩やネットワーク等のインフラストラクチャの整備に伴い、映像、音声等のコンテンツをネットワークを介して多数のユーザに配信するサービスが急速に普及しつつある。
【０００３】
この種のコンテンツ配信サービスは、例えば、サーバに複数のクライアントがネットワークを介して接続される通信環境において提供される。このサーバクライアント方式の通信環境においては、いずれのクライアントも、要求するコンテンツを取得するために、同じサーバに依存しなければならない。そのため、このサーバクライアント方式には、サーバへのアクセスが集中する可能性が高いことや、管理コストが高騰する可能性が高いという問題がある。
【０００４】
サーバクライアント方式の通信環境に対し、複数のノード装置が共通のオーバレイネットワークを介して相互にコンテンツを交換する通信環境が存在する。この種の通信環境においても上述のコンテンツ配信サービスを実現することが可能であり、この種の通信システムの一例が特許文献１にピアツーピア型コンテンツ配信システムとして開示されている。
【０００５】
オーバレイネットワーク方式の通信環境においては、コンテンツを利用したり保有する端末である複数のノード装置がネットワークによって互いに接続され、それにより、自ノード装置が持つ処理装置や記憶装置が他のノード装置によっても利用される。その結果、コンテンツの検索や送受信のための負担が全端末によって分担され、それにより、上述のサーバクライアント方式が抱える問題が軽減される。
【特許文献１】特開２００６−１９７４００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
オーバレイネットワーク方式の通信環境において提供されるコンテンツ配信サービスの一例においては、ユーザからの要求に応じて、そのユーザによる要求コンテンツが再生される。その再生に先立ち、要求コンテンツがダウンロードされて取得される。
【０００７】
コンテンツ取得手法の一例によれば、ユーザがコンテンツを要求すると、その要求コンテンツの全体がオーバレイネットワーク上において検索されてダウンロードされる。そのダウンロードの完了後に、ユーザによる要求コンテンツの再生が開始される。そのため、この例においては、ユーザがコンテンツを要求しても、その要求コンテンツのダウンロードが完了するまでは、その要求コンテンツの再生が開始されない。特に、ネットワークに障害が発生した場合には、ダウンロードに通常より長い時間が費やされてしまう。その結果、ユーザは、コンテンツ要求の時期と要求コンテンツの再生開始時期との間のタイムラグにいらいらする可能性がある。
【０００８】
コンテンツ取得手法の別の例によれば、ユーザの要求に先立ち、将来要求されることが予想されるコンテンツの全体がオーバレイネットワーク上において検索されてダウンロードされ、そのダウンロードされたコンテンツがユーザのノード装置に保存される。この場合には、ユーザが実際に、コンテンツを要求すると、ダウンロードという工程を経ることなく、単に、自ノード装置から要求コンテンツが読み出されて再生される。その結果、ユーザがコンテンツを要求すると、速やかに、その要求コンテンツの再生が開始されるため、ユーザは、いらいらすることなく、要求コンテンツを視聴することが可能となる。
【０００９】
しかし、この場合には、ノード装置の記憶容量の範囲内でしか、コンテンツを保存しておくことができず、ノード装置に一緒に保存できるコンテンツの数に限度がある。ノード装置に保存されていないコンテンツがユーザによって要求された場合には、その要求コンテンツをダウンロードすることが必要であるため、この場合には、ユーザは、コンテンツ要求の時期と要求コンテンツの再生開始時期との間のタイムラグにいらいらする可能性がある。
【００１０】
以上要するに、いずれの手法を採用するにしても、ユーザは、コンテンツ要求の時期と要求コンテンツの再生開始時期との間のタイムラグにいらいらする可能性がある。
【００１１】
以上説明した事情を背景にして、本発明は、ユーザからの要求に速やかに応答して、そのユーザによって要求されたコンテンツを取得して再生することを課題としてなされたものである。
【課題を解決するための手段】
【００１２】
本発明の一側面によれば、ユーザのコンテンツ取得要求に先立ち、予め選択されたコンテンツのうちの冒頭部分を表す冒頭部分データがダウンロードされて自ノード装置に保存される。さらに、ユーザのコンテンツ取得要求に応答して、ユーザによって要求されたコンテンツのうち、少なくとも、冒頭部分データを除く残存部分データがダウンロードされて自ノード装置に保存される。さらに、そのコンテンツ取得要求に応答して、要求されたコンテンツの冒頭部分データが読み出されて再生され、その再生に引き続いて、要求されたコンテンツの残存部分データが読み出されて再生される。
【００１３】
本発明によって下記の各態様が得られる。各態様は、項に区分し、各項には番号を付し、必要に応じて他の項の番号を引用する形式で記載する。これは、本発明が採用し得る技術的特徴の一部およびそれの組合せの理解を容易にするためであり、本発明が採用し得る技術的特徴およびそれの組合せが以下の態様に限定されると解釈すべきではない。すなわち、下記の態様には記載されていないが本明細書には記載されている技術的特徴を本発明の技術的特徴として適宜抽出して採用することは妨げられないと解釈すべきなのである。
【００１４】
さらに、各項を他の項の番号を引用する形式で記載することが必ずしも、各項に記載の技術的特徴を他の項に記載の技術的特徴から分離させて独立させることを妨げることを意味するわけではなく、各項に記載の技術的特徴をその性質に応じて適宜独立させることが可能であると解釈すべきである。
【００１５】
（１）  他の複数のノード装置と共にオーバレイネットワークを構築するノード装置であって、当該ノード装置のユーザの要求に応答してコンテンツを前記他の複数のノード装置の中から検索してダウンロードして取得するコンテンツオンデマンド型ノード装置であって、
ユーザがコンテンツを取得したいというコンテンツ取得要求をユーザから入力する要求入力手段と、
前記他の複数のノード装置のうち、予め選択されたコンテンツを保有しているコンテンツホルダを前記オーバレイネットワーク上において検索し、その検索されたコンテンツホルダから、前記予め選択されたコンテンツのうちの冒頭部分を表す冒頭部分データをダウンロードし、そのダウンロードした冒頭部分データをコンテンツＩＤによって識別可能な状態で第１記憶手段に記憶する第１データ取得手段と、
前記コンテンツ取得要求に応答して、ユーザによって要求されたコンテンツを保有している少なくとも１つのコンテンツホルダから、前記要求されたコンテンツのうち、少なくとも、前記第１記憶手段に既に記憶されている冒頭部分データを除く残存部分データをダウンロードし、そのダウンロードした少なくとも残存部分データをコンテンツＩＤによって識別可能な状態で第２記憶手段に記憶する第２データ取得手段と、
前記コンテンツ取得要求に応答して、前記第１記憶手段から、前記要求されたコンテンツの前記冒頭部分データを読み出して再生装置によって再生し、その再生に引き続いて、前記第２記憶手段から、前記要求されたコンテンツの前記残存部分データを読み出して前記再生装置によって再生する再生手段と
を含むコンテンツオンデマンド型ノード装置。
【００１６】
このノード装置においては、コンテンツ取得要求に先立ち、予め選択されたコンテンツがダウンロードされるが、そのコンテンツの全体がダウンロードされるのではなく、それよりデータ量が少ない部分、すなわち、そのコンテンツのうちの冒頭部分がダウンロードされて当該ノード装置に記憶される。したがって、予め選択されたコンテンツの全部を当該ノード装置に記憶しなければならない場合より、必要な記憶容量が少なくて済む。
【００１７】
さらに、このノード装置においては、コンテンツ取得要求に応答して、要求されたコンテンツのうち、少なくとも、既に記憶されている冒頭部分データを除く残存部分データがダウンロードされて当該ノード装置に記憶される。
【００１８】
すなわち、このノード装置によれば、同じコンテンツが冒頭部分と残存部分とに分割され、かつ、冒頭部分は、コンテンツ取得要求に先行する時期にダウンロードされて当該ノード装置に記憶されるのに対し、残存部分は、コンテンツ取得要求に応答してダウンロードされて当該ノード装置に記憶されるのである。したがって、将来要求されることがないコンテンツのうちの残存部分が無駄にダウンロードされて当該ノード装置の記憶容量が無駄に消費されることがない。
【００１９】
さらに、このノード装置においては、前記コンテンツ取得要求に応答して、要求されたコンテンツの冒頭部分データが当該ノード装置から読み出されて再生される。その冒頭部分データは、コンテンツ取得要求に先立って当該ノード装置に記憶されているため、その要求されたコンテンツのうちの冒頭部分については、コンテンツ取得要求に速やかに応答して再生が開始されることになる。
【００２０】
さらに、このノード装置においては、要求されたコンテンツの冒頭部分データの再生が終了すると、引き続いて、同じコンテンツの残存部分データが当該ノード装置から読み出されて再生される。したがって、同じコンテンツにつき、残存部分データは、冒頭部分データの再生中にダウンロードして取得することが可能となる。
【００２１】
（２）  前記第１データ取得手段は、前記予め選択されたコンテンツとして、前記他の複数のノード装置によって保有されている複数種類のコンテンツに実質的に一致する複数種類のコンテンツのうちの冒頭部分を表す冒頭部分データを前記第１記憶手段に記憶する（１）項に記載のコンテンツオンデマンド型ノード装置。
【００２２】
（３）  前記第１データ取得手段は、前記予め選択されたコンテンツとして、前記他の複数のノード装置によって保有されている複数種類のコンテンツのうち、当該ノード装置または前記他の複数のノード装置のうちの少なくとも１つによって過去に取得された頻度が基準値以上であるものに実質的に一致する複数種類のコンテンツのうちの冒頭部分を表す冒頭部分データを前記第１記憶手段に記憶する（１）項に記載のコンテンツオンデマンド型ノード装置。
【００２３】
このノード装置によれば、コンテンツ別の利用頻度に関する過去の統計からみて、ユーザによって将来要求される可能性が高いと予想されるコンテンツのみにつき、冒頭部分データが、コンテンツ取得要求に先立ってダウンロードされて当該ノード装置に記憶される。その結果、将来要求されることがないコンテンツの冒頭部分データが無駄にダウンロードされて当該ノード装置の負荷が無駄に増えてしまう可能性を軽減することが容易となる。
【００２４】
（４）  さらに、前記冒頭部分データのサイズを、コンテンツのサイズに基づいて可変に決定する冒頭部分データサイズ決定手段を含む（１）ないし（３）項のいずれかに記載のコンテンツオンデマンド型ノード装置。
【００２５】
前記（１）ないし（３）項のいずれかに記載のノード装置においては、例えば、コンテンツの冒頭部分データの再生中に、同じコンテンツの残存部分データがダウンロードされて取得される場合があり得る。この場合には、残存部分データのサイズが大きいほど、すなわち、コンテンツのサイズが大きいほど、冒頭部分データの再生時間を長くすることが望ましい。一方、冒頭部分データのサイズが大きいほど、その冒頭部分データの再生時間が長くなる。
【００２６】
この例のように、冒頭部分データのサイズとコンテンツのサイズとの間に一定の関係がある場合があるのであり、本項に係るノード装置においては、そのような場合に、冒頭部分データのサイズが、コンテンツのサイズに基づいて可変に決定される。
【００２７】
（５）  前記冒頭部分データサイズ決定手段は、コンテンツのサイズが大きいほど大きくなるように前記冒頭部分データのサイズを決定する（４）項に記載のコンテンツオンデマンド型ノード装置。
【００２８】
このノード装置によれば、コンテンツのサイズが大きいほど、冒頭部分データの再生に必要な時間が長くなるため、その再生中に確実に、そのコンテンツの残存部分データをダウンロードして記憶することが可能となる。
【００２９】
（６）  各コンテンツの全体を表すデータは、複数のセグメントに分割されており、
当該ノード装置は、セングメント単位で、コンテンツデータを、対応するコンテンツホルダからダウンロードし、
前記第１データ取得手段は、前記冒頭部分データとして、前記複数のセグメントのうち先頭に位置する先頭セグメントの全体またはその先頭セグメントのうちの先頭部分を前記第１記憶手段に記憶する（１）ないし（５）項のいずれかに記載のコンテンツオンデマンド型ノード装置。
【００３０】
（７）  前記第１データ取得手段は、当該ノード装置の起動後であって、最初のコンテンツ取得要求がユーザから出される前の段階において、前記予め選択されたコンテンツの前記冒頭部分データを前記第１記憶手段に記憶する（１）ないし（６）項のいずれかに記載のコンテンツオンデマンド型ノード装置。
【００３１】
（８）  前記予め選択されたコンテンツを示すコンテンツリストを受信するコンテンツリスト受信手段と、
新たなコンテンツリストを受信すると、新たなコンテンツの有無を判定する判定手段と
を含み、
前記第１データ取得手段は、前記判定手段によって新たなコンテンツがあると判定された場合に、その新たなコンテンツの前記冒頭部分データを前記第１記憶手段に記憶する（１）ないし（７）項のいずれかに記載のコンテンツオンデマンド型ノード装置。
【００３２】
（９）  前記第２データ取得手段は、前記コンテンツ取得要求に応答して前記冒頭部分データが前記第１記憶手段から読み出されて前記再生装置によって再生されている間に、前記要求されたコンテンツの少なくとも前記残存部分データを前記第２記憶手段に記憶することを開始する（１）ないし（８）項のいずれかに記載のコンテンツオンデマンド型ノード装置。
【００３３】
このノード装置においては、同じコンテンツにつき、冒頭部分データの再生中に、それと並行して、残存部分データのダウンロードが行われる。
【００３４】
（１０）  前記要求されたコンテンツが前記第２記憶手段に記憶されているか否かを判定するコンテンツ記憶判定手段を含み、
前記第２データ取得手段は、前記要求されたコンテンツが前記第２記憶手段に記憶されていないと前記コンテンツ記憶判定手段によって判定された場合に、前記要求されたコンテンツを前記第２記憶手段に記憶する（１）ないし（９）項のいずれかに記載のコンテンツオンデマンド型ノード装置。
【００３５】
（１１）  他の複数のノード装置と共にオーバレイネットワークを構築するノード装置において、当該ノード装置のユーザの要求に応答してコンテンツを前記他の複数のノード装置の中から検索してダウンロードして取得するオンデマンド型コンテンツ取得方法であって、
ユーザがコンテンツを取得したいというコンテンツ取得要求をユーザから入力する要求入力工程と、
前記他の複数のノード装置のうち、予め選択されたコンテンツを保有しているコンテンツホルダを前記オーバレイネットワーク上において検索し、その検索されたコンテンツホルダから、前記予め選択されたコンテンツのうちの冒頭部分を表す冒頭部分データをダウンロードし、そのダウンロードした冒頭部分データをコンテンツＩＤによって識別可能な状態で第１記憶手段に記憶する第１データ取得工程と、
前記コンテンツ取得要求に応答して、ユーザによって要求されたコンテンツを保有している少なくとも１つのコンテンツホルダから、前記要求されたコンテンツのうち、少なくとも、前記第１記憶手段に既に記憶されている冒頭部分データを除く残存部分データをダウンロードし、そのダウンロードした少なくとも残存部分データをコンテンツＩＤによって識別可能な状態で第２記憶手段に記憶する第２データ取得工程と、
前記コンテンツ取得要求に応答して、前記第１記憶手段から、前記要求されたコンテンツの前記冒頭部分データを読み出して再生装置によって再生し、その再生に引き続いて、前記第２記憶手段から、前記要求されたコンテンツの前記残存部分データを読み出して前記再生装置によって再生する再生工程と
を含むオンデマンド型コンテンツ取得方法。
【００３６】
（１２）  （１）ないし（１１）項のいずれかに記載のオンデマンド型ノード装置の各手段としてコンピュータを機能させるために実行されるプログラム。
【００３７】
このプログラムは、それの機能を果たすためにコンピュータにより実行される指令の組合せのみならず、各指令に従って処理されるファイルやデータをも含むように解釈することが可能である。
【００３８】
また、このプログラムは、それ単独でコンピュータにより実行されることにより、所期の目的を達するものとしたり、他のプログラムと共にコンピュータにより実行されることにより、所期の目的を達するものとすることができる。後者の場合、本項に係るプログラムは、データを主体とするものとすることができる。
【００３９】
（１３）  （１２）項に記載のプログラムをコンピュータ読取り可能に記録した記録媒体。
【００４０】
この記録媒体は種々な形式を採用可能であり、例えば、フレキシブル・ディスク等の磁気記録媒体、ＣＤ、ＣＤ−ＲＯＭ等の光記録媒体、ＭＯ等の光磁気記録媒体、ＲＯＭ等のアンリムーバブル・ストレージ等のいずれかを採用し得る。
【発明を実施するための最良の形態】
【００４１】
以下、本発明のさらに具体的な実施の形態のいくつかを図面に基づいて詳細に説明する。
【００４２】
本発明の一実施形態に従うオンデマンド型コンテンツ取得方法は、ピアツーピア（Ｐ２Ｐ）グリッドシステム（以下、「グリッドシステム」と略称する。）を用いて実施される。そのグリッドシステムは、よく知られているように、分散ハッシュテーブルＤＨＴ(Distributed Hash Table)を用いてオーバレイネットワークを構成して複数台の端末装置（「ノード装置」ともいう。）間においてコンテンツ等の情報を共有しつつピアツーピア通信を行うことを可能にする。
【００４３】
このグリッドシステムにおいては、複数台の端末装置に、オーバレイネットワーク上における複数の論理的位置がそれぞれ割り当てられる。複数台の端末装置にそれぞれ割り当てられる複数の論理的位置を、オーバレイネットワーク上において分散して記憶させるために、ＤＨＴが用いられる。
【００４４】
各端末装置のオーバレイネットワーク上における論理的位置を識別するためのデータは、一般に、ノードＩＤと称される。例えば、上述のＤＨＴを用いる場合には、予め定められたハッシュ関数を各端末装置ごとに固有な情報に適用し、その結果得られた値をノードＩＤとして採用する。
【００４５】
図１には、互いに接続された複数台の端末装置１０によって構築されたグリッドシステム１２が概念的に表されている。それら端末装置１０は、共通のＤＨＴを用いることにより、互いに共同してオーバレイネットワーク１４を構築する。各端末装置１０は、ユーザがコンテンツを指定するとともにその指定されたコンテンツをダウンロードして視聴するために使用される。
【００４６】
そのグリッドシステム１２に、コンテンツ投入サーバ２０と、コンタクトノード紹介サーバ２２とが付加される。コンテンツ投入サーバ２０は、コンテンツをグリッドシステム１２に投入するために使用される。このコンテンツ投入サーバ２０は、コンテンツのＩＤが掲載されたカタログリスト３０を記憶している。具体的には、カタログリスト３０には、グリッドシステム１２に投入された複数のコンテンツの名前が、それぞれのコンテンツＩＤに関連づけて掲載されている。一方、コンタクトノード紹介サーバ２２は、各端末装置１０がグリッドシステム１２に参加するために最初にコンタクトすべきコンタクトノードの端末装置１０の論理的位置を各端末装置１０に紹介するために使用される。このコンタクトノード紹介サーバ２２は、これからグリッドシステム１２に参加しようとする各端末装置１０からの問い合わせがあると、それに応答して、コンタクトノードを各端末装置１０に紹介する。
【００４７】
図２には、各端末装置１０のハードウエア構成が機能ブロック図で概念的に表されている。各端末装置１０においては、ＣＰＵ４０と主記憶装置４２とがシステムバス４４を介して互いに接続されている。
【００４８】
システムバス４４には、さらに、周辺機器制御チップ４６を介して、それぞれ周辺機器としての、ハードディスク装置（以下、「ＨＤＤ」という。）５０と、赤外線ポート５２とが接続されている。ＨＤＤ５０においては、ハードディスク６０に対するデータの読み書きが行われる。図３に概念的に示すように、そのハードディスク６０に、冒頭部分データ保存領域６２とキャッシュ領域６４とを含む複数の領域が割り当てられている。一方、赤外線ポート５２は、ユーザによる入力を可能にするリモコン（入力装置の一例）７０との無線通信を可能にするために設けられている。そのリモコン７０は、ユーザが、コンテンツを特定したうえで、そのコンテンツを取得して再生することを要求するコンテンツ取得要求を端末装置１０に入力することを可能にする。
【００４９】
図２に示すように、システムバス４４には、さらに、ビデオ信号を制御するためのビデオチップ７２を介して、内蔵ディスプレイ（再生装置としての画像出力装置の一例）７４が接続されている。システムバス４４には、さらに、音声信号を制御するための音源チップ７６を介して、内蔵スピーカ（再生装置としての音声出力装置の一例）７８が接続されている。システムバス４４には、さらに、ネットワークインタフェース８０を介して、外部装置としてのルータ８２に接続されている。そのルータ８２は、対応する少なくとも１台の端末装置１０と、オーバレイネットワーク１４とを互いに接続するために設けられている。
【００５０】
図２に示すように、主記憶装置４２には、オペレーティングシステムと、コンテンツ制御プログラムと、画面制御プログラムと、デコーダ（プログラム）とが予め記憶されている。コンテンツ制御プログラムは、本発明の内容を理解するために必要なプログラムであるのに対し、他のプログラムは、ユーザがコンテンツをダウンロードして視聴するために必要な一般的なプログラムであるため、コンテンツ制御プログラムのみを詳細に説明し、他のプログラムは詳細な説明を省略する。
【００５１】
まず、図３および図４を参照することにより、コンテンツ制御プログラムの動作内容を概略的に説明する。コンテンツ制御プログラムは、端末装置１０の電源がＯＮにされると起動する。コンテンツ制御プログラムが起動すると、まず、端末装置１０の電源ＯＮ時にカタログリスト３０（コンテンツ投入サーバ２０から入手する）に記録されているコンテンツＩＤに対応するコンテンツのうちの冒頭部分を表す冒頭部分データのファイル（以下、「冒頭部分データファイル」という。）が既に、ハードディスク６０のうちの冒頭部分データ保存領域６２に存在するか否かがチェックされる。図３に示す例においては、説明の便宜上、コンテンツＩＤの末尾にアルファベットの「ａ」を付与することにより、そのコンテンツＩＤに対応する冒頭部分データファイル名が記述されている。したがって、図３に示す例においては、コンテンツＩＤが「１０００１」であるコンテンツと、コンテンツＩＤが「１０００２」であるコンテンツとについては、冒頭部分データファイルが存在することが分かる。
【００５２】
コンテンツ制御プログラムの更なる実行により、冒頭部分データファイルがハードディスク６０に存在しないコンテンツ、例えば、コンテンツＩＤが「１０００３」であるコンテンツの冒頭部分データファイルがオーバレイネットワーク１４上の他の端末装置１０であってそのコンテンツを保有しているものから自端末装置１０にダウンロードされる。
【００５３】
コンテンツ制御プログラムの更なる実行により、例えばハードディスク６０または主記憶装置４２に記憶されている設定ファイル９０から、ダウンロードすべき冒頭部分データファイルのサイズを定義し得る基準値が取得される。この基準値は、ダウンロードすべき複数のコンテンンツのすべてについて共通の固定値または可変値として定義したり、コンテンツごとにそのサイズに応じて変化する可変値として定義することが可能である。
【００５４】
基準値をコンテンツごとにそのサイズに応じて変化する可変値として定義するためには、例えば、これからダウンロードすべきコンテンツの全体のサイズに関する情報を外部装置（例えば、コンテンツ投入サーバ２０や、他の端末装置１０）から入手し、その情報と、コンテンツのサイズと冒頭部分データファイルのサイズとの間に予め定められた関係とに基づき、今回のコンテンツに対応する冒頭部分データファイルのサイズを決定してもよい。図５には、最終的にはその全データがダウンロードされるべきコンテンツのサイズに応じて冒頭部分データファイルのサイズが増加する関係の一例である右上がりの比例関係がグラフで表されている。
【００５５】
図４に示す例においては、設定ファイル９０に基準値が、ダウンロードすべき複数のコンテンツのすべてについて共通の固定値（例えば、１０ＭＢ）として記録されている。この例においては、コンテンツ制御プログラムの更なる実行により、例えば、コンテンツＩＤが「１０００３」であるコンテンツについては、そのコンテンツデータのうちの冒頭部分であって１０ＭＢのサイズを有するものが、オーバレイネットワーク１４からダウンロードされる。そのダウンロードされた冒頭部分データは、ファイル化されて、ハードディスク６０のうちの冒頭部分データ保存領域６２に記憶される。
【００５６】
図３に示す例においては、他のすべての未取得コンテンツ、すなわち、コンテンツＩＤがそれぞれ「２０００１」、「２０００２」、「２０００３」、「３０００１」、「３０００２」および「３０００３」である６つのコンテンツにつき、各冒頭部分データがダウンロードされて、冒頭部分データファイルとして冒頭部分データ保存領域６２に記憶される。
【００５７】
図６には、コンテンツ制御プログラムがフローチャートで概念的に表されている。端末装置１０の電源がＯＮされると、このコンテンツ制御プログラムが起動する。このコンテンツ制御プログラムが起動すると、まず、ステップＳ１において、このコンテンツ制御プログラムの初期化が行われる。次に、ステップＳ２において、この端末装置１０がグリッドシステム１２に参加するために必要な処理が行われる。
【００５８】
図７には、そのステップＳ２の詳細が参加処理サブルーチンとしてフローチャートで概念的に表されている。この参加処理サブルーチンにおいては、まず、ステップＳ１０１において、端末装置１０が、コンタクトノード紹介サーバ２２に、コンタクトノード情報（例えば、コンタクトノードのノードＩＤ）を要求する。次に、ステップＳ１０２において、端末装置１０は、コンタクトノード紹介サーバ２２からコンタクトノード情報を受信する。
【００５９】
続いて、ステップＳ１０３において、その受信されたコンタクトノード情報によって定義されるコンタクトノード（該当する他の端末装置１０）に、グリッドシステム１２に参加したいという参加要求を表す参加メッセージが送信される。その後、ステップＳ１０４において、端末装置１０は、コンタクトノードからテーブル情報を受信する。そのテーブル情報は、そのコンタクトノードが既に記憶しているルーティングテーブルのうち、参加メッセージに含まれる領域指定情報（ルーティングテーブルのレベルを指定するための情報）に該当する他の端末装置１０のノードＩＤを含んでいる。続いて、ステップＳ３において、受信したテーブル情報を用いることにより、自身のルーティングテーブルが作成ないしは更新される。
【００６０】
その後、ステップＳ１０６において、端末装置１０は、コンテンツ投入サーバ２０にカタログリスト３０を要求する。続いて、ステップＳ１０７において、端末装置１０は、コンテンツ投入サーバ２０からカタログリスト３０を受信する。以上で、この参加処理サブルーチンの実行が終了し、図６に示すステップＳ３に移行する。このステップＳ３においては、コンテンツの冒頭部分データをダウンロードによって取得するための処理が行われる。
【００６１】
図８には、そのステップＳ３の詳細が冒頭部分データ取得処理サブルーチンとしてフローチャートで概念的に表されている。この冒頭部分データ取得処理サブルーチンにおいては、まず、ステップＳ２０１において、カタログリスト３０に掲載されたすべてのコンテンツＩＤに対応する冒頭部分データがハードディスク６０の冒頭部分データ保存領域６２に既に存在しているか否かが判定される。今回は、すべてのコンテンツについて冒頭部分データが存在すると仮定すると、判定がＹＥＳとなり、以上で、この冒頭部分データ取得処理サブルーチンの実行が終了する。
【００６２】
これに対し、今回は、すべてのコンテンツについて冒頭部分データが存在するわけではないと仮定すると、ステップＳ２０１の判定がＮＯとなり、ステップＳ２０２において、冒頭部分データが存在しない少なくとも１つのコンテンツのうちのいずれかが、今回の対象コンテンツとして選択される。続いて、ステップＳ２０３において、設定ファイル９０から前述の基準値が取得される。その後、ステップＳ２０４において、今回の対象コンテンツに対応するメタファイルがハードディスク６０のキャッシュ領域６４に既に存在しているか否かが判定される。ここに、「メタファイル」は、今回の対象コンテンツに対応するコンテンツＩＤを示すファイルであり、対応するコンテンツを構成するすべてのセグメントファイルを特定するためのセグメントファイル情報（例えば、該当するセグメントファイルを示すコンテンツＩＤ）を含んでいる。
【００６３】
現時点では、通常、今回の対象コンテンツに対応するメタファイルがキャッシュ領域６４に存在しないため、ステップＳ２０４の判定がＮＯとなり、続いて、ステップＳ２０５において、今回の対象コンテンツに対応するメタファイルがオーバレイネットワーク１４上で検索されてダウンロードされる。その後、ステップＳ２０４の判定がＹＥＳである場合でも同様に、ステップＳ２０６において、存在するメタファイルから、今回の対象コンテンツを構成するすべてのセグメントファイルのセグメントファイル情報が抽出される。
【００６４】
続いて、ステップＳ２０７において、今回の対象コンテンツに対応する先頭セグメントファイルが、ハードディスク６０のキャッシュ領域６４に既に存在しているか否かが判定される。現時点では、通常、今回の対象コンテンツに対応する先頭セグメントファイルがキャッシュ領域６４に存在しないため、ステップＳ２０７の判定がＮＯとなり、続いて、ステップＳ２０８において、前記抽出されたセグメントファイル情報に基づき、今回の対象コンテンツに対応する先頭セグメントファイルがオーバレイネットワーク１４上において検索されてダウンロードされる。
【００６５】
その後、ステップＳ２０７の判定がＹＥＳである場合でも同様に、ステップＳ２０９において、今回の対象コンテンツに対応する先頭セグメントファイルから先頭部分データのみを冒頭部分データとして抽出するモードが設定ファイル（基本的にユーザによって指定できない）によって選択されているか否かが判定される。今回は、その先頭部分データ抽出モードが選択されていると仮定すると、ステップＳ２０９の判定がＹＥＳとなり、続いて、ステップＳ２１０において、今回の対象コンテンツに対応する先頭セグメントファイルから、前記取得された基準値と同じサイズ分、コンテンツデータがファイル化されて、かつ、冒頭部分データとして、ハードディスク６０の冒頭部分データ保存領域６２に保存される。その冒頭部分データは、対応するコンテンツＩＤによって識別可能な状態で冒頭部分データ保存領域６２に記憶される。その後、ステップＳ２０１に戻る。
【００６６】
これに対し、今回は、先頭部分データ抽出モードが選択されていないと仮定すると、ステップＳ２０９の判定がＮＯとなり、続いて、ステップＳ２１１において、今回の対象コンテンツに対応する先頭セグメントファイルの全体が冒頭部分データとしてコピーされ、そのコピーされた冒頭部分データがハードディスク６０の冒頭部分データ保存領域６２に保存される。その冒頭部分データは、対応するコンテンツＩＤによって識別可能な状態で冒頭部分データ保存領域６２に記憶される。その後、ステップＳ２０１に戻る。
【００６７】
ステップＳ２０２ないしＳ２１１の実行は、ステップＳ２０１の判定がＹＥＳとなるまで、反復される。ステップＳ２０１の判定がＹＥＳとなると、この冒頭部分データ取得処理サブルーチンの実行が終了する。
【００６８】
ところで、コンテンツ制御プログラムは、当該端末装置１０の起動後であって、ユーザがコンテンツ再生要求（すなわち、後述の選曲）を出すことが可能になる時期の前の段階において起動する。したがって、このコンテンツ制御プログラムは、端末装置１０の起動後であって、ユーザが最初にコンテンツ再生要求を出す前の段階において、起動する。その結果、冒頭部分データ取得処理サブルーチンも、ユーザが最初に選曲を行う前の段階において、起動し、それにより、ユーザによる最初の選曲操作に先立ち、カタログリスト３０に掲載されたすべてのコンテンツにつき、冒頭部分データのみがダウンロードされて端末装置１０に取得されることになる。
【００６９】
その後、図６に示すステップＳ４において、ユーザにより、特定のコンテンツである楽曲が選択されたか否か、すなわち、選曲が行われたか否かが判定される。ユーザは、選曲するために、リモコン７０を操作することにより、再生したいコンテンツを特定するとともに、そのコンテンツを再生することを要求する信号を端末装置１０に送信する。今回は、ユーザによって選曲が行われたと仮定すると、ステップＳ４の判定がＹＥＳとなり、ステップＳ５において、選曲処理が行われる。
【００７０】
図９には、ステップＳ５の詳細が選曲処理サブルーチンとしてフローチャートで概念的に表されている。この選曲処理サブルーチンにおいては、まず、ステップＳ３０１において、セグメント取得スレッド処理が行われる。図１０には、そのステップＳ３０１の詳細がセグメント取得スレッド処理プログラムとしてフローチャートで概念的に表されている。
【００７１】
このセグメント取得スレッド処理プログラムは、図６に示すコンテンツ制御プログラムと実質的に並行的に実行される。このセグメント取得スレッド処理プログラムが実行されると、まず、ステップＳ４０１において、選曲対象であるコンテンツに対応する前述のメタファイルがキャッシュ領域６４に存在するか否かが判定される。そのメタファイルは通常、キャッシュ領域６４に存在するが、ＣＰＵ４０は、そのキャッシュ領域６４に記憶されているデータのうち使用されない期間が長いものを自動的に消去する処理を行うようになっており、よって、必要なメタファイルが一旦、キャッシュ領域６４に記憶されても、そのメタファイルを本当に使用したいときにはキャッシュ領域６４に存在しない可能性がある。そのため、このステップＳ４０１がこのセグメント取得スレッド処理プログラムに存在する。
【００７２】
今回の対象コンテンツに対応するメタファイルがキャッシュ領域６４に存在しない場合には、ステップＳ４０２において、今回の対象コンテンツに対応するメタファイルがオーバレイネットワーク１４上で検索されてダウンロードされた後、ステップＳ４０３に移行するが、今回の対象コンテンツに対応するメタファイルがキャッシュ領域６４に存在する場合には、直ちにステップＳ４０３に移行する。いずれの場合にも、そのステップＳ４０３においては、存在するメタファイルから、今回の対象コンテンツを構成するすべてのセグメントファイルのセグメントファイル情報が抽出される。
【００７３】
続いて、ステップＳ４０４において、今回の対象コンテンツに対応する先頭セグメントファイルが、ハードディスク６０のキャッシュ領域６４に既に存在しているか否かが判定される。今回の対象コンテンツに対応する先頭セグメントファイルがキャッシュ領域６４に存在しない場合には、ステップＳ４０５において、前記抽出されたセグメントファイル情報に基づき、今回の対象コンテンツに対応する先頭セグメントファイルがオーバレイネットワーク１４上において検索されてダウンロードされる。その先頭セグメントファイルは、対応するコンテンツＩＤによって識別可能な状態でキャッシュ領域６４に記憶される。その後に、ステップＳ４０６に移行するが、今回の対象コンテンツに対応する先頭セグメントファイルがキャッシュ領域６４に存在する場合には、直ちにステップＳ４０６に移行する。いずれの場合にも、そのステップＳ４０６においては、選曲処理サブルーチンに対し、今回の対象コンテンツに対応する先頭セグメントファイルのダウンロードが完了したことが通知される。
【００７４】
その後、ステップＳ４０７において、今回の対象コンテンツを構成するすべてのセグメントファイルがチェックされたか否かが判定される。今回は、そうではないと仮定すると、ステップＳ４０８において、今回の対象コンテンツに対応するセグメントファイルであって先頭セグメントファイルに後続するもの（以下、「後続セグメントファイル」という。）がキャッシュ領域６４に存在するか否かが判定される。今回は、存在しないと仮定すると、ステップＳ４０９において、その後続セグメントファイルがオーバレイネットワーク１４上において検索されてダウンロードされる。その後続セグメントファイルは、対応するコンテンツＩＤによって識別可能な状態でキャッシュ領域６４に記憶される。その後、ステップＳ４１０において、選曲処理サブルーチンに対し、今回の対象コンテンツに対応する後続セグメントファイルのダウンロードが完了したことが通知される。これに対し、今回の対象コンテンツに対応する後続セグメントファイルがキャッシュ領域６４に存在すると仮定すると、直ちにステップＳ４１０に移行する。
【００７５】
いずれの場合にも、その後、ステップＳ４０７に戻る。ステップＳ４０８ないしＳ４１０の実行は、ステップＳ４０７の判定がＹＥＳとなるまで反復され、そのステップＳ４０７の判定がＹＥＳとなると、このセグメント取得スレッド処理プログラムの実行が終了する。
【００７６】
図９に示す選曲処理サブルーチンの説明に戻ると、ステップＳ３０２において、今回の対象コンテンツの再生中であるか否かが判定される。再生中であれば、ステップＳ３０３において、今回の対象コンテンツを構成するすべてのセグメントファイルについてのダウンロードが完了することが待たれる。完了すると、この選曲処理サブルーチンの実行が終了する。
【００７７】
これに対し、今回の対象コンテンツの再生中ではないと仮定すると、ステップＳ３０４において、今回の対象コンテンツに対応する前述のメタファイルと先頭セグメントファイルとがハードディスク６０のキャッシュ領域６４に存在するか否かが判定される。今回は、それらメタファイルと先頭セグメントファイルとのいずれも存在すると仮定すると、ステップＳ３０４の判定がＹＥＳとなり、続いて、ステップＳ３０５において、先頭セグメントファイルがキャッシュ領域６４から読み出され、その読み出された先頭セグメントファイルが、それの先頭位置から、再生される。
【００７８】
その後、ステップＳ３０６において、今回の対象コンテンツを構成するすべてのセグメントファイルの中に、現在再生中のセグメントファイル、すなわち、今回は先頭セグメントファイルに後続するセグメントファイル（未だダウンロードされていないもの）が存在するか否かが判定される。未だダウンロードされていない後続セグメントが存在する場合には、ステップＳ３０７において、前記存在するメタファイルに基づき、その後続セグメントファイルについてのダウンロードが行われるとともに、それが完了するのが待たれる。ダウンロードされた後続セグメントファイルは、対応するコンテンツＩＤによって識別可能な状態でキャッシュ領域６４に保存される。続いて、ステップＳ３０８において、そのダウンロードされた後続セグメントファイルが再生される。その後、ステップＳ３０６に戻る。ステップＳ３０６ないしＳ３０８の実行は、ステップＳ３０６の判定がＮＯとなるまで、反復される。以上で、この選曲処理サブルーチンの実行が終了する。
【００７９】
また、今回の対象コンテンツに対応する前述のメタファイルと先頭セグメントファイルとの双方がハードディスク６０のキャッシュ領域６４に存在するわけではない場合には、ステップＳ３０４の判定がＮＯとなり、続いて、ステップＳ３０９において、選曲されたコンテンツの冒頭部分データがハードディスク６０の冒頭部分データ保存領域６２から読み出されるとともに、その読み出された冒頭部分データが再生される。その後、ステップＳ３１０において、今回の対象コンテンツの先頭セグメントファイルについてのダウンロードが行われるとともに、それが完了するのが待たれる。ダウンロードされた先頭セグメントファイルは、対応するコンテンツＩＤによって識別可能な状態でキャッシュ領域６４に保存される。続いて、ステップＳ３１１において、その先頭セグメントファイルのうち、冒頭部分データに後続する非冒頭部分データが再生される。その後、ステップＳ３０６に移行する。
【００８０】
前述のセグメント取得スレッド処理プログラムが、今回の対象コンテンツの冒頭部分データの再生中に実行されると、図１１にタイムチャートで示すように、その冒頭部分データの再生に並行して、今回の対象コンテンツの先頭ファイルセグメントのダウンロード、すなわち、第１セグメントの取得が行われる。この第１セグメントは、そのすべてが冒頭部分データである場合と、一部のみが冒頭部分データである場合とがあるが、図１１に示す例においては、冒頭部分データと、それに後続する非冒頭部分データとから構成される。
【００８１】
したがって、図１１に示す例においては、冒頭部分データの再生中に（その再生開始に先立ち、その冒頭部分データが取得されて保存されている）、第１セグメントの取得が行われ、その結果、冒頭部分データは、２回取得されることになるが、非冒頭部分データには、はじめて取得される。
【００８２】
さらに、図１１に示す例においては、冒頭部分データの再生が終了すると、第１セグメントのうちの非冒頭部分データの再生が開始される。その第１セグメントの再生が終了すると、その第１セグメントに後続する第２セグメントの再生が開始され、その第２セグメントの再生が終了すると、その第２セグメントに後続する第３セグメントの再生が開始される。
【００８３】
以上、ユーザによる選曲が行われた場合を説明したが、選曲が行われていない場合には、図６に示すステップＳ４の判定がＮＯとなり、続いて、ステップＳ７において、カタログリスト３０がコンテンツ投入サーバ２０によって更新されたか否かが判定される。カタログリスト３０が更新された場合には、ステップＳ７の判定がＹＥＳとなり、ステップＳ８において、前述の冒頭部分データ取得処理サブルーチンが再度、実行される。これにより、更新されたカタログリスト３０には掲載されているが更新前のカタログリスト３０には掲載されていないコンテンツＩＤを有するコンテンツについての冒頭部分データがダウンロードされて冒頭部分データ保存領域６２に保存される。その後、ステップＳ６に移行する。
【００８４】
これに対し、カタログリスト３０が更新されていない場合には、ステップＳ７の判定がＮＯとなり、続いて、ステップＳ９において、各端末装置１０が他の端末装置１０からメッセージを受信したか否かが判定される。今回は、メッセージを受信していないと仮定すると、ステップＳ９の判定がＮＯとなり、直ちにステップＳ６に移行するが、メッセージを受信したと仮定すると、ステップＳ９の判定がＹＥＳとなり、続いて、ステップＳ１０において、その受信したメッセージに応じた処理が行われ、その後、ステップＳ６に移行する。
【００８５】
そのステップＳ６においては、端末装置１０の電源がＯＦＦされたか否かが判定される。ＯＦＦされてはいないと仮定すると、ステップＳ６の判定がＮＯとなり、ステップＳ４に戻るが、ＯＦＦされたと仮定すると、ステップＳ６の判定がＹＥＳとなり、このコンテンツ制御プログラムの実行が終了する。
【００８６】
以上の説明から明らかなように、本実施形態においては、説明の便宜上、例えば、各端末装置１０が前記（１）項に係る「コンテンツオンデマンド型ノード装置」の一例を構成し、また、リモコン７０が同項における「要求入力手段」の一例を構成し、また、各端末装置１０のうちステップＳ２０８ないしＳ２１１を実行するための部分が同項における「第１データ取得手段」の一例を構成し、また、各端末装置１０のうちステップＳ４０５ないしＳ４１０を実行するための部分が同項における「第２データ取得手段」の一例を構成していると考えることが可能である。
【００８７】
さらに、本実施形態においては、説明の便宜上、ハードディスク６０のうち、冒頭部分データ保存領域６２が前記（１）項における「第１記憶手段」の一例を構成し、また、キャッシュ領域６４が同項における「第２記憶手段」の一例を構成し、また、先頭セグメントファイルのうちの非冒頭部分データと後続セグメントファイルとがそれぞれ、同項における「残存部分データ」の一例を構成していると考えることが可能である。
【００８８】
さらに、本実施形態においては、説明の便宜上、各端末装置１０のうちステップＳ３０５、Ｓ３０８、Ｓ３０９およびＳ３１１を実行するための部分が前記（１）項における「再生手段」の一例を構成し、また、内蔵ディスプレイ７４および内蔵スピーカ７８がそれぞれ同項における「再生装置」の一例を構成していると考えることが可能である。
【００８９】
さらに、本実施形態においては、説明の便宜上、カタログリスト３０が前記（８）項における「コンテンツリスト」の一例を構成し、また、各端末装置１０のうちステップＳ１０６およびＳ１０７を実行するための部分が同項における「コンテンツリスト受信手段」の一例を構成し、また、各端末装置１０のうちステップＳ２０１を実行するための部分が同項における「判定手段」の一例を構成し、また、各端末装置１０のうちステップＳ２０２ないしＳ２１１を実行するための部分が同項における「第１データ取得手段」の一例を構成していると考えることが可能である。
【００９０】
さらに、本実施形態においては、説明の便宜上、各端末装置１０のうちステップＳ３０２、Ｓ３０３およびＳ４０７ないしＳ４１０を実行するための部分が前記（９）項における「第２データ取得手段」の一例を構成していると考えることが可能である。
【００９１】
さらに、本実施形態においては、説明の便宜上、各端末装置１０のうちステップＳ３０６を実行するための部分が前記（１０）項における「コンテンツ記憶判定手段」の一例を構成し、また、各端末装置１０のうちステップＳ３０７およびＳ４０７ないしＳ４１０を実行するための部分が同項における「第２データ取得手段」の一例を構成していると考えることが可能である。
【００９２】
さらに、本実施形態においては、説明の便宜上、コンテンツ制御プログラムが前記（１２）項に係る「プログラム」の一例を構成し、また、そのコンテンツ制御プログラムを記憶している主記憶装置４２が前記（１３）項に係る「記録媒体」の一例を構成していると考えることが可能である。
【００９３】
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記［発明の開示］の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【図面の簡単な説明】
【００９４】
【図１】本発明の一実施形態に従うオンデマンド型コンテンツ取得方法を実施するために使用されるピアツーピアグリッドシステム１２をコンテンツ投入サーバ２０およびコンタクトノード紹介サーバ２２と共に概念的に表す系統図である。
【図２】図１に示す各端末装置１０のハードウエア構成を概念的に表す機能ブロック図である。
【図３】図１に示すコンテンツ制御プログラムの動作を概略的に説明するために、図１に示すハードディスク６０の内容とカタログリスト３０の内容との関係を概念的に表す図である。
【図４】図１に示すコンテンツ制御プログラムの動作を概略的に説明するために、図１に示すハードディスク６０の内容と設定ファイル９０の内容との関係を概念的に表す図である。
【図５】図１に示す実施形態の一変形例として、コンテンツごとにダウンロードすべきコンテンツのうちの冒頭部分データのサイズを可変に決定するために参照されるコンテンツデータのサイズと冒頭部分データのサイズとの関係を示すグラフである。
【図６】図１に示すコンテンツ制御プログラムを概念的に表すフローチャートである。
【図７】図６に示すステップＳ２の詳細を参加処理サブルーチンとして概念的に表すフローチャートである。
【図８】図６に示すステップＳ３の詳細を冒頭部分データ取得処理サブルーチンとして概念的に表すフローチャートである。
【図９】図６に示すステップＳ５の詳細を選曲処理サブルーチンとして概念的に表すフローチャートである。
【図１０】図９に示すステップＳ３０１の詳細をセグメント取得スレッド処理プログラムとして概念的に表すフローチャートである。
【図１１】図６に示すコンテンツ制御プログラムの動作内容の一例を説明するためのタイムチャートである。
【符号の説明】
【００９５】
１０  端末装置
１２  ピアツーピアグリッドシステム
１４  オーバレイネットワーク
３０  カタログリスト
５０  ハードディスク装置
６０  ハードディスク
６２  冒頭部分データ保存領域
６４  キャッシュ領域
７０  リモコン
９０  設定ファイル
【図１】
2009049487.tif 000003
【図２】
2009049487.tif 000004
【図３】
2009049487.tif 000005
【図４】
2009049487.tif 000006
【図５】
2009049487.tif 000007
【図６】
2009049487.tif 000008
【図７】
2009049487.tif 000009
【図８】
2009049487.tif 000010
【図９】
2009049487.tif 000011
【図１０】
2009049487.tif 000012
【図１１】
2009049487.tif 000013