JP5218252B2 - バススイッチ,コンピュータシステム及びコンピュータシステムの管理方法 - Google Patents
バススイッチ,コンピュータシステム及びコンピュータシステムの管理方法 Download PDFInfo
- Publication number
- JP5218252B2 JP5218252B2 JP2009106365A JP2009106365A JP5218252B2 JP 5218252 B2 JP5218252 B2 JP 5218252B2 JP 2009106365 A JP2009106365 A JP 2009106365A JP 2009106365 A JP2009106365 A JP 2009106365A JP 5218252 B2 JP5218252 B2 JP 5218252B2
- Authority
- JP
- Japan
- Prior art keywords
- memory access
- memory
- server
- access request
- unit
- 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.)
- Active
Links
Images
Description
図1は、本技術を適用したコンピュータシステムの一実施形態を示す。
2台の物理サーバ(以下「サーバ」という)10及び20は、スター型接続方式を採用するバススイッチとしてのPCI Expressスイッチ30(登録商標)を介して、ネットワークアダプタやハードディクスコントローラなどのI/Oデバイス40に接続される。サーバ10は、中央処理装置CPU,メモリMEM及びIOハブHUBを含む。また、サーバ10では、仮想化技術を具現化するハイパーバイザ12により、仮想的なコンピュータとしての少なくとも1台の仮想マシン(VM;Virtual Machine)14が構築される。仮想マシン14は、IOハブHUBに組み込まれたIOMMU(Input/Output Memory Management Unit)16を介して、ハイパーバイザ12により仮想化されたメモリアドレスを有するVMメモリ18とI/Oデバイス40との間でデータを直接授受できるようになっている。ここで、IOMMU16は、VMメモリ18のメモリアドレスとI/Oデバイス40のメモリアドレスを相互に変換するためのハードウエアである。サーバ20は、サーバ10と同一構成であるため、その説明は省略するものとする。また、サーバ10及び20は、仮想マシン制御のためハイパーバイザが使用する管理ネットワーク50に、NIC(Network Interface Controller)60を経由して接続されているものとする。
(1)パケット複製ユニット30Fが提供する複製機能
仮想マシン14を稼動させたままの移動では、移動中にも仮想マシン14及びI/Oデバイス40は動作を継続する。このため、ハイパーバイザ12及び22が協働して移動のための処理、例えば、VMメモリ18の内容をサーバ20に転送しているときにも、I/Oデバイス40から仮想マシン14のメモリ空間への書き込みを含んだメモリアクセスが発生する。このアクセスは、仮想マシン14とI/Oデバイス40との間で直接行われるものであり、ハイパーバイザ12が関与することができない。
(2)出力抑止ユニット30Gが提供する抑止機能
複製機能により、I/Oデバイス40からのメモリ書き込みを移動元サーバ10及び移動先サーバ20に行なったとしても、メモリ内容が不一致となる場合が想定される。例えば、移動元サーバ10のVMメモリ18からデータを読み出して移動先サーバ20に転送しているときに、I/Oデバイス40からのメモリ書き込みがあると、移動元サーバ10のVMメモリ18及び移動先サーバ20のVMメモリ28が上書きされる。その後、移動元サーバ10から移動先サーバ20にVMメモリ18のデータが到着すると、そのVMメモリ18は古いデータにより上書きされてしまうこととなる。
(3)複製除外ユニット30Hが提供する除外機能
CPUでは、特定アドレスに対するメモリ書き込みは、そのアドレス及びデータ内容に応じて割込みに変換するという機能が備えられている。仮想マシン14の移動中には、複製機能により、I/Oデバイス40からのメモリ書き込みは、移動元サーバ10及び移動先サーバ20に送信される。しかし、割込みは、移動元サーバ10及び移動先サーバ20の双方に送信することができない。なぜならば、仮想マシン14の移動中には、移動元サーバ10の仮想マシン14は割込みを処理できるが、移動先サーバ20の仮想マシン24は停止しているため割込みを処理できず、その起動後に割込みを処理することで、移動元及び移動先で二重に割込み処理してしまうおそれがあるためである。
ステップ5において、PCI Expressスイッチ30が、パケットの複製指示があるか否かを判定する。ここで、パケットの複製指示があるか否かは、例えば、パケット複製ユニット30Fに制御信号が入力されているか否かを介して判定することができる。そして、PCI Expressスイッチ30が、パケットの複製指示があればステップ6へと進む一方(Yes)、パケットの複製指示がなければステップ9へと進む(No)。
かかるPCI Expressスイッチ30によれば、I/Oデバイス40から入力バッファ30Cにパケットが到着すると、そのパケットにより書き込まれるメモリ領域がロック中であるか否か判定される。そして、メモリ領域がロック中であれば、そのロックが解除されるまで、入力バッファ30Cのキューからパケットが出力されることが抑止される。また、パケットの複製指示があり、かつ、そのパケットが複製対象(割込要求パケット以外)であれば、パケットが複製された後、各パケットの宛先にパケットが送出される。一方、パケットの複製指示がなく、又は、そのパケットが複製対象でない割込要求であれば、I/Oデバイス40から到着したパケットが宛先に送出される。
図4及び図5は、移動元サーバ10のハイパーバイザ12が、管理者などから仮想マシンの移動指示があったことを契機として実行する移動処理を示す。なお、仮想マシンの移動指示には、少なくとも、サーバ20に仮想マシンを移動させることを示す移動先情報が含まれている。
ステップ16では、ハイパーバイザ12が、管理ネットワーク50を介して、VMメモリ18から読み出したデータをパケット形式で移動先サーバ20に送信する。
ステップ20では、ハイパーバイザ12が、PCI Expressスイッチ30に対して、I/Oデバイス40から入力バッファ30Cに到着したパケットを移動先サーバ20に転送することを指示するための切替指示を出力する。
ステップ24では、ハイパーバイザ12が、移動先サーバ20から応答があったか否かを判定する。そして、ハイパーバイザ12が、移動先サーバ20から応答があれば処理をステップ25へと進める一方(Yes)、移動先サーバ20から応答がなければ処理を待機させる(No)。
ステップ28では、ハイパーバイザ12が、移動先サーバ20から応答があったか否かを判定する。そして、ハイパーバイザ12が、移動先サーバ20から応答があれば処理をステップ29へと進める一方(Yes)、移動先サーバ20から応答がなければ処理を待機させる(No)。
図6は、移動先サーバ20のハイパーバイザ22が、移動元サーバ10から仮想マシン移動を開始する通知を受けたことを契機として実行する移動処理を示す。
ステップ32では、ハイパーバイザ22が、VMメモリ28のメモリアドレスとI/Oデバイス40のメモリアドレスを相互に変換可能とすべく、IOハブHUBに組み込まれたIOMMU26を設定する。
ステップ34では、ハイパーバイザ22が、移動元サーバ10からパケットを受信したか否か、即ち、移動元サーバ10のVMメモリ18のデータを受信したか否かを判定する。そして、ハイパーバイザ22が、移動元サーバ10からパケットを受信したならば処理をステップ35へと進める一方(Yes)、移動元サーバ10からパケットを受信していなければ処理を待機させる(No)。なお、ハイパーバイザ22は、移動元サーバ10から長時間パケットが到着しないときに、処理が無限ループに陥ることを回避すべく、所定時間経過したときにループを抜け出るタイムアウト処理を平行して行うことが望ましい。
ステップ36では、ハイパーバイザ22が、PCI Expressスイッチ30の出力抑止ユニット30Gに対して、パケット出力抑止を解除する制御信号を出力する。
ステップ38では、ハイパーバイザ22が、移動元サーバ10からプロセッサ状態を受信したか否かを判定する。そして、ハイパーバイザ22が、プロセッサ状態を受信したならば処理をステップ39へと進める一方(Yes)、プロセッサ状態を受信していなければ処理をステップ34へと戻す(No)。
ステップ41では、ハイパーバイザ22が、管理ネットワーク50を介して、移動先サーバ10に仮想マシン24が起動されたことを示す応答を返信する。
以上の実施形態に関し、更に以下の付記を開示する。
12 ハイパーバイザ
14 仮想マシン
18 VMメモリ
20 サーバ(移動先サーバ)
22 ハイパーバイザ
24 仮想マシン
28 VMメモリ
30 PCI Expressスイッチ
30F パケット複製ユニット
30G 出力抑止ユニット
30H 複製除外ユニット
40 I/Oデバイス
Claims (5)
- 仮想マシンが稼動する複数のサーバと入出力デバイスとをスター型接続方式で接続するバススイッチであって、
前記入出力デバイスから一のサーバへのメモリアクセス要求を複製して、複数のサーバに同一内容のメモリアクセス要求を送信する複製ユニットと、
前記仮想マシンの移動元サーバから移動先サーバへと転送中のメモリアドレス領域に対するメモリアクセス要求を抑止する抑止ユニットと、
前記複製ユニットにより複製されるメモリアクセス要求のうち、割込みに係るメモリアクセス要求を複製対象から除外する複製除外ユニットと、
を含むことを特徴とするバススイッチ。 - 前記抑止ユニットは、前記入出力デバイスから一のサーバへのメモリアクセス要求を到着順にキューに順次蓄積することで、前記メモリアクセス要求を抑止することを特徴とする請求項1記載のバススイッチ。
- 前記複製除外ユニットは、指定アドレス領域に対するメモリアクセス要求を複製対象から除外することを特徴とする請求項1又は請求項2に記載のバススイッチ。
- 仮想マシンが稼動する複数のサーバと入出力デバイスとをスター型接続方式で接続するバススイッチと、
前記バススイッチを制御する制御手段と、
を含み、
前記バススイッチは、前記入出力デバイスから一のサーバへのメモリアクセス要求を複製して、複数のサーバに同一内容のメモリアクセス要求を送信する複製ユニットと、前記仮想マシンの移動元サーバから移動先サーバへと転送中のメモリアドレス領域に対するメモリアクセス要求を抑止する抑止ユニットと、前記複製ユニットにより複製されるメモリアクセス要求のうち、割込みに係るメモリアクセス要求を複製対象から除外する複製除外ユニットと、を備える一方、
前記制御手段は、前記仮想マシンの移動指示があったときに、前記メモリアクセス要求が移動元サーバ及び移動先サーバに送信されるように前記複製ユニットを制御した後、前記移動元サーバの仮想マシンに割り当てられているメモリの内容を移動先サーバに転送している間に、転送中のメモリアドレス領域に対するメモリアクセス要求が抑止されるように前記抑止ユニットを制御すると共に、割込みに係るメモリアクセス要求が複製対象から除外されるように前記複製除外ユニットを制御すること
を特徴とするコンピュータシステム。 - 仮想マシンが稼動する複数のサーバと入出力デバイスとの間に介在し、前記入出力デバイスから一のサーバへのメモリアクセス要求を複製して、複数のサーバに同一内容のメモリアクセス要求を送信する複製ユニットと、前記仮想マシンの移動元サーバから移動先サーバへと転送中のメモリアドレス領域に対するメモリアクセス要求を抑止する抑止ユニットと、前記複製ユニットにより複製されるメモリアクセス要求のうち、割込みに係るメモリアクセス要求を複製対象から除外する複製除外ユニットと、を備えたバススイッチを制御するコンピュータが、
前記仮想マシンの移動指示があったときに、前記メモリアクセス要求が移動元サーバ及び移動先サーバに送信されるように前記複製ユニットを制御するステップと、前記移動元サーバの仮想マシンに割り当てられているメモリの内容を移動先サーバに転送している間に、転送中のメモリアドレス領域に対するメモリアクセス要求が抑止されるように前記抑止ユニットを制御するステップと、割込みに係るメモリアクセス要求が複製対象から除外されるように前記複製除外ユニットを制御するステップと、
を実行することを特徴とするコンピュータシステムの管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009106365A JP5218252B2 (ja) | 2009-04-24 | 2009-04-24 | バススイッチ,コンピュータシステム及びコンピュータシステムの管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009106365A JP5218252B2 (ja) | 2009-04-24 | 2009-04-24 | バススイッチ,コンピュータシステム及びコンピュータシステムの管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010257209A JP2010257209A (ja) | 2010-11-11 |
JP5218252B2 true JP5218252B2 (ja) | 2013-06-26 |
Family
ID=43318043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009106365A Active JP5218252B2 (ja) | 2009-04-24 | 2009-04-24 | バススイッチ,コンピュータシステム及びコンピュータシステムの管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5218252B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5401679B2 (ja) * | 2009-02-19 | 2014-01-29 | 株式会社日立製作所 | 計算機システム、管理方法及び管理サーバ |
JP5585820B2 (ja) * | 2010-04-14 | 2014-09-10 | 株式会社日立製作所 | データ転送装置、計算機システム及びメモリコピー装置 |
CN102073462B (zh) | 2010-11-29 | 2013-04-17 | 华为技术有限公司 | 虚拟存储迁移方法、系统和虚拟机监控器 |
WO2012104940A1 (ja) * | 2011-02-04 | 2012-08-09 | パナソニック株式会社 | 仮想計算機システム、デバイス共有制御方法、プログラム、及び集積回路 |
JP5742387B2 (ja) * | 2011-03-31 | 2015-07-01 | 富士通株式会社 | 情報処理システム、及びi/oスイッチ装置 |
JP2015153279A (ja) * | 2014-02-18 | 2015-08-24 | 三菱電機株式会社 | プラント制御装置 |
JP6256086B2 (ja) | 2014-02-19 | 2018-01-10 | 富士通株式会社 | 情報処理システム、移動制御方法および移動制御プログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03184128A (ja) * | 1989-12-13 | 1991-08-12 | Yokogawa Electric Corp | 二重化計算機システム |
US5680640A (en) * | 1995-09-01 | 1997-10-21 | Emc Corporation | System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state |
JPH11184799A (ja) * | 1997-12-19 | 1999-07-09 | Toshiba Corp | メモリデータ転送方法ならびに装置 |
US6868442B1 (en) * | 1998-07-29 | 2005-03-15 | Unisys Corporation | Methods and apparatus for processing administrative requests of a distributed network application executing in a clustered computing environment |
JP4167089B2 (ja) * | 2003-01-17 | 2008-10-15 | 日本電信電話株式会社 | サーバシステム及びクライアントサーバ型システムにおける誤り隠蔽方法 |
US7257811B2 (en) * | 2004-05-11 | 2007-08-14 | International Business Machines Corporation | System, method and program to migrate a virtual machine |
US8924499B2 (en) * | 2004-12-14 | 2014-12-30 | International Business Machines Corporation | Operating system migration with minimal storage area network reconfiguration |
JP4394624B2 (ja) * | 2005-09-21 | 2010-01-06 | 株式会社日立製作所 | 計算機システム及びi/oブリッジ |
JP2008021252A (ja) * | 2006-07-14 | 2008-01-31 | Hitachi Ltd | 計算機システム及びアドレス割当方法 |
-
2009
- 2009-04-24 JP JP2009106365A patent/JP5218252B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010257209A (ja) | 2010-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5218252B2 (ja) | バススイッチ,コンピュータシステム及びコンピュータシステムの管理方法 | |
EP3985504B1 (en) | Virtual machine migration | |
US8949498B2 (en) | Interrupt handling in a virtual machine environment | |
JP5262404B2 (ja) | 複合型計算機及び複合型計算機の制御方法 | |
US20190012110A1 (en) | Information processing apparatus, and control method of information processing system | |
WO2015068239A1 (ja) | 計算機システムおよびデータ制御方法 | |
JP5583849B2 (ja) | ポート共有ハードウェアを介した記憶装置への帯域外アクセス | |
JPH09185594A (ja) | 直接バルク・データ転送 | |
JP2008009982A (ja) | メモリ・アドレスの変換およびピン止めのための方法およびシステム | |
JP2007286946A (ja) | 計算機システム、アクセス制御方法及び管理計算機 | |
JP2008225753A (ja) | 計算機システム、アクセス制御方法及び管理計算機 | |
US11861390B1 (en) | Transparent disk caching for virtual machines | |
JP5561334B2 (ja) | データ転送装置 | |
JP2004234114A (ja) | 計算機システム、計算機装置、オペレーティングシステムの移送方法及びプログラム | |
US11336725B2 (en) | Communication apparatus, communication method, and computer program product | |
US10565135B2 (en) | Information processing device, information processing method, main processor core, program, information processing method, and sub processor core | |
EP2785018A2 (en) | Information processing device, transmission control method, and transmission control program | |
US11625199B2 (en) | Communication apparatus, communication method, and computer program product | |
US8688925B2 (en) | Method for communication between two memory-related processes in a computer system, corresponding software product, computer system and printing system | |
US20170366638A1 (en) | Method of controlling a virtual machine, information processing apparatus and non-transitory computer-readable storage medium | |
US20140052947A1 (en) | Data storage device and method of controlling data storage device | |
JP2022536689A (ja) | 入出力メモリ管理ユニットによるゲストオペレーティングシステムのバッファとログへのアクセス | |
JP5636695B2 (ja) | フォールトトレラントシステム及び仮想マシン構築方法 | |
JP2011159165A (ja) | 並列計算機システム、並列計算機システムの制御方法及び制御プログラム | |
JP2011165042A (ja) | 動的バックアップ機能を有する電子計算機、動的バックアップ方法及びそのプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111205 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120727 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120814 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120927 |
|
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: 20130205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130218 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160315 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5218252 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |