JP2017215933A - 情報処理装置、及び、負荷分散制御方法 - Google Patents
情報処理装置、及び、負荷分散制御方法 Download PDFInfo
- Publication number
- JP2017215933A JP2017215933A JP2017028289A JP2017028289A JP2017215933A JP 2017215933 A JP2017215933 A JP 2017215933A JP 2017028289 A JP2017028289 A JP 2017028289A JP 2017028289 A JP2017028289 A JP 2017028289A JP 2017215933 A JP2017215933 A JP 2017215933A
- Authority
- JP
- Japan
- Prior art keywords
- control
- message
- amount
- request
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
管理する通信制御装置と、通信装置と通信制御装置とを接続する制御ネットワークとが含まれる。SDNでは、通信装置は転送機能に特化している。通信装置は、通信制御装置によって管理されている。以降、SDNにおける通信装置をスイッチと称する。また、SDNにおける通信制御装置をコントローラと称する。
#1のマスタは、サーバP1上のコントローラである。スイッチ#2のマスタはサーバP2上のコントローラである。
図1は、第1実施形態に係る分散型通信制御システム100のシステム構成の一例を示す図である。分散型通信制御システム100は、サーバ1、サーバ2、負荷分散装置3、複数のスイッチ9、外部クライアント8を備える。サーバ1、サーバ2には、それぞれ、アプリケーションとコントローラとが実装されている。負荷分散装置3は、サーバ1、サーバ2に対して、外部クライアント8からのアプリケーションへの要求を、重みづけラウンドロビンで振り分けて送信する。サーバ1、サーバ2は、それぞれ、複数台のスイッチ9のマスタとして動作する。
図2は、サーバ1のハードウェア構成の一例である。サーバ1は、例えば、専用のコンピュータである。サーバ1は、CPU(Central Processing Unit)101、主記憶装置
102、補助記憶装置103、ネットワークインタフェース104を備える。また、これらはバス105により互いに接続されている。
ィスクドライブ(Hard Disk Drive)等の不揮発性のメモリである。補助記憶装置103
は、例えば、コントローラ用のプログラム103P、パス設定のアプリケーションを記憶する。
ラムをロードする記憶領域および作業領域を提供したり、バッファとして用いられたりする記憶装置である。主記憶装置102は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)のような半導体メモリを含む。主記憶装置102は、「記憶部」の一例である。
スの設定要求である。また、アプリケーション19は、要求によって指定された2拠点かのパスの経路を算出する処理を行う。アプリケーション19の処理結果は、算出した経路情報である。経路情報には、例えば、経路上のスイッチ9の識別情報と、経路上の各スイッチ9の出力インタフェース等が含まれる。したがって、アプリケーション19によって生成されるメッセージには、第1実施形態では、パス計算の結果得られた経路上のスイッチ9の識別情報が含まれる。なお、経路上のスイッチは、1又は複数台であるので、1つの要求について生成されるメッセージの数は、経路上のスイッチの数となる。
みを決定する。重みの決定の処理の詳細については、後述される。制御部15は、決定した重みを重み通知部17に出力する。
図4は、負荷分散装置3によって用いられる重みの決定処理の具体例において想定される分散型通信制御システム100の一例を示す図である。スイッチ9によって形成されるネットワークは、データセンタ(DC)#1、データセンタ#2、WANの3つのエリアに分けられる。DC#1、DC#2、WANそれぞれのエリアに対して、アプリケーションが用意されている。負荷分散装置3、サーバ1、サーバ2には、DC#1、DC#2、WANそれぞれに向けたDC#1制御アプリケーション、DC#2制御アプリケーション、WAN制御アプリケーションのインスタンスが存在する。
サーバ1の制御部15は、サーバ1、サーバ2の要求量及びメッセージ量の計測結果を取得する。具体例では、図5、図6の結果が取得されたことを想定する。
接メッセージである。
サーバ1の制御部15は、サーバ1及びサーバ2から収集された要求量とメッセージ量とに基づいて、アプリケーションとサーバとの各組合せについて、メッセージ総量に対する直接メッセージ量の比率を算出する。所定のサーバ上の所定のアプリケーションのメッセージの総量に対する直接メッセージ量の比率を、直接比率、と称する。
サーバ1の制御部15は、サーバ1及びサーバ2から収集されたアプリケーション毎の要求量に基づいて、各アプリケーションから発生した要求量を求める。アプリケーションから発生した要求量を、以降、発生要求量、と称する。
あるので、DC#1制御アプリケーションの発生要求量は、20+20=40と求められる。DC#2制御アプリケーション、WAN制御アプリケーションについても同様にして、発生要求量が求められる。
サーバ1の制御部15は、サーバ1及びサーバ2から収集されたアプリケーション毎の要求量に基づいて、各サーバが収容可能な要求量を求める。サーバが収容可能な要求量を、以降、収容量、と称する。
の直接比率の値となる。Riの値は、図8に示される各アプリケーションの発生要求量の値となる。Cの値は、図9に示される各サーバの収容量の値となる。
サーバ1の制御部15は、線形計画問題の解Xijから、各アプリケーションについて、各サーバへ割り当てられる要求の割合を求める。サーバ1の制御部15は、各アプリケーションについての、各サーバへ割り当てられる要求の割合を、負荷分散装置3がラウンドロビンで用いる重みとして、重み通知部17を通じて、負荷分散装置3に通知する。
図12は、サーバ1の制御部15の、負荷分散装置3のラウンドロビンの重みの決定処理のフローチャートの一例である。図12に示される処理は、サーバ1の制御部15に、サーバ1及びサーバ2の要求量及びメッセージ量の情報が入力される周期と同じ周期で繰り返し実行される。図12に示される処理の実行主体は、CPU 101であるが、便宜上、機能構成要素である制御部15を主体として説明する。
図13は、各アプリケーションの要求量の状態が同条件の場合の、比較例のサーバ1とサーバ2とのメッセージ量と、具体例で算出された重みWijを用いた場合のサーバ1と
サーバ2とのメッセージ量との一例を示す図である。図13における比較例は、要求が、サーバ1とサーバ2との間で均等に振り分けられた場合の例である。図13における比較例のサーバ1、サーバ2の計測結果は、それぞれ、図5、図6で示されるものと同じである。
第1実施形態では、線形計画問題の定数Aijに、各アプリケーションにおける各サーバの直接比率が用いられる。これに代えて、線形計画問題の定数として、各アプリケーションの設定対象となるスイッチ9が予め判明しているのであれば、その中での各コントローラがマスタであるスイッチの割合を、線形計画問題の定数Aijとしてもよい。例えば、図4に示される例では、DC#1制御アプリケーションにおいて、設定対象のスイッチ3台のうち、サーバ1がマスタであるスイッチは2台、サーバ2がマスタであるスイッチは1台である。DC#2制御アプリケーションにおいて、設定対象のスイッチ4台のうち、サーバ1がマスタであるスイッチは1台、サーバ2がマスタであるスイッチは3台である。WAN制御アプリケーションにおいて、設定対象のスイッチ4台のうち、サーバ1がマスタであるスイッチは2台、サーバ2がマスタであるスイッチは2台である。
きる。
第2実施形態では、線形計画法ではなく、ヒューリスティックアルゴリズムを用いて、負荷分散装置3が、各アプリケーションについて要求を各サーバに割り当てる際に用いるラウンドロビンの重みが決定される。ヒューリスティックアルゴリズムとは、必ずしも正しい答えを導けるわけではないが、ある程度のレベルで正解に近い解を得ることができる方法である。
ションの要求が20割り当てられているので、サーバ2の収容量c(2)は15である。WAN制御アプリケーションの要求量r(3)は10であるので、サーバ2にWAN制御アプリケーションの要求量r(3)=10すべてが割り当てられる。WAN制御アプリケーションの要求量r(3)は、10から0に書き換えらえる。WAN制御アプリケーションの要求量r(3)が0になったので、WAN制御アプリケーションについての処理は終了する。
の収容量c(jj)、サーバjj上のアプリケーションiiに割り当てられる要求量x(ii,jj)を更新する。mは、r(ii)とc(jj)のうちの小さい方の値である。
第1実施形態では、線形計画問題の制約条件の一つであるサーバの収容量Cは、全アプリケーションの要求量の総和をコントローラ台数で割った、サーバ間で均等になるような値の定数である。また、第2実施形態においても、サーバjの収容量c(j)の初期値は、全アプリケーションの要求量をコントローラ台数で割った、サーバ間で均等な値である。第3実施形態では、サーバの収容量について、許容範囲を設定する。なお、第3実施形態では、第1実施形態、第2実施形態と共通する説明については、省略される。第3実施形態は、システム構成、ハードウェア構成、および、機能構成は、第1実施形態と同じであることを想定する。
ーバ2の収容量C2は35と求められる。
サーバ間の性能差が事前に判明している場合には、サーバ間の性能差に応じて収容量Cjを変化させてもよい。サーバ間の性能差に応じて収容量Cjを変化させる場合には、サーバの収容量の制約条件は以下のようになる。
第1実施形態、第2実施形態、第3実施形態では、負荷分散装置3のラウンドロビンの重みWijが0と算出されたアプリケーションiのインスタンスは、要求が入力されないにもかかわらず、サーバj上で動作し続ける。要求が入力されないアプリケーションiのサーバj上のインスタンスによって、サーバj上のリソースが消費される。
閾値δ未満であるサーバj上のアプリケーションiのインスタンスについては、動作が停止される。第4実施形態では、第1実施形態、第2実施形態、第3実施形態と共通する説明は省略される。第4実施形態では、システム構成、ハードウェア構成、及び、機能構成は、第1実施形態と同じものが想定される。
第5実施形態では、各アプリケーションの要求は、各アプリケーションについて直接比率が最も高いサーバに割り当てられるように、負荷分散装置3のラウンドロビンの重みが
決定される。
負荷分散装置3のラウンドロビンの重みを、分散型通信制御システム100全体での、各コントローラがマスタとなっているスイッチの数の割合としてもよい。この場合には、例えば、制御部15は、マスタ情報から、各サーバについて、マスタとなっているスイッチの割合を算出し、算出した割合を負荷分散装置3に通知する。これによって、マスタとなっているスイッチの数が多いコントローラほどより多くの要求が振り分けられるようになる。また、この場合には、アプリケーションが設定対象とするスイッチのマスタであるコントローラの偏りは考慮されない。
第6実施形態では、スイッチ9のマスタとなるコントローラを他のコントローラに変更させることによって、アプリケーションの設定領域内のスイッチ9において、コントロー
ラがマスタを担当するスイッチ9の数に偏りを生じさせる。第6実施形態では、第1〜第5実施形態と重複する説明は省略される。
スイッチ9へ送信されたメッセージの情報に基づいて行われる。シミュレーションに用いられる上述の情報は、他のコントローラ及び情報収集部14によって収集される。
図27は、第6実施形態に係る具体例において想定される分散型通信制御システム100Aの一例を示す図である。具体例に係る分散型通信制御システム100Aには、2台のコントローラ#1、コントローラ#2が含まれる。また、分散型通信制御システム100Aには、7台のスイッチ#1〜#7が含まれる。
サーバ1の制御部15は、現在のマスタ情報に基づいて、マスタの変更の対象となるス
イッチの選択と選択されたスイッチの変更後のマスタとの組み合わせの事例全てについて、各事例を示すマスタ変更情報を生成する。具体例では、コントローラが2台、スイッチが7台、マスタが変更されるスイッチは1台であることが前提であるので、マスタ変更情報は、(スイッチ数)×(コントローラ数−1)=7×1=7個作成される。マスタ変更情報は「事例情報」の一例である。ステップ1の処理は、「前記複数の宛先装置から、1又は複数の宛先装置を選択する事例を示す事例情報を複数生成」することの一例である。
を選ぶ組合せの数(21通り)のマスタ変更情報が作成される。なお、マスタ変更情報は、一時的に主記憶装置102内の記憶領域に保持され、マスタ変更決定処理が終了すると、削除される。
サーバ1の制御部15は、ステップ1で求めたマスタ変更情報全てについて、マスタ変更情報が適用された場合、すなわち、マスタ変更対象のスイッチ9のマスタをマスタ変更情報が示すコントローラに変更した場合のアプリケーションの要求の振り分けのシミュレーションを行う。制御部15は、シミュレーションの結果として、例えば、コントローラ間メッセージ量と、コントローラからスイッチ9への送信メッセージ量の分散値とを取得する。シミュレーションの手順は以下の通りである。コントローラからスイッチ9への送信メッセージ量の分散値、標準偏差、最大値と最小値との差等のばらつきを示す指標値は、「前記複数の制御装置それぞれから制御対象とする複数の宛先装置へ送信されるメッセージ量の前記複数の制御装置間でのばらつきを示す指標値」の一例である。
サーバ1の制御部15は、スイッチリストを取得する。スイッチリストは、アプリケーションが所定期間内に設定したスイッチのリストである。アプリケーションが設定したスイッチとは、例えば、アプリケーションの要求に応じてコントローラによって作成されたメッセージの送信先のスイッチである。または、アプリケーションが設定したスイッチとは、例えば、アプリケーションの要求に応じてコントローラによって作成されたメッセー
ジを受信したスイッチである。
サーバ1の制御部15は、アプリケーションiとコントローラjとの全ての組合せについて、直接比率Aijを求める。第6実施形態では、直接比率Aijは、第1実施形態と同様にして求められる。
サーバ1の制御部15は、所定期間内の各アプリケーションの発生要求量と直接比率Aijとに基づいて、コントローラ間メッセージ量を最小とする負荷分散装置3のラウンドロビンの重みWijを求める。所定期間内の各アプリケーションの発生要求量は、情報収集部14から取得される。負荷分散装置3のラウンドロビンの重みWijは、第1実施形態又は第2実施形態と同様にして求められる。ステップ2−3の処理は、「生成した前記複数の事例情報のそれぞれについて、選択された宛先装置を制御対象とする制御装置を他の制御装置に変更した場合について、前記重みを決定」することの一例である。
サーバ1の制御部15は、スイッチリスト、負荷分散装置3のラウンドロビンの重みWijを用いて、各マスタ変更情報が適用された場合について、各アプリケーションからの要求の振り分けのシミュレーションを行う。例えば、シミュレーションは、以下のように行われる。
要因となる要求は負荷分散装置3によってコントローラkに振り分けられることが示される。対象メッセージのマスタはコントローラkであるので、対象メッセージは振分先のコントローラj(j=k)によって作成されて送信先のスイッチ9に送信されることになる。この場合には、コントローラ間メッセージは発生しないので、コントローラ間メッセージ量interMsgsは更新されない。
サーバ1の制御部15は、シミュレーション結果に基づいて、採用するマスタ変更情報を選択する。具体的には、例えば、制御部15は、コントローラからスイッチ9への送信メッセージ量の分散値が閾値以下であるマスタ変更情報のうち、最もコントローラ間メッセージ量の少ないマスタ変更情報を採用する。採用するマスタ変更情報が決定すると、当該マスタ変更情報に含まれるマスタ変更対象のスイッチ9が、マスタ変更対象のスイッチとして選択される。
図36は、第6実施形態に係るマスタ変更決定処理のフローチャートの一例である。図36に示される処理は、例えば、所定の周期で実行されてもよいし、所定のイベントの発生を契機に実行されてもよい。図36に示される処理の実行契機となるイベントは、例えば、アプリケーションiについて、コントローラ間で直接比率Aijの偏りが閾値未満となること、である。図36に示される例の実行主体は、サーバ1のCPU 101であるが、便宜上、機能構成要素である制御部15を主体として説明する。
しないことが判定されてもよい。または、コントローラからスイッチ9への送信メッセージ量の分散値が最も小さいマスタ変更情報が選択されてもよい。
第6実施形態では、スイッチ9のマスタを変更させることによって、スイッチ9のマスタを担当するコントローラに偏りを生じさせる。スイッチ9のマスタを担当するコントローラの偏りに応じて、第1〜第5実施形態に係る負荷分散装置3のラウンドロビンの重みWijの決定処理によってラウンドロビンの重みWijが決定される。これによって、コントローラ間メッセージ量の削減効果を向上させることができる。
イッチ9への送信メッセージ量の偏りが少なく、且つ、コントローラ間メッセージ量が少なくなるように決定される。これによって、分散型通信制御システム100全体の処理効率を向上させることができる。
第6実施形態では、全てのマスタ変更情報について、マスタ変更情報が適用された場合のシミュレーションが行われる。第7実施形態では、シミュレーションを実行するマスタ変更情報を絞り込むことによって、シミュレーションの処理に係る負荷を削減し、処理を高速化させる。第7実施形態では、第6実施形態と重複する説明は省略される。第7実施形態では、分散型通信システム100のシステム構成、サーバ1のハードウェア構成及び機能構成は、第6実施形態と同様である。
マスタ変更情報の絞り込み処理は、マスタ変更決定処理における、(ステップ1)のマスタ変更情報の作成の処理の前に実行される処理である。したがって、マスタ変更情報の絞り込み処理は、マスタ変更決定処理における(ステップ1)の処理のサブステップとして説明する。なお、以降、第6実施形態と同様の分散型通信制御システム100Aが想定された具体例とともに説明される。
サーバ1の制御部15は、全てのアプリケーションとコントローラとの組み合わせについて、直接比率Aijを取得する。なお、直接比率Aijは、例えば、第1実施形態と同様にして取得される。
サーバ1の制御部15は、ステップ1−1で求めた直接比率Aijについて、各アプリケーションについて、分散値を求める。ただし、分散値に限定されず、ばらつきを表す指標であればよく、例えば、標準偏差、最大値と最小値との差等が用いられてもよい。
サーバ1の制御部15は、直接比率の分散値が閾値以下のアプリケーションを抽出する。直接比率の分散値が小さいほど、アプリケーションの設定領域内におけるスイッチ9がマスタとするコントローラの偏りが小さいことが示される。そのため、直接比率の分散値が閾値以下のアプリケーションに、スイッチ9がマスタとするコントローラに偏りを生じさせることで、コントローラ間メッセージの削減により大きな効果が得られる。
サーバ1の制御部15は、ステップ1−3で抽出したアプリケーションについて、最も送信メッセージ量が多いスイッチ9を抽出する。各スイッチ9への所定のアプリケーションの送信メッセージ量は、当該所定のアプリケーションのスイッチリストに含まれるスイッチの識別情報を集計することで取得される。そのため、第7実施形態では、ステップ1−4の処理より前にスイッチリストの取得が行われる。ステップ1−4の処理は、「前記第1の種類の所定の処理のメッセージの受信メッセージ量の多い上位の1又は複数の宛先装置を取得」することの一例である。
サーバ1の制御部15は、現在のマスタ情報に基づいて、ステップ1−4において抽出したスイッチをマスタの変更対象とするマスタ変更情報を生成する。例えば、図40に示される第7実施形態の具体例では、スイッチ#4が抽出されるので、制御部15は、スイッチ#4のマスタをコントローラ#1(図28参照)からコントローラ#2に変更するマスタ変更情報を作成する。ステップ1−5の処理は、「複数の宛先装置から前記取得した1又は複数の宛先装置を選択する事例情報を生成する」ことの一例である。
えば、アプリケーションiについて、コントローラ間で直接比率Aijの偏りが閾値未満となること、である。図41に示される例の実行主体は、サーバ1のCPU 101であるが、便宜上、機能構成要素である制御部15を主体として説明する。
第7実施形態では、マスタが変更されるスイッチの全てのパターンについてではなく、条件を満たすスイッチのマスタが変更されるマスタ変更情報が作成される。これによって、シミュレーションの処理を削減することができ、マスタ変更決定処理を高速化することができる。また、シミュレーションに係るサーバ1の処理負荷を低減することができる。
コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
ュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD−ROM、CD−R/W、DVD、ブルーレイディスク、DAT、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスク、ROM(リードオンリーメモリ)等がある。さらに、SSD(Solid State Drive)は、コンピュータ等から取り外し可能な記録媒体としても、コ
ンピュータ等に固定された記録媒体としても利用可能である。
2 サーバ
3 負荷分散装置
9 スイッチ
11 要求受信部
12 メッセージ転送部
13 スイッチ設定部
14 情報収集部
15 制御部
16 計測結果受信部
17 重み通知部
18A アプリケーション要求量記憶部
18B メッセージ量記憶部
18C マスタ情報記憶部
101 CPU
102 主記憶装置
103 補助記憶装置
104 ネットワークインタフェース
Claims (17)
- 複数の制御装置間で振り分けられた要求のうち自装置に振り分けられた要求を受信する第1の受信部と、要求に応じて所定の処理を実行し、メッセージを生成し、前記メッセージの宛先装置を制御対象とする制御装置が自装置である場合には前記メッセージを前記宛先装置に送信し、前記メッセージの宛先装置を制御対象とする制御装置が他の制御装置である場合には前記メッセージを前記他の制御装置に転送する制御部と、を備える前記複数の制御装置それぞれについて、前記所定の処理の要求の振り分けに用いられる重みを、制御対象とする宛先装置の数が多い制御装置ほど当該制御装置へ振り分けられる前記所定の処理の要求量が多くなるように、決定する処理部、
を備える情報処理装置。 - 前記複数の制御装置それぞれについて、制御対象とする宛先装置の情報を記憶する記憶部をさらに備え、
前記処理部は、前記複数の制御装置それぞれについて、宛先装置の総数に対する前記複数の制御装置それぞれが制御対象とする宛先装置の数の割合を、前記重みとして決定する、
請求項1に記載の情報処理装置。 - 前記情報処理装置は、
前記複数の制御装置それぞれから、前記複数の制御装置それぞれが受信した複数種類の所定の処理それぞれの要求量を受信する受信部をさらに備え、
前記処理部は、線形計画法において、前記複数種類の所定の処理のうちの種類iの所定の処理(1≦i≦所定の処理の種類の数)のメッセージの宛先装置の総数に対する制御装置j(1≦j≦制御装置の数)の制御対象の宛先装置の数の割合を定数Aijとし、前記制御装置jに振り分けられる前記種類iの所定の処理の要求量を変数Xijとして、Σj
Xij(Σj:jに関する足し合わせ)を前記制御装置jに振り分け可能な要求量の上限
値とし、ΣiXij(Σi:iに関する足し合わせ)を前記種類iの所定の処理についての前記複数の制御装置それぞれが受信した要求量の総和とする制約条件のもとで、目的関数ΣAij*Xij(*は乗算記号)を最大化させる、前記制御装置jに振り分けられる前
記種類iの所定の処理の要求量Xijの値を取得し、取得された前記Xijの値の、前記種類iの所定の処理についての前記複数の制御装置それぞれが受信した要求量の総和に対する割合を、前記種類iの所定の処理の要求の前記制御装置jへの振り分けに用いられる重みとして決定する、
請求項1に記載の情報処理装置。 - 複数の制御装置間で振り分けられた要求のうち自装置に振り分けられた要求を受信する第1の受信部と、要求に応じて所定の処理を実行してメッセージを生成し、前記メッセージの宛先装置を制御対象とする制御装置が自装置である場合には前記メッセージを前記宛先装置に送信し、前記メッセージの宛先装置を制御対象とする制御装置が他の制御装置である場合には前記メッセージを前記他の制御装置に転送する制御部と、を備える前記複数の制御装置それぞれから、前記複数の制御装置それぞれが前記所定の処理を実行することによって生成されたメッセージについて、前記複数の制御装置それぞれから宛先装置に送信された第1のメッセージの量と、前記複数の制御装置それぞれから他の制御装置に転送された第2のメッセージの量と、を受信する受信部と、
前記複数の制御装置それぞれの、前記複数の制御装置それぞれによる前記所定の処理によって生成されたメッセージ総量に対する前記第1のメッセージの量の第1の比率又は前記第2のメッセージの量の第2の比率に基づいて、前記第1の比率が高い又は前記第2の比率が低い制御装置ほど当該制御装置へ振り分けられる前記所定の処理の要求量が多くなるように、前記複数の制御装置それぞれについて、前記所定の処理の要求の振り分けに用
いられる重みを決定する処理部と、
を備える情報処理装置。 - 前記複数の制御装置それぞれは、複数種類の所定の処理を実行して、メッセージを生成し、
前記受信部は、前記複数の制御装置それぞれから、前記複数種類の所定の処理それぞれについての、前記第1のメッセージの量と、前記第2のメッセージの量とを受信し、
前記処理部は、前記複数の制御装置それぞれによって実行される前記複数種類の所定の処理それぞれについて、前記第1の比率又は第2の比率を求め、前記複数種類の所定の処理それぞれについて、前記複数の制御装置それぞれへの前記要求の振り分けに用いられる重みを決定する、
請求項4に記載の情報処理装置。 - 前記処理部は、前記複数の制御装置それぞれについて振り分け可能な要求量の上限値を決定し、前記第1の比率又は第2の比率と、前記要求量の上限値とに基づいて、前記第1の比率が高い又は前記第2の比率が低い制御装置ほど当該制御装置へ振り分けられる前記所定の処理の要求量が多くなるように、且つ、前記複数の制御装置それぞれに振り分けられる要求量が前記複数の制御装置それぞれの前記上限値を超えないように、前記複数の制御装置それぞれへの前記要求の振り分けに用いられる重みを決定する、
請求項4又は5に記載の情報処理装置。 - 前記受信部は、前記複数の制御装置それぞれから、前記複数の制御装置それぞれが受信した前記複数種類の所定の処理のそれぞれの要求量をさらに受信し、
前記処理部は、線形計画法において、制御装置j(1≦j≦制御装置の数)が実行する前記複数種類の所定の処理のうちの種類iの所定の処理(1≦i≦処理の種類の数)についての前記第1の比率又は前記第2の比率を定数Aijとし、前記制御装置jに振り分けられる前記種類iの所定の処理の要求量を変数Xijとして、ΣjXij(Σj:jに関する足し合わせ)を前記制御装置jが処理可能な要求量の上限値とし、ΣiXij(Σi:iに関する足し合わせ)を前記種類iの所定の処理についての前記複数の制御装置それぞれが受信した要求量の総和とする制約条件のもとで、目的関数ΣAij*Xij(*は乗算
記号)を最大化又は最小化させる、前記制御装置jに振り分けられる前記種類iの所定の処理の要求量Xijの値を取得し、取得された前記Xijの値の、前記種類iの所定の処理についての前記複数の制御装置それぞれが受信した要求量の総和に対する割合を、前記複数の制御装置jへの前記種類iの所定の処理の要求の振り分けに用いられる重みとして決定する、
請求項6に記載の情報処理装置。 - 前記受信部は、前記複数の制御装置それぞれから、前記複数の制御装置それぞれが受信した前記複数種類の所定の処理のそれぞれの要求量をさらに受信し、
前記処理部は、前記複数の制御装置それぞれの処理可能な要求量の上限値と、前記複数種類の所定の処理それぞれの、前記複数の制御装置への要求の総量とに基づいて、前記複数種類の所定の処理それぞれについて、前記複数の制御装置のそれぞれが実行する前記複数種類の所定の処理それぞれについての前記第1の比率のうち最も高い値の第1の比率に対応する制御装置j(1≦j≦制御装置の数)に種類iの所定の処理(1≦i≦所定の処理の種類の数)の要求を割り当てる第1の処理を行い、前記第1の比率の高い順番で当該第1の比率Aijについて、前記制御装置jに割り当てられる要求量が前記要求量の上限値に達したら、前記制御装置jを除外した残りの制御装置について、前記複数種類の所定の処理それぞれの要求量の総数が0になるまで前記第1の処理を繰り返し実行し、前記複数の制御装置それぞれに割り当てられた前記複数種類の所定の処理それぞれの要求量の比率を、前記複数種類の所定の処理それぞれについて、前記複数の制御装置それぞれへの前
記要求の振り分けに用いられる重みとして決定する、
請求項6に記載の情報処理装置。 - 前記処理部は、前記決定された重みが所定の閾値よりも低い制御装置について、前記決定された重みに対応する制御装置による前記決定された重みに対応する所定の処理の停止を判定する、
請求項4から8のいずれか一項に記載の情報処理装置。 - 前記処理部は、前記複数の制御装置のそれぞれの前記要求量の上限値を、所定の許容範囲を有する値として決定する、
請求項3、7、8のいずれか一項に記載の情報処理装置。 - 前記受信部は、前記複数の制御装置それぞれから、前記複数の制御装置それぞれが受信した前記複数種類の所定の処理それぞれの要求量をさらに受信し、
前記処理部は、前記複数の制御装置のそれぞれの前記要求量の上限値を、前記複数の制御装置それぞれが受信した前記複数種類の所定の処理それぞれの要求量の総和を前記複数の制御装置の台数で割った値とする、
請求項3、7、8のいずれか一項に記載の情報処理装置。 - 前記処理部は、前記複数の制御装置それぞれの前記要求量の上限値を、前記複数の制御装置それぞれの処理性能に応じて決定する、
請求項3、7、8のいずれか一項に記載の情報処理装置。 - コンピュータが、
複数の制御装置間で振り分けられた要求のうち自装置に振り分けられた要求を受信する第1の受信部と、要求に応じて所定の処理を実行し、メッセージを生成し、前記メッセージの宛先装置を制御対象とする制御装置が自装置である場合には前記メッセージを前記宛先装置に送信し、前記メッセージの宛先装置を制御対象とする制御装置が他の制御装置である場合には前記メッセージを前記他の制御装置に転送する制御部と、を備える前記複数の制御装置それぞれについて、制御対象である宛先装置の情報を記憶する記憶部と、
前記複数の制御装置それぞれについて、前記所定の処理の要求の振り分けに用いられる重みを、制御対象とする宛先装置の数が多い制御装置ほど当該制御装置へ振り分けられる前記所定の処理の要求量が多くなるように、決定する処理部、
を備える負荷分散制御方法。 - コンピュータが、
複数の制御装置間で振り分けられた要求のうち自装置に振り分けられた要求を受信する第1の受信部と、要求に応じて所定の処理を実行してメッセージを生成し、前記メッセージの宛先装置を制御対象とする制御装置が自装置である場合には前記メッセージを前記宛先装置に送信し、前記メッセージの宛先装置を制御対象とする制御装置が他の制御装置である場合には前記メッセージを前記他の制御装置に転送する制御部と、を備える前記複数の制御装置それぞれから、前記複数の制御装置それぞれが前記所定の処理を実行することによって生成されたメッセージについて、前記複数の制御装置それぞれから宛先装置に送信された第1のメッセージの量と、前記複数の制御装置それぞれから他の制御装置に転送された第2のメッセージの量と、を受信し、
前記複数の制御装置それぞれの、前記複数の制御装置それぞれによる前記所定の処理によって生成されたメッセージ総量に対する前記第1のメッセージの量の第1の比率又は前記第2のメッセージの量の第2の比率に基づいて、前記第1の比率が高い又は前記第2の比率が低い制御装置ほど当該制御装置に振り分けられる前記所定の処理の要求量が多くなるように、前記複数の制御装置それぞれについて、前記所定の処理の要求の振り分けに用
いられる重みを決定する、
負荷分散制御方法。 - 前記処理部は、
前記複数の制御装置それぞれが制御対象とする複数の宛先装置から1又は複数の宛先装置を選択し、
選択された宛先装置を制御対象とする制御装置が他の制御装置に変更された場合に、前記複数の制御装置間で転送されるメッセージ量が削減され、且つ、前記複数の制御装置それぞれから前記複数の宛先装置へ送信されるメッセージ量が前記複数の制御装置間で均等であることを含む条件を前記選択された宛先装置が満たすか否かを判定し、
前記選択された宛先装置が前記条件を満たす場合に、前記選択された宛先装置を制御対象とする制御装置を他の制御装置に変更することを判定する、
請求項1−12のいずれか一項に記載の情報処理装置。 - 前記処理部は、
前記複数の宛先装置から、1又は複数の宛先装置を選択する事例を示す事例情報を複数生成し、
生成した前記複数の事例情報のそれぞれについて、選択された宛先装置を制御対象とする制御装置を他の制御装置に変更した場合について、前記重みを決定し、決定した重みに基づいて前記所定の処理の要求の振り分けをシミュレートして、前記複数の制御装置間で転送されるメッセージ量と、前記複数の制御装置それぞれから制御対象とする複数の宛先装置へ送信されるメッセージ量の前記複数の制御装置間でのばらつきを示す指標値と、を取得し、
前記条件として、前記ばらつきを示す指標値が所定の閾値以下である事例情報のうち最も制御装置間で転送されるメッセージ量が少ない事例情報を抽出し、抽出された事例情報において選択された1又は複数の宛先装置を制御対象とする制御装置を他の制御装置に変更することを判定する、
請求項15に記載の情報処理装置。 - 前記複数の制御装置それぞれは、複数種類の所定の処理を実行して、メッセージを生成し、
前記処理部は、前記複数種類の所定の処理から、前記複数の制御装置それぞれから前記制御対象の複数の宛先装置に送信されたメッセージ量が前記複数の制御装置間で均等である第1の種類を取得し、前記第1の種類の所定の処理のメッセージの受信メッセージ量の多い上位の1又は複数の宛先装置を取得し、前記複数の宛先装置から前記取得した1又は複数の宛先装置を選択する事例情報を生成する、
請求項16に記載の情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/581,168 US10397315B2 (en) | 2016-05-26 | 2017-04-28 | Information processing apparatus and load distribution control method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016105589 | 2016-05-26 | ||
JP2016105589 | 2016-05-26 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2017215933A true JP2017215933A (ja) | 2017-12-07 |
JP2017215933A5 JP2017215933A5 (ja) | 2020-02-06 |
JP6938944B2 JP6938944B2 (ja) | 2021-09-22 |
Family
ID=60575703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017028289A Active JP6938944B2 (ja) | 2016-05-26 | 2017-02-17 | 情報処理装置、及び、負荷分散制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6938944B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286656A (zh) * | 2020-10-21 | 2021-01-29 | 百度在线网络技术(北京)有限公司 | 小程序模拟方法、装置、电子设备和计算机可读存储介质 |
WO2023218664A1 (ja) * | 2022-05-13 | 2023-11-16 | 楽天モバイル株式会社 | リプレースシステム及びリプレース方法 |
WO2023218663A1 (ja) * | 2022-05-13 | 2023-11-16 | 楽天モバイル株式会社 | 実行基盤決定システム及び実行基盤決定方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011083780A1 (ja) * | 2010-01-05 | 2011-07-14 | 日本電気株式会社 | 通信システム、制御装置、処理規則の設定方法、パケットの送信方法およびプログラム |
WO2013114490A1 (ja) * | 2012-02-02 | 2013-08-08 | 日本電気株式会社 | コントローラ、負荷分散方法、プログラムを格納した非一時的なコンピュータ可読媒体、コンピュータシステム、制御装置 |
JP2015533049A (ja) * | 2012-09-20 | 2015-11-16 | 株式会社Nttドコモ | ネットワークにおけるトポロジ及びパス検証のための方法及び装置 |
-
2017
- 2017-02-17 JP JP2017028289A patent/JP6938944B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011083780A1 (ja) * | 2010-01-05 | 2011-07-14 | 日本電気株式会社 | 通信システム、制御装置、処理規則の設定方法、パケットの送信方法およびプログラム |
WO2013114490A1 (ja) * | 2012-02-02 | 2013-08-08 | 日本電気株式会社 | コントローラ、負荷分散方法、プログラムを格納した非一時的なコンピュータ可読媒体、コンピュータシステム、制御装置 |
JP2015533049A (ja) * | 2012-09-20 | 2015-11-16 | 株式会社Nttドコモ | ネットワークにおけるトポロジ及びパス検証のための方法及び装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112286656A (zh) * | 2020-10-21 | 2021-01-29 | 百度在线网络技术(北京)有限公司 | 小程序模拟方法、装置、电子设备和计算机可读存储介质 |
CN112286656B (zh) * | 2020-10-21 | 2023-08-29 | 百度在线网络技术(北京)有限公司 | 小程序模拟方法、装置、电子设备和计算机可读存储介质 |
WO2023218664A1 (ja) * | 2022-05-13 | 2023-11-16 | 楽天モバイル株式会社 | リプレースシステム及びリプレース方法 |
WO2023218663A1 (ja) * | 2022-05-13 | 2023-11-16 | 楽天モバイル株式会社 | 実行基盤決定システム及び実行基盤決定方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6938944B2 (ja) | 2021-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10904319B2 (en) | Dynamic deployment of an application based on micro-services | |
US10924535B2 (en) | Resource load balancing control method and cluster scheduler | |
JP7257728B2 (ja) | ソフトウェア・アプリケーションのデプロイメント構成の動的選択のための方法、コンピュータ・プログラム及びコンピュータ・システム | |
US11429449B2 (en) | Method for fast scheduling for balanced resource allocation in distributed and collaborative container platform environment | |
US11736561B2 (en) | Load balanced network file accesses | |
US10623481B2 (en) | Balancing resources in distributed computing environments | |
CN104184813B (zh) | 虚拟机的负载均衡方法和相关设备及集群系统 | |
JP2018198068A (ja) | 分散型クラウドにおける作業負荷移動に基づくプロファイルベースのsla保証 | |
CN106326002B (zh) | 资源调度方法、装置及设备 | |
US10397315B2 (en) | Information processing apparatus and load distribution control method | |
JPWO2008102739A1 (ja) | 仮想サーバシステム及び物理サーバ選択方法 | |
US11574243B1 (en) | Heterogeneous compute instance auto-scaling with reinforcement learning | |
JP2020127182A (ja) | 制御装置、制御方法及びプログラム | |
KR20200062299A (ko) | 블록체인 트랜잭션들을 선택하기 위한 트랜잭션 선택 디바이스 | |
JP6938944B2 (ja) | 情報処理装置、及び、負荷分散制御方法 | |
Manikandan et al. | Virtualized load balancer for hybrid cloud using genetic algorithm | |
CN109960579A (zh) | 一种调整业务容器的方法及装置 | |
JP7182836B2 (ja) | 分散コンピューティング環境における作業負荷の自動対角スケーリング | |
US10387578B1 (en) | Utilization limiting for nested object queries | |
CN110609744B (zh) | 处理计算任务的方法、设备和计算机程序产品 | |
Sood | Function points‐based resource prediction in cloud computing | |
US9736035B2 (en) | Method and apparatus for providing information for selecting clouds | |
CN115701585A (zh) | 实例迁移方法、装置及相关设备 | |
Sahana et al. | Weight based Load Balancing in Kubernetes using AWS | |
Nema et al. | A new efficient Virtual Machine load balancing Algorithm for a cloud computing environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191112 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201222 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210215 |
|
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: 20210803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210816 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6938944 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |