(57)【要約】【課題】接続管理サーバへのアクセスの増大を回避させることができるコンテンツ配信システム、端末装置及びコンテンツ配信方法並びにそれに用いるプログラムを提供する。【解決手段】コンテンツ配信システムにおける端末装置は、以前に接続された端末装置をコンテンツチャンネルに対応して記憶する。また、端末装置は、コンテンツチャンネルの変更指示が行われた場合には、以前に接続されていた端末装置のうち、変更指示が行われたコンテンツチャンネルに対応する端末装置を選択し、その選択された端末装置に、変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する。そして、端末装置は、要求されたコンテンツチャンネルに対応する接続先候補を選択し、接続先候補を要求した端末装置へ通知する。そして、端末装置は、通知された接続先候補を受信し、接続する。【選択図】図３
2008219430.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、を備えたコンテンツデータ配信システムにおいて、
前記端末装置は、
前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、
前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、
コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、
前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、
前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する接続先候補要求手段と、
前記接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する接続先候補選択手段と、
前記接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する接続先候補通知手段と、
前記接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、を有し、
前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とするコンテンツデータ配信システム。
【請求項２】
ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、前記コンテンツ配信装置及び前記複数の端末装置の前記ネットワーク上における接続状態を管理する接続管理装置と、を備えたコンテンツデータ配信システムにおいて、
前記接続管理装置は、
前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続された前記複数の端末装置の接続状態情報を記憶する接続状態情報記憶手段と、
前記接続状態情報記憶手段によって記憶された前記接続状態情報に基づいて、前記コンテンツ配信装置を頂点として、複数の端末装置が前記ネットワーク上において階層構造で多層に接続されるように接続先候補を選択する第一接続先候補選択手段と、
前記第一接続先候補選択手段によって選択された接続先候補を端末装置へ通知する第一接続先候補通知手段と、を有し、
前記端末装置は、
前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、
前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、
コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、
前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、
前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する第二接続先候補要求手段と、
前記第二接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する第二接続先候補選択手段と、
前記第二接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する第二接続先候補通知手段と、
前記第二接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、
前記接続先候補受信手段によって前記接続先候補紹介端末装置から接続先候補が受信されなかった場合には、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を前記接続管理装置に要求する第一接続先候補要求手段と、を有し、
前記接続先候補受信手段は、前記第一接続先候補通知手段によって通知された所定のコンテンツチャンネルに対応する接続先候補を受信する機能を有し、
前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とするコンテンツデータ配信システム。
【請求項３】
ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、を備えたコンテンツデータ配信システムにおける前記端末装置において、
前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、
前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、
コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、
前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、
前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する接続先候補要求手段と、
前記接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する接続先候補選択手段と、
前記接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する接続先候補通知手段と、
前記接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、を有し、
前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とする端末装置。
【請求項４】
ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、前記コンテンツ配信装置及び前記複数の端末装置の前記ネットワーク上における接続状態を管理する接続管理装置と、を備えたコンテンツデータ配信システムにおける前記端末装置において、
前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、
前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、
コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、
前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、
前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する第二接続先候補要求手段と、
前記第二接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する第二接続先候補選択手段と、
前記第二接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する第二接続先候補通知手段と、
前記第二接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、
前記接続先候補受信手段によって前記接続先候補紹介端末装置から接続先候補が受信されなかった場合には、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を前記接続管理装置に要求する第一接続先候補要求手段と、を有し、
前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とする端末装置。
【請求項５】
前記接続端末装置記憶手段に記憶された端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定する端末装置記憶判定手段と、
前記端末装置記憶判定手段によって前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、上層又は下層に接続されている他の端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを行う端末装置問合手段と、
前記端末装置問合手段によって問合せが行われた前記コンテンツチャンネルに対応する端末装置を受信する端末装置受信手段と、を有し、
前記接続先候補紹介端末装置選択手段は、前記端末装置判定手段によって前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていると判定された場合には、当該端末装置を前記接続先候補紹介端末装置として選択し、前記端末装置判定手段によって前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、前記端末装置受信手段によって受信され、他の端末装置における前記接続端末装置記憶手段によって記憶された前記変更指示が行われたコンテンツチャンネルに対応する端末装置を前記接続先候補紹介端末装置として選択する機能を有することを特徴とする請求項４に記載の端末装置。
【請求項６】
所定のコンテンツチャンネルに対応する端末装置の問合せを他の端末装置から受信する端末装置問合受信手段を有し、
前記端末装置記憶判定手段は、前記端末装置問合受信手段によって問合せを受信した場合には、前記接続端末装置記憶手段に記憶された端末装置のうち、所定のコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定する機能を有し、
前記端末装置問合受信手段によって問合せを受信した場合において、前記端末装置記憶判定手段によって所定のコンテンツチャンネルに対応する端末装置が記憶されていると判定されたときには、端末装置の問合せを行った端末装置に通知する端末装置通知手段を有し、
前記端末装置問合手段は、前記端末装置問合受信手段によって問合せを受信した場合において、前記端末装置記憶判定手段によって所定のコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、上層又は下層に接続されている他の端末装置に、所定のコンテンツチャンネルに対応する端末装置の問合せを行う機能を有することを特徴とする請求項５に記載の端末装置。
【請求項７】
前記端末装置問合手段によって問合せを行った階層数を計数する問合階層数計数手段と、
前記階層数計数手段によって計数された問合せの階層数が所定数以上となったか否かを判定する問合階層数判定手段と、を有し、
前記端末装置問合手段は、前記端末装置問合受信手段によって問合せを受信した場合において、前記端末装置記憶判定手段によって所定のコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、前記問合階層数判定手段によって計数された問合せの階層数が所定数以上となっていないと判定されたことを条件に、上層又は下層に接続されている他の端末装置に、所定のコンテンツチャンネルに対応する端末装置の問合せを行い、前記問合階層数判定手段によって計数された問合せの階層数が所定数以上となったと判定されたことを条件に、他の端末装置に対する問合せを禁止する制御を行う機能を有することを特徴とする請求項６に記載の端末装置。
【請求項８】
前記接続先候補紹介端末装置選択手段は、前記変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、ランダムに、複数の端末装置のいずれかを前記接続先候補紹介端末装置として選択する機能を有することを特徴とする請求項４から６のいずれかに記載の端末装置。
【請求項９】
前記接続端末装置記憶手段は、前記接続手段によって以前に接続されていた端末装置、当該端末装置のコンテンツチャンネルに対応して、前記接続手段によって以前に接続されていた接続時間を記憶する機能を有し、
前記接続先候補紹介端末装置選択手段は、前記変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置から、前記接続端末装置記憶手段によって記憶されていた接続時間が最も新しい時間である端末装置を前記接続先候補紹介端末装置として選択する機能を有することを特徴とする請求項４から６のいずれかに記載の端末装置。
【請求項１０】
前記接続先候補紹介端末装置選択手段は、前記端末装置受信手段によって最初に受信された端末装置を前記接続先候補紹介端末装置として選択する機能を有することを特徴とする請求項４から６に記載の端末装置。
【請求項１１】
前記第二接続先候補要求手段によって接続先候補を要求された場合には、当該接続先候補を要求された端末装置が、当該要求におけるコンテンツチャンネルに対応する端末装置であるか否かを判定するコンテンツチャンネル接続判定手段を有することを特徴とする請求項４から１０のいずれかに記載の端末装置。
【請求項１２】
前記第二接続先候補要求手段によって接続先候補を要求された場合において、前記コンテンツチャンネル接続判定手段によって、当該接続先候補を要求された端末装置が、当該要求におけるコンテンツチャンネルに対応する端末装置であると判定されたときには、当該接続先候補を要求された端末装置に接続可能であるか否かを判定する接続判定手段を有し、
前記第二接続先候補選択手段は、前記接続判定手段によって接続が可能であると判定された場合には、当該要求された端末装置を接続先候補として選択する機能を有することを特徴とする請求項１１に記載の端末装置。
【請求項１３】
前記接続判定手段によって接続が可能ではないと判定された場合には、接続が可能である端末装置の問合せを上層又は下層の端末装置に行う接続可能端末装置問合手段を有し、
前記第二接続先候補選択手段は、前記接続可能端末装置問合手段によって問合せが行われた接続が可能である端末装置を接続先候補として選択する機能を有することを特徴とする請求項１２に記載の端末装置。
【請求項１４】
コンピュータを、請求項３から１３のいずれかに記載の端末装置における各手段として機能させるためのプログラム。
【請求項１５】
ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、を備えたコンテンツデータ配信システムにおいて、
前記端末装置が、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続ステップと、
前記端末装置が、前記接続ステップによって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶ステップと、
前記端末装置が、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定ステップと、
前記端末装置が、前記コンテンツチャンネル変更判定ステップによってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続ステップによって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶ステップによって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択ステップと、
前記端末装置が、前記端末装置選択ステップによって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する接続先候補要求ステップと、
前記端末装置が、前記接続先候補要求ステップによって要求された前記コンテンツチャンネルに対応する接続先候補を選択する接続先候補選択ステップと、
前記端末装置が、前記接続先候補選択ステップによって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する接続先候補通知ステップと、
前記端末装置が、前記接続先候補通知ステップによって通知された接続先候補を受信する接続先候補受信ステップと、
前記接続ステップは、前記接続先候補受信ステップによって受信された接続先候補に接続するステップと、を有することを特徴とするコンテンツデータ配信システムにおけるコンテンツ配信方法。
【請求項１６】
ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、前記コンテンツ配信装置及び前記複数の端末装置の前記ネットワーク上における接続状態を管理する接続管理装置と、を備えたコンテンツデータ配信システムにおいて、
前記接続管理装置が、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続された前記複数の端末装置の接続状態情報を記憶する接続状態情報記憶ステップと、
前記接続管理装置が、前記接続状態情報記憶ステップによって記憶された前記接続状態情報に基づいて、前記コンテンツ配信装置を頂点として、複数の端末装置が前記ネットワーク上において階層構造で多層に接続されるように接続先候補を選択する第一接続先候補選択ステップと、
前記接続管理装置が、前記第一接続先候補選択ステップによって選択された接続先候補を端末装置へ通知する第一接続先候補通知ステップと、
前記端末装置が、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続ステップと、
前記端末装置が、前記接続ステップによって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶ステップと、
前記端末装置が、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定ステップと、
前記端末装置が、前記コンテンツチャンネル変更判定ステップによってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続ステップによって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶ステップによって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択ステップと、
前記端末装置が、前記接続先候補紹介端末装置選択ステップによって選択された前記変更指示が行われたコンテンツチャンネルに対応する接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する第二接続先候補要求ステップと、
前記端末装置が、前記第二接続先候補要求ステップによって要求された前記コンテンツチャンネルに対応する接続先候補を選択する第二接続先候補選択ステップと、
前記端末装置が、前記第二接続先候補選択ステップによって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する第二接続先候補通知ステップと、
前記端末装置が、前記第二接続先候補通知ステップによって通知された接続先候補を受信する接続先候補受信ステップと、
前記端末装置が、前記接続先候補受信ステップによって前記接続先候補紹介端末装置から接続先候補が受信されなかった場合には、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を前記接続管理装置に要求する第一接続先候補要求ステップと、
前記接続先候補受信ステップは、前記第一接続先候補通知ステップによって通知された所定のコンテンツチャンネルに対応する接続先候補を受信するステップと、
前記接続ステップは、前記接続先候補受信ステップによって受信された接続先候補に接続するステップと、を有することを特徴とするコンテンツデータ配信システムにおけるコンテンツ配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ配信システム、端末装置及びコンテンツ配信方法並びにそれに用いるプログラムに関するものであり、特に、コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、ネットワーク上において階層構造で多層に接続し、コンテンツデータを配信するコンテンツ配信システム、端末装置及びコンテンツ配信方法並びにそれに用いるプログラムに関する。
【背景技術】
【０００２】
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などコンテンツデータ（以下、「コンテンツ」ともいう。）のストリーミング配信を行うコンテンツ配信サービスが開始され始めている。
【０００３】
このようなコンテンツ配信サービスは、配信サーバを頂点として、コンテンツチャンネル毎に階層構造で多層に複数のクライアント端末装置が接続された状態において、コンテンツの配信を行うものがある。また、このようなコンテンツ配信サービスにおいては、接続管理サーバが配設されており、配信サーバやクライアント端末装置の接続状態を管理する。具体的には、例えば、特許文献１に示すように、ユーザの操作に応じた場合や接続が切断された場合など、コンテンツチャンネルを変更させる場合において、端末装置から接続管理サーバに対して接続先候補を要求し、接続管理サーバが接続先候補を選択し、通知することによって、要求した端末装置において、接続可能な配信サーバや他の端末装置が認識できるようになる。
【特許文献１】特開２００６−３３５１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したコンテンツ配信システムにおいては、端末装置の増加などの要因に伴い、端末装置と接続管理サーバとの間におけるアクセスが増大するおそれがあり、接続管理サーバへの負荷やトラフィックの増大を回避することが望まれている。
【０００５】
そこで、本発明は、接続管理サーバへのアクセスの増大を回避させることができるコンテンツ配信システム、端末装置及びコンテンツ配信方法並びにそれに用いるプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、を備えたコンテンツデータ配信システムにおいて、前記端末装置は、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する接続先候補要求手段と、前記接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する接続先候補選択手段と、前記接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する接続先候補通知手段と、前記接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、を有し、前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とするものである。
【０００７】
また、請求項２に記載の発明は、ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、前記コンテンツ配信装置及び前記複数の端末装置の前記ネットワーク上における接続状態を管理する接続管理装置と、を備えたコンテンツデータ配信システムにおいて、前記接続管理装置は、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続された前記複数の端末装置の接続状態情報を記憶する接続状態情報記憶手段と、前記接続状態情報記憶手段によって記憶された前記接続状態情報に基づいて、前記コンテンツ配信装置を頂点として、複数の端末装置が前記ネットワーク上において階層構造で多層に接続されるように接続先候補を選択する第一接続先候補選択手段と、前記第一接続先候補選択手段によって選択された接続先候補を端末装置へ通知する第一接続先候補通知手段と、を有し、前記端末装置は、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する第二接続先候補要求手段と、前記第二接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する第二接続先候補選択手段と、前記第二接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する第二接続先候補通知手段と、前記第二接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、前記接続先候補受信手段によって前記接続先候補紹介端末装置から接続先候補が受信されなかった場合には、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を前記接続管理装置に要求する第一接続先候補要求手段と、を有し、前記接続先候補受信手段は、前記第一接続先候補通知手段によって通知された所定のコンテンツチャンネルに対応する接続先候補を受信する機能を有し、前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とするものである。
【０００８】
また、請求項３に記載の発明は、ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、を備えたコンテンツデータ配信システムにおける前記端末装置において、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する接続先候補要求手段と、前記接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する接続先候補選択手段と、前記接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する接続先候補通知手段と、前記接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、を有し、前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とするものである。
【０００９】
また、請求項４に記載の発明は、ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、前記コンテンツ配信装置及び前記複数の端末装置の前記ネットワーク上における接続状態を管理する接続管理装置と、を備えたコンテンツデータ配信システムにおける前記端末装置において、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続手段と、前記接続手段によって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶手段と、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定手段と、前記コンテンツチャンネル変更判定手段によってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記接続手段によって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶手段によって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択手段と、前記接続先候補紹介端末装置選択手段によって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する第二接続先候補要求手段と、前記第二接続先候補要求手段によって要求された前記コンテンツチャンネルに対応する接続先候補を選択する第二接続先候補選択手段と、前記第二接続先候補選択手段によって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する第二接続先候補通知手段と、前記第二接続先候補通知手段によって通知された接続先候補を受信する接続先候補受信手段と、前記接続先候補受信手段によって前記接続先候補紹介端末装置から接続先候補が受信されなかった場合には、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を前記接続管理装置に要求する第一接続先候補要求手段と、を有し、前記接続手段は、前記接続先候補受信手段によって受信された接続先候補に接続する機能を有することを特徴とするものである。
【００１０】
また、請求項５に記載の発明は、請求項４に記載の発明において、前記接続端末装置記憶手段に記憶された端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定する端末装置記憶判定手段と、前記端末装置記憶判定手段によって前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、上層又は下層に接続されている他の端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを行う端末装置問合手段と、前記端末装置問合手段によって問合せが行われた前記コンテンツチャンネルに対応する端末装置を受信する端末装置受信手段と、を有し、前記接続先候補紹介端末装置選択手段は、前記端末装置判定手段によって前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていると判定された場合には、当該端末装置を前記接続先候補紹介端末装置として選択し、前記端末装置判定手段によって前記変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、前記端末装置受信手段によって受信され、他の端末装置における前記接続端末装置記憶手段によって記憶された前記変更指示が行われたコンテンツチャンネルに対応する端末装置を前記接続先候補紹介端末装置として選択する機能を有することを特徴とするものである。
【００１１】
また、請求項６に記載の発明は、請求項５に記載の発明において、所定のコンテンツチャンネルに対応する端末装置の問合せを他の端末装置から受信する端末装置問合受信手段を有し、前記端末装置記憶判定手段は、前記端末装置問合受信手段によって問合せを受信した場合には、前記接続端末装置記憶手段に記憶された端末装置のうち、所定のコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定する機能を有し、前記端末装置問合受信手段によって問合せを受信した場合において、前記端末装置記憶判定手段によって所定のコンテンツチャンネルに対応する端末装置が記憶されていると判定されたときには、端末装置の問合せを行った端末装置に通知する端末装置通知手段を有し、前記端末装置問合手段は、前記端末装置問合受信手段によって問合せを受信した場合において、前記端末装置記憶判定手段によって所定のコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、上層又は下層に接続されている他の端末装置に、所定のコンテンツチャンネルに対応する端末装置の問合せを行う機能を有することを特徴とするものである。
【００１２】
また、請求項７に記載の発明は、請求項６に記載の発明において、前記端末装置問合手段によって問合せを行った階層数を計数する問合階層数計数手段と、前記階層数計数手段によって計数された問合せの階層数が所定数以上となったか否かを判定する問合階層数判定手段と、を有し、前記端末装置問合手段は、前記端末装置問合受信手段によって問合せを受信した場合において、前記端末装置記憶判定手段によって所定のコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、前記問合階層数判定手段によって計数された問合せの階層数が所定数以上となっていないと判定されたことを条件に、上層又は下層に接続されている他の端末装置に、所定のコンテンツチャンネルに対応する端末装置の問合せを行い、前記問合階層数判定手段によって計数された問合せの階層数が所定数以上となったと判定されたことを条件に、他の端末装置に対する問合せを禁止する制御を行う機能を有することを特徴とするものである。
【００１３】
また、請求項８に記載の発明は、請求項４から７のいずれかに記載の発明において、前記接続先候補紹介端末装置選択手段は、前記変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、ランダムに、複数の端末装置のいずれかを前記接続先候補紹介端末装置として選択する機能を有することを特徴とするものである。
【００１４】
また、請求項９に記載の発明は、請求項４から７のいずれかに記載の発明において、前記接続端末装置記憶手段は、前記接続手段によって以前に接続されていた端末装置、当該端末装置のコンテンツチャンネルに対応して、前記接続手段によって以前に接続されていた接続時間を記憶する機能を有し、前記接続先候補紹介端末装置選択手段は、前記変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置から、前記接続端末装置記憶手段によって記憶されていた接続時間が最も新しい時間である端末装置を前記接続先候補紹介端末装置として選択する機能を有することを特徴とするものである。
【００１５】
また、請求項１０に記載の発明は、請求項４から７のいずれかに記載の発明において、前記接続先候補紹介端末装置選択手段は、前記端末装置受信手段によって最初に受信された端末装置を前記接続先候補紹介端末装置として選択する機能を有することを特徴とするものである。
【００１６】
また、請求項１１に記載の発明は、請求項４から１０のいずれかに記載の発明において、前記第二接続先候補要求手段によって接続先候補を要求された場合には、当該接続先候補を要求された端末装置が、当該要求におけるコンテンツチャンネルに対応する端末装置であるか否かを判定するコンテンツチャンネル接続判定手段を有することを特徴とするものである。
【００１７】
また、請求項１２に記載の発明は、請求項１１に記載の発明において、前記第二接続先候補要求手段によって接続先候補を要求された場合において、前記コンテンツチャンネル接続判定手段によって、当該接続先候補を要求された端末装置が、当該要求におけるコンテンツチャンネルに対応する端末装置であると判定されたときには、当該接続先候補を要求された端末装置に接続可能であるか否かを判定する接続判定手段を有し、前記第二接続先候補選択手段は、前記接続判定手段によって接続が可能であると判定された場合には、当該要求された端末装置を接続先候補として選択する機能を有することを特徴とするものである。
【００１８】
また、請求項１３に記載の発明は、請求項１２に記載の発明において、前記接続判定手段によって接続が可能ではないと判定された場合には、接続が可能である端末装置の問合せを上層又は下層の端末装置に行う接続可能端末装置問合手段を有し、前記第二接続先候補選択手段は、前記接続可能端末装置問合手段によって問合せが行われた接続が可能である端末装置を接続先候補として選択する機能を有することを特徴とするものである。
【００１９】
また、請求項１４に記載の発明は、コンピュータを、請求項３から１３のいずれかに記載の端末装置における各手段として機能させるためのプログラムである。
【００２０】
また、請求項１５に記載の発明は、ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続して前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、を備えたコンテンツデータ配信システムにおいて、前記端末装置が、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続ステップと、前記端末装置が、前記接続ステップによって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶ステップと、前記端末装置が、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定ステップと、前記コンテンツチャンネル変更判定ステップによってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記端末装置が、前記接続ステップによって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶ステップによって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択ステップと、前記端末装置が、前記端末装置選択ステップによって選択された接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する接続先候補要求ステップと、前記端末装置が、前記接続先候補要求ステップによって要求された前記コンテンツチャンネルに対応する接続先候補を選択する接続先候補選択ステップと、前記端末装置が、前記接続先候補選択ステップによって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する接続先候補通知ステップと、前記端末装置が、前記接続先候補通知ステップによって通知された接続先候補を受信する接続先候補受信ステップと、前記接続ステップは、前記接続先候補受信ステップによって受信された接続先候補に接続するステップと、を有することを特徴とするものである。
【００２１】
また、請求項１６に記載の発明は、ネットワークを介してコンテンツデータを配信するコンテンツ配信装置と、前記ネットワークを介して前記コンテンツデータを受信及び再生する複数の端末装置と、前記コンテンツ配信装置及び前記複数の端末装置の前記ネットワーク上における接続状態を管理する接続管理装置と、を備えたコンテンツデータ配信システムにおいて、前記接続管理装置が、前記コンテンツ配信装置を頂点として、複数のコンテンツチャンネル毎に、前記ネットワーク上において階層構造で多層に接続された前記複数の端末装置の接続状態情報を記憶する接続状態情報記憶ステップと、前記接続管理装置が、前記接続状態情報記憶ステップによって記憶された前記接続状態情報に基づいて、前記コンテンツ配信装置を頂点として、複数の端末装置が前記ネットワーク上において階層構造で多層に接続されるように接続先候補を選択する第一接続先候補選択ステップと、前記接続管理装置が、前記第一接続先候補選択ステップによって選択された接続先候補を端末装置へ通知する第一接続先候補通知ステップと、前記端末装置が、前記ネットワークを介して前記コンテンツ配信装置又は他の端末装置に接続する接続ステップと、前記端末装置が、前記接続ステップによって以前に接続された端末装置をコンテンツチャンネルに対応して記憶する接続端末装置記憶ステップと、前記端末装置が、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定するコンテンツチャンネル変更判定ステップと、前記コンテンツチャンネル変更判定ステップによってコンテンツチャンネルの変更指示が行われたと判定された場合には、前記端末装置が、前記接続ステップによって接続されている他の端末装置、又は、前記端末装置自体において前記接続端末装置記憶ステップによって記憶された以前に接続されていた端末装置のうち、前記変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する接続先候補紹介端末装置選択ステップと、前記端末装置が、前記接続先候補紹介端末装置選択ステップによって選択された前記変更指示が行われたコンテンツチャンネルに対応する接続先候補紹介端末装置に、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する第二接続先候補要求ステップと、前記端末装置が、前記第二接続先候補要求ステップによって要求された前記コンテンツチャンネルに対応する接続先候補を選択する第二接続先候補選択ステップと、前記端末装置が、前記第二接続先候補選択ステップによって選択された接続先候補を、前記接続先候補を要求した前記端末装置へ通知する第二接続先候補通知ステップと、前記端末装置が、前記第二接続先候補通知ステップによって通知された接続先候補を受信する接続先候補受信ステップと、前記端末装置が、前記接続先候補受信ステップによって前記接続先候補紹介端末装置から接続先候補が受信されなかった場合には、前記変更指示が行われたコンテンツチャンネルに対応する接続先候補を前記接続管理装置に要求する第一接続先候補要求ステップと、前記接続先候補受信ステップは、前記第一接続先候補通知ステップによって通知された所定のコンテンツチャンネルに対応する接続先候補を受信するステップと、前記接続ステップは、前記接続先候補受信ステップによって受信された接続先候補に接続するステップと、を有することを特徴とするものである。
【発明の効果】
【００２２】
請求項１から４、１４から１６のいずれかの発明によれば、端末装置は、以前に接続された端末装置をコンテンツチャンネルに対応して記憶し、接続されている他の端末装置、又は、端末装置自体において記憶された以前に接続されていた端末装置のうち、変更指示が行われたコンテンツチャンネルに対応する端末装置を接続先候補紹介端末装置として選択し、その接続先候補紹介端末装置に接続先候補を要求する。また、要求されたコンテンツチャンネルに対応する接続先候補を選択し、接続先候補を要求した端末装置へ通知する。そして、通知された接続先候補を受信し、接続する。従って、以前に接続された端末装置とコンテンツチャンネルとが対応して記憶されており、変更指示が行われたコンテンツチャンネルに対応する端末装置に接続先候補を要求することによって、コンテンツチャンネルの変更に伴う端末装置と接続管理装置との間におけるアクセスの増大を回避することができる。
【００２３】
また、請求項５の発明によれば、コンテンツチャンネルの変更指示が行われた端末装置自体に、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていると判定された場合には、そのコンテンツチャンネルに対応する端末装置を接続先候補紹介端末装置として選択し、変更指示が行われた端末装置自体に変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、上層又は下層に接続されている他の端末装置に、変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを行い、そのコンテンツチャンネルに対応する端末装置を受信し、接続先候補紹介端末装置として選択する。従って、コンテンツデータの変更指示が行われた端末装置自体に変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されている場合には、他の端末装置との間における不要な問合せを行うことなく、接続先候補紹介端末装置として選択することができ、他の端末装置との間におけるアクセスの増大を回避することができる。
【００２４】
また、請求項６の発明によれば、所定のコンテンツチャンネルに対応する端末装置の問合せを他の端末装置から受信した場合において、所定のコンテンツチャンネルに対応する端末装置が記憶されていると判定されたときには、端末装置の問合せを行った端末装置に通知し、所定のコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、上層又は下層に接続されている他の端末装置に、所定のコンテンツチャンネルに対応する端末装置の問合せを行う。従って、所定のコンテンツチャンネルに対応する端末装置の問合せを受けた端末装置自体に所定のコンテンツチャンネルに対応する端末装置が記憶されている場合には、他の端末装置との間における不要な問合せを行うことなく、接続先候補紹介端末装置を通知することができ、他の端末装置との間におけるアクセスの増大を回避することができる。
【００２５】
また、請求項７の発明によれば、所定のコンテンツチャンネルに対応する端末装置の問合せを受信した場合において、その所定のコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、その問合せを行った階層数を計数し、その計数された問合せの階層数が所定数以上となっていないと判定されたことを条件に、上層又は下層に接続されている他の端末装置に問合せを行い、計数された問合せの階層数が所定数以上となったと判定されたことを条件に、他の端末装置に対する問合せを禁止する制御を行う。従って、所定のコンテンツチャンネルに対応する端末装置が記憶されていない場合であっても、問合せの階層数が所定数以上となることがなく、過剰な問合せの増大を回避することができる。
【００２６】
また、請求項８の発明によれば、変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、ランダムに複数の端末装置のいずれかを接続先候補紹介端末装置として選択する。従って、複数の端末装置がある場合であっても、それら複数の端末装置からランダムにいずれかを選択することができる。
【００２７】
また、請求項９の発明によれば、変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置から、以前に接続されていた接続時間が最も新しい時間である端末装置を接続先候補紹介端末装置として選択する。従って、複数の端末装置のうち、以前に接続されていた接続時間が最も新しい時間である端末装置を優先して接続先候補紹介端末装置として選択することができ、その端末装置が、変更指示が行われたコンテンツチャンネルに接続されているなど、接続先候補を紹介することに適した接続先候補紹介端末装置である可能性を高めることができる。
【００２８】
また、請求項１０の発明によれば、最初に受信された端末装置を接続先候補紹介端末装置として選択する。従って、より迅速に接続先候補紹介端末装置として選択することができる。
【００２９】
また、請求項１１の発明によれば、コンテンツチャンネルの変更指示が行われた端末装置から接続先候補を要求された場合には、その要求された接続先候補端末装置が、その要求におけるコンテンツチャンネルに対応する端末装置であるか否かを判定する。従って、接続先候補端末装置が要求されたコンテンツチャンネルに対応する階層構造に接続されているか否かを判定することができ、コンテンツチャンネルに対応する接続先候補を紹介する可能性を判定することができる。
【００３０】
また、請求項１２の発明によれば、接続先候補を要求された場合において、その接続先候補を要求された接続先候補紹介端末装置自体が、コンテンツチャンネルに対応する端末装置であると判定されたときには、その接続先候補を要求された端末装置に接続可能であるか否かを判定し、接続が可能であると判定された場合には、要求された接続先候補紹介端末装置自体を接続先候補として選択する。従って、接続先候補端末装置がコンテンツチャンネルに対応する階層構造に接続されており、接続先候補端末装置自体に接続が可能である場合には、その接続先候補を迅速にかつ確実に紹介することができる。
【００３１】
また、請求項１３の発明によれば、接続が可能ではないと判定された場合には、接続が可能である端末装置の問合せを上層又は下層の端末装置に行い、問合せの結果、接続が可能である端末装置を接続先候補として選択する。従って、接続先候補端末装置がコンテンツチャンネルに対応する階層構造に接続されているが、接続先候補端末装置自体に接続が可能ではない場合には、上層又は下層の端末装置に問合せを行い、その問合せの結果、その接続先候補を確実に紹介することができる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明の最良の実施形態を図面に基づいて説明する。
【００３３】
［１．コンテンツ配信システムの構成等］
まず、図１から図３を参照して、コンテンツ配信システムＳの概要構成等について説明する。
【００３４】
図１は、本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。図１に示すように、本実施形態に係るコンテンツ配信システムＳは、インターネット９などのネットワークを介して、音楽、映画、トーク番組などコンテンツデータ（以下、「コンテンツ」ともいう。）の配信を行うコンテンツ配信サービスを行うシステムである。
【００３５】
このコンテンツ配信システムＳは、インターネット９等のネットワークを介してコンテンツデータを配信するコンテンツ配信装置１と、インターネット９等のネットワークを介してコンテンツデータの受信及び再生を行う複数の端末装置２と、コンテンツ配信装置１及び複数の端末装置２など各種装置のコンテンツ配信システムＳ上における接続状態を管理する接続管理装置３と、を含む構成である。
【００３６】
尚、本実施形態において、コンテンツ配信システムＳは、コンテンツ配信装置１を含むシステムであり、このコンテンツ配信装置１は、コンテンツデータをストリーミング配信することとなる。また、コンテンツ配信システムＳに、複数体のコンテンツ配信装置１が配置されているが、これに限らず、一体の装置としてコンテンツ配信装置１が配置されていてもよい。尚、便宜上、複数の端末装置の全てを符号２で表す場合がある。
【００３７】
コンテンツ配信装置１、端末装置２、接続管理装置３には、各々ＩＰアドレスが割り当てられており、これら装置は、ネットワークの一例としてのインターネット９にルータ１０等を介して接続されている。すなわち、目的の接続先端末装置のＩＰアドレスを宛先ＩＰアドレス、自装置のＩＰアドレスを送信元ＩＰアドレスとしたヘッダを含むパケットを送信することによって通信接続が可能となっている。
【００３８】
尚、本実施形態においては、コンテンツ配信装置１、接続管理装置３などを別体の装置として構成したが、これに限らず、例えば、接続管理装置３などをコンテンツ配信装置１の内部に有することとしてもよい。この場合には接続管理装置３にはＩＰアドレスは割り当てなくてもよく、コンテンツ配信装置１のＩＰアドレスと共用するようにしてもよい。また、例えば、コンテンツ配信装置１、接続管理装置３以外にも、別の機能を有する装置を含む構成であってもよい。
【００３９】
このコンテンツ配信システムＳは、図２（Ａ）に示すように、コンテンツ配信装置１を頂点として、複数のコンテンツチャンネル（例えば、コンテンツチャンネル１、コンテンツチャンネル２など）毎に階層構造で多層に接続される複数の端末装置２が接続を可能とするシステムである。また、詳しくは図３を用いて後述するが、このコンテンツ配信システムＳは、複数の端末装置２の間において、コンテンツチャンネルの変更が行われるときに接続先の紹介が可能なシステムであり、接続管理装置３との間におけるアクセスの増大を回避することができるシステムである。
【００４０】
接続管理装置３は、図２（Ｂ）に示すように、コンテンツ配信システムＳに参加していない端末装置２などから接続先紹介要求を受信すると、コンテンツ配信システムＳにおける接続状態等に基づいて、その端末装置２がストリーミング配信を受けるための上層に接続する接続先候補（コンテンツ配信装置１など）を選択する。そして、このように選択した接続先候補の所在情報（接続先候補のＩＰアドレスやポート番号など）及び通信プロトコル等を通知する。
【００４１】
尚、コンテンツ配信システムＳにおいて、すでに通信プロトコルやポート番号が固定されているときには、端末装置２へのポート番号及び通信プロトコルは通知しなくてもよい。ここで、通信プロトコルとして、ＭＭＳ（Ｍｉｃｒｏｓｏｆｔ  Ｍｅｄｉａ  Ｓｅｒｖｅｒ）プロトコル、ＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）等が用いられる。また、コンテンツデータの形式として、ＡＳＦ（Ａｄｖａｎｃｅｄ  Ｓｔｒｅａｍｉｎｇ  Ｆｏｒｍａｔ）、ＷＭＡ（Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ  Ａｕｄｉｏ）、ＷＭＶ（Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ  Ｖｉｄｅｏ）等が用いられる。
【００４２】
端末装置２は、接続管理装置３から接続先候補の所在情報を受信すると、そのＩＰアドレスの接続先候補に対して、コンテンツ配信システムＳへの参加（接続）を要求し、これにより端末装置２がコンテンツ配信システムＳに組み込まれる。すなわち、端末装置２はコンテンツ配信装置１から配信されるコンテンツデータを受信可能となる。
【００４３】
また、端末装置２は、既にコンテンツ配信システムＳに参加している場合において、コンテンツチャンネルを変更するときには、接続管理装置３よりも前に、他の端末装置２に対して接続先候補を紹介する接続先紹介要求を行うこととなる。端末装置２は、以前に接続されていた端末装置をその参加したコンテンツチャンネル毎に記憶しており、変更指示されたコンテンツチャンネルに今でも参加しているかもしれない端末装置に対して、接続先紹介要求を行い、接続先候補を取得することが可能となる。尚、端末装置２は、変更指示したコンテンツチャンネルに以前に参加した端末装置が探索できなかった場合や、接続先紹介要求を行ったが接続先候補が送信されてこなかった場合など、接続先候補を取得できなかった場合には、上述した場合と同じように、接続管理装置３に対して接続先紹介要求を行うこととなる。
【００４４】
このコンテンツ配信システムＳは、このように端末装置２が参加することによって、コンテンツ配信装置１を頂点として複数の端末装置２が接続される。そして、コンテンツ配信装置１から配信されるコンテンツデータは、複数の端末装置２にストリーミング配信される。
【００４５】
このように端末装置２へ配信されるコンテンツデータには、音楽や映画などコンテンツのデータのほか、再生時刻の情報（以下、「再生時刻データ」という。）が含まれている。そして、コンテンツデータを受信した複数の端末装置２は、順次送信されるコンテンツデータの再生を再生時刻データに基づいて行うことが可能である。
【００４６】
このようにして、コンテンツ配信システムＳは、コンテンツ配信装置１から送信されたコンテンツデータが複数の端末装置２にストリーミング配信され、複数の端末装置２において同時刻にコンテンツを再生することができる。すなわち、Ｐ２Ｐを用いて複数の端末装置２への放送形式のストリーミング配信を実現している。
【００４７】
端末装置２の間における接続先候補の紹介ついて具体的な一例を挙げると、図３に示すように、コンテンツチャンネル１に参加している端末装置２ａにおいて、コンテンツチャンネル１からコンテンツチャンネル２への変更指示が行われた場合には、端末装置２ａ自体が以前にコンテンツチャンネル２に参加していたか否かが判定され、コンテンツチャンネル２に参加していた場合には、その参加時において上層及び下層に接続されていた端末装置のなかからいずれかに対して、接続先候補の紹介が要求されることとなる。また、この端末装置２ａにおいて、コンテンツチャンネル２に参加していなかった場合には、今現在参加しているコンテンツチャンネル１において上層に接続されている端末装置２ｂや、下層に接続されている端末装置２ｃに対して、接続先候補を紹介させる端末装置の探索要求が行われることとなる。この探索要求には、変更指示が行われたコンテンツチャンネルの種類と、中継された端末装置の数を示す中継ノード数と、が含まれている。
【００４８】
探索要求を取得した端末装置（例えば、端末装置２ｂなど）においても、取得した探索要求に含まれるコンテンツチャンネル２に以前参加していたか否かが判定されることとなる。そして、コンテンツチャンネル２に以前参加していた場合には、その参加時において上層及び下層に接続されていた端末装置が、コンテンツチャンネルが変更指示された端末装置２ａに通知されることとなる。尚、この探索要求に対する応答としての通知には、コンテンツチャンネル２に接続されていた端末装置の識別情報（例えば、ＩＰアドレスやポート番号など）と、その接続していた接続時間（時刻）と、が含まれている。一方、コンテンツチャンネル２に以前参加していなかった場合には、上層及び下層に接続されている端末装置２ｄに探索要求が中継される。尚、このような探索要求の中継は、中継ノード数が最大数となるまで行われる。例えば、端末装置２ｄが以前にコンテンツチャンネル２に参加していた場合には、その参加時において上層に接続されていた端末装置２ｅや下層に接続されていた端末装置２ｆが、端末装置２ｂを介して端末装置２ａに通知されることとなる。
【００４９】
そして、探索要求に対する応答を受信した端末装置２ａにおいて、複数の端末装置のうち接続時間が最新の端末装置が選択され、その端末装置に対して、接続先候補を紹介させるための接続先紹介要求が行われる。そして、接続先紹介要求を受信した端末装置２ｅ、２ｆにおいて、その端末装置２ｅ、２ｆ自体が今現在コンテンツチャンネル２に参加しているか否かが判定され、コンテンツチャンネル２に参加している場合には端末装置２ａが接続可能な状態である端末装置が、コンテンツチャンネル２に参加している端末装置から探索され、その接続可能な端末装置（例えば、端末装置２ｆなど）が接続先候補として端末装置２ａに通知されることとなる。これによって、接続先候補の通知を受け取った端末装置２ａは、その接続先候補に接続することとなる。尚、接続先候補が取得できなかった場合には、端末装置２ａにおいて、接続管理装置３に接続先を紹介させる要求が行われる。これによって、端末装置２ａから接続管理装置３に対するアクセスする可能性を低減させることができる。
【００５０】
［２．コンテンツ配信装置１の構成等の説明］
次に、図４を参照して、コンテンツ配信装置１の構成及び動作について説明する。
【００５１】
図４は、本実施形態におけるコンテンツ配信装置１の概略構成例を示す図である。コンテンツ配信装置１は、一般のサーバコンピュータを適用可能であり、図４に示すように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０２と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置１０５と、各種データ等を記憶するハードディスク装置１０３と、インターネット９を介して端末装置２や接続管理装置３との間で通信を行うネットワークインタフェース１０４と、所定の情報を入力可能なキーボード１０７やマウス１０８等の入力手段を制御する周辺機器制御チップ１０６と、ＣＰＵ１０２からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述の内蔵ディスプレイ１１０に表示するビデオチップ１０９と、ビデオチップ１０９から送信される信号に応じた表示を行う内蔵ディスプレイ１１０と、ＦＭ音源（Ｆｒｅｑｕｅｎｃｙ  Ｍｏｄｕｌａｔｉｏｎ）やＷａｖｅ  Ｔａｂｌｅ音源などの音源を有する音源チップ１１１と、音源チップ１１１から出力されるオーディオ信号を音波に変換する内蔵スピーカ１１２と、を備えて構成され、これらの各種構成要素はシステムバス１０１を介して相互に接続されている。
【００５２】
尚、ネットワークインタフェース１０４は、ルータ１０ａを介してインターネット９に接続される。このルータ１０ａは、図１に示すルータ１０に相当するものである。
【００５３】
尚、本実施形態においては、ＣＰＵ１０２と主記憶装置１０５とで制御部１３０を構成している。また、コンテンツ配信装置１には、上述のように内蔵ディスプレイ（液晶ディスプレイ等）１１０等が内蔵されており、例えば、コンテンツ配信システムＳを運用する放送運営者は、この内蔵ディスプレイ１１０を見ながら入力手段から所定の情報を入力することができる。尚、本実施形態においては、これら内蔵ディスプレイ１１０や内蔵スピーカ１１２などがコンテンツ配信装置１に内蔵されているが、これに限らず、例えば、別に接続されるものであってもよい。
【００５４】
（主記憶装置１０５ついて）
また、主記憶装置１０５には、コンテンツ配信装置１のコンピュータとしての基本的な機能を提供するためのＯＳ（オペレーティングシステム）プログラム１１７と、ハードディスク装置１０３に記憶されたコンテンツデータを取り出して端末装置２へストリーミング配信するためのストリーム制御プログラム１１５と、下層に接続されている各端末装置２の所在情報（ＩＰアドレスやポート番号など）の管理等を行なうためのトポロジ管理プログラム１１６と、内蔵ディスプレイ１１０を制御するための画面制御プログラム１１８と、エンコードされたコンテンツデータをデコードするためのデコーダプログラム１１９と、ハードディスク装置１０３に記憶されている配信コンテンツデータ１１３から読み出したコンテンツデータを端末装置２へ送信する前に一時的に記憶するリングバッファ１２０等が記憶されており、これらはＣＰＵ１０２によって読み出され、ＣＰＵ１０２によってこれらのプログラムに従った機能が実行される。
【００５５】
ここで、ＯＳプログラム１１７は、ＣＰＵ１０２によって読み出されて実行されることにより、キーボード１０７やマウス１０８の入出力に関する機能や、主記憶装置１０５やハードディスク装置１０３どのメモリ管理などのコンテンツ配信装置１であるコンピュータの基本的な機能を実行可能にするものである。
【００５６】
そして、このＯＳプログラム１１７がＣＰＵ１０２によって実行された状態で、上述のストリーム制御プログラム１１５、トポロジ管理プログラム１１６、画面制御プログラム１１８、デコーダプログラム１１９と、が主記憶装置１０５から読み出されて実行される。
【００５７】
特に、本実施形態においては、主記憶装置１０５には、コンテンツデータの配信情報等を管理するコンテンツ管理プログラム１２１が記憶されており、これらはＣＰＵ１０２によって読み出され、ＣＰＵ１０２によってこれらのプログラムに従った機能が実行される。
【００５８】
そして、このＯＳプログラム１１７がＣＰＵ１０２によって実行された状態で、上述のコンテンツ管理プログラム１２１が主記憶装置１０５から読み出されて実行される。
【００５９】
尚、ＯＳプログラム１１７、ストリーム制御プログラム１１５、トポロジ管理プログラム１１６、画面制御プログラム１１８、デコーダプログラム１１９、コンテンツ管理プログラム１２１等は、例えば、インターネット９に接続されたサーバ等から主記憶装置１０５にダウンロードされるようにしてもよく、また、ＣＤ−ＲＯＭ等の記録媒体に記録されてから当該記録媒体のドライブを介して、主記憶装置１０５に読み込まれるようにしてもよい。
【００６０】
（制御部１３０について）
制御部１３０は、上述のようにＣＰＵ１０２と主記憶装置１０５とから構成され、ＣＰＵ１０２が主記憶装置１０５に記憶された各種プログラム１１５から１１９及び１２１を読み出して実行することにより、コンテンツ配信装置１全体を統括制御し、かつ、後述するコンテンツデータ配信手段等として機能するようになっている。尚、ＣＰＵ１０２がストリーム制御プログラム１１５を実行することによって、コンテンツデータ配信手段等として、またＣＰＵ１０２がトポロジ管理プログラム１１６を実行することによって、トポロジ管理手段として、また、ＣＰＵ１０２が画面制御プログラム１１８を実行することによって、表示制御手段等として、ＣＰＵ１０２がデコーダプログラム１１９を実行することによって、再生手段として、ＣＰＵ１０２がコンテンツ管理プログラム１２１を実行することによって、配信コンテンツ管理手段として、それぞれ機能するようになっている。さらに、ハードディスク装置１０３は、コンテンツデータと、そのコンテンツデータに対応する配信時間とが記憶されたコンテンツデータ記憶手段として使用される。
【００６１】
（配信コンテンツ管理手段について）
配信コンテンツ管理手段は、ハードディスク装置１０３に記憶されているコンテンツデータや、そのコンテンツデータに対応する配信情報の管理を行う。
【００６２】
（コンテンツデータ配信手段について）
コンテンツデータ配信手段は、キーボード１０７などの入力手段によって、又は、設定された配信時間となったと判定されたことによって、ハードディスク装置１０３において記憶されている配信コンテンツデータ１１３から指定されたコンテンツデータを取り出し、ネットワークインタフェース１０４を介して、接続された端末装置２（例えば、ツリー型に接続された場合には最上階層端末装置）等にストリーミング配信する。
【００６３】
このコンテンツデータ配信手段による端末装置２等へのストリーミング配信は、以下の手順で実行される。
【００６４】
コンテンツデータ配信手段は、ハードディスク装置１０３に予め記憶されている配信コンテンツデータ１１３から、予め設定されたコンテンツに対応するコンテンツデータを順次取り出してリングバッファ１２０に記憶させる。
【００６５】
次に、コンテンツデータ配信手段は、リングバッファ１２０から取り出したコンテンツデータを、ストリーミング配信用のデータ形式、たとえばＡＳＦ、ＷＭＡ、ＷＭＶ等のデータ形式にエンコードする。
【００６６】
その後、コンテンツデータ配信手段は、接続された端末装置２等に対して、それぞれ対応するコンテンツデータを所定容量毎に分割しながらコンテンツパケットとし、ネットワークインタフェース１０４を介して、このコンテンツパケットを送信する。
【００６７】
（トポロジ管理手段）
コンテンツ配信装置１は、１つのコンテンツ配信装置１に１つのチャンネルを割り振られており、トポロジ管理手段は、割り振られたチャンネルに構成されるツリー状階層構造の第１階層に参加している端末装置２の所在情報（ＩＰアドレスやポート番号など）を管理している。そして、上述の配信手段はトポロジ管理手段が管理する端末装置２のＩＰアドレスを宛先アドレスとし、配信用ＩＰアドレスを送信元として端末装置２へコンテンツデータの配信を行なう。
【００６８】
（表示制御手段について）
表示制御手段は、ビデオチップ１０９及び内蔵ディスプレイ１１０を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、内蔵ディスプレイ１１０にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。
【００６９】
（再生手段について）
再生手段は、配信コンテンツデータ１１３の中からコンテンツデータを内蔵ディスプレイ１１０に表示したり、内蔵スピーカ１１２から出力したりする機能を有している。
【００７０】
［３．端末装置２の構成等の説明］
次に、図５を参照して、端末装置２の構成及び動作について説明する。
【００７１】
図５は、本実施形態における端末装置２の概略構成例を示す図である。端末装置２は、一般のパーソナルコンピュータあるいは専用端末を適用可能であり、図５に示すように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０２と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置２０５と、各種データ等を記憶するハードディスク装置２０３と、インターネット９を介してネットワーク上のコンテンツ配信装置１、接続管理装置３及び他の端末装置２との間で通信を行うためのネットワークインタフェース２０４と、ユーザによる端末装置２の遠隔操作が可能な所定の赤外線信号を送信及び受信するユーザ入力用リモコン２０８と、このユーザ入力用リモコン２０８と赤外線により通信を行なうための赤外線ポート２０７と、赤外線ポート２０７を制御する周辺機器制御チップ２０６と、ＣＰＵ２０２からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを後述の内蔵ディスプレイ２１０に表示するビデオチップ２０９と、ビデオチップ２０９から送信される信号に応じた表示を行う内蔵ディスプレイ２１０と、ＦＭ音源（Ｆｒｅｑｕｅｎｃｙ  Ｍｏｄｕｌａｔｉｏｎ）やＷａｖｅ  Ｔａｂｌｅ音源などの音源を有する音源チップ２１１と、音源チップ２１１から出力されるオーディオ信号を音波に変換する内蔵スピーカ２１２とを備えて構成され、これらの各種構成要素はシステムバス２０１を介して相互に接続されている。
【００７２】
尚、本実施形態においては、ＣＰＵ２０２と主記憶装置２０５とで制御部２３０を構成している。また、ネットワークインタフェース２０４は、ルータ１０ｂを介して、インターネット９に接続されている。このルータ１０ｂは、図１に示すルータ１０に相当するものである。
【００７３】
上述したようなユーザ入力用リモコン２０８では、コンテンツ配信システムＳにおけるコンテンツの購入や、コンテンツリストの取得、コンテンツチャンネルの変更指示などの操作が可能である。
【００７４】
（主記憶装置２０５について）
また、主記憶装置２０５には、端末装置２のコンピュータとしての基本的な機能を提供するためのＯＳプログラム２１７と、コンテンツ配信装置１から直接又は他の端末装置２に中継されてストリーミング配信されるコンテンツデータをストリーム受信及び下層の端末装置２へストリーミング送信するためのストリーム制御プログラム２１５と、ツリー接続された一層上層の端末装置２（或いはコンテンツ配信装置１）の所在情報（ＩＰアドレスやポート番号）とツリー接続された一層下層の端末装置２の所在情報の管理等を行なうためのトポロジ制御プログラム２１６と、内蔵ディスプレイ２１０を制御するための画面制御プログラム２１８と、上層の装置からストリーミング受信したコンテンツデータをデコードして再生するためのデコーダプログラム２１９と、ストリーミング受信したコンテンツデータを順次記憶すると共に、記憶したコンテンツデータのうち再生が終了したコンテンツデータ、及び、下層に接続している他の端末装置２が存在する場合にはその端末装置２への配信が終了したコンテンツデータを順次消去するリングバッファ２２０等が記憶されており、これらはＣＰＵ２０２によって読み出され、ＣＰＵ２０２によってこれらのプログラムに従った機能が実行される。
【００７５】
ここで、ＯＳプログラム２１７は、ＣＰＵ２０２によって読み出されて実行されることにより、ユーザ入力用リモコン２０８の入出力に関する機能や、主記憶装置２０５やハードディスク装置２０３などのメモリ管理などの端末装置２であるコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラム２１７がＣＰＵ２０２によって実行された状態で、上述のストリーム制御プログラム２１５、トポロジ制御プログラム２１６、画面制御プログラム２１８、デコーダプログラム２１９等が主記憶装置２０５から読み出されて実行される。
【００７６】
特に、本実施形態においては、主記憶装置２０５には、接続していた端末装置等の履歴を記憶する接続履歴管理プログラム２２１、コンテンツチャンネルの変更を行うコンテンツ変更プログラム２２２、接続先を紹介させる端末装置を探索する端末装置探索プログラム２２３、接続先を紹介する接続先紹介プログラム２２４が記憶されており、これらはＣＰＵ２０２によって読み出され、ＣＰＵ２０２によってこれらのプログラムに従った機能が実行される。
【００７７】
そして、このＯＳプログラム２１７がＣＰＵ２０２によって実行された状態で、上述の接続履歴管理プログラム２２１、コンテンツ変更プログラム２２２、端末装置探索プログラム２２３、接続先紹介プログラム２２４が主記憶装置２０５から読み出されて実行される。
【００７８】
尚、ＯＳプログラム２１７、ストリーム制御プログラム２１５、トポロジ制御プログラム２１６、画面制御プログラム２１８、デコーダプログラム２１９、接続履歴管理プログラム２２１、コンテンツ変更プログラム２２２、端末装置探索プログラム２２３、接続先紹介プログラム２２４等は、例えば、インターネット９に接続されたサーバ等から主記憶装置２０５にダウンロードされるようにしてもよく、また、ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、主記憶装置２０５に読み込まれるようにしてもよい。
【００７９】
（制御部２３０について）
制御部２３０は、上述のようにＣＰＵ２０２と主記憶装置２０５とから構成され、ＣＰＵ２０２が主記憶装置２０５に記憶された各種プログラム２１５から２１９，２２１から２２４を読み出して実行することにより、端末装置２全体を統括制御し、かつ、後述するコンテンツ受信手段、コンテンツデータ中継制御手段、接続先候補要求手段（第二接続先候補要求手段）、第一接続先候補要求手段、接続先候補受信手段、接続手段、再生手段、接続端末装置記憶手段、端末装置記憶判定手段、コンテンツチャンネル変更判定手段、接続先候補紹介端末装置選択手段、端末装置問合手段、端末装置受信手段、端末装置問合受信手段、端末装置通知手段、問合階層数計数手段、問合階層数判定手段、コンテンツチャンネル接続判定手段、接続判定手段、接続可能端末装置問合手段、接続先候補選択手段（第二接続先候補選択手段）、接続先候補通知手段（第二接続先候補通知手段）等として機能するようになっている。さらに、ハードディスク装置２０３には、詳しく後述する接続履歴テーブルが記憶されており、ハードディスク装置２０３は、以前に接続された端末装置を、コンテンツチャンネル、接続時間に対応して記憶する接続端末装置記憶手段としても使用される。
【００８０】
尚、ＣＰＵ２０２がストリーム制御プログラム２１５を実行することによってコンテンツ受信手段、コンテンツデータ中継制御手段として、またＣＰＵ２０２がトポロジ制御プログラム２１６を実行することによって、接続先候補要求手段（第二接続先候補要求手段）、第一接続先候補要求手段、接続先候補受信手段、接続手段等として、またＣＰＵ２０２が画面制御プログラム２１８を実行することによって表示制御手段等として、さらにＣＰＵ２０２がデコーダプログラム２１９を実行することによって再生手段等として、さらにＣＰＵ２０２が接続履歴管理プログラム２２１を実行することによって、接続端末装置記憶手段、端末装置記憶判定手段等として、さらにＣＰＵ２０２がコンテンツ変更プログラム２２２を実行することによって、コンテンツチャンネル変更判定手段、接続先候補紹介端末装置選択手段、端末装置問合手段、端末装置受信手段等として、さらにＣＰＵ２０２が端末装置探索プログラム２２３を実行することによって、端末装置問合受信手段、端末装置通知手段、問合階層数計数手段、問合階層数判定手段等として、さらにＣＰＵ２０２が接続先紹介プログラム２２４を実行することによって、コンテンツチャンネル接続判定手段、接続判定手段、接続可能端末装置問合手段、接続先候補選択手段（第二接続先候補選択手段）、接続先候補通知手段（第二接続先候補通知手段）等として、それぞれ機能するようになっている。
【００８１】
（接続端末装置記憶手段について）
接続端末装置記憶手段は、以前に上層及び下層に接続された端末装置２を、コンテンツチャンネル、接続時間に対応して、後述する接続履歴テーブルとして記憶する。特に、接続端末装置記憶手段は、接続時間としては、接続が切断した接続切断時間を記憶することとなる。
【００８２】
（端末装置記憶判定手段について）
端末装置記憶判定手段は、以前に上層及び下層に接続された端末装置のうち、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定する。特に、端末装置記憶判定手段は、コンテンツチャンネルの変更指示が行われた場合や、コンテンツチャンネルに対応する端末装置の問合せを他の端末装置２から受信した場合には、以前に上層及び下層に接続された端末装置のうち、そのコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定する。
【００８３】
（コンテンツチャンネル変更判定手段について）
コンテンツチャンネル変更判定手段は、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定することとなる。
【００８４】
（端末装置問合手段について）
端末装置問合手段は、コンテンツチャンネルの変更指示が行われた、又は、そのコンテンツチャンネルに対応する端末装置の問合せを他の端末装置２から受信した場合において、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、上層又は下層に接続されている他の端末装置に、変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを行う。特に、端末装置問合手段は、問合せの階層数が所定数以上となっていないと判定されたことを条件に、上層又は下層に接続されている他の端末装置に、所定のコンテンツチャンネルに対応する端末装置の問合せを行い、問合せの階層数が所定数以上となったと判定されたことを条件に、他の端末装置に対する問合せを禁止する制御を行う。
【００８５】
（問合階層数計数手段、問合階層数判定手段について）
問合階層数計数手段は、コンテンツチャンネルに対応する端末装置の問合せを行った階層数を計数する。問合階層数判定手段は、計数された問合せの階層数が所定数以上となったか否かを判定する。
【００８６】
（端末装置問合受信手段、端末装置通知手段、端末装置受信手段について）
端末装置問合受信手段は、所定のコンテンツチャンネルに対応する端末装置の問合せを他の端末装置から受信する。端末装置通知手段は、所定のコンテンツチャンネルに対応する端末装置の問合せを受信した場合において、所定のコンテンツチャンネルに対応する端末装置が記憶されていると判定されたときには、端末装置の問合せを行った端末装置に通知する。端末装置受信手段は、問合せが行われたコンテンツチャンネルに対応する端末装置を受信する。
【００８７】
（接続先候補紹介端末装置選択手段について）
接続先候補紹介端末装置選択手段は、接続されている他の端末装置、又は、端末装置自体において記憶されている以前に接続されていた端末装置のうち、変更指示が行われたコンテンツチャンネルに対応する端末装置を、接続先候補を紹介させる接続先候補紹介端末装置として選択する。特に、接続先候補紹介端末装置選択手段は、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていると判定された場合には、その端末装置を接続先候補紹介端末装置として選択し、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、他の端末装置２から受信されたコンテンツチャンネルに対応する端末装置を接続先候補紹介端末装置として選択する。また、接続先候補紹介端末装置選択手段は、変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置から、接続時間が最も新しい時間である端末装置を接続先候補紹介端末装置として選択する。
【００８８】
（接続先紹介要求手段について）
接続先紹介要求手段は、端末装置２をコンテンツ配信システムＳへ参加させるために、又は、端末装置２が接続されているコンテンツチャンネルを変更させるために、ユーザによるユーザ入力用リモコン２０８の購入操作や、コンテンツチャンネルの変更指示操作（選択操作）などに対応して、コンテンツデータの受信のための接続先紹介要求を送信する。この接続先紹介要求手段は、接続先紹介要求を接続管理装置３に送信する第一接続先紹介要求手段と、接続先紹介要求を他の端末装置２に送信する第二接続先紹介要求手段と、を含む。特に、接続先紹介要求手段は、ユーザによるユーザ入力用リモコン２０８の変更指示操作が行われた場合には、他の端末装置２に対して、変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求し（第二接続先紹介要求手段としての機能）、その要求に応じて接続先候補が受信されたかった場合や、その要求自体を行うことができなかった場合には、接続管理装置３に対して、変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求する（第一接続先紹介要求手段としての機能）。
【００８９】
（コンテンツチャンネル接続判定手段について）
コンテンツチャンネル接続判定手段は、他の端末装置２から接続先候補を要求された場合には、その接続先候補を要求された端末装置２自体が、要求におけるコンテンツチャンネルに対応する端末装置であるか否かを判定する。
【００９０】
（接続判定手段、接続可能端末装置問合手段について）
接続判定手段は、他の端末装置２から接続先候補を要求された場合において、接続先候補を要求された端末装置２自体が、要求におけるコンテンツチャンネルに対応する端末装置であると判定されたときには、接続先候補を要求された端末装置２自体に接続可能であるか否かを判定する。接続可能端末装置問合手段は、接続先候補を要求された端末装置２自体に接続が可能ではないと判定された場合には、接続が可能である端末装置の問合せを上層又は下層の端末装置２に行う。
【００９１】
（接続先候補選択手段、接続先候補通知手段について）
接続先候補選択手段（第二接続先候補選択手段）は、接続先候補を要求された端末装置２自体に接続が可能であると判定された場合には、その要求された端末装置２自体を、要求されたコンテンツチャンネルに対応する接続先候補として選択する。また、接続先候補選択手段（第二接続先候補選択手段）は、接続が可能である端末装置の問合せの結果に基づいて、接続が可能である端末装置を、要求されたコンテンツチャンネルに対応する接続先候補として選択する。接続先候補通知手段（第二接続先候補通知手段）は、選択された接続先候補を、接続先候補を要求した他の端末装置２へ通知する。
【００９２】
（接続先候補受信手段、接続手段について）
接続先候補受信手段は、その接続先紹介要求に対応する接続先候補を他の端末装置２又は接続管理装置３から受信する。特に、この接続先候補受信手段は、コンテンツチャンネルの変更指示があった場合には、そのコンテンツチャンネルに対応する接続先候補を他の端末装置２又は接続管理装置３から受信することとなる。接続手段は、コンテンツ配信装置又は他の端末装置など、上述した接続先候補受信手段によって受信された接続先候補（接続先候補が複数の場合には、接続先候補のうちのいずれか）にネットワークを介して接続することとなる。
【００９３】
（コンテンツ受信手段について）
コンテンツ受信手段は、ネットワークインタフェース２０４を介してコンテンツ配信装置１又は上層に接続された端末装置２からコンテンツデータを受信する。
【００９４】
（再生手段について）
再生手段は、ネットワークインタフェース２０４によってストリーミング受信したコンテンツデータをリングバッファ２２０に順次記憶し、順次再生する機能を有している。また、購入したデータを再生する場合には、再生手段は、ハードディスク装置２０３からコンテンツデータを取得して再生する機能を有する。
【００９５】
この再生手段は、音源チップ２１１やビデオチップ２０９を動作させることによってこの機能を実現しており、リングバッファ２２０に格納したコンテンツデータを順次取り出して、所定のコンテンツデータ形式（たとえば、Ｗａｖｅ形式）に変換して音源チップ２１１やビデオチップ２０９へ入力し、コンテンツの再生を行う。
【００９６】
再生手段によって所定のコンテンツデータ形式に変換されたコンテンツデータは、そのコンテンツデータがオーディオ情報を含む場合には、そのオーディオ情報が音源チップ２１１によってオーディオ信号へ変換された後、内蔵スピーカ２１２から出力される。
【００９７】
また、再生手段によって所定のコンテンツデータ形式に変換されたコンテンツデータは、そのコンテンツデータに映像情報が含まれるときには、後述の表示制御手段による制御によってこの映像情報が内蔵ディスプレイ２１０に表示される。
【００９８】
また、再生手段は、リングバッファ２２０に格納されたコンテンツデータに含まれる再生開始時刻情報に基づいて、当該コンテンツデータを再生するタイミングを決定する。すなわち、再生手段は、リングバッファ２２０に格納されたコンテンツデータをその再生開始時刻で内蔵スピーカ２１２や内蔵ディスプレイ２１０に出力するように構成されている。
【００９９】
（表示制御手段について）
表示制御手段は、ビデオチップ２０９及び内蔵ディスプレイ２１０を制御して、コンテンツデータや各種情報を表示する機能を有している。すなわち、表示制御手段は、内蔵ディスプレイ２１０にどのようにコンテンツの映像や各種情報を表示するかを制御することができる。
【０１００】
（コンテンツデータ中継制御手段について）
また、特に、コンテンツデータ中継制御手段は、ネットワークインタフェース２０４を介してコンテンツ配信装置１又は上層に接続された端末装置２から受信したコンテンツデータを、下層に接続された他の端末装置２へネットワークインタフェース２０４を介して転送する。
【０１０１】
（接続履歴テーブル）
上述したような構成の端末装置２におけるハードディスク装置２０３に記憶されている接続履歴テーブルについて図６を用いて説明する。尚、以下に説明する接続履歴テーブルが端末装置２におけるハードディスク装置２０３に記憶されていない場合であっても、このような機能を有するデータ、プログラムが端末装置２におけるハードディスク装置２０３などに記憶されていればよい。
【０１０２】
端末装置２におけるハードディスク装置２０３に記憶された接続履歴テーブルは、端末装置２が以前に上層及び下層に接続していた端末装置を記憶するためのものである。接続履歴テーブルにおいて、図６に示すように、接続の切断日時を示す接続切断日時と、接続していたコンテンツチャンネルと、上層及び下層に接続されていた端末装置の識別情報（例えば、ＩＰアドレスやポート番号など）と、が対応付けられて記憶されている。端末装置２において、この接続履歴テーブルが参照されることによって、以前に接続されていた端末装置をはじめとして、その接続コンテンツチャンネル、接続を切断した時間が認識可能となる。
【０１０３】
このような接続履歴テーブルが記憶されたハードディスク装置２０３やその記憶制御を行う制御部２３０は、接続端末装置記憶手段として機能し、以前に接続されていた端末装置、その端末装置のコンテンツチャンネルに対応して、以前に接続されていた接続時間を記憶することとなる。
【０１０４】
尚、本実施形態においては、接続を切断するタイミングでその接続を切断した接続切断時間を記憶したが、これに限らず、例えば、接続した時間を記憶してもよい。また、例えば、接続したタイミングで接続した時間を記憶してもよい。
【０１０５】
［４．接続管理装置３の構成等の説明］
次に、図７を参照して、接続管理装置３の構成及び動作について説明する。
【０１０６】
図７は、本実施形態における接続管理装置３の概略構成例を示す図である。接続管理装置３は、一般のサーバコンピュータを適用可能であり、図７に示すように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０２と、各種プログラム等を記憶（格納）する書き換え可能な主記憶装置３０５と、各種データ等を記憶するハードディスク装置３０３と、インターネット９を介してコンテンツ配信装置１や端末装置２との間で通信を行うネットワークインタフェース３０４と、所定の情報を入力可能なキーボード３０７やマウス３０８等の入力手段を制御する周辺機器制御チップ３０６と、ＣＰＵ３０２からイメージデータを受け取り、内部のビデオメモリ（図示せず）に書き込むと共にこのビデオメモリに書き込んだデータを内蔵ディスプレイ３１０に表示するビデオチップ３０９とを備えて構成され、これらの各種構成要素はシステムバス３０１を介して相互に接続されている。
【０１０７】
尚、本実施形態においては、ＣＰＵ３０２と主記憶装置３０５とで制御部３３０を構成している。尚、ネットワークインタフェース３０４は、ルータ１０ｃを介して、インターネット９に接続されている。このルータ１０ｃは、図１に示すルータ１０に相当するものである。
【０１０８】
（主記憶装置３０５について）
また、主記憶装置３０５には、接続管理装置３のコンピュータとしての基本的な機能を提供するためのＯＳプログラム３１７と、チャンネルに接続される複数の端末装置２の所在情報（ＩＰアドレスやポート番号など）などを管理するための端末管理プログラム３１８と、各チャンネルのツリー状階層構造を構築及び管理等するためのトポロジ管理プログラム３１９と、端末装置２から送信される接続先紹介要求に対応するチャンネルの接続先候補を選択し、端末装置２へ接続先候補の情報を送信等するための接続先紹介プログラム３２０等が記憶されており、これらはＣＰＵ３０２によって読み出され、ＣＰＵ３０２によってこれらのプログラムに従った機能が実行される。
【０１０９】
ここで、ＯＳプログラム３１７は、ＣＰＵ３０２によって読み出されて実行されることにより、キーボード３０７やマウス３０８の入出力に関する機能や、主記憶装置３０５やハードディスク装置３０３などのメモリ管理などの接続管理装置３であるコンピュータの基本的な機能を実行可能にするものである。そして、このＯＳプログラム３１７がＣＰＵ３０２によって実行された状態で、上述の端末管理プログラム３１８、トポロジ管理プログラム３１９、接続先紹介プログラム３２０等が実行される。
【０１１０】
尚、ＯＳプログラム３１７、端末管理プログラム３１８、トポロジ管理プログラム３１９、接続先紹介プログラム３２０等は、例えば、インターネット９に接続されたサーバ等から主記憶装置３０５にダウンロードされるようにしてもよく、また、ＣＤ−ＲＯＭ等の記憶媒体に記録されてから当該記憶媒体のドライブを介して、主記憶装置３０５に読み込まれるようにしてもよい。
【０１１１】
（制御部３３０について）
制御部３３０は、上述のようにＣＰＵ３０２と主記憶装置３０５とから構成され、ＣＰＵ３０２が主記憶装置３０５に記憶された各種プログラム３１７〜３２０を読み出して実行することにより、接続管理装置３全体を統括制御し、かつ、後述する第一接続先紹介要求受信手段、第一接続先候補選択手段、第一接続先候補通知手段、トポロジ管理手段、端末管理手段等として機能する。さらに、ハードディスク装置３０３は、コンテンツ配信装置１や、そのコンテンツ配信装置１を頂点として、複数のコンテンツチャンネル毎に、ネットワーク上において階層構造で多層に接続された複数の端末装置２の接続状態情報を記憶する接続状態情報記憶手段として使用される。
【０１１２】
尚、ＣＰＵ３０２が端末管理プログラム３１８を実行することによって、端末管理手段等として、またＣＰＵ３０２がトポロジ管理プログラム３１９を実行することによってトポロジ管理手段等として、さらにＣＰＵ３０２が接続先紹介プログラム３２０を実行することによって第一接続先紹介要求受信手段、第一接続先候補選択手段、第一接続先候補通知手段等として、それぞれ機能する。
【０１１３】
（端末管理手段について）
端末管理手段は、端末装置２からの登録要求を受信すると、端末管理データベース３１５へこの端末装置２の所在情報であるＩＰアドレスなどをチャンネル毎に登録する。また、コンテンツ配信装置１からの登録要求を受信した場合も、このコンテンツ配信装置１の所在情報であるＩＰアドレスなどを各チャンネル毎に端末管理データベース３１５に登録する。尚、これらの端末装置２の所在情報は端末装置２からの登録要求に含まれ、この登録要求から所在情報を取得する。
【０１１４】
（トポロジ管理手段について）
トポロジ管理手段は、コンテンツ配信装置１から送信される新規チャンネル生成要求に基づいて、新規チャンネルのツリー状階層構造を生成するための新規トポロジ生成手段と、端末装置２の接続先紹介要求や接続切断通知などのトポロジ変動通知によってチャンネルにおける端末装置２の接続情報を変更するトポロジ変更手段としての機能を有している。また、トポロジ管理手段は、コンテンツ配信装置１や、そのコンテンツ配信装置１を頂点として、複数のコンテンツチャンネル毎に、ネットワーク上において階層構造で多層に接続された複数の端末装置２の接続状態情報を接続状態情報記憶手段としてのトポロジデータベース３１４へ記憶する。
【０１１５】
新規トポロジ生成手段は、新規チャンネルを生成する場合には、新規チャンネルのトポロジテーブルを生成してトポロジデータベース３１４へ登録する。ここで、トポロジテーブルは、チャンネル毎に階層構造を構成する端末装置２の接続状態情報などを格納するためのテーブルであり、チャンネルごとに生成されてトポロジデータベース３１４に登録される。
【０１１６】
トポロジ変更手段は、トポロジデータベース３１４に記憶される複数のトポロジテーブルに端末装置２の情報を追加又は削除する機能を実行するものであり、端末装置２からの接続先紹介要求トポロジ参加報告に基づいて、トポロジテーブルへの追加又は変更を行うものである。
【０１１７】
（第一接続先紹介要求受信手段について）
第一接続先紹介要求受信手段は、端末装置２から送信された接続先紹介要求を受信し、接続先紹介要求を取得する。
【０１１８】
（第一接続先候補選択手段について）
第一接続先候補選択手段は、チャンネルに新規に参加しようとする端末装置２から接続先紹介要求を受信したとき、接続先紹介要求に対応するチャンネルの階層構造において、当該階層構造を構成する端末装置２の接続先紹介要求に対する接続先候補を、トポロジデータベース３１４に記憶された接続状態情報から選択する。
【０１１９】
（第一接続先候補通知手段について）
第一接続先候補通知手段は、第一接続先候補選択手段によって選択された接続先候補を、接続先紹介要求を送信した端末装置２へ通知する機能を有する。この接続先候補の通知は、接続先候補の情報、すなわち接続先候補の端末装置２の通信プロトコル、ＩＰアドレスやポート番号などの情報を含む。
【０１２０】
［５．コンテンツ配信システムＳの動作］
以下、コンテンツ配信装置１、端末装置２及び接続管理装置３の詳細動作について、フローチャートを用いて更に具体的に説明する。
【０１２１】
（コンテンツ配信装置１の処理フローの説明）
まず、コンテンツ配信装置１の更に具体的な動作について、図８を参照して説明する。図８は、コンテンツ配信装置１における処理全体を示すフローチャートである。
【０１２２】
まず、図８に示すように、コンテンツ配信装置１の電源がＯＮされると、コンテンツ配信装置１では、ＣＰＵ１０２は、主記憶装置１０５やハードディスク装置１０３のアクセス許可、作業領域を初期化等の初期設定処理を実行し（ステップＳ１００）、各プログラム１１５〜１１９，１２１をＣＰＵ１０２による実行状態とし、制御部１３０としての機能を動作させた後、ステップＳ１２１に処理を移す。
【０１２３】
ステップＳ１２１において、コンテンツ配信装置１における制御部１３０は、端末装置２からセッション開設か切断の要求があったか否かを判定する。この処理において、コンテンツ配信装置１における制御部１３０は、ネットワークインタフェース１０４を介して、端末装置２からセッション開設か切断の要求があったか否かを判定することとなる。
【０１２４】
この処理において、制御部１３０は、セッション開設の要求があったと判定した場合には（ステップＳ１２１：ＹＥＳ）、その端末装置２との接続を開設し（ステップＳ１２２）、セッション切断の要求があったと判定した場合には（ステップＳ１２１：ＹＥＳ）、その端末装置２との接続を切断し（ステップＳ１２２）、ステップＳ１１０に処理を移す。つまり、制御部１３０は、端末装置２からの要求に応じて、端末装置の接続状態を変更設定させる制御を行うこととなる。
【０１２５】
一方、ステップＳ１２１において、制御部１３０は、端末装置２からセッション開設も切断も要求がなかったと判定した場合には（ステップＳ１２１：ＮＯ）、ステップＳ１３１に処理を移す。
【０１２６】
ステップＳ１３１において、コンテンツ配信装置１における制御部１３０は、配信時間であるか否かを判定する。この処理において、コンテンツ配信装置１における制御部１３０は、コンテンツデータベース１１４における配信時間等を参照し、今現在の時間が配信時間であるか否かを判定することとなる。
【０１２７】
この処理において、制御部１３０は、配信時間である判定した場合には（ステップＳ１３１：ＹＥＳ）、その配信時間となったと判定したコンテンツＩＤに対応するコンテンツデータを読み出し、下層に接続されている端末装置２に対して、ストリーム送信を開始し（ステップＳ１３２）、ステップＳ１１０に処理を移す。つまり、制御部１３０は、ハードディスク装置１０３に記憶されたコンテンツデータの配信時間となったか否かを判定し、コンテンツデータの配信時間となったと判定されたときに、コンテンツチャンネル毎に、直接配信すると判定され、下層に接続された端末装置（最上階層の端末装置）に、そのコンテンツデータを配信することとなる。このようなステップを実行する制御部１３０は、配信時間判定手段、コンテンツデータ配信手段として機能する。
【０１２８】
一方、ステップＳ１３１において、制御部１３０は、配信時間ではないと判定した場合には（ステップＳ１３１：ＮＯ）、ステップＳ１４１に処理を移す。
【０１２９】
ステップＳ１４１において、コンテンツ配信装置１における制御部１３０は、配信完了であるか否かを判定する。この処理において、コンテンツ配信装置１における制御部１３０は、コンテンツデータの配信が完了したか否かを判定することとなる。
【０１３０】
この処理において、制御部１３０は、配信完了である判定した場合には（ステップＳ１４１：ＹＥＳ）、その配信が完了となったコンテンツデータに対応するコンテンツＩＤと配信完了を示すデータとを接続管理装置３に送信し（ステップＳ１４２）、ステップＳ１１０に処理を移す。このように、コンテンツデータの配信が完了した旨を制御部１３０が接続管理装置３に通知することによって、接続管理装置３は、トポロジデータベースからトポロジ情報を削除することが可能となる。
【０１３１】
一方、ステップＳ１４１において、制御部１３０は、配信完了ではないと判定した場合には（ステップＳ１４１：ＮＯ）、ステップＳ１１０に処理を移す。
【０１３２】
ステップＳ１１０において、制御部１３０は、電源がオフであるか否かを判定し、電源がオフであると判定した場合には、本処理を終了する一方、電源がオフではないと判定した場合には、ステップＳ１０１から繰り返し処理を実行することとなる。
【０１３３】
（端末装置２の処理フローの説明）
まず、端末装置２の更に具体的な動作について、図９〜図１４を参照して説明する。図９及び図１０は、端末装置２における処理全体を示すフローチャートである。
【０１３４】
まず、図９に示すように、端末装置２の電源がＯＮされると、端末装置２では、ＣＰＵ２０２は、主記憶装置２０５やハードディスク装置２０３のアクセス許可、作業領域を初期化等の初期設定処理を実行し（ステップＳ２００）、各プログラム２１５〜２１９及び２２１をＣＰＵ２０２による実行状態とし、制御部２３０としての機能を動作させた後、ステップＳ２０１に処理を移す。
【０１３５】
ステップＳ２０１において、制御部２３０は、コンテンツチャンネルの変更指示があったか否かを判定する。この処理において、制御部２３０は、ユーザによるユーザ入力用リモコン２０８の操作に応じて、コンテンツチャンネルの変更指示があったか否かを判定することとなる。つまり、制御部２３０は、コンテンツチャンネルを変更させる変更指示が行われたか否かを判定することとなる。このようなステップを実行する制御部２３０は、コンテンツチャンネル変更判定手段として機能する。
【０１３６】
この処理において、制御部２３０は、コンテンツチャンネルの変更指示があったと判定した場合には（ステップＳ２０１：ＹＥＳ）、詳しくは図１１及び図１２を用いて後述するが、コンテンツチャンネル変更処理を実行し（ステップＳ２０２）、ステップＳ２１０に処理を移す。
【０１３７】
ステップＳ２１０において、制御部２３０は、端末の電源がオフであるか否かを判定し、端末の電源がオフであると判定した場合には、本処理を終了する一方、端末の電源がオフではないと判定した場合には、ステップＳ２０１から繰り返し処理を実行することとなる。
【０１３８】
一方、ステップＳ２０１において、制御部２３０は、コンテンツチャンネルの変更指示がなかったと判定した場合には（ステップＳ２０１：ＮＯ）、ステップＳ２１１に処理を移す。
【０１３９】
ステップＳ２１１において、制御部２３０は、ツリーから脱退か否かを判定する。この処理において、制御部２３０は、ユーザによるユーザ入力用リモコン２０８の操作等、接続が切断された場合には、ツリーから脱退したと判定することとなる。
【０１４０】
この処理において、制御部２３０は、ツリーから脱退したと判定した場合には（ステップＳ２１１：ＹＥＳ）、接続されていた端末装置の識別情報を、接続されていたコンテンツチャンネルと、接続切断時間とに対応して、接続履歴テーブルとして記憶し（ステップＳ２１２）、ステップＳ２１０に処理を移す。つまり、制御部２３０は、以前に上層及び下層に接続されていた端末装置を、その端末装置のコンテンツチャンネル、接続されていた接続時間に対応して記憶することとなる。このようなステップを実行する制御部２３０やハードディスク装置２０３は、接続端末装置記憶手段として機能する。
【０１４１】
一方、ステップＳ２１１において、制御部２３０は、ツリーから脱退していないと判定した場合には（ステップＳ２１１：ＮＯ）、ステップＳ２２１に処理を移す。
【０１４２】
ステップＳ２２１において、制御部２３０は、探索要求、探索応答を受信したか否かを判定する。この処理において、制御部２３０は、上層又は下層に接続されている他の端末装置２から送信される探索要求、探索応答を受信したか否かを判定することとなる。
【０１４３】
この処理において、制御部２３０は、探索要求、探索応答を受信したと判定した場合には（ステップＳ２２１：ＹＥＳ）、詳しくは図１３を用いて後述するが、探索要求制御処理を実行し（ステップＳ２２２）、ステップＳ２１０に処理を移す。
【０１４４】
また、一方、ステップＳ２２１において、制御部２３０は、探索要求、探索応答を受信していないと判定した場合には（ステップＳ２２１：ＮＯ）、図１０のステップＳ２３１に処理を移す。
【０１４５】
ステップＳ２３１において、制御部２３０は、接続先の紹介を要求する旨の接続先紹介要求を他の端末装置２から受信したか否かを判定する。
【０１４６】
この処理において、制御部２３０は、接続先紹介要求を受信したと判定した場合には（ステップＳ２３１：ＹＥＳ）、詳しくは図１４を用いて後述するが、接続先紹介要求制御処理を実行し（ステップＳ２３２）、図９のステップＳ２１０に処理を移す。
【０１４７】
一方、ステップＳ２３１において、制御部２３０は、接続先紹介要求を受信していないと判定した場合には（ステップＳ２３１：ＮＯ）、ステップＳ２３６に処理を移す。
【０１４８】
ステップＳ２３６において、制御部２３０は、接続要求を他の端末装置２から受信したか否かを判定する。
【０１４９】
この処理において、制御部２３０は、接続要求を受信したと判定した場合には（ステップＳ２３６：ＹＥＳ）、
端末装置２自体の下層に、接続要求をした端末装置２を接続する（ステップＳ２３７）。そして、制御部２３０は、接続管理装置３へトポロジ報告を送信し（ステップＳ２３８）、図９のステップＳ２１０に処理を移す。
【０１５０】
一方、ステップＳ２３６において、制御部２３０は、接続先探索要求を受信していないと判定した場合には（ステップＳ２３６：ＮＯ）、ステップＳ２４１に処理を移す。
【０１５１】
ステップＳ２４１において、制御部２３０は、他の端末装置２や接続管理装置３から上層端末の候補を受信したか否かを判定する。この処理において、制御部２３０は、接続先候補要求の送信に応じて、ネットワークインタフェース２０４を介して、他の端末装置２や接続管理装置３から上層端末の候補を受信したか否かを判定することとなる。
【０１５２】
この処理において、制御部２３０は、上層端末の候補を受信したと判定した場合には（ステップＳ２４１：ＹＥＳ）、取得した候補の中から上層端末を１つ選択する（ステップＳ２４２）。つまり、制御部２３０は、他の端末装置２や接続管理装置３から接続先候補を受信し、その受信した接続先候補からいずれか一つを選択することとなる。このようなステップを実行する制御部２３０は、接続先候補受信手段として機能する。尚、制御部２３０は、受信した上層端末が１つである場合には、選択する処理を実行しない。
【０１５３】
そして、制御部２３０は、その上層端末の下層端末として接続する（ステップＳ２４３）。つまり、制御部２３０は、コンテンツ配信装置１や他の端末装置２など、受信された接続先候補に接続することとなる。このようなステップを実行する制御部２３０は、接続手段として機能する。そして、制御部２３０は、接続管理装置３へトポロジ参加報告を送信し（ステップＳ２４４）、図９のステップＳ２１０に処理を移す。
【０１５４】
一方、ステップＳ２４１において、制御部２３０は、他の端末装置２や接続管理装置３から上層端末の候補を受信していないと判定した場合には（ステップＳ２４１：ＮＯ）、ステップＳ２５１に処理を移す。
【０１５５】
ステップＳ２５１において、制御部２３０は、上層端末からコンテンツパケットを受信したか否かを判定する。この処理において、制御部２３０は、ネットワークインタフェース２０４を介して、ステップＳ２４３において上層に接続された上層端末からコンテンツパケットを受信したか否かを判定することとなる。
【０１５６】
この処理において、制御部２３０は、上層端末からコンテンツパケットを受信したと判定した場合には（ステップＳ２５１：ＹＥＳ）、下層側の下層端末がある場合には、下層側の下層端末へパケットを転送する（ステップＳ２５２）。つまり、制御部２３０は、上層に接続されたコンテンツ配信装置又は別の上層端末装置からコンテンツデータを受信し、その受信されたコンテンツデータを、下層に接続された別の下層端末装置へ中継する制御を行うこととなる。このようなステップを実行する制御部２３０は、コンテンツ受信手段、コンテンツデータ中継制御手段として機能する。そして、制御部２３０は、リングバッファ２２０からコンテンツデータを取得してハードディスク装置２０３へ保存し、図９のステップＳ２１０に処理を移す。
【０１５７】
（コンテンツチャンネル変更処理）
次に、図９に示すステップＳ２０２で行うコンテンツチャンネル変更処理について、図１１及び図１２を参照して具体的に説明する。
【０１５８】
まず、図１１に示すように、端末装置２における制御部２３０は、ハードディスク装置２０３における接続履歴テーブルを参照し（ステップＳ５０１）、接続履歴テーブルにおいて、端末装置２自体に記憶されているか否かを判定する（ステップＳ５０２）。ここで、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置２が、接続履歴テーブルに記憶されているか否かを判定することとなる。つまり、制御部２３０は、接続履歴テーブルに記憶された端末装置のうち、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定することとなる。このようなステップを実行する制御部２３０は、端末装置記憶判定手段として機能する。
【０１５９】
この処理において、制御部２３０は、端末装置２自体に記憶されていると判定した場合には（ステップＳ５０２：ＹＥＳ）、コンテンツチャンネルに対応する端末装置を接続履歴テーブルから取得し（ステップＳ５０７）、ステップＳ５０８に処理を移す。
【０１６０】
このように、コンテンツデータの変更指示が行われた端末装置自体に変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されている場合には、他の端末装置との間における不要な問合せを行うことなく、接続先候補紹介端末装置として選択することができ、他の端末装置との間におけるアクセスの増大を回避することができる。
【０１６１】
一方、制御部２３０は、端末装置２自体に記憶されていないと判定した場合には（ステップＳ５０２：ＮＯ）、ステップＳ５０３に処理を移す。
【０１６２】
ステップＳ５０３において、制御部２３０は、上層及び下層に接続されている他の端末装置２に対して探索要求を行う。この探索要求には、変更指示されたコンテンツチャンネルと、中継ノード数の初期値とが少なくとも含まれている。つまり、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置が接続履歴テーブルに記憶されていないと判定された場合には、上層又は下層に接続されている他の端末装置２に、変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せ（探索要求）を行うこととなる。このようなステップを実行する制御部２３０は、端末装置問合手段として機能する。この処理が終了した場合には、ステップＳ５０４に処理を移す。
【０１６３】
ステップＳ５０４において、制御部２３０は、探索要求を行ってから一定時間が経過したか否かを判定する。
【０１６４】
この処理において、制御部２３０は、一定時間が経過したと判定した場合には（ステップＳ５０４：ＹＥＳ）、ステップＳ５０６に処理を移す。
【０１６５】
一方、制御部２３０は、一定時間が経過していないと判定した場合には（ステップＳ５０４：ＮＯ）、探索応答という端末装置の問合せが行われたコンテンツチャンネルに対応する端末装置を受信する探索応答受信処理を実行し（ステップＳ５０５）、再度、ステップＳ５０４に処理を移す。このようなステップを実行する制御部２３０は、端末装置受信手段として機能する。
【０１６６】
ステップＳ５０６において、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置を取得できたか否かを判定する。この処理において、制御部２３０は、ステップＳ５０５において探索要求に対応する探索応答が受信されたか否かによって、変更指示が行われたコンテンツチャンネルに対応する端末装置を取得できたか否かを判定することとなる。
【０１６７】
この処理において、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置を取得できたと判定した場合には（ステップＳ５０６：ＹＥＳ）、ステップＳ５０８に処理を移す。
【０１６８】
一方、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置を取得できてはないと判定した場合には（ステップＳ５０６：ＮＯ）、図１２のステップＳ５１７に処理を移す。
【０１６９】
ステップＳ５０８において、制御部２３０は、複数の端末装置を取得できたか否かを判定する。この処理において、制御部２３０は、ステップＳ５０５において探索要求に対応する探索応答が受信された端末装置の数によって、複数の端末装置を取得できたか否かを判定することとなる。
【０１７０】
この処理において、制御部２３０は、複数の端末装置を取得できたと判定した場合には（ステップＳ５０８：ＹＥＳ）、受信した複数の端末装置から、接続切断時間が最新の端末装置を、接続先紹介要求を行う端末装置として選択し（ステップＳ５０９）、図１２のステップＳ５１１に処理を移す。つまり、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていると判定された場合には、その端末装置を前記接続先候補紹介端末装置として選択し、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、他の端末装置において記憶された、変更指示が行われたコンテンツチャンネルに対応する端末装置を接続先候補紹介端末装置として選択することとなる。特に、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置から、接続時間が最も新しい時間である端末装置を、接続先候補紹介端末装置として選択することとなる。このようなステップを実行する制御部２３０は、接続先候補紹介端末装置選択手段として機能する。
【０１７１】
このように、複数の端末装置のうち、以前に接続されていた接続時間が最も新しい時間である端末装置を優先して接続先候補紹介端末装置として選択することができ、その端末装置が、変更指示が行われたコンテンツチャンネルに接続されているなど、接続先候補を紹介することに適した接続先候補紹介端末装置である可能性を高めることができる。
【０１７２】
一方、制御部２３０は、複数の端末装置を取得できてはないと判定した場合には（ステップＳ５０８：ＮＯ）、受信した一つの端末装置を、接続先紹介要求を行う端末装置として選択し（ステップＳ５１０）、図１２のステップＳ５１１に処理を移す。つまり、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていると判定された場合には、その端末装置を接続先候補紹介端末装置として選択し、変更指示が行われたコンテンツチャンネルに対応する端末装置が記憶されていないと判定された場合には、他の端末装置において記憶された、変更指示が行われたコンテンツチャンネルに対応する端末装置を接続先候補紹介端末装置として選択することとなる。このようなステップを実行する制御部２３０は、接続先候補紹介端末装置選択手段として機能する。
【０１７３】
図１２のステップＳ５１１において、制御部２３０は、接続先候補紹介端末装置として選択した端末装置２に接続要求を行う。この処理が終了した場合には、ステップＳ５１２に処理を移す。
【０１７４】
ステップＳ５１２において、制御部２３０は、接続先候補紹介端末装置に接続できたか否かを判定する。
【０１７５】
この処理において、制御部２３０は、接続先候補紹介端末装置に接続できていないと判定した場合には（ステップＳ５１２：ＮＯ）、接続先候補紹介端末装置として、未選択となっている端末装置２があるか否かを判定する（ステップＳ５２６）。そして、制御部２３０は、未選択となっている端末装置２があると判定した場合には（ステップＳ５２６：ＹＥＳ）、未選択の端末装置から接続切断時間が最新の端末装置を再度選択し（ステップＳ５２７）、再度、ステップＳ５１１に処理を移す。つまり、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置から、接続時間が最も新しい時間である端末装置を接続先候補紹介端末装置として選択することとなる。このようなステップを実行する制御部２３０は、接続先候補要求手段（第二接続先候補要求手段）として機能する。一方、制御部２３０は、未選択となっている端末装置２がないと判定した場合には（ステップＳ５２６：ＮＯ）、ステップＳ５１７に処理を移し、後述するように、接続管理装置３へ接続先の紹介要求を行うこととなる。
【０１７６】
一方、制御部２３０は、接続先候補紹介端末装置に接続できたと判定した場合には（ステップＳ５１２：ＹＥＳ）、接続先候補紹介端末装置へ接続先の紹介要求を行い（ステップＳ５１３）、ステップＳ５１４に処理を移す。この処理において、制御部２３０は、接続先候補紹介端末装置として選択した端末装置２に接続先候補の紹介を要求する接続先紹介要求を行う。この接続先紹介要求には、変更指示が行われたコンテンツチャンネルが少なくとも含まれている。つまり、制御部２３０は、選択された接続先候補紹介端末装置に、変更指示が行われたコンテンツチャンネルに対応する接続先候補を要求することとなる。このようなステップを実行する制御部２３０は、接続先候補要求手段（第二接続先候補要求手段）として機能する。
【０１７７】
ステップＳ５１４において、制御部２３０は、接続先紹介要求を行ってから一定時間が経過したか否かを判定する。
【０１７８】
この処理において、制御部２３０は、一定時間が経過したと判定した場合には（ステップＳ５１４：ＹＥＳ）、ステップＳ５１６に処理を移す。
【０１７９】
一方、制御部２３０は、一定時間が経過していないと判定した場合には（ステップＳ５１４：ＮＯ）、接続先候補を受信する接続先候補受信処理を実行し（ステップＳ５１５）、再度、ステップＳ５１４に処理を移す。つまり、制御部２３０は、他の端末装置２から接続先候補を受信することとなる。このようなステップを実行する制御部２３０は、接続先候補受信手段として機能する。
【０１８０】
そして、ステップＳ５１６において、制御部２３０は、接続先候補紹介端末装置から接続先候補を受信できたか否かを判定する。
【０１８１】
この処理において、制御部２３０は、接続先候補を受信できたと判定した場合には（ステップＳ５１６：ＹＥＳ）、ステップＳ５１８に処理を移す。
【０１８２】
一方、制御部２３０は、接続先候補を受信できていないと判定した場合には（ステップＳ５１６：ＮＯ）、接続先候補紹介端末装置との接続を切断し（ステップＳ５２８）、ステップＳ５１７に処理を移す。
【０１８３】
ステップＳ５１７において、制御部２３０は、接続管理装置へ接続先紹介要求を行い、接続先候補を受信する接続先候補受信処理を実行し（ステップＳ５２９）、Ｓ５２０へ処理を移す。つまり、制御部２３０は、接続先候補紹介端末装置から接続先候補が受信されなかった場合には、変更指示が行われたコンテンツチャンネルに対応する接続先候補を接続管理装置３に要求することとなる。このようなステップを実行する制御部２３０は、第一接続先候補要求手段として機能する。
【０１８４】
ステップＳ５１８において、制御部２３０は、接続先候補紹介端末装置と接続先候補とが同じであるか否かを判定する。この処理において、制御部２３０は、ステップＳ５１１において接続要求を行った接続先候補紹介端末装置と、ステップＳ５１５において受信した接続先候補とが同じであるか否かを判定することとなる。
【０１８５】
この処理において、制御部２３０は、接続先候補紹介端末装置と接続先候補とが同じであると判定した場合には（ステップＳ５１８：ＹＥＳ）、後述するステップＳ５１９からステップＳ５２０を実行することなく、ステップＳ５２１に処理を移す。
【０１８６】
一方、制御部２３０は、接続先候補紹介端末装置と接続先候補とが同じではないと判定した場合には（ステップＳ５１８：ＮＯ）、ステップＳ５１９に処理を移す。
【０１８７】
ステップＳ５１９において、制御部２３０は、接続先候補紹介端末装置との接続を切断する接続切断処理を実行する。そして、制御部２３０は、接続先候補として受信した端末装置に対して、上層の端末装置としての接続要求を行い、接続する（ステップＳ５２０）。このように、制御部２３０は、コンテンツ配信装置１又は他の端末装置２など、受信された接続先候補に接続することとなる。このようなステップを実行する制御部２３０は、接続手段として機能する。この処理が終了した場合には、ステップＳ５２１に処理を移す。
【０１８８】
ステップＳ５２１において、制御部２３０は、接続管理装置３へトポロジ報告を送信し（ステップＳ５２１）、変更指示が行われたコンテンツチャンネルでの接続が完了すると、変更前のコンテンツチャンネルで上層及び下層に接続されている端末装置との接続を切断する。この処理が終了した場合には、本サブルーチンを終了する。
【０１８９】
（探索要求制御処理）
次に、図９に示すステップＳ２２２で行う探索要求制御処理について、図１３を参照して具体的に説明する。
【０１９０】
まず、図１３に示すように、端末装置２における制御部２３０は、他の端末装置２から探索要求を受信したか否かを判定する（ステップＳ５３１）。つまり、制御部２３０は、所定のコンテンツチャンネルに対応する端末装置の問合せを他の端末装置から受信することとなる。このようなステップを実行する制御部２３０は、端末装置問合受信手段として機能する。
【０１９１】
この処理において、制御部２３０は、探索要求を受信したと判定した場合には（ステップＳ５３１：ＹＥＳ）、探索要求元となる端末装置２を記憶する（ステップＳ５３２）。そして、制御部２３０は、ハードディスク装置２０３における接続履歴テーブルを参照し（ステップＳ５３３）、接続履歴テーブルにおいて、端末装置２自体が探索要求を満たすか否かを判定する（ステップＳ５３４）。ここで、制御部２３０は、探索要求に含まれるコンテンツチャンネル、即ち、変更指示が行われたコンテンツチャンネルに対応する端末装置２が、接続履歴テーブルに記憶されているか否かによって、探索要求を満たすか否かを判定する。つまり、制御部２３０は、端末装置の問合せを受信した場合には、接続履歴テーブルに記憶された端末装置のうち、所定のコンテンツチャンネルに対応する端末装置が記憶されているか否かを判定することとなる。このようなステップを実行する制御部２３０は、端末装置記憶判定手段として機能する。
【０１９２】
この処理において、制御部２３０は、端末装置２自体が探索要求を満たすと判定した場合には（ステップＳ５３４：ＹＥＳ）、ステップＳ５３５に処理を移す。
【０１９３】
一方、制御部２３０は、端末装置２自体が探索要求を満たさないと判定した場合には（ステップＳ５３４：ＮＯ）、ステップＳ５３６に処理を移す。
【０１９４】
また、制御部２３０は、探索要求を受信していないと判定した場合には（ステップＳ５３２：ＮＯ）、探索要求ではなく、探索要求に対応する探索応答であると判定し、ステップＳ５３５に処理を移す。
【０１９５】
ステップＳ５３５において、制御部２３０は、探索要求に対応する探索応答を通知する。この処理において、制御部２３０は、ステップＳ５３２において記憶した端末装置２に対して、探索要求に対応する探索応答を通知する。この探索応答は、端末装置２自体において判定された探索応答か、他の端末装置において判定され、通知されてきた探索応答である。このように、制御部２３０は、探索要求という変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを受信した場合において、所定のコンテンツチャンネルに対応する端末装置が記憶されていると判定されたとき、又は、端末装置の問合せ結果を受信した場合には、端末装置の問合せを行った端末装置に通知することとなる。つまり、制御部２３０は、こととなる。このようなステップを実行する制御部２３０は、端末装置通知手段として機能する。
【０１９６】
ステップＳ５３６において、制御部２３０は、最大中継ノード数であるか否かを判定する。この処理において、制御部２３０は、探索要求に含まれる中継ノード数と、ハードディスク装置２０３に予め記憶（設定）されている最大中継ノード数と、を読み出し、中継ノード数が最大中継ノード数であるか否かを判定することとなる。つまり、制御部２３０は、計数された問合せの階層数が所定数以上となったか否かを判定することとなる。このようなステップを実行する制御部２３０は、問合階層数判定手段として機能する。
【０１９７】
この処理において、制御部２３０は、最大中継ノード数であると判定した場合には（ステップＳ５３６：ＹＥＳ）、本サブルーチンを終了する。つまり、制御部２３０は、探索要求という変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを受信した場合において、そのコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、計数された問合せの階層数が最大中継ノード数（所定数）以上となったと判定されたことを条件に、他の端末装置に対する問合せを禁止する制御を行うこととなる。このようなステップを実行する制御部２３０は、端末装置問合手段として機能する。
【０１９８】
一方、制御部２３０は、最大中継ノード数ではないと判定した場合には（ステップＳ５３６：ＮＯ）、中継ノード数をカウントする処理を実行し（ステップＳ５３８）、探索要求を次の端末装置２に送信し（ステップＳ５３９）、本サブルーチンを終了する。このように、制御部２３０は、探索要求という変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを行った階層数を計数することとなる。このようなステップを実行する制御部２３０は、問合階層数計数手段として機能する。そして、制御部２３０は、探索要求という変更指示が行われたコンテンツチャンネルに対応する端末装置の問合せを受信した場合において、そのコンテンツチャンネルに対応する端末装置が記憶されていないと判定されたときには、計数された問合せの階層数が最大中継ノード数（所定数）以上となっていないと判定されたことを条件に、上層又は下層に接続されている他の端末装置２に、端末装置の問合せを行うこととなる。このようなステップを実行する制御部２３０は、端末装置問合手段として機能する。
【０１９９】
このように、以前に接続された端末装置とコンテンツチャンネルとが対応して記憶されており、変更指示が行われたコンテンツチャンネルに対応する端末装置に接続先候補を要求することによって、コンテンツチャンネルの変更に伴う端末装置と接続管理装置との間におけるアクセスの増大を回避することができる。
【０２００】
また、所定のコンテンツチャンネルに対応する端末装置の問合せを受けた端末装置自体に所定のコンテンツチャンネルに対応する端末装置が記憶されている場合には、他の端末装置との間における不要な問合せを行うことなく、接続先候補紹介端末装置を通知することができ、他の端末装置との間におけるアクセスの増大を回避することができる。
【０２０１】
また、所定のコンテンツチャンネルに対応する端末装置が記憶されていない場合であっても、問合せの階層数が所定数以上となることがなく、過剰な問合せの増大を回避することができる。
【０２０２】
（接続先紹介要求制御処理）
次に、図１０に示すステップＳ２３２で行う接続先紹介要求制御処理について、図１４を参照して具体的に説明する。
【０２０３】
まず、図１４に示すように、端末装置２における制御部２３０は、別のコンテンツチャンネルのツリーに接続されているか否かを判定する（ステップＳ５４１）。この処理において、制御部２３０は、受信した接続先紹介要求に含まれ、変更指示が行われたコンテンツチャンネルを読み出し、そのコンテンツチャンネルに基づいて、別のコンテンツチャンネルのツリーに接続されているか否かを判定することとなる。つまり、制御部２３０は、続先候補を要求された場合には、その接続先候補を要求された端末装置２自体が、その要求におけるコンテンツチャンネルに対応する端末装置であるか否かを判定することとなる。このようなステップを実行する制御部２３０は、コンテンツチャンネル接続判定手段として機能する。
【０２０４】
この処理において、制御部２３０は、別のコンテンツチャンネルのツリーに接続されていると判定した場合には（ステップＳ５４１：ＹＥＳ）、接続先紹介要求があった問合せ端末装置に対してエラー通知を行い（ステップＳ５４６）本サブルーチンを終了する。これによって、接続先紹介要求を行った端末装置２に対して、今現在接続されているツリーが、変更指示のあったコンテンツチャンネルのツリーではなく、接続先を紹介できない旨を通知することができる。
【０２０５】
一方、制御部２３０は、別のコンテンツチャンネルのツリーに接続されていないと判定した場合、即ち、変更指示が行われたコンテンツチャンネルのツリーに接続されていると判定した場合には（ステップＳ５４１：ＮＯ）、ステップＳ５４２に処理を移す。
【０２０６】
ステップＳ５４２において、制御部２３０は、本端末装置２の下層に接続可能であるか否かを判定する。この処理において、制御部２３０は、端末装置２自体の下層に端末装置２を接続可能な状態であるか否かを判定する。つまり、制御部２３０は、接続先候補を要求された場合において、その接続先候補を要求された端末装置２自体が、その要求におけるコンテンツチャンネルに対応する端末装置であると判定されたときには、接続先候補を要求された端末装置２自体に接続可能であるか否かを判定することとなる。このようなステップを実行する制御部２３０は、接続判定手段として機能する。
【０２０７】
この処理において、制御部２３０は、本端末装置２の下層に接続可能であると判定した場合には（ステップＳ５４２：ＹＥＳ）、その端末装置２を接続先候補として選択し、ステップＳ５４３に処理を移す。つまり、制御部２３０は、接続が可能であると判定された場合には、その接続先候補の紹介を要求された端末装置２自体を接続先候補として選択することとなる。このようなステップを実行する制御部２３０は、接続先候補選択手段（第二接続先候補選択手段）として機能する。
【０２０８】
一方、制御部２３０は、本端末装置２の下層に接続可能ではないと判定した場合には（ステップＳ５４２：ＮＯ）、ステップＳ５４４に処理を移す。
【０２０９】
ステップＳ５４４において、制御部２３０は、上層及び下層に接続されている端末装置２に対して、接続先候補を探索するための接続先探索要求を送信し、ステップＳ５４５に処理を移す。つまり、制御部２３０は、端末装置２自体に接続が可能ではないとステップＳ５４２において判定された場合には（ステップＳ５４２：ＮＯ）、接続が可能である端末装置の問合せを上層又は下層の端末装置２に行うこととなる。このようなステップを実行する制御部２３０は、接続可能端末装置問合手段として機能する。
【０２１０】
ステップＳ５４５において、制御部２３０は、一定時間内に接続先探索要求に対応する応答が返ってきたか否かを判定する。この処理において、制御部２３０は、接続先探索要求を送信した上層及び下層に接続されている端末装置２から、それに対応する応答が一定時間内に返ってきたか否かを判定することとなる。
【０２１１】
この処理において、制御部２３０は、一定時間内に接続先探索要求に対応する応答が返ってきたと判定した場合には（ステップＳ５４５：ＹＥＳ）、その応答に含まれる端末装置２を接続先候補として選択し、ステップＳ５４３に処理を移す。つまり、制御部２３０は、問合せが行われた接続が可能である端末装置２を接続先候補として選択することとなる。このようなステップを実行する制御部２３０は、接続先候補選択手段（第二接続先候補選択手段）として機能する。
【０２１２】
一方、制御部２３０は、一定時間内に接続先探索要求に対応する応答が返ってきていない、又は、接続先候補がない旨の応答が返ってきた場合には（ステップＳ５４５：ＮＯ）、接続先紹介要求があった問合せ端末装置に対してエラー通知を行い（ステップＳ５４６）本サブルーチンを終了する。これによって、接続先紹介要求を行った端末装置２に対して、今現在接続されているツリーが、変更指示のあったコンテンツチャンネルのツリーではなく、接続先を紹介できない旨を通知することができる。
【０２１３】
ステップＳ５４３において、制御部２３０は、接続先紹介要求を行った問合せ端末装置に対して、ステップＳ５４２又はステップＳ５４５において取得した接続先候補を通知する。このようなステップを実行する制御部２３０は、接続先候補通知手段（第二接続先候補通知手段）として機能する。
【０２１４】
このように、接続先候補端末装置が要求されたコンテンツチャンネルに対応する階層構造に接続されているか否かを判定することができ、コンテンツチャンネルに対応する接続先候補を紹介する可能性を判定することができる。また、接続先候補端末装置がコンテンツチャンネルに対応する階層構造に接続されており、接続先候補端末装置自体に接続が可能である場合には、その接続先候補を迅速にかつ確実に紹介することができる。一方、接続先候補端末装置がコンテンツチャンネルに対応する階層構造に接続されているが、接続先候補端末装置自体に接続が可能ではない場合には、上層又は下層の端末装置に問合せを行い、その問合せの結果、その接続先候補を確実に紹介することができる。
【０２１５】
（接続管理装置３の処理フローの説明）
次に、接続管理装置３の更に具体的な動作について、図１５を参照して説明する。図１５は接続管理装置３における処理全体を示すフローチャートである。
【０２１６】
図１５に示すように、接続管理装置３の電源がＯＮになると、接続管理装置３では、ＣＰＵ３０２は、主記憶装置３０５やハードディスク装置３０３のアクセス許可、作業領域を初期化等の初期設定処理を実行し（ステップＳ３００）、各プログラム３１７〜３２０をＣＰＵ３０２による実行状態とし、制御部３３０としての機能を動作させた後、ステップＳ３２１に処理を移す。
【０２１７】
ステップＳ３２１において、制御部３３０は、接続先紹介要求ありか否かを判定する。この処理において、制御部３３０は、ネットワークインタフェース３０４を介して端末装置２から接続先紹介要求があったか否かを判定することとなる。
【０２１８】
この処理において、制御部３３０は、接続先紹介要求ありと判定した場合には（ステップＳ３２１：ＹＥＳ）、トポロジデータベースから接続先候補となる端末装置情報を取得する（ステップＳ３２２）。つまり、制御部３３０は、端末装置２から送信された接続先紹介要求を受信することとなる。また、制御部３３０は、接続先紹介要求を受信したときに、ハードディスク装置３０３におけるトポロジデータベースを参照し、接続先候補要求に含まれるコンテンツチャンネルに対応して接続可能な接続先候補を選択する。このようなステップを実行する制御部３３０は、接続先紹介要求受信手段、第一接続先候補選択手段として機能する。
【０２１９】
そして、制御部３３０は、要求元装置へ接続先候補を返信し（ステップＳ３２３）、ステップＳ３１０に処理を移す。つまり、制御部３３０は、選択された接続先候補を、接続先候補要求を送信した端末装置へ通知することとなる。このようなステップを実行する制御部３３０は、第一接続先候補通知手段として機能する。
【０２２０】
一方、ステップＳ３２１において、制御部３３０は、接続先紹介要求なしと判定した場合には（ステップＳ３２１：ＮＯ）、ステップＳ３３１に処理を移す。
【０２２１】
ステップＳ３３１において、制御部３３０は、トポロジ参加報告ありか否かを判定する。この処理において、制御部３３０は、ネットワークインタフェース３０４を介して端末装置２からトポロジ参加報告ありか否かを判定することとなる。
【０２２２】
この処理において、制御部３３０は、トポロジ参加報告ありと判定した場合には（ステップＳ３３１：ＹＥＳ）、トポロジの変動情報を、ハードディスク装置３０３におけるトポロジデータベースへ登録し（ステップＳ３３２）、ステップＳ３１０に処理を移す。このようなステップを実行する制御部３３０は、接続状態情報記憶手段として機能する。
【０２２３】
一方、ステップＳ３３１において、制御部３３０は、トポロジ参加報告なしと判定した場合には（ステップＳ３３１：ＮＯ）、ステップＳ３４１に処理を移す。
【０２２４】
ステップＳ３４１において、制御部３３０は、配信完了通知ありか否かを判定する。この処理において、制御部３３０は、ネットワークインタフェース３０４を介してコンテンツ配信装置１から配信完了通知があったか否かを判定することとなる。
【０２２５】
この処理において、制御部３３０は、配信完了通知ありと判定した場合には（ステップＳ３４１：ＹＥＳ）、ハードディスク装置３０３におけるトポロジデータベースからトポロジ情報を削除し（ステップＳ３４２）、ステップＳ３１０に処理を移す。このようなステップを実行する制御部３３０は、接続状態情報記憶手段として機能する。
【０２２６】
一方、ステップＳ３４１において、制御部３３０は、配信完了通知なしと判定した場合には（ステップＳ３４１：ＮＯ）、ステップＳ３１０に処理を移す。
【０２２７】
ステップＳ３１０において、制御部３３０は、接続管理装置３のサービスが終了したか否かを判定し、接続管理装置３のサービスが終了したと判定した場合には、本処理を終了する一方、接続管理装置３のサービスが終了していないと判定した場合には、ステップＳ３０１から繰り返し処理を実行することとなる。
【０２２８】
（第二の実施形態）
尚、本実施形態においては、接続先候補を紹介させる端末装置が複数ある場合には、それら複数の端末装置から、接続時間が最も新しい時間である端末装置を接続先候補紹介端末装置として選択したが、これに限らず、例えば、接続時間に関することなく、ランダムに選択してもよい。つまり、制御部２３０は、変更指示が行われたコンテンツチャンネルに対応する端末装置として複数の端末装置がある場合には、複数の端末装置からランダムに接続先候補紹介端末装置を選択することとなる。このようなステップを実行する制御部２３０は、接続先候補紹介端末装置選択手段として機能する。これによって、複数の端末装置がある場合であっても、それら複数の端末装置からランダムにいずれかを選択することができる。
【０２２９】
（第三の実施形態）
また、例えば、最初に受信された端末装置を接続先候補紹介端末装置として選択するように構成してもよい。具体的には、図１６に示すように、一定時間経過していない場合において（ステップＳ５０４：ＮＯ）、探索応答受信処理を行った後に（ステップＳ５０５）、探索応答を受信したか否かを判定し（ステップＳ５２６）、探索応答を受信したと判定した場合には（ステップＳ５２６：ＹＥＳ）、その受信した探索応答に含まれる端末装置を接続先候補紹介端末装置として選択する（ステップＳ５２７）。これによって、より迅速に接続先候補紹介端末装置として選択することができる。尚、一定時間経過した場合には（ステップＳ５０４：ＹＥＳ）、探索応答受信処理を行った結果、探索応答を受信しなかった場合であり（ステップＳ５２６：ＮＯ）、上述したステップＳ５１７に処理を移すこととなる。
【０２３０】
（その他の実施形態）
尚、本実施形態においては、計数された中継ノード数が最大中継ノード数以上となった場合に、探索要求の中継を禁止させたが、これに限らず、例えば、最大中継ノード数を設けなくてもよく、中継時間等を計数し、その中継時間によって、探索要求の中継を禁止させてもよい。また、探索要求の最大中継ノード数が２以上でなくても１であってもよく、この場合においては、探索要求を受信することはあっても、探索要求を中継することはない。
【０２３１】
尚、本実施形態においては、接続先候補の問合せを上層及び下層に対して一層の端末装置のみに対して行い、接続先候補の問合せの中継を行わなかったが、その中継を行うようにしてもよい。
【０２３２】
尚、本実施形態においては、接続先候補を受信できなかった場合には、接続管理装置３に接続先候補の紹介を要求したが、これに限らず、例えば、接続管理装置３に接続先候補の紹介を要求しなくても問題ない。
【０２３３】
尚、本実施形態においては、コンテンツ配信装置１、複数の端末装置２、接続管理装置３を含むコンテンツ配信システムＳを構成したが、これに限らず、例えば、別の装置を備えていてもよく、また、接続管理装置３を備えない構成としてもよい。
【０２３４】
以上、本発明の実施の形態のうちのいくつかを図面に基づいて詳細に説明したが、これらは例示であり、前記［発明の開示］の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【図面の簡単な説明】
【０２３５】
【図１】本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。
【図２】本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。
【図３】本実施形態に係るコンテンツ配信システムＳの概要構成例を示す図である。
【図４】コンテンツ配信装置を示す機能ブロック図である。
【図５】端末装置を示す機能ブロック図である。
【図６】接続履歴テーブルを示す説明図である。
【図７】接続管理装置を示す機能ブロック図である。
【図８】コンテンツ配信装置の制御部が行う処理を示すフローチャートである。
【図９】端末装置の制御部が行う処理を示すフローチャートである。
【図１０】端末装置の制御部が行う処理を示すフローチャートである。
【図１１】端末装置の制御部が行う処理を示すフローチャートである。
【図１２】端末装置の制御部が行う処理を示すフローチャートである。
【図１３】端末装置の制御部が行う処理を示すフローチャートである。
【図１４】端末装置の制御部が行う処理を示すフローチャートである。
【図１５】接続管理装置の制御部が行う処理を示すフローチャートである。
【図１６】端末装置の制御部が行う処理を示すフローチャートである。
【符号の説明】
【０２３６】
Ｓ  コンテンツ配信システム
１  コンテンツ配信装置
２  端末装置
３  接続管理装置
１３０，２３０，３３０  制御部
【図１】
2008219430.tif 000003
【図２】
2008219430.tif 000004
【図３】
2008219430.tif 000005
【図４】
2008219430.tif 000006
【図５】
2008219430.tif 000007
【図６】
2008219430.tif 000008
【図７】
2008219430.tif 000009
【図８】
2008219430.tif 000010
【図９】
2008219430.tif 000011
【図１０】
2008219430.tif 000012
【図１１】
2008219430.tif 000013
【図１２】
2008219430.tif 000014
【図１３】
2008219430.tif 000015
【図１４】
2008219430.tif 000016
【図１５】
2008219430.tif 000017
【図１６】
2008219430.tif 000018