JP2010109553A - ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法 - Google Patents

ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法 Download PDF

Info

Publication number
JP2010109553A
JP2010109553A JP2008278169A JP2008278169A JP2010109553A JP 2010109553 A JP2010109553 A JP 2010109553A JP 2008278169 A JP2008278169 A JP 2008278169A JP 2008278169 A JP2008278169 A JP 2008278169A JP 2010109553 A JP2010109553 A JP 2010109553A
Authority
JP
Japan
Prior art keywords
node
node device
introduction
information
reception quality
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008278169A
Other languages
English (en)
Other versions
JP5182016B2 (ja
Inventor
Masahiro Kamei
雅弘 亀井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2008278169A priority Critical patent/JP5182016B2/ja
Publication of JP2010109553A publication Critical patent/JP2010109553A/ja
Application granted granted Critical
Publication of JP5182016B2 publication Critical patent/JP5182016B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】ツリー型放送システムに参加するノード装置の上り帯域の測定に伴う負荷を分散させるとともに、測定精度を高めることを可能とするノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介方法を提供する。
【解決手段】ノード紹介装置が、ツリー型放送システムに参加して放送情報を受信する各ノード装置から当該放送情報の受信品質を取得し、当該受信品質が第1のノード装置の上り帯域の測定に適しているノード装置を第2のノード装置として少なくとも一つ選定し、選定した第2のノード装置を示す紹介情報を、紹介要求情報を送信してきた第1のノード装置に送信する。
【選択図】図9

Description

本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。
近年、現在のコンテンツ配信における主流形態であるサーバクライアント方式に変わる新しい形態として、ピアツーピア型の通信システムが注目されており、例えば、特許文献1に開示されるようなツリー型放送(配信)システムが提案されている。かかるツリー型放送システムにおいては、該システムに参加している複数のノード装置が放送局(例えば、放送装置)を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、当該放送局から放送(ストリーム配信)されたコンテンツデータ(例えば、映像データ及び音声データ等)が、上位階層(上流)のノード装置から下位階層(下流)のノード装置に順次転送(ストリーム中継処理)されるようになっている。
このようなツリー型放送システムにおいては、放送局の負荷を低減させることが可能であり、また、参加するノード装置の個数が増えても、放送局の負荷に影響を及ぼさないという利点がある。その一方で、コンテンツデータを中継(受信したコンテンツデータを他のノード装置に転送)するノード装置が、コンテンツデータを中継するにおいて十分な上り帯域を有していなければ、当該ノード装置より下位階層に位置するノード装置において、コンテンツデータの受信を良好に行うことができない。従って、ツリー型放送システムにおいては、各ノード装置の上り帯域をシステムの参加前に測定して、当該ノード装置がコンテンツデータの中継に適しているか否かを判断し、中継に適さないノード装置は中継を行わせないよう各ノード装置を接続するように制御すことが望ましい。
そして、従来における上り帯域の測定方法は、帯域測定用のサーバ装置を用意しておき、ノード装置等の情報処理装置が、帯域測定用の情報を当該サーバ装置に送信することで、当該サーバ装置で測定を行っていた。
特開2006−33514号公報
しかしながら、帯域測定用の情報の受信に伴ってサーバ装置側において相応の下り帯域を消費することとなる。それゆえ、ツリー型放送システムにおいて、帯域測定用のサーバ装置により各ノード装置の上り帯域を測定させると、例えば、コンテンツデータの配信開始時間が予め決められている所謂ライブ放送等、多数のノード装置が一斉に参加し得る状況下においては、サーバ装置が各ノード装置からの帯域測定の要求を一度に処理することができない事態が生じる。
そこで、本発明は、以上の点に鑑みてなされたものであり、ツリー型放送システムに参加するノード装置の上り帯域の測定に伴う負荷を分散させるとともに、測定精度を高めることを可能とするノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介方法を提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムにおいて、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介装置であって、前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得手段と、前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶手段と、前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信手段と、前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定手段と、前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信手段と、を備えることを特徴とする。
この発明によれば、ノード紹介装置が、ツリー型放送システムに参加して放送情報を受信する各ノード装置から当該放送情報の受信品質を取得し、当該受信品質が第1のノード装置の上り帯域の測定に適しているノード装置を第2のノード装置として少なくとも一つ選定し、選定した第2のノード装置を示す紹介情報を、紹介要求情報を送信してきた第1のノード装置に送信する。これにより、紹介要求情報を受信した第1のノード装置は、当該紹介要求情報が示す第2のノード装置のうち少なくとも一つに対して測定用の情報を送信し、第2のノード装置が当該測定用の情報を受信する際の転送効率に基づいて当該一のノード装置の上り帯域が測定される。
従って、帯域測定用のサーバ装置の代わりとなる第2のノード装置が、ツリー型放送システムに参加している複数のノード装置の中から選定されるので、ツリー型放送システムに参加するノード装置の上り帯域の測定に伴う負荷を分散させるができ、また、受信品質が上り帯域の測定に適しているノード装置が選定されるので、測定精度を高めることができる。
請求項2に記載の発明は、請求項1に記載のノード紹介装置において、前記ノード選定手段により選定された前記ノード装置に対応付けて、前記第2のノード装置としての紹介時刻を示す紹介時刻情報を記憶する紹介時刻情報記憶手段を更に備え、前記ノード選定手段は、過去に選定していない前記ノード装置を優先して選定し、過去に選定した前記ノード装置から選定する場合には、前記記憶された紹介時刻情報に基づいて、前回の紹介時刻が最古の前記ノード装置を優先して選定することを特徴とする。
この発明によれば、受信品質が上り帯域の測定に適している各ノード装置が、第2のノード装置としてまんべんなく紹介されるので、測定に伴う各ノード装置の負荷を効果的に分散させることができる。
請求項3に記載の発明は、請求項1または請求項2に記載のノード紹介装置において、前記ツリー型放送システムは、上り帯域が前記放送情報の中継に適している前記ノード装置が優先して当該放送情報を中継するノード装置となるよう、前記複数のノード装置が接続されるものであって、前記ノード選定手段は、前記複数の階層上において、受信品質が前記測定に適している前記ノード装置の中で最上位の階層にある前記ノード装置を優先して選定することを特徴とする。
この発明によれば、上り帯域が放送情報の中継に適しているノード装置が優先して当該放送情報を中継するノード装置となるよう、複数のノード装置が接続されてツリー型放送システムが形成されるので、放送情報の中継が安定して行われているノード装置ほど、より上位の階層に位置している可能性が高い。そして、受信品質が上り帯域の測定に適しているノード装置の中で最上位の階層にあるノード装置が優先して第2のノード装置として選定されるので、上り帯域の測定を安定して行うことができ、測定精度をより高めることができる。
請求項4に記載の発明は、複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムにおいて、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介装置に含まれるコンピュータを、前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得手段、前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶手段、前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信手段、前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定手段、前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信手段、として機能させることを特徴とする。
請求項5に記載の発明は、複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムであって、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介装置は、前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得手段と、前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶手段と、前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信手段と、前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定手段と、前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信手段と、を備えることを特徴とする。
請求項6に記載の発明は、複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムにおいて、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介処理方法であって、前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得工程と、前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶工程と、前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信工程と、前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定工程と、前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信工程と、を含むことを特徴とする。
本発明によれば、帯域測定用のサーバ装置の代わりとなる第2のノード装置が、ツリー型放送システムに参加している複数のノード装置の中から選定されるので、ツリー型放送システムに参加するノード装置の上り帯域の測定に伴う負荷を分散させるができ、また、受信品質が上り帯域の測定に適しているノード装置が選定されるので、測定精度を高めることができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。
[1.ツリー型放送システムの構成等]
始めに、図1等を参照して、本発明の一実施形態に係るツリー型放送システム全体の概要構成及び機能について説明する。
図1は、本実施形態に係るツリー型放送システムにおける各ノード装置の接続態様の一例を示す図である。
図1の下部枠101内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4a,4b、DSL(Digital Subscriber Line)回線事業者(の装置)5a,5b、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界の通信ネットワーク)8が構築されている。なお、図1の例におけるネットワーク(通信ネットワーク)8には、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。
このようなネットワーク8には、複数のノード装置(以下、「ノード」という)Nn(n=1,2,3・・・の何れか)が接続されている。また、各ノードNnには、固有のノードIDが割り当てられている。
そして、本実施形態に係るツリー型放送システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの参加により形成(構成)されるピアツーピア方式のネットワークシステムとなっている。なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9(論理的なネットワーク)である。
このようなツリー型放送システムSにおいては、該システムSに参加(トポロジーに参加)している複数のノードNnが放送局10(放送装置の一例)を最上位として複数の階層を形成しつつネットワーク8を介してツリー状に接続され、当該放送局10から放送(例えばストリームミング配信方式で放送)されたコンテンツデータ(放送情報の一例)が、上流のノードNnから下流のノードNnに順次転送(ALM(Application Layer Multicast))されるようになっている。
また、ツリー型放送システムSにおいて形成されたトポロジーは、接続先紹介サーバ20(ノード紹介装置の一例)により管理されている。そして、接続先紹介サーバ20は、ノードNnからの接続先紹介要求に応じて当該ノードNnに対してツリー型放送システムSにおける接続先となる上流のノードNnを紹介するようになっている。
更に、ツリー型放送システムSにおいては、上り帯域がコンテンツデータの中継に適している(コンテンツデータを安定的に中継することができる程度に上り帯域が十分にある)ノードNnが優先的にコンテンツデータを中継するノード(以下、「中継ノード」という)として接続されるようになっており、中継に適していないノードNnが中継ノードとならないように(他のノードNnが自ノードの下位階層として当該自ノードと接続されないように)、トポロジーが形成される。そのため、ツリー型放送システムSにおいては、当該システムに参加するノードNnがコンテンツデータの中継に適しているか否かを判断するために、既に参加しているノードNnの何れかを帯域測定用のサーバ(以下、「帯域測定サーバノード」という)とし、参加するノードNnから帯域測定サーバノードへ帯域測定用のデータを送信することにより、当該参加するノードNnの上り帯域を測定する。帯域測定サーバノードの候補は、接続先紹介サーバ20が各ノードNnのコンテンツデータの受信品質等に基づいて決定し、トポロジーに参加するノードNnは、この候補の中から帯域測定サーバノードとなるノードNnを選択する。
図2及び図3は、ノードN13がツリー型放送システムSへの参加する際の様子を示した概念図である。また、図4は、接続の要求を受けたノードNnがコンテンツデータの中継に適していない場合に、当該ノードNnの再接続と、接続を要求したノードNnの接続の様子を示した概念図である。
図2の例において、ノードN13がツリー型放送システムSに参加(言い換えれば、トポロジーに参加)する場合、先ず、当該ノードN13は、接続先紹介サーバ20へ、帯域測定サーバノード紹介要求メッセージ(M)(紹介要求情報の一例)を送信する(1)。接続先紹介サーバ20は、内部で管理している帯域測定サーバノードテーブルの中から帯域測定サーバノードの候補となるノードNnを検索し、1以上の帯域測定サーバノード候補のネットワークアドレス情報(例えば、IP(Internet Protocol)アドレス及びポート番号)等を含む帯域測定サーバノード候補紹介メッセージをノードN13へ返送(帯域測定サーバノード候補を紹介)する(2)。次に、ノードN13は、接続先紹介サーバ20から取得した帯域測定サーバノード候補の中から一つの例えばノードN2を選択し、当該ノードN2へ帯域測定要求メッセージを送信すると(3)、ノードN2は、ノードN13へ帯域測定許可応答メッセージを返信する(4)。次に、ノードN13は、ノードN2へ帯域測定用データ(測定用の情報の一例)を送信する(5)。すると、ノードN2は、帯域測定用データの受信の際のビットレート(転送効率)を算出し、算出した結果(測定結果)を含む測定結果メッセージをノードN13へ送信する(6)。そして、ノードN13は、測定結果メッセージに含まれる測定結果を保存することによって、ノードN13の上り帯域の測定が完了する。
帯域測定が完了すると、図3の例に示すように、ノードN13は、接続先紹介サーバ20へ上流ノード紹介要求メッセージを送信する(7)。接続先紹介サーバ20は、内部で管理しているトポロジー管理情報の中から下流側に接続が可能な(下流側に直接接続されたノード数が接続許容数に達していない)ノードNnを検索し、1以上の上流ノード候補のネットワークアドレス情報等を含む上流ノード候補紹介メッセージをノードN13へ返信(接続可能ノード紹介)する(8)。次に、ノードN13は、接続先紹介サーバ20から取得した上流ノード候補の中から一つの例えばノードN6を選択し、当該ノードN6へ接続要求メッセージを送信する(9)。次に、ノードN6は、内部で保存している自己の上り帯域の測定結果に基づいて、自ノードがコンテンツの中継に適していると判定した場合には、内部で管理しているノード管理テーブルにノードN13の情報を追加し、ノードN13へ接続許可応答メッセージを返信する(10)。次に、ノードN13は、ノードN6へストリーム開始要求メッセージを送信する(11)。最後に、ノードN6は、装置内部にストリーム中継用のオブジェクトを準備し、ノードN13に対してストリーミングを開始する(12)。こうして、ツリー型放送システムSへのノードN13の参加が完了する。
そして、ノードN13がツリー型放送システムSから脱退(離脱)する場合、当該ノードN13は、ストリーム供給元である上流のノードN6に対してストリーム停止要求メッセージと接続解除要求メッセージを送信する。これに応じて、ノードN6は、ストリーム中継用オブジェクトを破棄することでノードN13に対するストリーミングを停止し、同時にノード管理テーブルからノードN13の情報を削除することでノードN6との接続関係を断ち切る。
前記(9)において、接続要求メッセージを受信したノードN6が、自ノードはコンテンツの中継に適していないと判定した場合には、図4(A)に示すように、自己の上流に(上位階層として)接続されているノードN2との接続を切断する(13)。次に、ノードN6は、ノードN2のネットワークアドレス情報等を含む上流ノード接続指示メッセージをノードN13へ送信する(14)。次に、ノードN6は、接続先紹介サーバ20から紹介(前記(1)及び(2)と同様)された上流ノード候補の中から例えばノードN12を選択し、当該ノードN12へ接続要求メッセージを送信する(15)。一方、上流ノード接続指示メッセージを受信したノードN13は、ノードN2へ接続要求メッセージを送信する(16)。こうして、図4(B)に示すように、ノードN6はノードN12と接続し、ノードN13はノードN2と接続する。
[1−2.放送局10の構成等]
次に、図5を参照して、放送局10の構成及び機能について説明する。
図5は、放送局10の概要構成例を示す図である。
放送局10は、図5に示すように、主電源101、主記憶装置102、ハードディスク装置103、CPU104、ネットワークインタフェース105、周辺機器制御チップ106、ビデオチップ107、音源チップ108、キーボード109、マウス110、ディスプレイ111、及び内蔵スピーカ112等を備えて構成されている。また、主電源101、主記憶装置102、ハードディスク装置103、CPU104、ネットワークインタフェース105、周辺機器制御チップ106、ビデオチップ107、及び音源チップ108は、システムバス113を介して相互に接続されている。また、放送局10は、ルータ114を介してネットワーク8に接続される。
主記憶装置102は、RAM及びROM等を備えて構成されており、オペレーティングシステム、ストリーム制御プログラム、画面制御プログラム、トポロジー制御プログラム、及びデコーダ(プログラム)等が記憶されている。また、主記憶装置102は、ノード管理テーブルを記憶しており、該ノード管理テーブルには、放送局10に接続されたノードNnの情報(例えば、IPアドレス及びポート番号等)が登録される。また、主記憶装置102は、バッファメモリ(例えば、リングバッファ)を有する。
また、ハードディスク装置103には、放送用コンテンツデータが記録されている。
CPU104は、主記憶装置102に記憶された各種プログラムにしたがって(つまり、プログラムの実行により)、例えばハードディスク装置103に記録されたコンテンツデータをパケット化し、ノード管理テーブルに登録されたノードNnに対して放送(ストリーム配信)する放送処理を行う。
なお、このような放送局10として、専用の放送サーバの他、何れかのノードNnが適用されても良い。
[1−3.接続先紹介サーバ20の構成等]
次に、図6及び図7を参照して、接続先紹介サーバ20の構成及び機能について説明する。
図6は、接続先紹介サーバ20の概要構成例を示す図である。また、図7(A)は、視聴ノードテーブルに登録される内容の例を示す図であり、図7(B)は、帯域測定サーバノードテーブルに登録される内容の例を示す図である。
接続先紹介サーバ20は、図6に示すように、主電源201、主記憶装置202、ハードディスク装置203、CPU204、ネットワークインタフェース205、周辺機器制御チップ206、ビデオチップ207、キーボード208、マウス209、及びディスプレイ210等を備えて構成されている。また、主電源201、主記憶装置202、ハードディスク装置203、CPU204、ネットワークインタフェース205、周辺機器制御チップ206、及びビデオチップ207は、システムバス211を介して相互に接続されている。また、接続先紹介サーバ20は、ルータ212を介してネットワーク8に接続される。
主記憶装置202は、RAM及びROM等を備えて構成されており、オペレーティングシステム、放送局管理プログラム、トポロジー管理プログラム、接続先紹介プログラム、帯域測定サーバノード紹介プログラム(ノード紹介処理プログラムの一例)及び運用管理プログラム等のサーバ処理プログラムが記憶されている。なお、サーバ処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしても良いし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
ハードディスク装置203には、放送局管理データベースが構築されている。放送局管理データベースには、各放送局10の所在情報(例えば、IPアドレス及びポート番号等)が放送チャンネル情報(例えばチャンネル番号)に対応付けられて登録される。
また、ハードディスク装置203には、視聴ノードテーブル及び帯域測定サーバノードテーブルが記憶される。視聴ノードテーブルは、放送チャンネル毎に存在し、放送チャンネル情報に対応付けられている。そして、視聴ノードテーブルには、例えば、図7(A)に示すように、トポロジーに参加している各ノードNn毎に、ネットワークアドレス情報(例えばIPアドレス及びポート番号)、現在接続されている上流のノードNnを示す情報(例えばノードID)、現在接続されている下流のノードNnを示す情報(例えば、ノードID)、現在接続されている下流のノードNnの接続数、下流のノードNnの接続許容数(例えば、2、これより多くても良い)、コンテンツデータの受信品質(受信品質情報の一例)等の情報が、対応付けられて視聴ノード情報として登録される。ここで、コンテンツデータの受信品質は、例えば、受信品質が良い又は悪いを示す情報である。
帯域測定サーバノードテーブルは、放送チャンネル毎に存在し、視聴ノードテーブルに対応付けられている。そして、帯域測定サーバノードテーブルには、例えば、図7(B)に示すように、帯域測定サーバノードの候補としての条件を満たすノードNn毎に、ネットワークアドレス情報、帯域測定サーバノードの候補として紹介された日時を示す紹介日時(紹介時刻情報の一例)等の情報が、対応付けられてサーバノード情報として登録される。ここで、帯域測定サーバノードの候補としての条件を満たすノードとは、対応する視聴ノードテーブルに登録されている(対応する放送チャンネルのトポロジーに参加している)ノードのうち、受信品質が良いノードのことをいう。
CPU204は、主記憶装置202に記憶された各種プログラムにしたがって、各種処理を実行するとともに、本発明における受信品質情報取得手段、受信品質情報記憶手段、紹介要求情報受信手段、ノード選定手段、紹介情報送信手段及び紹介日時情報記憶手段等として機能する。
例えば、CPU204は、ツリー型放送システムS(各放送チャンネルのトポロジー)に参加し、コンテンツデータを受信している各ノードNnから、コンテンツの視聴状態等を示す視聴中報告メッセージを受信し、当該視聴中報告メッセージから、受信パケット損失レート(本発明における受信品質情報の他の例)を取得する。そして、CPU204は、受信パケット損失レートからコンテンツデータの受信品質を判断し(例えば、受信パケット損失レートが所定値以上であれば、良い、受信パケット損失レートが所定値未満でであれば、悪い、と判断する)、当該判断結果を、視聴中報告メッセージの受信元であるノードNn(以下、「報告ノード」という)に対応する受信品質として視聴ノードテーブルに設定する。このとき、CPU204は、報告ノードの受信品質が良いと判断した場合には、当該報告ノードを帯域測定サーバノードテーブルに登録する(登録されていない場合)、一方、報告ノードの受信品質が悪いと判断した場合には、当該報告ノードを帯域測定サーバノードテーブルから削除する(登録されている場合)。なお、トランスポート層のプロトコルとしてTCP(Transmission Control Protocol)を使用し、TCPをベースとしてストリーミングを実現している場合には、受信品質を示す情報として受信ビットレートを使用しても良い。TCPであれば、パケット損失が発生した場合には、損失したパケットの再送がトランスポート層のレベルで行われることによって、受信ビットレートが低くなることから、当該情報から受信品質を判断することが可能である。
また、CPU204は、新たにトポロジーへ参加希望するノードNnから帯域測定サーバ紹介要求メッセージを受信すると、帯域測定サーバノードテーブルに登録されたノードNnから、帯域測定サーバノードの候補を検索し、1以上の候補を選定する。このとき、CPU204は、先ず、帯域測定サーバノードの候補として紹介されていない(帯域測定サーバノードテーブル上で紹介日時が未設定である)ノードNnを優先的に選定し、次いで、帯域測定サーバノードとして紹介された日時が最も古いノードNnから古い順に優先的に選定する。そして、CPU204は、選定した候補のネットワークアドレス情報を含む帯域測定サーバノード候補紹介メッセージを、要求元のノードNnに送信すると、帯域測定サーバノードテーブル上における当該候補の紹介日時に現在日時を設定する。
なお、CPU204は、帯域測定サーバノードの候補を選定する際に、トポロジー上においてより上位階層のノードNnから階層が高い順に優先的に設定しても良い。コンテンツデータの中継に適していない(上り帯域が十分ではない)ノードNnは、図4を用いて説明した再接続によって、最下位の階層または最下位に近い階層に追いやられる可能性が高く、これによって、コンテンツデータの中継が安定して行われているノードNnほど、より上位の階層に位置している可能性が高くなる。それゆえ、より上位階層のノードNnを帯域測定サーバノードとすることで、安定的に精度良く帯域測定をすることができる可能性が高まる。この場合においては、例えば、CPU204は、候補として紹介されていないノードNnが多数存在する場合には、その紹介されていない複数のノードNnの中で最上位に位置するノードNnを選定しても良いし、帯域測定サーバノードとして紹介された日時が古いノードNnから優先的に選定する際に、必要とする数よりも多めに選定し、その中から、より上位に位置するノードNnから順に必要数に達するまで絞り込んで選定しても良い。
また、CPU204は、自己の上り帯域の測定を行ったノードNnからの接続先紹介要求に応じて視聴ノードテーブルから下流に接続可能なノードNnを検索し、検索された1以上のノードNnの候補を接続先として紹介する紹介処理を行う。
[1−4.ノードNnの構成等]
次に、図8を参照して、ノードNnの構成及び機能について説明する。
図8は、ノードNnの概要構成例を示す図である。
ノードNnは、図8に示すように、主電源301、主記憶装置302、ハードディスク装置303、CPU304、ネットワークインタフェース305、周辺機器制御チップ306、ビデオチップ307、音源チップ308、キーボード309、マウス310、ディスプレイ311、及び内蔵スピーカ312等を備えて構成されている。また、補助電源301b、主記憶装置302、ハードディスク装置303、CPU304、ネットワークインタフェース305、周辺機器制御チップ306、ビデオチップ307、及び音源チップ308は、システムバス313を介して相互に接続されている。また、ノードNnは、ルータ314を介してネットワーク8に接続される。
なお、ノードNnとしては、PC、STB(Set Top Box)、或いは、TV受信機等を適用可能である。
主記憶装置302は、RAM及びROM等を備えて構成されており、オペレーティングシステム、画面制御プログラム、ストリーム制御プログラム、トポロジー制御プログラム、及びデコーダ等が記憶されている。これら各種プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしても良いし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
また、主記憶装置302には、受信したコンテンツデータを一時的に蓄積するためのバッファメモリ(例えば、リングバッファ)を有する。また、主記憶装置302は、ノード管理テーブルを記憶している。ノード管理テーブルには、自ノード(自己)に接続されている下流のノードNnのネットワークアドレス情報(IPアドレス及びポート番号等)が登録される。更に、主記憶装置302には、自ノードの上り帯域の測定結果を含む自ノード情報が記憶される。
そして、CPU304は、主記憶装置302に記憶された各種プログラム(本発明のノード処理プログラムを含む)にしたがって、ツリー型放送システムS(ある放送チャンネルに係るトポロジー)に参加するための参加処理を実行し、参加後に放送局10又は上流ノードNnから放送されネットワークインタフェース305を介して受信されたコンテンツデータのパケット(コンテンツストリーム)をバッファリングさせつつ再生処理を行う。
ここで、上記参加処理では、先ず、接続先紹介サーバ20に対して帯域測定サーバノード紹介要求がなされ、接続先紹介サーバ20から紹介された帯域測定サーバノードに接続(セッション確立)して帯域測定が行われる。次いで、接続先紹介サーバ20に対して接続先紹介要求がなされ、接続先紹介サーバ20から紹介された上流のノードNnに接続(セッション確立)してストリーム開始要求がなされる。
また、上記再生処理では、受信されバッファメモリに蓄積されたコンテンツデータ(例えば、ビデオデータ及びオーディオデータ)が読み出されデコーダによりデコードされる。そして、デコードされたビデオデータ(映像情報)がビデオチップ307を通じてディスプレイ311に出力され、デコードされたオーディオデータ(音声情報)が音源チップ308を通じて内蔵スピーカ312(又は図示しない外部スピーカ)から出力される。また、上記再生処理では、コンテンツデータ受信の際のパケット損失レートが測定され、一定時間間隔で、当該パケット損失レートを含む視聴中報告メッセージが接続先紹介サーバ20に送信される。
また、自ノードに下流のノードNnが接続されている場合、CPU304は、バッファメモリに蓄積されたコンテンツデータの各パケットを当該下流のノードNnに転送(コンテンツストリームの中継)する転送処理を行う。
更に、CPU304は、下流のノードNnからストリーム停止要求メッセージと接続解除要求メッセージを受信した場合、当該ノードNnに対するストリーミングを停止し、ノード管理テーブルから当該ノードNnの情報を削除することで当該ノードNnとの接続を解除する。
[2.ツリー型放送システムSの動作]
次に、図9乃至図12を参照して、本実施形態に係るツリー型放送システムSの動作について説明する。
図9は、接続先紹介サーバ20におけるCPU204により実行される処理を示すフローチャートである。
図9の処理は、例えば接続先紹介サーバ20の電源がONとされた場合に開始される。先ず、CPU204は、接続先紹介サーバ20として機能するための各種の初期化処理を実行すると(ステップS1)、ノードNnからのメッセージ受信待ちに移行し(ステップS2)、管理者等によりキーボード208やマウス209が操作されること等によって、シャットダウンが指示されたか否かを判定する(ステップS3)。
このとき、CPU204は、シャットダウンが指示された場合には(ステップS3:YES)、当該処理を終了させ、シャットダウンが指示されていない場合には(ステップS3:NO)、上流ノード紹介要求メッセージを受信したか否かを判定する(ステップS4)。このときCPU204は、上流ノード紹介要求メッセージを受信した場合には(ステップS4:YES)、ステップS5に移行し、上流ノード紹介要求メッセージを受信していない場合には(ステップS4:NO)、ステップS7に移行する。
ステップS5に移行したCPU204は、視聴ノードテーブルから接続先候補のノードNnを1以上検索する。次いで、CPU204は、検索したノードNnのネットワークアドレス情報を視聴ノードテーブルから取得し、当該情報を含む上流ノード候補紹介メッセージを、上流ノード紹介要求メッセージを送信してきたノードNnに送信する(ステップS6)。CPU204は、当該処理を終えると、メッセージ受信待ちに移行する(ステップS2)。
一方、ステップS7に移行したCPU204は、帯域測定サーバノード紹介要求メッセージを受信したか否かを判定する。このとき、CPU204は、帯域測定サーバノード紹介要求メッセージを受信した場合には(ステップS7:YES)、ステップS8に移行し、帯域測定サーバノード紹介要求メッセージを受信していない場合には(ステップS7:NO)、ステップS11に移行する。
ステップS8に移行したCPU204は、帯域測定サーバノードテーブルから帯域測定サーバノードの候補となるノードNnを1以上検索する。例えば、CPU204は、帯域測定サーバノードテーブルに登録されているノードNnのうち、紹介日時が設定されていないノードNnの中から必要な数の候補を選定する。また、CPU204は、選定したノードNnの数が必要数に足りない場合には、帯域測定サーバノードテーブルに登録されているノードNnのうち紹介日時が最も古いものから古い順に必要数に達するまで候補を選定する。CPU204は、帯域測定サーバノードの候補となるノードNnを検索すると、帯域測定サーバノードテーブルから当該検索したノードNnのネットワークアドレス情報を取得し、当該情報を含む帯域測定サーバノード候補紹介メッセージを、帯域測定サーバノード紹介要求メッセージを送信してきたノードNnに送信する(ステップS9)。次いで、CPU204は、検索したノードNnの紹介日時に現在日時を設定することによって紹介日時を更新すると(ステップS10)、メッセージ受信待ちに移行する(ステップS2)。
一方、ステップS11に移行したCPU204は、接続完了通知メッセージを受信したか否かを判定する。このとき、CPU204は、接続完了通知メッセージを受信した場合には(ステップS11:YES)、ステップS12に移行し、接続完了通知メッセージを受信していない場合には(ステップS11:NO)、ステップS13に移行する。
ステップS12に移行したCPU204は、接続完了通知メッセージを送信してきたノードNnの視聴ノード情報を視聴ノードテーブルに追加登録する。具体的に、CPU204は、当該メッセージに設定されているメッセージ送信元のノードNnのネットワークアドレス情報、当該ノードNnの上流として接続されたノードNnを示す情報等を、視聴ノード情報として登録する。CPU204は、当該処理を終えると、メッセージ受信待ちに移行する(ステップS2)。
一方、ステップS13に移行したCPU204は、離脱通知メッセージを受信したか否かを判定する。このとき、CPU204は、離脱通知メッセージを受信した場合には(ステップS13:YES)、ステップS14に移行し、離脱通知メッセージを受信していない場合には(ステップS13:NO)、ステップS17に移行する。
ステップS14に移行したCPU204は、離脱通知メッセージを送信してきたノードNnの視聴ノード情報を視聴ノードテーブルから削除する(ステップS14)。次いで、CPU204は、当該ノードNnのサーバノード情報が帯域測定サーバノードテーブルに存在するか否かを判定する(ステップS15)。このとき、CPU204は、当該サーバノード情報が存在しない場合には(ステップS15:NO)、メッセージ受信待ちに移行し(ステップS2)、当該サーバノード情報が存在する場合には(ステップS15:YES)、当該サーバノード情報を帯域測定サーバノードテーブルから削除して(ステップS16)、メッセージ受信待ちに移行する(ステップS2)。
一方、ステップS17に移行したCPU204は、視聴中報告メッセージを受信したか否かを判定する。このとき、CPU204は、視聴中報告メッセージを受信した場合には(ステップS17:YES)、ステップS18に移行し、視聴中報告メッセージを受信していない場合には(ステップS17:NO)、メッセージ受信待ちに移行する(ステップS2)。
ステップS18に移行したCPU204は、視聴ノードテーブルを更新する。具体的に、CPU204は、視聴中報告メッセージに含まれる例えばパケット損失レート等に基づいて受信品質の良否を判定し、当該判定結果を当該メッセージを送信してきたノードNnの受信品質として視聴ノードテーブルに上書き設定する。次いで、CPU204は、当該ノードNnの受信品質が良いか否かを判定する(ステップS19)。このとき、CPU204は、受信品質が悪い場合には(ステップS19:NO)、ステップS15に移行し、受信品質が良い場合には(ステップS19:YES)、ステップS20に移行する。
ステップS20に移行したCPU204は、視聴中報告メッセージを送信してきたノードNnのサーバノード情報が帯域測定サーバノードテーブルに存在するか否かを判定する。このとき、CPU204は、当該サーバノード情報が存在する場合には(ステップS20:NO)、メッセージ受信待ちに移行し(ステップS2)、当該サーバノード情報が存在しない場合には(ステップS20:YES)、当該サーバノード情報を帯域測定サーバノードテーブルに追加登録する(ステップS21)。具体的に、CPU204は、視聴ノードテーブルに設定されている当該ノードNnのネットワーク情報を含み、紹介日時を未設定とするサーバノード情報を帯域測定サーバノードテーブルに登録する。CPU204は、当該処理を終えると、メッセージ受信待ちに移行する(ステップS2)。
図10及び図11は、ノードNnにおけるCPU304により実行される処理を示すフローチャートである。
図10及び図11の処理は、例えば利用者の指示に基づいて、ツリー型放送システムSに参加するためのプログラムが起動された場合に開始される。先ず、ノードNnのCPU304は、ツリー型放送システムSに参加するための各種の初期化処理を実行すると(ステップS21)、図12を用いて後述する帯域測定処理を実行する(ステップS22)。
次いで、CPU304は、プログラムの終了命令を利用者から受けたか否かを判定する(ステップS23)。このとき、CPU304は、終了命令を受けた場合には(ステップS23:YES)、ステップS24に移行し、終了命令を受けていない場合には(ステップS23:NO)、ステップS25に移行する。
ステップS24に移行したCPU304は、プログラムを終了させるための各種処理を実行し、当該処理を終了させる。
一方、ステップS25に移行したCPU304は、ある放送チャンネルのトポロジーへの接続開始命令を利用者から受けたか否かを判定する。このとき、CPU304は、接続開始命令を受けていない場合には(ステップS25:NO)、ステップS23に移行し、接続開始命令を受けた場合には(ステップS25:YES)、接続先紹介サーバ20に、上流ノード候補の問い合わせを行う(ステップS26)。具体的に、CPU304は、上流ノード紹介要求メッセージを接続先紹介サーバ20に送信し、これに応じて接続先紹介サーバ20から送信されてきた上流ノード候補紹介メッセージを受信する。
次いで、CPU304は、こうして取得した上流ノード候補の中から上流ノードとして接続するノードNnを選択する(ステップS27)。次いで、CPU304は、選択したノードNnのネットワークアドレス情報等を上流ノード候補紹介メッセージから取得すると、当該情報に基づいて、当該ノードNnに接続要求メッセージを送信し(ステップS28)、これに応じて当該ノードNnから送信されてきた応答メッセージを受信する(ステップS29)。
次いで、CPU304は、応答メッセージが接続許可応答メッセージであるか否かを判定する(ステップS30)。このとき、CPU304は、応答メッセージが接続許可応答メッセージではない場合、つまり、応答メッセージが上流ノード接続指示メッセージである場合には(ステップS30:NO)、ステップ31に移行し、応答メッセージが接続許可応答メッセージである場合には(ステップS30:YES)、ステップS32に移行する。
ステップS31に移行したCPU304は、接続を要求したノードNnの上流ノードを接続先のノードとして選択し(ステップS31)、当該上流ノードのネットワークアドレス情報等を上流ノード接続指示メッセージから取得すると、当該情報に基づいて、当該上流ノードに接続要求メッセージを送信する(ステップS28)。
一方、ステップS32に移行したCPU304は、選択したノードNnからストリーミングでコンテンツデータを受信するための接続処理(ノードNnとのネゴシエーション)を実行する。接続処理が完了すると、CPU304は、自ノードのネットワークアドレス情報、自ノードの上流ノードとして接続したノードNnを示す情報等を含む接続完了通知メッセージを接続先紹介サーバ20に送信する(ステップS33)。次いで、CPU304は、接続先のノードNnへストリーム開始要求メッセージを送信し(ステップS34)、これに応じて接続先のノードNnから送信されてきたストリーム開始通知メッセージを受信する(ステップS35)。その後、接続先のノードNnからコンテンツデータが送信されてくるので、CPU304は、当該コンテンツデータの受信を開始するとともに、受信品質の監視を開始する(ステップS36)。
次いで、CPU304は、一定時間が経過したか否かを判定する(ステップS41)。このとき、CPU304は、一定時間が経過した場合には(ステップS41:YES)、ステップS42に移行し、一定時間が経過していない場合には(ステップS41:NO)、ステップS43に移行する。
ステップS42に移行したCPU304は、コンテンツデータの受信品質を示す情報として、例えば、受信パケット損失レートを含む視聴中報告メッセージを接続先紹介サーバに送信すると、ステップS41に移行する。
一方、ステップS43に移行したCPU304は、帯域測定要求メッセージを受信したか否かを判定する(ステップS43)。このとき、CPU304は、帯域測定要求メッセージを受信した場合には(ステップS43:YES)、ステップS44に移行し、帯域測定要求メッセージを受信していない場合には(ステップS43:NO)、ステップS49に移行する。
ステップS44に移行したCPU304は、帯域測定要求メッセージを送信してきた帯域測定要求元としてのノードNnに測定許可応答メッセージを送信する(ステップS44)。これに応じて当該ノードNnから帯域測定用データが送信されてくるので、CPU304は、当該データを受信する(ステップS45)。次いで、CPU304は、一定時間が経過したか否かを判定し(ステップS46)、一定時間が経過していない場合には(ステップS46:NO)、帯域測定用データの受信を継続し(ステップS45)、一定時間が経過した場合には(ステップ46:YES)、受信した帯域測定用データのビット数を、経過した時間で除することによって受信ビットレートを算出する(ステップS47)。次いで、CPU304は、算出した受信ビットレートを含む測定結果メッセージを要求元のノードNnに送信し(ステップS48)、ステップS41に移行する。
一方、ステップS49に移行したCPU304は、接続要求メッセージを受信したか否かを判定する(ステップS49)。このとき、CPU304は、接続要求メッセージを受信した場合には(ステップS49:YES)、ステップS50に移行し、接続要求メッセージを受信していない場合には(ステップS50:NO)、ステップS58に移行する。
ステップS50に移行したCPU304は、内部で保持している自ノード情報に含まれる上り帯域の測定結果に基づいて、自ノードはコンテンツデータの中継に適したノードであるか否かを判定する。例えば、上り帯域が所定値以上である場合には、コンテンツデータの中継に適したノードであると判定され、上り帯域が当該所定値未満である場合には、コンテンツデータの中継に適していないノードであると判定される。このとき、CPU304は、自ノードがコンテンツデータの中継に適したノードである場合には(ステップS50:YES)、ステップS51に移行し、自ノードがコンテンツデータの中継に適していないノードである場合には(ステップS50:NO)、ステップS56に移行する。
ステップS51に移行したCPU304は、接続要求メッセージを送信してきた接続要求元としてのノードNnに接続許可応答メッセージを送信し(ステップS51)、ストリーミングによりコンテンツデータを要求元のノードNnに送信するための接続処理を実行する(ステップS52)。接続処理が完了すると、要求元のノードNnからストリーム開始要求メッセージが送信されてくるので、CPU304は、当該メッセージを受信し(ステップS53)、これに応じて、ストリーム開始通知メッセージを要求元のノードNnに送信する(ステップS54)。次いで、CPU304は、自ノードの上流ノードから受信しているコンテンツデータの、要求元のノードに対する送信を開始すると(ステップS55)、ステップS41に移行する。
一方、ステップS56に移行したCPU304は、自ノードの上流ノードとの接続を切断し(ステップS56)、当該上流ノードのネットワークアドレス情報を含む上流ノード接続指示メッセージを要求元のノードNnに送信すると(ステップS57)、再接続を開始し(ステップS59)、上流ノード候補の問い合わせを行う(ステップS26)。
他方、ステップS58に移行したCPU304は、何らかの原因で上流ノードとの接続が切断されたか否かを判定する。このときCPU304は、上流ノードとの接続が切断された場合には(ステップS58:NO)、再接続を開始し(ステップS59)、上流ノードとの接続が切断されていない場合には(ステップS58:NO)、現在接続しているトポロジーからの離脱命令を利用者から受けたか否かを判定する(ステップS60)。このとき、CPU304は、離脱命令を受けた場合には(ステップS60:YES)、ステップS61に移行し、離脱命令を受けていない場合には(ステップS60:NO)、ステップS41に移行する。
ステップS61に移行したCPU304は、自ノードの上流ノード及び下流ノードの全てのノードNnとの接続を切断し(ステップS61)、接続先紹介サーバ20に離脱通知メッセージを送信すると(ステップS62)、ステップS23に移行する。
図12(A)は、ノードNnにおけるCPU304により実行される帯域測定処理の一例を示すフローチャートである。また、図12(B)は、帯域測定処理の他の例を示すフローチャートであり、同図において、図12(A)と同様の要素については同様の符号を付してある。また、図12(A)は、帯域測定を1回のみ行う場合の例であり、図12(B)は、帯域測定を複数回行う場合の例である。
図12(A)の例において、CPU304は、接続先紹介サーバ20から帯域測定サーバノードの候補を取得する(ステップS71)。具体的に、CPU304は、帯域測定サーバノード紹介要求メッセージを接続先紹介サーバ20に送信し、これに応じて接続先紹介サーバ20から送信されてきた帯域測定サーバノード候補紹介メッセージを受信する。
次いで、CPU304は、こうして取得した帯域測定サーバノード候補の中から帯域測定サーバノードとして接続する一つのノードNnを帯域測定サーバノードとして選択する(ステップS72)。次いで、CPU304は、選択した帯域測定サーバノードのネットワークアドレス情報等を帯域測定サーバノード候補紹介メッセージから取得すると、当該情報に基づいて、当該ノードNnに接続する(ステップS73)。次いで、CPU304は、帯域測定要求メッセージを帯域測定サーバノードに送信し(ステップS74)、これに応じて当該ノードから送信されてきた測定許可応答メッセージを受信すると(ステップS75)、帯域測定用データを帯域測定サーバノードに送信する(ステップS76)。
次いで、CPU304は、帯域測定サーバノードから測定結果メッセージを受信したか否かを判定し(ステップS77)、当該メッセージを受信していない場合には(ステップS77:NO)、帯域測定用データの送信を継続し(ステップS76)、当該メッセージを受信した場合には(ステップ77:YES)、当該測定結果メッセージに設定されている測定結果を含む自ノード情報を主記憶装置302に保存して(ステップS78)、帯域測定処理を終了させる。
一方、図12(B)の例において CPU304は、図12(A)と同様にステップS71〜S77を実行すると、測定結果メッセージに設定されている測定結果を一時的に主記憶装置302に保存する(ステップS79)、次いで、CPU304は、帯域測定が所定回数実行されたか否かを判定し(ステップS80)、未だ所定回数実行されていない場合には(ステップS80:NO)、ステップS72に移行する。
そして、CPU304は、帯域測定の回数が所定回数に達すると(ステップS80:YES)、複数回実行された帯域測定の結果を統合する(ステップS81)、具体的に、CPU304は、各測定結果としてのビットレートの平均値を算出して、統合した測定結果とする。次いで、CPU304は、統合した測定結果を含む自ノード情報を主記憶装置302に保存して(ステップS82)、帯域測定処理を終了させる。
なお、上記説明した帯域測定処理では、一度に一つの帯域測定サーバノードが選択されるようにしていたが、一度に複数の帯域測定サーバノードが選択されるようにしても良い。この場合において、CPU304は、例えば、選択した複数の帯域測定サーバノードに対して一斉に帯域測定用データを送信し、当該複数の帯域測定サーバノードから送信されてきた測定結果メッセージに含まれるビットレートを合算して、測定結果を統合すれば良い。
以上説明したように、本実施形態によれば、接続先紹介サーバ20のCPU204が、ツリー型放送システムSに参加してコンテンツデータを受信する各ノードNnから当該コンテンツデータの受信品質を取得し、ハードディスク装置203に記憶される視聴ノードテーブルに、取得先のノードNnと対応付けて受信品質を設定し、新たにトポロジーへ参加するノードNnから帯域測定サーバ紹介要求メッセージを受信し、視聴ノードテーブルに設定された受信品質が良いノードNnの中から少なくとも一つを帯域測定サーバノード候補として選定し、選定した帯域測定サーバノード候補のネットワークアドレス情報を含む帯域測定サーバノード候補紹介メッセージを、要求元のノードNnに送信する。これにより、帯域測定サーバノード候補紹介メッセージを受信したノードNnは、当該帯域測定サーバノード候補紹介メッセージが示す帯域測定サーバノードのうち少なくとも一つを帯域測定サーバノードとして測定用データを送信し、帯域測定サーバノードが当該測定用データを受信する際の転送効率に基づいて、新たにトポロジーへ参加するノードNnの上り帯域が測定される。
従って、帯域測定用のサーバ装置の代わりとなる帯域測定サーバノードが、ツリー型放送システムSに参加している複数のノードNnの中から選定されるので、ツリー型放送システムSに参加するノードNnの上り帯域の測定に伴う負荷を分散させるができ、また、受信品質が上り帯域の測定に適しているノードNnが選定されるので、測定精度を高めることができる。
また、接続先紹介サーバ20のCPU204が、ハードディスク装置203に記憶される帯域測定サーバノードテーブル上において、選定した帯域測定サーバノード候補の紹介日時に現在日時を設定し、帯域測定サーバノード候補を選定する際、過去に選定していないノードNnを優先して選定し、過去に選定したノードNnから選定する場合には、帯域測定サーバノードテーブルに設定された紹介日時が最古のノードNnを優先して選定するので、受信品質が上り帯域の測定に適している各ノードNnが、帯域測定サーバノードとしてまんべんなく紹介されるので、測定に伴う各ノードNnの負荷を効果的に分散させることができる。
また、ツリー型放送システムSは、上り帯域がコンテンツデータの中継に適しているノードNnが優先して当該コンテンツデータを中継するノードNnとなるよう、複数のノードNnが接続されるものであって、接続先紹介サーバ20のCPU204が、トポロジー上において、受信品質が測定に適しているノードNnの中からより上位階層のノードNnを優先して帯域測定サーバノード候補として選定するように構成することで、上り帯域の測定を安定して行うことができ、測定精度をより高めることができる。
一実施形態に係るツリー型放送システムにおける各ノード装置の接続態様の一例を示す図である。 一実施形態において、ノードN13がツリー型放送システムSへの参加する際の様子を示した概念図である。 一実施形態において、ノードN13がツリー型放送システムSへの参加する際の様子を示した概念図である。 一実施形態において、接続の要求を受けたノードNnがコンテンツデータの中継に適していない場合に、当該ノードNnの再接続と、接続を要求したノードNnの接続の様子を示した概念図である。 一実施形態に係る放送局10の概要構成例を示す図である。 一実施形態に係る接続先紹介サーバ20の概要構成例を示す図である。 一実施形態に係る接続先紹介サーバ20のハードディスク装置203に記憶されるテーブルに登録される内容の例を示す図であり、(A)は、視聴ノードテーブルであり、(B)は、帯域測定サーバノードテーブルである。 一実施形態に係るノードNnの概要構成例を示す図である。 一実施形態に係る接続先紹介サーバ20におけるCPU204により実行される処理を示すフローチャートである。 一実施形態に係るノードNnにおけるCPU304により実行される処理を示すフローチャートである。 一実施形態に係るノードNnにおけるCPU304により実行される処理を示すフローチャートである。 一実施形態に係るノードNnにおけるCPU304により実行される帯域測定処理の一例を示すフローチャートである。(B)は、帯域測定処理の他の例を示すフローチャートである。
符号の説明
8 ネットワーク
9 オーバーレイネットワーク
10 放送局
20 接続先紹介サーバ
101,201,301 主電源
102,202,302 主記憶装置
103,203,303 ハードディスク装置
104,204,304 CPU
105,205,305 ネットワークインタフェース
106,206,306 周辺機器制御チップ
107,207,307 ビデオチップ
108,308 音源チップ
109,208,309 キーボード
110,209,310 マウス
111,210,311 ディスプレイ
112,312 内蔵スピーカ
113,211,313 システムバス
114,212,314 ルータ
Nn ノード
S ツリー型放送システム

Claims (6)

  1. 複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムにおいて、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介装置であって、
    前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得手段と、
    前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶手段と、
    前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信手段と、
    前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定手段と、
    前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信手段と、
    を備えることを特徴とするノード紹介装置。
  2. 請求項1に記載のノード紹介装置において、
    前記ノード選定手段により選定された前記ノード装置に対応付けて、前記第2のノード装置としての紹介時刻を示す紹介時刻情報を記憶する紹介時刻情報記憶手段を更に備え、
    前記ノード選定手段は、過去に選定していない前記ノード装置を優先して選定し、過去に選定した前記ノード装置から選定する場合には、前記記憶された紹介時刻情報に基づいて、前回の紹介時刻が最古の前記ノード装置を優先して選定することを特徴とするノード紹介装置。
  3. 請求項1または請求項2に記載のノード紹介装置において、
    前記ツリー型放送システムは、上り帯域が前記放送情報の中継に適している前記ノード装置が優先して当該放送情報を中継するノード装置となるよう、前記複数のノード装置が接続されるものであって、
    前記ノード選定手段は、前記複数の階層上において、受信品質が前記測定に適している前記ノード装置の中で最上位の階層にある前記ノード装置を優先して選定することを特徴とするノード紹介装置。
  4. 複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムにおいて、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介装置に含まれるコンピュータを、
    前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得手段、
    前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶手段、
    前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信手段、
    前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定手段、
    前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信手段、
    として機能させることを特徴とするノード紹介処理プログラム。
  5. 複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムであって、
    自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介装置は、
    前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得手段と、
    前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶手段と、
    前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信手段と、
    前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定手段と、
    前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信手段と、
    を備えることを特徴とするツリー型放送システム。
  6. 複数のノード装置の参加により形成されたツリー型放送システムであり、当該複数のノード装置が放送装置を最上位として複数の階層を形成しつつ通信手段を介してツリー状に接続され、前記放送装置により放送された放送情報が、上位階層の前記ノード装置から下位階層の前記ノード装置に順次転送されるようにし、一の前記ノード装置から送信される測定用の情報を他の前記ノード装置が受信する際の転送効率に基づいて当該一のノード装置の上り帯域を測定するツリー型放送システムにおいて、自己の上り帯域の測定を要する第1の前記ノード装置に対し、前記測定用の情報を受信する第2の前記ノード装置を紹介するノード紹介処理方法であって、
    前記放送情報を受信する各前記ノード装置から、当該放送情報の受信品質を示す受信品質情報を取得する受信品質情報取得工程と、
    前記取得された受信品質情報を、取得先の前記ノード装置に対応付けて記憶する受信品質情報記憶工程と、
    前記第1のノード装置から送信されてきた、前記第2のノード装置の紹介の要求を示す紹介要求情報を受信する紹介要求情報受信工程と、
    前記記憶された受信品質情報に基づいて、受信品質が前記測定に適している前記ノード装置を前記第2のノード装置として少なくとも一つ選定するノード選定工程と、
    前記選定された第2のノード装置を示す紹介情報を、前記紹介要求情報を送信してきた前記第1のノード装置に送信する紹介情報送信工程と、
    を含むことを特徴とするノード紹介処理方法。
