JPWO2013114620A1 - 仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 - Google Patents
仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 Download PDFInfo
- Publication number
- JPWO2013114620A1 JPWO2013114620A1 JP2013556171A JP2013556171A JPWO2013114620A1 JP WO2013114620 A1 JPWO2013114620 A1 JP WO2013114620A1 JP 2013556171 A JP2013556171 A JP 2013556171A JP 2013556171 A JP2013556171 A JP 2013556171A JP WO2013114620 A1 JPWO2013114620 A1 JP WO2013114620A1
- Authority
- JP
- Japan
- Prior art keywords
- guest
- virtual
- virtual machine
- destination
- program
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
図3は、実施例2に係る情報処理装置の構成を示す機能ブロック図である。図3に示すように、情報処理装置20は、仮想領域21と制御部30とを有する。なお、ここで示した機能部はあくまで例示であり、図示した機能部以外として、例えばメモリなどの記憶部や入出力インタフェース、通信インタフェースなどを有していてもよい。
次に、情報処理装置20が実行する処理の流れを説明する。ここでは、初期化処理とパケット中継処理について説明する。
図7は、実施例2に係る情報処理装置20が実行する初期化処理の流れを示すシーケンス図である。図7に示すように、オペレータや管理者等によってゲストOSが仮想領域21に作成される、または、ゲストOSが使用するNIC(ネットワークインタフェースカード)デバイスが追加されると(S101とS102)、管理OSはS103とS104を実行する。すなわち、管理OSは、ゲストOSの作成指示やNICの追加指示をハイパーバイザ31に出力する。
図8は、実施例2に係る情報処理装置20が実行する中継処理の流れを示すシーケンス図である。図8に示すように、ゲストOS(A)24は、ゲストOS(B)25への通信要求が発生すると(S201)、ハイパーバイザ31に対して、通信要求が発生したことを通知する(S202)。つまり、ゲストOS(A)24の仮想インタフェースである「eth0」が、自身と接続される管理OS(A)22のネットバック「vif1.0」にパケットが到着したことをハイパーバイザ31に通知する。
図9は、実施例3に係る情報処理装置20の全体構成例を示す図である。図9に示すように、実施例3に係る情報処理装置20は、実施例2に係る情報処理装置と同様の構成を有する。なお、ここでは、図3に示した実施例2に係る情報処理装置20の一部を抜粋して図示している。また、実施例3に係る情報処理装置10は、実施例2と同様のテーブルを保持するとする。そして、実施例1や実施例2等と異なる点は、ゲストID管理テーブル33にバッファキューの先頭アドレスが格納されている点である。図10は、実施例3に係るゲストID管理テーブル33に記憶される情報の例を示す図である。
次に、実施例3に係る情報処理装置20が実行する処理の流れを説明する。ここでは、初期化処理とパケット中継処理について説明する。
図11は、実施例3に係る情報処理装置20が実行する初期化処理の流れを示すシーケンス図である。図11に示すように、S301からS308までの処理は、図7で説明したS101からS108までの処理と同様なので、ここでは詳細な説明を省略する。
図12は、実施例3に係る情報処理装置20が実行する中継処理の流れを示すシーケンス図である。図13に示すように、ゲストOS(A)24は、ゲストOS(B)25への通信要求が発生すると(S401)、ハイパーバイザ31に対して、通信要求が発生したことを通知する(S402)。つまり、ゲストOS(A)24の仮想インタフェースである「eth0」が、自身と接続される管理OS(A)22のネットバック「vif1.0」にパケットが到着したことをハイパーバイザ31に通知する。
例えば、開示する情報処理装置は、管理OSに代ってブリッジハンドラを実行する場合と、管理OSにブリッジハンドラの実行を依頼する場合とを併用することができる。例えば、開示する情報処理装置のハイパーバイザ31は、図8のS206において、ブリッジデバイスアドレスが一致しない場合には、従来技術と同様、管理OSにパケット中継を依頼するようにしてもよい。つまり、開示する情報処理装置のハイパーバイザ31は、送信元のゲストOSと接続されるネットバックと、宛先のゲストOSと接続されるネットバックとがブリッジ接続されていない場合に、管理OSにパケット中継を依頼する。
また、開示する情報処理装置は、異なるプロセッサへの通信の場合には、割込みハンドラから、登録されたハンドラを呼び出すこともできる。例えば、情報処理装置20は、割込みの宛先となるゲストOSを識別するゲストID、ゲストOSのMACアドレス、ゲストOSを実行するプロセッサを識別する識別子を対応付けて記憶する割込みターゲットレジスタを保持する。また、情報処理装置20は、ハンドラ管理テーブル34に、ゲストID等に対応付けて割込みハンドラの先頭アドレスを記憶する。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
11 管理OS
12 ゲストOS(A)
13 ゲストOS(B)
14 仮想制御部
14a 記憶部
14b 特定部
14c 中継部
20 情報処理装置
21 仮想領域
22 管理OS(A)
23 管理OS(B)
24 ゲストOS(A)
25 ゲストOS(B)
26 ゲストOS(C)
27 ゲストOS(D)
30 制御部
30a 処理制御部
31 ハイパーバイザ
32 MAC管理テーブル
33 ゲストID管理テーブル
34 ハンドラ管理テーブル
35 情報格納部
36 ゲスト特定部
37 ハンドラ特定部
38 実行制御部
Claims (7)
- コンピュータに、
複数の仮想マシンを稼動させ、
前記複数の仮想マシンのいずれかの仮想マシンからパケットが送信された場合に、前記仮想マシンと他の仮想マシンとの通信を中継する中継処理を実行するプログラムの格納先を記憶する記憶部から、前記プログラムの格納先を特定し、
特定した格納先から読み出したプログラムを実行して、前記パケットを宛先の仮想マシンに中継する
処理を実行させることを特徴とする仮想マシン制御プログラム。 - 前記特定する処理は、前記中継処理として、仮想的なブリッジデバイスを実行するプログラムの格納先を前記記憶部から特定し、
前記中継する処理は、特定した格納先からプログラムを読み出して仮想的なブリッジデバイスを実行し、実行した仮想的なブリッジデバイスを介して、前記パケットを宛先の仮想マシンに中継することを特徴とする請求項1に記載の仮想マシン制御プログラム。 - 前記特定する処理は、前記中継処理として、前記宛先の仮想マシンの受信対象となるパケットが格納されるバッファを呼び出すプログラムを前記記憶部から特定し、
前記中継する処理は、特定したプログラムを実行して呼び出したバッファに、前記受信したパケットを書き込むことで、前記パケットを宛先の仮想マシンに中継することを特徴とする請求項1に記載の仮想マシン制御プログラム。 - 前記パケットを送信した仮想マシンに対応する仮想デバイスの識別子と、前記パケットの宛先となる仮想マシンに対応する仮想デバイスの識別子とを抽出し、
前記複数の仮想マシン各々が使用する仮想デバイスを識別する識別子と、各仮想デバイスが接続される仮想ブリッジの格納先とを対応付けて記憶するブリッジ記憶部から、前記抽出した各識別子に対応する仮想ブリッジの格納先を特定し、
特定した各仮想ブリッジの格納先が一致するか否かを判定する処理を前記コンピュータにさらに実行させ、
前記プログラムの格納先を特定する処理は、前記判定する処理によって各仮想ブリッジの格納先が一致すると判定された場合に、前記プログラムの格納先を特定することを特徴とする請求項1に記載の仮想マシン制御プログラム。 - 前記複数の仮想マシンのいずれかの仮想マシンから割込み要求が発生した場合に、前記割込み要求に発生元の仮想マシンが動作するプロセッサと前記割込み要求の実行先の仮想マシンが動作するプロセッサとが同じであるか否かを判定し、
同じでないと判定した場合に、前記プロセッサを識別する識別子に対応付けて割込みハンドラの格納先を記憶する割込み記憶部から、前記割込み要求の実行先の仮想マシンが動作するプロセッサに対応する割込みハンドラの格納先を読み出し、
読み出した割込みハンドラを実行する処理を前記コンピュータにさらに実行させることを特徴とする請求項1に記載の仮想マシン制御プログラム。 - コンピュータが、
複数の仮想マシンを稼動させ、
前記複数の仮想マシンのいずれかの仮想マシンからパケットが送信された場合に、前記仮想マシンと他の仮想マシンとの通信を中継する中継処理を実行するプログラムの格納先を記憶する記憶部から、前記プログラムの格納先を特定し、
特定した格納先から読み出したプログラムを実行して、前記パケットを宛先の仮想マシンに中継する
処理を実行することを特徴とする仮想マシン制御方法。 - 複数の仮想マシンを稼動させる仮想制御部を有し、
前記仮想制御部は、
仮想マシンと他の仮想マシンとの通信を中継する中継処理を実行するプログラムの格納先を記憶する記憶部と、
前記複数の仮想マシンのいずれかの仮想マシンからパケットが送信された場合に、前記記憶部から前記プログラムの格納先を特定する特定部と、
前記特定部によって特定された格納先から読み出したプログラムを実行して、前記パケットを宛先の仮想マシンに中継する中継部と
を有することを特徴とする情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013556171A JP5907179B2 (ja) | 2012-02-03 | 2012-02-03 | 仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013556171A JP5907179B2 (ja) | 2012-02-03 | 2012-02-03 | 仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 |
PCT/JP2012/052529 WO2013114620A1 (ja) | 2012-02-03 | 2012-02-03 | 仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2013114620A1 true JPWO2013114620A1 (ja) | 2015-05-11 |
JP5907179B2 JP5907179B2 (ja) | 2016-04-26 |
Family
ID=48904696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013556171A Expired - Fee Related JP5907179B2 (ja) | 2012-02-03 | 2012-02-03 | 仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9268593B2 (ja) |
EP (1) | EP2811403A4 (ja) |
JP (1) | JP5907179B2 (ja) |
WO (1) | WO2013114620A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10503442B2 (en) | 2015-01-28 | 2019-12-10 | Avago Technologies International Sales Pte. Limited | Method and apparatus for registering and storing virtual machine unique information capabilities |
US10437770B2 (en) * | 2015-01-28 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Method and apparatus for providing virtual machine information to a network interface |
JP6682897B2 (ja) * | 2016-02-16 | 2020-04-15 | 富士通株式会社 | 通信設定方法、通信設定プログラム、情報処理装置および情報処理システム |
US10715433B2 (en) | 2017-03-31 | 2020-07-14 | Mitsubishi Electric Corporation | Information processing apparatus and information processing method |
US10445009B2 (en) * | 2017-06-30 | 2019-10-15 | Intel Corporation | Systems and methods of controlling memory footprint |
US11194606B2 (en) * | 2018-11-28 | 2021-12-07 | Red Hat, Inc. | Managing related devices for virtual machines utilizing shared device data |
JP7401484B2 (ja) * | 2021-05-28 | 2023-12-19 | Necプラットフォームズ株式会社 | 情報処理装置、情報処理装置の制御方法、及び、情報処理装置の制御プログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1093614A (ja) * | 1996-09-12 | 1998-04-10 | Nec Commun Syst Ltd | Lan間接続装置 |
JP2010066931A (ja) * | 2008-09-09 | 2010-03-25 | Fujitsu Ltd | 負荷分散機能を有した情報処理装置 |
JP2011082799A (ja) * | 2009-10-07 | 2011-04-21 | Nec Corp | 省電力化システム、省電力化方法、及び省電力化用プログラム |
JP2012003747A (ja) * | 2010-06-21 | 2012-01-05 | Intel Corp | 複数の仮想マシンで共有されるネットワークインターフェースのための方法 |
JP2012015632A (ja) * | 2010-06-29 | 2012-01-19 | Kinki Univ | ネットワーク構築演習装置及びその制御方法並びにプログラム及び記録媒体 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7200666B1 (en) * | 2000-07-07 | 2007-04-03 | International Business Machines Corporation | Live connection enhancement for data source interface |
US7937701B2 (en) * | 2005-06-30 | 2011-05-03 | Intel Corporation | ACPI communication between virtual machine monitor and policy virtual machine via mailbox |
JP4799118B2 (ja) | 2005-10-14 | 2011-10-26 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置、情報処理システム、通信中継装置および通信制御方法 |
JP5037016B2 (ja) | 2006-01-17 | 2012-09-26 | 株式会社リコー | ネットワークコンピューティングシステム、通信方法、画像投影装置、画像入出力装置 |
JP4358224B2 (ja) * | 2006-12-27 | 2009-11-04 | 株式会社東芝 | ゲストosスケジューリング方法及び仮想計算機モニタ |
US7984449B2 (en) * | 2007-08-15 | 2011-07-19 | International Business Machines Corporation | In-band communication with virtual machines via a hypervisor message bus |
JP5720577B2 (ja) * | 2009-12-04 | 2015-05-20 | 日本電気株式会社 | サーバ及びフロー制御プログラム |
JP5737050B2 (ja) | 2011-08-15 | 2015-06-17 | 富士通株式会社 | 情報処理装置、割込み制御方法および割込み制御プログラム |
US9092274B2 (en) * | 2011-12-07 | 2015-07-28 | International Business Machines Corporation | Acceleration for virtual bridged hosts |
-
2012
- 2012-02-03 EP EP12867375.3A patent/EP2811403A4/en not_active Withdrawn
- 2012-02-03 WO PCT/JP2012/052529 patent/WO2013114620A1/ja active Application Filing
- 2012-02-03 JP JP2013556171A patent/JP5907179B2/ja not_active Expired - Fee Related
-
2014
- 2014-07-30 US US14/446,927 patent/US9268593B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1093614A (ja) * | 1996-09-12 | 1998-04-10 | Nec Commun Syst Ltd | Lan間接続装置 |
JP2010066931A (ja) * | 2008-09-09 | 2010-03-25 | Fujitsu Ltd | 負荷分散機能を有した情報処理装置 |
JP2011082799A (ja) * | 2009-10-07 | 2011-04-21 | Nec Corp | 省電力化システム、省電力化方法、及び省電力化用プログラム |
JP2012003747A (ja) * | 2010-06-21 | 2012-01-05 | Intel Corp | 複数の仮想マシンで共有されるネットワークインターフェースのための方法 |
JP2012015632A (ja) * | 2010-06-29 | 2012-01-19 | Kinki Univ | ネットワーク構築演習装置及びその制御方法並びにプログラム及び記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
EP2811403A4 (en) | 2015-10-07 |
US9268593B2 (en) | 2016-02-23 |
JP5907179B2 (ja) | 2016-04-26 |
EP2811403A1 (en) | 2014-12-10 |
WO2013114620A1 (ja) | 2013-08-08 |
US20140344811A1 (en) | 2014-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5907179B2 (ja) | 仮想マシン制御プログラム、仮想マシン制御方法および情報処理装置 | |
JP5737050B2 (ja) | 情報処理装置、割込み制御方法および割込み制御プログラム | |
CN107783913B (zh) | 一种应用于计算机的资源访问方法和计算机 | |
JP6328134B2 (ja) | クラスタ化されたコンピュータ・システムで通信チャネルのフェイルオーバを実行する方法、装置、およびプログラム | |
JP6185045B2 (ja) | インフィニバンドネットワークにおけるバーチャルマシーンのライブマイグレーションをサポートするためのシステムおよび方法 | |
US20130254368A1 (en) | System and method for supporting live migration of virtual machines in an infiniband network | |
US20130007743A1 (en) | Method of checking a possibility of executing a virtual machine | |
EP3462671B1 (en) | Virtual network function resource management method and device | |
US10579412B2 (en) | Method for operating virtual machines on a virtualization platform and corresponding virtualization platform | |
US11086703B2 (en) | Distributed input/output virtualization | |
EP2785018A2 (en) | Information processing device, transmission control method, and transmission control program | |
US9612877B1 (en) | High performance computing in a virtualized environment | |
JP2023532077A (ja) | システム及び割り込み処理方法 | |
US11036645B2 (en) | Secure userspace networking for guests | |
US8024797B2 (en) | Method, apparatus and system for performing access control and intrusion detection on encrypted data | |
JP2015002438A (ja) | 通信システム、管理装置、管理方法および管理プログラム | |
JP2015170887A (ja) | パケット処理方法及びシステム | |
CN114172695A (zh) | 串行防火墙报文转发方法、装置、设备及存储介质 | |
US8713569B2 (en) | Dynamic association and disassociation of threads to device functions based on requestor identification | |
CN114978589B (zh) | 一种轻量级云操作系统及其构建方法 | |
US11928502B2 (en) | Optimized networking thread assignment | |
EP3255544B1 (en) | Interrupt controller | |
JP5617761B2 (ja) | 計算機システム、計算機、及び計算機システムの割込み処理方法 | |
JP2012118996A (ja) | 仮想計算機の制御プログラム、計算機システム、および仮想計算機の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151201 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160129 |
|
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: 20160223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5907179 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |