JP2004013555A - 周辺処理装置負荷分散方式 - Google Patents
周辺処理装置負荷分散方式 Download PDFInfo
- Publication number
- JP2004013555A JP2004013555A JP2002166588A JP2002166588A JP2004013555A JP 2004013555 A JP2004013555 A JP 2004013555A JP 2002166588 A JP2002166588 A JP 2002166588A JP 2002166588 A JP2002166588 A JP 2002166588A JP 2004013555 A JP2004013555 A JP 2004013555A
- Authority
- JP
- Japan
- Prior art keywords
- load
- peripheral
- function
- peripheral processing
- processing device
- 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.)
- Pending
Links
Images
Abstract
【解決手段】各周辺処理装置20は、周辺装置30に対する入出力処理の実行の開始/終了に起因する自己の負荷状態の変化を、自己が接続している全てのホストコンピュータ10に通知する。各ホストコンピュータ10は、自己が接続している全ての周辺処理装置20の各々の負荷情報を管理し、当該各周辺処理装置20からの「負荷状態の変化を示す通知」に基づいて当該負荷情報を更新し、当該負荷情報に基づいて使用周辺処理装置を決定することにより、コンピュータシステム全体で考えた場合において特定の周辺処理装置20に負荷が集中しないように入出力処理の負荷分散制御を行う。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、特定の周辺処理装置に負荷が集中しないように負荷分散制御を行う周辺処理装置負荷分散方式に関する。
【0002】
【従来の技術】
「コンピュータシステムにおける周辺処理装置の負荷分散処理」に関する従来の技術では、例えば特開2000−194650号公報に記載されているように、各周辺処理装置を使用して周辺装置に発行されているI/O(Input/Output)数やI/Oコマンドの内容の解析結果で予想される処理時間を負荷とみなし、このような負荷を各ホストコンピュータ側で個別に管理することにより、最も負荷の軽い周辺処理装置が当該各ホストコンピュータによって選択されることで、負荷の平準化が行われている。
【0003】
【発明が解決しようとする課題】
上述した従来の技術では、周辺処理装置が複数のホストコンピュータに接続されている構成においては、個々のホストコンピュータについては各周辺処理装置に負荷を分散させるように動作させることができても、当該コンピュータシステム全体で考えた場合には特定の周辺処理装置に負荷が集中してしまうおそれがあるという問題点があった。
【0004】
このような問題点が存在する理由は、各ホストコンピュータにおいて、自己(当該各ホストコンピュータ)から各周辺処理装置に発行されたI/Oコマンド(入出力要求)についてしか負荷を計上することができず、他のホストコンピュータから各周辺処理装置にどのような負荷がかけられているかを認識することができなかったためである。
【0005】
本発明の目的は、上述の点に鑑み、周辺処理装置が複数のホストコンピュータに接続されているコンピュータシステムにおいても、当該コンピュータシステム全体で考えた場合に、特定の周辺処理装置に負荷が集中しないように負荷分散制御を行うことができる周辺処理装置負荷分散方式を提供することにある。
【0006】
なお、本発明の周辺処理装置負荷分散方式に対する従来技術に関する特許公報としては、上記の公報の他に、周辺処理装置(「入出力制御装置」とも表現される)に関する負荷の分散を考察している点で本発明と類似している「特開平07−334449号公報」および「特開平08−235127号公報」が存在する。
【0007】
上記の特開平07−334449号公報に記載された技術(「入出力負荷分散方式」)は、周辺装置に対する入出力制御装置を複数接続できるコンピュータシステムにおいて、周辺装置に対する入出力処理を行う場合に、複数の入出力経路から「入出力要求を行う入出力経路」を選択する際に負荷の小さい入出力経路を動的に選択・変更することによって、周辺装置が接続された入出力制御装置に対する負荷が集中しても、入出力経路の変更によって負荷分散を実現し、コンピュータシステム全体のスループットの低下の回避を図る技術である。
【0008】
また、上記の特開平08−235127号公報に記載された技術(「自動負荷分散方法および装置」)は、複数のコンピュータが互いにネットワークを通じて通信可能なように接続された環境で、ネットワークで繋がれた各コンピュータの負荷情報や資源利用状況等を互いに交換することによって各コンピュータの負荷状態を相互に把握できるようにし、自コンピュータの負荷が高い場合には各アプリケーション・プログラムで行われる処理を負荷状態の低いマシンに依頼し実行することによって、負荷の分散を実現する技術である。
【0009】
しかしながら、これらの技術は、本発明の特徴である「各周辺処理装置の負荷状態をホストコンピュータ内の周辺処理装置負荷状態管理表等によって管理し、自己の負荷状態の変化(更新状況)を示す通知を周辺処理装置がホストコンピュータに行うこと等によって、コンピュータシステム全体における適切な負荷分散を実現すること」については何ら考察しておらず、本発明とは本質的に相違するものである。
【0010】
【課題を解決するための手段】
本発明の周辺処理装置負荷分散方式は、複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、それぞれ下記のaおよびbに示すような機能群を備えるホストコンピュータおよび周辺処理装置を有する。
【0011】
a.各ホストコンピュータは、自己が存在するホストコンピュータに接続されている全ての周辺処理装置の負荷状態を管理するための情報を有している周辺処理装置負荷状態管理表と、自己が存在するホストコンピュータが周辺装置に対して入出力要求を行う場合に、前記周辺処理装置負荷状態管理表の内容を基に、当該ホストコンピュータに接続されている全ての周辺処理装置の中で最も負荷の軽い周辺処理装置を使用周辺処理装置(今回の入出力処理で使用する周辺処理装置)として決定(選択)し、入出力要求であるI/Oコマンドから予測される負荷の変化を前記周辺処理装置負荷状態管理表に反映させた上で、当該使用周辺処理装置を使用して周辺装置へのI/Oコマンドの発行(入出力要求)を行うI/O発行機能と、周辺装置に対する入出力処理(入出力要求に対する処理)の実行結果(I/O実行結果)の通知を周辺処理装置から受信し、その実行結果を入出力要求者に報告するとともに、その実行結果を反映させて前記周辺処理装置負荷状態管理表の内容を更新するI/O終了処理機能と、周辺処理装置からの「負荷状態更新イベントを通知内容とするアテンション通知」を受信した場合に、そのアテンション通知内容を反映させて前記周辺処理装置負荷状態管理表の内容を更新するアテンション処理機能と、前記周辺処理装置負荷状態管理表の内容(各周辺処理装置に対する負荷情報)を参照・更新するために、前記I/O発行機能,前記I/O終了処理機能,および前記アテンション処理機能によって使用される周辺処理装置負荷情報参照更新機能とを備える。
【0012】
b.各周辺処理装置は、自己が存在する周辺処理装置が現在実行中の入出力処理による負荷状態を管理する負荷情報管理表と、ホストコンピュータからの入出力要求であるI/Oコマンド(ホストコンピュータから発行されたI/Oコマンド)を解析するI/Oコマンド解析機能と、前記I/Oコマンド解析機能によるI/Oコマンドの解析結果を基に、周辺装置に対する当該I/Oコマンドの実行を行うI/Oコマンド実行機能と、自己が存在する周辺処理装置による周辺装置に対する入出力処理が完了すると、その入出力結果を示すイベント通知であるI/O終了通知を当該入出力要求の要求元のホストコンピュータに発行するI/O実行結果通知機能と、前記I/Oコマンド解析機能によるI/Oコマンドの解析結果を基に、当該I/Oコマンド(入出力要求)に対する入出力処理を実行することで増加する負荷を算出するI/O負荷算出機能と、前記I/Oコマンド実行機能によるI/Oコマンドの実行時に前記I/O負荷算出機能によって算出された負荷の増加を反映させて前記負荷情報管理表を更新し、前記I/O実行結果通知機能によるI/O終了通知の発行時に周辺装置に対する入出力処理の完了による当該負荷の減少を反映させて前記負荷情報管理表を更新する負荷情報更新機能と、前記負荷情報更新機能による前記負荷情報管理表の更新を契機として、負荷状態更新イベントを通知内容とするアテンション通知を、自己が存在する周辺処理装置が接続されている全てのホストコンピュータのうちの今回の入出力要求の要求元のホストコンピュータ以外の全てのホストコンピュータに報告するアテンション通知機能とを備える。
【0013】
なお、本発明の周辺処理装置負荷分散方式は、より一般的には、複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、周辺装置に対する入出力処理の実行の開始/終了に起因する自己の負荷状態の変化を自己が接続している全てのホストコンピュータに通知する各周辺処理装置と、自己が接続している全ての周辺処理装置の各々の負荷情報を管理し、当該各周辺処理装置からの「負荷状態の変化(更新状況)を示す通知」に基づいて当該負荷情報を更新し、当該負荷情報に基づいて使用周辺処理装置を決定することにより、当該コンピュータシステム全体で考えた場合において特定の周辺処理装置に負荷が集中しないように入出力処理の負荷分散制御を行う各ホストコンピュータとを有すると表現することができる。
【0014】
また、本発明は、複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、各周辺処理装置を、周辺装置に対する入出力処理の実行の開始/終了に起因する自己の負荷状態の変化を自己が接続している全てのホストコンピュータに通知するように機能させるための周辺処理装置用プログラムと、各ホストコンピュータを、自己が接続している全ての周辺処理装置の各々の負荷情報を管理し、当該各周辺処理装置からの「負荷状態の変化を示す通知」に基づいて当該負荷情報を更新し、当該負荷情報に基づいて使用周辺処理装置を決定することにより、当該コンピュータシステム全体で考えた場合において特定の周辺処理装置に負荷が集中しないように入出力処理の負荷分散制御を行うように機能させるためのホストコンピュータ用プログラムとを有する周辺処理装置負荷分散方式として実現することも可能である。
【0015】
【発明の実施の形態】
次に、本発明について図面を参照して詳細に説明する。
【0016】
(1) 第1の実施の形態
【0017】
図1は、本発明の第1の実施の形態に係る周辺処理装置負荷分散方式の構成を示すブロック図である。
【0018】
図1を参照すると、本実施の形態に係る周辺処理装置負荷分散方式は、複数のホストコンピュータ10と、複数の周辺処理装置20と、周辺装置30とを含んで構成されるコンピュータシステムに適用される。なお、図1におけるホストコンピュータ10,周辺処理装置20,および周辺装置30の数はあくまでも例示である。また、図1中の2つのホストコンピュータ10について、両者を区別する必要がある場合には、一方を「10−1」で示し、他方を「10−2」で示す(周辺処理装置20についても、同様に、必要な際には、「20−1」と「20−2」とで区別する)。
【0019】
ホストコンピュータ10は、周辺処理装置負荷状態管理表11と、周辺処理装置負荷情報参照更新機能12と、I/O発行機能13と、I/O終了処理機能14と、アテンション処理機能15とを含んで構成されている。
【0020】
周辺処理装置負荷状態管理表11は、自己が存在するホストコンピュータ10に接続されている全ての周辺処理装置20の負荷状態を管理するための情報を有している。
【0021】
周辺処理装置負荷情報参照更新機能12は、周辺処理装置負荷状態管理表11の内容(各周辺処理装置20に対する負荷情報)を参照・更新するために、I/O発行機能13,I/O終了処理機能14,およびアテンション処理機能15によって使用される。
【0022】
I/O発行機能13は、自己が存在するホストコンピュータ10が周辺装置30に対して入出力要求を行う場合に、周辺処理装置負荷状態管理表11の内容を基に、当該ホストコンピュータ10に接続されている全ての周辺処理装置20の中で最も負荷の軽い周辺処理装置20を使用周辺処理装置(今回の入出力処理で使用する周辺処理装置20)として決定(選択)し、入出力要求であるI/Oコマンドから予測される負荷の変化を周辺処理装置負荷状態管理表11に反映させた上で、当該使用周辺処理装置を使用して周辺装置30に入出力要求(I/Oコマンドの発行)を行う。
【0023】
I/O終了処理機能14は、周辺装置30に対する入出力処理(入出力要求に対する処理)の実行結果(I/O実行結果)の通知を周辺処理装置20から受信し、その実行結果を入出力要求者に報告するとともに、その実行結果を反映させて周辺処理装置負荷状態管理表11の内容を更新する。
【0024】
アテンション処理機能15は、周辺処理装置20からのアテンション通知を受信し、その通知内容に対応した処理を行う。ここで、そのアテンション通知が負荷状態更新イベントを通知内容とするアテンション通知である場合には、そのアテンション通知内容を反映させて周辺処理装置負荷状態管理表11の内容を更新する。
【0025】
周辺処理装置20は、1台以上のホストコンピュータ10に接続されており、I/Oコマンド解析機能21と、I/Oコマンド実行機能22と、I/O実行結果通知機能23と、I/O負荷算出機能24と、負荷情報管理表25と、負荷情報更新機能26と、アテンション通知機能27とを含んで構成されている。
【0026】
I/Oコマンド解析機能21は、ホストコンピュータ10からの入出力要求であるI/Oコマンド(ホストコンピュータ10から発行されたI/Oコマンド)を解析する。
【0027】
I/Oコマンド実行機能22は、I/Oコマンド解析機能21により解析された結果(I/Oコマンドの解析結果)を基に、周辺装置30に対する入出力処理(当該I/Oコマンドの実行)を行う。
【0028】
I/O実行結果通知機能23は、自己が存在する周辺処理装置20による周辺装置30に対する入出力処理が完了すると、その結果(入出力結果)を示すイベント通知(I/O終了通知)を当該入出力要求の要求元のホストコンピュータ10に発行する。
【0029】
I/O負荷算出機能24は、I/Oコマンド解析機能21により解析された結果(I/Oコマンドの解析結果)を基に、当該I/Oコマンド(入出力要求)に対する入出力処理を実行することで増加する負荷を算出する。
【0030】
負荷情報管理表25は、自己が存在する周辺処理装置20が現在実行中の入出力処理による負荷状態を管理する。
【0031】
負荷情報更新機能26は、I/Oコマンド実行機能22によるI/Oコマンドの実行時にI/O負荷算出機能24によって算出された負荷の増加を反映させて負荷情報管理表25を更新する。また、I/O実行結果通知機能23によるI/O終了通知の発行時に周辺装置30に対する入出力処理の完了(当該負荷の減少)を反映させて負荷情報管理表25を更新する。
【0032】
アテンション通知機能27は、負荷情報更新機能26からの指示(負荷情報管理表25が更新された旨の通知)を契機として、負荷状態が変わったことを示すイベント通知(負荷状態更新イベントを通知内容とするアテンション通知)を、自己が存在する周辺処理装置20が接続されている全てのホストコンピュータ10(当該入出力要求の要求元のホストコンピュータ10を除く)に発行(報告)する。すなわち、自己が存在する周辺処理装置20と周辺装置30との間の入出力処理の開始時および完了時に、負荷情報更新機能26からの指示により、自己が存在する周辺処理装置20が接続されている全てのホストコンピュータ10のうちの入出力要求の要求元のホストコンピュータ10以外の全てのホストコンピュータ10に、当該周辺処理装置20の負荷状態が変わったことを、アテンション通知として報告する。
【0033】
複数の周辺処理装置20に接続されている周辺装置30は、周辺処理装置20からの入出力要求(I/Oコマンド)に従って入出力処理を行い、その処理結果を要求元の周辺処理装置20に返却する。
【0034】
図2は、本実施の形態に係る周辺処理装置負荷分散方式におけるI/O発行処理を示す流れ図(フローチャート)である。この処理は、周辺処理装置負荷情報取得ステップ201と、使用周辺処理装置決定ステップ202と、周辺処理装置負荷情報更新ステップ203と、I/Oコマンド発行ステップ204とからなる。
【0035】
図3は、本実施の形態に係る周辺処理装置負荷分散方式におけるI/Oコマンド実行処理を示す流れ図である。この処理は、I/Oコマンド解析ステップ301と、I/O負荷算出ステップ302と、負荷情報更新処理ステップ303と、I/Oコマンド実行ステップ304と、I/O実行結果イベント作成ステップ305と、負荷情報更新処理ステップ306と、I/O実行結果通知ステップ307とからなる。
【0036】
図4は、図3中の負荷情報更新処理ステップ303/306の詳細な処理を示す流れ図である。この処理は、負荷情報管理表更新ステップ401と、複数ホストコンピュータ接続判定ステップ402と、負荷状態更新イベント作成ステップ403と、アテンション通知ステップ404と、全ホストコンピュータ通知済判定ステップ405とからなる。
【0037】
図5は、本実施の形態に係る周辺処理装置負荷分散方式におけるアテンション処理(周辺処理装置20からアテンション通知を受け取った時のホストコンピュータ10の処理)を示す流れ図である。この処理は、アテンション通知内容判定ステップ501と、周辺処理装置負荷情報更新ステップ502と、アテンション通知報告ステップ503とからなる。
【0038】
図6は、本実施の形態に係る周辺処理装置負荷分散方式におけるI/O終了処理(周辺処理装置20からI/O実行結果通知を受け取った時のホストコンピュータ10の処理)を示す流れ図である。この処理は、周辺処理装置負荷情報更新ステップ601と、I/O終了通知報告ステップ602とからなる。
【0039】
図7は、ホストコンピュータ10内の周辺処理装置負荷状態管理表11の情報内容の一例を示す図である。あるホストコンピュータ10内の周辺処理装置負荷状態管理表11には、例えば、当該ホストコンピュータ10に接続されている各周辺処理装置20に対して、当該周辺処理装置20の識別情報を示す周辺処理装置ID(IDentification)と、当該周辺処理装置20に接続されている周辺装置30を示す接続周辺装置情報と、現時点での当該周辺処理装置20の負荷状態を示す負荷情報とを有する各エントリが設けられている。
【0040】
次に、図1〜図7を参照して、上記のように構成された本実施の形態に係る周辺処理装置負荷分散方式の全体の動作について詳細に説明する。
【0041】
ここでは、ホストコンピュータ10−1に、入出力要求者からの「周辺装置30に対する入出力要求(I/O実行要求)」が行われた場合の動作について説明する。
【0042】
ホストコンピュータ10−1内のI/O発行機能13は、周辺装置30に対する入出力要求を受け付けると、図2の流れ図に示す態様で、以下のようなI/O発行処理を行う。
【0043】
まず、周辺処理装置負荷情報参照更新機能12を使用して、ホストコンピュータ10−1内の周辺処理装置負荷状態管理表11(図7参照)から、ホストコンピュータ10−1に接続されており、かつ、周辺装置30に接続されている全ての周辺処理装置20の負荷情報を取得する(ステップ201)。
【0044】
そして、ステップ201で負荷情報を取得した全ての周辺処理装置20の中で現時点で最も負荷の軽い周辺処理装置20(ここでは、周辺処理装置20−1であるものとする)を、本入出力処理(今回の入出力要求に基づく入出力処理)で使用する周辺処理装置20(使用周辺処理装置)として決定する(ステップ202)。
【0045】
続いて、入出力要求であるI/Oコマンドの内容から本入出力処理を行うことで増加する負荷を認識し、周辺処理装置負荷情報参照更新機能12を使用して、当該「負荷の増加」を反映させて周辺処理装置負荷状態管理表11の内容(使用周辺処理装置の負荷情報)を更新する(ステップ203)。
【0046】
最後に、ステップ202で決定した使用周辺処理装置(周辺処理装置20−1)に対して、I/Oコマンドを発行する(ステップ204)。これによって、このI/O発行処理が終了する。
【0047】
ホストコンピュータ10(ここでは、ホストコンピュータ10−1)から発行されたI/Oコマンドを受け付けた周辺処理装置20(ここでは、周辺処理装置20−1)は、図3の流れ図に示す態様で、以下のようなI/Oコマンド実行処理を行い、その処理結果(I/O実行結果)を当該ホストコンピュータ10に返却する。
【0048】
まず、周辺処理装置20−1内のI/Oコマンド解析機能21は、ホストコンピュータ10からの入出力要求(I/Oコマンド)の解析を行う(ステップ301)。
【0049】
I/O負荷算出機能24は、I/Oコマンド解析機能21の指示により、ステップ301におけるI/Oコマンド解析機能21による解析結果を基に、本入出力処理によるI/O負荷を算出する(ステップ302)。
【0050】
I/Oコマンド解析機能21は、ステップ301における解析結果とステップ302で算出されたI/O負荷とを、I/Oコマンド実行機能22に渡す。
【0051】
I/Oコマンド実行機能22は、I/Oコマンド解析機能21から受け取った情報に基づき、負荷情報更新機能26を使用して負荷情報更新処理を行い(ステップ303)、当該I/Oコマンドに従って周辺装置30に対する入出力処理(当該I/Oコマンドの実行)を行う(ステップ304)。なお、ステップ303の負荷情報更新処理の詳細は後述する。
【0052】
ステップ304の入出力処理が終わると、周辺処理装置20−1内のI/O実行結果通知機能23に、その処理結果が渡される。
【0053】
I/O実行結果通知機能23は、入出力処理の要求元のホストコンピュータ10(ここでは、ホストコンピュータ10−1)に通知するI/O実行結果イベント(当該入出力処理の実行結果を示すイベント)を作成し(ステップ305)、負荷情報更新機能26を使用して入出力処理終了に伴う負荷情報更新処理を行う(ステップ306)。なお、ステップ306の負荷情報更新処理の詳細は後述する。
【0054】
最後に、I/O実行結果通知機能23は、ホストコンピュータ10−1に、ステップ305で作成したI/O実行結果イベントの通知(I/O実行結果通知)を発行する(ステップ307)。なお、このI/O実行結果通知には、入出力処理が終了したことによる周辺処理装置20−1の負荷状態の変化を示す情報が含まれている。
【0055】
ここで、図3のステップ303またはステップ306における「負荷情報更新機能26による負荷情報更新処理」の詳細について、図4の流れ図を参照して説明する。
【0056】
負荷情報更新機能26は、I/Oコマンド実行機能22からの要求(ステップ303の場合)またはI/O実行結果通知機能23からの要求(ステップ306の場合)に応じて、以下のような負荷情報更新処理を行う。
【0057】
まず、I/Oコマンド実行機能22からの要求であれば負荷を加算する方向に、I/O実行結果通知機能23からの要求であれば負荷を減算する方向に、負荷情報管理表25の内容(自己が存在する周辺処理装置20(ここでは、周辺処理装置20−1)の現時点での負荷状態を示す情報)を更新する(ステップ401)。
【0058】
続いて、自己が存在する周辺処理装置20が何台のホストコンピュータ10に接続されているかをチェックし、複数台のホストコンピュータ10に接続されているか否かを判定する(ステップ402)。
【0059】
ステップ402で「複数台のホストコンピュータ10には接続されていない(1台のホストコンピュータ10のみに接続されている)」と判定した場合には、今回の負荷情報更新処理を終了する。
【0060】
一方、ステップ402で「複数台のホストコンピュータ10に接続されている」と判定した場合(周辺処理装置20−1に関してはこの場合に該当する)には、負荷状態の更新状況を通知するためのイベント(負荷状態更新イベント)を作成する(ステップ403)。
【0061】
さらに、自己が存在する周辺処理装置20に接続されている全てのホストコンピュータ10(今回の入出力要求の要求元のホストコンピュータ10を除く)の各々について繰り返し(ステップ405で「当該周辺処理装置20に接続されている全てのホストコンピュータ10(当該入出力要求の要求元のホストコンピュータ10を除く)に対して通知済である」と判定するまで)、アテンション通知機能27を使用して、負荷状態更新イベントの通知であるアテンション通知を行う(ステップ404)。そして、ステップ405で「全てのコンピュータ10に対して通知済である」と判定した場合には、今回の負荷情報更新処理を終了する。なお、ここでは、ホストコンピュータ10−2に対して、当該アテンション通知が行われる。
【0062】
周辺処理装置20(ここでは、周辺処理装置20−1)からアテンション通知(負荷状態更新イベントを通知内容とするアテンション通知である場合もあり、その他のイベントを通知内容とするアテンション通知である場合もある)を受け取った各ホストコンピュータ10内のアテンション処理機能15は、図5の流れ図に示す態様で、以下のようなアテンション処理を行う。
【0063】
まず、受け取ったアテンション通知によって示されるイベント内容が負荷状態更新イベントであるか否かをチェックする(ステップ501)。
【0064】
ステップ501で「当該アテンション通知によって示されるイベント内容が負荷状態更新イベントである」と判定した場合には、周辺処理装置負荷情報参照更新機能12を使用して、当該負荷状態更新イベントの内容に合わせて周辺処理装置負荷状態管理表11の内容(アテンション通知の通知元の周辺処理装置20の負荷情報)の更新を行う(ステップ502)。
【0065】
一方、ステップ501で「当該アテンション通知によって示されるイベント内容が負荷状態更新イベントではない」と判定した場合には、当該アテンション通知の内容に応じて、自己が存在するホストコンピュータ10内の該当するコンポーネントに当該アテンション通知を転送(報告)する(ステップ503)。
【0066】
周辺処理装置20(ここでは、周辺処理装置20−1)からI/O実行結果通知を受け取ったホストコンピュータ10(ここでは、ホストコンピュータ10−1)内のI/O終了処理機能14は、図6の流れ図に示す態様で、以下のようなI/O終了処理を行う。
【0067】
まず、周辺処理装置負荷情報参照更新機能12を使用して、受信したI/O実行結果通知におけるI/O実行結果イベントの内容に基づき、入出力処理が終了したことで減じられた負荷を反映させて、周辺処理装置負荷状態管理表11内の周辺処理装置負荷情報(I/O実行結果通知の通知元の周辺処理装置20の負荷情報)を更新する(ステップ601)。
【0068】
その上で、当該I/O実行結果を示すI/O終了通知を入出力要求者に報告する(ステップ602)。
【0069】
以上のようにして、複数のホストコンピュータ10に接続されている周辺処理装置20の負荷状態の変化(更新状況)が、アテンション通知やI/O実行結果通知によって、各ホストコンピュータ10に伝えられることとなる。これによって、コンピュータシステムを構成する全てのホストコンピュータ10が、同じように、周辺処理装置20の負荷状態を認識できるようになる。この結果、当該コンピュータシステム全体で考えた場合に、特定の周辺処理装置20に負荷が集中しないように負荷分散制御を行うことが可能になる。
【0070】
(2) 第2の実施の形態
【0071】
図8は、本発明の第2の実施の形態に係る周辺処理装置負荷分散方式の構成を示すブロック図である。
【0072】
図8を参照すると、本発明の第2の実施の形態に係る周辺処理装置負荷分散方式は、図1に示した第1の実施の形態に係る周辺処理装置負荷分散方式に対して、ホストコンピュータ用プログラム810および周辺処理装置用プログラム820を備える点が異なっている。
【0073】
ホストコンピュータ用プログラム810は、各ホストコンピュータ10に読み込まれ、当該各ホストコンピュータ10の動作を周辺処理装置負荷状態管理表11,周辺処理装置負荷情報参照更新機能12,I/O発行機能13,I/O終了処理機能14,およびアテンション処理機能15として制御する。ホストコンピュータ用プログラム810の制御による各ホストコンピュータ10の動作は、第1の実施の形態における各ホストコンピュータ10内の周辺処理装置負荷状態管理表11,周辺処理装置負荷情報参照更新機能12,I/O発行機能13,I/O終了処理機能14,およびアテンション処理機能15の動作と全く同様になるので、その詳しい説明を割愛する。
【0074】
また、周辺処理装置用プログラム820は、各周辺処理装置20に読み込まれ、当該各周辺処理装置20の動作をI/Oコマンド解析機能21,I/Oコマンド実行機能22,I/O実行結果通知機能23,I/O負荷算出機能24,負荷情報管理表25,負荷情報更新機能26,およびアテンション通知機能27として制御する。周辺処理装置用プログラム820の制御による各周辺処理装置20の動作は、第1の実施の形態における各周辺処理装置20内のI/Oコマンド解析機能21,I/Oコマンド実行機能22,I/O実行結果通知機能23,I/O負荷算出機能24,負荷情報管理表25,負荷情報更新機能26,およびアテンション通知機能27の動作と全く同様になるので、その詳しい説明を割愛する。
【0075】
【発明の効果】
以上説明したように、本発明によると、周辺処理装置が複数のホストコンピュータに接続されているコンピュータシステムにおいても、当該複数のホストコンピュータに接続される周辺処理装置の負荷状態の変化(更新状況)を各ホストコンピュータに通知する機能を各周辺処理装置内に設けること等により、当該コンピュータシステム全体で考えた場合における周辺処理装置に対する負荷の平準化を実現することができるという効果が生じる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る周辺処理装置負荷分散方式の構成を示すブロック図である。
【図2】図1に示す周辺処理装置負荷分散方式におけるI/O発行処理を示す流れ図である。
【図3】図1に示す周辺処理装置負荷分散方式におけるI/Oコマンド実行処理を示す流れ図である。
【図4】図3中の負荷情報更新処理ステップの詳細な処理を示す流れ図である。
【図5】図1に示す周辺処理装置負荷分散方式におけるアテンション処理を示す流れ図である。
【図6】図1に示す周辺処理装置負荷分散方式におけるI/O終了処理を示す流れ図である。
【図7】図1中の周辺処理装置負荷状態管理表の情報内容の一例を示す図である。
【図8】本発明の第2の実施の形態に係る周辺処理装置負荷分散方式の構成を示すブロック図である。
【符号の説明】
10 ホストコンピュータ
11 周辺処理装置負荷状態管理表
12 周辺処理装置負荷情報参照更新機能
13 I/O発行機能
14 I/O終了処理機能
15 アテンション処理機能
20 周辺処理装置
21 I/Oコマンド解析機能
22 I/Oコマンド実行機能
23 I/O実行結果通知機能
24 I/O負荷算出機能
25 負荷情報管理表
26 負荷情報更新機能
27 アテンション通知機能
30 周辺装置
810 ホストコンピュータ用プログラム
820 周辺処理装置用プログラム
Claims (7)
- 複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、
周辺装置に対する入出力処理の実行の開始/終了に起因する自己の負荷状態の変化を自己が接続している全てのホストコンピュータに通知する各周辺処理装置と、
自己が接続している全ての周辺処理装置の各々の負荷情報を管理し、当該各周辺処理装置からの「負荷状態の変化を示す通知」に基づいて当該負荷情報を更新し、当該負荷情報に基づいて使用周辺処理装置を決定することにより、当該コンピュータシステム全体で考えた場合において特定の周辺処理装置に負荷が集中しないように入出力処理の負荷分散制御を行う各ホストコンピュータと
を有することを特徴とする周辺処理装置負荷分散方式。 - 自己が存在するホストコンピュータに接続されている全ての周辺処理装置の負荷状態を管理するための情報を有している周辺処理装置負荷状態管理表と、
自己が存在するホストコンピュータが周辺装置に対して入出力要求を行う場合に、前記周辺処理装置負荷状態管理表の内容を基に、当該ホストコンピュータに接続されている全ての周辺処理装置の中で最も負荷の軽い周辺処理装置を使用周辺処理装置として決定し、入出力要求であるI/Oコマンドから予測される負荷の変化を前記周辺処理装置負荷状態管理表に反映させた上で、当該使用周辺処理装置を使用して周辺装置へのI/Oコマンドの発行を行うI/O発行機能と、
周辺装置に対する入出力処理の実行結果の通知を周辺処理装置から受信し、その実行結果を入出力要求者に報告するとともに、その実行結果を反映させて前記周辺処理装置負荷状態管理表の内容を更新するI/O終了処理機能と、
周辺処理装置からの「負荷状態更新イベントを通知内容とするアテンション通知」を受信した場合に、そのアテンション通知内容を反映させて前記周辺処理装置負荷状態管理表の内容を更新するアテンション処理機能と、
前記周辺処理装置負荷状態管理表の内容を参照・更新するために、前記I/O発行機能,前記I/O終了処理機能,および前記アテンション処理機能によって使用される周辺処理装置負荷情報参照更新機能と
を含んで構成されているホストコンピュータを有することを特徴とする請求項1記載の周辺処理装置負荷分散方式。 - 自己が存在する周辺処理装置が現在実行中の入出力処理による負荷状態を管理する負荷情報管理表と、
ホストコンピュータからの入出力要求であるI/Oコマンドを解析するI/Oコマンド解析機能と、
前記I/Oコマンド解析機能によるI/Oコマンドの解析結果を基に、周辺装置に対する当該I/Oコマンドの実行を行うI/Oコマンド実行機能と、
自己が存在する周辺処理装置による周辺装置に対する入出力処理が完了すると、その入出力結果を示すイベント通知であるI/O終了通知を当該入出力要求の要求元のホストコンピュータに発行するI/O実行結果通知機能と、
前記I/Oコマンド解析機能によるI/Oコマンドの解析結果を基に、当該I/Oコマンドに対する入出力処理を実行することで増加する負荷を算出するI/O負荷算出機能と、
前記I/Oコマンド実行機能によるI/Oコマンドの実行時に前記I/O負荷算出機能によって算出された負荷の増加を反映させて前記負荷情報管理表を更新し、前記I/O実行結果通知機能によるI/O終了通知の発行時に周辺装置に対する入出力処理の完了による当該負荷の減少を反映させて前記負荷情報管理表を更新する負荷情報更新機能と、
前記負荷情報更新機能による前記負荷情報管理表の更新を契機として、負荷状態更新イベントを通知内容とするアテンション通知を、自己が存在する周辺処理装置が接続されている全てのホストコンピュータのうちの今回の入出力要求の要求元のホストコンピュータ以外の全てのホストコンピュータに報告するアテンション通知機能と
を含んで構成されている周辺処理装置を有することを特徴とする請求項1記載の周辺処理装置負荷分散方式。 - 請求項2に記載した構成を持つホストコンピュータと、請求項3に記載した構成を持つ周辺処理装置とを有することを特徴とする請求項1記載の周辺処理装置負荷分散方式。
- ホストコンピュータ内の周辺処理装置負荷状態管理表が「当該ホストコンピュータに接続されている各周辺処理装置に対して、当該周辺処理装置の識別情報を示す周辺処理装置IDと、当該周辺処理装置に接続されている周辺装置を示す接続周辺装置情報と、現時点での当該周辺処理装置の負荷状態を示す負荷情報とを有する各エントリが設けられている管理表」であることを特徴とする請求項2または請求項4記載の周辺処理装置負荷分散方式。
- 複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、
各周辺処理装置を、周辺装置に対する入出力処理の実行の開始/終了に起因する自己の負荷状態の変化を自己が接続している全てのホストコンピュータに通知するように機能させるための周辺処理装置用プログラムと、
各ホストコンピュータを、自己が接続している全ての周辺処理装置の各々の負荷情報を管理し、当該各周辺処理装置からの「負荷状態の変化を示す通知」に基づいて当該負荷情報を更新し、当該負荷情報に基づいて使用周辺処理装置を決定することにより、当該コンピュータシステム全体で考えた場合において特定の周辺処理装置に負荷が集中しないように入出力処理の負荷分散制御を行うように機能させるためのホストコンピュータ用プログラムと
を有することを特徴とする周辺処理装置負荷分散方式。 - 複数のホストコンピュータおよび複数の周辺処理装置が存在し周辺処理装置が複数のホストコンピュータに接続されうるコンピュータシステムにおいて、
各周辺処理装置を、自己が存在する周辺処理装置が現在実行中の入出力処理による負荷状態を管理する負荷情報管理表,ホストコンピュータからの入出力要求であるI/Oコマンドを解析するI/Oコマンド解析機能,前記I/Oコマンド解析機能によるI/Oコマンドの解析結果を基に、周辺装置に対する当該I/Oコマンドの実行を行うI/Oコマンド実行機能,自己が存在する周辺処理装置による周辺装置に対する入出力処理が完了すると、その入出力結果を示すイベント通知であるI/O終了通知を当該入出力要求の要求元のホストコンピュータに発行するI/O実行結果通知機能,前記I/Oコマンド解析機能によるI/Oコマンドの解析結果を基に、当該I/Oコマンドに対する入出力処理を実行することで増加する負荷を算出するI/O負荷算出機能,前記I/Oコマンド実行機能によるI/Oコマンドの実行時に前記I/O負荷算出機能によって算出された負荷の増加を反映させて前記負荷情報管理表を更新し、前記I/O実行結果通知機能によるI/O終了通知の発行時に周辺装置に対する入出力処理の完了による当該負荷の減少を反映させて前記負荷情報管理表を更新する負荷情報更新機能,および前記負荷情報更新機能による前記負荷情報管理表の更新を契機として、負荷状態更新イベントを通知内容とするアテンション通知を、自己が存在する周辺処理装置が接続されている全てのホストコンピュータのうちの今回の入出力要求の要求元のホストコンピュータ以外の全てのホストコンピュータに報告するアテンション通知機能として動作させるための周辺処理装置用プログラムと、
各ホストコンピュータを、自己が存在するホストコンピュータに接続されている全ての周辺処理装置の負荷状態を管理するための情報を有している周辺処理装置負荷状態管理表,自己が存在するホストコンピュータが周辺装置に対して入出力要求を行う場合に、前記周辺処理装置負荷状態管理表の内容を基に、当該ホストコンピュータに接続されている全ての周辺処理装置の中で最も負荷の軽い周辺処理装置を使用周辺処理装置として決定し、入出力要求であるI/Oコマンドから予測される負荷の変化を前記周辺処理装置負荷状態管理表に反映させた上で、当該使用周辺処理装置を使用して周辺装置へのI/Oコマンドの発行を行うI/O発行機能,周辺装置に対する入出力処理の実行結果の通知を周辺処理装置から受信し、その実行結果を入出力要求者に報告するとともに、その実行結果を反映させて前記周辺処理装置負荷状態管理表の内容を更新するI/O終了処理機能,周辺処理装置からの「負荷状態更新イベントを通知内容とするアテンション通知」を受信した場合に、そのアテンション通知内容を反映させて前記周辺処理装置負荷状態管理表の内容を更新するアテンション処理機能,ならびに前記周辺処理装置負荷状態管理表の内容を参照・更新するために、前記I/O発行機能,前記I/O終了処理機能,および前記アテンション処理機能によって使用される周辺処理装置負荷情報参照更新機能として動作させるためのホストコンピュータ用プログラムと
を有することを特徴とする周辺処理装置負荷分散方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002166588A JP2004013555A (ja) | 2002-06-07 | 2002-06-07 | 周辺処理装置負荷分散方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002166588A JP2004013555A (ja) | 2002-06-07 | 2002-06-07 | 周辺処理装置負荷分散方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004013555A true JP2004013555A (ja) | 2004-01-15 |
Family
ID=30434094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002166588A Pending JP2004013555A (ja) | 2002-06-07 | 2002-06-07 | 周辺処理装置負荷分散方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004013555A (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04268655A (ja) * | 1991-02-22 | 1992-09-24 | Nec Corp | 入出力負荷分散制御方式 |
JPH11250020A (ja) * | 1998-03-04 | 1999-09-17 | Fujitsu Ltd | 負荷分散システム、セション管理システム、クライアント装置、負荷分散プログラムを記録したコンピュータ読み取り可能な記録媒体、セション管理プログラムを記録したコンピュータ読み取り可能な記録媒体及びローカル代理サーバプログラムを記録したコンピュータ読み取り可能な記録媒体 |
-
2002
- 2002-06-07 JP JP2002166588A patent/JP2004013555A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04268655A (ja) * | 1991-02-22 | 1992-09-24 | Nec Corp | 入出力負荷分散制御方式 |
JPH11250020A (ja) * | 1998-03-04 | 1999-09-17 | Fujitsu Ltd | 負荷分散システム、セション管理システム、クライアント装置、負荷分散プログラムを記録したコンピュータ読み取り可能な記録媒体、セション管理プログラムを記録したコンピュータ読み取り可能な記録媒体及びローカル代理サーバプログラムを記録したコンピュータ読み取り可能な記録媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4621087B2 (ja) | 複数のインスタンスアプリケーションに対し負荷分散装置を動作させるシステムおよび方法 | |
US8782657B2 (en) | Dynamic creation and destruction of IO resources based on actual load and resource availability | |
JP5998206B2 (ja) | クラスタデータグリッドにおける拡張可能な中央集中型動的リソース分散 | |
US20080229320A1 (en) | Method, an apparatus and a system for controlling of parallel execution of services | |
US10528119B2 (en) | Dynamic power routing to hardware accelerators | |
US20090228889A1 (en) | Storage medium storing job management program, information processing apparatus, and job management method | |
US8589538B2 (en) | Storage workload balancing | |
JP2011123881A (ja) | 一連の従属関係が予め定められたアクティビティを有するワークフローの複数のタスクサーバ上での実行 | |
JPWO2008062864A1 (ja) | 仮想マシン配置システム、仮想マシン配置方法、プログラム、仮想マシン管理装置およびサーバ装置 | |
JP4811830B1 (ja) | コンピュータリソース制御システム | |
KR20090098812A (ko) | 시스템, 부하 분산 방법 및 부하 분산 장치 | |
CN103744734A (zh) | 一种任务作业处理方法、装置及系统 | |
US7925922B2 (en) | Failover method and system for a computer system having clustering configuration | |
KR20200080458A (ko) | 클라우드 멀티-클러스터 장치 | |
JP2008108261A (ja) | 予備計算容量の追加を選択的に制御するシステム及び方法 | |
JP2007047863A (ja) | 記憶装置の記憶領域を構成する各記憶領域単位毎にアクセス排他制御を行うストレージシステム及び記憶制御方法 | |
JP5355592B2 (ja) | ハイブリッド型のコンピューティング環境を管理するためのシステムおよび方法 | |
US10587680B2 (en) | Efficient transaction level workload management across multi-tier heterogeneous middleware clusters | |
Schneider et al. | Dynamic load balancing for ordered data-parallel regions in distributed streaming systems | |
Stojkovic et al. | EcoFaaS: Rethinking the Design of Serverless Environments for Energy Efficiency | |
JP4402624B2 (ja) | 負荷管理装置および負荷管理方法 | |
JP5758358B2 (ja) | 仮想マシンシステム及びその高速ライブマイグレーション方法 | |
JP2004013555A (ja) | 周辺処理装置負荷分散方式 | |
JP2010231601A (ja) | グリッドコンピューティングシステム、リソース制御方法およびリソース制御プログラム | |
US20140215473A1 (en) | Objectives of operations executing across environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050124 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050307 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050915 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051018 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060530 |