JP4595274B2 - 負荷分散方法及び負荷分散装置 - Google Patents
負荷分散方法及び負荷分散装置 Download PDFInfo
- Publication number
- JP4595274B2 JP4595274B2 JP2001296159A JP2001296159A JP4595274B2 JP 4595274 B2 JP4595274 B2 JP 4595274B2 JP 2001296159 A JP2001296159 A JP 2001296159A JP 2001296159 A JP2001296159 A JP 2001296159A JP 4595274 B2 JP4595274 B2 JP 4595274B2
- Authority
- JP
- Japan
- Prior art keywords
- transmission process
- process information
- video stream
- load value
- load
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Multi Processors (AREA)
Description
【発明の属する技術分野】
この発明は、負荷分散方法及び負荷分散装置に関し、特にビデオ配信サービスにおけるビデオサーバシステムに適用して好適なものである。
【0002】
【従来の技術】
従来、ビデオ配信サービスやビデオサーバシステムにおけるビデオストリーム送信プロセスの負荷分散方式にあっては、
(1)ラウンドロビン方式によりクライアントからの要求がある毎にコンピュータにビデオストリーム送信プロセスを順次割り当てていく方法、
(2)コンピュータ毎のCPU負荷を比較して、負荷値が最小であるプロセッサを選択し、そのプロセッサ上のビデオストリーム送信プロセスにおいてクライアントにビデオストリーム信号を送出する方法、
が一般的であった。
【0003】
【発明が解決しようとする課題】
しかしながら、上述した(1)および(2)に示す方法では、下記に示すような問題が生じる可能性がある。
【0004】
まず、(1)の方法では、ビデオ配信サービスを終了しないでいる複数のクライアントが存在する場合、ビデオストリーム送信プロセスが起動されるある特定のコンピュータにクライアントのアクセスが偏在することになり、そのプロセスが起動されているプロセッサのCPU負荷が過剰に増加する可能性がある。
【0005】
また、(2)の方法ではコンピュータ毎のCPU負荷を比較することから、
(1)の方法の問題点として挙げられたCPU負荷の過剰な増加については回避することは可能ではあるものの、CPUの負荷値が同値の場合、選択したCPUによっては、ネットワーク負荷やディスクアクセス負荷、送信ビットレートの使用率が高くなる場合がある可能性がある。
【0006】
さらに(2)の方法の場合、予め設定された所定の期間内に取得した数回の負荷の平均をとって負荷値とするのが一般的であるが、この場合、負荷計測中にユーザが偶然ビデオ操作を一時中止していたり、負荷の重いと推測される早送りなどの特殊操作を行っていたりすると、負荷値が一時的に小さい値や大きな値をとることになり、実際の負荷状況とは異なるコンピュータが割り当てられる可能性がある。
【0007】
本発明は、以上の点を考慮してなされたものであり、特定のプロセスへの負荷の集中を防ぐことができる負荷分散方法及び負荷分散装置を提供しようとするものである。
【0008】
【課題を解決するための手段】
かかる課題を解決するため、第1の本発明の負荷分散装置は、ネットワークを介して1又は複数のクライアントにビデオ信号を送信するビデオストリーム送信プロセスを実行するコンピュータを複数備えるビデオサーバシステムの負荷分散装置において、各ビデオストリーム送信プロセスから、少なくとも、各ビデオストリーム送信プロセスを実行しているコンピュータのアドレス情報、コンピュータのCPU負荷値、ネットワーク負荷値、ディスクアクセス負荷値、各ビデオストリーム送信プロセスの接続ユーザ数を含む送信プロセス情報を周期的に受け取り、各送信プロセス情報の登録・更新を行う送信プロセス情報管理手段と、クライアントから接続要求されると、送信プロセス情報管理手段に管理される各送信プロセス情報に基づき所定の負荷比較条件に従って、負荷状態が最軽量であるビデオストリーム送信プロセスを決定するプロセス決定手段と、負荷分散手段により決定された当該ビデオストリーム送信プロセスを起動するコンピュータのアドレス情報をクライアントに通知するアクセス情報通知手段とを備え、送信プロセス情報管理手段が、各ビデオストリーム送信プロセスから送信プロセス情報を受信すると、受信した送信プロセス情報と、送信プロセス管理手段が管理する当該ビデオストリーム送信プロセスの送信プロセス情報とに基づき、接続ユーザ数の増減を確認し、接続ユーザ数の増加がなく、かつ、CPU負荷値、ネットワーク負荷値、ディスクアクセス負荷値が増減している場合には、当該受信した送信プロセス情報への更新を行わないことを特徴とする。
【0009】
第2の本発明の負荷分散方法は、ネットワークを介して1又は複数のクライアントにビデオ信号を送信するビデオストリーム送信プロセスを実行するコンピュータを複数備えるビデオサーバシステムの負荷分散方法において、送信プロセス情報管理手段が、各ビデオストリーム送信プロセスから、少なくとも、各ビデオストリーム送信プロセスを実行しているコンピュータのアドレス情報、コンピュータのCPU負荷値、ネットワーク負荷値、ディスクアクセス負荷値、各ビデオストリーム送信プロセスの接続ユーザ数を含む送信プロセス情報を周期的に受け取り、各送信プロセス情報の登録・更新を行う送信プロセス情報管理工程と、プロセス決定手段が、クライアントから接続要求されると、送信プロセス情報管理手段に管理される各送信プロセス情報に基づき所定の負荷比較条件に従って、負荷状態が最軽量であるビデオストリーム送信プロセスを決定するプロセス決定工程と、アクセス情報通知手段が、負荷分散手段により決定された当該ビデオストリーム送信プロセスを起動するコンピュータのアドレス情報をクライアントに通知するアクセス情報通知手段とを有し、送信プロセス情報管理手段が、各ビデオストリーム送信プロセスから送信プロセス情報を受信すると、受信した送信プロセス情報と、送信プロセス管理手段が管理する当該ビデオストリーム送信プロセスの送信プロセス情報とに基づき、接続ユーザ数の増減を確認し、接続ユーザ数の増加がなく、かつ、CPU負荷値、ネットワーク負荷値、ディスクアクセス負荷値が増減している場合には、当該受信した送信プロセス情報への更新を行わないことを特徴とする。
【0021】
【発明の実施の形態】
(A)第1の実施形態
以下、本発明によるビデオストリーム送信プロセスの負荷分散方法が適用される装置の第1の実施形態を図面を参照しながら詳述する。
【0022】
(A−1)第1の実施形態の構成
図1は、第1の実施形態のビデオストリーム送信プロセスの負荷分散装置の構成を示すブロック図である。図1に示す第1の実施形態おいては、ビデオサーバシステム11を例にとり、構成および動作について説明する。
【0023】
なお、本第1の実施形態はビデオサーバシステム11のみに適用される訳ではなく、例えば、複数のコンピュータから構成される任意のビデオサーバシステムに適用され得るものである。
【0024】
また、ここで言うコンピュータには、クライアント(ユーザ)にビデオ信号を送出する「ビデオストリーム送信プロセス」が起動されているものが1つ以上と、クライアント(ユーザ)からの要求を受け付けクライアントに割り当てるビデオストリーム送信プロセスを選択・決定する「ユーザ要求受信・負荷分散プロセス」が起動されているものが1つ、存在する。また前記コンピュータはストレージエリアネットワークを介してビデオデータが格納されているディスク装置と接続される。
【0025】
なお、これら「ビデオストリーム送信プロセス」と「ユーザ要求受信・負荷分散プロセス」は、それぞれ複数のコンピュータ上に存在するように構成しても良く、あるいは任意のプロセスを単一のコンピュータ上に存在させて構成しても良い。ここでは「ビデオストリーム送信プロセス」と「ユーザ要求受信・負荷分散プロセス」は、それぞれが異なるコンピュータ上で起動されるものとして説明する。
【0026】
ビデオサーバシステム11は、ネットワーク21を介してクライアント31乃至34のそれぞれと接続されている。また、ビデオサーバシステム11は、コンピュータ41乃至44とディスク51、52を含み構成され、さらに、これらコンピュータ41乃至44とディスク装置としてのディスク51、52はストレージエリアネットワーク61により相互に接続されている。
【0027】
またコンピュータ41、42、43は、それぞれビデオストリーム送信プロセス71、72、73がそれぞれ起動され、並列プロセス構成を採っている。コンピュータ44はユーザ要求受信・負荷分散プロセス81が起動される。
【0028】
ビデオストリーム送信プロセス71、72、73は、ネットワーク21を介してビデオサーバシステム11に接続されるクライアント31乃至34に対してビデオストリームを送信する。
【0029】
図2は、コンピュータ44で起動されるユーザ要求受信・負荷分散プロセス81の機能内容を示す機能ブロック構成図である。ユーザ要求受信・負荷分散プロセス81は、クライアント(またはユーザ)からの要求を受け付けるユーザ要求受信処理部811と、ビデオストリーム送信プロセスからのプロセス情報通知を受け付ける並列プロセス情報管理部812とを含む。
【0030】
次に図3を参照して、この並列プロセス情報管理部812について説明する。並列プロセス情報管理部812は、ビデオサーバシステム上に存在する全てのビデオストリーム送信プロセス71、72、73からのプロセス情報通知をストレージエリアネットワーク61または図示しないネットワークを介して定期的に受け付け、それぞれ送信プロセス情報81221、81222、81223により管理する。これら送信プロセス情報はビデオストリーム送信プロセス1つにつき1つの情報が存在し、すべての情報は送信プロセス情報リスト8121により管理される。
【0031】
図4は、送信プロセス情報リスト8121により管理される送信プロセス情報81221のデータ構成図である。また送信プロセス情報81222、81223も同様のデータ構成を採っている。
【0032】
図4に示す送信プロセス情報81221は、送信プロセス識別子、送信プロセスアクセス情報、プロセス状態、接続ユーザ数、CPU負荷、ネットワーク負荷、ディスクアクセス負荷、帯域能力(最大容量)及び帯域能力(使用容量)から構成される。
【0033】
これらの情報のうち、プロセス状態、接続ユーザ数、CPU負荷、ネットワーク負荷、ディスクアクセス負荷、帯域能力(最大容量)、帯域能力(使用容量)については、ビデオストリーム送信プロセスから情報通知を受け付けることにより、常に最新の情報に更新される。これらのデータのそれぞれについて、詳細な説明を表形式にまとめて図6に示す。
【0034】
ここで再び、図2を参照するに、ユーザ要求受信処理部811はネットワーク21を介してクライアント(ユーザ)からの要求があった際に、並列プロセス情報管理部812に対して、ビデオストリーム送信プロセスの割当てを要求する。並列プロセス情報管理部812では、図3に示す送信プロセス情報リスト8121の各送信プロセス情報81221、81222、81223の中から最適なビデオストリーム送信プロセスを決定し、ユーザ要求受信処理部811に返却する。ユーザ要求受信処理部811は、この決定されたビデオストリーム送信プロセスにアクセスするための情報をクライアントに通知する。
【0035】
図5は、ビデオストリーム送信プロセス71の機能を示す機能ブロック構成図である。なおビデオストリーム送信プロセス72、73の構成、作用も同様であるので、ここではビデオストリーム送信プロセス71について説明する。
【0036】
図5において、ビデオストリーム送信プロセス71は、ビデオ操作要求受信処理部711と、ビデオストリーム送信処理部712と、自プロセス情報通知部713と、ビデオデータ読み取り部714とを含む。
【0037】
まず、ビデオ操作要求受信処理部711は、クライアント(ユーザ)からのビデオ操作要求を受け付けると、この操作要求に従い、ビデオデータ読み取り部714でディスク51,52よりビデオデータを読み取って、ビデオストリーム送信処理部712でクライアントに対してビデオストリームを送出する。
【0038】
このとき自プロセス情報通知部713では、コンピュータに掛かっているCPU負荷、ネットワーク負荷、ディスクアクセス負荷をそれぞれ計測するとともに、自身に接続されているユーザ数、および送信しているビデオストリームの使用容量を算出し、プロセス情報としてユーザ要求受信・負荷分散プロセスに対して通知する。この自プロセス情報通知部713における処理は所定の時間間隔(例えば10秒間隔)で行われる。
【0039】
(A−2)第1の実施形態の動作
次に、この第1の実施形態のビデオストリーム送信プロセスの負荷分散装置の動作を説明する。
【0040】
以下、図7に示すフローチャートを用いてビデオサーバシステム11の動作を処理手順に従って説明する。
【0041】
まず、ビデオサーバシステム上のビデオストリーム送信プロセス71,72,73は、定期的に、例えば所定の時間間隔(例えば10秒間隔)で自身の負荷情報を計測し、ユーザ要求受信・負荷分散プロセス81に通知する(ステップS11)。
【0042】
通知を受け付けたユーザ要求受信・負荷分散プロセス81は、通知元のビデオストリーム送信プロセスに対応する送信プロセス情報のデータを通知された負荷情報に基づいて更新する(ステップS13)。
【0043】
例えば図3を参照するに、ビデオストリーム送信プロセス71が負荷情報を通知すると、ユーザ要求受信・負荷分散プロセス81の並列プロセス情報管理部812においてこれを受信し、並列プロセス情報管理部812は通知元のビデオストリーム送信プロセス71に対応する送信プロセス情報81221上のデータを通知された情報に基づいて更新する。
【0044】
この一連の動作により、ユーザ要求受信・負荷分散プロセス81の並列プロセス情報管理部812では各ビデオストリーム送信プロセスについて常に最新の送信プロセス情報を管理することができる。
【0045】
このときの並列プロセス情報管理部812の動作フローを図8に示す。まず、ステップS31でプロセス情報通知を受信すると、ステップS33に進み、ユーザ要求受信・負荷分散プロセス81の並列プロセス情報管理部812では、通知された情報に含まれる値により、通知元のビデオストリーム送信プロセスに対応する送信プロセス情報上のデータを更新する。
【0046】
次に、図7を参照して、ユーザがクライアントを通じてビデオサービスを利用する際のビデオサーバシステム11の動作例を説明する。
【0047】
まず、ユーザは各クライアントを通じてビデオサーバシステム11に対して、サーバへのアクセスを要求すると(ステップS15)、まずユーザ要求受信・負荷分散プロセス81が、ビデオストリーム送信プロセス71,72,73の中から負荷の最も軽いプロセスを決定し(ステップS17)、このプロセスのアクセス情報をアクセス要求元のクライアントに返却する(ステップS19)。次にクライアントはこのアクセス情報に基づいてビデオストリーム送信プロセスに接続し、ビデオ操作要求し(ステップS21)、ディスクよりビデオデータを読み取り(ステップS23)、送信されたビデオストリームを受信し(ステップS25)、ビデオサービスを利用する。
【0048】
図7を参照するに、例えば図1,2に示すクライアント31がビデオサーバシステム11に対してネットワーク21を介してサーバアクセス要求を行う(ステップS15)と、この要求をコンピュータ44上のユーザ要求受信・負荷分散プロセス81のユーザ要求受信処理部811において受け付ける。要求を受け付けたユーザ要求受信処理部811は、並列プロセス情報管理部812に対してビデオストリーム送信プロセスの割当てを要求する。
【0049】
並列プロセス情報管理部812は、自身の持つ各ビデオストリーム送信プロセス71,72,73の各送信プロセス情報を比較し、負荷の最も軽いビデオストリーム送信プロセスを決定する(ステップS17)。決定されたビデオストリーム送信プロセスのアクセス情報が並列プロセス情報管理部812を通じて、ユーザ要求受信処理部811に返却され、ユーザ要求受信処理部811はクライアント31に対して、このアクセス情報を通知する(ステップS19)。
【0050】
例えば並列プロセス情報管理部812がビデオストリーム送信プロセス72を決定した場合、このビデオストリーム送信プロセス72へのアクセス情報がユーザ要求受信処理部811からクライアント31に返却され、クライアント31はこのアクセス情報に基づいてコンピュータ42上のビデオストリーム送信プロセス72に接続を行い、ビデオ操作を行う(ステップS21,23,25)。
【0051】
次に、図9を参照してビデオストリーム送信プロセス割当の処理手順について説明する。
【0052】
クライアント31がビデオサーバシステム11に対してサーバアクセス要求を行うと、要求を受け付けたユーザ要求受信処理部811は、並列プロセス情報管理部812に対してビデオストリーム送信プロセスの割当てを要求する(ステップS41)。
【0053】
ステップS43において、正常状態のプロセスが存在すると判断されたときには、ステップS45に進む。
【0054】
並列プロセス情報管理部812のビデオストリーム送信プロセスの割当ては、図3に示す送信プロセス情報リスト8121をコピーし(ステップS45)、コピーしたリストについて各送信プロセス情報81221〜81223のデータを負荷比較条件に基づいてソートを施し(ステップS47)、その中で負荷が最軽量のプロセスが決定されることで行われる。
【0055】
続いて、ステップS49で割当て正常として、ソート後のリストの先頭にある送信プロセス情報のアクセス情報をユーザ要求受信処理部811に通知し、処理を終了する。
【0056】
また、上記ステップS43において、正常状態のプロセスが存在しないと判断されたときには、ステップS51に進み、割当て異常として、割当て可能なプロセスが存在しない旨をユーザ要求受信処理部811に通知して処理を終了する。
【0057】
また、並列プロセス情報管理部812はパターンの負荷比較条件を持つ。すなわち、負荷比較条件1は、ビデオストリーム送信プロセスのCPU負荷、ネットワーク負荷、ディスクアクセス負荷、および容量使用率のいずれかの値が突出したもの抽出し、これを負荷が大きいプロセスとみなすものである。
【0058】
また、負荷比較条件2は、「CPU負荷>ネットワーク負荷>ディスクアクセス負荷>容量使用率」の順に負荷値の比較を行い、負荷値の高い方を負荷が大きいプロセスとみなすものである。
【0059】
次に、図10を参照して負荷比較条件1について詳細に説明する。
【0060】
まず、ステップS61において、比較を行う2つのプロセス情報について、リストの先方にあるものをA、リストの後方にあるものをBとする。次にステップS63では、接続ユーザ数以外の項目について、大きい値のものほど負荷が高いと見做すため、以下に示す計算値で負荷値合計を算出する。
【0061】
負荷値合計={L1}+{L2}+{L3}+{L4}
但し、
{L1};{CPU負荷の3乗}
{L2};{ネットワーク負荷の3乗}
{L3};{ディスクアクセス負荷の3乗}
{L4};{容量使用率の3乗}
とする。
【0062】
次に、ステップS65に進み、負荷値合計を比較し、A>BならばステップS69に進みリスト上でAとBとの位置を置き換えた後に終了する。またA<Bならば、そのまま処理を終了する。さらにA=Bならば、ステップS67に進み、さらに接続ユーザ数を比較する。A>BならばステップS69に進みリスト上でAとBとの位置を置き換えた後に終了する。またA=BまたはA<Bならば、そのまま処理を終了する。
【0063】
次に、図11を参照して負荷比較条件2について、詳細に説明する。
【0064】
まずステップS71において、CPU負荷を比較し、A>BならばステップS81に進みリスト上でAとBとの位置を置き換えた後に終了する。またA<Bならば、そのまま処理を終了し、A=Bならば、ステップS73に進む。
【0065】
続いてステップS73において、ネットワーク負荷を比較し、A>BならばステップS81に進みリスト上でAとBとの位置を置き換えた後に終了する。またA<Bならば、そのまま処理を終了し、A=Bならば、ステップS75に進む。
【0066】
続いてステップS75において、ディスクアクセス負荷を比較し、A>BならばステップS81に進みリスト上でAとBとの位置を置き換えた後に終了する。またA<Bならば、そのまま処理を終了し、A=Bならば、ステップS77に進む。
【0067】
続いてステップS77において、容量使用率を比較し、A>BならばステップS81に進みリスト上でAとBとの位置を置き換えた後に終了する。またA<Bならば、そのまま処理を終了し、A=Bならば、ステップS79に進む。
【0068】
続いてステップS79において、接続ユーザ数を比較し、A>BならばステップS81に進みリスト上でAとBとの位置を置き換えた後に終了する。またA=BまたはA<Bならば、そのまま処理を終了する。
【0069】
このようにして、並列プロセス情報管理部812は、ビデオサーバシステムの設定により負荷比較条件1もしくは負荷比較条件2によって、送信プロセス情報リストのコピーをソーティングする。この設定は、ビデオサーバシステムの管理者がシステムの負荷特性を判断し、どちらかの条件を設定することができる。
【0070】
(A−3)第1の実施形態の効果
本第1の実施形態によると、クライアントの要求に対して全ビデオストリーム送信プロセスの中から負荷が最軽量のプロセスを割り当てることにより、1つのプロセスへの負荷の集中を防ぐことはもちろんのこと、CPU負荷以外の負荷項目として、ネットワーク負荷、ディスクアクセス負荷、送信ビットレートの最大容量に対する使用率についても分散が可能となる。
【0071】
また、各ビデオストリーム送信プロセスから定期的に負荷情報を通知する仕組みを採っており、このユーザ要求受信・負荷分散プロセスに届かないことにより、ビデオストリーム送信プロセスの異常を早期に発見することができる。これにより、正常に動作していないビデオストリーム送信プロセスをクライアントに割り当てないことが可能になるため、ビデオサーバシステムの信頼性が向上する。
【0072】
また、複数の負荷比較条件を配備することによって、ビデオサーバシステム毎の負荷特性に応じた負荷分散の実現が可能となる。
【0073】
(B)第2の実施形態
次に、本発明によるビデオストリーム送信プロセスの負荷分散方法及び装置の第2の実施形態を図面を参照しながら詳述する。
【0074】
(B−1)第2の実施形態の構成
第2の実施形態の構成は、第1の実施形態と同じ構成であるため、第1の実施形態の図1乃至6を用いる。
【0075】
(B−2)第2の実施形態の動作
以下、第2の実施形態の動作例は、図7に示した第1の実施形態の動作例と略同様である。
【0076】
ここで、例えば図3および図4で、ビデオストリーム送信プロセス71が負荷情報を通知すると、ユーザ要求受信・負荷分散プロセス81の並列プロセス情報管理部812においてこれを受信し、並列プロセス情報管理部812は通知元のビデオストリーム送信プロセス71に対応する送信プロセス情報81221上の各データ情報と通知された情報の比較を行う。
【0077】
以下、図12を参照して、並列プロセス情報管理部812の動作について説明する。
【0078】
まず、プロセス情報通知を受信する(ステップS91)。次に送信プロセス情報81221上とビデオストリーム送信プロセスから通知された情報上の接続ユーザ数を比較して、接続ユーザ数の増加の有無について確認する(ステップS93)。接続ユーザ数の増加が無い場合にはステップS95に進み、CPU負荷、ネットワーク負荷、ディスクアクセス負荷の値の変化の有無について確認する。これらの値が変化していた場合、ユーザがビデオ操作を停止しているか、特殊操作を行っているものとみなす。
【0079】
例えば、負荷が下がっている場合には送信プロセス情報81221上のCPU負荷、ネットワーク負荷、ディスクアクセス負荷の値を更新すること無く、処理を終了する(ステップS99)。また、負荷が上がっている場合には、送信プロセス情報81221上のCPU負荷、ネットワーク負荷、ディスクアクセス負荷の値を、通知された情報上のそれらとの中間値を算出して、更新して処理を終了する(ステップS97)。
【0080】
また、ステップS93で接続ユーザ数が増加していることが確認された場合と、ステップS95で送信プロセス情報81221上のCPU負荷、ネットワーク負荷、ディスクアクセス負荷の値に変化が無い場合に、ステップS101に進み送信プロセス情報上の値を、通知された情報に設定された値により更新して処理を終了する。
【0081】
(B−3)第2の実施形態の効果
第2の実施形態では、ユーザが偶然ビデオ操作を一時中止していたり、負荷の重いと推測される早送りなどの特殊操作を行っていたりして負荷が一時的に変化しても、以前の負荷情報を用いて最適なコンピュータを割り当てることができる。
【0082】
(C)第3の実施形態
次に、本発明によるビデオストリーム送信プロセスの負荷分散方法及び装置の第3の実施形態を図面を参照しながら詳述する。
【0083】
(C−1)第3の実施形態の構成
第3の実施形態の構成は、第1、第2の実施形態と同じ構成であるため、第1の実施形態の図1乃至6を用いる。
【0084】
(C−2)第3の実施形態の動作
以下、第3の実施形態の動作例は、図7に示した第1、第2の実施形態の動作例と同じである。
【0085】
ここで、例えば図3および図4で、ビデオストリーム送信プロセス71が負荷情報を通知すると、ユーザ要求受信・負荷分散プロセス81の並列プロセス情報管理部812においてこれを受信し、並列プロセス情報管理部812は通知元のビデオストリーム送信プロセス71に対応する送信プロセス情報81221上の各データ情報と通知された情報の比較を行う。
【0086】
図13を参照するに、比較はまず、送信プロセス情報81221上とビデオストリーム送信プロセスから通知された情報上の接続ユーザ数を比較して(ステップS113)、接続ユーザ数の増加の有無を確認する。接続ユーザ数の増加が無い場合の動作フローは第2の実施形態に示した図12と同じとなる。
【0087】
第2の実施形態では、接続ユーザ数の増加があった場合、並列プロセス情報管理部812は、通知された情報の値をそのまま送信プロセス情報81221上のデータに更新する。このとき、ユーザがビデオ操作を開始していない場合などで、実際のコンピュータの状況と通知された負荷情報の値に差異が生じる可能性があり得る。
【0088】
そこで第3の実施形態においては、接続ユーザ数の増加があった場合、負荷がどのように変化するかを統計的に計算しておき、該当コンピュータの処理能力を判断する。
【0089】
例えば、ステップS113において接続ユーザ数が増えたことが判断された場合には、送信プロセス情報81221上のCPU負荷、ネットワーク負荷、ディスクアクセス負荷の補正値を再計算し(ステップS115)、この再計算して得られた補正値により、CPU負荷、ネットワーク負荷、ディスクアクセス負荷に対して増加分の補正を行う(ステップS117)。
【0090】
次に、通知された情報に設定されているこれらの負荷情報の値と比較を行い、例えば、負荷が下がっている場合には送信プロセス情報81221上のCPU負荷、ネットワーク負荷、ディスクアクセス負荷の更新はしない(ステップS123)。また負荷が上がっている場合には、送信プロセス情報81221上とCPU負荷、ネットワーク負荷、ディスクアクセス負荷を、通知された情報に設定されているこれらの情報との中間値を採って、更新する(ステップS121)。また、変化が無い場合には、送信プロセス情報上の値を通知された情報に、設定された値により更新する(ステップS125)。
【0091】
(C−3)第3の実施形態の効果
第3の実施形態では、統計的に負荷情報を操作することでより効果的にコンピュータを割り当てることができる。
【0092】
尚、上記の第1の実施形態では、ビデオストリーム送信プロセスが起動されているコンピュータを3台実装しているビデオサーバシステムを用いた例を説明したが、本発明はこれに限定されること無く、例えば2台以上のビデオストリーム送信プロセスが起動されているコンピュータが実装されていれば、本発明のビデオストリーム送信プロセスの負荷分散方法及び装置に適用することができる。
【0093】
また、上述してきたビデオストリーム送信プロセスの負荷分散プログラムは、無線回線、電話回線、インターネット等を含む任意の通信媒体およびこの負荷分散プログラムを記録した記録媒体により、その流通性を高めることができる。
【0094】
【発明の効果】
以上のように、本発明のビデオストリーム送信プロセスの負荷分散方法及び装置と負荷分散プログラムと該プログラムを記録した記録媒体によれば、各種負荷を計測し、この計測結果を自身の負荷情報としてユーザ要求受信・負荷分散プロセスに通知するようにしたので、負荷の偏りを管理しやすくなり、負荷の集中を未然に防止するのに役立つという効果を奏する。
【0095】
また、クライアントの要求に対して全てのビデオストリーム送信プロセスの中から負荷が最軽量のプロセスを割り当てるようにしたので、1つのプロセスへの負荷の集中を防ぐことを可能とすることができる。
【0096】
さらに、負荷としては、CPU負荷以外に、ネットワーク負荷、ディスクアクセス負荷、送信ビットレートの最大容量に対する使用率についても分散を可能としていることから、負荷の一時的に変動に対しても最適なコンピュータを割り当てることができる。
【図面の簡単な説明】
【図1】第1の実施形態に係るビデオサーバシステムの概略構成を示すブロック図である。
【図2】ユーザ要求受信及び負荷分散プロセスの機能ブロック図である。
【図3】並列プロセス情報管理部におけるデータ相関を示す図である。
【図4】送信プロセス情報のデータ構成を示す図である。
【図5】ビデオストリーム送信プロセスの機能ブロック図である。
【図6】送信プロセス情報のデータ内容を説明する図である。
【図7】ビデオサーバシステムの動作とサービス利用手順を説明するためのフローチャートである。
【図8】ビデオストリーム送信プロセスからの情報通知受信の処理手順を示すフローチャートである。
【図9】ビデオストリーム送信プロセス割当ての際の処理手順を示すフローチャートである。
【図10】送信プロセス情報の負荷比較の際における比較処理手順を示すフローチャートである。
【図11】送信プロセス情報の負荷比較の際における比較処理手順を示すフローチャートである。
【図12】第2の実施形態に係るビデオストリーム送信プロセスからの情報通知受信の処理手順を示すフローチャートである。
【図13】第3の実施形態に係るビデオストリーム送信プロセスからの情報通知受信の処理手順を示すフローチャートである。
【符号の説明】
11…ビデオサーバシステム、21…ネットワーク、
31、32、33、34…クライアント、
41、42、43、44…コンピュータ、51、52…ディスク、
61…ストレージエリアネットワーク、
71、72、73…ビデオストリーム送信プロセス、
81…ユーザ要求受信・負荷分散プロセス。
Claims (3)
- ネットワークを介して1又は複数のクライアントにビデオ信号を送信するビデオストリーム送信プロセスを実行するコンピュータを複数備えるビデオサーバシステムの負荷分散装置において、
前記各ビデオストリーム送信プロセスから、少なくとも、前記各ビデオストリーム送信プロセスを実行している前記コンピュータのアドレス情報、前記コンピュータのCPU負荷値、ネットワーク負荷値、ディスクアクセス負荷値、前記各ビデオストリーム送信プロセスの接続ユーザ数を含む送信プロセス情報を周期的に受け取り、前記各送信プロセス情報の登録・更新を行う送信プロセス情報管理手段と、
前記クライアントから接続要求されると、前記送信プロセス情報管理手段に管理される前記各送信プロセス情報に基づき所定の負荷比較条件に従って、負荷状態が最軽量である前記ビデオストリーム送信プロセスを決定するプロセス決定手段と、
前記プロセス決定手段により決定された当該ビデオストリーム送信プロセスを実行している前記コンピュータのアドレス情報を前記クライアントに通知するアクセス情報通知手段と
を備え、
前記送信プロセス情報管理手段が、
前記各ビデオストリーム送信プロセスから前記送信プロセス情報を受信すると、受信した前記送信プロセス情報と、前記送信プロセス情報管理手段が管理する当該ビデオストリーム送信プロセスの前記送信プロセス情報とに基づき、前記接続ユーザ数の増減を確認し、
前記接続ユーザ数の増加がなく、かつ、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値が増加している場合、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値を、前記受信した送信プロセス情報と、前記送信プロセス情報管理手段が管理する前記送信プロセス情報との中間値となるように更新し、
前記接続ユーザ数の増加がなく、かつ、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値が減少している場合、前記送信プロセス情報管理手段が管理している前記送信プロセス情報の更新を行わない
ことを特徴とする負荷分散装置。 - 前記送信プロセス情報が、さらに、前記ビデオストリーム送信プロセスが現在送出しているビットレート容量の合計値を最大容量で割った値に100を掛けたビットレートの容量使用率を含むものであり、
前記プロセス決定手段が、前記各送信プロセス情報に含まれる、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値、前記容量使用率に基づく負荷値合計の比較により、最軽量の前記ビデオストリーム送信プロセスを決定する
ことを特徴とする請求項1に記載の負荷分散装置。 - ネットワークを介して1又は複数のクライアントにビデオ信号を送信するビデオストリーム送信プロセスを実行するコンピュータを複数備えるビデオサーバシステムの負荷分散方法において、
送信プロセス情報管理手段が、前記各ビデオストリーム送信プロセスから、少なくとも、前記各ビデオストリーム送信プロセスを実行している前記コンピュータのアドレス情報、前記コンピュータのCPU負荷値、ネットワーク負荷値、ディスクアクセス負荷値、前記各ビデオストリーム送信プロセスの接続ユーザ数を含む送信プロセス情報を周期的に受け取り、前記各送信プロセス情報の登録・更新を行う送信プロセス情報管理工程と、
プロセス決定手段が、前記クライアントから接続要求されると、前記送信プロセス情報管理手段に管理される前記各送信プロセス情報に基づき所定の負荷比較条件に従って、負荷状態が最軽量である前記ビデオストリーム送信プロセスを決定するプロセス決定工程と、
アクセス情報通知手段が、前記プロセス決定手段により決定された当該ビデオストリーム送信プロセスを実行している前記コンピュータのアドレス情報を前記クライアントに通知するアクセス情報通知工程と
を有し、
前記送信プロセス情報管理手段が、
前記各ビデオストリーム送信プロセスから前記送信プロセス情報を受信すると、受信した前記送信プロセス情報と、前記送信プロセス情報管理手段が管理する当該ビデオストリーム送信プロセスの前記送信プロセス情報とに基づき、前記接続ユーザ数の増減を確認し、
前記接続ユーザ数の増加がなく、かつ、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値が増加している場合、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値を、前記受信した送信プロセス情報と、前記送信プロセス情報管理手段が管理する前記送信プロセス情報との中間値となるように更新し、
前記接続ユーザ数の増加がなく、かつ、前記CPU負荷値、前記ネットワーク負荷値、前記ディスクアクセス負荷値が減少している場合、前記送信プロセス情報管理手段が管理している前記送信プロセス情報の更新を行わない
ことを特徴とする負荷分散方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001296159A JP4595274B2 (ja) | 2001-09-27 | 2001-09-27 | 負荷分散方法及び負荷分散装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001296159A JP4595274B2 (ja) | 2001-09-27 | 2001-09-27 | 負荷分散方法及び負荷分散装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003108393A JP2003108393A (ja) | 2003-04-11 |
JP4595274B2 true JP4595274B2 (ja) | 2010-12-08 |
Family
ID=19117453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001296159A Expired - Fee Related JP4595274B2 (ja) | 2001-09-27 | 2001-09-27 | 負荷分散方法及び負荷分散装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4595274B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8291062B2 (en) | 2003-08-20 | 2012-10-16 | Aol Inc. | Managing access to digital content sources |
JP2009163440A (ja) * | 2007-12-28 | 2009-07-23 | Nec Corp | 負荷分散方法、負荷分散システム、負荷分散サーバ及び負荷分散プログラム |
JP5330026B2 (ja) * | 2009-02-25 | 2013-10-30 | 株式会社エヌ・ティ・ティ・ドコモ | 登録要求システム、登録要求サーバ装置、サーバ装置の登録要求制御方法 |
JP5402710B2 (ja) * | 2010-02-17 | 2014-01-29 | 日本電気株式会社 | コンテンツ配信装置、コンテンツ配信方法、コンテンツ配信システム、及び、プログラム |
KR101302401B1 (ko) | 2012-12-21 | 2013-09-02 | 이에스이 주식회사 | 영상 소스의 분산 처리 장치 및 방법 |
CN109905614B (zh) * | 2019-01-23 | 2021-03-02 | 深圳市奥拓电子股份有限公司 | 视频控制器及其带载控制方法、显示系统和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1155645A (ja) * | 1997-08-07 | 1999-02-26 | Mitsubishi Electric Corp | マルチメディア配信運用管理システム |
JP2001202318A (ja) * | 2000-01-24 | 2001-07-27 | Hitachi Kokusai Electric Inc | データ配信システム |
JP2001256207A (ja) * | 2000-03-08 | 2001-09-21 | Mitsubishi Electric Corp | コンピュータ装置及び記録媒体 |
-
2001
- 2001-09-27 JP JP2001296159A patent/JP4595274B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1155645A (ja) * | 1997-08-07 | 1999-02-26 | Mitsubishi Electric Corp | マルチメディア配信運用管理システム |
JP2001202318A (ja) * | 2000-01-24 | 2001-07-27 | Hitachi Kokusai Electric Inc | データ配信システム |
JP2001256207A (ja) * | 2000-03-08 | 2001-09-21 | Mitsubishi Electric Corp | コンピュータ装置及び記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP2003108393A (ja) | 2003-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11546644B2 (en) | Bandwidth control method and apparatus, and device | |
US10733026B2 (en) | Automated workflow selection | |
US8087025B1 (en) | Workload placement among resource-on-demand systems | |
US5603029A (en) | System of assigning work requests based on classifying into an eligible class where the criteria is goal oriented and capacity information is available | |
JP3859994B2 (ja) | ストレージ・デバイス上でのスペースの割振りを管理する方法、システム、およびプログラム記憶媒体 | |
US6249800B1 (en) | Apparatus and accompanying method for assigning session requests in a multi-server sysplex environment | |
Colajanni et al. | Analysis of task assignment policies in scalable distributed Web-server systems | |
US7788380B2 (en) | Load balancing method and apparatus, and software streaming system using the same | |
US7644161B1 (en) | Topology for a hierarchy of control plug-ins used in a control system | |
US7773522B2 (en) | Methods, apparatus and computer programs for managing performance and resource utilization within cluster-based systems | |
US7584292B2 (en) | Hierarchical system configuration method and integrated scheduling method to provide multimedia streaming service on two-level double cluster system | |
JP6881575B2 (ja) | 資源割当システム、管理装置、方法およびプログラム | |
US8104038B1 (en) | Matching descriptions of resources with workload requirements | |
US7979862B2 (en) | System and method for replacing an inoperable master workload management process | |
US6862619B1 (en) | Network management system equipped with event control means and method | |
US7437460B2 (en) | Service placement for enforcing performance and availability levels in a multi-node system | |
JP5000456B2 (ja) | 資源管理システム、資源管理装置およびその方法 | |
JPWO2004084085A1 (ja) | サイト間連携による負荷分散システム | |
KR20120128681A (ko) | 시스템 리소스들의 계층 관리를 위한 방법 및 장치 | |
JP2007133586A (ja) | リソース割当調停装置およびリソース割当調停方法 | |
WO2008110983A1 (en) | Dynamic load balancing | |
KR20120129970A (ko) | 시스템 리소스들의 재할당을 관리하는 방법 및 장치 | |
JP2007249470A (ja) | クラスタサーバシステム、課金装置、課金方法 | |
WO2008074236A1 (fr) | Procédé, dispositif et système d'affectation de ressource multimédia | |
CN112416594A (zh) | 一种微服务分配方法、电子设备和计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090701 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090915 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091222 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100216 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100427 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100721 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20100803 |
|
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: 20100824 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100906 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4595274 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131001 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131001 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131001 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |