(57)【要約】【課題】各端末装置への情報の配信効率の低下を防止可能な階層構造を形成することができる情報配信システム及び同システムにおける階層構造の形成方法及びプログラムを提供する。【解決手段】ネットワークを介して複数の端末装置を多層に接続して階層構造を構成し、当該階層構造の上流の端末装置から下流の端末装置へ順次情報が中継される情報配信システムにおいて、階層構造における複数の端末装置のそれぞれの理想位置を規定した理想階層構造の情報を記憶する記憶手段を備え、端末装置が階層構造へ参加するときに、記憶手段に記憶された理想階層構造の情報のうち当該参加する端末装置の理想位置に対して予め定められた接続基準に従った順番で選択される接続先候補の端末装置に対して接続が可能か否かが順次判断され、接続可能な接続先候補があったとき、当該接続可能な接続先候補に参加する端末装置を接続する。【選択図】図５
2009200725.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して複数の端末装置を多層に接続して階層構造を構成し、当該階層構造の上流の端末装置から下流の端末装置へ順次情報が中継される情報配信システムにおいて、
前記階層構造における前記複数の端末装置のそれぞれの理想位置を規定した理想階層構造の情報を記憶する記憶手段を備え、
前記端末装置が前記階層構造へ参加するときに、前記記憶手段に記憶された前記理想階層構造の情報のうち当該参加する端末装置の理想位置に対して予め定められた接続基準に従った順番で選択される接続先候補の端末装置に対して接続が可能か否かが順次判断され、接続可能な接続先候補があったとき、当該接続可能な接続先候補に前記参加する端末装置を接続する
ことを特徴とする情報配信システム。
【請求項２】
前記記憶手段を有するサーバ装置を備え、
前記端末装置は、
前記階層構造における前記複数の端末装置の理想位置を規定した理想階層構造の情報を前記サーバ装置から取得する取得処理手段と、
前記階層構造へ参加するときに、前記取得処理手段で取得した理想階層構造のうち自装置の理想位置に対して予め定められた接続基準に従った順番で接続先候補の端末装置に対して接続を順次試み、接続可能な接続先候補があったときに当該接続先候補と接続する接続処理手段とを備えたことを特徴とする請求項１に記載の情報配信システム。
【請求項３】
前記接続処理手段は、前記階層構造へ参加した後、定期的に、前記階層構造から離脱し、前記取得処理手段で取得した理想階層構造のうち自装置の理想位置に対して予め定められた接続基準に従った順番で接続先候補の端末装置に対して接続を順次試み、接続可能な接続先候補があったときに当該接続先候補と接続することを特徴とする請求項２に記載の情報配信システム。
【請求項４】
前記記憶手段を有するサーバ装置を備え、
前記端末装置は、
前記階層構造へ参加するときに、前記サーバ装置に対して接続先候補の端末装置の紹介を要求する接続先紹介要求手段と、
前記紹介要求に対して前記サーバ装置から通知される接続先候補に対して接続を行う接続処理手段と、
前記階層構造への接続時又はその後、前記階層構造における自装置の位置を前記サーバ装置に対して通知する通知手段とを備え、
前記サーバ装置は、
各前記端末装置から通知された当該端末装置の前記階層構造における位置に基づいて、前記階層構造の状態を検出する階層構造状態検出手段と、
前記端末装置から接続先候補の紹介要求があったとき、前記記憶手段に記憶している前記理想階層構造の情報のうち前記紹介要求を行った端末装置の理想位置に対して予め定められた接続基準に従った順番で接続先候補を選択して通知する接続先候補紹介手段とを備えたことを特徴とする請求項１に記載の情報配信システム。
【請求項５】
前記端末装置は、
自装置の下流に接続している他の端末装置の理想位置の情報を記憶する下流情報記憶手段と、
他の端末装置から接続の要求があったとき、当該接続の要求を行った他の端末装置の理想位置と前記下流情報記憶手段に記憶した他の端末装置の理想位置とを比較して、前記接続の要求を行った他の端末装置と接続すべきか否かを判定する判定手段と、
前記判定手段により前記接続の要求を行った他の端末装置と接続すべきと判定されると、当該接続の要求を行った他の端末装置との接続を行い、前記下流に接続している他の端末装置との接続を切断する下流接続処理手段とを備えたことを特徴とする請求項２〜４のいずれか１項に記載の情報配信システム。
【請求項６】
前記端末装置の理想位置の情報として、前記理想階層構造の上流から下流に向けて一定の配列順序となる端末番号が各前記端末装置に対して割り当てられており、
前記判定手段は、前記接続の要求を行った他の端末装置の端末番号が前記下流情報記憶手段に記憶している端末番号よりも上流側にある端末番号であるときに、前記接続の要求を行った他の端末装置と接続すべきと判定することを特徴とする請求項５に記載の情報配信システム。
【請求項７】
前記判定手段は、前記接続の要求を行った他の端末装置の端末番号が前記下流情報記憶手段に記憶している端末番号よりも上流側にある端末番号であるときであっても、前記接続の要求を行った他の端末装置の端末番号が前記理想階層構造において自装置の理想位置の下流に接続される端末装置の端末番号よりも下流側にある端末番号ではなく、かつ同じ端末番号でもないとき、前記接続の要求を行った他の端末装置と接続すべきでないと判定することを特徴とする請求項６に記載の情報配信システム。
【請求項８】
コンピュータを、請求項２〜７のいずれか１項に記載の情報配信システムにおける前記端末装置の各手段として機能させることを特徴とするプログラム。
【請求項９】
ネットワークを介して複数の端末装置を多層に接続して階層構造を構成し、当該階層構造の上流の端末装置から下流の端末装置へ順次情報が中継される情報配信システムにおける前記階層構造の形成方法であって、
前記階層構造における前記複数の端末装置のそれぞれの理想位置を規定した理想階層構造の情報を記憶手段に記憶するステップと、
前記端末装置が前記階層構造へ参加するときに、前記記憶手段に記憶された前記理想階層構造の情報のうち当該参加する端末装置の理想位置に対して予め定められた接続基準に従った順番で選択される接続先候補の端末装置に対して接続が可能か否かを順次判断していき、接続可能な接続先候補があったとき、当該接続可能な接続先候補に前記参加する端末装置を接続するステップと、
を有することを特徴とする情報配信システムにおける階層構造の形成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報配信システム及び同システムにおける階層構造の形成方法及びプログラムに関するものであり、特に、ネットワークを介して複数の端末装置を多層に接続して階層構造を構成し、当該階層構造の上流の端末装置から下流の端末装置へ順次情報が中継される情報配信システム、及び同システムにおける階層構造の形成方法、及びプログラムに関するものである。
【背景技術】
【０００２】
近年、ブロードバンドの普及に伴って、コンテンツ情報を配信する情報配信サービスが人気となっている。例えば、ＶＯＤ（ビデオオンデマンド）のように利用者の要求に応じてコンテンツ情報を配信するサービスの他、インターネット放送のようにコンテンツ情報を放送形式で配信するサービスが知られている。
【０００３】
この種の情報配信サービスは、サーバクライアント方式による配信形態が主流であったが、最近では、この方式に代わる新しい配信形態としてＰ２Ｐ（ピアツーピア）型の配信形態であるツリー型トポロジー形式の配信形態が注目されている。
【０００４】
このツリー型トポロジー形式は、インターネットなどのネットワークを介してコンテンツ情報を配信する情報配信装置を頂点として複数の端末装置がネットワーク上にツリー状の階層構造で多層に論理接続され、情報配信装置から配信されるコンテンツ情報が端末装置の中継機能により順次下層の端末装置へ中継される配信形態である（例えば、特許文献１参照）。
【０００５】
このツリー型トポロジー形式の配信形態においては、端末装置が新たにツリー状の階層構造へ参加（接続）する際、この階層構造を管理する接続管理装置に問い合わせを行い、接続先の端末装置（以下、「接続先候補」とも呼ぶ。）を教えてもらう。すなわち、接続管理装置は、新規に参加する端末装置から問い合わせを受けたとき、ツリー状の階層構造に参加している端末装置の中から、その端末装置の下流側に他の端末装置を接続可能な接続先候補を選択をする。新規に参加する端末装置は、このように接続管理装置が選択した接続先候補に接続して、情報配信装置が配信するコンテンツ情報を受信するようにしている。
【０００６】
この情報配信システムでは、ツリー状の階層構造に参加する各端末装置毎に、性能、使用している通信回線の種類、ネットワーク上における物理的距離がそれぞれ異なる。
【０００７】
そのため、ツリー状の階層構造を用いた情報配信システムでは、性能の高い端末装置や通信帯域が広く通信速度の速い通信回線を使用している端末装置を階層構造の上流側へ配置することや、ネットワーク上における物理的距離の近い端末装置同士を階層構造中で近い位置に配置することがコンテンツ情報を効率的に配信する上で理想的である。
【特許文献１】特開２００６−３３５１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところが、上記従来の情報配信システムでは、情報配信装置から配信されるコンテンツ情報を効率良く各端末装置へ配信可能なツリー状の階層構造を形成することが困難であった。
【０００９】
すなわち、上記従来の情報配信システムでは、端末装置が一旦ツリー状の階層構造へ参加した後は、コンテンツ情報の配信経路において、自装置の上流に接続している装置との通信が途絶したときや、自らツリー状の階層構造から離脱するまで、ツリー状階層構造の接続位置は維持されるので、性能の低い端末装置や、通信速度の低い通信回線や通信帯域の狭い通信回線を使用している端末装置が、コンテンツ情報の配信経路における上流側に長時間配置される場合や、ネットワーク上における物理的距離が近い端末装置同士が階層構造中の離れた位置に配置される場合があり、この場合、各端末装置へのコンテンツ情報の配信効率が低下するという問題があった。
【課題を解決するための手段】
【００１０】
請求項１に係る本発明では、ネットワークを介して複数の端末装置を多層に接続して階層構造を構成し、当該階層構造の上流の端末装置から下流の端末装置へ順次情報が中継される情報配信システムにおいて、前記階層構造における前記複数の端末装置のそれぞれの理想位置を規定した理想階層構造の情報を記憶する記憶手段を備え、前記端末装置が前記階層構造へ参加するときに、前記記憶手段に記憶された前記理想階層構造の情報のうち当該参加する端末装置の理想位置に対して予め定められた接続基準に従った順番で選択される接続先候補の端末装置に対して接続が可能か否かが順次判断され、接続可能な接続先候補があったとき、当該接続可能な接続先候補に前記参加する端末装置を接続することを特徴とする。
【００１１】
また、請求項２に係る本発明では、請求項１に記載の情報配信システムにおいて、前記記憶手段を有するサーバ装置を備え、前記端末装置は、前記階層構造における前記複数の端末装置の理想位置を規定した理想階層構造の情報を前記サーバ装置から取得する取得処理手段と、前記階層構造へ参加するときに、前記取得処理手段で取得した理想階層構造のうち自装置の理想位置に対して予め定められた接続基準に従った順番で接続先候補の端末装置に対して接続を順次試み、接続可能な接続先候補があったときに当該接続先候補と接続する接続処理手段とを備えたことを特徴とする。
【００１２】
また、請求項３に係る本発明では、請求項２に記載の情報配信システムにおいて、前記接続処理手段は、前記階層構造へ参加した後、定期的に、前記階層構造から離脱し、前記取得処理手段で取得した理想階層構造のうち自装置の理想位置に対して予め定められた接続基準に従った順番で接続先候補の端末装置に対して接続を順次試み、接続可能な接続先候補があったときに当該接続先候補と接続することを特徴とする。
【００１３】
また、請求項４に係る本発明では、請求項１に記載の情報配信システムにおいて、前記記憶手段を有するサーバ装置を備え、前記端末装置は、前記階層構造へ参加するときに、前記サーバ装置に対して接続先候補の端末装置の紹介を要求する接続先紹介要求手段と、前記紹介要求に対して前記サーバ装置から通知される接続先候補に対して接続を行う接続処理手段と、前記階層構造への接続時又はその後、前記階層構造における自装置の位置を前記サーバ装置に対して通知する通知手段とを備え、前記サーバ装置は、各前記端末装置から通知された当該端末装置の前記階層構造における位置に基づいて、前記階層構造の状態を検出する階層構造状態検出手段と、前記端末装置から接続先候補の紹介要求があったとき、前記記憶手段に記憶している前記理想階層構造の情報のうち前記紹介要求を行った端末装置の理想位置に対して予め定められた接続基準に従った順番で接続先候補を選択して通知する接続先候補紹介手段とを備えたことを特徴とする。
【００１４】
また、請求項５に係る本発明では、請求項２〜４のいずれか１項に記載の情報配信システムにおいて、前記端末装置は、自装置の下流に接続している他の端末装置の理想位置の情報を記憶する下流情報記憶手段と、他の端末装置から接続の要求があったとき、当該接続の要求を行った他の端末装置の理想位置と前記下流情報記憶手段に記憶した他の端末装置の理想位置とを比較して、前記接続の要求を行った他の端末装置と接続すべきか否かを判定する判定手段と、前記判定手段により前記接続の要求を行った他の端末装置と接続すべきと判定されると、当該接続の要求を行った他の端末装置との接続を行い、前記下流に接続している他の端末装置との接続を切断する下流接続処理手段とを備えたことを特徴とする。
【００１５】
また、請求項６に係る本発明では、請求項５に記載の情報配信システムにおいて、前記端末装置の理想位置の情報として、前記理想階層構造の上流から下流に向けて一定の配列順序となる端末番号が各前記端末装置に対して割り当てられており、前記判定手段は、前記接続の要求を行った他の端末装置の端末番号が前記下流情報記憶手段に記憶している端末番号よりも上流側にある端末番号であるときに、前記接続の要求を行った他の端末装置と接続すべきと判定することを特徴とする。
【００１６】
また、請求項７に係る本発明では、請求項６に記載の情報配信システムにおいて、前記判定手段は、前記接続の要求を行った他の端末装置の端末番号が前記下流情報記憶手段に記憶している端末番号よりも上流側にある端末番号であるときであっても、前記接続の要求を行った他の端末装置の端末番号が前記理想階層構造において自装置の理想位置の下流に接続される端末装置の端末番号よりも下流側にある端末番号ではなく、かつ同じ端末番号でもないとき、前記接続の要求を行った他の端末装置と接続すべきでないと判定することを特徴とする。
【００１７】
また、請求項８に係る本発明では、コンピュータを、請求項２〜７のいずれか１項に記載の情報配信システムにおける前記端末装置の各手段として機能させるプログラムを提供することとした。
【００１８】
また、請求項９に係る本発明では、ネットワークを介して複数の端末装置を多層に接続して階層構造を構成し、当該階層構造の上流の端末装置から下流の端末装置へ順次情報が中継される情報配信システムにおける前記階層構造の形成方法であって、前記階層構造における前記複数の端末装置のそれぞれの理想位置を規定した理想階層構造の情報を記憶手段に記憶するステップと、前記端末装置が前記階層構造へ参加するときに、前記記憶手段に記憶された前記理想階層構造の情報のうち当該参加する端末装置の理想位置に対して予め定められた接続基準に従った順番で選択される接続先候補の端末装置に対して接続が可能か否かを順次判断していき、接続可能な接続先候補があったとき、当該接続可能な接続先候補に前記参加する端末装置を接続するステップとを有することを特徴とする。
【発明の効果】
【００１９】
本発明によれば、各端末装置への情報の配信効率の低下を防止可能な階層構造を形成することができる。
【発明を実施するための最良の形態】
【００２０】
［１．第１実施形態］
［１．１．情報配信システムの概要構成等］
まず、図１を参照して、本実施形態に係る情報配信システムＳの概要構成について説明する。図１は、本実施形態に係る情報配信システムＳの概要構成例を示す説明図である。
【００２１】
図１に示すように、本実施形態に係る情報配信システムＳは、音楽データ、映像データ或いは文書データなどのコンテンツ情報をネットワーク８を介して配信する情報配信装置１と、ネットワーク８上において情報配信装置１を頂点としてツリー状の階層構造（以下、「ツリー」と呼ぶ。）で多層に論理接続される複数の端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８と、このツリーを管理するサーバ装置３とを備えている。なお、端末装置の数をここでは１４台としているがこれに限られるものではない。
【００２２】
図１では、中央の破線内に情報配信装置１と各端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８との論理接続形態を示しており、その下側に、各装置（情報配信装置１と各端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８とサーバ装置３）の物理的接続形態を示している。
【００２３】
情報配信装置１、端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８、サーバ装置３には、各々ＩＰアドレスが割り当てられており、これら装置は、図１下部に示すように、ネットワーク８の一例としてのインターネットにルータ等を介して接続されている。
【００２４】
情報配信装置１には、ネットワーク８における所在情報としてのＩＰアドレスと、固有の識別情報としての装置ＩＤとが割り当てられており、各端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８にも、それぞれネットワーク８における所在情報としてのＩＰアドレスと、固有の識別情報としての端末ＩＤとが割り当てられている。なお、本実施形態では、端末ＩＤとしてＭＡＣアドレスを用いている。
【００２５】
また、これらの装置間において、各端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８は、情報配信装置１や接続先候補の端末装置（以下、「接続先候補」という。）２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８へ自装置の端末ＩＤ等を含む接続要求通知を送信して接続することによって、双方向での情報通信が可能となる。
【００２６】
そして、情報配信装置１及び端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８が装置間でセッションを確立することによって論理接続され、ツリーが構築される。なお、以下の説明において、端末装置２ａ１，２ａ２，２ｂ１〜２ｂ４，２ｃ１〜２ｃ８のうち任意の端末装置又はすべての端末装置を示す場合には、便宜上、端末装置２という場合がある。
【００２７】
この情報配信システムＳにおいて、情報配信装置１は、コンテンツ情報を自装置の下流に接続している端末装置２ａ１，２ａ２へ送信する。端末装置２ａ１，２ａ２は上流に接続した情報配信装置１からコンテンツ情報を受信すると、下流に接続した端末装置（以下、「下流端末」とも呼ぶ。）２ｂ１〜２ｂ４へ受信したコンテンツ情報を中継する。同様に、端末装置２ｂ１〜２ｂ４はコンテンツ情報を受信すると、下流に接続した端末装置２ｃ１〜２ｃ８へ受信したコンテンツ情報を中継する。なお、以下の説明では、ツリーにおいて自装置の上流に接続している端末装置２を上流端末とも呼ぶ。
【００２８】
このように情報配信システムＳにおいては、情報配信装置１から配信されるコンテンツ情報が端末装置２の中継機能により順次下層の端末装置２へ中継され、当該情報配信システムＳのツリーを構成する全ての端末装置２へコンテンツ情報が配信される。配信されるコンテンツ情報には、音楽や映画などコンテンツデータのほか、再生時刻の情報（以下、「再生時刻データ」という。）が含まれている。そして、コンテンツ情報を受信した複数の端末装置２は、順次送信されるコンテンツ情報の再生を再生時刻データに基づいて行なう。
【００２９】
このようにして、情報配信システムＳは、情報配信装置１から送信されたコンテンツ情報が複数の端末装置２に配信され、複数の端末装置２において同時刻にコンテンツ情報を再生することができる。すなわち、Ｐ２Ｐを用いて複数の端末装置２への放送形式のストリーミング配信を実現している。
【００３０】
特に、本実施形態の情報配信システムＳでは、サーバ装置３がツリーにおける複数の端末装置２のそれぞれの理想接続位置（以下、「理想位置」という。）を規定した理想階層構造（以下、「理想ツリー」という。）に関する情報（以下、「理想ツリー情報」という。）を記憶する記憶手段を備えている。
【００３１】
サーバ装置３は、各端末装置２が新規に当該情報配信システムＳのツリーに参加する際に、その端末装置２から当該端末装置２が使用している通信回線に関する情報や、その端末装置２の情報処理能力に関する情報、使用しているインターネットプロバイダに関する情報等を取得し、これらの情報に基づいて、コンテンツ情報の配信効率が向上するように、その端末装置２の理想ツリーにおける理想位置を決定して、理想ツリー情報を作成するように構成している。
【００３２】
そして、各端末装置２は、当該情報配信システムＳのツリーに参加（接続）するときに、サーバ装置３から理想ツリー情報を取得し、この理想ツリー情報に基づいて、理想ツリーにおける自装置の理想位置に対して予め定められた接続基準に従った順番で、接続先候補に対して接続を試み、接続可能な接続先候補があったときに、その接続先候補に接続するように構成している。
【００３３】
このように、本実施形態の情報配信システムＳは、サーバ装置３がツリーに参加する各端末装置２の情報配信能力やネットワーク８における物理的位置に基づいて、理想ツリー情報を作成して記憶し、各端末装置２がサーバ装置３から取得した理想ツリー情報に基づいて、ツリーにおける接続先候補を判断して接続するように構成しているので、ツリーにおける各端末装置２の参加位置を理想位置に近付けることができ、その結果、ツリーの構造も理想ツリーに近付くので、各端末装置２へのコンテンツ情報の配信効率の低下を防止可能なツリーを形成することができる。
【００３４】
[１．２．情報配信システムにおける理想ツリー]
ここで、本実施形態の情報配信システムＳにおける理想ツリーについて説明する。
【００３５】
図２は、理想ツリーの一例を示す説明図である。ここでは、１台の情報配信装置１と１４台の端末装置２とにより構成される理想ツリーを例に挙げて説明する。なお、ここでは、情報配信装置１及び各端末装置２は、自装置の下流に２台の端末装置２を接続可能であるものとして説明するが、下流に接続可能な端末装置２の台数はこれに限定するものではなく、任意に変更してもよい。
【００３６】
この情報配信システムＳでは、サーバ装置３が情報配信装置１及び各端末装置２に対し、各装置の情報処理能力や通信速度、通信帯域、使用しているインターネットプロバイダ等に関する情報に基づいて、各装置の理想ツリーにおける接続すべき理想位置を示す端末番号を割り当てるようにしている。
【００３７】
本実施形態では、サーバ装置３がツリーを構成する１５台の装置に「１」〜「１５」の端末番号を割り当てるようにしており、具体的には、図２に示すように、理想ツリーの頂点（最上層）に位置する情報配信装置１に対して端末番号が最も大きい端末番号「１５」を割り当て、この情報配信装置１を配信元とするコンテンツ情報の各配信経路において、上流側から下流側へ向けて順次端末番号が小さくなるように一定の配列順序で、各端末装置２に対して「１４」〜「１」の端末番号を割り当てて理想ツリーを作成し、この理想ツリーに関する理想ツリー情報を記憶している。
【００３８】
また、各端末装置２は、情報配信システムＳのツリーに参加する際に、サーバ装置３からこの理想ツリー情報と共に自装置に割り当てられた端末番号を取得する。
【００３９】
さらに、各端末装置２は、自装置の下流側に他の端末装置２を接続したときに、その端末装置２の端末番号を取得して記憶する。
【００４０】
そして、各端末装置２は、サーバ装置３から取得した理想ツリー情報に基づいて、理想ツリーにおける自装置の理想位置に対してサーバ装置３により予め定められた後述の接続基準に従った順番で選択した接続先候補に対して接続を試み、当該接続を試みた接続先候補が接続可能であるか否かを判断して、接続が可能であったときに、その接続先候補と接続する。
【００４１】
[１．３．端末装置の接続順序]
ここで、各端末装置２がツリーにおける接続先候補を選択する際の接続基準に従った順番について説明する。図３は、各端末装置２毎の接続順序の一例を示す説明図である。
【００４２】
本実施形態では、図３に示すように、端末番号として「１」が割り当てられた端末装置（以下、端末番号「１」の端末装置２という。）は、ツリーに参加する際、端末番号「３」、「２」、「７」、「６」、「５」、「４」、「１５」が割り当てられた端末装置２に対して、この順番で順次接続を試み、接続が可能な端末装置２があったときに、その端末装置２の下流側に接続する。
【００４３】
具体的には、端末番号「１」の端末装置２は、理想ツリーの中で、自装置の端末番号「１」が割り当てられている位置の直上流（以下、「１つ上」という。）に位置する端末装置２（端末番号「３」）、次に、自装置の一つ上の端末装置２の左側直下流（以下、「左下」という。）に位置する端末装置２（端末番号「２」）、次に、左下の端末装置２（端末番号「２」）の直下流（以下、「下」という。）に端末装置２が接続していた場合その端末装置２、左上の端末装置２（端末番号「２」）の下に端末装置２が接続していなかった場合２つ上の端末装置２（端末番号「７」）、次に、２つ上の端末装置２の左下の端末装置２（端末番号「６」）、というように、自装置から見て上、次に左下、次に、左下の下、次に、左下の下がない場合、上の一つ上に位置する端末装置２という順番で、順次接続を試みるように接続順序が予め決定されている。
【００４４】
そのため、端末番号「５」の端末装置２の接続順序は、図２に示すように、端末番号「６」、「７」、「１５」に対応する端末装置２の順序となり、端末番号「１２」の端末装置２の接続順序は、端末番号「１３」、「１４」、「１５」に対応する端末装置２の順序となる。
【００４５】
そして、各端末装置２は、接続先候補との接続を試みる際に、その接続先候補に対して、接続要求通知を送信する。
【００４６】
[１．４．接続要求通知]
ここで、各端末装置２が接続先候補へ送信する接続要求通知について説明する。図４は、接続要求通知の一例を示す説明図である。本実施形態において、この接続要求通知は、図４に示すように、自装置の端末ＩＤと、自装置の端末番号と、接続先候補の下流右側又は下流左側のいずれ側に接続を要求（希望）するのかを示す情報とを含んだ情報としている。
【００４７】
[１．５．ツリーの形成方法等]
ここで、端末番号「１」の端末装置２がツリーに参加する場合のツリーの形成方法の一具体例について、図５及び図６を参照して説明する。図５及び図６は、ツリーの形成方法を示す説明図である。
【００４８】
ここでは、理想ツリーが図２に示した状態であり、実際のツリーが図５に示す状態、すなわち、端末番号「４」〜「１５」の装置が理想ツリーどおりに実際のツリーに参加しており、端末番号「２」、「３」の端末装置２が実際のツリーに参加していないときに、端末番号「１」の端末装置２が実際のツリーに参加する場合を例に挙げて説明する。
【００４９】
（１）まず、端末番号「１」の端末装置２は、図５（ａ）に示すように、サーバ装置３へ理想ツリー情報要求を送信する。
【００５０】
（２）サーバ装置３は、この理想ツリー情報要求を受信すると、端末番号「１」の端末装置２へ、現在の理想ツリー情報（図２参照）を送信する。
【００５１】
次に、端末番号「１」の端末装置２は、この理想ツリー情報を受信すると、この理想ツリー情報から所定の接続順序（図３参照）に基づいて、接続先候補を選択し、その接続先候補へ、接続要求通知を送信する。
【００５２】
（３）ここで、端末番号「１」の端末装置２は、上記した所定の接続順序に従って、最初に端末番号「３」の端末装置２へ接続要求通知を送信する。
【００５３】
このとき、端末番号「３」の端末装置２は、ツリーに参加していないので、送信した接続要求通知は自装置へ返信されることとなり、端末番号「１」の端末装置２は、自装置から送信した接続要求通知を受信することによって、端末番号「３」の端末装置２との接続が不可能であると判断する。
【００５４】
（４）次に、端末番号「１」の端末装置２は、所定の接続順序に従って、端末番号「２」の端末装置２へ接続要求通知を送信する。
【００５５】
このとき、端末番号「２」の端末装置２もツリーに参加していないので、端末番号「１」の端末装置２は、自装置が送信した接続要求通知を受信して、端末番号「２」の端末装置２との接続が不可能であると判断する。
【００５６】
（５）次に、端末番号「１」の端末装置２は、所定の接続順序に従って、端末番号「７」の端末装置２へ接続要求通知を送信する。
【００５７】
端末番号「７」の端末装置２は、受信した接続要求通知から当該接続要求通知を送信してきた端末装置２の端末番号（ここでは、端末番号「１」）を取得して記憶する。
【００５８】
このとき、端末番号「７」の端末装置２は、自装置の下流側に１台の端末装置（ここでは、端末番号「６」の端末装置２）しか接続しておらず、あと１台までは他の端末装置２を接続可能な状態であるため、図５（ｂ）に示すように、端末番号「１」の端末装置２と接続する。
【００５９】
次に、実際のツリーが図５（ｂ）に示した状態のときに、端末番号「３」の端末装置２がツリーに参加する場合の具体例について説明する。
【００６０】
（６）端末番号「３」の端末装置２がツリーに参加する場合、この端末番号「３」の端末装置２は、図６（ａ）に示すように、まず、所定の接続順序に従って、端末番号「７」の端末装置２へ接続要求通知を送信する。
【００６１】
このとき、端末番号「７」の端末装置２は、自装置の下流側に既に２台の端末装置を接続しているため、接続要求通知から取得した端末番号と、既に自装置の下流に接続している端末装置２の端末番号とに基づいて、接続要求通知を送信してきた端末装置２と接続すべきか否かを判定する。
【００６２】
ここで、端末番号「７」の端末装置２は、接続要求通知から取得した端末番号が、理想ツリーにおいて、既に自装置の下流側に接続している端末装置２の端末番号よりも上流側にあるべき端末番号であった場合、すなわち、接続要求通知を送信してきた端末装置２の端末番号が、自装置に記憶している自装置の下流に接続した端末装置２の端末番号よりも大きい場合に、接続要求通知を送信してきた端末装置２と接続すべきと判定する。
【００６３】
このように、本実施形態の情報配信システムＳでは、接続要求通知を送信してきた端末装置２を自装置の下流側に接続しても、理想ツリーを作成したときの規定に反しないと判断した場合、又は、接続要求通知を送信してきた端末装置２を自装置の下流側に接続することによって、実際のツリーの構造が理想ツリーの構造に近付くと判断した場合に、その接続要求通知を送信してきた端末装置２と接続すべきと判定するので、結果として構築される実際のツリーが、効率よくコンテンツ情報を配信可能な理想ツリーの構造と近い構造になる。
【００６４】
また、このとき端末番号「７」の端末装置２は、接続要求通知から取得した端末番号が、自装置の下流側に既に接続している端末装置２の端末番号よりも上流側にある端末番号であるときであっても、すなわち、接続要求通知を送信してきた端末装置２の端末番号が、自装置に記憶している自装置の下流に接続した端末装置２の端末番号よりも大きい場合であっても、その接続要求通知から取得した端末番号が、理想ツリーにおいて、自装置の理想位置の下流側に接続される端末装置２の端末番号よりも下流側にある端末番号ではなく、且つ、自装置と同じ端末番号でもないときに、その接続要求通知を送信してきた端末装置２と接続すべきではないと判定する。
【００６５】
このように、本実施形態では、接続要求通知を受信した端末装置２が、理想ツリーにおいて、自装置よりも上階層に接続されるべき他の端末装置２であって、自装置とは配信経路の異なる離れた位置に接続すべき他の端末装置２から接続要求通知を受信した場合に、その端末装置２と接続すべきでないと判定するので、ネットワーク８における物理的距離が遠い端末装置２同士が接続されることを防止することができ、その結果、ネットワーク８における物理的距離が近い端末装置２同士をツリー内の比較的近い位置に配置することができ、コンテンツ情報の配信効率の高いツリーを形成することができる。
【００６６】
（７）ここでは、端末番号「７」の端末装置２は、図６（ａ）に示すように、接続要求通知を送信してきた端末装置２の端末番号「３」の方が、既に下流に接続している端末装置２の端末番号「１」よりも大きいため、図６（ｂ）に示すように、端末番号「１」の端末装置２との接続を切断して、（８）接続要求通知を送信してきた端末番号「３」の端末装置２と接続する。
【００６７】
このように、本実施形態では、接続要求通知を受信した端末装置２が、自装置の下流側に２台の端末装置２を接続している場合であっても、自装置の下流側に既に接続している端末装置２との接続を切断して、接続要求通知を送信してきた他の端末装置２を自装置の下流側に接続した方が、実際のツリーの構造が理想ツリーの構造に近付くと判断した場合には、自装置の下流側に既に接続している端末装置２との接続を切断して、接続要求通知を送信してきた他の端末装置２を自装置の下流側に接続するので、コンテンツ情報をより効率的に配信できるような構造となるように実際のツリーを再形成することができる。
【００６８】
（９）その後、端末番号「７」の端末装置２との接続を切断された端末番号「１」の端末装置２は、所定の接続順序に従って、図６（ｃ）に示すように、端末番号「３」の端末装置２へ接続要求通知を送信し、この端末番号「３」の端末装置２と接続する。
【００６９】
その結果、端末番号「１５」の装置（情報配信装置１）と端末番号「７」、「３」、「１」の各端末装置２とが一列に接続されて、理想ツリーと同じコンテンツ情報の配信経路が形成される。
【００７０】
さらに、本実施形態の情報配信システムＳでは、上記のように形成した実際のツリーを、その構造が理想ツリーの構造と近くなるように、定期的に再形成するようにしている。
【００７１】
すなわち、本実施形態では、各端末装置２が、上記のようにツリーに参加した後、定期的にツリーから離脱し、理想ツリー情報に基づいて、所定の接続順序に従って、接続先候補を選択し、当該選択した接続先候補に対して順次接続を試み、接続可能な接続先候補があったときに、その接続先候補と接続するように構成している。
【００７２】
そのため、この情報配信システムＳでは、実際のツリーの構造がより一層理想ツリーの構造と近付くように実際のツリーを定期的に再形成することができる。
【００７３】
[１．６．端末装置の構成等]
次に、本実施形態における端末装置２の構成について説明する。図７は、本実施形態に係る情報配信システムＳにおける端末装置２の概略構成を示す図である。
【００７４】
端末装置２は、専用のコンピュータの他、一般のパーソナルコンピュータを適用可能であり、図７に示すように、制御部１１と、サーバ装置３から受信した理想ツリー情報や自装置の下流側に接続している他の端末装置２及び自装置の装置番号の他、情報配信装置１や自装置の上流に接続している他の端末装置２から取得したコンテンツ情報等を記憶する記憶部１２と、他の装置から取得したコンテンツ情報を一時的に記憶するバッファメモリ１３と、記憶部１２やバッファメモリ１３に記憶したコンテンツ情報を順次取り出してデコードするデコーダ部１４と、このデコーダ部１４によってデコードされたコンテンツ情報のうち映像情報を後述の表示部１６で表示可能な情報に変換処理する映像処理部１５と、この映像処理部１５からの出力に基づいて映像を表示する液晶表示装置（ＬＣＤ）などの表示部１６と、デコーダ部１４によってデコードされたコンテンツ情報のうち音声情報を後述のスピーカ１８で音波として出力可能な情報に変換処理する音声処理部１７と、この音声処理部１７からの出力に基づいて音波を出力するスピーカ１８と、マウス及びキーボードなどからなる入力部１９と、ネットワーク８を介して、他の装置と通信するための通信部２０とを備えている。
【００７５】
この端末装置２では、上記記憶部１２がツリーにおいて自装置の下流側に接続している他の端末装置２の理想位置の情報を示す端末番号を記憶する下流情報記憶手段に相当し、デコーダ部１４、映像処理部１５、音声処理部１７、表示部１６、スピーカ１８がそれぞれ協働して、コンテンツ情報を再生する再生手段として機能する。なお、制御部１１、記憶部１２、バッファメモリ１３、デコーダ部１４、通信部２０は、システムバス２１を介して相互に接続されている。
【００７６】
制御部１１は、ＣＰＵ（Central Processing Unit）、不揮発性メモリ、及び内部ＲＡＭ（Random Access Memory）から構成される。この不揮発性メモリは、情報の書き換えが可能なフラッシュメモリ（Flash Memory）等により構成しており、情報配信システムＳに参加して、コンテンツ情報を送受信するためのプログラムを含む情報処理プログラムを格納しており、ＣＰＵは不揮発性メモリに記憶されている情報処理プログラムを読み出して実行することによって、後述の取得処理手段、接続処理手段、判定手段として機能する。
【００７７】
なお、この情報処理プログラムは、例えば、インターネットに接続されたサーバ（図示略）等から、通信部２０を介して、制御部１１の不揮発性メモリにダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、制御部１１の不揮発性メモリに読み込まれるようにしてもよい。
【００７８】
[１．７．サーバ装置の構成等]
次に、サーバ装置３の構成について説明する。図８は、本実施形態に係る情報配信システムＳにおけるサーバ装置３の概略構成を示す図である。
【００７９】
サーバ装置３は、一般のサーバコンピュータを適用可能であり、図８に示すように、制御部３０と、情報配信システムＳに参加した端末装置２の各端末ＩＤと端末番号とを対応させた情報等を記憶する記憶部３１と、理想ツリー情報を記憶する理想ツリー情報データベース３２と、マウスやキーボード等からなる入力部３３と、ネットワーク８を介して、他の装置と通信するための通信部３４とを備えている。
【００８０】
本実施形態では、上記理想ツリー情報データベース３２が、ツリーにおける複数の端末装置２のそれぞれの理想位置を規定した理想ツリーの情報を記憶する記憶手段に相当する。なお、制御部３０、記憶部３１、理想ツリー情報データベース３２、通信部３４は、システムバス３５を介して相互に接続されている。
【００８１】
制御部３０は、ＣＰＵ（Central Processing Unit）、不揮発性メモリ、及び内部ＲＡＭ（Random Access Memory）から構成される。この不揮発性メモリは、情報の書き換えが可能なフラッシュメモリ（Flash Memory）等により構成しており、情報配信システムＳに参加する端末装置２のそれぞれから取得した当該端末装置２が使用している通信回線に関する情報や、その端末装置２の情報処理能力に関する情報、使用しているインターネットプロバイダに関する情報等に基づいて、理想ツリーを形成するためのプログラムを含む情報処理プログラム等を格納しており、ＣＰＵは不揮発性メモリに記憶されている情報処理プログラムを読み出して実行することによって、理想ツリーの作成や、理想ツリー情報の送信、各端末装置２からの端末番号の取得等を実行する。
【００８２】
なお、この情報処理プログラムは、例えば、インターネットに接続された他のサーバ（図示せず）から、通信部３４を介して、制御部３０の不揮発性メモリにダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、制御部３０の不揮発性メモリに読み込まれるようにしてもよい。
【００８３】
また、本実施形態では、情報配信装置１として、端末装置２へツリーを介してコンテンツ情報を配信する情報配信システムに使用される一般的な配信サーバを用いることができるため、情報配信装置１の具体的な構成については、その説明を省略する。
【００８４】
[１．８．端末装置の動作]
ここで、端末装置２の動作について説明する。ここでは、端末装置２がツリーに参加するときに実行するときの動作について説明し、その他の動作については、その説明を省略する。
【００８５】
端末装置２の制御部１１は、情報配信システムＳに参加するための情報処理プログラムの実行を開始すると、図９に示す接続開始処理を開始する。
【００８６】
［１．８．１．接続開始処理］
端末装置２の制御部１１（以下、単に「制御部１１」という。）は、接続開始処理を開始すると、図９に示すように、まず、今回の接続が当該情報配信システムＳへの初参加であるか、又は期限切れであるか否かを判断する（ステップＳ１０）。
【００８７】
ここで、期限切れとは、各端末装置２がツリーを定期的に離脱する時刻になったことを意味している。
【００８８】
このステップＳ１０において、制御部１１は、初参加であるか、又は期限切れであると判断した場合に（ステップＳ１０：Ｙｅｓ）、処理をステップＳ１１へ移し、初参加でも期限切れでもないと判断した場合に（ステップＳ１０：Ｎｏ）処理をステップＳ１２へ移す。
【００８９】
ステップＳ１１において、制御部１１は、サーバ装置３から理想ツリー情報を取得する処理を行い、その後、処理をステップＳ１２へ移す。このように制御部１１は、ツリーにおける複数の端末装置２の理想位置を規定した理想ツリーに関する理想ツリー情報を取得する取得処理手段として機能する。
【００９０】
ステップＳ１２において、制御部１１は、理想ツリー情報に基づいた接続先候補を選択する処理を行い、その後、処理をステップＳ１３へ移す。
【００９１】
次に、ステップＳ１３において、制御部１１は、ステップＳ１２で選択した接続先候補へ接続要求通知を送信して接続を試みる処理を行い、接続可能な端末装置２があれば、その端末装置２に接続する処理を行い、その後、処理をステップＳ１４へ移す。
【００９２】
次に、ステップＳ１４において、制御部１１は、接続が成功したか否かの判断を行い、成功したと判断した場合に（ステップＳ１４：Ｙｅｓ）、処理をステップＳ１５へ移し、失敗したと判断した場合に（ステップ：Ｎｏ）、処理をステップＳ１０へ移す。
【００９３】
このように、制御部１１は、ツリーにおける複数の端末装置２の理想位置を規定した理想ツリーのうち、自装置の理想位置に対して予め定められた接続基準に従った順番（図３参照）で接続先候補の端末装置に対して接続を順次試み、接続可能な接続先候補があったときに、当該接続先候補と接続する接続処理手段として機能する。
【００９４】
ステップＳ１５において、制御部１１は、自装置の上流に接続した端末装置２との接続が維持できているか否かの判断を行い、維持できていると判断した場合に（ステップＳ１５：Ｙｅｓ）、処理をステップＳ１６へ移し、維持できていないと判断した場合に（ステップＳ１５：Ｎｏ）、処理をステップＳ１９へ移す。
【００９５】
ステップＳ１６において、制御部１１は、接続待受処理を実行し、その後、処理をステップＳ１７へ移す。この接続待受処理については、後に詳述する。
【００９６】
次に、ステップＳ１７において、制御部１１は、定期処理の契機であるか否かの判断を行い、定期処理の契機であると判断した場合に（ステップＳ１７：Ｙｅｓ）、処理をステップＳ１８へ移し、定期処理の契機でないと判断した場合に（ステップＳ１７：Ｎｏ）、処理をステップＳ１５へ移す。
【００９７】
このとき、制御部１１は、各端末装置２がツリーを定期的に離脱する時刻になったときに、定期処理の契機であると判断する。
【００９８】
ステップＳ１８において、制御部１１は、定期処理を実行し、その後、処理をステップＳ１５へ移す。この定期処理については、後に詳述する。
【００９９】
また、ステップＳ１９において、制御部１１は、終了指示があるか否かを判断し、終了指示があると判断した場合に（ステップＳ１９：Ｙｅｓ）、この接続開始処理を終了し、終了指示がないと判断した場合に（ステップＳ１９：Ｎｏ）、処理をステップＳ１０へ移す。
【０１００】
このとき、制御部１１は、自装置のユーザが入力部１９を操作して、情報配信システムＳを利用するための情報処理プログラムの終了を指示した場合に、終了指示があると判断する。
【０１０１】
［１．８．２．接続待受処理］
次に、制御部１１が、図９のステップＳ１６で実行する接続待受処理について、図１０を参照して説明する。
【０１０２】
この接続待受処理を開始すると、制御部１１は、図１０に示すように、まず、他の端末装置２から接続要求通知を受信したか否かを判断し（ステップＳ２０）、接続要求通知を受信したと判断した場合に（ステップＳ２０：Ｙｅｓ）、処理をステップＳ２１へ移し、接続要求通知を受信していないと判断した場合に（ステップＳ２０：Ｎｏ）、この接続待受処理を終了する。
【０１０３】
また、ステップＳ２１において、制御部１１は、要求された下流に端末装置があるか否かの判断を行う。
【０１０４】
ここで、制御部１１は、受信した接続要求通知から取得した接続先に関する情報に基づいて、接続要求通知を送信してきた端末装置２が、自装置の下流における左側への接続を要求しているのか、右側への接続を要求しているのかを判断し、当該要求されている側の下流に接続している端末装置２があるか否かの判断を行う。
【０１０５】
そして、制御部１１は、接続を要求されている側（右ｏｒ左）の下流に接続している端末装置２があると判断した場合に（ステップＳ２１：Ｙｅｓ）、処理をステップＳ２２へ移し、接続を要求されている側（右ｏｒ左）の下流に接続している端末装置２がないと判断した場合に（ステップＳ２１：Ｎｏ）、処理をステップＳ２６へ移す。
【０１０６】
また、ステップＳ２２において、制御部１１は、理想ツリー情報から、要求された下流（右or左）側の端末番号を確認する処理を行い、その後、処理をステップＳ２３へ移す。
【０１０７】
次に、ステップＳ２３において、制御部１１は、自装置の下流に接続している端末装置２（接続中下流端末）の端末番号よりも、接続要求通知を送信してきた端末装置２の端末番号の方が大きいか否かの判断を行い、接続中下流端末の端末番号よりも、接続要求通知を送信してきた端末装置２の端末番号の方が大きいと判断した場合に（ステップＳ２３：Ｙｅｓ）、処理をステップＳ２４へ移し、接続要求通知を送信してきた端末装置２の端末番号が、接続中下流端末の端末番号以下であると判断した場合に（ステップＳ２４：Ｎｏ）、この接続待受処理を終了する。
【０１０８】
そして、ステップＳ２４において、制御部１１は、接続要求通知を送信してきた端末装置２の端末番号が、理想ツリーにおける自装置の下流に接続すべき端末装置２（理想下流端末）の端末番号よりも大きいか否かを判断し、接続要求通知を送信してきた端末装置２の端末番号が、理想下流端末の端末番号よりも大きいと判断した場合に（ステップＳ２４：Ｙｅｓ）、この接続待受処理を終了し、接続要求通知を送信してきた端末装置２の端末番号が、理想下流端末の端末番号以下であると判断した場合に（ステップＳ２４：Ｎｏ）、処理をステップＳ２５へ移す。
【０１０９】
このステップＳ２５において、制御部１１は、接続中下流端末との接続を切断する処理を行う。そして、ステップＳ２６において、制御部１１は、接続要求通知を送信してきた端末装置２を下流に接続する処理を行い、その後、この接続待受処理を終了する。
【０１１０】
このように、制御部１１は、他の端末装置２から接続の要求があったとき、当該接続の要求を行った他の端末装置２の理想位置と自装置に記憶した自装置の下流に接続している他の端末装置２の理想位置とを比較して、接続の要求を行った他の端末装置２と接続すべきか否かを判定する判定手段として機能すると共に、この判定手段により接続の要求を行った他の端末装置２と接続すべきと判定されると、当該接続の要求を行った他の端末装置２との接続を行い、既に下流に接続している他の端末装置２との接続を切断する下流接続処理手段としても機能する。
【０１１１】
[１．８．３．定期処理]
次に、制御部１１が、図９のステップＳ１８で実行する定期処理について、図１１を参照して説明する。
【０１１２】
この定期処理を開始すると、制御部１１は、図１１に示すように、まず、サーバ装置３からその時点での理想ツリー情報を取得する処理を行い（ステップＳ３０）、その後、処理をステップＳ３１へ移す。
【０１１３】
次に、ステップＳ３１において、制御部１１は、次の理想ツリーにおける接続先となる端末装置２（以下、「理想接続先候補」という。）に接続要求通知を送信して、その理想接続先候補に接続を試みる処理を行い、その後、処理をステップＳ３２へ移す。
【０１１４】
ステップＳ３２において、制御部１１は、次の理想接続先候補との接続が成功したか否かを判断し、成功したと判断した場合に（ステップＳ３２：Ｙｅｓ）、処理をステップＳ３３へ移し、失敗したと判断した場合に（ステップＳ３２：Ｎｏ）、この定期処理を終了する。
【０１１５】
また、ステップＳ３３において、制御部１１は、この定期処理を開始する前から接続していた上流の端末装置２（接続中上流端末）を切断する処理を行い、その後、この定期処理を終了する。
【０１１６】
[１．９．サーバ装置の動作]
ここで、サーバ装置３の動作について説明する。ここでは、サーバ装置３が理想ツリー情報を送信するときの動作について説明し、その他の動作については、その説明を省略する。
【０１１７】
[１．９．１サーバ処理]
サーバ装置３の制御部（以下、単に「制御部３０」という。）は、電源が投入されると、図１２に示すサーバ処理を開始する。このサーバ処理を開始すると、制御部３０は、図１２に示すように、まず、端末装置２から理想ツリー情報の要求を受信したか否かの判断を行い（ステップＳ４０）、受信したと判断した場合に（ステップＳ４０：Ｙｅｓ）、処理をステップＳ４１へ移し、受信していないと判断した場合に（ステップＳ４０：Ｎｏ）、処理をステップＳ４２へ移す。
【０１１８】
そして、ステップＳ４１において、制御部３０は、理想ツリー情報を要求してきた端末装置２へ理想ツリー情報を送信する処理を行い、その後、処理をステップＳ４２へ移す。
【０１１９】
ステップＳ４２において、制御部３０は、終了指示があるか否かを判断し、終了指示があると判断した場合に（ステップＳ４２：Ｙｅｓ）、このサーバ処理を終了し、終了指示がないと判断した場合に（ステップＳ４２：Ｎｏ）、処理をステップＳ４０へ移す。
【０１２０】
このとき、制御部３０は、自装置のユーザ（オペレータ）が入力部３３を操作して、当該サーバ装置３の動作終了を指示した場合に、終了指示があると判断する。
【０１２１】
[２．第２実施形態]
次に、本発明の第２実施形態について説明する。本実施形態の情報配信システムＳは、その基本的構成に関して、図１に示した第１実施形態の情報配信システムＳと同様であるため、ここでは、その説明を省略する。なお、以下の説明において、第１実施形態と同様の構成要件については、同一の符号を付して説明する。
【０１２２】
本実施形態に係る情報配信システムＳでは、サーバ装置３が理想ツリー情報と、実際のツリーにおける各端末装置２の接続態様を示す情報（以下、「接続ツリー情報」という。）とを管理しており、各端末装置２がツリーに参加するときに、サーバ装置３から理想ツリー情報に基づいて決定されたツリーにおける接続先候補を送信してもらい、その接続先候補に対して接続を試みるように構成している。
【０１２３】
すなわち、各端末装置２は、ツリーに参加する際、まず、サーバ装置３へ、後に詳述する接続先候補紹介要求を送信する。
【０１２４】
そして、サーバ装置３は、この接続先紹介要求を受信すると、当該接続先紹介要求を送信してきた端末装置２へ接続先候補の情報等を含む、後に詳述する接続先紹介応答を送信する。
【０１２５】
このとき、サーバ装置３は、自装置が管理している実際のツリーにおける各端末装置２の接続形態と、理想ツリー情報とに基づいて、現在、ツリーに参加している端末装置２の中から、所定の接続順序（図３参照）に従って、接続先候補を選択し、接続先紹介要求を送信してきた端末装置２へ送信する。
【０１２６】
さらに、この情報配信システムＳでは、各端末装置２がツリーに参加するときに、サーバ装置３から、理想ツリーにおける自装置の下流に接続すべき端末装置２の端末番号を取得して記憶するように構成している。
【０１２７】
そして、既にツリーに参加している端末装置２は、他の端末装置２からの接続要求通知を受信すると、当該接続要求通知を送信してきた端末装置２の端末番号と、自装置に記憶している理想ツリー情報における自装置の下流に接続すべき端末装置２の端末番号とを比較して、その接続要求通知を送信してきた端末装置２と接続するか否かを判定するように構成している。
【０１２８】
かかる構成とすることにより、ツリーに参加しようとする端末装置２は、理想ツリー上には存在するが、実際のツリーには存在しない他の端末装置２への接続を試みる必要がなく、その分、端末装置２の処理負荷を低減することができるので、比較的情報処理能力の低い端末装置２であっても、この情報配信システムＳを利用して、効率よくコンテンツ情報を取得することができる。
【０１２９】
しかも、ツリーに参加している端末装置２は、理想ツリーにおける自装置の端末番号は管理していないが、理想ツリーにおける自装置の下流に接続すべき端末装置２の端末番号は記憶して管理しているので、他の端末装置２からの接続要求通知を受信した場合に、その端末装置２を自装置の下流側に接続することによって、ツリーの構造が理想ツリーの構造に近付くと判断したときに、その端末装置２を接続する。
【０１３０】
そのため、この情報配信システムＳでは、各端末装置２がツリーに参加する度毎に、実際のツリーの構造が理想ツリーの構造に近付くことになり、効率的にコンテンツ情報を配信可能なツリーを形成することができる。
【０１３１】
[２．１．端末装置の構成等]
本実施形態の情報配信システムＳにおける端末装置２は、その基本的構成については、図７に示した第１実施形態の端末装置２と同様の構成であるが、記憶部１２に記憶している情報が、第１実施形態における端末装置２とは異なる。
【０１３２】
すなわち、この端末装置２の記憶部１２には、端末装置２がツリーへ参加するときに、サーバ装置３に対して接続先候補の紹介を要求する接続先紹介要求を送信するためのプログラム、この接続先紹介要求に対してサーバ装置３から通知（送信）される接続先紹介応答を受信して保存するためのプログラム、ツリーへの参加時又はその後、ツリーにおける自装置の位置に関する情報をサーバ装置３へ送信するプログラムを含む情報処理プログラム等を記憶している。
【０１３３】
また、この記憶部１２には、ツリーに参加するときにサーバ装置３から受信した、後に詳述する接続先紹介応答を記憶している。
【０１３４】
そして、端末装置２の制御部１１は、記憶部１２に記憶している情報処理プログラムを実行することによって、後述の接続先紹介要求手段、接続処理手段、通知手段等として機能する。
【０１３５】
[２．２．サーバ装置の構成等]
本実施形態の情報配信システムＳにおけるサーバ装置３は、その基本的構成については、図８に示した第１実施形態のサーバ装置３と同様の構成であるが、記憶部３１及び理想ツリー情報データベース３２に記憶している情報が、第１実施形態におけるサーバ装置３とは異なる。
【０１３６】
すなわち、このサーバ装置３の記憶部３１には、サーバ装置３が各端末装置２から通知（送信）された当該端末装置２のツリーにおける位置に関する情報に基づいて、ツリーの構成状態（各端末装置２のツリー中における接続態様）を検出するためのプログラム、端末装置２から接続先紹介要求を受信したときに、理想ツリー情報データベース３２に記憶している理想ツリー情報のうち、接続先紹介要求を送信してきた端末装置２の理想位置に対して予め定められた接続基準に従った順序（図３参照）で接続先候補を選択して通知（送信）するためのプログラムを含む情報処理プログラム等を記憶している。
【０１３７】
また、理想ツリー情報データベース３２には、理想ツリー情報に加え、この情報配信システムＳを利用する全ての端末装置２の端末ＩＤとＩＰアドレスとを対応付けたテーブルと、実際のツリーにおける各端末装置２の接続態様を示す接続ツリー情報とを記憶している。
【０１３８】
そして、サーバ装置３の制御部３０は、記憶部３１に記憶している情報処理プログラムを実行することによって、後述の階層構造状態検出手段、接続先候補紹介手段等として機能する。
【０１３９】
また、このサーバ装置３は、第１実施形態のサーバ装置３と同様に、各端末装置２が新規に当該情報配信システムＳのツリーに参加する際に、その端末装置２から当該端末装置２が使用している通信回線に関する情報や、その端末装置２の情報処理能力に関する情報、使用しているインターネットプロバイダに関する情報等を取得し、これらの情報に基づいて、理想ツリーにおける各端末装置２の理想位置を示す端末番号を決定する。
【０１４０】
[２．３．接続先紹介要求]
ここで、本実施形態の端末装置２がツリーに参加するときに、サーバ装置３へ送信する接続先紹介要求について説明する。
【０１４１】
この接続先紹介要求は、図１３に示すように、当該接続先紹介要求を送信する端末装置２（自装置）の端末ＩＤと、その端末装置２が今回のツリーへの参加を試みた際に接続を失敗した接続先候補の端末ＩＤ（前回接続失敗端末ＩＤ）とを含む情報である。
【０１４２】
ただし、端末装置２が今回のツリーへの参加の際に、接続を失敗した接続候補がなかった場合には、前回接続失敗端末ＩＤは接続先紹介要求には含まれない。
【０１４３】
[２．４．接続先紹介応答]
次に、本実施形態のサーバ装置３が接続先紹介要求を送信してきた端末装置２へ送信する接続先紹介応答について説明する。
【０１４４】
この接続先紹介応答は、図１４に示すように、接続先候補の端末ＩＤと、接続先候補のＩＰアドレスと、接続先候補端末位置（右ｏｒ左）と、右理想下流端末番号、左理想下流端末番号とを含む情報である。
【０１４５】
ここで、接続先候補の端末ＩＤとは、サーバ装置３が自装置に記憶している理想ツリー情報と、接続ツリー情報とに基づいて、現在、ツリーに参加している端末装置２の中から、所定の接続順序に従って選択した接続先候補の端末ＩＤのことであり、接続先候補ＩＰアドレスとは、接続先候補として選択した端末装置２のＩＰアドレスのことである。
【０１４６】
また、接続先候補端末位置（右ｏｒ左）とは、接続先紹介要求を送信してきた端末装置２が接続すべき接続先候補の下流側の位置を示す情報のことである。すなわち、この情報として「右」という情報を受信した端末装置２は、接続先候補の下流右側に接続を試み、「左」という情報を受信した端末装置２は、接続先候補の下流左側に接続を試みる。
【０１４７】
また、右理想下流端末番号とは、接続先紹介要求を送信してきた端末装置２の右側下流に接続すべき端末装置２の端末番号のことであり、左理想下流端末番号とは、接続先紹介要求を送信してきた端末装置２の左側下流に接続すべき端末装置２の端末番号のことである。
【０１４８】
[２．５．端末装置の動作]
ここで、端末装置２の動作について説明する。ここでは、各端末装置２がツリーに参加するときに実行するときの動作について説明し、その他の動作については、その説明を省略する。
【０１４９】
端末装置２の制御部（以下、単に「制御部１１」という。）は、情報配信システムＳに参加するための情報処理プログラムの実行を開始すると、図１５に示す接続開始処理を開始する。
【０１５０】
[２．５．１．接続開始処理]
この接続開始処理を開始すると、制御部１１は、図１５に示すように、まず、サーバ装置３に接続先紹介要求を送信する処理を行い（ステップＳ５０）、その後、処理をステップＳ５１へ移す。
【０１５１】
このように、制御部１１は、ツリーへ参加するときに、サーバ装置３に対して接続先候補の紹介を要求する接続先紹介要求手段として機能する。
【０１５２】
次に、ステップＳ５１において、制御部１１は、サーバから接続先紹介応答を受信して保存（記憶）する処理を行った後、ステップＳ５２において、接続先候補へ接続要求通知を送信する処理を行い、その後、処理をステップＳ５３へ移す。
【０１５３】
ここで、制御部１１は、サーバ装置３から取得した接続先紹介応答に含まれる情報（接続先候補ＩＤ、接続先候補ＩＰアドレス、接続先候補端末位置（右ｏｒ左））に対応する端末装置２へ接続要求通知を送信して接続を試みる処理を行い、接続可能な端末装置２があれば、その端末装置２に接続する処理を行い、その後、処理をステップＳ５３へ移す。
【０１５４】
次に、ステップＳ５３において、制御部１１は、接続先候補との接続に成功したか否かの判断を行い、成功したと判断した場合に（ステップＳ５３：Ｙｅｓ）、処理をステップＳ５４へ移し、失敗したと判断した場合に（ステップＳ５３：Ｎｏ）、処理をステップＳ５０へ移す。
【０１５５】
このように、制御部１１は、接続先紹介要求に対してサーバ装置３から通知される接続先候補に対して接続を行う接続処理手段として機能する。
【０１５６】
また、ステップＳ５４において、制御部１１は、接続を維持できているか否かの判断を行い、維持できていると判断した場合に（ステップＳ５４：Ｙｅｓ）、処理をステップＳ５６へ移し、維持できていないと判断した場合に（ステップＳ５４：Ｎｏ）、処理をステップＳ５５へ移す。
【０１５７】
ステップＳ５６において、制御部１１は、接続待受処理を行った後、処理をステップＳ５７へ移す。この接続待受処理については、後に詳述する。
【０１５８】
次に、ステップＳ５７において、制御部１１は、自装置が現在ツリーに参加している旨を示す情報（以下、「生存通知」という。）として、ツリーにおける自装置の位置に関する情報、すなわち、自装置が現在どの端末装置２の下流の左右どちら側に接続しているかを示す情報をサーバ装置３に送信する処理を行い、その後、処理をステップＳ５４へ移す。
【０１５９】
このように、制御部１１は、ツリーへの接続時又はその後、ツリーにおける自装置の位置をサーバ装置３に対して通知する通知手段として機能する。
【０１６０】
また、ステップＳ５５において、制御部１１は、終了指示があるか否かの判断を行い、終了指示があると判断した場合に（ステップＳ５５：Ｙｅｓ）、この接続開始処理を終了し、終了指示がないと判断した場合に（ステップＳ５５：Ｎｏ）、処理をステップＳ５０へ移す。
【０１６１】
このとき、制御部１１は、自装置のユーザが入力部１９を操作して、情報配信システムＳを利用するための情報処理プログラムの終了を指示した場合に、終了指示があると判断する。
【０１６２】
[２．５．２．接続待受処理]
次に、制御部１１が、図１５のステップＳ５６で実行する接続待受処理について、図１６を参照して説明する。
【０１６３】
この接続待受処理を開始すると、制御部１１は、図１６に示すように、まず、他の端末装置２から接続要求通知を受信したか否かの判断を行い（ステップＳ６０）、受信したと判断した場合に（ステップＳ６０：Ｙｅｓ）、処理をステップＳ６１へ移し、受信していないと判断した場合に（ステップＳ６０：Ｎｏ）、この接続待受処理を終了する。
【０１６４】
そして、ステップＳ６１において、制御部１１は、接続を要求されている側（右ｏｒ左）の下流に接続している端末装置２があると判断した場合に（ステップＳ６１：Ｙｅｓ）、処理をステップＳ６２へ移し、接続を要求されている側（右ｏｒ左）の下流に接続している端末装置２がないと判断した場合に（ステップＳ６１：Ｎｏ）、処理をステップＳ６６へ移す。
【０１６５】
そして、ステップＳ６２において、制御部１１は、保存した接続先紹介応答に基づいて、他の端末装置２から接続を要求された左右いずれかの下流側の理想ツリーにおける端末番号（以下、「理想下流端末番号」という。）を確認する処理を行い、その後、処理をステップＳ６３へ移す。
【０１６６】
次に、ステップＳ６３において、制御部１１は、接続要求通知を送信してきた端末装置２の端末番号の方が、現在自装置の下流側に接続している端末装置２（以下、「接続中下流端末」という。）の端末番号よりも大きいか否かの判断を行う。
【０１６７】
そして、制御部１１は、接続要求通知を送信してきた端末装置２の端末番号の方が、接続中下流端末の端末番号よりも大きいと判断した場合に（ステップＳ６３：Ｙｅｓ）、処理をステップＳ６４へ移し、接続要求通知を送信してきた端末装置２の端末番号が、接続中下流端末の端末番号以下であると判断した場合に（ステップＳ６３：Ｎｏ）、この接続待受処理を終了する。
【０１６８】
また、ステップＳ６４において、制御部１１は、接続要求通知を送信してきた端末装置２の端末番号の方が、理想下流端末番号よりも大きいか否かの判断を行う。
【０１６９】
ここで、制御部１１は、接続要求通知送信してきた端末装置２の端末番号の方が、理想下流端末番号よりも大きいと判断した場合に（ステップＳ６４：Ｙｅｓ）、この接続待受処理を終了し、接続要求通知を送信してきた端末装置２の端末番号が、理想下流端末番号以下であると判断した場合に（ステップＳ６４：Ｎｏ）、処理をステップＳ６５へ移す。
【０１７０】
そして、ステップＳ６５において、制御部１１は、接続中下流端末との接続を切断する処理を行った後、ステップＳ６６において、接続要求通知を送信してきた端末装置２を自装置の下流に接続する処理を行い、その後、この接続待受処理を終了する。
【０１７１】
[２．６．サーバ装置の動作]
次に、サーバ装置３の動作について説明する。ここでは、サーバ装置３が接続ツリー情報を作成するときの動作と、端末装置２へ接続先候補を紹介するときの動作について説明し、その他の動作については、その説明を省略する。
【０１７２】
[２．６．１サーバ処理]
サーバ装置３の制御部（以下、単に「制御部３０」という。）は、電源が投入されると、図１７に示すサーバ処理を開始する。このサーバ処理を開始すると、制御部３０は、生存通知を送信してきた端末装置２を接続ツリー情報へ追加する処理を行い（ステップＳ７０）、その後、処理をステップＳ７１へ移す。      
【０１７３】
ここで、制御部３０は、端末装置２から取得した生存通知に基づいて、接続ツリー情報を更新する。すなわち、この制御部３０は、端末装置２から通知された当該端末装置２のツリーにおける位置に基づいて、ツリーの状態を検出する階層構造状態検出手段として機能する。
【０１７４】
次に、ステップＳ７１において、制御部３０は、端末装置２から接続先紹介要求を受信したか否かの判断を行い、接続先紹介要求を受信したと判断した場合に（ステップＳＳ７１：Ｙｅｓ）、処理をステップＳ７２へ移し、接続先紹介要求を受信していないと判断した場合に（ステップＳ７１：Ｎｏ）、このサーバ処理を終了する。
【０１７５】
ステップＳ７２において、制御部３０は、一定期間生存通知を受信していない端末装置を接続ツリー情報から削除する処理を行った後、ステップＳ７３において、理想ツリー情報と接続ツリー情報とから接続先紹介応答を作成して送信する処理を行い、その後、このサーバ処理を終了する。
【０１７６】
このように、制御部３０は、端末装置２から接続先紹介要求があったときに、自装置に記憶している理想ツリー情報のうち、接続先紹介要求を送信してきた端末装置２に対して、予め定められた接続基準に従った順番（図３参照）で、接続先候補を選択して通知する接続先候補紹介手段として機能する。
【０１７７】
この第２実施形態の情報配信システムＳでは、サーバ装置３が接続先紹介要求を受信すると、接続ツリー情報と理想ツリー情報とに基づいて、所定の接続順序に従って接続先候補を選択し、接続先紹介要求を送信してきた端末装置２へ、その接続先候補を紹介すると共に、この接続先紹介候補となった端末装置２は、他の端末装置２から接続要求通知を受信すると、その端末装置２を自装置の下流に接続することによって、ツリーの構造が理想ツリーの構造と近付くと判断した場合に、その端末装置２を自装置の下流に接続するように構成しているが、この接続要求通知を受信した端末装置２が行う判断を、サーバ装置３に行わせるように構成してもよい。
【０１７８】
このように情報配信システムＳを構成する場合、サーバ装置３は、接続先紹介要求を送信してきた端末装置２に対して、接続先候補を紹介するだけでなく、その接続先候補の下流に既に端末装置２が接続されている場合には、当該接続先候補に対して、既に下流に接続している端末装置２との切断、又は、接続先紹介要求を送信してきた端末装置との接続を指示する。
【０１７９】
すなわち、サーバ装置３は、接続先紹介要求を送信してきた端末装置２の端末番号の方が、この端末装置２に紹介した接続先候補の下流に接続している端末装置２の端末番号よりも、理想ツリーにおいて上流に位置すべき端末番号であると判断した場合に、接続先候補に対して、その下流に既に接続している端末装置２との接続を切断させる指示を送信する。
【０１８０】
このように情報配信システムＳを構成することによって、各端末装置２の処理負荷をさらに軽減することができる。
【図面の簡単な説明】
【０１８１】
【図１】第１実施形態に係る情報配信システムの概要構成例を示す説明図である。
【図２】理想ツリーの一例を示す説明図である。
【図３】各端末装置毎の接続順序の一例を示す説明図である。
【図４】接続要求通知の一例を示す説明図である。
【図５】端末装置がツリーに参加する場合のツリーの形成方法の一例を示す説明図である。
【図６】端末装置がツリーに参加する場合のツリーの形成方法の一例を示す説明図である。
【図７】第１実施形態に係る情報配信システムにおける端末装置の概略構成を示す説明図である。
【図８】第１実施形態に係る情報配信システムにおけるサーバ装置の概略構成を示す説明図である。
【図９】第１実施形態に係る端末装置の制御部が行う処理を示すフローチャートである。
【図１０】第１実施形態に係る端末装置の制御部が行う処理を示すフローチャートである。
【図１１】第１実施形態に係る端末装置の制御部が行う処理を示すフローチャートである。
【図１２】第１実施形態に係るサーバ装置の制御部が行う処理を示すフローチャートである。
【図１３】接続先紹介要求の一例を示す説明図である。
【図１４】接続先紹介応答の一例を示す説明図である。
【図１５】第２実施形態に係る端末装置の制御部が行う処理を示すフローチャートである。
【図１６】第２実施形態に係る端末装置の制御部が行う処理を示すフローチャートである。
【図１７】第２実施形態に係るサーバ装置の制御部が行う処理を示すフローチャートである。
【符号の説明】
【０１８２】
Ｓ  情報配信システム
１  情報配信装置
２  端末装置
３  サーバ装置
１１  端末装置の制御部
３０  サーバ装置の制御部
３２  理想ツリー情報データベース
【図１】
2009200725.tif 000003
【図２】
2009200725.tif 000004
【図３】
2009200725.tif 000005
【図４】
2009200725.tif 000006
【図５】
2009200725.tif 000007
【図６】
2009200725.tif 000008
【図７】
2009200725.tif 000009
【図８】
2009200725.tif 000010
【図９】
2009200725.tif 000011
【図１０】
2009200725.tif 000012
【図１１】
2009200725.tif 000013
【図１２】
2009200725.tif 000014
【図１３】
2009200725.tif 000015
【図１４】
2009200725.tif 000016
【図１５】
2009200725.tif 000017
【図１６】
2009200725.tif 000018
【図１７】
2009200725.tif 000019