JP2008278169A 2008-10-29 2008-10-29 ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法 Expired - Fee Related JP5182016B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008278169A JP5182016B2 (ja) 2008-10-29 2008-10-29 ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008278169A JP5182016B2 (ja) 2008-10-29 2008-10-29 ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法

Publications (2)

Publication Number Publication Date
JP2010109553A true JP2010109553A (ja) 2010-05-13
JP5182016B2 JP5182016B2 (ja) 2013-04-10

Family

ID=42298576

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008278169A Expired - Fee Related JP5182016B2 (ja) 2008-10-29 2008-10-29 ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法

Country Status (1)

Country Link
JP (1) JP5182016B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004129205A (ja) * 2002-07-30 2004-04-22 Sony Corp 情報処理装置および方法、並びにプログラム
JP2010518661A (ja) * 2007-03-16 2010-05-27 華為技術有限公司 オーバレイネットワークのノード間ネットワーク性能を測定する方法、装置、およびシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004129205A (ja) * 2002-07-30 2004-04-22 Sony Corp 情報処理装置および方法、並びにプログラム
JP2010518661A (ja) * 2007-03-16 2010-05-27 華為技術有限公司 オーバレイネットワークのノード間ネットワーク性能を測定する方法、装置、およびシステム

Also Published As

Publication number Publication date
JP5182016B2 (ja) 2013-04-10

Similar Documents

Publication Publication Date Title
JP4518169B2 (ja) ツリー型放送システム、モード切替指示方法、放送装置、及び放送処理プログラム
JP4840329B2 (ja) ツリー型放送システム、再接続処理方法、ノード装置、ノード処理プログラム、サーバ装置、及びサーバ処理プログラム
US8116235B2 (en) Peer-to-peer aided live video sharing system
US20100153578A1 (en) Method and Apparatus for Peer to Peer Streaming
US8134937B2 (en) Distributed content storage system, content storage method, node device, and node processing program
JP5092877B2 (ja) ツリー型放送システム、パケット送信方法、ノード装置、及びノード処理プログラム
JP4370995B2 (ja) 接続態様設定装置及び接続態様設定方法、並びに接続態様制御装置及び接続態様制御方法等
JP5115509B2 (ja) コンテンツ配信システム、ノード装置、離脱処理遅延方法及び離脱処理遅延制御プログラム
JP4877108B2 (ja) ネットワークシステム、情報処理装置及び接続先紹介装置、情報処理方法並びに情報処理装置用プログラム及び接続先紹介装置用プログラム
US7428271B2 (en) Network device and data transmission method for efficient data transmission and reception in mobile ad hoc network environment
JP4770790B2 (ja) ツリー型放送システム、ツリー型放送システムへの参加及び脱退方法、ノード装置、及びノード処理プログラム
JP2008033406A (ja) ノード装置、情報処理プログラム、コンテンツ配信方法及びコンテンツ配信システム
EP1768324A1 (en) Distribution device, reception device, tree-type distribution system, information processing method, etc.
JP5182016B2 (ja) ノード紹介装置、ノード紹介処理プログラム、ツリー型放送システム、及びノード紹介処理方法
JPWO2007091480A1 (ja) Avサーバ機器及びコネクション管理方法
JP2011182061A (ja) 通信端末およびデータ配信方式切り替えプログラム
CN107659853A (zh) 一种自适应流媒体直播控制系统
Ha et al. Topology and architecture design for peer to peer video live streaming system on mobile broadcasting social media
JP2008278261A (ja) 中継装置、中継装置制御方法、通信システムおよび中継プログラム
JP2008085678A (ja) コンテンツ配信システム、コンテンツ配信方法、コンテンツ配信システムにおける端末装置及びそのプログラム
JP2008294625A (ja) 通信システム、特定情報配信方法、ノード装置、特定情報配信装置、ノード処理プログラム、及び特定情報配信処理プログラム
JP5067259B2 (ja) ツリー型放送システム、ノード接続方法、ノード装置、及びノード処理プログラム
JP2009177811A (ja) 分割後のp2pモードでの繰延回復を目的としたコンテンツのライブ送信のための方法、並びに制御装置及び関連する設備
JP2006080659A (ja) 情報配信システム、処理装置、処理方法及び処理プログラム等
JP2009124662A (ja) ツリー型放送システム、接続処理方法、ノード装置、及びノード処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110906

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121231

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160125

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees