説明

狭帯域ネットワークの大容量データ配信システム

【課題】複数の大容量データを広帯域ネットワークから狭帯域ネットワークに配信する大容量データ配信システムに関ルータに流入制御を設定することなく、狭帯域ネットワーク全体の使用可能帯域をもとに、流入箇所毎に使用可能帯域を割り当て、大容量データをトランスコードして流入可能とする。
【解決手段】映像ストリームのトランスコードを行うトランスコーダ102を搭載しそれを制御するオートトランスコーダ101を多段接続して、広帯域ネットワークからの映像ストリームの流入を引き受けるグループが形成される。オートトランスコーダ101では、自装置で映像ストリームをトランスコードできない場合に、同一のグループ内の他のオートトランスコーダ101でその映像ストリームをレート変換させるために、その映像ストリームを透過させる制御が実施される。

【発明の詳細な説明】
【技術分野】
【0001】
複数の映像ストリームのような大容量データを例えば光ファイバネットワークのような広帯域ネットワークから例えばマイクロ網のような狭帯域ネットワークに配信する大容量データの配信技術に関する。本発明は例えば、広帯域ネットワークと狭帯域ネットワークが複数箇所で接続された構成において、広帯域ネットワークから映像ストリームのような高レートメディア情報が一度に流れ込む映像配信システムに適用することができる。
【背景技術】
【0002】
国土交通省等が管理する河川映像管理ネットワークなどにおいては、多数の地点のカメラ映像等を広帯域ネットワークを通じて収集する映像配信システムが構築されている。このようなネットワークは、災害時などにおいて重要なカメラ映像等を収集する必要がある。このため、広帯域ネットワークに障害が発生した場合等におけるバックアップ回線としての意味を持つ最終冗長経路としての、マイクロ波網等によって構成される狭帯域ネットワークが必要となる。
【0003】
現状の利用状況としては、広帯域ネットワークから狭帯域ネットワークへは、データ系、音声系のみが疎通可能であり、狭帯域のため映像は規制されている。このため、狭帯域ネットワーク上の帯域が余ってしまっており有効利用がなされていない。しかし本来は、有事の時等にこそ映像情報が必要なはずであり、広帯域ネットワークから狭帯域ネットワークへ映像情報を流し込む技術が必要とされる。この場合に、光網等の広帯域ネットワークと同一の使用方法(同一レートの映像)では、帯域的に狭帯域ネットワークを利用することは不可能である。このため、狭帯域ネットワーク全体で映像シェーピングを実現する機能が必要とされる。
【0004】
狭帯域ネットワークへの流入制御に関する従来技術
以上の背景を前提として、まず広帯域ネットワークから狭帯域ネットワークへの流入制御を行う従来技術としては、以下の技術がある。
【0005】
1つの広帯域ネットワークから接続する狭帯域ネットワークに送信する映像ストリームの総容量は、狭帯域ネットワークの帯域容量を超えないで流す必要がある。そこで、レイヤ3スイッチ(以降「L3スイッチ」と呼ぶ)又はレイヤ2スイッチ(以降「L2スイッチ」と呼ぶ)等のルータ装置で、映像情報が狭帯域ネットワークに流入する前に固定的に特定ストリームに制限(破棄)される。これにより、狭帯域ネットワークに送信される映像ストリーム数を減らす従来技術が知られている。
【0006】
また、ネットワークを流れる映像ストリーム(マルチキャスト)を自動でトランスコード(デコード/エンコード)して映像ストリームの転送レートを下げる、オートトランスコーダと呼ばれる装置の従来技術が知られている。
【0007】
狭帯域ネットワーク全体の制御に関する従来技術
次に、狭帯域ネットワーク全体の制御を行う従来技術としては、以下の技術がある。
狭帯域ネットワークはバックアップ回線に使用されるので、映像配信システムはネットワークの冗長切替を意識する必要があり、バックアップ回線に切り替わった場合は配信ストリーム数を少なくする必要がある。そこで、L3スイッチやL2スイッチにおいて、映像ストリームのフィルタリングを設定し、固定的に狭帯域ネットワークへ流入数を制限する従来技術が知られている。
【0008】
また、マルチキャストアドレスを特定の許可されたアドレスに変換する事により任意の映像ストリームを狭帯域ネットワークに流入させる従来技術が知られている。
更に、広帯域ネットワークから狭帯域ネットワークへの1流入箇所での映像ストリームにつき、複数台からなる1グループのオートトランスコーダ群を使って、流入量を一定に制限し、順番(先着順)に低レートの映像ストリームへ変換する従来技術が知られている。
【0009】
ストリーム選択に関する従来技術
次に、広帯域ネットワークから狭帯域ネットワークへ流入するストリームを選択するための従来技術としては、以下の技術がある。
L2スイッチやL3スイッチにおいて、フィルタリング機能によって、特定の映像ストリームを固定的に又は手動で選択する従来技術が知られている。
【0010】
また、L2スイッチやL3スイッチでの特定の映像ストリームの選択を、サーバからの定義データの設定により行う従来技術が知られている。
更に、オートトランスコーダにおける優先制御設定により、特定の映像ストリームのトランスコードを予約する従来技術が知られている。
【0011】
信頼性を確保する従来技術
広帯域ネットワークと狭帯域ネットワークの接続において信頼性を確保するための従来技術としては、以下の技術がある。
【0012】
広帯域ネットワークから狭帯域ネットワークに送信される映像ストリーム(マルチキャスト)は、経路変化の状況により狭帯域ネットワークへの流入箇所が変わり、各映像ストリームの流入ポイントが不定となる可能性がある。このような場合を考慮して、複数箇所のL2スイッチやL3スイッチで冗長的にストリームをフィルタリングする従来技術が知られている。
【0013】
また、L2スイッチやL3スイッチの故障を考慮して、複数箇所のL2スイッチやL3スイッチで冗長的にストリームをフィルタリングする従来技術が知られている。
【先行技術文献】
【特許文献】
【0014】
【特許文献1】特開2005−184387号公報
【特許文献2】特開2002−84525号公報
【特許文献3】特開平11−225168号公報
【発明の概要】
【発明が解決しようとする課題】
【0015】
狭帯域ネットワークへの流入制御に関する課題
広帯域ネットワークから狭帯域ネットワークへの流入制御を行う従来技術に関する問題点としては、以下の点があげられる。
【0016】
広帯域ネットワークと狭帯域ネットワークの間のL2/L3スイッチでフィルタリングを行った場合、狭帯域ネットワークに流せる映像ストリームの本数が極端に少なくなってしまうという問題点を有していた。例えば、2.4Gbps(ギガビット/秒)の光ネットワークに6Mbps(メガビット/秒)の映像ストリームは400本流せるが、52Mbpsのマイクロネットワーク(狭帯域ネットワーク)では6Mbpsの映像ストリームは8本しか流せなくなる。
【0017】
また、従来のオートトランスコーダは6MbpsのMPEG2(Moving Picture Experts Group 2)のストリームを1グループで4本しかトランスコードしないので、狭帯域ネットワークの使用効率が悪いという問題点を有していた。
【0018】
流入させる映像ストリームの本数を増やすために、単純にトランスコーダで映像のレートを下げると、
更に、映像ストリームの転送レートを下げる従来のオートトランスコーダでは、マルチキャストアドレスの変換が行われる。このため、映像配信(切替え)システムの管理情報と矛盾が起こり(映像切替サーバのデータベースの登録内容と異なってしまう)、映像配信システムの障害が発生するおそれがあるという問題点を有していた。
【0019】
狭帯域ネットワーク全体の制御に関する課題
狭帯域ネットワーク全体の制御を行う従来技術に関する問題点としては、以下の点があげられる。
【0020】
多数の映像データが複数箇所で広帯域ネットワークから狭帯域ネットワークに流入する場合、複数箇所での流入量管理が必要になる。ダイナミックに流入させる映像を制御する場合、現状流れている映像ストリームをリアルタイムに管理する必要があり、映像選択状況を映像管理サーバから入手する手間が発生するという問題点を有していた。
【0021】
また、広帯域ネットワーク側で冗長構成を組んでいると、どのグループから映像ストリーム流入してくるかわからないので、全てのグループの手前でL2/L3スイッチにフィルタ設定を行う必要があり、管理が複雑になるという問題点を有していた。
【0022】
また、固定的に狭帯域ネットワークの帯域内でしか映像が流れないように特定の映像ストリームのみを流すようなフィルタ設定を行うと、設定許可された映像ストリームが流れていない場合に狭帯域ネットワークを有効に活用できないという問題点を有していた。
【0023】
更に、オートトランスコーダのように映像ストリームのレート変換装置を狭帯域ネットワークの入口に設置して無条件でレート変換する構成が採用された場合を考える。この場合には、各オートトランスコーダはお互いに独立してトランスコードするので、複数グループでの流入量制御ができないという問題点を有していた。
【0024】
ストリーム選択に関する課題
広帯域ネットワークから狭帯域ネットワークへ流入するストリームを選択するための従来技術の問題点としては、以下の点があげられる。
【0025】
広帯域ネットワーク側で冗長構成を採用しているときには、狭帯域ネットワークのどのポイントから映像ストリームが流入するか分からない。このため、L2/L3スイッチでのフィルタリング設定を行う場合に、狭帯域ネットワークへの複数の入口のL2/L3スイッチの全てに同じ設定をしなくてはならないという問題点を有していた。
【0026】
同様の理由で、他の接続装置についても冗長構成が採用されているときには、冗長を構成する装置全てに同じ設定をする必要があるという問題点を有していた。
また、現状のオートトランスコーダは、映像ストリームの転送レートの変換は可能であるが、重要映像を高画質のまま狭帯域ネットワークに流入させる事はできない。従って、低レート映像を見て重要な映像を選択して高画質映像のままモニタするような、レート切替(画質切替)ができないという問題点を有していた。
【0027】
更に、オートトランスコーダを使用した場合、トランスコードしている映像ストリーム以外のMPEG2マルチキャストは破棄されてしまうため、高画質な映像を受信することはできないという問題点を有していた。
【0028】
信頼性の確保に関する課題
広帯域ネットワークと狭帯域ネットワークの接続において信頼性を確保するための従来技術の問題点としては、以下の点があげられる。
【0029】
複数箇所からの映像ストリームの流入や故障を考慮してL3スイッチで冗長構成がとられる場合は、コストが高くなるという問題点を有していた。
また、オートトランスコーダを用いた構成において、オートトランスコーダで障害が発生すると、高トラフィックのMPEG2映像ストリームがそのまま狭帯域ネットワークに流れてしまい、狭帯域ネットワークの帯域オーバフローを起こす可能性がある。このような事態がもし発生した場合、狭帯域ネットワークを流れる全映像ストリームでパケット抜けを起こす場合があるという問題点を有していた。
【0030】
更に、狭帯域ネットワークに映像ストリームが迂回している場合、狭帯域ネットワークが分断され、その中でQoS(Quality of Service:帯域保証)制御が各々行われている場合を考える。この場合、狭帯域ネットワークが分断から復旧した瞬間に帯域オーバしてしまい全映像ストリームが影響を受けてしまう可能性があるという問題点を有していた。
【0031】
以上説明したように、広帯域ネットワークから狭帯域ネットワークへの映像ストリームのような大容量データの流入制御の問題点は、次のようになる。即ち、流入箇所に割り当てた使用可能帯域を固定的にて単純に複数ストリームのトランスコードを行うような制御では、流入箇所に偏りが生じうる環境では、割当て帯域に不足・無駄が生じる可能性が否めないという問題点を有していた。
【0032】
また、L2/L3スイッチ等のルータ装置で流入制御を行うためには、全てのルータに設定を行う必要があるという問題点を有していた。
そこで、本発明の1つの側面では、ルータに流入制御を設定することなく、狭帯域ネットワーク全体の使用可能帯域をもとに、流入箇所毎に使用可能帯域を割り当て、大容量データをトランスコードして流入可能とすることを目的とする。また、好ましくは、指定された映像データについては高レートのまま流入可能とすることを目的とする。
【課題を解決するための手段】
【0033】
態様の一例では、複数の大容量データを広帯域ネットワークから狭帯域ネットワークに配信する大容量データ配信システムとして実現され、以下の構成を有する。
まず、大容量データのレート変換を行うレート変換装置を搭載しレート変換装置を制御するレート変換制御装置を多段接続して広帯域ネットワークからの大容量データの流入を引き受けるグループが形成される。
【0034】
そして、レート変換制御装置が、以下の各部を備える。
まず、トランスコード制御部は、自レート変換制御装置で大容量データをレート変換できない場合に、同一のグループ内の他のレート変換制御装置でその大容量データをレート変換させるために、その大容量データを透過させる制御を行う。
【0035】
透過情報管理部は、指定された大容量データを、グループ内の全レート変換制御装置でレート変換を行わずに透過させる制御を行う。
グループ内情報管理部は、トランスコード制御部及び透過情報管理部の制御状態を、グループ内の他のレート変換制御装置との間で、自グループトランスコード状況情報として交換し設定する。
【発明の効果】
【0036】
レート変換制御装置の多段接続構成により、狭帯域ネットワークに流入する映像ストリーム等の大容量データが帯域を超えないように制御することが可能となる。
また、指定の大容量データを、元のレートのまま狭帯域を通し、高品質の映像を提供することが可能となる。
【0037】
更に、レート変換状況と大容量データの狭帯域ネットワークへの流入量に関する情報が、各グループ内及び複数のグループ間で共有されることにより、グループ内及びグループ間の各レート変換制御装置が協同的に、狭帯域への流入制御を実施することが可能となる。
【0038】
更に、レート変換制御装置の冗長構成により、1システムがダウンしても予備のトランスコーダが状態を引き継いでトランスコードすることが可能となる。
【図面の簡単な説明】
【0039】
【図1】実施形態の全体システム構成図である。
【図2】オートトランスコーダの接続形態を示す図である。
【図3】オートトランスコーダの機能構成図である。
【図4】全ノード共通の、起動時におけるマスタ選出処理を示す動作フローチャートである。
【図5】全ノード共通の、運用時におけるマスタ選出情報応答処理を示す動作フローチャートである。
【図6】全ノード共通の、運用時におけるMCデータ受信処理を示す動作フローチャートである。
【図7】サブメインマスタノードの制御動作を示す動作フローチャート(その1)である。
【図8】サブメインマスタノードの制御動作を示す動作フローチャート(その2)である。
【図9】サブメインマスタノードの制御動作を示す動作フローチャート(その3)である。
【図10】サブメインマスタノードの制御動作を示す動作フローチャート(その4)である。
【図11】サブメインマスタノードの制御動作を示す動作フローチャート(その5)である。
【図12】サブメインマスタノードの制御動作を示す動作フローチャート(その6)である。
【図13】サブメインマスタノードの制御動作を示す動作フローチャート(その7)である。
【図14】スレーブノードの制御動作を示す動作フローチャート(その1)である。
【図15】スレーブノードの制御動作を示す動作フローチャート(その2)である。
【図16】スレーブノードの制御動作を示す動作フローチャート(その3)である。
【図17】スレーブノードの制御動作を示す動作フローチャート(その4)である。
【図18】スレーブノードの制御動作を示す動作フローチャート(その5)である。
【図19】メインマスタノードの制御動作を示す動作フローチャート(その1)である。
【図20】メインマスタノードの制御動作を示す動作フローチャート(その2)である。
【図21】メインマスタノードの制御動作を示す動作フローチャート(その3)である。
【図22】グループ共通定義ファイルのデータ構成例を示す図である。
【図23】グループ共通定義ファイルの各パラメタの説明図である。
【図24】自グループトランスコード状況情報と自グループトラフィック流入情報のデータ構成例を示す図である。
【図25】自グループ管理テーブルのデータ構成例を示す図である。
【図26】優先(緊急)テーブルのデータ構成例を示す図である。
【図27】遮断(破棄)テーブルのデータ構成例を示す図である。
【図28】透過テーブルのデータ構成例を示す図である。
【図29】グループ間トランスコード状況情報のデータ構成例を示す図である。
【発明を実施するための形態】
【0040】
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。
図1は、実施形態の全体システム構成図である。
広帯域ネットワーク106に接続される広帯域側L3(レイヤ3)スイッチ(図中「L3SW」と表記)103には、#1から#5までの5台の通常はスレーブ装置兼現用系として動作するレート変換制御装置であるオートトランスコーダ101が縦属に接続される。また、#5のオートトランスコーダ101には、通常はマスタ装置兼予備系として動作する1台のオートトランスコーダ101が接続される。このオートトランスコーダ101は、狭帯域ネットワーク107に接続される狭帯域側L3スイッチ(図中「μL3SW」と表記)104に接続される。各オートトランスコーダ101には、4台までのレート変換装置であるトランスコーダ102を接続可能である。各トランスコーダ102は、広帯域ネットワーク106側のカメラ105から広帯域側L3スイッチ103を介して流入する、1本の映像ストリームをMPEG2からMPEG4の転送レートに変換する。MPEG2の転送レートは例えば6Mbps、MPGE4の転送レートは例えば26kbps(キロビット/秒)〜519kbpsである。従って、1台のオートトランスコーダ101は、最大で4本の映像ストリームのレート変換が可能である。上述の#1から#5までの5台のスレーブ装置と1台のマスタ装置からなる6台のオートトランスコーダ101と、それぞれに接続されるトランスコーダ102群とが、狭帯域ネットワーク接続の1グループを形成する。1つの狭帯域ネットワーク接続グループでは、現用系として動作する5台のオートトランスコーダ101によって、最大で20本までの映像ストリームのレート変換が可能となる。
【0041】
図1では、4つの狭帯域ネットワーク接続グループが、それぞれ広帯域ネットワーク106内の1台の広帯域側L3スイッチ103と狭帯域ネットワーク107内の1台の狭帯域側L3スイッチ104と接続される。従って、図1の場合、広帯域ネットワーク106側の各カメラ105から流入する最大で20本×4グループ=80本までの映像ストリームについて、レート変換を行って狭帯域ネットワーク107に流入させることが可能となる。狭帯域ネットワーク107の帯域幅は、例えば48Mbpsである。
【0042】
図1において、Web保守端末108は、広帯域側L3スイッチ103又は狭帯域側L3スイッチ104を介して、各オートトランスコーダ101を、Webインターフェースにより制御可能である。
【0043】
グループ内の各オートトランスコーダ101は、図2に示されるように、1台の広帯域側L3スイッチ103と1台の狭帯域側L3スイッチ104の間を結ぶ主回線202に、スイッチボックス201を介して接続される。スイッチボックス201は、正常動作時には、通常時パス203として示されるように、主回線202から流入する映像ストリームをオートトランスコーダ101に取り込んで、その配下のトランスコーダ102でレート変換処理を実行させる。一方、スイッチボックス201は、オートトランスコーダ101で障害が発生したときには、障害時パス204として示されるように、オートトランスコーダ101への接続を切って、主回線202上の信号を後続のオートトランスコーダ101に透過させる。
【0044】
以上の構成を有する実施形態の概略動作について、以下に説明する。
まず、グループ内の制御の概略について説明する。
【0045】
グループ内トランスコード制御
上述したように1つの狭帯域ネットワーク接続グループでは、6台のオートトランスコーダ101がスイッチボックス201(図2)によって縦属(直列)に接続される。
【0046】
システムの起動時には、グループ内での情報共有のために、グループ内で1台のマスタ装置と5台のスレーブ装置が決定される。また、5台の現用系装置と1台の予備系装置が決定される。図1の例では、#1から#5のオートトランスコーダ101が、スレーブ装置兼現用系装置に割り当てられ、残りの1台のオートトランスコーダ101が、マスタ装置兼予備系装置として割り当てられる。これらの割当ては、運用状態によって、マスタ装置/スレーブ装置、及び現用系/予備系を、それぞれ独立して動的に変更可能である。
【0047】
なお、以下の説明では、オートトランスコーダ101をノードと呼ぶ場合があり、マスタ装置をマスタノード、スレーブ装置をスレーブノードと呼ぶ場合がある。
グループ内の各オートトランスコーダ101は、グループ内の他のオートトランスコーダ101とプライオリティ(ノードプライオリティ)の交換を行い、マスタ装置を選出する。
【0048】
マスタ装置は、スレーブ装置のトランスコード処理数を管理する。マスタ装置は、スレーブ装置に、変換レート(映像ストリーム数)を通知する。スレーブ装置は、マスタ装置に、トランスコード状況を自グループトランスコード状況情報(後述する図3、図24参照)として、定期的に通知する。マスタ装置とスレーブ装置間で実行される通知処理をヘルスチェックと呼ぶ。マスタ装置は、広帯域ネットワーク106から流入するMPEG4のトラフィック流入量を監視し、狭帯域ネットワーク107への流入量にカウントする。
【0049】
マスタ装置は、スレーブ装置に例えば2秒間隔でヘルスチェック処理を実行する。ヘルスチェックにより、後述する自グループ管理テーブル(トランスコード情報)(図3、図25参照)の情報が、マスタ装置とスレーブ装置間で共有される。
【0050】
マスタ装置から送信されるヘルスチェックでは、グループ内の全てのオートトランスコーダ101のトランスコード管理テーブル312の情報が通知され、スレーブ装置から応答されるヘルスチェックでは、自装置(そのスレーブ装置自身)のトランスコード管理テーブル312の情報が通知される。
【0051】
グループ内での映像ストリームのトランスコードは、ノード1(図1では#1のオートトランスコーダ101)から順番に実行され、1つのノードでトランスコードできなくなった映像ストリームは次のノードへ転送される。
マスタ装置がダウンした場合には、別のスレーブ装置がマスタ装置に遷移する。
【0052】
グループ内優先制御
本実施形態では、広帯域ネットワーク106から狭帯域ネットワーク107に優先的に転送する映像ストリームを指定することができる。このための制御が、優先制御である。この制御は、グループ毎に設定され実行される。
【0053】
優先制御は、グループ共通定義ファイル310(図3、図22、図23参照)とWeb保守端末108から設定することができる。グループ共通定義ファイル310での設定は固定的であり、Web保守端末108からの設定は動的な設定が可能である。
【0054】
Web保守端末108によって優先制御の設定を行う場合、Web保守端末108→マスタ装置→グループ内オートトランスコーダ101という流れで制御が実行される。
優先制御では、マスタ装置が、優先制御をかけるオートトランスコーダ101を選び、選択したオートトランスコーダ101に優先設定コマンドを発行する。このとき、ノードプライオリティの低いオートトランスコーダ101から順番に、トランスコーダ102に空きがあれば優先設定が行われてゆく。
【0055】
優先制御が行われているオートトランスコーダ101がダウンした場合、マスタ装置が、ダウンしたオートトランスコーダ101で設定されていた優先設定を他のオートトランスコーダ101へ設定する。
【0056】
各オートトランスコーダ101は、優先テーブルを0.5秒毎にチェックし、自装置よりも上流(広帯域ネットワーク106側)に位置するオートトランスコーダ101の優先ストリームは破棄し、自装置の優先ストリームはトランスコードし、下流のオートトランスコーダ101の優先ストリームは転送(透過)する。
【0057】
グループ内特定MPEG2透過制御
本実施形態では、広帯域ネットワーク106から流入する特定のMPEG2広帯域映像ストリーム、例えばヘリコプターテレビ映像等のストリームを、レート変換せずに狭帯域ネットワーク107側に透過させることができる。そのための制御が、特定MPEG2透過制御である。この制御は、グループ毎に設定され実行される。
【0058】
特定MPEG2透過制御は、グループ共通定義ファイル310により固定的に設定することができる(図3、図22、図23参照)。
透過指定された例えば6Mbpsの映像ストリーム帯域は、実際に流れていなくてもスタティックに確保される。
【0059】
グループ内特定MPEG2/4遮断制御
本実施形態では、広帯域ネットワーク106から流入する特定のMPEG2又はMPEG4の映像ストリームを、遮断することができる。そのための制御が、特定MPEG2/4遮断制御である。この制御は、グループ毎に設定され実行される。
【0060】
特定MPEG2/4遮断制御は、グループ共通定義ファイル310(図3、図22、図23参照)とWeb保守端末108から設定することができる。グループ共通定義ファイル310での設定は固定的であり、Web保守端末108からの設定は動的な設定が可能である。
【0061】
グループ内トラフィック流入量制御
本実施形態では、グループを通過するMPEG2/4の映像ストリームのトラフィック流入量を把握する制御が実行される。
【0062】
グループ毎に、流入量の閾値を設定することができる。流入量の閾値は、グループ共通定義ファイル310(図3、図22、図23参照)で設定できるようにする。流入量の閾値は、デフォルト値がグループ共通定義ファイル310定義ファイルの設定値とされ、その後、グループ間で調整された新しい閾値が動的に設定される。
トラフィック流入量が閾値を超過した場合、超過したトラフィックが遮断される。
【0063】
グループ間のトランスコード情報共有
以上がグループ内の制御の概略である。次に、グループ間の制御の概略について説明する。
【0064】
グループ間の制御においては、まず、トランスコード情報が共有される。
複数のグループの各マスタ装置のうちの1つが、メインマスタ装置として動作する。
メインマスタ装置は、各グループの代表ノード(サブメインマスタ装置)から、トランスコード状態、流入量情報等を、グループ間トランスコード状況情報317(図3、図29参照)の一部として収集する。メインマスタ装置は、各グループのサブメインマスタ装置に、ヘルスチェック機能(グループ間状態情報通知/応答昨日)によって、全グループに関するグループ間トランスコード状況情報317を配布する。これにより、各グループでは、システム全体のトランスコード情報等を共有することができる。
【0065】
また、メインマスタ装置は、オートトランスコーダ101を6Mbpsのまま透過又は遮断させるMCアドレスの設定情報を、グループ間トランスコード状況情報317(図3、図29参照)の一部として各グループから収集し、グループ間で情報共有させる。
【0066】
グループ間の狭帯域ネットワーク107への流入量制御
メインマスタ装置は、狭帯域ネットワーク107に流入する流量を制御するために、各グループのサブメインマスタ装置から流入量情報を収集する。
【0067】
メインマスタ装置は、各グループの流入量情報を参照し、閾値を超えそうなグループに対し、余裕あるグループの予約帯域をシフト(再分配)することにより、全体の流入量を調整し狭帯域ネットワーク107を効率良く使用する。再配分は、ヘルスチェック処理により情報収集して、ヘルスチェック処理により情報通知して行う。情報通知の時間は、例えば10秒程度である。
【0068】
メインマスタ装置は、グループ共通定義ファイル310(図3、図22、図23参照)に記載されているグループのサブメインマスタ装置が検出できない場合は、そのグループとの間で予約帯域の調整はせずに帯域を確保しておく。これにより、狭帯域ネットワーク107におけるリング分断等からの復旧時も、狭帯域ネットワーク107の帯域オーバを防ぐことができる。
【0069】
以上の概略動作を実現する実施形態の具体的な処理機能について、以下に詳細に説明する。
【0070】
図2は、図1のオートトランスコーダ101の機能構成図である。オートトランスコーダ101の機能は、MCデータ受信管理部301、トランスコード制御部302、トランスコード部303、グループ内情報管理部304、グループ内通信部305、グループ間情報管理部306、グループ間通信部307、透過・破棄MC情報管理部308、及びWeb画面制御部309によって実現される。また、オートトランスコーダ101は、グループ共通定義ファイル310、受信MCデータ管理情報311、トランスコード管理テーブル312、グループ内管理情報313、優先(緊急)テーブル314、透過テーブル315、遮断(破棄)テーブル316、グループ間管理情報317、自グループトランスコード状況情報318、及び自グループトラフィック流入情報319の各情報を管理する。
【0071】
上記各機能部301から309を実現する制御動作は、図4から図21の動作フローチャートの処理として示される。これらの処理は、特には図示しない中央演算処理装置が、特には図示しないメモリに記憶された制御プログラムを実行する動作として実現される。
【0072】
図4は、全ノード(オートトランスコーダ101)に共通の、起動時におけるマスタ選出処理を示す動作フローチャートである。この動作フローチャートは、図3のグループ内情報管理部304の機能の一部を実現する。
【0073】
まず、自装置内のMCデータ受信管理部301(図3)のフィルタ機能に対して、受信された全てのマルチキャストパケット(以下「MC」と呼ぶ)を透過(スルー)する設定がなされる(ステップS401)。
【0074】
次に、図3、図22及び図23に示されるデータ構成例を有するグループ共通定義ファイル310に定義されている自グループ内のノード宛てに、図3のグループ内通信部305を介して、マスタ選出情報要求(起動モード)が送信される(ステップS402)。具体的には、グループ共通定義ファイル310内のCTL_NODE1からCTL_NODE6(図22、図23参照)で示される各ノードのIPアドレスを宛先アドレスとして、所定のパケットフォーマットを有するマスタ選出情報要求(起動モード)が送信される。
【0075】
次に、マスタ選出情報応答待ちタイマ(起動モード)が開始される(ステップS403)。このタイマは、特には図示しないハードウェアタイマ又はソフトウェアタイマとして実現される。
【0076】
次に、グループ内通信部305を介して新たな情報受信の事象が発生したか否かの待ち状態となる(ステップS404)。この間、何れかのノードからマスタ選出情報応答が受信された場合には、その応答に対応するパケットのソースアドレスとして、応答を送信したノードの識別情報が特には図示しないメモリに記録される。
【0077】
一定時間の事象発生待機(ステップS404)の後、上記ノードの識別情報がチェックされることにより、全ノードからマスタ選出情報応答が受信されたか否かが判定される(ステップS405)。
【0078】
ステップS405の判定がNOならば、ステップS403で開始されたマスタ選出情報応答待ちタイマ(起動モード)がタイムアウトしたか否かが判定される(ステップS406)
ステップS406の判定がNOならば、ステップS404に戻って新たな事象待ち状態が繰り返される。
【0079】
全ノードからマスタ選出情報応答が受信されてステップS405の判定がYES、又はマスタ選出情報応答待ちタイマ(起動モード)がタイムアウトしてステップS406の判定がYESになると、以下の処理が実行される。
【0080】
まず、マスタ選出情報応答待ちタイマ(起動モード)が終了させられる(ステップS407)。
次に、ステップS404でメモリ上に記録されている各ノードの識別情報に基づいて、グループ共通定義ファイル310から応答を受信したノードのプライオリティ情報が取得され、各ノードのプライオリティが自ノードのプライオリティと比較される(ステップS408)。具体的には、グループ共通定義ファイル310内の各ノードアドレス毎のPRIORITY値(図22、図23参照)が比較される。
【0081】
そして、自ノードのプライオリティが最高であるか否かが判定される(ステップS409)。
自ノードのプライオリティが最高であってステップS409の判定がYESならば、自ノードがマスタ装置の運用状態に遷移される(ステップS410)。その後、図4の動作フローチャートの処理が終了する。マスタ装置の運用状態に遷移したオートトランスコーダ101は、後述する図5、図6、図7から図13(サブメインマスタ装置及びメインマスタ装置の両方)、及び図19から図21(メインマスタ装置のみ)の動作フローチャートの処理を実行する。
【0082】
自ノードのプライオリティが最高ではなくてステップS409の判定がNOならば、自ノードがスレーブ装置の運用状態に遷移される(ステップS411)。その後、図4の動作フローチャートの処理が終了する。スレーブ装置の運用状態に遷移したオートトランスコーダ101は、後述する図5、図6、及び図14から図18の動作フローチャートの処理を実行する。
【0083】
図5は、全ノード(オートトランスコーダ101)に共通の、運用時におけるマスタ選出情報応答処理を示す動作フローチャートである。この動作フローチャートは、図3のグループ内情報管理部304の機能の一部を実現する。
【0084】
まず、図3のグループ内通信部305を介してマスタ選出情報要求が受信されたか否かが判定される(ステップS501)。
ステップS501の判定がNOならば、一定時間後に再度ステップS501の判定が実行される動作が繰り返される。
【0085】
ステップS501の判定がYESならば、マスタ選出情報応答のパケットが、受信されたマスタ選出情報要求のパケットのソースIPアドレスに対して返信される(ステップS502)。その後、ステップS501の判定処理に戻る。
【0086】
図5の動作フローチャートの処理によって、前述した図4のステップS402でマスタ選出情報要求を送信したノードは、図4のステップS404で、各ノードからその要求に対応するマスタ選出情報応答を受信することができる。
【0087】
図6は、全ノード(オートトランスコーダ101)に共通の、運用時における映像ストリームのマルチキャストデータの受信処理を示す動作フローチャートである。この動作フローチャートは、図3のMCデータ受信管理部301の機能の一部を実現する。
【0088】
まず、マルチキャストデータ(MC)が受信されたか否かが判定される(ステップS601)。
ステップS601の判定がNOならば、再度ステップS601の判定が実行される動作が繰り返される。
【0089】
ステップS601の判定がYESならば、受信したMPEG2データのi−picture部の先頭64バイトが特には図示しないメモリ内の受信キューにコピーされる(ステップS602)。その後、ステップS601の判定処理に戻る。
【0090】
図6の動作フローチャートの処理によって、オートトランスコーダ101は、映像ストリームのMPEG2データを受信することができる。
図7から図13は、サブメインマスタ装置(ノード)として動作するオートトランスコーダ101の制御動作を示す動作フローチャートである。
【0091】
まず、グループ内ヘルスチェックタイマ、グループ間ヘルスチェックタイマ、メイン選出情報要求送信タイマ、及びMCデータ受信チェックタイマがそれぞれ開始される(ステップS701)。これらのタイマは、特には図示しないハードウェアタイマ又はソフトウェアタイマとして実現される。
【0092】
次に、新たな情報受信の事象が発生したか否かの待ち状態となる(ステップS702)。
続いて、ステップS703からS709の処理は、自ノードよりもプライオリティが高く設定されたノードが起動されてマスタ装置に遷移し、ヘルスチェックを送信したとき(図8のステップS802参照)の受信動作を示す処理である。この処理は、図3のグループ内情報管理部304の一部の機能を実現する。
【0093】
まず、ヘルスチェックが受信されたか否かが判定される(ステップS703)。
ステップS703の判定がYESとなると、受信されたパケットに含まれる自グループトランスコード状況情報318によって、自装置内の自グループトランスコード状況情報318が更新される(ステップS704)
次に、更新された自グループトランスコード状況情報318と、グループ共通定義ファイル310が参照されることにより、自ノードと新たに起動したノードのプライオリティが比較される(ステップS705)。
【0094】
そして、自ノードのプライオリティが最高であるか否かが判定される(ステップS706)。
ステップS706の判定がYESならば、マスタ装置の状態が維持される(ステップS707)。その後、ステップS702の事象待機処理に戻る。
【0095】
一方、ステップS706の判定がNOならば、ヘルスチェック応答が送信される(ステップS708)。このとき、自ノードの自グループトランスコード状況情報318が通知される。
【0096】
その後、スレーブ装置の運用状態へ遷移し(ステップS709)、図7の動作フローチャートの処理を終了する。
前述したステップS703の判定がNOの場合には、次に、トランスコード設定要求が受信されたか否かが判定される(ステップS710)。
【0097】
ステップS710の判定がYESの場合、以下のステップS711とS712の処理が実行される。これらの処理は、図3のトランスコード制御部302の機能の一部を実現する。
【0098】
まず、受信されたトランスコード設定要求によって指定されたマルチキャストデータ(MC)について以下の設定が実行される(ステップS711)。
(A)自ノードよりも上流ノード(広帯域ネットワーク106側のノード)でのトランスコードが指定されている場合は、以下の設定がなされる。即ち、MCデータ受信管理部301のフィルタ機能に対し、マルチキャストアドレスが一致するMPEG2データを破棄し、マルチキャストアドレスが一致するMPEG4データを透過する設定がなされる。
【0099】
(B)自ノードよりも下流ノード(狭帯域ネットワーク107側のノード)でのトランスコードが指定されている場合は、以下の設定がなされる。即ち、MCデータ受信管理部301のフィルタ機能に対し、マルチキャストアドレスが一致するMPEG2データ及びMPEG4データの双方とも透過する設定がなされる。
【0100】
(C)自ノードでのトランスコードが指定されている場合は、以下の設定がなされる。即ち、MCデータ受信管理部301のフィルタ機能に対し、マルチキャストアドレスが一致するMPEG2データを、#1から#4のうち指定されたポートのトランスコーダ102部(図3参照)に転送する設定がなされる。
【0101】
その後、トランスコード設定要求を送信したノード(自分自身)へトランスコード設定応答が送信される(ステップS712)。その後、ステップS702の事象待機処理に戻る。
【0102】
次に、前述したステップS710の判定がNOとなった場合には、図8の動作フローチャートになり、図7のステップS701で設定されたグループ内ヘルスチェックタイマがタイムアウトしたか否かが判定される(ステップS801)。
【0103】
ステップS801の判定がYESならば、以下のステップS802からS804の一連の処理が実行される。この処理は、図3のグループ内情報管理部304の一部の機能を実現する。
【0104】
まず、全スレーブへヘルスチェックが送信される(ステップS802)。このとき、グループ内の全ノードの自グループトランスコード状況情報318(図24参照)が通知される。
【0105】
次に、グループ内ヘルスチェックタイマがリセットされる(ステップS803)。
その後、ヘルスチェック応答タイマが開始される(ステップS804)。このタイマは、特には図示しないハードウェアタイマ又はソフトウェアタイマとして実現される。その後、図7のステップS702の事象待機処理に戻る。
【0106】
前述したステップS801の判定がNOとなった場合には、ステップS802にて送信されたヘルスチェックに対する応答が返信されたか否かが判定される(ステップS805)。
【0107】
ステップS805の判定がYESならば、以下のステップS806からS808の一連の処理が実行される。この処理は、図3のグループ内情報管理部304の一部の機能を実現する。
【0108】
まず、受信された応答パケットに含まれる自グループトランスコード状況情報318によって、自装置内の自グループトランスコード状況情報318が更新される(ステップS806)
次に、全スレーブノードからヘルスチェック応答が受信済みとなったか否かが判定される(ステップS807)。
【0109】
ステップS807の判定がNOならば、図7のステップS702の事象待機処理に戻る。
ステップS807の判定がYESになると、ヘルスチェック応答タイマが終了させられる(ステップS808)。その後、図7のステップS702の事象待機処理に戻る。
【0110】
前述したステップS806の判定がNOとなった場合には、ステップS804で設定されたグループ内ヘルスチェック応答タイマがタイムアウトしたか否かが判定される(ステップS809)。
【0111】
ステップS809の判定がYESならば、以下のステップS810からS814の一連の処理が実行される。この処理は、図3のトランスコード制御部302の一部の機能を実現する。
【0112】
まず、ヘルスチェック応答がタイムアウトしたノードはトランスコードしているマルチキャストデータ(MC)が有るか否かが判定される(ステップS810)。
ステップS810の判定がNOならば、図7のステップS702の事象待機処理に戻る。
【0113】
ステップS810の判定がYESならば、トランスコード管理テーブル312(図3、図25参照)が参照されることにより、新たにステップS810で判定されたマルチキャストデータをトランスコードできる空き状態のノード(オートトランスコーダ101)(X)及びその配下のトランスコーダ102(Y)が検索される(ステップS811)。
【0114】
次に、ステップS810で判定されたマルチキャストデータ(以下、指定MCと呼ぶ)について、以下の設定内容を有するトランスコード設定要求が作成される(ステップS812)。
【0115】
(A)ノード(X)よりも上流ノード(広帯域ネットワーク106側のノード)に対しては、指定MCのMPEG2データ及びMPEG4データの双方とも透過する設定を要求する。
【0116】
(B)ノード(X)よりも下流ノード(狭帯域ネットワーク107側のノード)に対しては、指定MCのMPEG2データを破棄し、指定MCのMPEG4データを透過する設定を要求する。
【0117】
(C)ノード(X)に対しては、指定MCのMPEG2データを、#1から#4のうちトランスコーダ(Y)に対応するポートのトランスコーダ102部(図3参照)への転送を要求する。
【0118】
次に、他にステップS810で判定されたマルチキャストデータ(MC)が有るか否かが判定される(ステップS813)。
ステップS813の判定がYESならば、更にステップS811とS812が実行されて、そのマルチキャストデータに対応するトランスコード設定要求が作成される。
【0119】
ステップS813の判定がNOになると、作成された1つ以上のトランスコード設定要求が、各スレーブ装置に向けて送信される(ステップS814)。その後、図7のステップS702の事象待機処理に戻る。
【0120】
次に、前述したステップS809の判定がNOとなった場合には、図9の動作フローチャートになり、図2のWeb保守端末108から所定のマルチキャストデータ(MC)に対するトランスコード開始要求が受信されたか否かが判定される(ステップS901)。
【0121】
ステップS901の判定がYESならば、以下のステップS902からS904の一連の処理が実行される。この処理は、図3のグループ内情報管理部304の一部の機能を実現する。
【0122】
まず、図8のステップS811の場合と同様に、トランスコード管理テーブル312(図3、図25参照)が参照されることにより、指定されたマルチキャストデータをトランスコードできる空き状態のノード(オートトランスコーダ101)(X)及びその配下のトランスコーダ102(Y)が検索される(ステップS902)。
【0123】
次に、ステップS902で判定されたマルチキャストデータ(以下、指定MCと呼ぶ)について、図8のステップS812の場合と同様の設定内容を有するトランスコード設定要求が作成される(ステップS903)。
【0124】
そして、作成されたトランスコード設定要求が、各スレーブ装置に向けて送信される(ステップS904)。その後、図7のステップS702の事象待機処理に戻る。
次に、前述したステップS901の判定がNOとなった場合には、図10の動作フローチャートになり、図7のステップS701で開始されたMCデータ受信チェックタイマがタイムアウトしたか否かが判定される(ステップS1001)。
【0125】
ステップS1001の判定がYESならば、以下のステップS1002からS1017及び図11のステップS1101からS1111の一連の処理が実行される。この処理は、図3のMCデータ受信管理部301、トランスコード制御部302、グループ内情報管理部304、透過・破棄MC情報管理部308の一部の機能を実現する。
【0126】
まず、図6のステップS602で更新されているメモリ上の受信キューがポーリングされる(ステップS1002)。
次に、その受信キューにパケットが蓄積されているか否かが判定される(ステップS1003)。
【0127】
ステップS1003の判定がNOならば、図7のステップS702の事象待機処理に戻る。
ステップS1003の判定がYESならば、受信キューからパケットが取り込まれる(ステップS1004)。
【0128】
次に、図3の優先(緊急)テーブル314に、優先マルチキャストデータ(MC)のアドレスの設定が有るかか否かが判定されるか(ステップS1005)。優先(緊急)テーブル314のデータ構成例は図26に示される。このテーブル内の「PrMCAdd」フィールドがチェックされる。
【0129】
ステップS1005の判定がNOなら、ステップS1014の処理に移る。
ステップS1005の判定がYESならば、優先MCアドレスは自グループ管理テーブルにエントリされているか否かが判定される(ステップS1006)。自グループ管理テーブルは、図24に示されるように、自グループトランスコード状況情報318の一部として管理されている。自グループ管理テーブルは、図25に示されるデータ構成例を有し、トランスコード管理テーブル312、グループ内管理情報313、及び受信MCデータ管理情報311とから構成される。
【0130】
ステップS1006の判定がYESならば、自グループ管理テーブル設定がそのまま保持される(ステップS1007)。
ステップS1006の判定がNOならば、自グループ管理テーブルに優先MCアドレスのエントリを追加可能であるか否か、即ち、エントリの空きがあるか否かが判定される(ステップS1008)。
【0131】
ステップS1008の判定がNOならば、自グループ管理テーブルに有る最も若いポートのエントリが削除される(ステップS1009)。
ステップS1008の判定がYESの場合又はステップS1009の処理の後、
まず、図8のステップS811の場合と同様に、トランスコード管理テーブル312(図3、図25参照)が参照されることにより、優先MCをトランスコードできる空き状態のノード(オートトランスコーダ101)(X)及びその配下のトランスコーダ102(Y)が検索される(ステップS1010)。
【0132】
次に、優先MCに対応するマルチキャストデータ(以下、指定MCと呼ぶ)について、図8のステップS812の場合と同様の設定内容を有するトランスコード設定要求が作成される(ステップS1011)。
【0133】
その後、トランスコードされる優先MCのエントリが、トランスコード管理テーブル312(図25参照)に追加される(ステップS1012)。
そして、作成されたトランスコード設定要求が、各スレーブ装置に向けて送信される(ステップS1013)。その後、図7のステップS702の事象待機処理に戻る。
【0134】
ステップS1005の判定がNOの場合又はステップS1007の処理の後、図3の遮断(破棄)テーブル316に、遮断マルチキャストデータ(MC)のアドレスの設定が有るかか否かが判定されるか(ステップS1014)。遮断(破棄)テーブル316のデータ構成例は図27に示される。このテーブル内の「BlockMCAdd」フィールドがチェックされる。
【0135】
ステップS1014の判定がNOなら、ステップS1016の処理に移る。
ステップS1014の判定がYESならば、遮断MCのエントリが自グループ管理テーブル(図25参照)に追加される。そして、スレーブ装置に対して破棄登録通知が送信される。また、自ノードのMCデータ受信管理部301のフィルタ機能に、遮断MCのパケットを破棄する設定がなされる(ステップS1015)。その後、図7のステップS702の事象待機処理に戻る。
【0136】
ステップS1014の判定がNOならば、図3の透過テーブル315に、透過マルチキャストデータ(MC)のアドレスの設定が有るかか否かが判定されるか(ステップS1016)。透過テーブル315のデータ構成例は図27に示される。このテーブル内の「ThroughMCAdd」フィールドがチェックされる。
【0137】
ステップS1016の判定がYESならば、透過MCのエントリが自グループ管理テーブル(図25参照)に追加される。そして、スレーブ装置に対して透過登録通知が送信される。また、自ノードのMCデータ受信管理部301のフィルタ機能に、透過MCのパケットを透過する設定がなされる(ステップS1017)。その後、図7のステップS702の事象待機処理に戻る。
【0138】
次に、ステップS1016の判定がNOとなった場合、即ち、受信されたマルチキャストデータ(MC)が優先MCでも遮断MCでも透過MCでもない場合には、図11の動作フローチャートに移る。
【0139】
まず、図10のステップS1004で取得されたMCアドレスを検索キーにして、自グループ管理テーブル(図25参照)が検索される(ステップS1101)。
この検索の結果、取得されたMCアドレスが自グループ管理テーブルにあるか否かが判定される(ステップS1102)。
【0140】
ステップS1102の判定がYESならば、自グループ管理テーブル内のトランスコード管理テーブル312のタイムスタンプフィールド「TimeStamp」が更新される(ステップS1103)。その後、図7のステップS702の事象待機処理に戻る。
【0141】
ステップS1102の判定がNOならば、自装置のトランスコード状態に空きがあるか否かが判定される(ステップS1104)。
ステップS1104の判定がYESならば、空きが検出されたトランスコード部303に、トランスコード開始指示のシグナルが出力される(ステップS1105)。
【0142】
続いて、トランスコード部303からMCデータ受信管理部301へ指示が出され、そのトランスコード部303に対応するトランスコーダ接続ポートへのマルチキャストデータ(MC)の転送設定がなされる(ステップS1106)。
【0143】
更に、トランスコード部303からトランスコーダ102へ、トランスコード開始/停止コマンドが発行される(ステップS1107)。
そして、トランスコード部303が、トランスコーダ102から取得したコマンドレスポンス結果やトランスコード状態を、自グループ管理テーブル(図25)に更新して反映させる(ステップS1108)。その後、図7のステップS702の事象待機処理に戻る。
【0144】
前述のステップS1104の判定がNOならば、処理されたMCに対応するマルチキャストデータ(以下、指定MCと呼ぶ)について、図8のステップS812の場合と同様の設定内容を有するトランスコード設定要求が作成される(ステップS1109)。
【0145】
その後、トランスコードされるMCのエントリが、トランスコード管理テーブル312(図25参照)に追加される(ステップS1110)。
そして、作成されたトランスコード設定要求が、各スレーブ装置に向けて送信される(ステップS1111)。その後、図7のステップS702の事象待機処理に戻る。
【0146】
次に、前述したステップS1018の判定がNOとなった場合には、図12の動作フローチャートになり、図7のステップS701で開始されたメイン選出情報要求タイマがタイムアウトしたか否かが判定される(ステップS1201)。
【0147】
ステップS1201の判定がYESならば、以下のステップS1202とS1203の処理が実行される。この処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0148】
まず、グループ共通定義ファイル310(図22、図23参照)に定義されている各グループの一番プライオリティが高いノード宛に、メイン選出情報要求が送信される(ステップS1202)。
【0149】
次に、メイン選出情報応答タイマが開始される(ステップS1203)。このタイマは、特には図示しないハードウェアタイマ又はソフトウェアタイマとして実現される。その後、図7のステップS702の事象待機処理に戻る。
【0150】
前述のステップS1201の判定がNOならば、メイン選出情報要求が受信されたか否かが判定される(ステップS1204)。
ステップS1204の判定がYESならば、以下のステップS1205の処理が実行される。この処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0151】
即ち、グループ間通信部307を介して、自ノードのプライオリティが返される(ステップS1205)。なお、自グループトランスコード状況情報318も通知される。その後、図7のステップS702の事象待機処理に戻る。
【0152】
前述のステップS1204の判定がNOならば、メイン選出情報応答が受信されたか否かが判定される(ステップS1206)。
ステップS1206の判定がYESならば、以下のステップS1207からS1213の処理が実行される。これらの処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0153】
まず、グループ間通信部307を介して受信されたメイン選出情報応答から、送信元のノードのプライオリティと、送信元のノードが属するグループの自グループトランスコード状況情報318が取得され、グループ間トランスコード状況情報317に設定される(ステップS1207)。
【0154】
その後、全ノードから応答が有ったか否かが判定される(ステップS1208)。
ステップS1208の判定がNOならば、図7のステップS702の事象待機処理に戻る。
【0155】
ステップS1208の判定がYESならば、メイン選出情報応答タイマが終了させられる(ステップS1209)。
次に、メイン選出情報応答を送信したノードのプライオリティと自ノードのプライオリティが比較される(ステップS1210)。
【0156】
そして、自ノードのプライオリティが一番高いか否かが判定される(ステップS1211)。
ステップS1211の判定がYESならば、メイン装置の運用状態へ遷移し(ステップS1212)、図7〜図13の動作フローチャートの処理を終了する。
【0157】
一方、ステップS1211の判定がNOならば、サブメイン装置の運用状態へ遷移し(現在の状態を維持し)(ステップS1213)、その後、その後、図7のステップS702の事象待機処理に戻る。
【0158】
前述したステップS1206の判定がNOならば、ステップS1203で開始されたメイン選出情報応答タイマがタイムアウトしたか否かが判定される(ステップS1214)。
【0159】
ステップS1214の判定がYESならば、前述のステップS1209からS1213と同様の処理が実行される。これらの処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0160】
この場合には、全てのノードからメイン選出情報応答が得られていなくても、現在までに得られているノードのプライオリティを使って、メインマスタ装置又はサブメインマスタ装置への遷移が実行される(ステップS1214→S1209からS1213)。
【0161】
次に、前述した図12のステップS1214の判定がNOとなった場合には、図13の動作フローチャートになり、グループ間通信部307を介してグループ間ヘルスチェックが受信されたか否かが判定される(ステップS1301)。
【0162】
ステップS1301の判定がYESならば、以下のステップS1302からS1305の一連の処理が実行される。この処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0163】
まず、メインマスタ装置のプライオリティと自ノードのプライオリティとが比較される(ステップS1302)。
そして、自ノードの方がプライオリティが高いか否かが判定される(ステップS1303)。
【0164】
ステップS1303の判定がYESならば、メインマスタ装置の運用状態へ遷移される(ステップS1304)。その後、図7〜図13の動作フローチャートの処理を終了する。
【0165】
ステップS1303の判定がNOならば、ヘルスチェック応答がメインマスタ装置に送信される(ステップS1305)。
その後、グループ間ヘルスチェックタイマがリセットされ(ステップS1306)、図7のステップS702の事象待機処理に戻る。
【0166】
前述のステップS1301の判定がNOならば、図7のステップS701で開始されたグループ間ヘルスチェックタイマがタイムアウトしたか否かが判定される(ステップS1307)。
【0167】
メインマスタ装置が故障してグループ間ヘルスチェックが受信されずステップS1307の判定がYESとなると、以下のステップS1308からS1314の一連の処理が実行される。これらの処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0168】
まず、自グループのQoS最大値(許容量)がデフォルト値のままであるか否かが判定される(ステップS1308)。
ステップS1308の判定がYESならば、ステップS1312に移行する。
【0169】
ステップS1308の判定がNOならば、QoS最大値がデフォルト値に戻される(ステップS1309)。
次に、優先マルチキャストデータ及び透過設定マルチキャストデータ以外のマルチキャストデータのエントリが選択されて、トランスコード管理テーブル312から削除される(ステップS1310)。
【0170】
次に、自グループの狭帯域流入量がQoS最大値以内であるか否かが判定される(ステップS1311)。
ステップS1311の判定がNOならば、ステップS1310の処理に戻って、更にマルチキャストデータのエントリが削除される。
【0171】
ステップS1311の判定がYESになると、削除したマルチキャストデータについて、トランスコード要求によって他ノードへ停止指示が出される(ステップS1312)。
そして、メイン選出情報要求が各グループのマスタ装置へ送信される(ステップS1313)。
その後、グループ間ヘルスチェックタイマがリセットされ(ステップS1306)、図7のステップS702の事象待機処理に戻る。
【0172】
図14から図18は、スレーブ装置(ノード)として動作するオートトランスコーダ101の制御動作を示す動作フローチャートである。
【0173】
まず、ヘルスチェック受信タイマが開始される(ステップS1401)。このタイマは、特には図示しないハードウェアタイマ又はソフトウェアタイマとして実現される。
次に、新たな情報受信の事象が発生したか否かの待ち状態となる(ステップS1402)。
【0174】
続いて、ステップS1403からS1409の処理は、図3のグループ内情報管理部304の一部の機能を実現する。
まず、ヘルスチェックが受信されたか否かが判定される(ステップS1403)。
【0175】
ステップS1403の判定がYESとなると、ヘルスチェック受信タイマが終了させられる(ステップS1404)。
次に、受信されたパケットに含まれる自グループトランスコード状況情報318によって、自装置内の自グループトランスコード状況情報318が更新される(ステップS1405)
次に、更新された自グループトランスコード状況情報318と、グループ共通定義ファイル310が参照されることにより、自ノードと新たに起動したノードのプライオリティが比較される(ステップS1406)。
【0176】
そして、自ノードのプライオリティが最高であるか否かが判定される(ステップS1407)。
ステップS1407の判定がYESならば、マスタ装置の運用状態へ遷移される(ステップS1408)。図14の動作フローチャートの処理が終了する。
【0177】
一方、ステップS1407の判定がNOならば、ヘルスチェック応答が送信される(ステップS1409)。このとき、自ノードの自グループトランスコード状況情報318が通知される。
【0178】
その後、現在のスレーブ装置の運用状態が維持され、ステップS1401の処理に戻る。
前述したステップS1403の判定がNOの場合には、図15の動作フローチャートに移り、ヘルスチェック受信タイマがタイムアウトしたか否かが判定される(ステップS1501)。
【0179】
ステップS1501の判定がYESならば、以下のステップS1502からS1505の処理が実行される。これらの処理は、図3のグループ内情報管理部304の一部の機能を実現する。
【0180】
まず、自グループトランスコード状況情報318とグループ共通定義ファイル310が参照されて、自ノードのプライオリティと起動中のノードのプライオリティが比較される(ステップS1502)。
【0181】
この結果、自ノードのプライオリティが最高であるか否かが判定される(ステップS1503)。
ステップS1503の判定がYESならば、マスタ装置の運用状態に遷移される(ステップS1504)。
【0182】
ステップS1503の判定がNOならば、スレーブ装置の運用状態維持される(ステップS1505)。その後、その後、図14のステップS1401の処理に戻る。
前述したステップS1501の判定がNOの場合には、図16の動作フローチャートに移り、トランスコード設定要求が受信されたか否かが判定される(ステップS1601)。
【0183】
ステップS1601の判定がYESならば、以下のステップS1602とS1603の処理が実行される。これらの処理は、図3のトランスコード制御部302の一部の機能を実現する。
【0184】
まず、トランスコード設定要求に基づき、MCデータ受信管理部301のフィルタ機能に対して、遮断・透過などの設定が行われる。また、自グループトランスコード状況情報318が更新される(ステップS1602)。
【0185】
次に、トランスコード設定要求によって指定されたトランスコード部303に対して、MPEG2からMPEG4へのトランスコードの実行が指示される(ステップS1603)。その後、図14のステップS1402の事象待機処理に戻る。
【0186】
次に、前述したステップS1601の判定がNOとなった場合には、図17の動作フローチャートになり、図14のステップS1401で開始されたMCデータ受信チェックタイマがタイムアウトしたか否かが判定される(ステップS1701)。
【0187】
ステップS1701の判定がYESならば、以下のステップS1702からS1711及び図18のステップS1801からS1808の一連の処理が実行される。この処理は、図3のMCデータ受信管理部301、トランスコード制御部302、グループ内情報管理部304、透過・破棄MC情報管理部308の一部の機能を実現する。
【0188】
まず、図6のステップS602で更新されているメモリ上の受信キューがポーリングされる(ステップS1702)。
次に、その受信キューにパケットが蓄積されているか否かが判定される(ステップS1703)。
【0189】
ステップS1703の判定がNOならば、図14のステップS1401の処理に戻る。
ステップS1703の判定がYESならば、受信キューからパケットが取り込まれる(ステップS1704)。
【0190】
次に、図3の優先(緊急)テーブル314に、優先マルチキャストデータ(MC)のアドレスの設定が有るかか否かが判定されるか(ステップS1705)。優先(緊急)テーブル314のデータ構成例は図26に示される。このテーブル内の「PrMCAdd」フィールドがチェックされる。
【0191】
ステップS1705の判定がNOなら、ステップS1708の処理に移る。
ステップS1705の判定がYESならば、優先MCアドレスは自グループ管理テーブル(図25参照)にエントリされているか否かが判定される(ステップS1706)。
【0192】
ステップS1706の判定がNOならば、ステップS1708の処理に移る。
ステップS1706の判定がYESならば、自グループ管理テーブル設定がそのまま保持される(ステップS1707)。
【0193】
ステップS1705、S1706の判定がNOの場合又はステップS1707の処理の後、図3の遮断(破棄)テーブル316に、遮断マルチキャストデータ(MC)のアドレスの設定が有るかか否かが判定されるか(ステップS1708)。遮断(破棄)テーブル316のデータ構成例は図27に示される。このテーブル内の「BlockMCAdd」フィールドがチェックされる。
【0194】
ステップS1708の判定がNOなら、ステップS1710の処理に移る。
ステップS1708の判定がYESならば、遮断MCのエントリが自グループ管理テーブル(図25参照)に追加される。そして、自ノードのMCデータ受信管理部301のフィルタ機能に、遮断MCのパケットを破棄する設定がなされる(ステップS1711)。その後、図14のステップS1402の事象待機処理に戻る。
【0195】
ステップS1708の判定がNOならば、図3の透過テーブル315に、透過マルチキャストデータ(MC)のアドレスの設定が有るかか否かが判定されるか(ステップS1710)。透過テーブル315のデータ構成例は図27に示される。このテーブル内の「ThroughMCAdd」フィールドがチェックされる。
【0196】
ステップS1710の判定がYESならば、透過MCのエントリが自グループ管理テーブル(図25参照)に追加される。そして、自ノードのMCデータ受信管理部301のフィルタ機能に、透過MCのパケットを透過する設定がなされる(ステップS1711)。その後、図14のステップS1402の事象待機処理に戻る。
【0197】
次に、ステップS1710の判定がNOとなった場合、即ち、受信されたマルチキャストデータ(MC)が優先MCでも遮断MCでも透過MCでもない場合には、図18の動作フローチャートに移る。
【0198】
まず、図17のステップS1704で取得されたMCアドレスを検索キーにして、自グループ管理テーブル(図25参照)が検索される(ステップS1801)。
この検索の結果、取得されたMCアドレスが自グループ管理テーブルにあるか否かが判定される(ステップS1702)。
【0199】
ステップS1102の判定がNOならば、マスタ装置に対して、トランスコード設定要求が送信される(ステップS1809)。その後、図14のステップS1402の事象待機処理に戻る。
【0200】
ステップS1102の判定がYESならば、自グループ管理テーブル内のトランスコード管理テーブル312のタイムスタンプフィールド「TimeStamp」が更新される(ステップS1803)。
【0201】
次に、自ノードにトランスコードが設定されているか否かが判定される(ステップS1804)。
ステップS1804の判定がYESならば、トランスコードの処理が継続されて、図14のステップS1402の事象待機処理に戻る。
【0202】
ステップS1804の判定がNOならば、空きが検出されたトランスコード部303に、トランスコード開始指示のシグナルが出力される(ステップS1805)。
続いて、トランスコード部303からMCデータ受信管理部301へ指示が出され、そのトランスコード部303に対応するトランスコーダ接続ポートへのマルチキャストデータ(MC)の転送設定がなされる(ステップS1806)。
【0203】
更に、トランスコード部303からトランスコーダ102へ、トランスコード開始/停止コマンドが発行される(ステップS1807)。
そして、トランスコード部303が、トランスコーダ102から取得したコマンドレスポンス結果やトランスコード状態を、自グループ管理テーブル(図25)に更新して反映させる(ステップS1808)。その後、図14のステップS1402の事象待機処理に戻る。
【0204】
図19から図21は、メインマスタ装置(ノード)として動作するオートトランスコーダ101の制御動作を示す動作フローチャートである。
まず、グループ間ヘルスチェック送信タイマが開始される(ステップS1901)。
【0205】
次に、新たな情報受信の事象が発生したか否かの待ち状態となる(ステップS1902)。
続いて、ステップS1903からS1905の処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0206】
まず、グループ間ヘルスチェック送信タイマが満了したか否かが判定される(ステップS1903)。
【0207】
ステップS1903の判定がYESになると、各グループのマスタに対しグループ間ヘルスチェックが送信される(ステップS1904)。このとき、グループ間トランスコード状況情報317が送信される。グループ間トランスコード状況情報317は、図29に示されるように、全グループの各自グループトランスコード状況情報318を合わせた情報である。
【0208】
次に、ヘルスチェック応答タイマが開始される(ステップS1905)。このタイマは、特には図示しないハードウェアタイマ又はソフトウェアタイマとして実現される。その後、図19のステップS1902の事象待機処理に戻る。
【0209】
ステップS1903の判定がNOならば、図20の動作フローチャートの処理に移り、ヘルスチェック応答が受信されたか否かが判定される(ステップS2001)。
ステップS2001の判定がYESならば、以下のステップS2002からS2011の一連の処理が実行される。これらの処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0210】
まず、自ノードのプライオリティは最高であるか否かが判定される(ステップS2002)。
次に、受信されたヘルスチェック応答の内容によって、グループ間トランスコード状況情報317が更新される(ステップS2003)。
【0211】
次に、受信されたヘルスチェック応答の応答内容は、所定の閾値(%)を超える流入量であるか否かが判定される(ステップS2004)。グループ毎の閾値は、図29に例示されるグループ間トランスコード状況情報317中のカレントQoS閾値(流入量閾値)が用いられる。
【0212】
ステップS2004の判定がYESならば、流入量が「閾値−調整レート」以下のグループ有るか否かが判定される(ステップS2005)。
ステップS2005の判定がNOならば、図19のステップS1902の事象待機処理に戻る。
【0213】
ステップS2005の判定がYESならば、一番流入量の少ないグループが抽出される(ステップS2006)。
次に、抽出されたグループの閾値を下げる指示のヘルスチェックが生成される(ステップS2007)。
【0214】
一方、ステップS2004の判定がNOならば、閾値を下げる指示を含むヘルスチェックに対する応答があったか否かが判定される(ステップS2008)。
ステップS2008の判定がNOならば、ステップS2010が実行される。
【0215】
ステップS2008の判定がYESならば、閾値を下げた分だけ、ひとつのグループ(A)に閾値を上げる指示のヘルスチェックが生成される(ステップS2009)。
ステップS2007又はS2009の処理の後、全マスタから応答が有ったか否かが判定される(ステップS2010)。
【0216】
ステップS2010の判定がNOならば、図19のステップS1902の事象待機処理に戻る。
ステップS2010の判定がYESならば、ヘルスチェック応答タイマが終了させられ(ステップS2011)、その後、図19のステップS1902の事象待機処理に戻る。
【0217】
前述したステップS2001の判定がNOならば、図21の動作フローチャートの処理に移り、図19のステップS1905で開始されたヘルスチェック応答タイマがタイムアウトしたか否かが判定される(ステップS2101)。
【0218】
ステップS2101の判定がYESならば、以下のステップS2102からS2112の一連の処理が実行される。これらの処理は、図3のグループ間情報管理部306の一部の機能を実現する。
【0219】
まず、タイムアウトしたグループはQoS最大値を変更しているか否かが判定さえる(ステップS2102)。
ステップS2102の判定がNOならば、図19のステップS1902の事象待機処理に戻る。
【0220】
ステップS2102の判定がYESならば、タイムアウトしたグループはQoS最大値を減らしているか否かが判定される(ステップS2103)。
ステップS2103の判定がYESならば、自グループのQoS最大値(許容量)がデフォルト値のままであるか否かが判定される(ステップS2104)。
【0221】
ステップS2104の判定がYESならば、ステップS2109に移行する。
ステップS2104の判定がNOならば、QoS最大値がデフォルト値に戻される(ステップS2105)。
【0222】
次に、優先マルチキャストデータ及び透過設定マルチキャストデータ以外のマルチキャストデータのエントリが選択されて、トランスコード管理テーブル312から削除される(ステップS2106)。
【0223】
次に、自グループの狭帯域流入量がQoS最大値以内であるか否かが判定される(ステップS2107)。
ステップS2107の判定がNOならば、ステップS2106の処理に戻って、更にマルチキャストデータのエントリが削除される。
【0224】
ステップS2107の判定がYESになると、削除したマルチキャストデータについて、トランスコード要求によって自グループ内ノードへ停止指示が出される(ステップS2108)。
【0225】
その後、トランスコード応答タイマが開始され、図19のステップS1902の事象待機処理に戻る。
前述したステップS2103の判定がNOの場合には、タイムアウトしたグループがQoS最大値を増やしていた分、多の減らしているグループのQoS最大値を増やす(デフォルト値に戻す)処理が実行される(ステップS2110)。
【0226】
次に、QoS最大値を再設定したグループ間トランスコード状況情報317が送信される(ステップS2111)。
その後、ヘルスチェック応答タイマが開始され(ステップS2112)、図19のステップS1902の事象待機処理に戻る。
【0227】
以上説明した実施形態により、オートトランスコーダの多段接続構成により、狭帯域ネットワークに流入する映像ストリーム等の大容量データが帯域を超えないように制御することが可能となる。
【0228】
また、指定の映像ストリーム等を、元のレートのまま狭帯域を通し、高品質の映像を提供することが可能となる。
更に、トランスコード状況と映像ストリーム等の狭帯域ネットワークへの流入量に関する情報が、各グループ内及び複数のグループ間で共有されることにより、グループ内及びグループ間の各オートトランスコーダが協同的に、狭帯域への流入制御を実施することが可能となる。
【0229】
更に、オートトランスコーダの冗長構成により、1システムがダウンしても予備のオートトランスコーダが状態を引き継いでトランスコードすることが可能となる。
また、モニタ映像を見た結果、鮮明な映像が必要になった場合に、トランスコードのレートを上げ優先して狭帯域ネットワークを通すような制御が可能となる。
【0230】
加えて、不必要な映像が狭帯域ネットワークを使用しないように制御することが可能となる。
【符号の説明】
【0231】
101 オートトランスコーダ
102 トランスコーダ
103 広帯域側L3スイッチ
104 狭帯域側L3スイッチ
105 カメラ
106 広帯域ネットワーク
107 狭帯域ネットワーク
108 Web保守端末
201 スイッチボックス
301 MCデータ受信管理部
302 トランスコード制御部
303 トランスコード部
304 グループ内情報管理部
305 グループ内通信部
306 グループ間情報管理部
307 グループ間通信部
308 透過・破棄MC情報管理部
309 Web画面制御部
310 グループ共通定義ファイル
311 受信MCデータ管理情報
312 トランスコード管理テーブル
313 グループ内管理情報
314 優先(緊急)テーブル
315 透過テーブル
316 遮断(破棄)テーブル
317 グループ間トランスコード状況情報317
318 自グループトランスコード状況情報
319 自グループトラフィック流入情報

【特許請求の範囲】
【請求項1】
複数の大容量データを広帯域ネットワークから狭帯域ネットワークに配信する大容量データ配信システムであって、
前記大容量データのレート変換を行うレート変換装置を搭載し該レート変換装置を制御するレート変換制御装置を多段接続して前記広帯域ネットワークからの前記大容量データの流入を引き受けるグループを形成し、
前記レート変換制御装置が、
自レート変換制御装置で前記大容量データをレート変換できない場合に、同一の前記グループ内の他のレート変換制御装置で該大容量データをレート変換させるために、該大容量データを透過させる制御を行うトランスコード制御部と、
指定された大容量データを、前記グループ内の全レート変換制御装置でレート変換を行わずに透過させる制御を行う透過情報管理部と、
前記トランスコード制御部及び前記透過情報管理部の制御状態を、前記グループ内の他のレート変換制御装置との間で、自グループトランスコード状況情報として交換し設定するグループ内情報管理部と、
を含む、
ことを特徴とする狭帯域ネットワークの大容量データ配信システム。
【請求項2】
前記グループ内の各レート変換装置は、該グループから前記狭帯域ネットワークへ流入する大容量データの流入状態を示す自グループトラフィック流入情報を前記グループ内情報管理部を介して相互に交換することにより、該グループにおける前記狭帯域ネットワークへの前記大容量データの流入量が該グループに対して指定されている許容値を超えないように制御する、
ことを特徴とする請求項1に記載の狭帯域ネットワークの大容量データ配信システム。
【請求項3】
前記多段接続されたレート変換装置によって形成されるグループが、前記広帯域ネットワークと前記狭帯域ネットワークの間に複数形成され、
前記各グループの複数のレート変換制御装置のうちの各ひとつずつがマスタ装置として動作し、
前記レート変換制御装置は、自装置が前記マスタ装置として動作するときに、自装置が属するグループに対応する前記自グループトランスコード状況情報を、他の各グループで各マスタ装置として動作する各レート変換制御装置との間でグループ間トランスコード状況情報として交換することにより、該各グループ間で前記大容量データの流入量の許容値を増減調整するグループ間情報管理部を更に含む、
ことを特徴とする請求項1又は2に記載の狭帯域ネットワークの大容量データ配信システム。
【請求項4】
前記各グループにおいて多段接続されたレート変換制御装置のうちの所定のものを予備系装置とし、その他のレート変換制御装置を現用系装置とし、該現用系のレート変換制御装置が故障した場合に、該故障したレート変換制御装置のレート変換状況を前記予備系のレート変換制御装置が引き継ぐ制御を、前記グループ内情報管理部が実行する、
ことを特徴とする請求項1乃至3に記載の狭帯域ネットワークの大容量データ配信システム。
【請求項5】
前記予備系のレート変換制御装置を、前記多段接続されたレート変換制御装置群中の最下流に接続することにより、前記現用系のトランスコード装置が故障した時点で、前記レート変換されなくなった高レートのままの大容量データが前記狭帯域ネットワークへ流入することを、前記予備系のレート変換制御装置が防止する、
ことを特徴とする請求項4に記載の狭帯域ネットワークの大容量データ配信システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate


【公開番号】特開2011−109339(P2011−109339A)
【公開日】平成23年6月2日(2011.6.2)
【国際特許分類】
【出願番号】特願2009−261220(P2009−261220)
【出願日】平成21年11月16日(2009.11.16)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】