説明

呼接続装置およびその動作方法

【課題】複数のサーバへ負荷が分散するように呼を接続でき、かつ、サーバ間での負荷の偏りを可及的に小さくする。
【解決手段】空きリソース量Rvmからリソース量Rβが減った場合、リソース量Rα以上の空きリソース量を確保できない。また、第2のリソース量Rβ分の空きリソース量が減った後の空きリソース量Rvmと、空きリソース量Rvnの差が大きくなってしまう。しかし、空きリソース量Rvnから低負荷呼分のリソース量Rβが減っても、まだ、高負荷呼分のリソース量Rα以上の空きリソース量を確保できる。また、リソース量Rβ分の空きリソース量が減った後の空きリソース量Rvnと、空きリソース量Rvmの差は比較的小さい。したがって、空きリソース量Rvnを選択することで、負荷の偏りを小さくすることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、呼接続装置およびその動作方法に関するものである。
【背景技術】
【0002】
メディアサーバは、記憶装置に蓄積された音声や映像ファイルをデコードし、メディアストリームとして、ネットワーク経由で端末に送信するサーバである。
【0003】
メディアサーバでは、呼が多数接続され、過負荷状態になると、メディアストリームを正常に送信できず、サービス品質が低下する。かかる事態を防ぐため、メディアサーバでは、呼の接続数を少なくする必要がある。
【0004】
一方、端末としては、携帯端末から高精細映像端末まで、画面解像度やフレームレート等により異なる様々な種類のものがあり、メディアサーバで使用されるコーデックも多様である。デコードに必要なリソース量は、コーデックの種類により異なる。また、コーデックの種類などにより、呼は、必要なリソース量が少ない低負荷呼と、必要なリソース量が多い高負荷呼に分類される。
【0005】
低負荷呼なら、接続数を多くできるが、高負荷呼なら接続数は少なくなる。
【0006】
一般に、多数の端末にメディアストリームを送信する場合、複数のメディアサーバを設け、さらに、端末からの接続要求により呼を各メディアサーバへ接続させる呼接続装置を用いる。例えば、呼接続装置は、呼をランダムに振り分けて接続したり、呼をメディアサーバの負荷に応じて振り分けて接続する(非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】トニーブルーク著、「サーバ負荷分散技術」、オライリージャパン(2001)
【非特許文献2】島内他編、「アルゴリズム辞典」、共立出版(1994)
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかし、かかる方法では、メディアサーバ間で負荷に偏りが生じやすい。
【0009】
例えば、軽負荷のメディアサーバに呼を接続する方法の場合、全てのメディアサーバでの空きリソース量を合計すると、高負荷呼を接続できるだけの量があるのに、個々のサーバでの空きリソース量は、高負荷呼を接続できる量に足りず、よって、高負荷呼を接続できない場合がある。
【0010】
このような分割損を少なくする問題は、ビンパッキング問題という数理計画問題に定式化され、様々なアルゴリズムが考案されている。
【0011】
しかし、このアルゴリズムは、予め与えられた全ての要求を満足する解を求めるものであるため、メディアサーバ間で空きリソース量や負荷の偏りが生じやすい。
【0012】
また、メディアストリームの送信が終了し、呼が切断され、空きリソースが増えていき、負荷が軽減していくことを考慮していないので、呼接続装置の動作アルゴリズムとしては、そのままでは使用できない。
【0013】
また、かかる問題は、メディアサーバのみならず、あらゆる種類のサーバに共通するものである。
【0014】
本発明は、上記の課題に鑑みてなされたものであり、その目的とするところは、複数のサーバへ負荷が分散するように呼を接続でき、かつ、サーバ間での負荷の偏りを可及的に小さくできる呼接続装置およびその動作方法を提供することにある。
【課題を解決するための手段】
【0015】
上記の課題を解決するために、第1の本発明は、複数のサーバへ負荷が分散するように呼を接続させる呼接続装置であって、サーバへの負荷の大きさにより高負荷呼に分類される呼がサーバに接続されたときのサーバでの必要なリソース量である第1のリソース量ならびに高負荷呼でない低負荷呼に分類される呼がサーバに接続されたときの必要なリソース量である第2のリソース量を予め記憶した呼種別必要リソーステーブルと、前記各サーバにつき、該サーバでの空きのリソース量である空きリソース量を管理するサーバ別リソース管理テーブルと、呼をサーバに接続させるにあたり、当該呼が高負荷であるか低負荷呼であるかを判定し、当該呼が高負荷呼であるなら、前記呼種別必要リソーステーブルから第1のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数1】

【0016】
ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、を満たす1つの当該空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる一方、当該呼が低負荷呼であるなら、前記呼種別必要リソーステーブルから第1、第2のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数2】

【0017】
ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、Rβは、第2のリソース量、mod(Rvi、Rα)は、空きリソース量Rviを第1のリソース量Rαで割った剰余、を満たす1つの空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる呼接続部とを備えることを特徴とする。
【0018】
第2の本発明は、複数のサーバへ負荷が分散するように呼を接続させる呼接続装置の動作方法であって、前記呼接続装置は、サーバへの負荷の大きさにより高負荷呼に分類される呼がサーバに接続されたときのサーバでの必要なリソース量である第1のリソース量ならびに高負荷呼でない低負荷呼に分類される呼がサーバに接続されたときの必要なリソース量である第2のリソース量を予め記憶した呼種別必要リソーステーブルと、前記各サーバにつき、該サーバでの空きのリソース量である空きリソース量を管理するサーバ別リソース管理テーブルとを備え、前記動作方法は、前記呼接続装置の呼接続部が、呼をサーバに接続させるにあたり、当該呼が高負荷であるか低負荷呼であるかを判定し、前記呼接続部が、当該呼が高負荷呼であるなら、前記呼種別必要リソーステーブルから第1のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数3】

【0019】
ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、 を満たす1つの当該空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる一方、当該呼が低負荷呼であるなら、前記呼種別必要リソーステーブルから第1、第2のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数4】

【0020】
ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、Rβは、第2のリソース量、mod(Rvi、Rα)は、空きリソース量Rviを第1のリソース量Rαで割った剰余、を満たす1つの空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させることを特徴とする。
【発明の効果】
【0021】
本発明によれば、複数のサーバへ負荷が分散するように呼を接続でき、かつ、サーバ間での負荷の偏りを可及的に小さくすることができる。
【図面の簡単な説明】
【0022】
【図1】本実施の形態に係る呼接続装置を含む通信システムの構成図である。
【図2】呼種別必要リソーステーブル11の構成の一例を示す図である。
【図3】サーバ別リソース管理テーブル12の構成の一例を示す図である。
【図4】呼接続装置1の動作を示すフローチャートである。
【図5】本実施の形態により得られる効果を説明するための図である。
【図6】第1の変形例により得られる効果を説明するための図である。
【図7】第2の変形例で使用される継続時間長テーブル14の構成の一例を示す図である。
【図8】第2の変形例で使用される呼種別必要リソーステーブル11Aの構成の一例を示す図である。
【図9】第2の変形例で使用されるサーバ別リソース管理テーブル12Aの構成の一例を示す図である。
【発明を実施するための形態】
【0023】
以下、本発明の実施の形態について図面を参照して説明する。
【0024】
図1は、本実施の形態に係る呼接続装置を含む通信システムの構成図である。
【0025】
呼接続装置1は、ネットワーク2および複数のメディアサーバ3に接続される。ネットワーク2には、複数の端末4が接続される。以下、メディアサーバ3を単にサーバ3という。
【0026】
呼接続装置1は、各サーバ3へ負荷が分散するように呼を接続させる呼接続装置であって、呼種別必要リソーステーブル11、サーバ別リソース管理テーブル12、呼接続部13を備える。
【0027】
図2は、呼種別必要リソーステーブル11の構成の一例を示す図である。
【0028】
呼種別必要リソーステーブル11は、(1)サーバ3への負荷の大きさにより高負荷呼に分類される呼がサーバ3に接続されたときのサーバ3での必要なリソース量である第1のリソース量Rαならびに(2)高負荷呼でない低負荷呼に分類される呼がサーバ3に接続されたときの必要なリソース量である第2のリソース量Rβを予め記憶したものである。
【0029】
サーバ3は、呼が接続されたなら、予め記憶したメディアデータファイルを対応するコーデックでデコードし、得たメディアストリームを呼の接続要求の送信元である端末4に送信する。リソース量とは、デコード中において中央演算装置(CPU)にて必要となる処理能力の量や必要なメモリ量などである。
【0030】
高負荷呼とは、ここでは、予め定められた値以上のリソース量を必要とするデコードの場合の呼をいい、低負荷呼とは、当該値未満のリソース量を必要とするデコードの場合の呼をいう。かかるリソース量はコーデックに依存し、つまり、コーデックは、高負荷呼か低負荷呼かを定める1要素である。
【0031】
図3は、サーバ別リソース管理テーブル12の構成の一例を示す図である。
【0032】
サーバ別リソース管理テーブル12は、各サーバ3につき、(1)当該サーバ3での空きのリソース量である空きリソース量Rv1、Rv2、…、(2)当該サーバ3での高負荷呼の接続数C1α、C2α、…、(3)当該サーバ3での低負荷呼の接続数C1β、C2β、…、を管理するものである。
【0033】
空きリソース量とは、使用可能であるが使用されていないリソース量をいう。
【0034】
また、空きリソース量、接続数は、実際の空きリソース量、接続数を反映するように、適宜、更新されることとする。
【0035】
図1に戻り、呼接続装置1は、呼種別必要リソーステーブル11、サーバ別リソース管理テーブル12の他に、図示しないが、高負荷呼がサーバ3に接続されたときに使用されるコーデックを示す識別情報と高負荷呼を示す識別情報を対応づけ、かつ、低負荷呼がサーバ3に接続されたときに使用されるコーデックを示す識別情報と低負荷呼を示す識別情報を対応づけたテーブル(便宜的にコーデックテーブルという)を有している。
【0036】
(呼接続装置の動作)
図4は、呼接続装置1の動作を示すフローチャートである。
【0037】
呼接続装置1において、いずれかの端末4から接続要求、つまり、呼接続装置1が新たに呼をサーバ3に接続することを要求する信号を受信したなら(S1)、呼接続部13は、新たな呼が高負荷呼か低負荷呼かを判定する(S3)。
【0038】
呼接続部13は、例えば、接続要求内のパラメータなどを基に、新たな呼がサーバ3に接続されたときに使用されるコーデックを示す識別情報を求め、コーデックテーブルにおいて、当該識別情報に対し、高負荷呼の識別情報が対応づけられているなら、新たな呼は高負荷呼であり、一方、低負荷呼の識別情報が対応づけられているなら、新たな呼は低負荷呼であると判定する。
【0039】
呼接続部13は、新たな呼が高負荷呼なら、呼種別必要リソーステーブル11から第1のリソース量Rαを読み出し、サーバ別リソース管理テーブル12から各空きリソース量Rv1、Rv2、…を読み出し、各空きリソース量の中で、
【数5】

【0040】
ただし、Rviは、サーバiについての空きリソース量(後述の式においても同じ)、
を満たす空きリソース量があるか否かを判定する(S5)。
【0041】
呼接続部13は、全ての空きリソース量が式(1)を満たさないなら、呼損処理を行い(S7)、つまり、接続要求の送信元である端末4に接続不可の応答を送信し、処理を終える。
【0042】
呼接続部13は、一方、少なくとも1つの空きリソース量が式(1)を満たすなら、当該空きリソース量の1つを選択し、当該リソース量に対応するサーバ3に呼を接続させ(S9)、処理を終える。
【0043】
接続先のサーバ3は、呼が接続されたなら、予め記憶したメディアデータファイルを対応するコーデックでデコードし、得たメディアストリームを接続要求の送信元である端末4に送信する。
【0044】
呼接続装置1は、サーバ別リソース管理テーブル12から、当該サーバ3および高負荷呼についての接続数、空きリソース量を検索し、接続数に1を加算し、空きリソース量から高負荷呼について予め定めたリソース量を減算する。
【0045】
また、呼接続装置1は、メディアストリームの送信が終わり、呼が切断されたら、サーバ別リソース管理テーブル12から、当該サーバ3および高負荷呼についての接続数、空きリソース量を検索し、接続数から1を減算し、空きリソース量に対し高負荷呼について予め定めたリソース量を加算する。
【0046】
なお、実際の接続数、空きリソース量を、当該サーバ3から得て、これにより、サーバ別リソース管理テーブル12を更新しもよい。
【0047】
さて、呼接続部13は、ステップS3で、新たな呼が低負荷呼であると判定したなら、呼種別必要リソーステーブル11から第1、第2のリソース量Rα、Rβを読み出し、サーバ別リソース管理テーブル12から各空きリソース量Rv1、Rv2、…を読み出し、各空きリソース量の中で、
【数6】

【0048】
ただし、mod(Rvi、Rα)は、空きリソース量Rviを第1のリソース量Rαで割った剰余、
を満たす空きリソース量があるか否かを判定する(S11)。
【0049】
呼接続部13は、少なくとも1つの空きリソース量が式(2)を満たすなら、当該空きリソース量の1つを選択し、当該リソース量に対応するサーバ3に呼を接続させ(S13)、処理を終える。
【0050】
接続先のサーバ3は、前述のように、メディアデータファイルをコーデックでデコードし、メディアストリームを端末4に送信する。
【0051】
また、呼接続装置1は、サーバ別リソース管理テーブル12から、当該サーバ3および低負荷呼についての接続数、空きリソース量を検索し、接続数に1を加算し、空きリソース量から高負荷呼について予め定めたリソース量を減算する。
【0052】
また、呼接続装置1は、メディアストリームの送信が終わり、呼が切断されたら、サーバ別リソース管理テーブル12から、当該サーバ3および低負荷呼についての接続数、空きリソース量を検索し、接続数から1を減算し、空きリソース量に対し低負荷呼について予め定めたリソース量を加算する。
【0053】
なお、実際の接続数、空きリソース量を、当該サーバ3から得て、これにより、サーバ別リソース管理テーブル12を更新しもよい。
【0054】
呼接続部13は、一方、全ての空きリソース量が式(2)を満たさないなら、各空きリソース量Rv1、Rv2、…の中で、
【数7】

【0055】
を満たす空きリソース量があるか否かを判定する(S15)。
【0056】
呼接続部13は、少なくとも1つの空きリソース量が式(3)を満たすなら、当該空きリソース量の1つを選択し、当該リソース量に対応するサーバ3に呼を接続させ(S17)、処理を終える。
【0057】
接続先のサーバ3は、前述のように、メディアデータファイルをコーデックでデコードし、メディアストリームを端末4に送信する。
【0058】
また、呼接続装置1は、前述のように、サーバ別リソース管理テーブル12を更新する。
【0059】
呼接続部13は、一方、全ての空きリソース量が式(3)を満たさないなら、呼損処理を行い(S19)、処理を終える。
【0060】
次に、かかる呼接続装置1の動作による効果を説明する。
【0061】
図5において、空きリソース量Rvmは、式(3)を満たすが式(2)を満たさない空きリソース量であり、空きリソース量Rvnは、式(3)、式(2)の双方を満たす空きリソース量である。
【0062】
空きリソース量Rvnは、式(2)を満たすので、例えば、ステップS13で空きリソース量Rvnが選択され、その分、空きリソース量が減っても、まだ、第1のリソース量Rα以上の空きリソース量を確保でき、将来、高負荷を接続できる。また、第2のリソース量Rβ分の空きリソース量が減った後の空きリソース量Rvnと、空きリソース量Rvmの差は比較的小さく、つまり、負荷の偏りが小さい。
【0063】
しかし、空きリソース量Rvnがあるのに、空きリソース量Rvmを選択してしまうと、つまり、ステップS11を行わないと、例えば、ステップS17で空きリソース量Rvmが選択され、その分、空きリソース量が減った場合、第1のリソース量Rα以上の空きリソース量を確保できず、将来、高負荷を接続できない。また、第2のリソース量Rβ分の空きリソース量が減った後の空きリソース量Rvmと、空きリソース量Rvnの差が大きくなり、つまり、負荷の偏りが大きい。
【0064】
したがって、呼接続装置1によれば、ステップS11を行うことにより、高負荷呼の接続をより多く行うことができ、しかも、負荷の偏りを小さくすることができる。
【0065】
(第1の変形例)
ここでは、式(2)を満たす空きリソース量に対応するサーバが複数ある場合、または、式(3)を満たす空きリソース量に対応するサーバが複数ある場合において、つまり、ステップS13またはステップS17において当該式を満たす空きリソース量に対応する複数のサーバから1つを選択する方法の一例を説明する。かかる方法は、一方または双方、いずれのステップで実行してもよい。
【0066】
呼接続部13は、サーバ別リソース管理テーブル12から接続数C1β、C2β、…、を読み出すとともに、
【数8】

【0067】
ただし、Ciβは、サーバiについての接続数、mod(Rvi−Rβ、Rα)は、空きリソース量Rviから第2のリソース量Rβを引いた差を第1のリソース量Rαで割った剰余、
を計算し、最大の計算結果の値に対応する1つのサーバ3に呼を接続させる。
【0068】
第1の変形例による作用効果を説明する。
【0069】
図6において、斜線部分は、式(4)のRα−mod(Rvi−Rβ、Rα)に相当する。つまり、空きリソース量Rvxにおいては、斜線部分が小さく、空きリソース量Rvyにおいては、斜線部分が大きい。
【0070】
斜線部分の空きリソース量は、第1のリソース量Rαより小さく、したがって、斜線部分に対し、高負荷呼を割り当てることはできないが、斜線部分が大きい方が、将来、低負荷呼が切断されて、トータルの空きリソース量が増えた場合、当該空きリソース量に対し、多くの高負荷呼を割り当てられる可能性が高い。
【0071】
図6では、空きリソース量Rvxよりも空きリソース量Rvyの方が、将来、多くの高負荷呼を割り当てられる可能性が高い。
【0072】
つまり、第1の変形例は、
【数9】

【0073】
を計算し、大きい計算結果の値に対応するサーバへ優先的に呼を接続させることで、将来、多くの高負荷呼を割り当てられる可能性を高め、負荷の偏りを可及的に小さくすることができる。
【0074】
また、例えば、2つのサーバの空きリソース量を比較し、これらが等しくても、接続数Ciβが多いサーバの方が、大きいリソース量を有していることが多い。
【0075】
よって、2つのサーバで同じ程度で接続数が減少していき、つまり、低負荷が切断されてきけば、接続数Ciβが多いサーバの方が、多くの高負荷呼を割り当てられる可能性が高い。
【0076】
つまり、第1の変形例は、接続数Ciβの多いサーバへ優先的に呼を接続させることで、将来、多くの高負荷呼を割り当てられる可能性を高め、負荷の偏りを可及的に小さくすることができる。
【0077】
(第2の変形例)
次に、第2の変形例について説明する。
【0078】
第2の変形例では、図7に示す継続時間長テーブル14が呼接続装置1に設けられる。
【0079】
継続時間長テーブル14は、低負荷呼の接続が継続する継続時間長により低負荷呼が予め複数の低負荷呼に分類される場合において、各低負荷呼の接続が継続する継続時間長h1、h2、…を予め記憶したものである。継続時間長は、例えば、実際の継続時間長の平均である。
【0080】
また、第2の変形例では、呼種別必要リソーステーブル11に代えて、図8に示す呼種別必要リソーステーブル11Aが用いられる。
【0081】
呼種別必要リソーステーブル11Aは、(1)第1のリソース量Rαならびに(2)各低負荷呼について第2のリソース量Rβ1、Rβ2、…、を予め記憶したものである。
【0082】
また、第2の変形例では、サーバ別リソース管理テーブル12に代えて、図9に示すサーバ別リソース管理テーブル12Aが用いられる。
【0083】
サーバ別リソース管理テーブル12Aは、各サーバ3につき、(1)当該サーバ3での空きのリソース量である空きリソース量Rv1、Rv2、…、(2)当該サーバ3での高負荷呼の接続数C1α、C2α、…、(3)当該サーバ3での各低負荷呼の接続数C1β1、C1β2、…、C2β1、C2β2、…、を管理するものである。サーバ別リソース管理テーブル12Aは、サーバ別リソース管理テーブル12と同様に、呼接続装置1によって、現状を反映するように、適宜更新されるものである。
【0084】
第2の変形例では、ステップS13またはステップS17において式を満たす空きリソース量に対応する複数のサーバから1つを選択する場合、呼接続部13は、各低負荷呼につき、継続時間長テーブル14から継続時間長を読み出し、各低負荷呼につき、呼種別必要リソーステーブル11Aから第2のリソース量を読み出し、当該複数の空きリソース量に対応する各サーバにつき、サーバ別リソース管理テーブル12Aから各低負荷呼の接続数を読み出し、
【数10】

【0085】
ただし、Ciβjは、サーバiでの低負荷呼jについての接続数、hjは、低負荷呼jについての継続時間長、Rβjは、低負荷呼jについての第2のリソース量、
【数11】

【0086】
は、(Ciβj/hj)×Rβjの総和、Rβkは、接続しようとする低負荷呼についての第2のリソース量、mod(Rvi−Rβk、Rα)は、空きリソース量Rviから第2のリソース量Rβkを引いた差を第1のリソース量Rαで割った剰余、
を計算し、最大の計算結果の値に対応する1つのサーバ3に呼を接続させる。かかる方法は、ステップS13またはステップS17の一方または双方、いずれのステップで実行してもよい。
【0087】
なお、第2のリソース量Rβkを求めるのには、予めコーデックテーブルの低負荷呼の部分を低負荷の種類に応じて細分化しておき、前述の方法と同様に、コーデックの識別情報に対応する低負荷の識別情報を求め、その低負荷についての第2のリソース量Rβ(つまり第2のリソース量Rβk)を呼種別必要リソーステーブル11Aから求めればよい。
【0088】
式(6)の分母の作用効果については、第1の変形例と同様なので、説明を省略し、式(6)の分子の作用効果について、具体例を用いて説明する。
【0089】
低負荷呼が低負荷呼β1、β2に分類される場合、呼接続部13は、式(6)は、
【数12】

【0090】
となる。
【0091】
ただし、Ciβ1は、サーバiでの低負荷呼β1についての接続数、Ciβ2は、サーバiでの低負荷呼β2についての接続数、h1は、低負荷呼β1についての継続時間長、h2は、低負荷呼β2についての継続時間長、Rβ1は、低負荷呼β1についての第2のリソース量、Rβ2は、低負荷呼β2についての第2のリソース量である。
【0092】
ここで、具体的に数値を代入する。
【0093】
あるサーバ3(サーバ3Aという)と別のサーバ3(サーバ3Bという)での低負荷呼β1についての接続数CAβ1、接続数CBβ1がそれぞれ「6」、「3」であり、サーバ3A、3Bでの低負荷呼β2についての接続数CAβ2、接続数CBβ2がそれぞれ「3」、「6」であり、サーバ3A、3Bでの低負荷呼β1についての第2のリソース量Rβ1が共に「100(単位は省略する)」であり、サーバ3A、3Bでの低負荷呼β2についての第2のリソース量Rβ2が共に「100(単位は省略する)」であり、低負荷呼β1、β2についての継続時間長h1がそれぞれ「5(単位は省略する)」、「10(単位は省略する)」であったこととする。
【0094】
式(7)の分子は、サーバ3Aについては、
{(6/5)×100+(3/10)×100}=150
サーバ3Bについては、
{(3/5)×100+(6/10)×100}=120
となる。
【0095】
6/5、3/10は、サーバ3Aにおいて、接続数CAβ1、CAβ2のうち、将来のある時点で切断される呼の数の期待値を示している。
【0096】
3/5、6/10は、サーバ3Aにおいて、接続数CAβ1、CAβ2のうち、将来のある時点で切断される呼の数の期待値を示している。
【0097】
この場合、式(7)の分母がサーバ3A、3Bで同じならば、大きい方の分子(150>120)に対応するサーバ3Aに呼(低負荷呼)が接続される。つまり、期待値の高い方のサーバに呼が接続される。よって、次の呼が高負荷呼であった場合、その高負荷呼を接続できる可能性を高めることができる。
【0098】
例えば、サーバ3Bに呼を接続してしまった場合、次の呼(高負荷呼)をどのサーバ3にも接続できないという可能性がある。
【0099】
しかし、サーバ3Aに呼を接続することで、かかる不都合の発生の可能性を低くすることができる。つまり、高負荷呼を接続できる可能性を高め、サーバ間での負荷の偏りを可及的に小さくすることができる。
【0100】
なお、本実施の形態に係る呼接続装置としてコンピュータを機能させるためのコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
【0101】
また、本実施の形態では、メディアサーバを例にしたが、サーバは、いかなる種類のサーバであってもよい。
【符号の説明】
【0102】
1…呼接続装置
3…メディアサーバ(サーバ)
4…端末
11、11A…呼種別必要リソーステーブル
12、12A…サーバ別リソース管理テーブル
13…呼接続部
14…継続時間長テーブル

【特許請求の範囲】
【請求項1】
複数のサーバへ負荷が分散するように呼を接続させる呼接続装置であって、
サーバへの負荷の大きさにより高負荷呼に分類される呼がサーバに接続されたときのサーバでの必要なリソース量である第1のリソース量ならびに高負荷呼でない低負荷呼に分類される呼がサーバに接続されたときの必要なリソース量である第2のリソース量を予め記憶した呼種別必要リソーステーブルと、
前記各サーバにつき、該サーバでの空きのリソース量である空きリソース量を管理するサーバ別リソース管理テーブルと、
呼をサーバに接続させるにあたり、当該呼が高負荷であるか低負荷呼であるかを判定し、
当該呼が高負荷呼であるなら、前記呼種別必要リソーステーブルから第1のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数13】

ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、
を満たす1つの当該空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる一方、
当該呼が低負荷呼であるなら、前記呼種別必要リソーステーブルから第1、第2のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数14】

ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、Rβは、第2のリソース量、mod(Rvi、Rα)は、空きリソース量Rviを第1のリソース量Rαで割った剰余、
を満たす1つの空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる
呼接続部と
を備えることを特徴とする呼接続装置。
【請求項2】
前記呼接続部は、
前記式(2)を満たす空きリソース量に対応するサーバが複数あるなら、
【数15】

ただし、Rαは、第1のリソース量、Rviは、サーバiについての空きリソース量、Rβは、第2のリソース量、mod(Rvi−Rβ、Rα)は、空きリソース量Rviから第2のリソース量Rβを引いた差を第1のリソース量Rαで割った剰余、
を計算し、大きい計算結果の値に対応するサーバに呼を優先的に接続させる
ことを特徴とする請求項1記載の呼接続装置。
【請求項3】
前記サーバ別リソース管理テーブルは、
前記各サーバにつき、該サーバでの低負荷呼の接続数を管理するものであり、
前記呼接続部は、
前記式(2)を満たす空きリソース量に対応するサーバが複数あるなら、
当該各サーバにつき、前記サーバ別リソース管理テーブルから接続数を読み出すとともに、
【数16】

ただし、Ciβは、サーバiについての接続数、Rαは、第1のリソース量、Rviは、サーバiについての空きリソース量、Rβは、第2のリソース量、mod(Rvi−Rβ、Rα)は、空きリソース量Rviから第2のリソース量Rβを引いた差を第1のリソース量Rαで割った剰余、
を計算し、最大の計算結果の値に対応する1つのサーバに呼を接続させる
ことを特徴とする請求項1記載の呼接続装置。
【請求項4】
前記呼接続装置は、
低負荷呼の接続が継続する継続時間長により低負荷呼が予め複数の低負荷呼に分類される場合において、当該各低負荷呼の接続が継続する継続時間長を予め記憶した継続時間長テーブルを備え、
前記呼種別必要リソーステーブルは、
前記各低負荷呼について第2のリソース量を予め記憶したものであり、
前記サーバ別リソース管理テーブルは、
前記各サーバにつき、該サーバでの当該各低負荷呼の接続数を管理するものであり、
前記呼接続部は、
前記式(2)を満たす空きリソース量に対応するサーバが複数あるなら、
前記各低負荷呼につき、前記継続時間長テーブルから継続時間長を読み出し、前記各低負荷呼につき、前記呼種別必要リソーステーブルから第2のリソース量を読み出し、当該各サーバにつき、前記サーバ別リソース管理テーブルから各低負荷呼の接続数を読み出し、
【数17】

ただし、Ciβjは、サーバiでの低負荷呼jについての接続数、hjは、低負荷呼jについての継続時間長、Rβjは、低負荷呼jについての第2のリソース量、
【数18】

は、(Ciβj/hj)×Rβjの総和、Rαは、第1のリソース量、Rviは、サーバiについての空きリソース量、Rβkは、接続しようとする低負荷呼についての第2のリソース量、mod(Rvi−Rβk、Rα)は、空きリソース量Rviから第2のリソース量Rβkを引いた差を第1のリソース量Rαで割った剰余、
を計算し、最大の計算結果の値に対応する1つのサーバに呼を接続させる
ことを特徴とする請求項1記載の呼接続装置。
【請求項5】
複数のサーバへ負荷が分散するように呼を接続させる呼接続装置の動作方法であって、
前記呼接続装置は、
サーバへの負荷の大きさにより高負荷呼に分類される呼がサーバに接続されたときのサーバでの必要なリソース量である第1のリソース量ならびに高負荷呼でない低負荷呼に分類される呼がサーバに接続されたときの必要なリソース量である第2のリソース量を予め記憶した呼種別必要リソーステーブルと、
前記各サーバにつき、該サーバでの空きのリソース量である空きリソース量を管理するサーバ別リソース管理テーブルとを備え、
前記動作方法は、
前記呼接続装置の呼接続部が、呼をサーバに接続させるにあたり、当該呼が高負荷であるか低負荷呼であるかを判定し、
前記呼接続部が、当該呼が高負荷呼であるなら、前記呼種別必要リソーステーブルから第1のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数19】

ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、 を満たす1つの当該空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる一方、
当該呼が低負荷呼であるなら、前記呼種別必要リソーステーブルから第1、第2のリソース量を読み出し、前記サーバ別リソース管理テーブルから各空きリソース量を読み出し、
【数20】

ただし、Rviは、サーバiについての空きリソース量、Rαは、第1のリソース量、Rβは、第2のリソース量、mod(Rvi、Rα)は、空きリソース量Rviを第1のリソース量Rαで割った剰余、
を満たす1つの空きリソース量を選択し、該空きリソース量に対応するサーバに当該呼を接続させる
ことを特徴とする呼接続装置の動作方法。

【図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


【公開番号】特開2013−13004(P2013−13004A)
【公開日】平成25年1月17日(2013.1.17)
【国際特許分類】
【出願番号】特願2011−145698(P2011−145698)
【出願日】平成23年6月30日(2011.6.30)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】