(57)【要約】【課題】接続候補紹介装置の処理負荷を低減できると共に、各端末装置間で循環接続の発生を防止できるデータ配信システム及び端末装置及び情報処理方法及びプログラムを提供すること。【解決手段】データ配信装置と、接続候補紹介装置と、データ配信装置を頂点として階層構造で多層に論理接続されてデータの受信及び中継を行う複数の端末装置とを備えたデータ配信システムにおいて、端末装置は、階層構造における自装置の接続位置を示す接続位置情報を取得し、階層構造に再接続する際に、接続候補紹介装置から接続候補の端末装置へ接続するための接続情報を取得し、その接続情報に対応する端末装置から、その端末装置の階層構造における接続位置情報を取得し、自装置の接続位置情報と、接続候補の接続位置情報とに基づいて、階層構造において自装置よりも下流にない端末装置を接続先として選択すべく構成した。【選択図】図２
2008219431.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してデータを配信するデータ配信装置と、前記データ配信装置を頂点として前記ネットワーク上に階層構造で多層に論理接続され、前記データ配信装置から配信されるデータを受信して中継する複数の端末装置と、前記階層構造への接続要求を送信してきた端末装置に対して前記階層構造の接続候補となる端末装置を紹介する接続候補紹介装置とを備え、前記データ配信装置から配信されるデータが前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によって配信されるデータ配信システムにおいて、
前記端末装置は、
前記階層構造に接続した状態で、前記階層構造における自装置の接続位置を示す接続位置情報を取得する接続位置取得手段と、
前記階層構造に再接続する際に、前記接続候補紹介装置から前記接続候補となる端末装置へ接続するための接続情報を取得する接続候補取得手段と、
前記接続候補取得手段により取得した前記接続情報に対応する端末装置から、その端末装置の接続位置情報を取得する接続候補位置取得手段と、
前記接続候補位置取得手段により取得した前記接続位置情報と、前記接続位置取得手段により取得した前記接続位置情報とに基づいて、前記階層構造における接続位置が自装置の接続位置よりも下流にない前記接続候補の端末装置を接続先として選択する接続先選択手段とを有することを特徴とするデータ配信システム。
【請求項２】
前記接続位置情報は、前記データ配信装置から前記端末装置までのデータの配信経路により、前記階層構造における端末装置の接続位置を特定する情報であることを特徴とする請求項１に記載のデータ配信システム。
【請求項３】
前記接続位置取得手段は、前記接続位置情報の取得を、自装置に接続した上流の端末装置から行うことを特徴とする請求項１又は請求項２に記載のデータ配信システム。
【請求項４】
前記端末装置は、
自装置の下流に接続した端末装置の接続位置情報を演算する下流接続位置演算手段と、
前記下流接続位置演算手段により演算された接続位置情報を送信する下流接続位置送信手段とを有することを特徴とする請求項１〜３のいずれか１項に記載のデータ配信システム。
【請求項５】
前記接続候補紹介装置は、
前記端末装置から前記階層構造への再接続要求を受信する再接続要求受信手段と、
前記再接続要求を送信してきた端末装置から、その端末装置の接続位置情報を受信する再接続中接続位置受信手段と、
前記再接続中接続位置受信手段により受信した接続位置情報を、前記再接続要求を送信してきた端末装置の再接続が完了するまでの間記憶する再接続中接続位置記憶手段と、
再接続要求を送信してきた端末装置へ、前記再接続中接続位置記憶手段に記憶している接続位置情報を送信する接続位置送信手段とを有し、
前記端末装置は、
前記接続候補紹介装置から、前記再接続中接続位置記憶手段に記憶されている接続位置情報を取得する再接続中接続位置取得手段を備え、
前記接続先選択手段は、
前記接続候補紹介装置から紹介された接続候補の端末装置のなかで、前記再接続中接続位置取得手段により取得した接続位置情報又はその下流の接続位置情報に対応する端末装置以外の端末装置から接続先となる端末装置を選択することを特徴とする請求項１〜４のいずれか１項に記載のデータ配信システム。
【請求項６】
前記接続候補紹介装置は、
前記端末装置から階層構造への再接続が完了したことを示す再接続完了情報を受信する再接続完了情報受信手段と、
前記再接続完了情報受信手段が前記再接続完了情報を受信したことを契機に、前記再接続中接続位置記憶手段から、前記再接続が完了した端末装置の接続位置情報を削除する接続位置記憶処理手段とを有することを特徴とする請求項５に記載のデータ配信システム。
【請求項７】
前記接続位置記憶処理手段は、
前記再接続中接続位置記憶手段から前記接続位置情報を削除するときに、削除する接続位置情報に対応する端末装置の下流に接続された端末装置の接続位置情報を記憶して、所定期間経過後に削除する記憶更新処理を所定回数繰り返すことを特徴とする請求項６に記載のデータ配信システム。
【請求項８】
ネットワークを介してデータを配信するデータ配信装置と、前記データ配信装置を頂点として前記ネットワーク上に階層構造で多層に論理接続され、前記データ配信装置から配信されるデータを受信して中継する複数の端末装置と、前記階層構造への接続要求を送信してきた端末装置に対して前記階層構造の接続候補となる端末装置を紹介する接続候補紹介装置とを備え、前記データ配信装置から配信されるデータが前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によって配信されるデータ配信システムにおける端末装置において、
前記階層構造に接続した状態で、前記階層構造における自装置の接続位置を示す接続位置情報を取得する接続位置取得手段と、
前記階層構造に再接続する際に、前記接続候補紹介装置から前記接続候補となる端末装置へ接続するための接続情報を取得する接続候補取得手段と、
前記接続候補取得手段により取得した前記接続情報に対応する端末装置から、その端末装置の接続位置情報を取得する接続候補位置取得手段と、
前記接続候補位置取得手段により取得した前記接続位置情報と、前記接続位置取得手段により取得した前記接続位置情報とに基づいて、前記階層構造における接続位置が自装置の接続位置よりも下流にない前記接続候補の端末装置を接続先として選択する接続先選択手段とを有することを特徴とする端末装置。
【請求項９】
ネットワークを介してデータを配信するデータ配信装置と、前記データ配信装置を頂点として前記ネットワーク上に階層構造で多層に論理接続され、前記データ配信装置から配信されるデータを受信して中継する複数の端末装置と、前記階層構造への接続要求を送信してきた端末装置に対して前記階層構造の接続候補となる端末装置を紹介する接続候補紹介装置とを備え、前記データ配信装置から配信されるデータが前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によって配信されるデータ配信システムにおける情報処理方法であって、
前記端末装置が前記階層構造に接続した状態で、前記階層構造における自装置の接続位置を示す接続位置情報を取得するステップと、
前記端末装置が前記階層構造に再接続する際に、前記接続候補紹介装置から前記接続候補となる端末装置へ接続するための接続情報を取得するステップと、
前記端末装置が前記接続候補紹介装置から取得した接続情報に対応する端末装置から、その端末装置の接続位置情報を取得するステップと、
前記端末装置が前記接続候補の端末装置の接続位置情報と、自装置の接続位置情報とに基づいて、前記階層構造における接続位置が自装置の接続位置よりも下流にない前記接続候補の端末装置を接続先として選択するステップとを有することを特徴とする情報処理方法。
【請求項１０】
コンピュータに、請求項１〜５に記載のデータ配信システムにおける端末装置の各手段として機能させるためのプログラム。
【請求項１１】
コンピュータに、請求項５〜７に記載のデータ配信システムにおける接続候補紹介装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ配信システム及び同システムにおける端末装置及び情報処理方法及びプログラムに関するものである。
【背景技術】
【０００２】
従来より、放送局などから提供される映像コンテンツや音楽コンテンツ等のデータを、視聴者となるクライアントがパーソナルコンピュータ等の端末装置を、インターネットを始めとする情報通信ネットワーク（以下、単に「ネットワーク」という。）に接続して受信することにより、受信したデータを各端末装置で視聴可能としたデータ配信システムが広く知られている。
【０００３】
この種のデータ配信システムとして、近年、配信元からデータを受信した端末装置が、そのデータを再生すると共に中継して、他のクライアントの端末装置へ配信するＰ２Ｐ(Ｐｅｅｒ Ｔｏ Ｐｅｅｒ)通信と呼ばれるシステムに関する考案がなされている。
【０００４】
このＰ２Ｐ通信を用いたデータ配信システムは、図２５に示すように、ネットワークを介してデータを配信するデータ配信装置400と、このデータ配信装置400を頂点としてネットワーク上にツリー型の階層構造で多層に論理接続され、データ配信装置400から配信されるデータを受信して中継する複数の端末装置401〜430と、階層構造における各端末装置401〜430の接続状態を管理して、階層構造への接続要求を送信してきた端末装置401〜430に対して階層構造における接続候補となる端末装置401〜430を紹介する接続候補紹介装置500とからなり、データ配信装置400から配信されるデータが階層構造の上流の端末装置401〜430から下流の端末装置401〜430にかけて順次各端末装置401〜430の中継機能によって配信されて、階層構造に接続している全ての端末装置401〜430へデータが配信されるように構成されていた（たとえば、特許文献１参照。）。
【特許文献１】特開２００６−３２５１０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記したデータ配信システムでは、接続候補紹介装置500が階層構造に接続している全ての端末装置401〜430の接続状態を管理していたため、階層構造に接続する端末装置401〜430の数が膨大になると、接続候補紹介装置500の処理負荷が増大するおそれがあった。
【０００６】
このように処理負荷が増大すると、接続候補紹介装置500では、階層構造への接続要求を送信してきた端末装置へ紹介する接続候補を決定するために要する処理時間が長時間化してしまい、接続要求を送信してきた端末装置が階層構造へ接続するまでの時間が長時間化するという問題が生じる。
【０００７】
そこで、接続候補紹介装置500の処理負荷を軽減するために、階層構造に接続している端末装置401〜430を識別するための識別情報と、そのIP（Internet Protocol）アドレスを示す情報だけを接続候補紹介装置500に管理させて、接続要求を送信してきた端末装置へ通知し、各端末装置に接続先候補を検索させる構成とすることも考えられるが、このように構成した場合、階層構造内に循環接続が発生するおそれがあり、循環接続となった端末装置では、データ配信装置400から配信されるデータを受信できなくなるおそれがあった。
【０００８】
たとえば、図２６に示す階層構造において、端末装置403が階層構造から一旦離脱して、再度階層構造へ接続する際、この端末装置403は、自装置の下流側に複数の端末装置407、408、415〜418が接続されているため、自装置の下流側の端末装置418と接続する場合がある。
【０００９】
このように、端末装置403と端末装置4018とが接続した場合、図２７に示すように、端末装置403と端末装置408と端末装置418との接続が循環接続となってしまうため、端末装置403からデータの中継を受ける端末装置407、408、415〜418は、データ配信装置400から配信されるデータを受信できない状態となる。
【００１０】
そこで、本発明では、接続候補紹介装置500の処理負荷を低減できると共に、各端末装置401〜430間での循環接続の発生を防止できるデータ配信システム及び端末装置及び情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
請求項１に係る本発明では、ネットワークを介してデータを配信するデータ配信装置と、前記データ配信装置を頂点として前記ネットワーク上に階層構造で多層に論理接続され、前記データ配信装置から配信されるデータを受信して中継する複数の端末装置と、前記階層構造への接続要求を送信してきた端末装置に対して前記階層構造の接続候補となる端末装置を紹介する接続候補紹介装置とを備え、前記データ配信装置から配信されるデータが前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によって配信されるデータ配信システムにおいて、前記端末装置は、前記階層構造に接続した状態で、前記階層構造における自装置の接続位置を示す接続位置情報を取得する接続位置取得手段と、
前記階層構造に再接続する際に、前記接続候補紹介装置から前記接続候補となる端末装置へ接続するための接続情報を取得する接続候補取得手段と、前記接続候補取得手段により取得した前記接続情報に対応する端末装置から、その端末装置の接続位置情報を取得する接続候補位置取得手段と、前記接続候補位置取得手段により取得した前記接続位置情報と、前記接続位置取得手段により取得した前記接続位置情報とに基づいて、前記階層構造における接続位置が自装置の接続位置よりも下流にない前記接続候補の端末装置を接続先として選択する接続先選択手段とを有することを特徴とする。
【００１２】
また、請求項２に係る本発明では、請求項１に記載のデータ配信システムにおいて、前記接続位置情報は、前記データ配信装置から前記端末装置までのデータの配信経路により、前記階層構造における端末装置の接続位置を特定する情報であることを特徴とする。
【００１３】
また、請求項３に係る本発明では、請求項１又は請求項２に記載のデータ配信システムにおいて、前記接続位置取得手段は、前記接続位置情報の取得を、自装置に接続した上流の端末装置から行うことを特徴とする。
【００１４】
また、請求項４に係る本発明では、請求項１〜３のいずれか１項に記載のデータ配信システムにおいて、前記端末装置は、自装置の下流に接続した端末装置の接続位置情報を演算する下流接続位置演算手段と、前記下流接続位置演算手段により演算された接続位置情報を送信する下流接続位置送信手段とを有することを特徴とする。
【００１５】
また、請求項５に係る本発明では、請求項１〜４のいずれか１項に記載のデータ配信システムにおいて、前記接続候補紹介装置は、前記端末装置から前記階層構造への再接続要求を受信する再接続要求受信手段と、前記再接続要求を送信してきた端末装置から、その端末装置の接続位置情報を受信する再接続中接続位置受信手段と、前記再接続中接続位置受信手段により受信した接続位置情報を、前記再接続要求を送信してきた端末装置の再接続が完了するまでの間記憶する再接続中接続位置記憶手段と、再接続要求を送信してきた端末装置へ、前記再接続中接続位置記憶手段に記憶している接続位置情報を送信する接続位置送信手段とを有し、前記端末装置は、前記接続候補紹介装置から、前記再接続中接続位置記憶手段に記憶されている接続位置情報を取得する再接続中接続位置取得手段を備え、前記接続先選択手段は、前記接続候補紹介装置から紹介された接続候補の端末装置のなかで、前記再接続中接続位置取得手段により取得した接続位置情報又はその下流の接続位置情報に対応する端末装置以外の端末装置から接続先となる端末装置を選択することを特徴とする。
【００１６】
また、請求項６に係る本発明では、請求項５に記載のデータ配信システムにおいて、前記接続候補紹介装置は、前記端末装置から階層構造への再接続が完了したことを示す再接続完了情報を受信する再接続完了情報受信手段と、前記再接続完了情報受信手段が前記再接続完了情報を受信したことを契機に、前記再接続中接続位置記憶手段から、前記再接続が完了した端末装置の接続位置情報を削除する接続位置記憶処理手段とを有することを特徴とする。
【００１７】
また、請求項７に係る本発明では、請求項６に記載のデータ配信システムにおいて、前記接続位置記憶処理手段は、前記再接続中接続位置記憶手段から前記接続位置情報を削除するときに、削除する接続位置情報に対応する端末装置の下流に接続された端末装置の接続位置情報を記憶して、所定期間経過後に削除する記憶更新処理を所定回数繰り返すことを特徴とする。
【００１８】
また、請求項８に係る本発明では、ネットワークを介してデータを配信するデータ配信装置と、前記データ配信装置を頂点として前記ネットワーク上に階層構造で多層に論理接続され、前記データ配信装置から配信されるデータを受信して中継する複数の端末装置と、前記階層構造への接続要求を送信してきた端末装置に対して前記階層構造の接続候補となる端末装置を紹介する接続候補紹介装置とを備え、前記データ配信装置から配信されるデータが前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によって配信されるデータ配信システムにおける端末装置において、前記階層構造に接続した状態で、前記階層構造における自装置の接続位置を示す接続位置情報を取得する接続位置取得手段と、前記階層構造に再接続する際に、前記接続候補紹介装置から前記接続候補となる端末装置へ接続するための接続情報を取得する接続候補取得手段と、前記接続候補取得手段により取得した前記接続情報に対応する端末装置から、その端末装置の接続位置情報を取得する接続候補位置取得手段と、前記接続候補位置取得手段により取得した前記接続位置情報と、前記接続位置取得手段により取得した前記接続位置情報とに基づいて、前記階層構造における接続位置が自装置の接続位置よりも下流にない前記接続候補の端末装置を接続先として選択する接続先選択手段とを有することを特徴とする。
【００１９】
また、請求項９に係る本発明では、ネットワークを介してデータを配信するデータ配信装置と、前記データ配信装置を頂点として前記ネットワーク上に階層構造で多層に論理接続され、前記データ配信装置から配信されるデータを受信して中継する複数の端末装置と、前記階層構造への接続要求を送信してきた端末装置に対して前記階層構造の接続候補となる端末装置を紹介する接続候補紹介装置とを備え、前記データ配信装置から配信されるデータが前記階層構造の上流の端末装置から下流の端末装置にかけて順次前記端末装置の中継機能によって配信されるデータ配信システムにおける情報処理方法であって、前記端末装置が前記階層構造に接続した状態で、前記階層構造における自装置の接続位置を示す接続位置情報を取得するステップと、前記端末装置が前記階層構造に再接続する際に、前記接続候補紹介装置から前記接続候補となる端末装置へ接続するための接続情報を取得するステップと、
前記端末装置が前記接続候補紹介装置から取得した接続情報に対応する端末装置から、その端末装置の接続位置情報を取得するステップと、前記端末装置が前記接続候補の端末装置の接続位置情報と、自装置の接続位置情報とに基づいて、前記階層構造における接続位置が自装置の接続位置よりも下流にない前記接続候補の端末装置を接続先として選択するステップとを有することを特徴とする。
【００２０】
また、請求項１０に係る本発明では、コンピュータに、請求項１〜５に記載のデータ配信システムにおける端末装置の各手段として機能させるためのプログラムとした。
【００２１】
また、請求項１１に係る本発明では、コンピュータに、請求項５〜７に記載のデータ配信システムにおける接続候補紹介装置の各手段として機能させるためのプログラムとした。
【発明の効果】
【００２２】
本発明によれば、接続候補紹介装置の処理負荷を低減できると共に、各端末装置間での循環接続の発生を防止することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の一実施形態について、図面を参照して具体的に説明する。図１〜図７は、本実施形態のデータ配信システムを示す説明図であり、図８は再接続中リストテーブルを示す説明図であり、図９は、データ配信装置を示す機能ブロック図であり、図１０は、接続候補紹介装置を示す機能ブロックであり、図１１は、端末装置を示す機能ブロック図であり、図１２〜図１６は、接続候補紹介装置の制御部が行う情報処理を示す説明図であり、図１７〜図２４は、端末装置の制御部が行う情報処理を示す説明図である。
【００２４】
[データ配信システムについて]
まず、本実施形態に係るデータ配信システムの概要等について説明する。図１に示すように、本実施形態のデータ配信システムSは、インターネットに代表される通信ネットワークを介して、映像コンテンツや音楽コンテンツ等のデータを配信するデータ配信装置Aと、このデータ配信装置Aを頂点としてネットワーク上にツリー型の階層構造で多層に論理接続され、P2P技術を利用してデータ配信装置Aから配信されるデータを受信して中継する複数の端末装置B1〜B30（以下、任意の端末装置を示す場合には、端末装置Bと称する。）と、階層構造への接続要求や再接続要求を送信してきた端末装置Bに対して階層構造の接続候補となる端末装置Bを紹介する接続候補紹介装置Cとを備えている。
【００２５】
なお、本実施形態では、データ配信装置A及び端末装置Bが、階層構造において自装置の下流側に接続可能な端末装置Bの数を２つまでとして説明を行うが、本発明はこれに限定されるものではなく、自装置の下流側に３つ以上の端末装置Bを接続可能な端末装置Bやデータ配信装置Aを備えたデータ配信システムに対しても適用することができる。
【００２６】
このデータ配信システムSでは、データ配信装置Aから配信されるデータが階層構造の上流の端末装置Bから下流の端末装置Bにかけて順次各端末装置Bの中継機能によって配信されることにより、階層構造に接続している全ての端末装置Bがデータ配信装置Aから配信されたデータを受信して、各端末装置Bのユーザがコンテンツを視聴できるように構成している。
【００２７】
特に、本実施形態の接続候補紹介装置Cは、階層構造への接続要求を送信してきた端末装置Bから、その端末装置Bを識別するための識別情報（以下、「ノード番号」という。）と、各端末装置Bのネットワーク上における所在情報（以下、「IPアドレス」という。）とからなる接続情報を受信して順次記憶するように構成しているが、階層構造への端末装置Bの接続や階層構造からの端末装置Bの離脱に伴って変化する階層構造の構造体系や、階層構造に接続している端末装置Bがその下流側に他の端末装置Bを接続可能な状態であるか否かを示す情報等は記憶しないように構成している。
【００２８】
そして、この接続候補紹介装置Cは、階層構造への再接続要求を送信してきた端末装置Bへ、現在階層構造に接続している端末装置Bの中から任意に選択した複数の端末装置Bに関するノード番号とIPアドレスを送信することによって、階層構造における接続候補となる端末装置を紹介するようにしている。
【００２９】
このように、本実施形態の接続候補紹介装置Cは、接続候補となる端末装置Bを紹介するための情報として、階層構造に接続している端末装置Bのノード番号とIPアドレスという必要最小限の情報だけを記憶するように構成しているため、接続候補となる端末装置Bを紹介するために行う情報処理量が可及的に低減できる。
【００３０】
そして、この接続候補紹介装置Cは、端末装置Bから階層構造への新規な接続要求を受信する接続要求受信手段と、端末装置Bから階層構造への再接続要求を受信する再接続要求受信手段と、再接続要求を送信してきた端末装置Bから、その端末装置Bの階層構造における接続位置を示す後述の接続位置情報を受信する再接続中接続位置受信手段と、再接続中接続位置受信手段により受信した接続位置情報を、再接続要求を送信してきた端末装置Bの再接続が完了するまでの間記憶する再接続中接続位置記憶手段と、接続要求や再接続要求を送信してきた端末装置Bへ、再接続中接続位置記憶手段に記憶している接続位置情報を送信する接続位置送信手段とを備えている。
【００３１】
このように、接続候補紹介装置Cは、接続要求や再接続要求を送信してきた端末装置Bに対して、接続候補として選択した複数の端末装置Bのノード番号とIPアドレスとを送信するだけでなく、階層構造へ現在再接続処理中の端末装置Bに関する情報を送信することによって、階層構造に接続しようとする端末装置Bが誤って再接続処理中の他の端末装置Bに接続してしまうことを防止するようにしている。
【００３２】
また、この接続候補紹介装置Cは、端末装置Bから階層構造への再接続が完了したことを示す再接続完了情報を受信する再接続完了情報受信手段と、再接続完了情報受信手段が再接続情報完了情報を受信したことを契機に、再接続中接続位置記憶手段から、再接続が完了した端末装置Bの接続位置情報を削除する接続位置記憶処理手段とを備え、特定の条件が成立したときに、再接続中接続位置記憶手段に記憶している情報を更新するようにしている。
【００３３】
また、この接続候補紹介装置Cが備える接続位置記憶処理手段は、再接続中接続位置記憶手段から接続位置情報を削除するときに、削除する接続位置情報に対応する端末装置Bの下流に接続された端末装置Bの接続位置情報を記憶して、所定期間経過後に削除する記憶更新処理を所定回数繰り返すようにしている。
【００３４】
このように接続位置記憶処理手段は、再接続中接続位置記憶手段に記憶している情報を更新することによって、階層構造に接続しようとする端末装置Bが、誤って再接続処理が完了した直後の端末装置Bの下流に接続している再接続処理が完了していない端末装置Bに接続してしまうことを防止するようにしている。
【００３５】
また、本実施形態の端末装置Bは、階層構造に再接続する際に、接続候補紹介装置Cから接続候補となる端末装置Bへ接続するための接続情報を取得する接続候補取得手段を備えている。
【００３６】
この端末装置Bが備える接続候補取得手段は、接続候補紹介装置Cから接続情報として、接続候補紹介装置Cが任意に選択した複数の端末装置Bのノード番号とIPアドレスとを取得する。
【００３７】
また、この端末装置Bは、階層構造に接続した状態で、自装置に接続した上流の端末装置Bから、階層構造における自装置の接続位置を示す接続位置情報を取得する接続位置取得手段と、この接続位置取得手段により取得した自装置の接続位置情報を記憶する接続位置記憶手段を備えている。
【００３８】
ここで、接続位置情報について、図２を参照して説明する。図２は、図１に示した階層構造の左側半分を示す説明図である。なお、図２では、各端末装置Bを○で示しており、○の中の数字が各端末装置Bのノード番号を示しており、○の右側に記載している数字列が各端末装置Bの接続位置情報を示している。
【００３９】
図２に示すように、各端末装置Bの接続位置情報は、データ配信装置Aから各端末装置Bまでのデータの配信経路により、階層構造における各端末装置Bの接続位置を特定する情報となっている。
【００４０】
すなわち、この接続位置情報は、データ配信装置Aから自装置までのデータの配信経路を示す情報（以下、「パス情報」という。）を、スラッシュ（/）の左側に記載しており、自装置が階層構造の何層目に接続しているのかを示す情報（以下、「深さ情報」という。）をスラッシュ（/）の右側に記載するようにしている。
【００４１】
具体的に説明すると、パス情報は、自装置が一階層上の装置の左右いずれ側に接続しているのかを一桁目に、また、自装置が接続している一階層上の装置が、自装置の二階層上の装置の左右いずれ側に接続しているのかを二桁目に、また、自装置の三階層、四階層上の装置の左右いずれ側に接続しているのかを三桁目、四桁目に、順次0又は1で示すようにしている。
【００４２】
また、深さ情報は、階層構造においてデータ配信装置Aの一階層下の階層を1、データ配信装置Aの二階層下の階層を2、三階層下の階層を3として、順次示すようにしている。
【００４３】
たとえば、図２に示す端末装置B20の場合、データ配信装置Aから四階層下の階層に接続しているため、深さ情報は4となり、自装置に接続した一階層上の端末装置B9の右側に接続されているため、パス情報の一桁目が1となり、端末装置B9が一階層上（端末装置B20の二階層上）の端末装置B4の左側に接続されているため、パス情報の二桁目が0となり、端末装置B4が一階層上（端末装置B20の三階層上）の端末装置B1の右側に接続されているため、パス情報の三桁目が1となり、端末装置B1が一階層上（端末装置B20の四階層上）のデータ配信装置Aの左側に接続されているため、パス情報の四桁目が0となっている。
【００４４】
なお、本実施形態では、深さ情報として、データ配信装置Aからの階層の数を記載し、パス情報として、自装置が上層の端末装置B又はデータ配信装置Aの左側に接続していた場合に、その階層に対応する桁に0を記載し、右側に接続していた場合に、その階層に対応する桁に1を記載するように構成しているが、深さ情報及びパス情報は、これに限定するものではなく、各端末装置Bの階層構造における絶対位置を示すものであれば任意の情報とすることができる。
【００４５】
また、各端末装置Bは、自装置の下流に接続した端末装置Bの接続位置情報を演算する下流接続位置演算手段と、この下流接続位置演算手段により演算された接続位置情報を、下流に接続した端末装置Bへ送信する下流接続位置送信手段とを備えている。
【００４６】
すなわち、この端末装置Bの下流接続位置演算手段は、自装置の深さ情報に1加算した深さ情報を生成すると共に、自装置のパス情報における各桁の数字を桁上げし、空白となったパス情報の一桁目に、自装置の下流に接続する端末装置Bを自装置の左側に接続する場合には0を、右側に接続する場合には1を記載したパス情報を生成して、自装置の下流に接続した端末装置Bの接続位置情報を生成する。
【００４７】
そして、端末装置Bの下流接続位置送信手段は、こうして生成された接続位置情報を下流に接続した端末装置Bへ送信する。
【００４８】
ここで、このように構成した端末装置Bが新規に階層構造へ接続して自装置の接続位置情報を取得するまでの手順について、図３を参照して説明する。ここでは、図３に示す端末装置Ｂ15が新規に階層構造へ接続する場合を例に挙げて説明する。
【００４９】
図３（a）に示すように、今、データ配信装置Aと７つの端末装置B1、B3、B4、B7、B8、B9、B10とによって構成されている階層構造に、端末装置B15（ここでは、「新規端末装置B15」という。）が新たに接続する場合、新規端末装置B15は、まず、接続候補紹介装置Cへ階層構造への接続要求T1を送信する。
【００５０】
接続候補紹介装置Cは、接続要求受信手段によって新規端末装置B15からの接続要求T1を受信すると、接続要求T1を送信してきた新規端末装置B15から、その新規端末装置B15の接続情報（ノード番号とIPアドレス）を取得して記憶し、その後、図３（b）に示すように、新規端末装置B15からの再接続要求T4を受信すると、その再接続要求T4を送信してきた新規端末装置B15へ、接続先となる端末装置Bに関する接続情報T2を送信する。
【００５１】
本実施形態の接続候補紹介装置Cは、現在階層構造を構成している端末装置Bの接続態様までは管理していないが、図３（b）に示すように、階層構造を構成している全端末装置B1、B3、B4、B7、B8、B9、B10の各ノード番号とIPアドレスだけは管理しており、ここでは、接続情報T2として、端末装置B3、B4、B7という３つの端末装置Bのノード番号とIPアドレスとを選択して新規端末装置B15へ送信する。
【００５２】
新規端末装置B15は、接続候補取得手段によって、接続候補紹介装置Cから接続情報T2を取得すると、図３（c）に示すように、３つの端末装置B3、B4、B7に対して順次接続依頼T3を送信して、接続依頼T3を送信した端末装置Bから接続可能か否かを示す情報を受信する。
【００５３】
新規端末装置B15からの接続依頼T3を受信した各端末装置Bは、自装置の下流側に接続している端末装置Bに関する情報を管理しているため、この情報を参照して、自装置の下流側に新規端末装置B15を接続可能であるか否かを判断する。
【００５４】
ここでは、図３（a）に示すように、端末装置B3は、自装置の下流側に２つの端末装置B7、B8が既に接続されており、端末装置B4は、自装置の下流側に２つの端末装置B9、B10が既に接続されているため、これら２つの端末装置B3、B4は、新規端末装置B15へ接続不可能であることを示す情報を送信する。
【００５５】
一方、端末装置B7は、図３（a）に示すように、自装置の下流側に他の端末装置Bが接続されていないため、新規端末装置B15へ接続可能であることを示す情報を送信する。
【００５６】
そして、新規端末装置B15は、接続可能であることを示す情報を送信してきた端末装置B7との接続を確立して、端末装置B7からデータの中継を受けることとなる。
【００５７】
このとき、新規端末装置B15と接続した端末装置B7は、下流接続位置演算手段により、自装置の接続位置情報を基に新規端末装置B15の接続位置情報を演算する。
【００５８】
ここでは、端末装置B7の接続位置情報が（000/3）であり、端末装置B7の下流左側に新規端末装置B15を接続したため、新規端末装置B15の接続位置情報は（0000/4）となる。
【００５９】
そして、端末装置B7は、こうして算出した新規端末装置B15の接続位置情報（0000/4）を、下流接続位置送信手段により新規端末装置B15へ送信する。
【００６０】
本実施形態では、このように各端末装置Bを構成することによって、階層構造に接続した全ての端末装置Bは、図２に示すように、自装置に関する接続位置情報を取得して記憶することができる。
【００６１】
また、この端末装置Bは、接続候補取得手段により取得した接続情報に対応する接続候補の端末装置Bから、その端末装置Bの接続位置情報を取得する接続候補位置取得手段と、この接続候補位置取得手段により取得した接続候補となる端末装置Bの接続位置情報と接続位置取得手段により取得した自装置の接続位置情報とに基づいて、階層構造における接続位置が自装置の接続位置よりも下流にない接続候補の端末装置Bを接続先として選択する接続先選択手段とを備えている。
【００６２】
ここで、自装置の下流側に他の端末装置Bを接続した端末装置Bが、一旦階層構造から離脱して、離脱する前とは別の端末装置Bへ接続するまでの第１の手順について、図４及び図５を参照して説明する。ここでは、図４（a）に示すように、自装置の下流側に複数の端末装置B7、B8、B15〜18が接続され、（00/2）という接続位置情報を有している端末装置B3が、一旦階層構造から離脱して、再度階層構造へ接続する場合を例に挙げて説明する。
【００６３】
図４（a）に示すように、階層構造から一旦離脱する端末装置B3（ここでは、「再接続端末装置B3」という。）は、まず、接続候補紹介装置Cに対して、階層構造から一旦離脱して再接続することを示す再接続要求T4を送信する。
【００６４】
接続候補紹介装置Cは、再接続要求受信手段により、再接続端末装置B3から再接続要求T4を受信すると、図４（b）に示すように、再接続端末装置B3へ接続候補となる端末装置の接続情報T2を送信する。
【００６５】
ここでは、接続候補紹介装置Cは、接続候補として、３つの端末装置B4、B6、B18のノード番号とIPアドレスを再接続端末装置B3へ送信するようにしている。
【００６６】
再接続端末装置B3は、接続候補取得手段により、接続候補紹介装置Cから接続候補となる端末装置B4、B6、B18を取得すると、３つの端末装置B4、B6、B18に対して順次接続依頼T3を送信して、接続依頼T3を送信した端末装置Bから接続可能か否かを示す情報を受信する。
【００６７】
ここでは、図４（b）に示すように、接続候補となる３つの端末装置B4、B6、B18の下流側には、端末装置Bが接続されていないため、再接続端末装置B3は、３つの端末装置B4、B6、B18から接続可能であることを示す情報受信する。
【００６８】
また、再接続端末装置B3は、このとき、接続候補位置取得手段によって、接続候補となる３つの端末装置B4、B6、B18から、その端末装置B4、B6、B18の接続位置情報T5を取得する。
【００６９】
ここで、再接続端末装置B3は、端末装置B4から（01/2）、端末装置B6から（11/2）、端末装置B18から（0011/4）という接続位置情報T5をそれぞれ取得する。
【００７０】
そして、再接続端末装置B3では、接続候補位置取得手段により取得した接続情報（01/2）、（11/2）、（0011/4）T5と、自装置の接続位置情報（00/2）とに基づいて、接続先選択手段が接続先となる端末装置Bを選択する。
【００７１】
このとき、接続先選択手段は、接続位置情報から端末装置B18が自装置の下流に接続されている端末装置Bであると判断して、他の２つの端末装置B4、B6のうちのいずれか一方を接続先として選択する。なお、ここで、端末装置B4を接続先として選択して接続するようにしている。
【００７２】
このように、本実施形態の端末装置Bは、接続候補となる端末装置Bの接続位置情報と、自装置の接続位置情報とに基づいて、接続した場合に循環接続となる端末装置Bを接続候補から除外して接続先とする端末装置Bを選択するように構成しているため、再接続を行う際に循環接続が発生することを防止することができる。
【００７３】
そして、図５に示すように、再接続端末装置B3は、端末装置B4と接続すると、接続位置取得手段により、自装置の新たな接続位置情報（010/3）を上流の端末装置B4から取得して、自装置の接続位置情報を更新する。
【００７４】
このとき、この再接続端末装置B3は、自装置の下流側に２つの端末装置B7、B8が接続されているので、更新した自装置の接続位置情報を基に、自装置の下流側に接続している端末装置B7、B8の各接続位置情報（0100/4）、（0101/4）を演算して、下流の２つの端末装置B7、B8へそれぞれ送信する。
【００７５】
また、これら２つの端末装置B7、B8にもそれぞれ、下流側に２つずつ端末装置が接続されているため、２つの端末装置B7、B8も同じく下流側に接続している端末装置B15〜18の新たな接続位置情報を演算して送信する。
【００７６】
また、本実施形態の端末装置Bは、接続候補紹介装置Cから再接続中接続位置記憶手段に記憶されている接続位置情報を取得する再接続中接続位置取得手段を備えている。
【００７７】
この再接続中接続位置取得手段は、接続候補紹介装置Cから、現在再接続中であって、階層構造への再接続が完了していない端末装置Bに関するパス情報及び深さ情報等のリスト（以下、「再接続中リスト」という。）を取得する。
【００７８】
そして、端末装置Bの接続先選択手段は、再接続中リストを参照して、接続候補紹介装置Cから紹介された接続候補の端末装置Bの中で、再接続中位置取得手段により取得した接続位置情報又はその下流に接続している端末装置Bの接続位置情報に対応する端末装置B以外の端末装置Bから、接続先となる端末装置Bを選択する。
【００７９】
ここで、自装置の下流側に他の端末装置Bを接続した端末装置Bが、一旦階層構造から離脱して、離脱する前とは別の端末装置Bへ接続するまでの第２の手順について、図６〜８を参照して説明する。ここでは、図６（a）に示すように、自装置の下流側にそれぞれ端末装置Bが接続されている２つの端末装置B7,B9が、ほぼ同時に階層構造から離脱した際に、一方の端末装置B7が再度階層構造へ接続する場合を例に挙げて説明する。
【００８０】
図６（ａ）に示すように、一旦階層構造から離脱して再度階層構造へ接続する端末装置B7（ここでは、「第1再接続端末装置B7」という。）は、まず、接続候補紹介装置Cへ再接続要求T4を送信する。このとき、第1再接続端末装置B7は、自装置の接続位置情報T5を接続候補紹介装置Cへ送信する。
【００８１】
なお、ここでは図示しないが、このとき、もう一方の再接続を行う端末装置B9（ここでは、「第2再接続端末装置B9」という。）も、接続候補紹介装置Cへ再接続要求T4と自装置の接続位置情報T5とを接続候補紹介装置Cへ送信する。
【００８２】
接続候補紹介装置Cは、再接続要求受信手段により、第1再接続端末装置B7からの再接続要求T4を受信すると共に、再接続中接続位置受信手段により、第1再接続端末装置B7からの接続位置情報T5を受信して、再接続中接続位置記憶手段に記憶して登録する。
【００８３】
このとき、接続候補紹介装置Cは、第2再接続端末装置B9から受信した接続位置情報も再接続中接続位置記憶手段に記憶して登録する。
【００８４】
この接続候補紹介装置Cは、再接続中接続位置記憶手段により、再接続中の端末装置B（ここでは、端末装置B7、B9）の接続位置情報T5が登録された再接続中リストテーブルを作成することによって、再接続中の端末装置Bの接続位置情報T5を登録し、登録した再接続中の端末装置Bの再接続が完了するまでの間記憶する。
【００８５】
この再接続中リストテーブルの一例を図８に示す。この図８（a）に示すように、再接続中リストテーブルには、現在再接続中であって未だ階層構造への再接続が完了していない第1再接続端末装置B7及び第2再接続端末装置B9の各ノード番号、パス情報、深さ情報と、後述の次回完了深度及び次回更新時刻等の情報が登録されている。
【００８６】
その後、接続候補紹介装置Cは、図６（b）に示すように、接続位置送信手段により、再接続要求を送信してきた第1再接続端末装置B7に対して、接続候補となる複数の端末装置Bの接続情報と、再接続中リストテーブルに登録している再接続中リストT6とを送信する。
【００８７】
ここで、接続候補紹介装置Cは、接続情報T2として、３つの端末装置B8、B9、B19のノード番号とIPアドレスを送信すると共に、再接続中リストT6として、第1再接続端末装置B7及び第2再接続端末装置B9のパス情報と深さ情報とを送信するようにしている。
【００８８】
そして、第1再接続端末装置B7では、接続候補取得手段により取得した接続候補の接続情報T2と、再接続中接続位置取得手段により取得した再接続中リストT6に基づいて、接続先選択手段が接続先となる端末装置Bを選択する。
【００８９】
ここで、第1再接続端末装置B7の接続先選択手段は、接続候補紹介装置Cから紹介された接続候補の端末装置B8、B9、B19の中で、再接続中リストT6に含まれている端末装置B9を接続候補から除外し、残った２つの端末装置B8、B19から接続先となる端末装置Bを選択する。
【００９０】
このように、本実施形態の端末装置Bは、階層構造への再接続を行う際に、再接続中リストT6に登録されている端末措置Bへ接続しないように構成しているため、誤って再接続が完了していない他の端末装置Bと接続してデータの配信を受けられなくなることを確実に防止することができる。
【００９１】
そして、第1再接続端末装置B7は、接続候補である２つの端末装置B8、B19へ順次接続依頼T3を送信して、２つの端末装置B8、B19から、その端末装置B8、B19の接続位置情報T5を取得する。
【００９２】
このとき、第1再接続端末装置B7は、端末装置B19から取得した接続位置情報T5が（0100/4）であるため、この端末装置B19が、再接続中リストT6に登録されている接続情報B9に対応する第2再接続端末装置B9の下流側に接続している端末装置Bであると判断して、接続を行わない。
【００９３】
このように、本実施形態の端末装置Bは、再接続が完了していない他の端末装置Bの下流側に接続している端末装置と接続しないように構成しているため、循環接続が発生することを防止することができる。
【００９４】
すなわち、ここで仮に第1再接続端末装置B7が、端末装置B19に接続した場合、その後、第2再接続端末装置B9が第1再接続端末装置B7の下流側に接続している端末装置B15と接続してしまうと、循環接続が発生してしまい、この循環接続された４つの端末装置B7、B9、B15、19Bは、データ配信装置Aからのデータ配信を受けることができなくなってしまう。
【００９５】
しかし、上記のように、本実施形態の端末装置Bでは、再接続が完了していない端末装置Bの下流側に接続している端末装置Bに対しても接続を行わないため、端末装置B間に循環接続が発生することを防止することができるのである。
【００９６】
ここで、第1再接続端末装置B7の接続先選択手段は、接続候補の端末装置B8、B9、B19の中で、再接続中リストT6に登録されておらず、再接続中リストT6に登録されている端末装置B9の下流に接続されている端末装置B19でもない、端末装置B8を接続先として選択する。
【００９７】
そして、第1再接続端末装置B7は、図７に示すように、端末装置B8の下流側に接続すると、この端末装置B8から自装置の新たな接続位置情報を取得する。ここで第1再接続端末装置B7の新たな接続位置情報は、端末装置B8の接続位置情報が（001/3）であり、この端末装置B8の下流左側に接続したため、（0010/4）となる。
【００９８】
その後、第1再接続端末装置B7は、自装置の下流側に接続している端末装置B15の新たな接続位置情報を演算して、この演算により生成した（00100/5）という接続位置情報を下流に接続している端末装置B15へ送信する。
【００９９】
また、第1再接続端末装置B7は、このように階層構造への再接続が完了すると、接続候補紹介装置Cへ、再接続が完了したことを示す再接続完了情報T7を送信する。
【０１００】
接続候補紹介装置Cは、接続完了情報受信手段により、この再接続完了情報T7を受信すると、接続位置記憶処理手段が再接続中接続位置記憶手段における再接続中リストテーブルを更新する処理を行う。
【０１０１】
この接続位置記憶処理手段は、図８（b）に示すように、第1再接続端末装置B7から再接続完了情報T7が受信されたことを契機に、再接続中リストテーブルから第1再接続端末装置B7に関するノード番号と接続位置情報とを削除すると共に、第1再接続端末装置B7の一階層下流に接続されていた端末装置Bに関する接続位置情報と、その端末装置Bの深さ情報を示す次回完了深度と、再接続中リストテーブルの次回更新時刻とを記憶させる処理を行う。
【０１０２】
ここでは、再接続が完了した第1再接続端末装置B7の下流側に接続している端末装置Bが端末装置B15であるが、接続位置記憶処理手段は、端末装置B15との間で情報の授受を行わないため、第1再接続端末装置B7の接続位置情報である（000/3）から、端末装置B15の接続位置情報を（000Y「Yは、0又は1のいずれか。」/4）とし推測して、再接続中リストテーブルのパス情報の欄に000Yを登録し、次回完了深度の欄に4を登録する。
【０１０３】
また、本実施形態では、再接続中リストテーブルの更新間隔をN（Nは次回完了深度と同じ深度であった端末装置の接続位置情報が、更新されることを保証できる秒数）秒間隔としており、接続位置記憶処理手段は、第1再接続端末装置B7の再接続が完了した時刻にN秒を加算した時刻を次回更新時刻の領域に登録する。なお、本実施形態では、第1再接続端末装置B7が12時（時刻12：00：00）に再接続を完了したものとする。
【０１０４】
また、本実施形態の接続候補紹介装置Cでは、接続位置記憶処理手段が、再接続要求を送信してきた端末装置Bの再接続が完了した後、その端末装置BよりもD（Dは任意に設定可能な数）階層下流側に接続している端末装置Bまでに限り、パス情報と次回完了深度と次回更新時刻とを順次登録及び更新し、その後、削除するように構成している。
【０１０５】
これにより、接続候補紹介装置Cは、再接続要求を送信してきた端末装置Bの再接続が完了した後、少なくともD×N秒後には、再接続要求を送信してきた端末装置Bと、その端末装置Bよりも下流に接続している端末装置Bに関する情報を削除することができるので、再接続中リストテーブルとして確保する記憶領域を可及的に小さくすることができ、しかも、再接続要求を送信してきた端末装置Bへ送信する再接続中リストの情報量も可及的に小さくすることができる。
【０１０６】
[データ配信装置の構成等の説明]
ここで、本実施形態のデータ配信装置Aの構成等について説明する。図９は、本実施形態のデータ配信システムSにおけるデータ配信装置Aの概略構成を示す機能ブロック図である。
【０１０７】
データ配信装置Aは、図９に示すように、CPU（Central Processing Unit）101と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１の記憶部102と、各種データ等を記憶するHDD（Hard Disc Drive）等から構成された第２の記憶部103と、インターネットを介して端末装置Bとの間で通信を行うネットワークインターフェイス104と、所定の情報を入力可能なキーボード105やマウス106等の入力部を制御する周辺機器制御チップ107と、CPU101からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ109に表示するビデオチップ108と、ビデオチップ108から送信される信号に応じた表示を行うディスプレイ109と、ＦＭ音源(Frequency Modulation)やWave Table音源などの音源を有する音源チップ110と、音源チップ110から出力されるオーディオ信号を音波に変換するスピーカ111とを備えて構成され、これらの各種構成要素はシステムバス112を介して相互に接続されている。なお、本実施形態においては、CPU101と第１の記憶部102とで制御部113を構成している。なお、ネットワークインターフェイス104は、ルータ10ａを介して、ネットワークに接続されている。
【０１０８】
（第1の記憶部102について）
第１の記憶部102には、データ配信装置Aのコンピュータとしての基本的な機能を提供するためのOS（オペレーティングシステム）のプログラム120と、第２の記憶部103に記憶されたコンテンツデータを取り出して端末装置Bへ配信するためのデータ配信プログラム121と、階層構造における一階層下流側に接続している端末装置Bのノード番号及びIPアドレスの管理等を行なうためのトポロジー管理プログラム122と、ディスプレイ109を制御するための画面制御プログラム123と、エンコードされたコンテンツデータをデコードしたり、コンテンツデータをエンコードするためのエンコーダ／デコーダプログラム124と、端末装置Bとの間との間で各種データの授受を行うために実行される通信プログラム125等を記憶しており、これらはCPU101によって読み出され、CPU101によってこれらのプログラムに従った機能が実行される。
【０１０９】
ここで、ＯＳプログラム120は、CPU101によって読み出されて実行されることにより、キーボード105やマウス106の入出力に関する機能や、第１の記憶部102や第２の記憶部103などのメモリ管理などのデータ配信装置Aであるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム120がCPU101によって実行された状態で、上述のデータ配信プログラム121、トポロジー管理プログラム122、画面制御プログラム123、エンコーダ／デコーダプログラム124、通信プログラム125等が実行される。
【０１１０】
なお、OSプログラム120、データ配信プログラム121、トポロジー管理プログラム122、画面制御プログラム123、エンコーダ／デコーダプログラム124、通信プログラム125は、例えば、インターネットに接続されたサーバ等から第１の記憶部102にダウンロードされるようにしてもよく、又ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１の記憶部102に読み込まれるようにしてもよい。
【０１１１】
（制御部113について）
制御部113は、上述のようにCPU101と第１の記憶部102とから構成され、CPU101が第１の記憶部102に記憶された各種プログラム120〜124を読み出して実行することにより、データ配信装置A全体を統括制御するものである。
【０１１２】
[端末装置の構成等の説明]
次に、図１０を参照して、本実施形態の端末装置Bの構成等について説明する。
【０１１３】
図１０は、本実施形態における端末装置Bの概略構成例を示す機能ブロック図である。端末装置Bは、一般のパーソナルコンピュータを適用可能であり、図１０に示すように、CPU201と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１の記憶部202と、各種データ等を記憶するHDD等から構成された第２の記憶部203と、インターネットを介してデータ配信装置Aや接続候補紹介装置Cとの間で通信を行うネットワークインターフェイス204と、所定の情報を入力可能なキーボード205やマウス206等の入力部を制御する周辺機器制御チップ207と、CPU201からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ209に表示するビデオチップ208と、ビデオチップ208から送信される信号に応じた表示を行うディスプレイ209と、ＦＭ音源やWave Table音源などの音源を有する音源チップ210と、音源チップ210から出力されるオーディオ信号を音波に変換するスピーカ211とを備えて構成され、これらの各種構成要素はシステムバス212を介して相互に接続されている。なお、本実施形態においては、CPU201と第１の記憶部202とで制御部213を構成している。なお、ネットワークインターフェイス204は、ルータ10ｂを介して、ネットワークに接続されている。
【０１１４】
（第１の記憶部202について）
また、第１の記憶部202には、端末装置Bのコンピュータとしての基本的な機能を提供するためのOSプログラム220と、本実施形態のデータ配信システムSに参加するために実行されるシステム参加プログラム228と、データ配信装置Aから直接又は他の端末装置Bに中継されてストリーミング配信されるコンテンツデータを受信すると共に、受信したコンテンツデータを下流側に接続された他の端末装置Bへ中継するために実行されるストリーム制御プログラム221と、階層構造への接続及び階層構造からの離脱を行うために実行されるトポロジー管理プログラム222と、ディスプレイ209を制御するための画面制御プログラム223と、エンコードされたコンテンツデータをデコードするためのデコーダプログラム224と、データ配信装置Aや接続候補紹介装置C、他の端末装置Bとの間で各種データの授受を行うために実行される通信プログラム225等を記憶しており、これらの各プログラムがCPU201によって読み出され、CPU201によってこれらのプログラムに従った機能が実行される。
【０１１５】
また、この第1の記憶部202は、階層構造における自装置の接続位置情報、接続候補紹介装置Cから取得する接続候補となる端末装置Bの接続情報、再接続中リスト等、階層構造への接続及び階層構造からの離脱を行うために用いる各種情報を記憶するトポロジー情報記憶領域226と、受信したコンテンツデータを一時的に記憶するリングバッファ227とを備えている。なお、本実施形態では、上記トポロジー情報記憶領域226が、本発明における接続位置記憶手段として機能する。
【０１１６】
ここで、OSプログラム220は、CPU201によって読み出されて実行されることにより、第１の記憶部202や第２の記憶部203などのメモリ管理等の端末装置Bであるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム220がCPU201によって実行された状態で、上述のシステム参加プログラム228、ストリーム制御プログラム221、トポロジー管理プログラム222、画面制御プログラム223、デコーダプログラム224、通信プログラム225等が実行される。
【０１１７】
なお、OSプログラム220、システム参加プログラム228、ストリーム制御プログラム221、トポロジー管理プログラム222、画面制御プログラム223、デコーダプログラム224、通信プログラム225等は、例えば、インターネットに接続されたサーバ等から第１の記憶部202にダウンロードされるようにしてもよく、又CD-ROM等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１の記憶部202に読み込まれるようにしてもよい。
【０１１８】
また、本実施形態では、システム参加プログラム228、ストリーム制御プログラム221、トポロジー管理プログラム222、画面制御プログラム223、デコーダプログラム224、通信プログラム225等の各プログラムをそれぞれ個別に記載しているが、これら各プログラムを一つのデータ配信システム用プログラムとして、第１の記憶部202に記憶させるように構成してもよい。
【０１１９】
（制御部213について）
制御部213は、上述のようにCPU201と第１の記憶部202とから構成され、CPU201が第１の記憶部202に記憶された各種プログラム220〜224、228を読み出して実行することにより、端末装置B全体を統括制御し、かつ、上記した接続位置取得手段、接続候補取得手段、接続候補位置取得手段、接続先選択手段、下流接続位置演算手段、下流接続位置送信手段、再接続中接続位置取得手段等として機能するようになっている。
【０１２０】
[接続候補紹介装置の構成等の説明]
次に、図１１を参照して、接続候補紹介装置Cの構成等について説明する。
【０１２１】
図１１は、本実施形態における接続候補紹介装置Cの概略構成例を示す機能ブロック図である。接続候補紹介装置Cは、一般のサーバコンピュータを適用可能であり、図１１に示すように、CPU301と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置としての第１の記憶部302と、各種データ等を記憶するHDD等から構成された第２記憶部303と、インターネットを介して端末装置Bとの間で通信を行うネットワークインターフェイス304と、所定の情報を入力可能なキーボード305やマウス306等の入力部を制御する周辺機器制御チップ307と、CPU301からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述のディスプレイ309に表示するビデオチップ308と、ＦＭ音源やWave Table音源などの音源を有する音源チップ310と、音源チップ310から出力されるオーディオ信号を音波に変換するスピーカ311を備えて構成され、これらの各種構成要素はシステムバス312を介して相互に接続されている。なお、本実施形態においては、CPU301と第１の記憶部302とで制御部313を構成している。なお、ネットワークインターフェイス304は、ルータ10cを介して、インターネットに接続されている。
【０１２２】
（第１の記憶部302について）
また、第１の記憶部302は、再接続中の端末装置Bとその素端末装置Bよりも下流に接続している端末装置Bに関する情報を記憶する再接続中リストテーブル325を備えており、この再接続中リストテーブル325が、本発明における再接続中接続位置記憶手段として機能する。
【０１２３】
また、この第１の記憶部302には、接続候補紹介装置Cのコンピュータとしての基本的な機能を提供するためのOSプログラム320と、ディスプレイ309を制御するための画面制御プログラム321と、階層構造への接続要求及び再接続要求を送信してきた端末装置Bへ接続候補となる端末装置Bの接続情報を送信するための接続候補紹介プログラム322と、端末装置Bとの間で各種データの授受を行うために実行される通信プログラム323と、再接続中リストテーブル325及び後述の端末装置情報記憶領域326に記憶している情報の更新を行うために実行される記憶情報更新プログラム324等を記憶しており、これらはCPU301によって読み出され、CPU301によってこれらのプログラムに従った機能が実行される。
【０１２４】
ここで、OSプログラム320は、CPU301によって読み出されて実行されることにより、キーボード305やマウス306の入出力に関する機能や、第１の記憶部302や第２記憶部303などのメモリ管理などの接続候補紹介装置Cであるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム320がCPU301によって実行された状態で、画面制御プログラム321、接続候補紹介プログラム322、通信プログラム323、記憶情報更新プログラム324等が実行される。
【０１２５】
なお、OSプログラム320、画面制御プログラム321、接続候補紹介プログラム322、通信プログラム323、記憶情報更新プログラム324等は、例えば、インターネットに接続されたサーバ等から第１の記憶部302にダウンロードされるようにしてもよく、又CD-ROM等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、第１の記憶部302に読み込まれるようにしてもよい。
【０１２６】
（第２記憶部303について）
第２記憶部303であるハードディスク装置には、階層構造に接続している全ての端末装置Bに関するノード番号とIPアドレスを示す接続情報を記憶する端末装置情報記憶領域326を備えている。
【０１２７】
（制御部313について）
制御部313は、上述のようにCPU301と第１の記憶部302と第２記憶部303から構成され、CPU301が第２記憶部303から任意に選択した複数の端末装置Bの接続情報読み出すと共に、第１の記憶部302に記憶された再接続中リストテーブル325、各種プログラム320〜324を読み出して実行することにより、接続候補紹介装置C全体を統括制御し、かつ、上記した接続要求受信手段、再接続要求受信手段、再接続中接続位置受信手段、接続位置送信手段、再接続完了情報受信手段、接続位置記憶処理手段等として機能するものである。
【０１２８】
[接続候補紹介装置Cの制御部が行う処理]
ここで、本実施形態に係る接続候補紹介装置Cの制御部313において、CPU301が第１の記憶部302に記憶している各プログラムを読み出して行う情報処理について、図１２〜図１６を参照して説明する。なお、ここでは、接続候補紹介装置Cの制御部313を単に制御部313と称して説明する。
【０１２９】
（メイン処理）
制御部313は、電源がオンされてからオフされるまでの間、図１２に示すメイン処理を行う。
【０１３０】
すなわち、制御部313は、図１２に示すように、電源が投入されると、まず、端末装置B又は図示しない内部クロック装置からメッセージを受信したか否かの判断を行う（ステップS1）。
【０１３１】
ここで、制御部313は、メッセージを受信したと判断した場合に（ステップS1：YES）、処理をステップS2へ移し、メッセージを受信していないと判断した場合に（ステップS1：NO）、処理をステップS1へ戻す。
【０１３２】
ステップS2において制御部313は、受信したメッセージが接続要求であるか否かを判断し、階層構造へ新規に接続しようとする端末装置Bからの接続要求であると判断した場合に（ステップS2：YES）、処理をステップS6へ移して、後述する新規参加時処理を実行し、その後、処理をステップS1へ戻す。
【０１３３】
一方、制御部313は、受信したメッセージが階層構造へ新規に接続しようとする端末装置Bからの接続要求でないと判断した場合に（ステップS2：NO）、処理をステップS3へ移す。
【０１３４】
ステップS3において制御部313は、受信したメッセージが端末装置Bからの再接続要求であるか否かを判断し、再接続要求であると判断した場合に（ステップS3：YES）、処理をステップS7へ移して、後述する再接続時処理を行い、その後、処理をステップS1へ戻す。
【０１３５】
一方、制御部313は、受信したメッセージが再接続要求でないと判断した場合に（ステップS3：NO）、処理をステップS4へ移す。
【０１３６】
ステップS4において制御部313は、受信したメッセージが再接続完了情報であるか否かを判断し、再接続完了情報であると判断した場合に（ステップS4：YES）、処理をステップS8へ移して、後述する再接続完了時処理を行い、その後、処理をステップS1へ戻す。
【０１３７】
一方、制御部313は、受信したメッセージが再接続完了情報でないと判断した場合に（ステップS4：NO）、処理をステップS5へ移す。
【０１３８】
ステップS5において制御部313は、受信したメッセージが内部クロック装置からのN秒経過報告であるか否かを判断し、N秒経過報告であると判断した場合に（ステップS5：YES）、処理をステップS9へ移して、後述する再接続中リスト更新処理を行い、その後、処理をステップS1へ戻す。
【０１３９】
一方、制御部313は、受信したメッセージがN秒経過報告でないと判断した場合に（ステップS5：NO）、処理をステップS1へ戻す。
【０１４０】
（新規参加時処理）
メイン処理のステップS6における新規参加時処理を起動すると、制御部313は、図１３に示すように、新規端末装置登録処理を行う（ステップS10）。
【０１４１】
このステップS10において制御部313は、接続要求を送信してきた端末装置Bから、その端末装置Bのノード番号とIPアドレスとを受信して、第２記憶部303内部の端末装置情報記憶領域326へ記憶させる処理を行い、その後、この新規参加時処理を終了して、処理を図１２に示すメイン処理のステップS1へ戻す。
【０１４２】
（再接続時処理）
メイン処理のステップS7における再接続時処理を起動すると、制御部313は、図１４に示すように、接続位置情報登録処理を行い（ステップS11）、その後、処理をステップS12へ移す。
【０１４３】
このステップS11において制御部313は、再接続要求を送信してきた端末装置Bから、その端末装置Bのノード番号と接続位置情報を受信して、第１の記憶部302内の再接続中リストテーブル325に記憶させる処理を行う（図８（a）参照。）。
【０１４４】
ステップS12において制御部313は、接続候補・再接続中リスト送信処理を行う。この接続候補・再接続中リスト送信処理において制御部、再接続要求を送信してきた端末装置Bへ、階層構造における接続先候補として、現在階層構造に接続している端末装置Bの中から複数の端末装置Bを任意に選択して、その端末装置Bのノード番号とIPアドレスを送信すると共に、再接続用要求を送信してきた端末装置Bへ、現在再接続中であり未だ階層構造への再接続が完了していない端末装置Bに関する情報を含む再接続中リストを送信する処理を行い、その後、この再接続時処理を終了して、処理を図１２に示すメイン処理のステップS1へ戻す。
【０１４５】
（再接続完了時処理）
メイン処理のステップS8における再接続完了時処理を起動すると、制御部313は、図１５に示すように、深さ情報＋1を次回完了深度に登録すると共に、次回更新時刻を登録する処理を行い（ステップS13）、その後、処理をステップS14へ移す。
【０１４６】
このとき、制御部313は、再接続中リストテーブル325の中で、再接続完了情報を送信してきた端末装置Bに関する情報が記憶されている領域の次回完了深度の欄に、再接続完了情報を送信してきた端末装置Bの深さ情報＋1の情報を記憶させると共に、次回更新時刻の欄に再接続完了情報を受信した時刻を記憶させる（図８（b）参照。）。
【０１４７】
次に、ステップS14において制御部313は、再接続を完了した端末装置Bのノード番号・深さ情報を削除すると共に、パス情報を更新する処理を行い（図８（b）参照。）、その後、この再接続完了時処理を終了して、処理を図１２に示すメイン処理のステップS1へ戻す。
【０１４８】
パス情報の更新を行う際に、制御部313は、更新前のパス情報の各桁を一桁上げし、空白となったパス情報の一桁目に定数Yを登録する処理を行う。
【０１４９】
（再接続中リスト更新処理）
メイン処理のステップS9における再接続中リスト更新処理を起動すると、制御部313は、図１６に示すように、次回完了深度に＋1する処理を行うと共に、次回更新時刻に＋Nする処理を行い（ステップS15）、その後、処理をステップS16へ移す。
【０１５０】
このとき、制御部313は、再接続中リストテーブル325の次回完了深度の欄に登録している値に1を加算する処理を行うと共に、次回更新時刻の欄に登録している時刻にN秒加算する処理を行う。
【０１５１】
ステップS16において、制御部313は、再接続中リストテーブル325を参照して、次回完了深度の更新回数が予め設定した回数D以上となったか否かの判断を行い、D以上になったと判断した場合に（ステップS16：YES）、処理をステップS17へ移し、D以上になっていないと判断した場合に（ステップS16：NO）、この再接続中リスト更新処理を終了して、処理を図１２に示すメイン処理のステップS1へ戻す。
【０１５２】
[端末装置の制御部が行う処理]
次に、本実施形態に係る端末装置Bの制御部213が行う情報処理について図１７〜図２３を参照して説明する。なお、ここでは、端末装置Bの制御部213を単に制御部213と称して説明する。
【０１５３】
（メイン処理）
制御部213は、第１の記憶部202に記憶しているシステム参加プログラム228が起動されてから終了されるまでの間、図１７に示すメイン処理を行う。
【０１５４】
すなわち、制御部213は、システム参加プログラム228が起動されると、図１７に示すように、接続要求送信処理を行う（ステップS20）。ここで制御部213は、接続候補紹介装置Cに対して、階層構造への接続要求を送信する処理を行い、その後、処理をステップS21へ移す。
【０１５５】
ステップS21において制御部213は、後述のメッセージ受信待処理を行い、システム参加プログラム228が起動している間、このステップS21の処理を継続する。
【０１５６】
（メッセージ受信待処理）
メイン処理におけるステップS21のメッセージ受信待処理を起動すると、制御部213は、図１８に示すように、データ配信装置A、接続候補紹介装置C、他の端末装置B、自装置のいずれかからメッセージを受信したか否かを判断し（ステップS22）、受信したと判断した場合に（ステップS22：YES）、処理をステップS23へ移し、受信していないと判断した場合に（ステップS22：NO）、処理をステップS22へ戻す。
【０１５７】
ステップS23において制御部213は、受信したメッセージが自装置から送信された切断を示すメッセージであるか否かの判断を行い、切断を示すメッセージである判断した場合に（ステップS23：YES）、処理をステップS29へ移して、後述の再接続処理を行い、その後、処理をステップS22へ戻す。
【０１５８】
一方、制御部213は、受信したメッセージが切断を示すメッセージでないと判断した場合に（ステップS23：NO）、処理をステップS24へ移す。
【０１５９】
ステップS24において制御部213は、受信したメッセージが接続情報であるか否かの判断を行い、接続情報であると判断した場合に（ステップS24：YES）、処理をステップS30へ移して、後述の接続候補選択処理を行い、その後、処理をステップS22へ戻す。
【０１６０】
一方、制御部213は、受信したメッセージが接続情報でないと判断した場合に（ステップS24：NO）、処理をステップS25へ移す。
【０１６１】
ステップS25において制御部213は、受信したメッセージが接続位置情報であるか否かの判断を行い、接続位置情報であると判断した場合に（ステップS25：YES）、処理をステップS31へ移して、後述の接続先決定処理を行い、その後、処理をステップS22へ戻す。
【０１６２】
一方、制御部213は、受信したメッセージが接続位置情報でないと判断した場合に（ステップS25：NO）、処理をステップS26へ移す。
【０１６３】
ステップS26において制御部213は、受信したメッセージが接続位置情報送信要求であるか否かの判断を行い、接続位置情報送信要求であると判断した場合に（ステップS26：YES）、処理をステップS32へ移して、後述の接続位置情報送信処理を行い、その後、処理をステップS22へ戻す。
【０１６４】
一方、制御部213は、受信したメッセージが接続位置情報送信要求でないと判断した場合に（ステップS26：NO）、処理をステップS27へ移す。
【０１６５】
ステップS27において制御部213は、受信したメッセージが接続依頼であるか否かの判断を行い、接続依頼であると判断した場合に（ステップS27：YES）、処理をステップS33へ移して、後述の接続依頼処理を行い、その後、処理をステップS22へ戻す。
【０１６６】
一方、制御部213は、受信したメッセージが接続依頼でないと判断した場合に（ステップS27：NO）、処理をステップS28へ移す。
【０１６７】
ステップ28において制御部213は、受信したメッセージが接続可否情報であるか否かの判断を行い、接続可否情報であると判断した場合に（ステップS28：YES）、処理をステップS34へ移して、後述の接続処理を行い、その後、処理をステップS22へ移し、受信したメッセージが接続可否情報でないと判断した場合に（ステップS28：NO）、処理をステップS21へ戻す。
【０１６８】
（再接続処理）
メッセージ受信待処理のステップS29における再接続処理を起動すると、制御部213は、図１９に示すように、再接続要求送信処理を行う（ステップS35）。
【０１６９】
この再接続処理において、制御部213は、接続候補紹介装置Cに対して、階層構造から一旦離脱して再度階層構造へ接続する旨を示す再接続要求を送信する処理を行い、その後、この際接続処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１７０】
（接続候補選択処理）
メッセージ受信待処理のステップS30における接続候補選択処理を起動すると、制御部213は、図２０に示すように、接続情報・再接続中リスト保存処理を行う（ステップS36）。
【０１７１】
この接続候補選択処理において、制御部213は、接続候補紹介装置Cから取得した接続情報と再接続中リストを、第１の記憶部202内のトポロジー情報記憶領域226に記憶させる処理を行い、その後、処理をステップS37へ移す。
【０１７２】
ステップS37において制御部213は、接続候補があるか否かの判断を行い、接続候補があると判断した場合に（ステップS37：YES）、処理をステップS38へ移し、接続候補がないと判断した場合に（ステップS37：NO）、処理を図１９に示すステップS35へ移す。
【０１７３】
ステップS38において制御部213は、接続候補紹介装置Cから取得した接続候補の中で、再接続中リストにない端末装置Bを接続候補として選択する接続候補選択処理を行い、その後、処理をステップS39へ移す。
【０１７４】
ステップS39において制御部213は、接続情報要求処理を行う。この接続情報要求処理において制御部213は、ステップS38で選択した接続候補の端末装置Bに対して、その端末装置Bの接続情報の送信要求を送信する処理を行い、その後、この設候補選択処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１７５】
（接続先決定処理）
メッセージ受信待処理のステップS31における接続先決定処理を起動すると、制御部213は、図２１に示すように、接続位置情報を送信してきた端末装置Bが接続可能であるか否かを判断し（ステップS40）、接続可能であると判断した場合に（ステップS40：YES）、処理をステップS41へ移し、接続不可能であると判断した場合に（ステップS40：NO）、処理を図２０に示すステップS37へ移す。
【０１７６】
このとき制御部213は、接続候補として選択した端末装置Bから取得した接続位置情報と、再接続中リストとを参照して、接続候補として選択した端末装置Bが、自装置よりも下流に接続している端末装置又は、再接続中の端末装置B又は、再接続中の端末装置Bの下流に接続している端末装置Bでないと判断した場合に、接続可能であると判断する。
【０１７７】
ステップS41において制御部213は、ステップS40で接続可能と判断した端末装置Bに対して、接続依頼を送信する接続依頼送信処理を行い、その後、この接続先決定処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１７８】
（接続位置情報送信処理）
メッセージ受信待処理のステップS32における接続位置情報送信処理を起動すると、制御部213は、図２２に示すように、接続位置情報送信要求を送信してきた端末装置に対して、自装置の接続位置情報を送信する接続位置情報送信処理を行い（ステップS42）、その後、この接続位置情報送信所処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１７９】
（接続依頼処理）
メッセージ受信待処理のステップS33における接続依頼処理を起動すると、制御部213は、図２３に示すように、接続依頼を送信してきた端末装置Bとの接続が可能であるか否かの判断を行う（ステップS43）。ここで制御部213は、自装置の下流側に接続している他の端末装置Bの数が１以下である場合に接続可能であると判断し、自装置の下流側に２つの端末装置Bが接続されている場合に接続不可能と判断する。
【０１８０】
そして、このステップS43において制御部213は、接続可能であると判断した場合に（ステップS43：YES）、処理をステップS44へ移し、接続不可能であると判断した場合に（ステップS43：NO）、処理をステップS47へ移す。
【０１８１】
ステップS47において制御部213は、接続依頼を送信してきた端末装置Bに対して、接続不可能であることを示す接続不可能情報を接続可否情報として送信する接続不可能情報送信処理を行い、その後、この接続依頼処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１８２】
また、ステップS44において制御部213は、接続依頼を送信してきた端末装置Bを下流に接続する端末装置Bとして登録する下流端末装置登録処理を行い、その後、処理をステップS45へ移す。
【０１８３】
ステップS45において制御部213は、接続位置情報演算処理を行い、その後、処理をステップS46へ移す。この接続位置情報演算処理において制御部213は、自装置の接続位置情報に基づいて、ステップS44で登録した端末装置Bの接続位置情報を演算する。
【０１８４】
このとき、制御部213は、自装置の深さ情報に１加算すると共に、自装置のパス情報の各桁を１桁上げし、ステップS44で登録した端末装置Bを自装置の下流側における左右いずれ側に接続するかによって決定した1又は0をパス情報の一桁目とすることにより、ステップS44で登録した端末装置Bの新たな接続位置情報を生成する。
【０１８５】
次に、ステップS45において制御部213は、接続依頼を送信してきた端末装置Bに対して、接続可能であることを示す接続可能情報を接続可否情報として送信する接続可能情報送信処理を行い、その後、この接続依頼処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１８６】
（接続処理）
メッセージ受信待処理のステップS34における接続処理を起動すると、制御部213は、図２４に示すように、受信した接続可否情報が接続可能情報であるか否かの判断を行い（ステップS48）、接続可能情報であると判断した場合に（ステップS48：YES）、処理をステップS49へ移し、接続依頼を送信した端末装置Bと接続する接続処理を行い、その後、処理をステップS50へ移す。
【０１８７】
ステップS50において制御部213は、接続依頼を送信した端末装置Bから取得した新たな接続位置情報を第１の記憶部202のトポロジー情報記憶領域226へ記憶させる接続位置情報更新処理を行い、その後、処理をステップS51へ移す。
【０１８８】
ステップS51において制御部213は、接続候補紹介装置Cに対して、階層構造への再接続が完了したことを示す再接続完了情報を送信する再接続完了情報送信処理を行い、その後、処理をステップS52へ移す。
【０１８９】
ステップS52において制御部213は、自装置の下流側に接続している端末装置B（以下、「下流端末装置B」という。）があるか否かを判断し、下流端末装置Bがあると判断した場合に（ステップS52：YES）、処理をステップS53へ移し、下流端末装置Bがないと判断した場合に（ステップS52：NO）、この接続処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【０１９０】
ステップS53において制御部213は、下流端末装置Bの新たな接続位置情報を演算する接続位置情報演算処理を行い、その後、処理をステップS54へ移す。
【０１９１】
ステップS54において制御部213は、ステップS53の演算により算出した接続位置情報を下流端末装置Bへ送信する接続位置情報送信処理を行い、その後、この接続処理を終了して、処理をメッセージ受信待処理のステップS22へ戻す。
【図面の簡単な説明】
【０１９２】
【図１】本実施形態に係るデータ配信システムを示す説明図である。
【図２】本実施形態に係るデータ配信システムを示す説明図である。
【図３】本実施形態に係るデータ配信システムを示す説明図である。
【図４】本実施形態に係るデータ配信システムを示す説明図である。
【図５】本実施形態に係るデータ配信システムを示す説明図である。
【図６】本実施形態に係るデータ配信システムを示す説明図である。
【図７】本実施形態に係るデータ配信システムを示す説明図である。
【図８】再接続中リストテーブルを示す説明図である。
【図９】データ配信装置を示す機能ブロック図である。
【図１０】接続候補紹介装置を示す機能ブロック図である。
【図１１】端末装置を示す機能ブロック図である。
【図１２】接続候補紹介装置の制御部が行う情報処理を示す説明図である。
【図１３】接続候補紹介装置の制御部が行う情報処理を示す説明図である。
【図１４】接続候補紹介装置の制御部が行う情報処理を示す説明図である。
【図１５】接続候補紹介装置の制御部が行う情報処理を示す説明図である。
【図１６】接続候補紹介装置の制御部が行う情報処理を示す説明図である。
【図１７】端末装置の制御部が行う情報処理を示す説明図である。
【図１８】端末装置の制御部が行う情報処理を示す説明図である。
【図１９】端末装置の制御部が行う情報処理を示す説明図である。
【図２０】端末装置の制御部が行う情報処理を示す説明図である。
【図２１】端末装置の制御部が行う情報処理を示す説明図である。
【図２２】端末装置の制御部が行う情報処理を示す説明図である。
【図２３】端末装置の制御部が行う情報処理を示す説明図である。
【図２４】端末装置の制御部が行う情報処理を示す説明図である。
【図２５】従来のデータ配信システムを示す説明図である。
【図２６】従来のデータ配信システムを示す説明図である。
【図２７】従来のデータ配信システムを示す説明図である。
【符号の説明】
【０１９３】
S  データ配信システム
A  データ配信装置
B、B1〜B30  端末装置
C  接続候補紹介装置
213、313  制御部
T1  接続要求
T2  接続情報
T3  接続依頼
T4  再接続要求
T5  接続位置情報
T6  再接続中リスト
T7  再接続完了情報
【図１】
2008219431.tif 000003
【図２】
2008219431.tif 000004
【図３】
2008219431.tif 000005
【図４】
2008219431.tif 000006
【図５】
2008219431.tif 000007
【図６】
2008219431.tif 000008
【図７】
2008219431.tif 000009
【図８】
2008219431.tif 000010
【図９】
2008219431.tif 000011
【図１０】
2008219431.tif 000012
【図１１】
2008219431.tif 000013
【図１２】
2008219431.tif 000014
【図１３】
2008219431.tif 000015
【図１４】
2008219431.tif 000016
【図１５】
2008219431.tif 000017
【図１６】
2008219431.tif 000018
【図１７】
2008219431.tif 000019
【図１８】
2008219431.tif 000020
【図１９】
2008219431.tif 000021
【図２０】
2008219431.tif 000022
【図２１】
2008219431.tif 000023
【図２２】
2008219431.tif 000024
【図２３】
2008219431.tif 000025
【図２４】
2008219431.tif 000026
【図２５】
2008219431.tif 000027
【図２６】
2008219431.tif 000028
【図２７】
2008219431.tif 000029