ところで、インターネットは、様々なインターネット接続サービス提供者としてのISP(Internet Service Provider)により構築されるネットワークの集合体としてとらえることができ、各ISP(ISPのネットワーク)は、インターネットエクスチェンジによって相互に接続されるようになっている。そして、上記コンテンツ配信システムにおける各ノード装置は、何れかのISPに属することになり、1のノード装置から他のノード装置に対してコンテンツデータを送信する場合、これらのノード装置が属するISPが異なれば(言い換えれば、ネットワーク接続グループが異なれば)、当該コンテンツデータは、インターネットエクスチェンジを介して(越えて)伝送されることになる。
このようにコンテンツデータが、インターネットエクスチェンジを介して(越えて)伝送される場合、長いネットワーク経路を経由する場合が多くなる(言い換えれば、HOP数が多くなる)ため、当該コンテンツデータを構成するデータパケットの欠落や遅延が生じる確率が高くなるという問題が生じるが、従来のコンテンツ配信システムにおいては、このような問題が考慮されることなく、ノード装置間のトポロジーが構築されていた。
本発明は、以上の問題等に鑑みてなされたものであり、ISP等のネットワーク接続グループが異なる複数のノード装置が放送システムに参加する場合であっても、データパケットの欠落や遅延を低減させるようにトポロジーを構築することが可能な接続管理装置、接続管理方法、接続管理用プログラム、放送システム、及び放送方法を提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、複数の第1のネットワークを含む第2のネットワーク上に設けられたオーバーレイネットワークを介して放送情報を放送する放送局と、放送された放送情報を取得する複数のノード装置と、を含む放送システム内における各前記ノード装置及び前記放送局相互間の接続状態を管理する接続管理装置において、既に前記オーバーレイネットワークに参加している前記ノード装置の所在を示す所在情報と、前記ノード装置が接続している前記第1のネットワークを示すネットワーク情報と、を対応付けて記憶する記憶手段と、前記オーバーレイネットワークへ参加する前記ノード装置である新ノード装置から、参加の際に前記新ノード装置が接続すべき接続先となる前記ノード装置の所在を示す所在情報を要求する旨の参加要求情報を受信する参加要求情報受信手段と、前記新ノード装置の前記ネットワーク情報を取得するネットワーク情報取得手段と、前記記憶手段に記憶された前記ネットワーク情報と、前記ネットワーク情報取得手段により取得されたネットワーク情報と、に基づいて、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定する接続先決定手段と、前記接続先決定手段により決定された接続先の前記所在情報を前記記憶手段から読み出し、接続先情報として前記新ノード装置に送信する接続先情報送信手段と、
を備えることを特徴とする。
この発明によれば、オーバーレイネットワークへ参加するノード装置である新ノード装置から、当該オーバーレイネットワークへの参加の際に当該新ノード装置が接続すべき接続先となるノード装置の所在を示す所在情報を要求する旨の参加要求情報を受信したとき、当該新ノード装置が接続している第1のネットワークを示すネットワーク情報を取得し、当該取得したネットワーク情報と、既に参加している各ノード装置が接続している第1のネットワークを示すネットワーク情報と、に基づいて、接続している第1のネットワークが新ノード装置と同一のノード装置を接続先として決定して、当該決定した接続先の所在情報を接続先情報として新ノード装置に送信するように構成したので、ISP等の第1のネットワークが異なる複数のノード装置がオーバーレイネットワークに参加する場合であっても、放送情報がインターネットエクスチェンジを介して(越えて)伝送されることが低減するようにトポロジーを構築することができ、ひいては、データパケットの欠落や遅延を低減させることができる。
請求項2に記載の発明は、請求項1に記載の接続管理装置において、前記記憶手段は、前記放送局の所在を示す所在情報と、前記複数のネットワークのうち前記放送局が接続している前記第1のネットワークを示すネットワーク情報と、を対応付けて更に記憶し、前記接続先決定手段は、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が所在を示す前記ノード装置又は前記放送局を、前記接続先として決定すること特徴とする。
請求項3に記載の発明は、請求項1又は2に記載の接続管理装置において、前記記憶手段は、既に前記オーバーレイネットワークに参加している前記ノード装置が、いずれのネットワーク接続サービス提供者の前記第1のネットワークを介して前記第2のネットワークに接続されているかを示す提供者情報を、前記ネットワーク情報として記憶し、前記ネットワーク情報取得手段は、前記新ノード装置の提供者情報を取得し、更に前記接続先決定手段は、前記記憶手段に記憶された前記提供者情報と、取得した前記提供者情報と、に基づいて、前記新ノード装置の前記提供者情報と同一の前記提供者情報に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定すること特徴とする。
請求項4に記載の発明は、請求項1から3のいずれか一項に記載の接続管理装置において、前記第1のネットワークは、AS(Autonomous System)又はISP(Internet Service Provider)のネットワークであり、前記第2のネットワークは、インターネットであり、前記記憶手段は、前記ノード装置が接続しているAS又はISPのネットワークに割り当てられたAS番号を、前記ネットワーク情報として記憶し、前記ネットワーク情報取得手段は、前記新ノード装置に対応する前記AS番号を取得し、前記接続先決定手段は、前記記憶手段に記憶された前記AS番号と、前記取得したAS番号と、に基づいて、前記新ノード装置の前記AS番号と同一の前記AS番号に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定すること特徴とする。
請求項5に記載の発明は、請求項1から4のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークにおける前記ノード装置の接続形態は、階層構造を形成するように各前記ノード装置が接続された形態であり、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に、前記各ノード装置及び放送局夫々の下位階層に接続されている前記ノード装置を示す下位装置情報を夫々記憶する下位装置情報記憶手段と、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に、前記各ノード装置及び放送局の下位階層に接続可能な前記ノード装置の数を示す接続許容数を夫々記憶する接続許容数記憶手段と、を更に備え、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に複数記憶されているとき、前記接続先決定手段は、記憶されている各前記下位装置情報に基づき、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報である前記放送局又は複数の前記ノード装置のいずれかの中から、現在下位階層に接続されている前記ノード装置の数が、対応して記憶されている各前記接続許容数に達していない前記ノード装置又は前記放送局のいずれかを前記接続先として決定することを特徴とする。
この発明によれば、例えば、接続している第1のネットワークが新ノード装置と同一のノード装置等が複数存在する場合であっても、これらのノード装置等の中から、現在下位階層に接続されているノード装置の数が各接続許容数に達していないノード装置又は放送局のいずれかを前記接続先として決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項6に記載の発明は、請求項1から5のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークにおける前記ノード装置の接続形態は、階層構造を形成するように各前記ノード装置が接続された形態であり、他の前記ノード装置へ前記放送情報を転送する転送能力を、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に夫々記憶する転送能力記憶手段を更に備え、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に複数記憶されているとき、又は、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に記憶されていないとき、のいずれか一方の場合に、前記接続先決定手段は、記憶されている各前記転送能力に基づいて前記接続先を決定することを特徴とする。
この発明によれば、例えば、接続している第1のネットワークが新ノード装置と同一のノード装置等が複数存在する場合、又は、接続している第1のネットワークが新ノード装置と同一のノード装置等が存在しない場合であっても、複数のノード装置等の中から、これらの各転送能力に基づいて、例えば、前記転送能力が予め設定されている基準能力値以上であるノード装置又は放送局のいずれかを前記接続先として決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項7に記載の発明は、請求項6に記載の接続管理装置において、前記接続先決定手段は、前記転送能力が予め設定されている基準能力値以上である前記ノード装置又は前記放送局を前記接続先として決定することを特徴とする。
請求項8に記載の発明は、請求項1から7のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークにおける前記ノード装置の接続形態は、階層構造を形成するように各前記ノード装置が接続された形態であり、前記階層構造において位置する階層を、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に夫々記憶する階層位置記憶手段を更に備え、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に複数記憶されているとき、又は、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に記憶されていないとき、のいずれか一方の場合に、前記接続先決定手段は、前記階層位置記憶手段に記憶された前記階層に基づいて前記接続先を決定することを特徴とする。
この発明によれば、例えば、接続している第1のネットワークが新ノード装置と同一のノード装置等が複数存在する場合、又は、接続している第1のネットワークが新ノード装置と同一のノード装置等が存在しない場合であっても、複数のノード装置等の中から、これらの各階層に基づいて前記接続先を決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項9に記載の発明は、請求項1から8のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークにおける前記ノード装置の接続形態は、階層構造を形成するように各前記ノード装置が接続された形態であり、前記オーバーレイネットワークに参加している参加時間を各前記ノード装置毎に記憶する参加時間記憶手段を更に備え、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に複数記憶されているとき、又は、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が前記記憶手段に記憶されていないとき、のいずれか一方の場合に、前記接続先決定手段は、前記参加時間記憶手段に記憶された前記参加時間に基づいて前記接続先を決定することを特徴とする。
この発明によれば、例えば、接続している第1のネットワークが新ノード装置と同一のノード装置等が複数存在する場合、又は、接続している第1のネットワークが新ノード装置と同一のノード装置等が存在しない場合であっても、複数のノード装置等の中から、これらの各参加時間に基づいて前記接続先を決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項10に記載の発明は、請求項1から9のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークにおける前記ノード装置の接続形態は、階層構造を形成するように各前記ノード装置が接続された形態であり、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に、前記各ノード装置又は放送局の下位階層に既に接続されている前記ノード装置を示す下位装置情報を夫々記憶する下位装置情報記憶手段と、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に、前記各ノード装置及び放送局の下位階層に接続可能な前記ノード装置の数を示す接続許容数を夫々記憶する接続許容数記憶手段と、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が、対応して記憶されている前記接続許容数に達しているとき、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の中から現在の前記接続先を移動させるノード装置を移動装置として決定する移動装置決定手段と、前記決定された移動装置に対する前記接続先を新たに決定する移動先決定手段と、前記決定した前記移動先の前記所在情報を前記記憶手段から読み出し、移動先情報として前記決定された移動装置に送信する移動先情報送信手段と、を更に備えることを特徴とする。
この発明によれば、上記接続先として決定されたノード装置又は放送局の下位階層に接続されているノード装置の数が接続許容数に達している場合であっても、当該下位階層に接続されているノード装置の中から現在の前記接続先を移動させるノード装置を移動装置として決定し、移動させるように構成したので、放送情報がインターネットエクスチェンジを介して(越えて)伝送されることが低減するようにトポロジーを効率よく構築することができ、ひいては、データパケットの欠落や遅延を低減させることができる。
請求項11に記載の発明は、請求項10に記載の接続管理装置において、下流側に配置されている前記ノード装置の数を示す下流装置数を前記ノード装置毎に記憶する下流装置数記憶手段を更に備え、前記移動装置決定手段は、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が複数ある場合には、前記下流装置数記憶手段に記憶された下流装置数に基づいて、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている複数のノード装置の中から、1つの前記ノード装置を前記移動装置として決定することを特徴とする。
この発明によれば、接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が複数ある場合には、当該複数のノード装置の中から、各下流装置数に基づいて、1つのノード装置を移動装置として決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項12に記載の発明は、請求項10又は11に記載の接続管理装置において、他の前記ノード装置へ前記放送情報を転送する転送能力を、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に夫々記憶する転送能力記憶手段を更に備え、前記移動装置決定手段は、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が複数ある場合には、前記転送能力記憶手段に記憶された転送能力に基づいて、記接続先として決定されたノード装置又は放送局の下位階層に接続されている複数のノード装置の中から、1つの前記ノード装置を前記移動装置として決定することを特徴とする。
この発明によれば、接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が複数ある場合には、当該複数のノード装置の中から、各転送能力に基づいて、1つのノード装置を移動装置として決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項13に記載の発明は、請求項10から12のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークに参加している参加時間を各前記ノード装置毎に記憶する参加時間記憶手段を備え、前記移動装置決定手段は、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が複数ある場合には、前記参加時間記憶手段に記憶された参加時間に基づいて、前記接続先として決定されたノード装置又は放送局の下位階層に接続されている複数のノード装置の中から、1つの前記ノード装置を前記移動装置として決定することを特徴とする。
この発明によれば、接続先として決定されたノード装置又は放送局の下位階層に接続されている前記ノード装置の数が複数ある場合には、当該複数のノード装置の中から、各参加時間に基づいて、1つのノード装置を移動装置として決定するように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項14に記載の発明は、請求項10から13のいずれか一項に記載の接続管理装置において、下流側に配置されているノード装置の数を示す下流装置数を前記ノード装置毎に記憶する下流装置数記憶手段と、前記新ノード装置が、前記接続先決定手段により決定された前記ノード装置の下位階層に接続され、かつ、前記移動装置が、前記移動先決定手段により決定された前記ノード装置の下位階層に接続された場合に、前記下流装置数記憶手段に記憶された下流装置数に基づいて、前記移動装置を再度移動させるか否かを判断する再移動判断手段と、前記再移動判断手段により再度移動させると判断された場合には、前記新ノード装置の前記所在情報を、前記記憶手段から読み出して前記移動装置に送信する再移動先情報送信手段と、
を更に備えたことを特徴とする。
この発明によれば、上記新ノード装置が、上記接続先決定手段により決定された前記ノード装置の下位階層に接続され、かつ、前記移動装置が前記移動先決定手段により決定された前記ノード装置の下位階層に接続された場合に、当該移動装置の下位階層に接続された下流装置数に基づいて、当該移動装置を再度移動させるか否かを判断し、再移動させるように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項15に記載の発明は、請求項10から13のいずれか一項に記載の接続管理装置において、前記階層構造において位置する階層を、既に前記オーバーレイネットワークに参加している各前記ノード装置及び前記放送局毎に夫々記憶する階層位置記憶手段と、前記新ノード装置が、前記接続先決定手段により決定された前記ノード装置の下位階層に接続され、かつ、前記移動装置が、前記移動先決定手段により決定された前記ノード装置の下位階層に接続された場合に、前記移動装置の移動前の階層と移動後の階層との差に基づいて、前記移動装置を再度移動させるか否かを判断する再移動判断手段と、前記再移動判断手段により再度移動させると判断された場合には、前記新ノード装置の前記所在情報を、前記記憶手段から読み出して前記移動装置に送信する再移動先情報送信手段と、を更に備えたことを特徴とする。
この発明によれば、上記新ノード装置が、上記接続先決定手段により決定された前記ノード装置の下位階層に接続され、かつ、前記移動装置が前記移動先決定手段により決定された前記ノード装置の下位階層に接続された場合に、当該移動装置の移動前の階層と移動後の階層との差に基づいて、当該移動装置を再度移動させるか否かを判断し、再移動させるように構成したので、よりバランスの良い安定したトポロジーを構築することができる。
請求項16に記載の発明は、請求項1から15のいずれか一項に記載の接続管理装置において、前記オーバーレイネットワークの接続形態は、前記放送局が最上位に位置するツリー状に各前記ノード装置が接続された形態であり、前記放送システムは、前記放送局から放送された放送情報が各前記ノード装置により順次転送されるシステムであることを特徴とする。
請求項17に記載の発明は、複数の第1のネットワークを含む第2のネットワーク上に設けられたオーバーレイネットワークを介して放送情報を放送する放送局と、放送された放送情報を取得する複数のノード装置と、を含む放送システム内における各前記ノード装置及び前記放送局相互間の接続状態を管理する接続管理方法において、既に前記オーバーレイネットワークに参加している前記ノード装置の所在を示す所在情報と、前記ノード装置が接続している前記第1のネットワークを示すネットワーク情報と、を対応付けて記憶手段に記憶させる記憶工程と、前記オーバーレイネットワークへ参加する前記ノード装置である新ノード装置から、参加の際に前記新ノード装置が接続すべき接続先となる前記ノード装置の所在を示す所在情報を要求する旨の参加要求情報を受信する参加要求情報受信工程と、前記新ノード装置の前記ネットワーク情報を取得するネットワーク情報取得工程と、前記記憶手段に記憶された前記ネットワーク情報と、前記ネットワーク情報取得工程において取得されたネットワーク情報と、に基づいて、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定する接続先決定工程と、前記接続先決定工程において決定された接続先の前記所在情報を前記記憶手段から読み出し、接続先情報として前記新ノード装置に送信する接続先情報送信工程と、を含むことを特徴とする。
請求項18に記載の発明は、複数の第1のネットワークを含む第2のネットワーク上に設けられたオーバーレイネットワークを介して放送情報を放送する放送局と、放送された放送情報を取得する複数のノード装置と、を含む放送システム内における各前記ノード装置及び前記放送局相互間の接続状態を管理する接続管理装置に含まれるコンピュータに、既に前記オーバーレイネットワークに参加している前記ノード装置の所在を示す所在情報と、前記ノード装置が接続している前記第1のネットワークを示すネットワーク情報と、を対応付けて記憶手段に記憶させる記憶ステップと、前記オーバーレイネットワークへ参加する前記ノード装置である新ノード装置から、参加の際に前記新ノード装置が接続すべき接続先となる前記ノード装置の所在を示す所在情報を要求する旨の参加要求情報を受信する参加要求情報受信ステップと、前記新ノード装置の前記ネットワーク情報を取得するネットワーク情報取得ステップと、前記記憶手段に記憶された前記ネットワーク情報と、前記ネットワーク情報取得ステップにおいて取得されたネットワーク情報と、に基づいて、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定する接続先決定ステップと、前記接続先決定ステップにおいて決定された接続先の前記所在情報を前記記憶手段から読み出し、接続先情報として前記新ノード装置に送信する接続先情報送信ステップと、を実行させることを特徴とする。
請求項19に記載の発明は、複数の第1のネットワークを含む第2のネットワーク上に設けられたオーバーレイネットワークを介して放送情報を放送する放送局と、放送された放送情報を取得する複数のノード装置と、各前記ノード装置及び前記放送局相互間の接続状態を管理する接続管理装置と、を含む放送システムにおいて、前記接続管理装置は、既に前記オーバーレイネットワークに参加している前記ノード装置の所在を示す所在情報と、前記ノード装置が接続している前記第1のネットワークを示すネットワーク情報と、を対応付けて記憶する記憶手段と、前記オーバーレイネットワークへ参加する前記ノード装置である新ノード装置から、参加の際に前記新ノード装置が接続すべき接続先となる前記ノード装置の所在を示す所在情報を要求する旨の参加要求情報を受信する参加要求情報受信手段と、前記新ノード装置の前記ネットワーク情報を取得するネットワーク情報取得手段と、前記記憶手段に記憶された前記ネットワーク情報と、前記ネットワーク情報取得手段により取得されたネットワーク情報と、に基づいて、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定する接続先決定手段と、前記接続先決定手段により決定された接続先の前記所在情報を前記記憶手段から読み出し、接続先情報として前記新ノード装置に送信する接続先情報送信手段と、を備えることを特徴とする。
請求項20に記載の発明は、複数の第1のネットワークを含む第2のネットワーク上に設けられたオーバーレイネットワークを介して放送情報を放送する放送局と、放送された放送情報を取得する複数のノード装置と、を含む放送システムにおいて実行される放送方法において、既に前記オーバーレイネットワークに参加している前記ノード装置の所在を示す所在情報と、前記ノード装置が接続している前記第1のネットワークを示すネットワーク情報と、を対応付けて記憶手段に記憶させる記憶工程と、前記オーバーレイネットワークへ参加する前記ノード装置である新ノード装置から、参加の際に前記新ノード装置が接続すべき接続先となる前記ノード装置の所在を示す所在情報を要求する旨の参加要求情報を取得する参加要求情報取得工程と、前記新ノード装置の前記ネットワーク情報を取得するネットワーク情報取得工程と、前記記憶手段に記憶された前記ネットワーク情報と、前記ネットワーク情報取得工程において取得されたネットワーク情報と、に基づいて、前記新ノード装置の前記ネットワーク情報と同一の前記ネットワーク情報に対応する前記所在情報が所在を示す前記ノード装置を、前記接続先として決定する接続先決定工程と、前記接続先決定工程において決定された接続先の前記所在情報を前記記憶手段から読み出し、接続先情報として前記新ノード装置に送信する接続先情報送信工程と、前記接続先情報に基づいて前記新ノード装置が前記オーバーレイネットワークに参加した後、前記新ノード装置に対して前記放送情報を放送する放送工程と、を含むことを特徴とする。
本発明によれば、オーバーレイネットワークへ参加するノード装置である新ノード装置から、当該オーバーレイネットワークへの参加の際に当該新ノード装置が接続すべき接続先となるノード装置の所在を示す所在情報を要求する旨の参加要求情報を受信したとき、当該新ノード装置が接続している第1のネットワークを示すネットワーク情報を取得し、当該取得したネットワーク情報と、既に参加している各ノード装置が接続している第1のネットワークを示すネットワーク情報と、に基づいて、接続している第1のネットワークが新ノード装置と同一のノード装置を接続先として決定して、当該決定した接続先の所在情報を接続先情報として新ノード装置に送信するように構成したので、ISP等の第1のネットワークが異なる複数のノード装置がオーバーレイネットワークに参加する場合であっても、放送情報がインターネットエクスチェンジを介して(越えて)伝送されることが低減するようにトポロジーを構築することができ、ひいては、データパケットの欠落や遅延を低減させることができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、ツリー型コンテンツ配信システムに対して本発明を適用した場合の実施形態である。
[1.ツリー型コンテンツ配信システムの構成等]
始めに、図1を参照して、放送システムとしてのツリー型コンテンツ配信システムの概要構成及び機能について説明する。
図1は、本実施形態に係るツリー型コンテンツ配信システムにおける各装置の接続態様の一例を示す図である。
図1の下部枠101内に示すように、インターネットエクスチェンジIX(Internet eXchange)、ネットワーク接続サービス提供者としてのISP−A,B,C,D、アクセスポイントPA,PB,PC,PD、ルータ(図示せず)及び通信回線(例えば、電話回線や光ケーブル等)等によって、インターネット等のネットワーク(現実世界のネットワーク)NTが構築されている。
本実施形態に係るツリー型コンテンツ配信システムSは、放送情報としてのコンテンツデータを放送する放送局としての放送局装置1と、当該放送されたコンテンツデータを取得する複数のノード装置2a,2b,2c,2d・・・と、を備えており、放送局装置1及び各ノード装置2a,2b,2c,2d・・・は、図1の下部枠101内に示すように、アクセスポイント(PA,PB,PC,PDの何れか)を介して、ISP−A,B,C,Dのうち、何れかのISPによってネットワークNTに接続される。そして、ツリー型コンテンツ配信システムSは、図1の下部枠101内に示すようなネットワークNTを基礎として図1の上部枠100内に示すように、放送局装置1を頂点(最上位)として複数のノード装置2a,2b,2c,2d・・・が複数の階層(図1の例では、5階層)構造を形成するように通信経路を介してツリー状に接続されてなる(以下、上部枠100内に示すツリー状のネットワークをオーバーレイネットワークという)。これにより、放送局装置1から放送されたコンテンツデータは、上流(上位階層)から下流(下位階層)の方向へ各ノード装置により中継(転送)されつつ配信される。なお、以下の説明において、ノード装置2a,2b,2c,2d・・・のうち何れかのノード装置を示す場合には、便宜上、ノード装置2という場合がある。
また、図1の上部枠100内に示されるノード装置2a,2b,2c,2dは、ツリー型コンテンツ配信システムSに参加しているノード装置2であり、既に参加している放送局装置1及び各ノード装置2は、ISPにより区分されるネットワーク接続グループA〜Dの何れかのグループに属するようになっている。例えば、ISP−AによってネットワークNTに接続されるノード装置2c,2g,2hはネットワーク接続グループAに属し、ISP−BによってネットワークNTに接続されるノード装置2i,2j,2o,2p,2q,2t,2u,2vはネットワーク接続グループBに属し、ISP−CによってネットワークNTに接続される放送局装置1及びノード装置2a,2b,2dはネットワーク接続グループCに属し、ISP−DによってネットワークNTに接続されるノード装置2e,2f,2k,2l,2m,2n,2r,2sはネットワーク接続グループDに属している。
図1の例では、ツリー型コンテンツ配信システムSは、同一のネットワーク接続グループに属する複数のノード装置2が集まって構成された複数のサブツリー(例えば、ネットワーク接続グループAに属するノード装置2c,2g,2hからなるサブツリーと、ネットワーク接続グループBに属するノード装置2i,2o,2p,2t,2uからなるサブツリーと、ネットワーク接続グループBに属するノード装置2j,2q,2vからなるサブツリーと、ネットワーク接続グループCに属するノード装置2a,2b,2dからなるサブツリーと、ネットワーク接続グループDに属するノード装置2e,2k,2l,2rからなるサブツリーと、ネットワーク接続グループDに属するノード装置2f,2m,2n,2sからなるサブツリーと)からなっている。
また、このような放送局装置1及び各ノード装置2に関する情報、及び放送局装置1及び各ノード装置2相互間の接続態様(トポロジー)及び接続状態等は、接続管理装置としての接続管理サーバ3によって管理されるようになっている。
具体的には、接続管理サーバ3は、既にツリー型コンテンツ配信システムSに参加している放送局装置1及び各ノード装置2の所在情報(例えば、IPアドレス及びポート番号(待ち受けポート番号))、当該放送局装置1及び各ノード装置2が属するネットワーク接続グループを示す所属情報(言い換えれば、いずれのISPによってネットワークNTに接続されているかを示す提供者情報)、当該放送局装置1とノード装置2及び各ノード装置2間の接続態様(トポロジー)及び接続状態等を示す接続状態情報等をネットワーク管理データベースを用いて管理している。
ここで、ネットワーク接続グループを示す所属情報の一例として、AS(Autonomous System)番号が挙げられる。ASとは、インターネットを構成する、一つ(共通)の運用ポリシーを持ったネットワークの塊をいい(自律システムともいう)、インターネットはこのASの集合体ととらえることができる。このようにAS単位に分割して管理することでルーティングのオーバーヘッドを減らし、ネットワークNTの管理が容易になる。本実施形態では、各ISPにより構成されるネットワーク(つまり、ネットワーク接続グループA〜D)毎にASが区分されることを想定しており、各ネットワーク接続グループA〜Dに対して互いに異なる一意のAS番号が、例えば、1〜65535の範囲から割り当てられる。なお、放送局装置1及びノード装置2a,2b,2c,2d・・・が属するAS番号は、例えば、ISPからIPアドレスが割り当てられる際に、決定される。ノード装置自身が、自分が属するAS番号を取得するには、IRR(Internet Routing Registry)やJPNIC(社団法人日本ネットワークインフォメーションセンター)のWHOISデータベースにアクセスする方法(IPアドレスからAS番号が分かる)、あるいは、ユーザがISPから契約している回線のAS番号を入手して、その値をユーザがノード装置にあらかじめ入力しておく方法、などが可能である。なお、本実施形態においては、ネットワーク接続グループの一例として、ISPを例にとったがこれに限定されるものではなく、その他のネットワーク運営組織又は運営団体としても良い。
また、上記接続状態情報には、既にツリー型コンテンツ配信システムSに参加している放送局装置1及び各ノード装置2毎に、例えば、以下の(1)〜(7)の情報が含まれている。
(1)放送局装置1及び各ノード装置2夫々の、ツリー型コンテンツ配信システムSにおける階層構造において位置する階層(例えば、図1に示すノード装置2aの場合、第1階層)を示す階層情報
(2)放送局装置1及び各ノード装置2夫々の下位階層に接続されているノード装置2(例えば、図1に示すノード装置2aには、ノード装置2c及び2dが下位階層に接続されている)を示す下位装置情報
(3)放送局装置1及び各ノード装置2の下位階層に接続可能なノード装置2の接続許容数を示す接続許容数情報(図1に示す上部枠100内のコンテンツ配信システムSの場合、2つになっている、3つ以上でもよい)
(4)放送局装置1及び各ノード装置2が他のノード装置2へコンテンツデータを転送する転送能力を示す転送能力情報(例えば、放送局装置1又はノード装置2のCPUの処理速度(MHz)と、放送局装置1又はノード装置2がアクセスポイントを介してISPに接続されるまでの有効帯域(例えば、データ転送速度(bps))との総和)
(5)放送局装置1及び各ノード装置2がツリー型コンテンツ配信システムSに参加している参加時間を示す参加時間情報
(6)放送局装置1及び各ノード装置2の下流側に配置されているノード装置2の配置数を示す下流装置数(例えば、図1に示すノード装置2dの下流側に配置されているノード装置2の数は、ノード装置2i,2j,2o,2p,2q,2t,2u,2vの8つになっている)を示す下流装置数情報
(7)放送局装置1及び各ノード装置2夫々の下位階層に接続されているノード装置2を起点とした下流ツリー内に配置されているノード装置2(例えば、図1に示すノード装置2dの下位階層に接続されているノード装置2jを起点とした下流ツリー内には、ノード装置2j,2q,及び2vが配置されている)の配置数を示す下流ツリー内装置数情報
そして、接続管理サーバ3は、ツリー型コンテンツ配信システムSに未参加のノード装置(新ノード装置)からの参加要求に応じて、上記所属情報と上記接続状態情報との少なくとも何れか一方を用いて、当該未参加のノード装置が接続すべき接続先となるノード装置2を決定し、当該決定したノード装置2を示す装置情報(例えば、IPアドレス及びポート番号等の所在情報を含む)を接続先情報として当該未参加のノード装置に送信するようになっている。こうして、当該未参加のノード装置は、当該接続先情報に基づき、既参加のノード装置2との接続を確立し、これによって、ツリー型コンテンツ配信システムSに参加することになる。
なお、未参加のノード装置(新ノード装置)には、初めてツリー型コンテンツ配信システムSに参加するノード装置ばかりでなく、既参加のノード装置2が電源OFF或いは通信不良等になることによりツリー型コンテンツ配信システムSから一旦脱退した後、再度、ツリー型コンテンツ配信システムSに参加するノード装置も含まれる。
また、ツリー型コンテンツ配信システムSにおけるツリー状のトポロジーは、放送局装置毎、言い換えれば、放送チャンネル毎に形成される(図1の上部枠100内では、1つの放送チャンネルのみ示している)ようになっており(但し、1つの放送局装置で複数の放送チャンネルを賄う場合もある)、例えば既参加のノード装置2においてユーザにより放送チャンネルが切り替えられた場合には、当該ノード装置2は、切り替え後の放送チャンネルにおける既参加のノード装置2の接続先情報を接続管理サーバ3から取得して接続を確立するようになっている。なお、放送チャンネルの切り替え制御は、本発明と直接の関係がないので詳しい説明を省略する。
[2.放送局装置の構成等]
次に、図2を参照して、放送局装置1の構成及び機能について説明する。
図2は、放送局装置1の概要構成例を示す図である。
放送局装置1は、図2に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラム(OS(オペレーティングシステム)及び各種アプリケーションを含む)を記憶するROM等から構成された制御部11と、コンテンツデータ(例えば、圧縮されたビデオデータやオーディオデータ)等を記憶保存するためのHDD等から構成された記憶部12と、暗号鍵を用いてコンテンツデータを暗号化するための暗号化用アクセラレータ13と、ネットワーク10を通じてノード装置2等との間の情報の通信制御を行うための通信部15と、オペレータからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス等)16と、を備えて構成され、これらの構成要素は、バス17を介して相互に接続されている。
制御部11は、CPUが記憶部12等に記憶されたプログラムを実行することにより放送局装置1全体を統括制御し、記憶部12に記憶保存されたコンテンツデータを暗号鍵を用いて暗号化用アクセラレータ13により暗号化させ、当該コンテンツデータを所定のデータ量に分割して連続する複数のデータパケットを生成し、これを通信部15を介してノード装置2(図1の上部枠100内の例では、ノード装置2a及び2b)に対して放送(ストリーム配信)するようになっている。なお、各データパケットのペイロード部には、そのコンテンツデータの先頭から連続するパケット番号(放送順に連続するシーケンス番号)が記述される。
[3.ノード装置の構成等]
次に、図3を参照して、ノード装置2の構成及び機能について説明する。
図3は、ノード装置2の概要構成例を示す図である。
ノード装置2(未参加のノード装置も同様)は、図3に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラム(OS(オペレーティングシステム)及び各種アプリケーションを含む)を記憶するROM等から構成された制御部21と、各種データ及びプログラム等を記憶するHDD等から構成された記憶部22と、受信したコンテンツデータ(データパケット)を一時的に蓄積(記憶)するバッファメモリ23と、バッファメモリ23に蓄積された暗号化されたコンテンツデータを復号鍵を用いて復号化するための復号化アクセラレータ24と、復号化されたコンテンツデータに含まれるビデオデータ(映像情報)及びオーディオデータ(音声情報)等をデコード(データ伸張等)して再生するデコーダ部25と、当該再生されたビデオデータ等に対して所定の描画処理を施し映像信号として出力する映像処理部26と、当該映像処理部26から出力された映像信号に基づき映像表示するCRT又は液晶ディスプレイ等の表示部27と、上記再生されたオーディオデータをアナログ音声信号にD(Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部28と、当該音声処理部28から出力された音声信号を音波として出力するスピーカ29と、ネットワーク10を通じて放送局装置1や他のノード装置2等との間の通信制御を行うための通信部29aと、ユーザ(視聴者)からの各種指示を入力し制御部21に対してその指示信号を与える入力部(例えば、マウス、キーボード、操作パネル、或いはリモコン等)29bと、ICカード29eを装着し電気的に接続するためのICカードスロット29cと、を備えて構成され、制御部21、記憶部22、バッファメモリ23、復号化アクセラレータ24、デコーダ部25、通信部29a、入力部29b、及びICカードスロット29cは、バス29dを介して相互に接続されている。なお、ノード装置2としては、例えば、STB(Set Top Box)やパーソナルコンピュータが適用可能である。
ICカード29eは、耐タンパ性があり(つまり、非正規な手段による機密データの読み取りを防ぎ、簡単に解析できないようにタンパリング対策が施されている)、例えば、ツリー型コンテンツ配信システムSの運営者等からユーザに配布される。当該ICカード29eは、CPUからなるICカードコントローラ、耐タンパ性のある不揮発性メモリ(例えば、EEPROM)等を備えて構成されており、不揮発性メモリには、ユーザID、暗号化されたコンテンツデータを復号化するための復号鍵、デジタル証明書、及び接続管理サーバ3の所在情報等が記憶されるようになっている。
バッファメモリ23は、例えばFIFO(First In First Out)形式のリングバッファメモリから構成されており、制御部21の制御下、受信ポインタにより示される記憶領域に通信部29aを通じて受信されたコンテンツデータを一時的に蓄積するようになっている。
制御部21は、CPUが記憶部22等に記憶されたプログラムを読み出して実行することによりノード装置2全体を統括制御し、ツリー型コンテンツ配信システムSに参加後、上位階層の放送局装置1又はノード装置2から配信されてきた複数のデータパケットを通信部29aを通じて受信してバッファメモリ23に書き込み、かつ、当該バッファメモリ23に蓄積されているデータパケット(一定時間過去に受信されたデータパケット)を読み出して通信部29aを通じて下位階層に接続されるノード装置2に送信(転送)するようになっており、更に、再生ポインタにより示されるバッファメモリ23の記憶領域に蓄積されているデータパケットを読み出してバス29dを介して復号化アクセラレータ24やデコーダ部25に出力するようになっている。
[4.接続管理サーバの構成等]
次に、図4を参照して、接続管理サーバ3の構成及び機能について説明する。
図4は、接続管理サーバ3の概要構成例を示す図である。
接続管理サーバ3は、図4に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラム(OS(オペレーティングシステム)及び各種アプリケーションを含む)を記憶するROM等から構成された制御部35と、各種データ等を記憶保存するためのHDD等から構成された記憶部36と、ネットワーク10を通じてノード装置2等との間の情報の通信制御を行うための通信部37と、を備えて構成され、これらの構成要素は、バス38を介して相互に接続されている。
装置情報記憶手段、下位装置情報記憶手段、接続許容数記憶手段、転送能力記憶手段、階層位置記憶手段、参加時間記憶手段、及び下流装置数記憶手段としての記憶部36には、上述した、ツリー型コンテンツ配信システムSに参加している放送局装置1及び各ノード装置2の所在情報、所属情報、及び接続状態情報等が登録されるネットワーク管理データベースが構築されている。
なお、記憶部36におけるネットワーク管理データベースには、各ノード装置毎に所属情報を記憶する代わりに、上記サブツリー毎に所属情報を記憶するようにしてもよい。この場合、所属情報には、例えば、各サブツリーに含まれるどのノード装置2から別のネットワーク接続グループのサブツリーに変わるか、という情報が含まれることになる。これにより、記憶部36の記憶容量が少なくて済む。
制御部35は、CPUが記憶部36等に記憶されたプログラム(本発明の接続管理用プログラムを含む)を実行することにより接続管理サーバ3全体を統括制御し、参加要求情報受信手段、所属情報取得手段、接続先決定手段、接続先情報送信手段、移動装置決定手段、移動先決定手段、移動先情報送信手段、再移動先決定手段、及び再移動先情報送信手段等として機能するようになっている。
具体的には、制御部35は、参加要求情報受信手段として、ツリー型コンテンツ配信システムSに参加の際に未参加のノード装置が接続すべき接続先となるノード装置2を示す装置情報を要求する旨の参加要求情報を未参加のノード装置から受信すると、所属情報取得手段として、当該未参加のノード装置のネットワーク接続グループを示す所属情報(例えば、AS番号)を取得し、接続先決定手段として、当該取得した所属情報と、上記ネットワーク管理データベースに登録された既参加の放送局装置1及び各ノード装置2が属するネットワーク接続グループを示す所属情報(或いは、サブツリー毎の所属情報)と、に基づいて接続先となる放送局装置1又はノード装置2を決定し、接続先情報送信手段として、決定した接続先の放送局装置1又はノード装置2の装置情報(例えば、所在情報を含む)を記憶部35から読み出し、接続先情報として未参加のノード装置に送信するようになっている。
例えば、接続先決定手段としての制御部35は、未参加のノード装置の所属情報と同一の所属情報を含む装置情報がネットワーク管理データベースに登録(記憶)されているか(つまり、未参加のノード装置と同一のネットワーク接続グループに属する放送局装置1又はノード装置2がツリー型コンテンツ配信システムSに参加しているか)否かを判別し、当該装置情報が記憶されているとき、当該装置情報に対応する放送局装置1又はノード装置2を接続先として決定する。これにより、未参加のノード装置は、同一のネットワーク接続グループに属する放送局装置1又はノード装置2に接続されるようになるので、ISP等のネットワーク接続グループが異なる複数のノード装置2が放送システムに参加する場合であっても、コンテンツデータがIXを介して(越えて)伝送されることが低減するようにトポロジーを構築することができ、ひいては、データパケットの欠落や遅延を低減させることができる。
ところで、未参加のノード装置の所属情報と同一の所属情報を含む装置情報がネットワーク管理データベースに複数登録されているとき(例えば、未参加のノード装置と同一のネットワーク接続グループに属するノード装置2が複数参加しているとき(又は、未参加のノード装置と同一のネットワーク接続グループに属する放送局装置1と、1以上のノード装置2とがあるとき)、接続先決定手段としての制御部35は、これら複数のノード装置2(又は、放送局装置1及び1以上のノード装置2)の中から、1つのノード装置2(又は、放送局装置1)を絞り込み、これを接続先として決定する。
かかる絞り込みは、ネットワーク管理データベースに登録された接続状態情報に基づき行われ、例えば、放送局装置1又はノード装置2の下位階層に接続可能なノード装置2の接続許容数、放送局装置1又はノード装置2の階層、放送局装置1又はノード装置2の転送能力、放送局装置1又はノード装置2のツリー型コンテンツ配信システムSへの参加時間、及び放送局装置1又はノード装置2の下流ツリー内に配置されているノード装置2の配置数等の判断要素の全部又は一部が比較判断されることにより行われる。
より具体的には、接続許容数で絞り込む場合、夫々のノード装置2及び放送局装置1のうち、現在下位階層に接続されているノード装置2の数が、対応する接続許容数に達していないノード装置2又は放送局装置1が絞り込まれる。また、階層で絞り込む場合、夫々のノード装置2及び放送局装置1のうち、階層が予め設定されている基準階層より上位の階層である(或いは、最も階層が上位である)ノード装置2又は放送局装置1が絞り込まれる。また、転送能力で絞り込む場合、夫々のノード装置2及び放送局装置1のうち、転送能力が予め設定されている基準能力値以上である(或いは、最も転送能力が高い)ノード装置2又は放送局装置1が絞り込まれる。また、参加時間で絞り込む場合、夫々のノード装置2及び放送局装置1のうち、参加時間が予め設定されている基準参加時間以上である(或いは、最も参加時間が長い)ノード装置2又は放送局装置1が絞り込まれる。また、下流ツリー内に配置されているノード装置2の配置数で絞り込む場合、当該配置数が予め設定されている基準配置数以下の配置数である(或いは、最も配置数が小さい)ノード装置2又は放送局装置1が絞り込まれる(なお、1つのノード装置2又は放送局装置1に複数の下流ツリーが存在する場合、下流ツリー内に配置されているノード装置2の配置数が少ない方の下流ツリーが比較対象となる)。これにより、例えば、未参加のノード装置とネットワーク接続グループが同一のノード装置2等が複数存在する場合であっても、その中から適切なノード装置2等が選定され、よりバランスの良い安定したトポロジーを構築することができる。
また、これらの判断要素に対して優先順位を設定し(例えば、オペレータにより任意に設定可能)、当該優先順位に従って(例えば、付与された優先順位が若い順に)判断要素が比較判断され、ノード装置2又は放送局装置1が絞り込まれていくように構成しても良い。これによれば、更に一層バランスの良い安定したトポロジーを構築することができる。
そして、未参加のノード装置の所属情報と同一の所属情報であるノード装置2が複数(又は、放送局装置1及び1以上のノード装置2が)存在し、かつ、夫々のノード装置2等に現在下位階層に接続されているノード装置2の数が対応する接続許容数に達している場合に上記絞り込みにより1つのノード装置2又は放送局装置1が接続先として決定されたとき、制御部35は、移動装置決定手段として、上記未参加のノード装置の接続先として決定されたノード装置2又は放送局装置1の下位階層に接続されているノード装置2の数が対応する接続許容数に達しているとき、当該下位階層に接続されているノード装置2の中から現在の前記接続先を移動させるノード装置2を移動装置として決定し、移動先決定手段として、当該決定された移動装置としてのノード装置2に対する新たな接続先(移動先)となるノード装置2を新たに決定し、移動先情報送信手段として、当該決定した移動先のノード装置2の装置情報(例えば、所在情報を含む)を記憶部35から読み出し、これを移動先情報として、当該決定された移動装置としてのノード装置2に送信するようになっている。これにより、未参加のノード装置は、当該接続先として決定されたノード装置2に接続してツリー型コンテンツ配信システムSに参加することが可能になる。
例えば、移動装置決定手段としての制御部35は、接続先として決定されたノード装置2又は放送局装置1の下位階層に接続されているノード装置2の数が複数ある場合には、ネットワーク管理データベースに登録された接続状態情報(例えば、下流装置数、転送能力、及び参加時間の全部又は一部)に基づき、当該複数のノード装置の中から、1つのノード装置2を移動装置として決定する。例えば、下流装置数が少ないノード装置2、転送能力が小さいノード装置2、又は参加時間が短いノード装置2を移動装置として決定できので、よりバランスの良い安定したトポロジーを構築することができる。
そして、制御部35は、未参加のノード装置が、上記決定されたノード装置2の下位階層に接続され、かつ、移動装置としてのノード装置2が、上記決定されたノード装置2の下位階層に接続された場合に、再移動判断手段として、当該移動装置としてのノード装置2の下流側に配置されているノード装置2の配置数を示す下流装置数、又は、当該移動装置としてのノード装置2の移動前の階層と移動後の階層との差に基づいて、当該移動装置としてのノード装置2を再度移動させるか否かを判断し、再度移動させると判断された場合には、再移動先情報送信手段として、新参加のノード装置の装置情報を、記憶部35から読み出し、これを再移動先情報として、上記移動装置としてのノード装置2に送信するようになっている。例えば、当該移動装置としてのノード装置2の下流装置数が所定数以上と多かったり、或いは、当該移動装置としてのノード装置2の移動前の階層と移動後の階層との差が所定階層以上と多かったりした場合には、当該移動装置としてのノード装置2は、例えば、新参加のノード装置の下位階層に接続されるように再移動される。これにより、よりバランスの良い安定したトポロジーを構築することができる。ツリー内の特定の枝だけが著しく伸びたトポロジーは、その枝の中で通信エラーが起きたときの影響範囲が大きくなり、好ましくない。また、バランスの悪いツリーでは、枝ごとに転送の回数が異なることにより、遅延時間が異なり、各ノード装置2での再生開始時間のずれが大きくなるので、これも利用形態によっては好ましくない。こうした観点から、ツリーは各枝の長さがなるべく均一になるように制御するのが、好ましいので、本実施形態では、特定のノード装置2の下流ツリー(下の枝)が長くなりすぎないように、あるいは、階層が深くなりすぎないように、制御しているのである。
図5は、未参加のノード装置の所属情報と同一の所属情報であるノード装置2が複数存在し、かつ、夫々のノード装置2に現在下位階層に接続されているノード装置2の数が対応する接続許容数に達している場合に、1つのノード装置2が接続先として決定されたときの各ノード装置2の動きの一例を示す図である。
図5の例では、未参加のノード装置の接続先としてノード装置2aが決定された場合を想定しており、当該ノード装置2aの下位階層に接続されているノード装置2cが新たな接続先(移動先)となるノード装置2oの下位階層に接続(移動)し(図5(A)及び(B))、未参加のノード装置がノード装置2aの下位階層に新参加のノード装置2xとして接続した後、ノード装置2cが、再移動先である新参加のノード装置2xの下位階層に接続(再移動)している(図5(C)及び(D))。
なお、移動先決定手段としての制御部35は、接続先決定手段としての制御部35と同様、ノード装置2の下位階層に接続可能なノード装置2の接続許容数、ノード装置2の階層、ノード装置2の転送能力、ノード装置2のツリー型コンテンツ配信システムSへの参加時間等の判断要素の全部又は一部を比較判断することにより、複数のノード装置2の中から、1つのノード装置2を移動先として決定する。
また、図5(A)から図5(D)に、いきなり変化させる方法、つまり、未参加のノード装置が、ノード装置2aとノード装置2cの間に割り込むように接続形態を一気に変える方法も可能ではあるのだが、いきなり割り込むと、ノード装置2cに転送するためのデータをノード装置2xがバッファ内にため込むまでに時間がかかり、その間ノード装置2cの下流ツリーへのデータ配信が滞るので、まず図5(A)から図5(B)のように接続するのが好ましい。ノード装置2oには、転送のために必要なデータがバッファリングされていて、すみやかに転送できるからである。一旦、一時避難的にノード装置2c以下のツリーを移動させ、その上でノード装置2cのツリー上の位置が適切かどうかを判断し、図5(C)から図5(D)の再移動が必要かどうかを決定しているのである。この例では、再移動を行っているが、ツリーバランス上問題なければ、図5(B)で止めても良い。
[5.ツリー型コンテンツ配信システムの動作]
次に、図6乃至図9等を参照して、ツリー型コンテンツ配信システムSの動作例について説明する。
図6(A)は、未参加のノード装置の制御部21における登録要求処理を示すフローチャートであり、図6(B)は、接続管理サーバ3の制御部35における登録受付処理を示すフローチャートである。図7(A)は、未参加のノード装置の制御部21における参加要求処理を示すフローチャートであり、図7(B)は、接続管理サーバ3の制御部35における参加受付処理を示すフローチャートである。図8(A)は、図7(B)に示すステップS34及びS36における接続先決定処理の詳細を示すフローチャートであり、図8(B)は、図7(B)に示すステップS35における未参加のノード装置の接続先決定及び移動装置決定処理の詳細を示すフローチャートである。図9(A)は、図7(B)に示すステップS37及びS45における移動要求処理及び再移動要求処理の詳細を示すフローチャートであり、図9(B)は、移動装置としてのノード装置2の制御部21における移動処理を示すフローチャートであり、図9(C)は、図7(B)に示すステップS38における移動装置の再移動判断処理の詳細を示すフローチャートである。
先ず、図6を参照して、未参加のノード装置が接続管理サーバ3に対して登録要求を行う場合の動作例ついて説明する。
図6(A)に示す処理は、未参加のノード装置のユーザから入力部29bを介した登録要求指示があった場合に開始され、先ず、制御部21は、ICカード29eから接続管理サーバ3のIPアドレス及びポート番号を取得し、取得したIPアドレス及びポート番号を、それぞれ宛先IPアドレス及び宛先ポート番号として、上記接続管理サーバ3との間の接続を確立し、当該接続管理サーバ3に対して、登録要求パケット(当該未参加のノード装置の装置ID、AS番号、IPアドレス及びポート番号を含む)を送信し(ステップS1)、タイマを初期化してカウントを開始する(ステップS2)。なお、接続管理サーバ3から後述する登録完了パケットが送信されずに一定時間(例えば、数分)が経過した場合には(ステップS3:Y)、ステップS1に戻り、再度、接続管理サーバ3に登録要求パケットが送信されることになる。
一方、接続管理サーバ3の制御部35は、未参加のノード装置から送信されてきた登録要求パケットを受信すると、図6(B)に示す処理を開始し、受信した登録要求パケットから未参加のノード装置のIPアドレス、ポート番号、AS番号、及び装置IDを抽出し(ステップS11)、抽出したIPアドレス、ポート番号、AS番号、及び装置IDを相互に対応付けて記憶部22における登録データベースに登録し(ステップS12)、登録完了を示す登録完了パケットを未参加のノード装置に送信(返信)し(ステップS13)、当該処理を終了する。
そして、未参加のノード装置の制御部21は、接続管理サーバ3から送信されてきた登録完了パケットを受信した場合には(ステップS4:Y)、登録完了した旨を示す情報をユーザに対して通知(ステップS5)、例えば、当該情報を音声処理部17及びスピーカ18を通じて音声として出力させたり、或いは、当該情報を映像処理部15及び表示部16を通じて表示させたりする。
こうして、未参加のノード装置の登録が完了すると、当該未参加のノード装置は、ツリー型コンテンツ配信システムSへの参加が可能になる。
次に、図7乃至図9を参照して、未参加のノード装置が接続管理サーバ3に対して参加要求を行う場合の動作例ついて説明する。
図7(A)に示す処理は、未参加のノード装置のユーザから入力部29bを介した参加要求指示があった場合に開始され、先ず、未参加のノード装置の制御部21は、ICカード29eから接続管理サーバ3のIPアドレス及びポート番号を取得し、取得したIPアドレス及びポート番号を、それぞれ宛先IPアドレス及び宛先ポート番号として、上記接続管理サーバ3との間の接続を確立し、当該接続管理サーバ3に対して、参加要求パケット(当該未参加のノード装置の装置ID、AS番号、IPアドレス及びポート番号を含む)を送信し(ステップS21)、タイマを初期化してカウントを開始する(ステップS22)。なお、接続管理サーバ3から後述する接続先紹介パケットが送信されずに一定時間が経過した場合には(ステップS23:Y)、ステップS21に戻り、再度、接続管理サーバ3に参加要求パケットが送信されることになる。
一方、接続管理サーバ3の制御部35は、未参加のノード装置から送信されてきた参加要求パケットを受信すると、図7(B)に示す処理を開始し、受信した参加要求パケットからAS番号等を抽出(或いは、登録データベースから取得しても良い)し(ステップS31)、抽出したAS番号と同一のAS番号が記憶部36におけるネットワーク管理データベースに登録されているか否かを判別し(ステップS32)、登録されている場合には(ステップS32:Y)、当該抽出したAS番号と同一のAS番号である放送局装置1及びノード装置2を特定(認識)し、それに関する接続状態情報をネットワーク管理データベースから取得(RAMに格納)し、ステップS33に移行する。例えば、未参加のノード装置のネットワーク接続グループが“C”であると仮定すると、図1の例では、当該ネットワーク接続グループCに属する放送局装置1、ノード装置2a,2b及び2dが特定されることになる。
一方、上記抽出されたAS番号と同一のAS番号がネットワーク管理データベースに登録されていない場合(ステップS32:N)、つまり、未参加のノード装置のネットワーク接続グループと同一のグループに属する放送局装置1及びノード装置2がない場合には、全ての放送局装置1及びノード装置2に関する接続状態情報をネットワーク管理データベースから取得(RAMに格納)し、ステップS34に移行される。
ステップS33では、制御部35は、上記特定した放送局装置1又はノード装置2(或いは、放送局装置1及びノード装置2)への接続数に余裕があるか、つまり、かかる装置に対して現在下位階層に接続されているノード装置2の数が、かかる装置に対応する接続許容数に達しているか否かを、夫々判別する。例えば、全ての放送局装置1及びノード装置2の接続許容数が“2”であると仮定すると(但し、装置毎に設定可能)、図1の例では、上記特定された放送局装置1、ノード装置2a,2b及び2dの何れも接続許容数に達しているので、接続数に余裕がないということになる。
そして、上記特定された全ての放送局装置1及びノード装置2への接続数に余裕がない場合には(ステップS33:N)、現在下位階層に接続されているノード装置2を移動させる必要があるので、ステップS35に移行され、上記特定された放送局装置1又はノード装置2への接続数に余裕がある場合には(ステップS33:Y)、ステップS34に移行される。
ステップS34における未参加のノード装置の接続先決定処理の前提として、判断要素の優先順位が設定されているものとする。どの判断要素をどの優先順位とするかは任意であるが、例えば、図8(A)の例では、転送能力を優先順位1とし、階層を優先順位2とし、参加時間を優先順位3としている。
図8(A)に示す接続先決定処理では、制御部35は、先ず、転送能力(優先順位1)での絞り込み処理を行う(ステップS341)。上記ステップS32からステップS34に移行した場合の接続先決定処理におけるステップS341では、制御部35は、ネットワーク管理データベースに登録されている全ての放送局装置1及びノード装置2の転送能力情報を参照し、これらの装置から、転送能力が予め設定されている基準能力値以上である(或いは、最も転送能力が高い)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。一方、上記ステップS33からステップS34に移行した場合の接続先決定処理におけるステップS341では、例えば、制御部35は、上記接続数に余裕があるとして上記特定された放送局装置1又はノード装置2(或いは、放送局装置1及びノード装置2)の転送能力情報を参照し、これらの装置から、転送能力が予め設定されている基準能力値以上である(或いは、最も転送能力が高い)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。
次いで、制御部35は、上記ステップS341で選定した候補が複数あるか否かを判別し(ステップS342)、候補が複数ある場合には(ステップS342:Y)、ステップS343に移行する。一方、候補が複数ない場合(ステップS342:N)、つまり、1つの放送局装置1又はノード装置2に絞り込まれた場合には、ステップS348に移行し、当該放送局装置1又はノード装置2を、未参加のノード装置の接続先として決定する。
ステップS343では、制御部35は、階層(優先順位2)での絞り込み処理を行う。例えば、制御部35は、上記ステップS341で選定した複数の候補の階層情報を参照し、これらの候補から、階層が予め設定されている基準階層より上位の階層である(或いは、最も階層が上位である)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。
次いで、制御部35は、上記ステップS343で選定した候補が複数あるか否かを判別し(ステップS344)、候補が複数ある場合には(ステップS344:Y)、ステップS345に移行する。一方、候補が複数ない場合(ステップS344:N)、つまり、1つの放送局装置1又はノード装置2に絞り込まれた場合には、ステップS348に移行し、当該放送局装置1又はノード装置2を、未参加のノード装置の接続先として決定する。
ステップS345では、制御部35は、参加時間(優先順位3)での絞り込み処理を行う。例えば、制御部35は、上記ステップS343で選定した複数の候補の参加時間情報を参照し、これらの装置から、参加時間が予め設定されている基準参加時間以上である(或いは、最も参加時間が長い)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。
次いで、制御部35は、上記ステップS345で選定した候補が複数あるか否かを判別し(ステップS346)、候補が複数ある場合には(ステップS346:Y)、ステップS347に移行し、複数の候補の中から放送局装置1又はノード装置2をランダムで1つ選定し、これを、未参加のノード装置の接続先として決定する(ステップS348)。一方、候補が複数ない場合(ステップS346:N)、つまり、1つの放送局装置1又はノード装置2に絞り込まれた場合には、ステップS348に移行し、当該放送局装置1又はノード装置2を、未参加のノード装置の接続先として決定する。こうして、未参加のノード装置の接続先が決定されると、図7(B)に示す処理に戻り、ステップS39に移行される。
なお、上記ステップS348では、複数の候補の中から放送局装置1又はノード装置2を1つ選定するようにしたが、1つに絞らなくてもよく、ある数まで(例えば5つ)絞って複数のノード装置2を選定し、かかる複数の接続先候補のノード装置2のIPアドレス及びポート番号を含む接続先紹介パケットを後述するステップS39で未参加のノード装置に送信し、未参加のノード装置においてかかる複数の接続先候補のノード装置2から1つの接続先となるノード装置2を選択する(例えばユーザの指示により)ように構成しても良い。
一方、図7(B)に示すステップS35における未参加のノード装置の接続先決定及び移動装置決定処理においても、その前提として、判断要素の優先順位が設定されているものとする。どの判断要素をどの優先順位とするかは任意であるが、例えば、図8(B)の例では、下流ツリー内のノード装置2の配置数を優先順位1とし、転送能力を優先順位2とし、参加時間を優先順位3としている。
図8(B)に示す未参加のノード装置の接続先決定及び移動装置決定処理では、制御部35は、先ず、下流ツリー内のノード装置2の配置数(優先順位1)での絞り込み処理を行う(ステップS351)。例えば、制御部35は、上記接続数に余裕がないとして上記特定された放送局装置1又はノード装置2(或いは、放送局装置1及びノード装置2)の下流ツリー内装置数情報を参照し、これらの装置から、下流ツリー内に配置されているノード装置2の配置数が予め設定されている基準配置数以下の配置数である(或いは、最も配置数が小さい)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。図1の例では、特定された放送局装置1、ノード装置2a,2b及び2dのうち、基準配置数以下、例えば、配置数が5つ以下のノード装置2aが接続先の候補として選定される。
次いで、制御部35は、上記ステップS351で選定した候補が複数あるか否かを判別し(ステップS352)、候補が複数ある場合には(ステップS352:Y)、ステップS353に移行する。一方、候補が複数ない場合(ステップS352:N)、つまり、1つの放送局装置1又はノード装置2に絞り込まれた場合には、ステップS358に移行し、当該放送局装置1又はノード装置2を、未参加のノード装置の接続先として決定する。
ステップS353では、制御部35は、転送能力(優先順位2)での絞り込み処理を行う。例えば、制御部35は、上記ステップS351で選定した複数の候補の転送能力情報を参照し、これらの候補から、転送能力が予め設定されている基準能力値以上である(或いは、最も転送能力が高い)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。
次いで、制御部35は、上記ステップS353で選定した候補が複数あるか否かを判別し(ステップS354)、候補が複数ある場合には(ステップS354:Y)、ステップS355に移行する。一方、候補が複数ない場合(ステップS354:N)、つまり、1つの放送局装置1又はノード装置2に絞り込まれた場合には、ステップS358に移行し、当該放送局装置1又はノード装置2を、未参加のノード装置の接続先として決定する。
ステップS355では、制御部35は、参加時間(優先順位3)での絞り込み処理を行う。例えば、制御部35は、上記ステップS353で選定した複数の候補の参加時間情報を参照し、これらの装置から、参加時間が予め設定されている基準参加時間以上である(或いは、最も参加時間が長い)ノード装置2等を絞り込み、接続先の候補(ノード装置2等)を選定する。
次いで、制御部35は、上記ステップS355で選定した候補が複数あるか否かを判別し(ステップS356)、候補が複数ある場合には(ステップS356:Y)、ステップS357に移行し、複数の候補の中から放送局装置1又はノード装置2をランダムで1つ選定し、これを、未参加のノード装置の接続先として決定する(ステップS358)。一方、候補が複数ない場合(ステップS356:N)、つまり、1つの放送局装置1又はノード装置2に絞り込まれた場合には、ステップS358に移行し、当該放送局装置1又はノード装置2を、未参加のノード装置の接続先として決定する。
次いで、制御部35は、上記決定された接続先の下位(直近下位)階層に接続されたノード装置2を移動装置として決定し(ステップS359)、図7(B)に示す処理に戻り、ステップS36に移行される。このようにして、未参加のノード装置の接続先として、図1に示すノード装置2aが決定されたと仮定すると、その下位階層に接続されたノード装置2c及び2dのうち、例えば下流側に配置されているノード装置2の下流装置数が少ないノード装置2c(よりバランスの良い安定したトポロジーを維持するため)が移動装置として決定されることになる。なお、当該移動装置として決定されたノード装置2cの下位階層に接続されているノード装置2g及び2hは、ノード装置2cと共に移動することになる。
ステップS36における移動装置の接続先決定処理は、上記ステップS32からステップS34に移行した場合と同様、図8(A)に示すステップS341〜S348ように行われ、上記移動装置として決定されたノード装置2(例えば、ノード装置2c)の接続先(例えば、ノード装置2o)が決定されることになる。
次いで、制御部35は、移動要求処理を行う(ステップS37)。当該移動要求処理においては、図9(A)に示すように、先ず、制御部35は、ネットワーク管理データベースから、移動装置として決定されたノード装置2のIPアドレス及びポート番号を取得し、取得したIPアドレス及びポート番号を、それぞれ宛先IPアドレス及び宛先ポート番号として、当該ノード装置2との間の接続を確立し、当該ノード装置2(例えば、ノード装置2c)に対して、移動先紹介パケット(ステップS36で決定された接続先(移動先)のノード装置2(例えば、ノード装置2o)のIPアドレス及びポート番号を含む)を送信し(ステップS371)、タイマを初期化してカウントを開始する(ステップS372)。なお、ノード装置2(例えば、ノード装置2c)から後述する移動完了パケットが送信されずに一定時間(例えば、数分)が経過した場合には(ステップS373:Y)、ステップS371に戻り、再度、ノード装置2(例えば、ノード装置2c)に移動先紹介パケットが送信されることになる。
一方、ノード装置2(例えば、ノード装置2c)の制御部21は、接続管理サーバ3から送信されてきた移動先紹介パケットを受信すると、図9(B)に示す処理を開始し、当該移動先紹介パケットから移動先のノード装置2(例えば、ノード装置2o)のIPアドレス及びポート番号を抽出し、それぞれ宛先IPアドレス及び宛先ポート番号として、当該紹介されたノード装置2(例えば、ノード装置2o)との間の接続を確立(例えば、図5(A)に示すように接続要求を経て)し、当該ノード装置2に対して、配信要求パケット(当該ノード装置2(例えば、ノード装置2c)のIPアドレス及びポート番号を含む)を送信し(ステップS51)、タイマを初期化してカウントを開始する(ステップS52)。
そして、ノード装置2(例えば、ノード装置2o)から配信パケットが送信されずに一定時間(例えば、数分)が経過した場合には(ステップS53:Y)、ステップS51に戻り、再度、ノード装置2に配信要求パケットが送信されることになる。
一方、ノード装置2(例えば、ノード装置2c)の制御部21が、ノード装置2(例えば、ノード装置2o)からの配信パケットを受信した場合には(ステップS54:Y)、接続されている上位階層のノード装置2aとの接続を切断し、移動完了パケットを接続管理サーバ3に送信(返信)し(ステップS55)、当該処理を終了する。
そして、接続管理サーバ3の制御部35は、ノード装置2から送信されてきた移動完了パケットを受信した場合には(ステップS374:Y)、当該移動したノード装置2(例えば、ノード装置2c)の情報をネットワーク管理データベースに登録(例えば、接続状態情報の更新)し(ステップS375)、図7(B)に示す処理に戻り、ステップS38に移行される。
ステップS38における移動装置の再移動判断処理では、図9(C)に示すように、接続管理サーバ3の制御部35は、先ず、移動装置としてのノード装置2の下流側に他のノード装置2が所定数(例えば、10個)以上配置されているか否かを判別し(ステップS381)、所定数以上配置されていない場合には(ステップS381:N)、ステップS382に移行し、所定数以上配置されている場合には(ステップS381:Y)、ステップS383に移行して当該移動装置としてのノード装置の再移動が必要であると判断し、その情報を記憶し、図7(B)に示す処理に戻り、ステップS39に移行する。例えば、図5(A)に示す移動装置としてのノード装置2cの下流側には、2つのノード装置2g及び2hが配置(存在)されている。
ステップS382では、制御部35は、移動装置としてのノード装置2の移動前と移動後の階層の差が所定階層(例えば、3階層)以上あるか否かを判別し、所定階層以上ない場合には(ステップS382:N)、図7(B)に示す処理に戻り、所定階層以上ある場合には(ステップS382:Y)、ステップS383に移行して当該移動装置としてのノード装置の再移動が必要であると判断し、その情報を記憶して、図7(B)に示す処理に戻る。このように移動装置の再移動を必要とするのは、あまりに下流側に配置されているノード装置2の数が多いと、オーバーレイネットワーク上における階層が多く(深く)なり、パケットの転送が不安定(例えば、下流まで行き届かない欠落パケットが多くなる)からである。
そして、図7(B)の処理に戻り、ステップS39では、接続管理サーバ3の制御部35は、上記決定した接続先のノード装置2(例えば、ノード装置2a)のIPアドレス及びポート番号を含む接続先紹介パケットを未参加のノード装置に送信し(ステップS39)、タイマを初期化してカウントを開始する(ステップS40)。なお、未参加のノード装置から後述する参加完了パケットが送信されずに一定時間が経過した場合には(ステップS41:Y)、ステップS39に戻り、再度、未参加のノード装置に接続先紹介パケットが送信されることになる。
一方、未参加のノード装置の制御部21は、接続管理サーバ3から送信されてきた接続先紹介パケットを受信すると(ステップS24:Y)、当該接続先紹介パケットから接続先のノード装置2(例えば、ノード装置2a)のIPアドレス及びポート番号を抽出し、それぞれ宛先IPアドレス及び宛先ポート番号として、当該紹介されたノード装置2(例えば、ノード装置2a)との間の接続を確立(例えば、図5(B)に示すように接続要求を経て)し、当該ノード装置2に対して、配信要求パケット(未参加のノード装置のIPアドレス及びポート番号を含む)を送信し(ステップS25)、タイマを初期化してカウントを開始する(ステップS26)。
そして、ノード装置2(例えば、ノード装置2a)から配信パケットが送信されずに一定時間(例えば、数分)が経過した場合には(ステップS27:Y)、ステップS25に戻り、再度、ノード装置2に配信要求パケットが送信されることになる。
一方、未参加のノード装置の制御部21が、ノード装置2(例えば、ノード装置2a)からの配信パケットを受信した場合には(ステップS28:Y)、参加完了パケットを接続管理サーバ3に送信(返信)し(ステップS29)、当該処理を終了する。
そして、接続管理サーバ3の制御部35は、ノード装置2から送信されてきた参加完了パケットを受信した場合には(ステップS42:Y)、当該未参加したノード装置の情報(つまり、所在情報、所属情報、及び接続状態情報)を新参加のノード装置の情報としてネットワーク管理データベースに登録する(ステップS43)。
次いで、接続管理サーバ3の制御部35は、上記移動装置としてのノード装置2の再移動が必要であるか否かを判別し(ステップS44)、再移動が必要でない場合には(ステップS44:N)、当該処理を終了する。一方、再移動が必要である場合(つまり、上記ステップS38の処理で再移動が必要であると判断された場合)には(ステップS44:Y)、ステップS45に示す再移動要求処理を実行する。
当該再移動要求処理においては、図9(A)に示すように、先ず、制御部35は、上記ステップS43で情報が登録された新参加のノード装置を再移動先とし、当該新参加のノード装置のIPアドレス及びポート番号を含む移動先紹介パケットを、移動装置としてのノード装置2(例えば、ノード装置2c)に送信する(ステップS371)。以降の処理は、上記ステップS37の場合と同様であるので重複する説明を省略するが、かかる処理により、例えば、図5(C)及び(D)に示すように、移動装置としてのノード装置2cが、新参加のノード装置2xの下位階層に接続することになる。
なお、移動装置としてのノード装置2(例えば、ノード装置2c)の再移動先を新参加のノード装置とせずに、例えば、AS番号が同一の装置を抽出し、そのうち接続数が余裕がある装置のうちから、上記ステップS341〜S348に示す処理を行なって再移動先を決定するように構成してもよい。
以上説明したように上記実施形態によれば、ツリー型コンテンツ配信システムSへの参加の際に、当該未参加のノード装置とネットワーク接続グループが同一のノード装置2が当該未参加のノード装置の接続先として決定されるようにしたので、ISP等のネットワーク接続グループが異なる複数のノード装置がツリー型コンテンツ配信システムSに参加する場合であっても、コンテンツデータがIXを介して(越えて)伝送されることが低減するようにトポロジーを構築することができ、ひいては、データパケットの欠落や遅延を低減させることができる。
また、未参加のノード装置とネットワーク接続グループが同一のノード装置2等が複数存在する場合であっても、ネットワーク管理データベースに登録された接続状態情報に基づき、例えば、放送局装置1又はノード装置2の下位階層に接続可能なノード装置2の接続許容数、放送局装置1又はノード装置2の階層、放送局装置1又はノード装置2の転送能力、放送局装置1又はノード装置2のツリー型コンテンツ配信システムSへの参加時間、及び放送局装置1又はノード装置2の下流ツリー内に配置されているノード装置2の配置数等の判断要素の全部又は一部が比較判断されることにより、1つの接続先が決定されるようにしたので、よりバランスの良い安定したトポロジーを構築することができる。