(57)【要約】【課題】  複数のプロセッサ（情報処理部）を並列に用いて情報処理を行う際に、効率良く負荷分散を行うことができる情報処理装置を提供する。【解決手段】  本発明は、複数の情報処理部と、各ストリームの情報処理をいずれかの情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置に関する。そして、上記負荷分散装置において負荷分散の内容を制御する負荷分散制御装置は、負荷分散装置が、ストリームの情報処理の開始要求を受付けると、その開始要求に係るストリームのフレームの情報処理について予測所要時間及び処理制限時間を保持する手段と、少なくとも、保持した予測所要時間と処理制限時間とを利用して、開始要求に係るストリームの情報処理をいずれの上記情報処理部に担当させるか決定する手段とを有することを特徴とする。【選択図】      図１
2010277272.tif 000002
【特許請求の範囲】
【請求項１】
フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、上記負荷分散装置を構成する、上記負荷分散装置の負荷分散の内容を制御する負荷分散制御装置において、
上記負荷分散装置が、ストリームの情報処理の開始要求を受付けると、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとに処理に要する予測所要時間を保持する予測所要時間保持手段と、
上記開始要求に係るストリームのフレームが発生してから、そのフレームの情報処理を完了するまでの処理制限時間を保持する処理制限時間保持手段と、
少なくとも、上記予測所要時間保持手段が保持した予測所要時間と、上記処理制限時間保持手段が保持した処理制限時間とを利用して、上記開始要求に係るストリームの情報処理を、いずれの上記情報処理部に担当させるか決定する決定手段と
を有することを特徴とする負荷分散制御装置。
【請求項２】
フレームの情報処理内容に対応する予測所要時間に係る情報を記憶する予測所要時間関連情報記憶手段をさらに有し、
上記予測所要時間保持手段は、上記予測所要時間関連情報記憶手段に記憶された情報を利用して、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとの処理に要する予測所要時間を求めて保持する
ことを特徴とする請求項１に記載の負荷分散制御装置。
【請求項３】
フレームの情報処理内容に応じた処理制限時間に係る情報を記憶する処理制限時間関連情報記憶手段をさらに有し、
上記処理制限時間保持手段は、上記処理制限時間関連情報記憶手段に記憶された情報を利用して、上記開始要求に係るストリームのフレームの情報処理について、処理制限時間を求めて保持する
ことを特徴とする請求項１又は２に記載の負荷分散制御装置。
【請求項４】
上記情報処理部ごとに、少なくとも、その情報処理部が現在情報処理を担当している全てのストリームに係る予測所要時間の合計時間の情報と、その情報処理部が現在情報処理を担当しているストリームごとの処理制限時間の情報とを保持する処理状況保持手段をさらに有し、
上記決定手段は、上記処理状況保持手段が保持している情報も利用して、上記開始要求に係るストリームの情報処理を担当させる情報処理部を決定する
ことを特徴とする請求項１〜３のいずれかに記載の負荷分散制御装置。
【請求項５】
上記フレームは、メディア通信を行う通信装置間を流れるメディアパケットであり、
上記ストリームは、メディア通信に係る通信セッションであり、
上記情報処理部は、メディアパケットを異なる形式のメディアパケットに変換する情報処理を行う
ことを特徴とする請求項１〜４のいずれかに記載の負荷分散制御装置。
【請求項６】
フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、上記負荷分散装置に搭載されたコンピュータを、
上記負荷分散装置が、ストリームの情報処理の開始要求を受付けると、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとに処理に要する予測所要時間を保持する予測所要時間保持手段と、
上記開始要求に係るストリームのフレームが発生してから、そのフレームの情報処理を完了するまでの処理制限時間を保持する処理制限時間保持手段と、
少なくとも、上記予測所要時間保持手段が保持した予測所要時間と、上記処理制限時間保持手段が保持した処理制限時間とを利用して、上記開始要求に係るストリームの情報処理を、いずれの上記情報処理部に担当させるか決定を行う決定手段と
して機能させることを特徴とする負荷分散制御プログラム。
【請求項７】
フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、上記負荷分散装置の負荷分散の内容を制御する負荷分散制御方法において、
予測所要時間保持手段、処理制限時間保持手段、決定手段を有し、
上記予測所要時間保持手段は、上記負荷分散装置が、ストリームの情報処理の開始要求を受付けると、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとに処理に要する予測所要時間を保持し、
上記処理制限時間保持手段は、上記開始要求に係るストリームのフレームが発生してから、そのフレームの情報処理を完了するまでの処理制限時間を保持し、
上記決定手段は、少なくとも、上記予測所要時間保持手段が保持した予測所要時間と、上記処理制限時間保持手段が保持した処理制限時間とを利用して、上記開始要求に係るストリームの情報処理を、いずれの上記情報処理部に担当させるか決定する
ことを特徴とする負荷分散制御方法。
【請求項８】
フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置を構成する、上記負荷分散装置において、
請求項１〜５のいずれかに記載の負荷分散制御装置を備え、上記負荷分散制御装置を用いて負荷分散の内容を制御する
ことを特徴とする負荷分散装置。
【請求項９】
フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、
上記負荷分散装置として請求項８に記載の負荷分散装置を適用したことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、負荷分散制御装置、プログラム及び方法、並びに、負荷分散装置及び情報処理装置に関し、例えば、複数のプロセッサを搭載したメディア変換装置における負荷分散に適用し得る。
【背景技術】
【０００２】
固定通信網／移動通信網間や異なる通信事業者間などで、円滑な通信を実現するため、各通信網で使用される様々なメディア（例えば、音声・映像・データ等）のセッション（ストリーム）を、同時により多くのチャンネル数を変換するメディア変換装置の必要性が高まっている。
【０００３】
多くのチャンネル数を処理する為には、メディア変換を行う複数個のプロセッサ（以下、「情報処理部」ともいう）を並列に処理させる必要がある。
【０００４】
複数個のプロセッサを用いて並列処理する為には、プロセッサヘの処理対象のデータを、前段階の負荷分散装置（ロードバランサ）による振り分けが必要である。負荷分散装置における振り分け方法により、各プロセッサの負荷が変化する。振り分け方法として、従来の一般的な負荷分散装置における負荷分散制御としては、以下の５つのものなどがある。（１）ラウンドロビン：要求順に処理を振り分ける（２）重み付け：処理を行なう側に重み付け（ｒａｔｉｏ）をつけ、要求を振り分ける（３）優先順位：処理を行なう側に優先順位（Ｐｒｉｏｒｉｔｙ）をつけ、優先順位の高い処理を行なう側への要求が一定以上超えた場合、次の優先順位が高い処理を行なう側に振り分ける（４）接続数：処理要求数が少ない処理を行なう側へ振り分ける（５）処理量：プロセッサの処理量（ロードアベレージ）が少ない処理を行なう側に振り分ける方式。
【０００５】
しかしながら、上述の（１）〜（４）を用いた方式では、メディア変換装置のように、複数種類のメディア（例えば、音声・映像・データ等）のメディア変換や、同じ種類のメディアでも複数種類の形式（例えば、異なるコーデックやパラメータを用いたメディアデータへの変換など）のメディア変換を行う場合には、変換処理の内容に応じて、セッション（ストリーム）ごとの処理量は異なることになる。
【０００６】
そのため、処理量の異なる情報処理を、複数のプロセッサを並列に処理させる場合には、プロセッサごとの現在の処理量に応じて、動的に負荷分散を行う必要があるため、上述の（１）〜（４）の方式を用いずに、「（５）処理量」の方式を用いる場合がある。
【０００７】
上述の「（５）処理量」の方式を用いた負荷分散を行う従来技術としては、例えば、特許文献１に記載の方法がある。特許文献１に記載の並列データベース処理方法では、一番処理負荷の軽いプロセッサに新規に発生した処理を振り分けることにより、各プロセッサの処理を均等に分散している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平８−１３７９１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、メディア変換装置においては、１つのプロセッサ内で、処理負荷が大きい映像や、処理負荷は小さいが処理時間の制限が厳しい音声パケットの処理等、が混在する場合がある。したがって、特許文献１に記載の並列データベース処理方法における、負荷分散の方式を、そのままメディア変換装置に適用した場合には、以下のような課題がある。
【００１０】
例えば、処理負荷が高い映像パケット処理を実行している１つのプロセッサに対して、新たに１０ｍｓ周期の音声処理を混在させる場合、処理遅延が発生し、音声パケットの揺らぎによる音声途切れなどの品質低下が発生してしまう。この課題を回避するためには、例えば、音声処理と映像処理専用のプロセッサを分離する必要があった。よって、従来のメディア変換装置では、運用条件によっては、一時的に映像処理が発生しない条件下では、音声処理の負荷が高い場合でも映像処理用のプロセッサを有効に使用できていなかった。
【００１１】
そのため、複数のプロセッサ（情報処理部）を並列に用いて情報処理を行う際に、効率良く負荷分散を行うことができる負荷分散制御装置、プログラム及び方法、並びに、負荷分散装置及び情報処理装置が望まれている。
【課題を解決するための手段】
【００１２】
第１の本発明の負荷分散制御装置は、（１）フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、上記負荷分散装置を構成する、上記負荷分散装置の負荷分散の内容を制御する負荷分散制御装置において、（２）上記負荷分散装置が、ストリームの情報処理の開始要求を受付けると、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとに処理に要する予測所要時間を保持する予測所要時間保持手段と、（３）上記開始要求に係るストリームのフレームが発生してから、そのフレームの情報処理を完了するまでの処理制限時間を保持する処理制限時間保持手段と、（４）少なくとも、上記予測所要時間保持手段が保持した予測所要時間と、上記処理制限時間保持手段が保持した処理制限時間とを利用して、上記開始要求に係るストリームの情報処理を、いずれの上記情報処理部に担当させるか決定する決定手段とを有することを特徴とする。
【００１３】
第２の本発明の負荷分散制御プログラムは、（１）フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、上記負荷分散装置に搭載されたコンピュータを、（２）上記負荷分散装置が、ストリームの情報処理の開始要求を受付けると、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとに処理に要する予測所要時間を保持する予測所要時間保持手段と、（３）上記開始要求に係るストリームのフレームが発生してから、そのフレームの情報処理を完了するまでの処理制限時間を保持する処理制限時間保持手段と、（４）少なくとも、上記予測所要時間保持手段が保持した予測所要時間と、上記処理制限時間保持手段が保持した処理制限時間とを利用して、上記開始要求に係るストリームの情報処理を、いずれの上記情報処理部に担当させるか決定を行う決定手段として機能させることを特徴とする。
【００１４】
第３の本発明の負荷分散制御方法は、（１）フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、上記負荷分散装置の負荷分散の内容を制御する負荷分散制御方法において、（２）予測所要時間保持手段、処理制限時間保持手段、決定手段を有し、（３）上記予測所要時間保持手段は、上記負荷分散装置が、ストリームの情報処理の開始要求を受付けると、上記開始要求に係るストリームのフレームの情報処理について、上記情報処理部ごとに処理に要する予測所要時間を保持し、（４）上記処理制限時間保持手段は、上記開始要求に係るストリームのフレームが発生してから、そのフレームの情報処理を完了するまでの処理制限時間を保持し、（４）上記決定手段は、少なくとも、上記予測所要時間保持手段が保持した予測所要時間と、上記処理制限時間保持手段が保持した処理制限時間とを利用して、上記開始要求に係るストリームの情報処理を、いずれの上記情報処理部に担当させるか決定することを特徴とする。
【００１５】
第４の本発明の負荷分散装置は、（１）フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置を構成する、上記負荷分散装置において、（２）第１の本発明の負荷分散制御装置を備え、上記負荷分散制御装置を用いて負荷分散の内容を制御することを特徴とする。
【００１６】
第５の本発明の情報処理装置は、（１）フレーム単位に情報処理を行う複数の情報処理部と、複数のフレームが一定又は不定の間隔で発生するストリームごとに情報処理の要求を受付けて、受付けたストリームに係る情報処理を、いずれかの上記情報処理部に振り分けて実行させる負荷分散装置とを備える情報処理装置において、（２）上記負荷分散装置として第４の本発明の負荷分散装置を適用したことを特徴とする。
【発明の効果】
【００１７】
複数のプロセッサ（情報処理部）を並列に用いて情報処理を行う際に、効率良く負荷分散を行うことができる情報処理装置を提供する。
【図面の簡単な説明】
【００１８】
【図１】実施形態に係る、メディア変換装置（情報処理装置）の全体構成及び、関係する各種装置の接続関係などを示すブロック図である。
【図２】実施形態に係る、メディア変換装置（情報処理装置）における、メディア変換の動作の全体を示したシーケンス図である。
【図３】実施形態に係る負荷分散制御装置において、トランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ（デジタルシグナルプロセッサ）を決定する処理の詳細処理について示したフローチャートである。
【図４】実施形態に係る負荷分散制御装置において、任意のＤＳＰ（デジタルシグナルプロセッサ）について、処理余裕時間及び開始可能セッション数について演算した際の具体例について説明した説明図である。
【発明を実施するための形態】
【００１９】
（Ａ）主たる実施形態
以下、本発明による負荷分散制御装置、プログラム及び方法、並びに、負荷分散装置及び情報処理装置の一実施形態を、図面を参照しながら詳述する。なお、この実施形態においては、本発明の情報処理装置をメディア変換装置に適用した例について説明している。
【００２０】
（Ａ−１）実施形態の構成
図１は、この実施形態のメディア変換装置１の全体構成及び、関係する各種装置の接続関係などを示すブロック図である。
【００２１】
メディア変換装置１は、通信装置２（通信装置２−１〜２−Ｍ）の間を流れるメディアパケットをメディア変換するものであり、例えば、図１に示すように、送信元の通信装置２−１から送信先の通信装置２−２へ向けて送信されたメディアパケットが与えられると、そのメディアパケットを、送信先の通信装置２−２が対応するメディアに変換して、送信先の通信装置２−２へ向けて送出する。なお、図１においては、説明を簡易にするために、通信装置２−１〜２−Ｍは、メディア変換装置１と直接通信するように図示されているが、これは論理的な接続関係を示したもので、その他の通信装置を中継するようにしても良いし、通信装置２ごとに異なるネットワークに属していても良いことは当然である。
【００２２】
なお、通信装置２−１〜２−Ｍは、既存のメディア通信を行う通信装置を適用することができる。
【００２３】
また、図１において、メディア変換装置１では、Ｇ．７１１（ＩＴＵ−Ｔ  Ｇ．７１１）の形式の音声データのメディアパケットを、Ｇ．７２２（ＩＴＵ−Ｔ  Ｇ．７２２）の形式の音声データのメディアパケットに変換するものとして説明するが、双方向通信についてメディア変換する場合には、Ｇ．７２２からＧ．７１１にも対応するなどしてもよく、メディア変換装置１において対応するメディア変換の組み合わせや、組み合わせの種類は既存のメディア変換装置と同様に限定されないものである。また、メディア変換装置１における、個別のメディアパケットの変換処理自体は、既存のメディア変換装置（メディアゲートウェイなど）と同様の内容を適用するようにしても良い。
【００２４】
以下、メディア変換装置１の詳細について説明する。
【００２５】
メディア変換装置１は、変換処理部１０、負荷分散装置２０（ロードバランサ）及びＣＰＵ３０を有している。
【００２６】
変換処理部１０は、メディア変換装置１において処理（メディア変換）対象となるデータを有するメディアパケット（以下、「変換対象パケット」という）を、変換する機能を担っている。
【００２７】
変換処理部１０は、Ｎ個の変換処理用のプロセッサ（ＤＳＰ１１−１〜１１−Ｎ）を備え、それぞれ、メディア変換装置１において、変換対象パケットを変換する処理を行う。図１においては、変換処理部１０は、ＤＳＰ１１−１〜１１−Ｎという、Ｎ個のハードウェア（ＤＳＰ）により構成されているものとして説明するが、一つのプロセッサの中で複数の変換処理部を有するもの（例えば、マルチコアのＣＰＵなど）に置き換えるようにしても良いし、物理的には一つのプロセッサであっても、タイムスライスなどによりマルチタスクで処理を行うことにより、仮想的に複数のプロセッサを構成するようにしても良く、メディア変換装置１において、複数の情報処理部を構成する方法は限定されないものである。
【００２８】
また、ＤＳＰ１１−１〜１１−Ｎは、既存のメディア変換装置（メディアゲートウェイなど）において、メディア変換を実行するプロセッサを適用することができる。
【００２９】
ＤＳＰ１１−１〜１１−Ｎは、それぞれ、負荷分散装置２０から、変換対象パケットが与えられると、その変換対象パケットを変換し、データが変換済のパケット（以下、「変換済パケット」という）を、負荷分散装置２０に返す処理を行う。
【００３０】
ＣＰＵ３０は、メディア変換装置１の全体を制御する機能を担っている。
【００３１】
ＣＰＵ３０は、送信元の通信装置２から送信先の通信装置２へのメディア変換に係るセッション開始の要求を、外部から受け付けると、そのセッション（ストリーム）にかかるメディアパケットの変換（トランスコード）の開始要求（以下、「トランスコード開始要求」という）を、後述する負荷分散装置２０（負荷分散制御装置２２）に通知する。そして、負荷分散装置２０（負荷分散制御装置２２）から、そのセッションにかかるメディアパケットの変換（トランスコード）の開始が可能である旨の応答（以下、「トランスコード開始応答」という）があると、同様の応答をセッション開始の要求元に応答する。なお、ＣＰＵ３０に与えられる、セッション開始要求は、送信元の通信装置２、又は、図１においては図示を省略している呼制御装置から与えられるものとする。
【００３２】
なお、ＣＰＵ３０としては、既存のメディア変換装置（メディアゲートウェイなど）における、制御部（ＣＰＵ）を適用することができる。
【００３３】
トランスコード開始要求には、例えば、変換対象パケットのメディア（図１の例では、Ｇ．７１１）や、変換対象パケットのメディアに係るパラメータ（例えば、ビットレートなど）、変換済パケットのメディア（図１の例では、Ｇ．７２２）や、変換済パケットのメディアに係るパラメータ（例えば、ビットレートなど）などが含まれている。
【００３４】
なお、セッション開始要求が、双方向通信に係るメディア変換の場合には、ＣＰＵ３０は、第１の通信装置から第２の通信装置へのメディア変換に係るトランスコード開始要求と、第２の通信装置から第１の通信装置へのメディア変換に係るトランスコード開始要求とを、負荷分散制御装置２２に与えるようにしても良い。この実施形態の以下の説明においては、説明を簡易にするため、メディア変換装置１において、片方向のみのメディア変換を行う場合を例として説明するが、双方向になった場合でも、上りと下りで同様の処理を行うようにすれば良いだけであるため、説明を省略する。
【００３５】
負荷分散装置２０は、送信元の通信装置２から、変換対象パケットが与えられると、その変換対象パケットを、所定のＤＳＰ１１に与えてメディア変換させ、ＤＳＰ１１から変換済パケットが返されると、その変換済パケットを送信先の通信装置２に与えるものであり、負荷分散制御装置２２及び制御テーブル１２ａを有している。
【００３６】
負荷分散装置２０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭ、ハードディスクなどのプログラムの実行構成（１台に限定されず、複数台を分散処理し得るようにしたものであっても良い。）に、実施形態の負荷分散制御プログラム等をインストールすることにより構築するようにしても良く、その場合でも機能的には上述の図１のように示すことができる。また、負荷分散装置２０は、ＣＰＵ３０上で、実施形態の負荷分散制御プログラム等を動作させることにより構築するようにしても良いし、単独の装置として構築するようにしても良く、その具体的な構築形態は限定されないものである。
【００３７】
スイッチ２１は、送信元の通信装置２から、変換対象パケットが与えられると、その変換対象パケットを、ルーティング制御情報記憶部２１ａに設定された内容に応じたＤＳＰ１１に与え、ＤＳＰ１１から変換済パケットが返されると、その変換済パケットを送信先の通信装置２に与える。なお、ルーティング制御情報記憶部２１ａは、後述する負荷分散制御装置２２により設定されるものである。
【００３８】
また、スイッチ２１は、既存の複数プロセッサを有するメディア変換装置（メディアゲートウェイなど）において、負荷分散を行うスイッチを適用することができる。
【００３９】
負荷分散制御装置２２は、ＣＰＵ３０からトランスコード開始要求が与えられると、そのトランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ１１を、制御情報記憶部２２ａに保持された情報を利用して決定し、結滞した結果を、スイッチ２１（ルーティング制御情報記憶部２１ａ）に反映させる。負荷分散制御装置２２において、トランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ１１を決定する構成については、後述する動作説明において詳述する。
【００４０】
制御情報記憶部２２ａは、トランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ１１を決定するための情報（例えば、メディア変換に係る各コーデックのパラメータ条件など）が記憶されているデータベースである。制御情報記憶部２２ａに記憶される情報の内容は、後述する動作説明において詳述する。
【００４１】
（Ａ−２）実施形態の動作
次に、以上のような構成を有するこの実施形態のメディア変換装置１におけるメディア変換の動作を説明する。
【００４２】
（Ａ−２−１）メディア変換装置全体の動作
図２は、メディア変換装置１における、メディア変換の動作の全体を示したシーケンス図である。
【００４３】
まず、ＣＰＵ３０により、外部から、送信先の通信装置２へのメディア変換に係るセッション開始の要求が、受け付けられると、トランスコード開始要求が、負荷分散制御装置２２に通知される（Ｓ１０１）。
【００４４】
次に、トランスコード開始要求が通知されると、負荷分散制御装置２２では、通知された内容と、制御情報記憶部２２ａの情報に基づいて、そのトランスコード開始要求に係るセッションのメディア変換を担当させるＤＳＰ１１（以下、「ＤＳＰ１１−ｉ」と表す）が決定される（Ｓ１０２）。
【００４５】
次に、負荷分散制御装置２２により、上述のステップＳ１０２における結果に従って、スイッチ２１（ルーティング制御情報記憶部２１ａ）の内容が設定される（Ｓ１０３）
以降は、スイッチ２１では、上述のトランスコード開始要求に係るセッションのメディアパケットは、ルーティング制御情報記憶部２１ａに設定された内容に従って、ＤＳＰ１１−ｉにルーティングされることになる（Ｓ１０４）。
【００４６】
（Ａ−２−２）担当ＤＳＰの決定処理
次に、上述のステップＳ１０２の処理において負荷分散制御装置２２において、トランスコード開始要求が与えられた場合に、そのトランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ１１を決定する処理の詳細について説明する。
【００４７】
図３は、負荷分散制御装置２２において、トランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ１１を決定する処理の詳細処理について示したフローチャートである。
【００４８】
負荷分散制御装置２２は、ＣＰＵ３０からトランスコード開始要求が与えられると、まず、後述する「トランスコード処理時間」及び「処理制限時間」を算出する（Ｓ２０１）。
【００４９】
［トランスコード処理時間について］
負荷分散制御装置２２では、トランスコード開始要求が与えられると、そのトランスコード開始要求に係る変換対象パケット（例えば、１パケット）を、ＤＳＰ１１が変換する際に要する時間（以下、「トランスコード処理時間」という）を計算する。
【００５０】
ＤＳＰ１１において変換対象パケットをメディア変換する工程としては、変換対象パケットを一旦中間的なメディアデータにデコードする工程と、デコードしたメディアデータをエンコードして目的とするメディアに変換する工程と、サンプリングレート変換や、エコーキャンセル等の特殊処理を行う工程とがあるものとする。したがって、この実施形態においては、トランスコード処理時間は、以下の（１）式により算出されるものとする。
【００５１】
トランスコード処理時間
＝デコード処理時間＋エンコード処理時間＋特殊処理時間  …（１）
例えば、ＤＳＰ１１において、変換対象パケットを、直接目的とするメディアに変換する場合には、（１）式における「デコード処理時間＋エンコード処理時間」を、直接変換する処理時間に置き換えるようにしても良いし、「特殊処理」が必要ない場合には、（１）式から「特殊処理時間」を省略するようにしても良い。
【００５２】
デコード処理時間及びエンコード処理時間については、変換対象パケットが、音声データに係るものである場合には、変換対象パケットにおけるパケタライゼーション値、サンプリングレート／サンプリング数などのパラメータによって定めるようにしても良い。また、デコード処理時間及びエンコード処理時間については、変換対象パケットが、画像データに係るものである場合には、変換対象パケットにおけるフレームレートやフレームサイズなどのパラメータによって定めるようにしても良い。
【００５３】
また、特殊処理時間については、変換対象パケットが音声データに係るものである場合には、サンプリングレートの変換（の有無）、音声フレーム長変換（の有無）、エコーキャンセル（の有無）などのパラメータによって定めるようにしても良い。また、特殊処理時間については、変換対象パケットが画像データに係るものである場合には、リサイズ（の有無）などのパラメータによって定めるようにしても良い。
【００５４】
負荷分散制御装置２２において、「デコード処理時間」、「エンコード処理時間」、「特殊処理時間」を求める際には、上述のようなパラメータに応じた処理時間を、予め制御情報記憶部２２ａに登録しておくようにしても良いし、予め制御情報記憶部２２ａに登録した計算式を用いて、上述のようなパラメータの組み合わせをあてはめて計算するようにしても良い。
【００５５】
また、負荷分散制御装置２２では、メディア変換処理の内容ごと（例えば、「Ｇ．７１１からＧ．７２２への変換」などの変換対象パケットと変換済パケットのメディアの組み合わせごと）に、トランスコード処理時間を予め制御情報記憶部２２ａに登録しておいて、トランスコード開始要求の内容に応じたトランスコード処理時間を制御情報記憶部２２ａから取り出すようにしても良く、負荷分散制御装置２２においてメディア変換処理の内容ごとのトランスコード処理時間を保持する方法は限定されないものである。また、制御情報記憶部２２ａに、トランスコード処理時間自体を登録する場合は、例えば、予め理論値又は実測値を求めておくようにしても良い。
【００５６】
なお、制御情報記憶部２２ａには、ＤＳＰ１１ごとの、現在メディア変換を行っている全てのメディア変換セッションのトランスコード処理時間の合計値（以下、「トランスコード処理合計時間」という）が保持されているものとする。例えば、あるＤＳＰ１１が、トランスコード処理時間が４ｍｓｅｃのメディア変換セッションが２本と、トランスコード処理時間が５ｍｓｅｃのメディア変換セッションが２本のメディア変換を同時に担当している場合には、そのＤＳＰ１１のトランスコード処理合計時間は、（４ｍｓｅｃ×２）＋（５ｍｓｅｃ×２）＝１８ｍｓｅｃとなる。
【００５７】
［処理制限時間について］
負荷分散制御装置２２では、トランスコード開始要求が与えられると、そのトランスコード開始要求に係る変換対象パケット（例えば、１パケット分）を、ＤＳＰ１１が変換処理する際に許容される制限時間（以下、「処理制限時間」という）を求める。
【００５８】
処理制限時間は、例えば、そのトランスコード開始要求に係るセッションにおいて、送信元の通信装置２と送信先の通信装置２の間で、通信品質を保証するための最長の処理時間、言い換えると、変換対象パケットをメディア変換する際に許容される最長のターンアラウンドタイムである。メディア変換装置１では、変換対象パケットについて、それぞれのセッションごとの処理制限時間内にメディア変換処理（トランスコード処理）が完了するように、メディア変換処理が、ＤＳＰ１１−１〜１１−Ｎに負荷分散される。
【００５９】
負荷分散制御装置２２では、例えば、メディア変換処理の内容ごと（例えば、「Ｇ．７１１からＧ．７２２への変換」などの変換対象パケットと変換済パケットのメディアの組み合わせごと）に、処理制限時間を予め制御情報記憶部２２ａに登録しておいて、トランスコード開始要求の内容に応じたトランスコード処理時間を制御情報記憶部２２ａから取り出すようにしても良く、負荷分散制御装置２２においてメディア変換処理の内容ごとの処理制限時間を保持する方法は限定されないものである。制御情報記憶部２２ａに登録する処理制限時間については、例えば、通信装置２の間の通信品質が所望する品質となることを保証する時間について、理論値又は実測値を予め求めて登録するようにしても良い。
【００６０】
なお、制御情報記憶部２２ａには、ＤＳＰ１１ごとの、現在メディア変換を行っている全てのメディア変換セッションの処理制限時間が保持されているものとする。
【００６１】
負荷分散制御装置２２では、「トランスコード処理時間」及び「処理制限時間」を算出すると、次に、各ＤＳＰ１１における処理負荷の余裕が算出される（Ｓ２０２）。
【００６２】
負荷分散制御装置２２では、上述のステップＳ２０１において算出した、「トランスコード処理時間」、「処理制限時間」と、「トランスコード処理合計時間」とを用いて、以下の（２）式により、ＤＳＰ１１ごとの処理制限時間を考慮した処理負荷の余裕（以下、「処理余裕時間」という）が算出されるものとする。ステップＳ２０２では、（２）式を、ＤＳＰ１１−１〜１１−Ｎのそれぞれについて適用し、ＤＳＰ１１ごとの処理余裕時間が算出される。なお、（２）式における「処理制限時間」は、上述のステップＳ２０１で算出した、現在トランスコード開始要求を受けているセッションに係る処理制限時間である。
【００６３】
処理余裕時間＝処理制限時間−トランスコード処理合計時間    …（２）
負荷分散制御装置２２では、ＤＳＰ１１ごとの処理余裕時間の算出が完了すると、次に、ＤＳＰ１１ごとに、現在トランスコード開始要求を受けているセッションのメディア変換を、新規に開始することが可能なセッション数（以下、「開始可能セッション数」という）が、以下の（３）式により算出される（Ｓ２０３）。
【００６４】
ステップＳ２０３では、（３）式を、ＤＳＰ１１−１〜１１−Ｎのそれぞれについて適用し、ＤＳＰ１１ごとの開始可能セッション数が算出される。なお、（３）式における「トランスコード処理時間」は、上述のステップＳ２０１で算出した、現在トランスコード開始要求を受けているセッションに係るトランスコード処理時間である。また、「処理余裕時間」は、上述のステップＳ２０２で求めたＤＳＰ１１ごとの処理余裕時間を適用するものとする。
【００６５】
開始可能セッション数＝（処理余裕時間／トランスコード処理時間）＋１  …（３）
負荷分散制御装置２２では、ＤＳＰ１１ごとの開始可能セッション数の算出が完了すると、次に、最も開始可能セッション数が多いＤＳＰ１１を、現在トランスコード開始要求を受けているセッションのメディアパケットのメディア変換処理を担当するものとして決定される（Ｓ２０４）。
【００６６】
ステップＳ２０４において、負荷分散制御装置２２では、最も開始可能セッション数が多いＤＳＰ１１ではなく、最も処理余裕時間が長いＤＳＰ１１を選択するようにしても良い。ただし、最も処理余裕時間が長いＤＳＰ１１でも、開始可能セッション数が１に満たない場合には、そのトランスコード開始要求を拒否するように制御しても良い。
【００６７】
ステップＳ２０４において、例えば、メディア変換装置１において、４つのＤＳＰ１１−１〜ＤＳＰ１１−４が搭載されており、ＤＳＰ１１−１の開始可能セッション数が１本、ＤＳＰ１１−２の開始可能セッション数が４本、ＤＳＰ１１−３の開始可能セッション数が３本、ＤＳＰ１１−４の開始可能セッション数が２本であった場合には、開始可能セッション数が多いほど現在の処理負荷が軽いことを示すため、ＤＳＰ１１−２に、新たにトランスコード開始要求のあったセッションに係るメディア変換を担当させることに決定される。
【００６８】
（Ａ−２−３）開始可能セッション数算出の詳細について
次に、負荷分散制御装置２２において、上述のステップＳ２０１〜Ｓ２０４の処理が行われる際に開始可能セッション数算出の詳細について説明する。
【００６９】
図４は、負荷分散制御装置２２において、トランスコード開始要求に係るメディア変換処理を担当させるＤＳＰ１１を決定する際に、任意のＤＳＰ１１（以下、「ＤＳＰ１１−ｊ」という）について、処理余裕時間及び開始可能セッション数について演算した際の具体例について説明した説明図である。
【００７０】
図４では、最初に、負荷分散制御装置２２において、「トランスコードＡ」という変換処理内容のメディア変換に係る、トランスコード開始要求があり、その後に、「トランスコードＢ」という変換処理内容のメディア変換に係る、トランスコード開始要求があった場合の例について説明している。
【００７１】
なお、トランスコードＡのメディア変換については、処理時間が６ｍＳｅｃ、処理制限時間が４０ｍＳｅｃであるものとする。また、トランスコードＢのメディア変換については、処理時間が５ｍＳｅｃ、処理制限時間が２０ｍＳｅｃであるものとする。なお、図４において、ＤＳＰ１１−１〜１１−Ｎは、全て同じ処理能力であるものとして説明している。また、図４において、ＤＳＰ１１−ｊは初期状態として、１つもメディア変換のセッションを担当していないものとして説明している。
【００７２】
まず、トランスコードＡに係るトランスコード開始要求があった場合に、上記の（２）式に、処理時間（６ｍＳｅｃ）、処理制限時間（４０ｍＳｅｃ）が適用され、図４（Ａ）に示すように、処理余裕時間＝４０ｍＳｅｃ−６ｍＳｅｃ＝３４ｍＳｅｃとなる。さらに、負荷分散制御装置２２では、上記の（３）式に、トランスコード処理時間（６ｍＳｅｃ）、処理制限時間（４０ｍＳｅｃ）、処理余裕時間（３４ｍｓｅｃ）が適用され、開始可能セッション数＝（３４ｍＳｅｃ／６ｍＳｅｃ）＋１＝６（本）と算出される。そして、トランスコードＡに係るトランスコード開始要求に基づくセッションのメディア変換は、ＤＳＰ１１−ｊが担当することに決定したものとして以降の説明を行う。
【００７３】
次に、負荷分散制御装置２２に、トランスコードＢに係るトランスコード開始要求があったものとする。
【００７４】
この場合、負荷分散制御装置２２において、ＤＳＰ１１−ｊについて処理余裕時間の算出に、上記の（２）式を適用する際には、処理制限時間として、現在担当しているセッションに係る処理制限時間と、トランスコード開始要求に基づくセッションに係る処理制限時間の中で最も短い処理制限時間が適用するようにしても良い。図４（Ｂ）の例においては、トランスコードＡの処理制限時間が４０ｍＳｅｃで、トランスコードＢの処理制限時間が２０ｍｓｅｃなので、最も短いトランスコードＢの処理制限時間（２０ｍｓｅｃ）が適用されることになる。よって、図４（Ｂ）の例においては、ＤＳＰ１１−ｊについての処理余裕時間＝２０ｍＳｅｃ−（６ｍｓｅｃ＋５ｍｓｅｃ）＝９ｍＳｅｃとなる。さらに、負荷分散制御装置２２では、上記の（３）式に、処理時間（５ｍｓｅｃ）、処理制限時間（２０ｍｓｅｃ）、処理余裕時間（９ｍＳｅｃ）が適用され、開始可能セッション数＝（９ｍｓｅｃ／５ｍｓｅｃ）＋１＝２（本）と算出されることになる。
【００７５】
（Ａ−３）実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
【００７６】
負荷分散制御装置２２では、処理制限時間を考慮して、トランスコード開始要求に係るセッションのメディア変換を担当させるＤＳＰ１１を決定している。これにより、メディア変換装置１では、各ＤＳＰ１１において、トランスコード処理合計時間が、現在メディア変換を担当しているセッションのうち、最も短い処理制限時間を越えることが無いため、一つのＤＳＰ１１において処理負荷の異なるメディア変換処理が混在（例えば、音声と映像のメディア変換が混在）していても、通信装置２間の通信品質を所望の品質に維持することができる。
【００７７】
また、メディア変換装置１では、一つのＤＳＰ１１において処理負荷の異なるメディア変換処理が混在していても、通信装置２間の通信品質を所望の品質に維持することができることにより、従来のように、通信品質を維持するために、変換処理の種類ごと（例えば、音声データ処理や映像データ処理など）に、プロセッサ（ＤＳＰ１１）を備える必要が無い。すなわち、メディア変換装置１では、従来よりも効率よくプロセッサ（ＤＳＰ１１）を処理させ、少ない数のプロセッサ（ＤＳＰ１１）で従来と同様の品質の処理を行うことができる。さらに、メディア変換装置１において、ＤＳＰ１１や周辺メモリのリソース効率化、セッション最大処理数の向上、スループットの向上効果なども得られる。
【００７８】
さらに、従来は上述の通り、変換処理の種類ごと（例えば、音声データ処理や映像データ処理など）にプロセッサを備える必要があるため、プロセッサの数を増減させる場合には、変換処理の種類ごとでなければ行うことができなかった。例えば、従来のメディア変換装置に、音声用のプロセッサと映像用のプロセッサがそれぞれ１つ搭載されていた場合に、音声用及び映像用の処理能力を向上させる際には、音声用と映像用のそれぞれに１つずつ（計２つ）プロセッサを増加させる必要があるが、この実施形態のメディア変換装置１では、１つのプロセッサ（ＤＳＰ１１）に音声と映像の両方のメディア変換を同時期に処理させることができるため、プロセッサ（ＤＳＰ１１）を１つずつ増加させることも可能である。このように、メディア変換装置１では、プロセッサ（ＤＳＰ１１）の数を増減させることが容易となり、拡張性の向上効果を奏することができる。
【００７９】
さらにまた、負荷分散制御装置２２では、ＤＳＰ１１ごとに、トランスコード処理合計時間や、現在メディア変換を担当している各セッションの処理制限時間を保持しているため、トランスコード開始要求に係るセッションのメディア変換を担当させるＤＳＰ１１を決定する都度、ＤＳＰ１１に現在の処理負荷の問い合わせ等を行う必要が無く、負荷分散制御装置２２及びＤＳＰ１１の処理負荷を低減することができる。
【００８０】
（Ｂ）他の実施形態
本発明は、上記の実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
【００８１】
（Ｂ−１）上記の実施形態においては、本発明の負荷分散制御装置、プログラム及び方法、並びに、負荷分散装置及び情報処理装置をメディア変換装置に適用した例について説明したが、本発明は、メディア変換以外の他の情報処理に適用するようにしても良い。例えば、メディア変換の処理を、データ暗号化、データ復号化、データ圧縮など、他の情報処理に適用することなどが挙げられる。
【００８２】
（Ｂ−２）上記の実施形態（上述の図１参照）においては、メディア変換装置１（負荷分散装置２０）において、変換対象パケットの送信元及び変換済パケット送信先は、外部の通信装置（通信装置２）であるものとして説明しているが、メディア変換装置１（負荷分散装置２０）において、変換対象パケットの送信元及び変換済パケット送信先の対象は限定されないものである。例えば、メディア変換装置１がさらに他の装置に組み込まれている場合には、変換対象パケットの送信元及び変換済パケット送信先は、その装置内の他の構成要素（例えば、他のプログラムや、通信処理部など）としても良い。また、変換対象パケットの送信元と、変換済パケット送信先が、同じものであっても良い。
【符号の説明】
【００８３】
１…メディア変換装置（情報処理装置）、１０…変換処理部、１１、１１−１〜１１−Ｎ…ＤＳＰ（デジタルシグナルプロセッサ）、２０…負荷分散装置、２１…スイッチ、１１ａ…ルーティング制御情報記憶部、２２…負荷分散制御装置、２２ａ…制御情報記憶部、３０…ＣＰＵ、２、２−１〜２−Ｍ…通信装置。
【図１】
2010277272.tif 000003
【図２】
2010277272.tif 000004
【図３】
2010277272.tif 000005
【図４】
2010277272.tif 000006