JP5398309B2 - 仮想計算機システム、仮想計算機システムの通信制御プログラム及び仮想計算機システムの通信制御方法 - Google Patents
仮想計算機システム、仮想計算機システムの通信制御プログラム及び仮想計算機システムの通信制御方法 Download PDFInfo
- Publication number
- JP5398309B2 JP5398309B2 JP2009054383A JP2009054383A JP5398309B2 JP 5398309 B2 JP5398309 B2 JP 5398309B2 JP 2009054383 A JP2009054383 A JP 2009054383A JP 2009054383 A JP2009054383 A JP 2009054383A JP 5398309 B2 JP5398309 B2 JP 5398309B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- virtual
- transmission
- access right
- management table
- 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
Landscapes
- Computer And Data Communications (AREA)
Description
このような仮想計算機システムにおいては、各VMは独立性が高く、あるゲストOS(VMで動作するOSのことを指す)での障害やウィルスなどの影響は、他のゲストOSに影響しない(非特許文献1,p.18参照)。また、各ゲストOSで動作するアプリケーションプログラム間の通信は、実在するネットワークアダプタをソフトウェアでエミュレートした仮想ネットワークアダプタを介して行うことができる(非特許文献1,p.98−104参照)。
DoS攻撃とはサーバなどの機器に対してネットワークを介した攻撃を行うことである。DoS攻撃は、ネットワークトラフィックを増大させ、通信を処理している回線やサーバの機能(プロセッサやメモリ等のリソース)を占有する。これにより、サーバで実行しているサービスの提供が不能な状態になる。
非仮想計算機システムにおけるDoS攻撃の対策としては、例えば、物理ネットワークに物理的なルータを配置し、DoS攻撃を実施してくる計算機からの通信を拒否する方法がある。しかし、仮想計算機システムにおいては、同一マシン内に存在するVMから攻撃されるため、物理的なルータを配置しDoS攻撃を実施してくるVMからの通信を拒否することができない。そのため、仮想計算機システムにおいて、DoS攻撃を防ぐことは不可能である。
この発明は、仮想計算機システムにおいて、DoS攻撃を回避可能なVM間通信方式を実現することを目的とする。
1台の計算機において複数の仮想計算機が同時に動作し、前記複数の仮想計算機の各仮想計算機は互いに仮想ネットワークを介して通信する仮想計算機システムであり、
前記各仮想計算機は、
前記複数の仮想計算機の所定の仮想計算機から自己へのデータ送信を許可することを示す許可情報を、前記所定の仮想計算機が送信した送信データを受信する場合に送信権限テーブルに設定する送信権限設定部と、
前記送信権限テーブルに自己から所定の仮想計算機へのデータ送信を許可することを示す許可情報が前記所定の仮想計算機の前記送信権限設定部により設定されているか否かを、前記所定の仮想計算機へ送信データを送信する場合に判定する設定判定部と、
前記許可情報が設定されていると前記設定判定部が判定した場合に、前記所定の仮想計算機へ送信データを送信する送信部と
を備えることを特徴とする。
図1は、仮想計算機システム1の構成図である。
仮想計算機システム1は、単一もしくは複数のプロセッサ、メモリなどのハードウェア2を備える。そして、仮想計算機システム1は、複数の独立した仮想的なハードウェア環境を提供するVM3を実現する。ここでは、VM−AとVM−BとのVM3が実現されるものとする。また、ここでは、VM−Aを受信側のVM3とし、VM−Bを送信側のVM3とする。また、仮想計算機システム1は、VM3で動作するOS5などのプログラムの実行を制御する仮想計算機モニタ4を備える。
各VM3のVM間通信ドライバ7は、通信開始要求受付部8、通信初期化処理部9、VMアクセス権設定受付部10、VMアクセス権設定処理部11(送信権限設定部)、受信要求受付部12、受信処理部13、通信終了要求受付部14、通信終了処理部15(送信権限削除部)、送信要求受付部16、送信可否VM判定部17(設定判定部)、送信処理部18(送信部)を備える。なお、図1では、簡単のため、受信側のVM−Aには受信側で使用する機能のみを示し、送信側のVM−Bには送信側で使用する機能のみを示す。
通信開始要求受付部8は、アプリケーションプログラム6からの通信開始(オープン)要求を受け付ける。通信初期化処理部9は、通信開始要求受付部8から実行され、通信の初期化処理を実行する。
VMアクセス権設定受付部10は、アプリケーションプログラム6からのVMアクセス権設定要求を受け付ける。VMアクセス権設定処理部11は、VMアクセス権設定受付部10から実行され、VMアクセス権(許可情報)を後述するVMアクセス権管理表20に設定する。
受信要求受付部12は、アプリケーションプログラム6からの受信(リード)要求を受け付ける。受信処理部13は、受信要求受付部12から実行され、他のVM3から送信された送信データを受信する。
通信終了要求受付部14は、アプリケーションプログラム6からの通信終了(クローズ)要求を受け付ける。通信終了処理部15は、通信終了要求受付部14から実行され、通信の終了処理を実行する。
送信要求受付部16は、アプリケーションプログラム6からの送信(ライト)要求を受け付ける。送信可否VM判定部17は、送信要求受付部16から実行され、他のVM3へ送信データを送信することの可否を判定する。送信処理部18は、送信可否VM判定部17から実行され、他のVM3へ送信データを送信する。
VM間通信処理部19は、VM3間の通信を実現する仮想ネットワークである。
VMアクセス権管理表20は、VMアクセス権が設定される。VMアクセス権管理表20は、通信初期化処理部9により生成され、VMアクセス権設定処理部11により設定される。また、VMアクセス権管理表20は、通信終了処理部15により削除される。
図2は、VMアクセス権管理表20の一例を示す図である。VMアクセス権管理表20は、VM3の識別情報と、データ送信の許可又は拒否とが記憶される。図2では、VM−Aへのデータ送信の許可と拒否とが、VM3毎に設定されている。図2は、VM−A、VM−CからVM−Aへのデータ送信は拒否し、VM−BからVM−Aへのデータ送信は許可することを示す。
まず、受信側のVM3の動作を説明する。
異なるVM3に存在するアプリケーションプログラム6同士がデータ通信を行う場合、最初に受信側のアプリケーションプログラム6がOS5を介してVM間通信ドライバ7に対し、通信開始要求を出す(S101)。すると、OS5が持つドライバの管理機能により、VM間通信ドライバ7の通信開始要求受付部8が起動される(S102)。
通信開始要求受付部8は、通信初期化処理部9を呼び出す(S103)。通信初期化処理部9は、VM間通信処理部19を利用するために必要な初期設定を行う。通信初期化処理部9は、例えば、通信データを格納するための共有メモリと、データ到着を通知するためのイベントチャネルの確保・設定を行う(S104)。ここで、共有メモリとは異なるVM3間で共有可能なメモリ領域のことである。また、イベントチャネルとは、何等かの事象(イベント)が発生したことを他のVM3に伝えるための手段である。共有メモリとイベントチャネルとについては非特許文献2に記載があるため、ここでは言及しない。次に、通信初期化処理部9は、VMアクセス権管理表20用の共有メモリを確保する(S105)。通信初期化処理部9は、他のVM3に対してはリードオンリーで共有できるよう設定を行う(S106)。次に、通信初期化処理部9は、確保した共有メモリにVMアクセス権管理表20を生成する(S107)。このとき、生成時のVMアクセス権管理表20の初期内容は拒否でも許可でも構わない。ここでは安全のため、すべてのVMからの送信を拒否するよう設定しておくものとする。また、(S106)での設定により、VMアクセス権管理表20への書き込みは、共有メモリを設定したVM3のみが行え、他のVM3はVMアクセス権管理表20からの読み込みのみ行える。
なお、通信開始要求受付部8および通信初期化処理部9の処理が成功すると、OS5はアプリケーションプログラム6に対し、以降の処理にてVM間通信ドライバ7へアクセスする際に利用する識別子を返す。ここでは、識別子は、UNIX(登録商標)オペレーティングシステムを例とし、ファイルディスクリプタとする。
VMアクセス権設定受付部10は、VMアクセス権設定処理部11を呼び出す(S110)。VMアクセス権設定処理部11は、VMアクセス権管理表20のうち、受信側のアプリケーションプログラム6が指定したVM3に該当する部分の設定を許可に変更する(S111)。つまり、VMアクセス権設定処理部11は、アプリケーションプログラム6が指定したVM3から自己へのデータ送信を許可するように、VMアクセス権管理表20の情報を変更する。
受信要求受付部12は、受信処理部13を呼び出す(S114)。受信処理部13は、既に受信可能なデータが到着済みか判定する(S115)。受信処理部13は、既にデータが到着していれば(S115でYES)、(S127)へ処理を移す。一方、受信処理部13は、まだデータが到着していなければ(S115でNO)、VM間通信処理部19からデータ到着の通知が来るまで待機する(S116)。ここで、OS5には通常、送受信が完了してから続きの処理を開始・継続する同期I/O(Input/Output)と、送受信が完了していなくても可能な処理を進める非同期I/Oとの2種類のI/O待ちの仕組みが存在する。しかし、ここでいう待機は、どちらの仕組みでも構わない。これらの仕組みについては非特許文献3に記載があるので、ここでは言及しない。また、待機を行う際、あらかじめ指定された時間内に待機を解除する事象が発生しなかった場合にタイムアウトが発生したというエラーで呼び出し元にリターンしてもよい。この仕組みについては非特許文献4に記載があるので、ここでは言及しない。
また、(S115)の処理において、既にデータを受信している場合とは、受信側のアプリケーションプログラム6のOS5への受信要求(S112)よりも先に送信側のアプリケーションプログラム6のOS5への後述する送信要求(S117)の処理が行われた場合のことである。このように、(S112)から(S115)までの処理と、(S117)から(S123)までの処理の順序は問わない。
送信側のアプリケーションプログラム6も受信側のアプリケーションプログラム6と同様にファイルディスクリプタを利用する。そのため、送信側のアプリケーションプログラム6もOS5を介してVM間通信ドライバ7に対し、通信開始要求を出す。この処理は、(S101)から(S107)の処理と同様のため、ここでは説明を省略する。また、このとき、アプリケーションプログラム6がデータの送信処理しか行わない場合は、送信のみ実施することを指定して通信開始要求を行うことにより、(S103)から(S107)の処理を省略することができる。
送信側のアプリケーションプログラム6がOS5を介してVM間通信ドライバ7に対し、送信先のVM3を特定するIDを指定して送信要求を出す(S117)。すると、OS5が持つドライバの管理機能により、VM間通信ドライバ7の送信要求受付部16が起動される(S118)。
送信要求受付部16は、送信可否VM判定部17を呼び出す(S119)。送信可否VM判定部17はVMアクセス権管理表20を参照して、送信側のアプリケーションプログラム6が指定したVM3に該当する部分の設定を読み取る(S120)。送信可否VM判定部17は、読み取った設定に従い、データ送信が許可されているか拒否されているかを判定する(S121)。ここで許可されていると判定した場合(S121で許可)、送信可否VM判定部17は送信処理部18を呼び出す(S122)。そして、送信処理部18がVM間通信処理部19に対してデータを送信する(S123)。一方、拒否されていると判定した場合(S121で拒否)、送信可否VM判定部17はアクセス違反を意味するエラー値を戻り値とし、送信要求受付部16を介して送信側のアプリケーションプログラム6にエラーとして返す(S126)。
VM間通信処理部19は(S123)で送信されたデータに対し、受信待ちをしているVMが存在するか判定する(S124)。受信待ちをしているVMが存在すれば(S124でYES)、VM間通信ドライバ7は、データが到着したことを受信処理部13に対し通知する(S125)。ここでの通知は例えば前記のイベントチャネルを用いて行うことができる。一方、受信待ちをしているVMが存在しなければ、ここでは通知処理を行わない。
通信終了要求受付部14は、通信終了処理部15を呼び出す(S131)。通信終了処理部15は、VMアクセス権管理表20用に確保していたメモリを共有できないように設定する。さらに、その後、通信終了処理部15は、そのメモリを解放することにより、VMアクセス権管理表20を削除する(S132)。受信側のアプリケーションプログラム6と同様に送信側のアプリケーションプログラム6もデータ通信を終えた段階でOS5を介してVM間通信ドライバ7に対し、終了処理要求を出す。そして、(S131)、(S132)を実行する。しかし、上述したように、通信開始要求時に(S103)から(S107)の処理を省略した場合は、VMアクセス権管理表20の削除を行う必要がない。そのため、(S131)、(S132)の処理を省略できる。
実施の形態1では、VM3毎にデータ通信を許可するか否かを示すアクセス権の設定を行った。しかし、ネットワーク通信におけるトランスミッションコントロールプロトコル(TCP:Transmission Control Protocol)やユーザデータプロトコル(UDP:User Data Protocol)で定められたようなポート番号を用いてVM3で動作している複数のプログラムのうちの1つのプログラムを通信相手として指定する場合もある。実施の形態1で説明した方法では、このような場合に、各ポート番号による通信を個別に許可や拒否することができない。実施の形態2では、ネットワークプロトコルを指定して、通信を許可や拒否する方法について説明する。
VM間通信ドライバ7は、VMアクセス権設定受付部10、VMアクセス権設定処理部11、送信可否VM判定部17に代え、プロトコルアクセス権設定受付部21、プロトコルアクセス権設定処理部22(送信権限設定部)、送信可否プロトコル判定部23を備える。プロトコルアクセス権設定受付部21は、アプリケーションプログラム6からのプロトコルアクセス権設定要求を受け付ける。プロトコルアクセス権設定処理部22は、プロトコルアクセス権設定受付部21から実行され、プロトコル毎にプロトコルアクセス権(許可情報)を後述するプロトコルアクセス権管理表24に設定する。送信可否プロトコル判定部23は、送信要求受付部16から実行され、他のVM3へ所定のプロトコルにより送信データを送信することの可否を判定する。
仮想計算機モニタ4は、VMアクセス権管理表20に代え、プロトコルアクセス権管理表24(送信権限設定テーブル)を備える。プロトコルアクセス権管理表24は、プロトコル毎にプロトコルアクセス権が設定される。プロトコルアクセス権管理表24は、通信初期化処理部9により生成され、プロトコルアクセス権設定処理部22により設定される。また、プロトコルアクセス権管理表24は、通信終了処理部15により削除される。
図6は、プロトコルアクセス権管理表24の一例を示す図である。プロトコルアクセス権管理表24は、プロトコル名称、送信側アドレス、受信側アドレス、送信側ポート番号、受信側ポート番号等が記憶される。プロトコルアクセス権管理表24に設定された情報と一致する情報を有する送信データのみ送信が許可され、その他の送信データは送信が拒否される。
(S201)から(S204)は、図3の(S101)から(S104)と同一である。(S204)に続き、通信初期化処理部9は、プロトコルアクセス権管理表24用の共有メモリを確保する(S205)。そして、(S106)と同様に、リードオンリーで共有できるよう設定を行う(S206)。次に、通信初期化処理部9は、確保した共有メモリにプロトコルアクセス権管理表24を生成する(S207)。このとき、生成時のプロトコルアクセス権管理表24の初期内容は、所定のプロトコルについての情報が存在する状態であっても、存在しない状態であっても構わない。ここでは安全のため、1つのプロトコルについての情報も存在しない状態とする。つまりすべてのプロトコルについてVM3へのデータ送信を拒否するよう設定しておくものとする。
次に、受信側のアプリケーションプログラム6がOS5を介してVM間通信ドライバ7に対し、自己に対する送信を許可するプロトコルを特定するパラメータを指定してプロトコルアクセス権設定要求を出す(S208)。なお、アプリケーションプログラム6は、通信開始要求を出した結果、返されたファイルディスクリプタを利用して、通信開始要求受付部8に対し、VMアクセス権設定要求を出す。プロトコルを特定するパラメータとは、許可するプロトコル内容を一意に特定できるものであればよく、例えば図5に示したような許可するプロトコル名称(TCPかUDPかなど)、送信側アドレス(送信側インターネットプロトコルアドレス)、受信側アドレス(受信側インターネットプロトコルアドレス)、送信側ポート番号、受信側ポート番号などである。すると、OS5が持つドライバの管理機能により、VM間通信ドライバ7のプロトコルアクセス権設定受付部21が起動される(S209)。
プロトコルアクセス権設定受付部21はプロトコルアクセス権設定処理部22を呼び出す(S210)。プロトコルアクセス権設定処理部22は、プロトコルアクセス権管理表24に、受信側のアプリケーションプログラム6が指定した許可するプロトコル内容を設定(表に追加)する(S211)。
(S212)から(S216)は、図4の(S112)から(S116)と同一である。
送信側のアプリケーションプログラム6も受信側のアプリケーションプログラム6と同様にファイルディスクリプタを利用する。そのため、送信側のアプリケーションプログラム6もOS5を介してVM間通信ドライバ7に対し、通信開始要求を出す。この処理は、(S201)から(S207)の処理と同様のため、ここでは説明を省略する。また、このとき、アプリケーションプログラム6がデータの送信処理しか行わない場合は、送信のみ実施することを指定して通信開始要求を行うことにより、(S203)から(S207)の処理を省略することができる。
(S217)から(S218)は、図4の(S117)から(S118)と同一である。
送信要求受付部16は、送信可否プロトコル判定部23を呼び出す(S219)。送信可否プロトコル判定部23はプロトコルアクセス権管理表24を参照して(S220)、送信側のアプリケーションプログラム6が利用するプロトコル内容に一致するものが存在するか否かを判定する(S221)。ここで存在すると判定した場合、許可されていると判断し(S221で許可)、送信可否プロトコル判定部23は送信処理部18を呼び出す(S222)。そして、送信処理部18がVM間通信処理部19に対してデータを送信する(S223)。一方、存在しないと判定した場合、拒否されていると判断し(S221で拒否)、送信可否プロトコル判定部23はアクセス違反を意味するエラー値を戻り値とし、送信要求受付部16を介して送信側のアプリケーションプログラム6にエラーで返す(S226)。
(S224)から(S225)は、図4の(S124)から(S125)と同一である。また、(S227)から(S231)は、図4の(S127)から(S131)と同一である。そして、(S231)で呼び出された通信終了処理部15は、プロトコルアクセス権管理表24用に確保していたメモリを共有できないように設定する。さらに、その後、通信終了処理部15は、そのメモリを解放することにより、プロトコルアクセス権管理表24を削除する(S232)。受信側のアプリケーションプログラム6と同様に送信側のアプリケーションプログラム6もデータ通信を終えた段階でOS5を介してVM間通信ドライバ7に対し、終了処理要求を出す。そして、(S231)、(S232)を実行する。しかし、上述したように、通信開始要求時に(S203)から(S207)の処理を省略した場合は、VMアクセス権管理表20の削除を行う必要がない。そのため、(S231)、(S232)の処理を省略できる。
図9は、仮想計算機システム1のハードウェア2の構成の一例を示す図である。
図9に示すように、ハードウェア2は、プログラムを実行するCPU911(中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、LCD901(Liquid Crystal Display)、キーボード902(K/B)、通信ボード915、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920(固定ディスク装置)の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置920は、所定の固定ディスクインタフェースを介して接続される。
ファイル群924には、上記の説明において「VMアクセス権管理表20」、「プロトコルアクセス権管理表24」等の情報やデータや信号値や変数値やパラメータが、「ファイル」や「データベース」の各項目として記憶される。「ファイル」や「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPU911の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPU911の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。さらに、「〜処理」として説明するものは「〜ステップ」であっても構わない。すなわち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ROM913等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
Claims (6)
- 1台の計算機において複数の仮想計算機が同時に動作し、前記複数の仮想計算機の各仮想計算機は互いに仮想ネットワークを介して通信する仮想計算機システムであって、前記各仮想計算機では、アプリケーションプログラムが動作するとともに、前記アプリケーションプログラムによる他の仮想計算機との通信を制御する通信ドライバが動作する仮想計算機システムであり、
各仮想計算機について、その仮想計算機へのデータ送信を許可するか否かを、他の仮想計算機毎に記憶する仮想計算機アクセス権管理テーブル
を備え、
前記通信ドライバは、
前記複数の仮想計算機のうちの第1の仮想計算機が送信した送信データを受信する場合、前記第1の仮想計算機から自己へのデータ送信を許可するように前記仮想計算機アクセス権管理テーブルを更新する送信権限設定部と、
前記アプリケーションプログラムが前記複数の仮想計算機のうちの第2の仮想計算機へ送信データを送信する場合、自己から前記第2の仮想計算機へのデータ送信を許可することが前記仮想計算機アクセス権管理テーブルに記憶されているか否かを判定する設定判定部と、
記憶されていると前記設定判定部が判定した場合に、前記第2の仮想計算機へ送信データを送信する送信部と
を備えることを特徴とする仮想計算機システム。 - 前記各仮想計算機は、さらに、
前記第1の仮想計算機の前記送信部が送信した送信データを受信する受信部と、
前記受信部が前記送信データの受信を完了した場合、前記第1の仮想計算機から自己へのデータ送信を許可しないように前記仮想計算機アクセス権管理テーブルを更新する送信権限削除部と
を備えることを特徴とする請求項1に記載の仮想計算機システム。 - 前記仮想計算機アクセス権管理テーブルは、仮想計算機間で共有する共有メモリに作成された
ことを特徴とする請求項1又は2に記載の仮想計算機システム。 - 前記仮想計算機システムは、さらに、
各仮想計算機について、その仮想計算機へのデータ送信を許可するか否かを、プロトコル毎に記憶するプロトコルアクセス権管理テーブル
を備え、
前記送信権限設定部は、前記複数の仮想計算機のうちの第1の仮想計算機が第1のプロトコルにより送信した送信データを受信する場合、前記第1の仮想計算機から自己へのデータ送信を許可するように前記仮想計算機アクセス権管理テーブルを更新するとともに、前記第1のプロトコルによる自己へのデータ送信を許可するように前記プロトコルアクセス権管理テーブルを更新し、
前記設定判定部は、前記アプリケーションプログラムが前記複数の仮想計算機のうちの第2の仮想計算機へ第2のプロトコルにより送信データを送信する場合、自己から前記第2の仮想計算機へのデータ送信を許可することが前記仮想計算機アクセス権管理テーブルに記憶されており、かつ、前記第2のプロトコルによる前記第2の仮想計算機へのデータ送信を許可することが前記プロトコルアクセス権管理テーブルに記憶されているか否かを判定し、
前記送信部は、いずれも記憶されていると前記設定判定部が判定した場合に、前記第2の仮想計算機へ前記第2のプロトコルにより送信データを送信する
ことを特徴とする請求項1から3までのいずれかに記載の仮想計算機システム。 - 1台の計算機において複数の仮想計算機が同時に動作し、前記複数の仮想計算機の各仮想計算機は互いに仮想ネットワークを介して通信する仮想計算機システムであって、前記各仮想計算機では、アプリケーションプログラムが動作する仮想計算機システムの通信制御プログラムであり、
各仮想計算機について、その仮想計算機へのデータ送信を許可するか否かを、他の仮想計算機毎に記憶する仮想計算機アクセス権管理テーブル
を用いて、
前記複数の仮想計算機のうちの第1の仮想計算機が送信した送信データを受信する場合、前記第1の仮想計算機から自己へのデータ送信を許可するように前記仮想計算機アクセス権管理テーブルを更新する送信権限設定処理と、
前記アプリケーションプログラムが前記複数の仮想計算機のうちの第2の仮想計算機へ送信データを送信する場合、自己から前記第2の仮想計算機へのデータ送信を許可することが前記仮想計算機アクセス権管理テーブルに記憶されているか否かを判定する設定判定処理と、
記憶されていると前記設定判定処理で判定した場合に、前記第2の仮想計算機へ送信データを送信する送信処理と
を各仮想計算機に実行させることを特徴とする仮想計算機システムの通信制御プログラム。 - 1台の計算機において複数の仮想計算機が同時に動作し、前記複数の仮想計算機の各仮想計算機は互いに仮想ネットワークを介して通信する仮想計算機システムであって、前記各仮想計算機では、アプリケーションプログラムが動作するとともに、前記アプリケーションプログラムによる他の仮想計算機との通信を制御する通信ドライバが動作する仮想計算機システムの通信制御方法であり、
各仮想計算機について、その仮想計算機へのデータ送信を許可するか否かを、他の仮想計算機毎に記憶する仮想計算機アクセス権管理テーブル
を用いて、
前記通信ドライバが、前記複数の仮想計算機のうちの第1の仮想計算機が送信した送信データを受信する場合、前記第1の仮想計算機から自己へのデータ送信を許可するように前記仮想計算機アクセス権管理テーブルを更新する送信権限設定ステップと、
前記通信ドライバが、前記アプリケーションプログラムが前記複数の仮想計算機のうちの第2の仮想計算機へ送信データを送信する場合、自己から前記第2の仮想計算機へのデータ送信を許可することが前記仮想計算機アクセス権管理テーブルに記憶されているか否かを判定する設定判定ステップと、
前記通信ドライバが、記憶されていると前記設定判定ステップで判定した場合に、前記第2の仮想計算機へ送信データを送信する送信ステップと
を備えることを特徴とする仮想計算機システムの通信制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009054383A JP5398309B2 (ja) | 2009-03-09 | 2009-03-09 | 仮想計算機システム、仮想計算機システムの通信制御プログラム及び仮想計算機システムの通信制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009054383A JP5398309B2 (ja) | 2009-03-09 | 2009-03-09 | 仮想計算機システム、仮想計算機システムの通信制御プログラム及び仮想計算機システムの通信制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010211339A JP2010211339A (ja) | 2010-09-24 |
JP5398309B2 true JP5398309B2 (ja) | 2014-01-29 |
Family
ID=42971465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009054383A Active JP5398309B2 (ja) | 2009-03-09 | 2009-03-09 | 仮想計算機システム、仮想計算機システムの通信制御プログラム及び仮想計算機システムの通信制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5398309B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5491102B2 (ja) * | 2009-08-27 | 2014-05-14 | ルネサスエレクトロニクス株式会社 | データプロセッサ |
WO2012157166A1 (ja) * | 2011-05-16 | 2012-11-22 | パナソニック株式会社 | 仮想計算機システム、仮想計算機システムの制御方法、仮想計算機システムの制御プログラム、及び集積回路 |
US9699201B2 (en) * | 2014-09-25 | 2017-07-04 | International Business Machines Corporation | Automated response to detection of threat to cloud virtual machine |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0365734A (ja) * | 1989-08-04 | 1991-03-20 | Fujitsu Ltd | 仮想計算機システムにおけるvm間通信方式 |
JP2002073358A (ja) * | 2000-09-04 | 2002-03-12 | Hitachi Ltd | 仮想計算機主記憶のアクセス制御方法 |
JP2005293417A (ja) * | 2004-04-02 | 2005-10-20 | Sony Corp | コンピュータ機器、コンピュータネットワークシステム、プログラム転送方法およびプログラム転送用プログラム |
JP4756603B2 (ja) * | 2006-10-10 | 2011-08-24 | ルネサスエレクトロニクス株式会社 | データプロセッサ |
JP2008271339A (ja) * | 2007-04-23 | 2008-11-06 | Toshiba Corp | セキュリティゲートウェイシステムとその方法およびプログラム |
JP5532793B2 (ja) * | 2009-09-28 | 2014-06-25 | 富士通株式会社 | プログラム及び通信制御方法 |
-
2009
- 2009-03-09 JP JP2009054383A patent/JP5398309B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010211339A (ja) | 2010-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10402341B2 (en) | Kernel-assisted inter-process data transfer | |
US8707417B1 (en) | Driver domain as security monitor in virtualization environment | |
EP1989635B1 (en) | Migrating a virtual machine that owns a resource such as a hardware device | |
US9448783B2 (en) | Software delivery for virtual machines | |
US7634608B2 (en) | Bridging network components | |
US9086907B2 (en) | Apparatus and method for managing virtual machine addresses | |
US9535732B2 (en) | Zero copy transmission in virtualization environment | |
US20090276774A1 (en) | Access control for virtual machines in an information system | |
US10579412B2 (en) | Method for operating virtual machines on a virtualization platform and corresponding virtualization platform | |
WO2016106867A1 (zh) | 一种在虚拟化环境中保护根ca证书的方法与系统 | |
US10810036B1 (en) | Traffic management on an interconnect | |
US9904564B2 (en) | Policy enforcement by hypervisor paravirtualized ring copying | |
EP3070633B1 (en) | Network interface devices with remote storage control | |
JP2010282447A (ja) | 仮想計算機システム、そのアクセス制御方法及び通信装置 | |
KR20090091148A (ko) | 신뢰 플랫폼 모듈(tpm) 공유 방법 및 신뢰 플랫폼 모듈(tpm) 공유 시스템 | |
US10635816B2 (en) | Restricting reprogramming of a redirected USB device | |
EP3516841B1 (en) | Remote computing system providing malicious file detection and mitigation features for virtual machines | |
JP5398309B2 (ja) | 仮想計算機システム、仮想計算機システムの通信制御プログラム及び仮想計算機システムの通信制御方法 | |
JP2007323354A (ja) | マシン管理システム | |
JP2011070526A (ja) | 制御仮想計算機プログラム、ハイパーバイザプログラム、制御仮想計算機制御方法及び仮想計算機制御方法 | |
US20230035594A1 (en) | Managing peripherals in a containerized environment | |
US11650939B2 (en) | Managing access to peripherals in a containerized environment | |
EP3555787B1 (en) | Safe mounting of external media | |
JP2012093917A (ja) | 仮想制御プログラム、情報処理装置及び仮想制御方法 | |
JP2012003302A (ja) | ゲストos制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110928 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130709 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130902 |
|
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: 20130924 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131022 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5398309 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |