JP5617839B2 - パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
JP5617839B2
JP5617839B2 JP2011510394A JP2011510394A JP5617839B2 JP 5617839 B2 JP5617839 B2 JP 5617839B2 JP 2011510394 A JP2011510394 A JP 2011510394A JP 2011510394 A JP2011510394 A JP 2011510394A JP 5617839 B2 JP5617839 B2 JP 5617839B2
Authority
JP
Japan
Prior art keywords
virtual machine
packet
movement
addressed
switch
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.)
Expired - Fee Related
Application number
JP2011510394A
Other languages
English (en)
Other versions
JPWO2010123140A1 (ja
Inventor
鈴木 順
順 鈴木
正徳 高島
正徳 高島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2011510394A priority Critical patent/JP5617839B2/ja
Publication of JPWO2010123140A1 publication Critical patent/JPWO2010123140A1/ja
Application granted granted Critical
Publication of JP5617839B2 publication Critical patent/JP5617839B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Description

本発明は装置上で実行される仮想マシンを装置間で移動することのできるパケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
この種のパケット通信システムでは、システムのコンピュータを保守点検する際などに、ネットワークを通じて提供するサービスの実行をあるコンピュータから別のコンピュータに移動することにより、サービスの提供が継続される。このようなパケット通信システムの一例が特許文献1、特許文献2及び非特許文献1に記載されている。
特許文献1に記載された仮想装置構成システムは、仮想化環境において仮想装置を異なる物理装置に移動するための構成を備えている。
また、特許文献2に記載されたストレージシステムは、複数のストレージ装置間のデータの移行の際に、移行元のストレージに対するアクセスを止めた状態で、移行先のストレージへのデータの移動を行う。そして、ストレージシステムは、データの移動が完了した後に、ホストの接続先を移行先のストレージに切り替えてアクセスを再開させる。
さらに、非特許文献1に記載されたパケット通信システムは、移動元ホストから移動先ホストにサービスを移動させるための構成を備えている。
以下、図面を参照して、非特許文献1に記載のパケット通信システムについて説明する。
図8を参照すると、非特許文献1に記載のパケット通信システムは、移動元ホスト(移動元通信装置)9と、移動先ホスト(移動先通信装置)10と、ネットワーク共有記憶装置4と、ネットワークスイッチA1と、外部ネットワークA2から構成される。
移動元ホスト9は、サービスが移動されるまでサービスを提供する。移動先ホスト10は、サービスが移動された後に、サービスを引き継ぐ移動先である。ここで、サービス(仮想マシン)の移動とは、移動元ホストで実行されているサービスを移動先ホストに引き継ぎ、移動先ホストにおいて移動元ホストで実行されていたものと同じサービスを実行することのできる状態にすることである。その際、移動元ホストで実行されていたサービスは停止される。
ネットワーク共有記憶装置4は、移動元ホスト9と移動先ホスト10との共有記憶装置であり、サービスの移動前の仮想マシン11とサービスの移動後の仮想マシン21の2次記憶装置の機能を提供するものである。ネットワークスイッチA1は、移動元ホスト9と移動先ホスト10とネットワーク共有記憶装置4とを接続する。また、ネットワークスイッチA1は、外部ネットワークA2に接続されている。
移動元ホスト9は、仮想マシン11と、仮想マシンモニタ91と、計算機ハードウェア92とから構成される。
計算機ハードウェア92は、計算を行うCPU(Central Processing Unit、中央処理装置)131と、メモリ132と、移動元ホスト9をネットワークスイッチA1に接続するネットワークインタフェース921から構成される。
仮想マシン11は、オペレーティングシステムやアプリケーションを含み、サービスを提供する。仮想マシン11は、コンピュータが提供するサービスを移動元ホスト9から移動先ホスト10に移す際、移動先ホスト10に移動する。
仮想マシンモニタ91は、仮想マシン11の計算機ハードウェア92へのアクセスを制御し、仮想マシン11が移動先ホスト10に移動する際に、仮想マシン11に関する情報を移動先ホスト10に送信する。この仮想マシンモニタ91は、移動制御部911と、転送バッファ122と、ダーティメモリ検出部121と、HW(Hardware、ハードウェア)アクセス制御部124から構成される。
転送バッファ122は、HWとしてはメモリ132上に確保され、移動先ホスト10に送信するダーティメモリの情報を記憶する。ここで、ダーティメモリとは、仮想マシン11のデータを移動している間に、仮想マシン11がメモリ132に書き込んだデータのことである。言い換えれば、移動した仮想マシン11のデータと、仮想マシン11の移動中に更新されたデータとの差分のことを示しているといえる。ダーティメモリ検出部121は、仮想マシン11が移動している間に新たにメモリ132に書き込まれたデータ(ダーティメモリ)を記憶しておくことで、仮想マシン11の移動中に生じたダーティメモリを検出し、検出したダーティメモリを転送バッファ122に書き出す。HWアクセス制御部124は、仮想マシン11の計算機ハードウェア92へのアクセスの制御を行う。なお、移動制御部911の動作については、後述する。
移動先ホスト10は、仮想マシン21と、仮想マシンモニタ101と、計算機ハードウェア102とから構成される。
計算機ハードウェア102の構成は、移動元ホスト9が含む計算機ハードウェア92の構成と同様であり、CPU131、メモリ132、ネットワークインタフェース921とがそれぞれCPU231、メモリ232、ネットワークインタフェース1021とに対応する。
仮想マシン21は、移動元ホスト9から移動し、サービスを継続する。仮想マシン21は、仮想マシン11の移動先ホスト10への移動が完了し、仮想マシン21としてサービスを開始するまで停止している。
仮想マシンモニタ101は、仮想マシン21の計算機ハードウェア102へのアクセスを制御し、仮想マシン11が移動元ホスト9から移動先ホスト10へ移動する際に仮想マシン11の情報を受信する。この仮想マシンモニタ101は、移動する仮想マシン11に関する情報を受信する移動制御部1011と、仮想マシン21の計算機ハードウェア23へのアクセスの制御を行う、HW(ハードウェア)アクセス制御部224から構成される。なお、移動制御部1011の動作については後述する。
図9のフローチャートを参照して、移動元ホスト9内の移動制御部911および移動先ホスト10内の移動制御部1011の動作について説明する。
まず始めに、移動制御部911は、仮想マシン11が移動先ホスト10へ移動することの通知を受信する(ステップc1)。続いて、移動制御部911は、一定周期で仮想マシン11を停止し、ダーティメモリを移動先ホスト10に送信する(ステップc2)。移動制御部911は、一定周期の間に送信したダーティメモリのデータ量が、前述の一定周期の間にダーティとなったメモリのデータ量より小さいという条件が満たされるまでステップc2を繰り返す(ステップc3)。
この条件が満たされたあと、移動制御部911は、一定周期で停止している仮想マシン11の再開を中止する(ステップc4)。ここで、移動制御部911は、ダーティメモリ検出部121に、前回停止時から今回停止時までに仮想マシン11がメモリ132に書き込んだデータ(ダーティメモリ)の検出を指示し、ダーティメモリ検出部121に、検出したダーティメモリを転送バッファ122に送るように指示を行う。その後、移動制御部911は、転送バッファ122に記憶された仮想マシン11のダーティメモリとCPU131のレジスタ情報を移動先ホスト10の仮想マシンモニタ101に送信する(ステップc5)。
続いて、移動制御部1011は、一定周期毎に移動元ホスト9から移動する仮想マシン11のダーティメモリの情報を受信し、受信した情報を、仮想マシン21に割り当てたメモリ232上に反映させる。移動制御部1011はまた、仮想マシン11が移動元ホスト9において、移動の最終段階で完全に停止した際のダーティメモリとCPU131のレジスタ情報を受信し、ダーティメモリの情報をメモリ232に、レジスタ情報をCPU231のレジスタ情報に反映し、仮想マシン21によるサービスを開始する(ステップc6)。
仮想マシン21が再開されたあと、移動制御部1011はネットワークスイッチA1にパケット送信を再開するよう指示し(ステップc7)、パケット送受信を開始する(ステップc8)。ここで、仮想マシン21の再開とは、移動先ホスト10において、移動前と同じ状態でサービスを開始するという動作を示している。
さらに、図10のフローチャートを参照して、上述した移動制御部911のステップc2の動作(一定周期で仮想マシン11を停止し、ダーティメモリを送信)について、詳細に説明する。
移動制御部911は、まず一定周期で仮想マシン11を停止する(ステップc2−1)。続いて、移動制御部911は、ダーティメモリ検出部121に、前回停止時から今回停止時までに仮想マシン11がメモリ132に書き込んだデータの検出を行うよう、指示をする(ステップc2−2)。その後、移動制御部911は、ダーティメモリ検出部121に、ステップc2−2において検出したダーティメモリを転送バッファ122に書き出すように指示をする(ステップc2−3)。その後、移動制御部911は仮想マシン11を再開し(ステップc2−4)、転送バッファ122に書き出された仮想マシン11のダーティメモリを移動先ホスト10に送信して(ステップc2−5)、図9のフローチャートにおけるステップc2の動作は終了となる。以降、図9におけるステップc3の条件を満たすまで、上述の動作を繰り返す。
特開2008−225546号公報([0026]〜[0030]段落) 特開2008−165379号公報([0006]段落)
C.Clark他著、「Live Migration of Virtual Machine」、NSDI‘05:2nd Symposium on Networked Systems Design & Implementation、2005年5月2日〜4日、pp.273−286
上述したパケット通信システムにおいては、仮想マシンを移動する間に仮想マシンが送受信するパケットが考慮されていなかった。
そのため、仮想マシンを移動する際、仮想マシンを移動元ホストで停止している際に、ネットワークから受信する仮想マシン宛てのパケットが欠落してしまうことがある、という問題点があった。
本発明の目的は、仮想マシンを移動する際に、仮想マシンが送受信するパケットが欠落してしまうことがあるという問題点を解決するための技術を提供することにある。
本発明によるパケット通信システムは、仮想マシン手段と、移動元通信手段と、移動先通信手段と、仮想マシン手段が移動元通信手段から移動先通信手段に移動する間、仮想マシン手段宛てのパケットを保存し、移動先通信手段へ保存したパケットを転送する記憶手段と、を備える。
本発明によるスイッチは、仮想マシン手段が、仮想マシン手段を備える移動元通信手段から仮想マシン手段の移動先である移動先通信手段に移動する間、仮想マシン手段宛てのパケットを保存する記憶手段と、移動先通信手段へ保存したパケットを転送する転送制御手段と、を備える。
本発明によるパケット通信装置は、仮想マシン手段と、仮想マシン手段が、自通信装置から前記仮想マシン手段の移動先である他の通信装置に移動する間、仮想マシン手段宛てのパケットを保存する記憶手段と、記憶手段に記憶したパケットを仮想マシン手段に転送する移動元移動制御手段と、を備える。
本発明による他のパケット通信装置は、仮想マシン手段が他の通信装置から自通信装置に移動する間、仮想マシン手段宛てのパケットを保存する記憶手段と、記憶手段に記憶したパケットを仮想マシン手段に転送する移動先移動制手段と、を備える。
本発明によるパケット通信方法は、仮想マシン手段が第一の通信手段から第二の通信手段に移動する間、前記仮想マシン手段宛てのパケットを保存し、第二の通信手段へ保存したパケットを転送する。
本発明によるパケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体は、仮想マシン手段が第一の通信手段から第二の通信手段に移動する間、パケットを保存する記憶手段に仮想マシン手段宛てのパケットを保存する処理と、第二の通信手段へ保存したパケットを転送する処理と、をコンピュータに実行させるためのパケット通信プログラムを記録している。
本発明の効果は、プログラムを実行する仮想マシンを異なる通信装置に移動させる際に、仮想マシンが送受信するパケットが欠落しないことにある。
本発明の第1の実施の形態の構成を示すブロック図である。 本発明の第1の実施の形態の動作を示すフローチャートである。 本発明の第2の実施の形態の構成を示すブロック図である。 本発明の第2の実施の形態の動作を示すフローチャートである。 本発明の第3の実施の形態の構成を示すブロック図である。 本発明の第3の実施の形態の動作を示すフローチャートである。 本発明の基本的な構成を示すブロック図である。 背景技術に記載のパケット通信システムの構成を示すブロック図である。 背景技術に記載のパケット通信システムの動作を示すフローチャートである。 図9のステップc2の詳細な動作を示すフローチャートである。
次に、本発明を実施するための形態について図面を参照して詳細に説明する。
<基本的な構成>
図7は、本発明を実施するための形態の基本的な構成を示すブロック図である。
図7を参照すると、本発明の基本的な構成は、移動元ホスト1001(移動元通信装置)と、移動先ホスト1002(移動先通信装置)と、ネットワークスイッチ1003と、ネットワーク1005からなる。
移動元ホスト1001は、仮想マシン1010、仮想マシンモニタ1012、計算機ハードウェア1013から構成される。移動元ホスト1001は、仮想マシン1010の移動に伴うサービスの移動前に、サービスを提供する。
仮想マシン1010は、オペレーティングシステムやアプリケーションを含み、サービスを提供する。仮想マシンモニタ1012は、仮想マシン1010の計算機ハードウェア1013へのアクセスを制御し、仮想マシン1010が移動先ホスト1002に移動する際には仮想マシン1010に関する情報を送信する移動制御部1123を含む。
移動先ホスト1002は、仮想マシンの移動後にサービスを引き継ぐ移動先である。
移動元ホスト1001内の仮想マシン1010が移動先ホスト1002へ移動すると、仮想マシン1021が、仮想マシン1010が提供していたサービスを継続する。仮想マシン1021は、仮想マシン1010の移動先ホスト1002への移動が完了し、仮想マシン1021としてサービスを開始するまで停止している。
仮想マシンモニタ1022は、移動制御部1221を含む。移動制御部1221は、仮想マシン1021が移動元ホスト1001から移動先ホスト1002に移動する場合に仮想マシン1010の情報を受信する。そして、移動制御部1221は、受信が完了した後仮想マシン1021を再開し、ネットワークスイッチ1003の仮想マシン1021へのパケット送信のタイミングを制御する。
ネットワークスイッチ1003は、移動元ホスト1001と、移動先ホスト1002とを接続し、パケットの転送を行う。また、ネットワークスイッチ1003はネットワーク1005に接続している。
さらに、ネットワーク1005から受信する、仮想マシン1010及び仮想マシン1021宛てのパケットを一時的に保存するパケットバッファ1111(記憶部)が存在する。
このパケットバッファ1111はどこに設けられても良い。例えば移動元ホスト1001内、移動先ホスト1002内、またはネットワークスイッチ1003内の少なくともいずれか1箇所にパケットバッファ1111を設けてもよい。図7においては、移動元ホスト1001の仮想マシンモニタ1012内、移動先ホスト1002の仮想マシンモニタ1022内及びネットワークスイッチ1003内に、パケットバッファ1111が図示されている。
以下、第1の実施の形態では、パケットバッファがネットワークスイッチ内にある場合、第2の実施の形態では、パケットバッファが移動元ホスト内にある場合、第3の実施の形態では、パケットバッファが移動先ホスト内にある場合、の構成と動作についてそれぞれ詳細に説明する。
<第1の実施の形態>
<構成>
図1は、本発明を実施するための第1の実施の形態の構成を示すブロック図である。
図1を参照すると、本発明の第1の実施の形態は、移動元ホスト1と、移動先ホスト2と、ネットワークスイッチ3と、ネットワーク共有記憶装置4と、ネットワーク5とから構成される。
移動元ホスト1は、仮想マシンの移動に伴いサービスが移動するまで、サービスを提供する。移動先ホスト2は、仮想マシンの移動に伴いサービスを引き継ぐ移動先である。ネットワークスイッチ3は、移動元ホスト1と、移動先ホスト2と、ネットワーク共有記憶装置4とを接続し、パケットの転送を行う。また、ネットワークスイッチ3は、ネットワーク5に接続している。ネットワーク共有記憶装置4は、移動元ホスト1と移動先ホスト2との共有記憶装置である。
移動元ホスト1は、仮想マシン11と、仮想マシンモニタ12と、計算機ハードウェア13とから構成される。
計算機ハードウェア13は、計算を行うCPU131と、メモリ132と、移動元ホスト1とネットワークスイッチ3とを接続するネットワークインタフェース133等から構成される。なお、CPU131と、メモリ132は、図8のCPU131、メモリ132と同様のものである。
仮想マシン11は、オペレーティングシステムやアプリケーションを含み、サービスを提供する。
仮想マシンモニタ12は、仮想マシン11の計算機ハードウェア13へのアクセスを制御する。そして、仮想マシンモニタ12は、仮想マシン11が移動先ホスト2に移動する際には仮想マシン11に関する情報を移動先ホスト2に送信し、ネットワークスイッチ3が仮想マシン11に送信するパケットの切り替えのタイミングを制御する。この仮想マシンモニタ12は、移動制御部123と、転送バッファ122と、ダーティメモリ検出部121から構成される。
転送バッファ122は、メモリ132上に確保され、移動先ホスト10に送信するダーティメモリの情報を記憶する。ダーティメモリ検出部121は、仮想マシン11がメモリ132に書き込んだデータを検出し、検出したデータを転送バッファ122に書き出す。移動制御部123は、仮想マシン11が移動先ホスト2へ移動することの通知を受信し、仮想マシン11のダーティメモリを移動先ホスト2に送信する。なお、移動制御部123の詳しい動作については、後述する。
ネットワークスイッチ3は、パケット転送制御部31と、パケットバッファ32から構成され、ネットワーク5に対しパケット転送の機能を提供する。
パケットバッファ32は、一時的にパケットを記憶する。パケットの記憶を開始する時期は、パケット転送制御部31が移動元ホスト1内の移動制御部123から仮想マシン11宛てのパケット送信停止通知を受信した時点である。そして、パケットの記憶を終了する時期は、移動先ホスト2内に移動された仮想マシン11の稼働状態によって仮想マシン21が稼働を再開し、仮想マシン21宛てのパケット送信再開通知をパケット転送制御部31が受信した時点である。なお、パケット転送制御部31の詳しい動作については、後述する。
移動先ホスト2は、仮想マシン21と、計算機ハードウェア23と、仮想マシンモニタ22とから構成される。
計算機ハードウェア23の構成は、移動元ホスト1が含む計算機ハードウェア13の構成と同様であり、CPU231、メモリ232、ネットワークインタフェース233等から構成される。
仮想マシン21は、仮想マシン11でのサービスが仮想マシン21に引き継がれる、つまり移動元ホスト1内の仮想マシン11の移動先ホスト2内への移動が完了すると、仮想マシン21は、サービスを開始する。
仮想マシンモニタ22は、移動制御部221を含む。移動制御部221は、仮想マシン23が移動元ホスト1から移動先ホスト2に移動する場合に仮想マシン11の情報を受信する。そして、移動制御部221は、仮想マシン11の情報の受信が完了した後仮想マシン23を再開し、ネットワークスイッチ3の仮想マシン21へのパケット送信のタイミングを制御する。なお、移動制御部211の動作については後述する。
<動作>
次に、図2のフローチャートを参照して本発明を実施するための第1の実施の形態の動作を説明する。以下においては、特に移動元ホスト1の移動制御部123、移動先ホスト2の移動制御部221、ネットワークスイッチ3内のパケット転送制御部31の動作を中心に詳細に説明する。
まず始めに、移動元ホスト1の移動制御部123は、仮想マシン11の移動先ホスト2への移動の通知を受信する(ステップa1)。
続いて、移動制御部123は、一定周期ごとに仮想マシン11を停止し、ダーティメモリを移動先ホスト2に送信する(ステップa2)。なお、ステップa2の動作は、すでに説明した図10のフローチャートにおけるステップc2と同様であるため、ここでは図10のフローチャートを参照して説明する。
移動制御部123は、まず一定周期で仮想マシン11を停止する(ステップc2−1)。続いて、移動制御部123は、ダーティメモリ検出部121に、前回停止時から今回停止時までに仮想マシン11がメモリ132に書き込んだデータ(ダーティメモリ)の検出を行うよう、指示をする(ステップc2−2)。その後、移動制御部123は、ダーティメモリ検出部121に、ステップc2−2において検出したデータを転送バッファ122に書き出すように指示をする(ステップc2−3)。その後、移動制御部123は仮想マシン11を再開し(ステップc2−4)、転送バッファ122に書き出された仮想マシン11のダーティメモリを移動先ホスト2に送信して(ステップc2−5)、ステップc2の動作は終了となる。以降、図2のフローチャートにおけるステップa3の条件を満たすまで、上述の動作を繰り返す。
移動制御部123は、ステップa2を一定周期の間に送信したダーティメモリのデータ量が、同じ周期の間にダーティとなったメモリのデータ量より小さいという条件を満たすまで繰り返す(ステップa3)。ここまでの動作は、図9のステップc1〜c3と同様である。
ステップa3の条件が満たされた後、移動制御部123は、ネットワークスイッチ3に仮想マシン11宛てのパケットの送信を停止するよう通知する(ステップa4)。ネットワークスイッチ3内のパケット転送制御部31は、仮想マシン11宛てのパケットの送信停止の通知を受信し、パケット送信を停止し、移動元ホスト1に確認応答を送信する(ステップa5)。また、パケットバッファ32は、パケット転送制御部31が仮想マシン11宛てのパケットの送信停止の通知を受信した時点から、ネットワーク5から受信する仮想マシン11宛てのパケットの記憶を開始する。移動制御部123は、仮想マシン11宛てのパケット送信の停止の確認応答を受信し、確認応答の受信前にネットワークスイッチ3から受信したネットワークパケットの仮想マシン11への送信の完了を待ち、パケットの送信が完了した後仮想マシン11の動作を停止する(ステップa6)。続いてパケット転送制御部31は、仮想マシン11の前回停止時から最終的に仮想マシン11を停止した段階までにダーティとなったメモリ情報とCPU131のレジスタ情報を移動先ホスト2に送信する(ステップa7)。
その後、移動先ホスト2内の移動制御部221は、移動元ホスト1が仮想マシン11の実行を停止し、移動元ホスト1から仮想マシン11のダーティメモリとCPU131のレジスタ情報を受信する。これらが完了した後、移動制御部221は、移動元ホスト1で稼働していた仮想マシン11の稼働状態を仮想マシン21が引き継ぐように、仮想マシン21の稼働を再開させる(ステップa8)。続いてパケット転送制御部31は、ネットワークスイッチ3に仮想マシン21宛てのパケットの送信を再開するよう通知する(ステップa9)。パケット転送制御部31は、仮想マシン21宛てのパケットの送信再開の通知を受信し、パケットバッファ32に記憶されていたパケットを、記憶した順に仮想マシン21に送信する。そして、パケット転送制御部31は、続いてネットワーク5から新たに受信する仮想マシン21宛てのパケットの転送を開始する(ステップa10)。なお、パケットバッファ32は、パケット転送制御部31が仮想マシン21宛てのパケットの送信再開通知を受信するまでの間、ネットワーク5から受信する仮想マシン21宛てのパケットを記憶する。以上が本実施の形態において仮想マシン11が移動元ホスト1から移動先ホスト2に移動する際の一連の動作である。
なお、本実施の形態では、仮想マシン11を一定周期で停止し、ダーティメモリを移動先ホスト2に送信する段階(ステップa2)から、仮想マシン11を完全に停止し、ダーティメモリとCPU131のレジスタ情報を移動先ホスト2に送信する段階(ステップa4以降)への移行において、一定周期の間に送信したダーティメモリのデータ量が、前述の一定周期の間にダーティとなったメモリのデータ量より小さくなることをその条件とした(ステップa3)。
しかし、両段階の移行の条件はこれに限るものではなく、例えばタイマのタイムアウトや一定周期で繰り返し行っているダーティメモリの送信回数などに設定することも可能である。
また、ステップa2からステップa4に移行する際、本実施の形態においては、上述の条件を満たすまでステップa2とステップa3を繰り返しているが、必ずしも反復する必要はない。実際には反復させることが多いが、ステップa2とステップa3とをそれぞれ1回ずつ行う構成にしても良い。
<効果>
次に、第1の実施の形態の効果について説明する。
第1の実施の形態では、仮想マシンを停止して移動する前に、仮想マシン宛てのパケット送信を停止する。そして、ネットワークスイッチ内のパケットバッファは、パケット転送制御部がパケット送信停止通知を受信した後、パケット転送制御部が移動した仮想マシン宛てのパケット送信再開通知を受信するまでの間にネットワークから受信した仮想マシン宛てのパケットを、一時的に保存する。
このように、第1の実施の形態では、ネットワークスイッチは、仮想マシンの移動中に受信した仮想マシン宛てのパケットを、パケットバッファに一時的に保存する。そして、ネットワークスイッチは、仮想マシンの移動後に保存したパケットの送信を再開する。これによって、第1の実施の形態においては、仮想マシンの移動中に仮想マシン宛てのパケットが欠落することが防止される。
したがって、第1の実施の形態は、仮想マシンを移動元ホストから移動先ホストに移動している間に、仮想マシンが送受信するパケットを欠落することなく仮想マシンを移動することができるという第1の効果を奏する。
第1の実施の形態の第2の効果は、仮想マシン内で動作する既存のプログラムを変更することなく、パケット欠落防止の機能を実現することができることである。
その理由は、第1の実施の形態は、仮想マシンモニタのレイヤにおいて、ネットワークスイッチを経由するパケットの送受信が制御されているからである。すなわち、パケットの欠落を防止する機能は、仮想マシンのプログラムに依存することなく実現されているからである。
なお、仮想マシン11と、移動元ホスト1と、移動先ホスト2と、パケットバッファ32と、のみからなる最小構成の通信システムも、第1の実施形態の効果を奏する。すなわち、最小構成の通信システムにおいて、パケットバッファ32は、仮想マシン11が、移動元ホスト1から移動先ホスト2に移動する間、仮想マシン11宛てのパケットを保存する。そして、仮想マシン11が移動先ホスト2へ移動すると、パケットバッファ32は、保存したパケットを移動先ホスト2へ転送する。
その結果、最小構成の通信システムにおいても、仮想マシンの移動中に、仮想マシンが送受信するパケットを欠落させることなく仮想マシンを移動することができるという第1の実施形態の第1の効果と同様の効果を奏する。
また、上記の最小構成の通信システムは、仮想マシンモニタのレイヤにおいて、パケットの送受信を制御する。その結果、最小構成の通信システムは、仮想マシン内で動作する既存のプログラムを変更することなく、パケット欠落防止の機能を実現するという上記の第1の実施形態の第2の効果と同様の効果を奏する。
さらに、第1の実施形態で説明したスイッチは、仮想マシンが、移動元ホストから移動先ホストに移動する間、仮想マシン宛てのパケットを保存するパケットバッファ32と、移動先通信装置へ保存したパケットを転送するパケット転送制御部31と、を備える。
このような構成を備えた第1の実施形態で説明したスイッチは、仮想マシン11が移動元ホスト1から移動先ホスト2に移動する間、仮想マシン11宛てのパケットを保存する。そして、仮想マシン11が移動先ホスト2へ移動すると、パケットバッファ32は、保存したパケットを移動先ホスト2へ転送する。
その結果、第1の実施形態で説明したスイッチは、仮想マシンの移動中に、仮想マシンが送受信するパケットを欠落させることなく仮想マシンを移動することができるという第1の実施形態の第1の効果と同様の効果を奏する。
また、第1の実施形態で説明したスイッチは、仮想マシン内で動作する既存のプログラムに依存することなく、パケットの送受信を制御する。その結果、最小構成の通信システムは、仮想マシン内で動作する既存のプログラムを変更することなく、パケット欠落防止の機能を実現するという上記の第1の実施形態の第2の効果と同様の効果を奏する。
<第2の実施の形態>
次に、本発明を実施するための第2の実施の形態について図面を参照して詳細に説明する。
<構成>
図3は、本発明の第2の実施の形態の構成を示すブロック図である。図3に示される第2の実施の形態の構成は、第1の実施の形態と比較して、パケットバッファの位置のみが異なっている。第1の実施の形態においては、パケットバッファ32はネットワークスイッチ3内にあった(図1)。一方、第2の実施の形態では、図3を参照すると、ネットワークスイッチ3内のパケットバッファ32−2に加え、移動元ホスト1がパケットバッファ800を有するという構成になっている。
移動元ホスト1内に設けられたパケットバッファ800は、仮想マシン11が停止した後から、仮想マシンが移動後、仮想マシン21として再開するまでの間、ネットワーク5から受信する仮想マシン11宛てのパケットを保存する。
ネットワークスイッチ3内のパケットバッファ32−2は、仮想マシン11が移動後に仮想マシン21として再開した後、仮想マシン21がパケットの送受信を再開するまでの間、ネットワーク5から受信する仮想マシン11宛てのパケットを保存する。
その他の構成については、第1の実施の形態と同じであるので、詳細な説明は省略する。
また、ここではパケットバッファ32−2がネットワークスイッチ3内にある構成について説明したが、移動先ホスト2内にパケットバッファ32−2が設けられている構成としても良い。
<動作>
次に、図4のフローチャートを参照して第2の実施の形態について説明する。図4を参照すると、第2の実施の形態の動作は、第1の実施の形態の動作(図2)と比較して、ステップa4とステップa5を含まない点、ステップa6の動作が異なる(ステップa6−2として図4に図示)点と、ステップa11、ステップa12が新たに追加された点とが異なっている。ここでは、第1の実施の形態の動作との差分を中心に説明する。
第1の実施の形態においては、ネットワークスイッチ3内のパケット転送制御部31が、図2のステップa5の後にネットワーク5から受信する仮想マシン11宛てのパケットをネットワークスイッチ3内のパケットバッファ32に保存していた。
しかし、第2の実施の形態では、パケットバッファ800が移動元ホスト1に設けられているため、ステップa4、ステップa5が不要となり、ステップa11とステップa12が新たに追加されている。
ステップa4、a5はそれぞれ、移動元ホスト2の移動制御部221が、ネットワークスイッチ3にパケット送信停止を通知し(ステップa4)、パケット転送制御部31が、パケット送信を停止し、移動元ホスト1に確認応答を送信する(ステップa5)というものであった。第2の実施の形態では、パケットバッファ800が移動元ホスト1内に設けられているため、ステップa4及びステップa5における移動元ホスト1とネットワークスイッチ3との間で通信を行う必要性がない。したがって、第2の実施の形態においては、ステップa4とステップa5は削除されている。
また、第1の実施の形態と比較して、第2の実施の形態ではステップa6に変更が加えられ、ステップa6−2となっている。第1の実施の形態のステップa6は、移動制御部123が仮想マシン11を停止するという動作だけであった。一方、ステップa6−2では、移動制御部123が仮想マシン11を停止すると同時に、パケットバッファ800は、ネットワーク5から受信する仮想マシン11宛てのパケットの保存を開始する。
続いて、ステップa11とステップa12の動作について説明する。ステップa11とステップa12は、移動制御部221が仮想マシン21を再開するステップa8の後に行われる。ステップa8で移動制御部221が仮想マシン21を再開した後、移動制御部221は、移動元ホスト1内のパケットバッファ800に保存したパケットを移動先ホスト2の仮想マシン21へ送信するよう、ネットワークスイッチ3を経由して移動元ホスト1へ通知する(ステップa11)。パケットバッファ800への仮想マシン11宛てのパケットの保存は、この時点で終了する。
ステップa11に続いて、ネットワークスイッチ3は、ネットワークスイッチ3内のパケットバッファ32−2にネットワーク5から受信する仮想マシン21宛てのパケットの保存を開始する(ステップa12)。なお、パケットバッファ32−2への仮想マシン21宛てのパケットの保存は、ステップa10において、移動制御部221がパケット送受信を再開するまでの間に行われる。
上記以外の動作については、第1の実施の形態とほぼ同様であるため、詳細な説明は省略する。
なお、上記の構成の欄において、パケットバッファ32−2がネットワークスイッチ3内に限らず、移動先ホスト2にあっても良いという構成を示したが、そのような構成であっても、動作の変更は1点のみである。ステップa9においては、パケット転送制御部31がネットワークスイッチ3にパケット送信再開を指示していた。しかし、パケットバッファ32−2が移動先ホスト2にある構成においては、パケット転送制御部31は、ネットワークスイッチ3にパケット送信再開の指示を出すのではなく、移動先ホスト2内の移動制御部221に指示を出す。その他の動作については変更なく実施することが可能である。
<効果>
次に、第2の実施の形態の効果について説明する。
第2の実施の形態では、移動元ホスト内とネットワークスイッチ内のそれぞれにパケットバッファを設けている。移動元ホスト内に設けられたパケットバッファには、仮想マシンが停止した後から、仮想マシンが移動して再開するまでの間、ネットワークから受信する仮想マシン宛てのパケットを保存しておく。ネットワークスイッチ内のパケットバッファには、仮想マシンが移動して再開した後、仮想マシンがパケットの送受信を再開するまでの間、ネットワークから受信する仮想マシン宛てのパケットを保存しておく。
このように、仮想マシンの移動中に受信した仮想マシン宛てのパケットを、パケットバッファに一時的に保存しておき、仮想マシンの移動後に保存したパケットの送信を再開することによって、仮想マシンの移動中に仮想マシン宛てのパケットが欠落することを防いでいる。
したがって、第2の実施の形態によれば、仮想マシンを移動元ホストから移動先ホストに移動している間に、仮想マシンが送受信するパケットを欠落することなく仮想マシンを移動することができる。
第2の実施の形態のさらに別の効果は、第1の実施の形態と同様に、仮想マシン内で動作する既存のプログラムを変更することなく、パケット欠落防止の機能を実現することができることである。
その理由は、第2の実施の形態は、仮想マシンモニタのレイヤにおいて、ネットワークスイッチを経由するパケットの送受信が制御されているからである。すなわち、パケットの欠落を防止する機能は、仮想マシンのプログラムに依存することなく実現されているからである。
<第3の実施の形態>
次に、本発明を実施するための第3の実施の形態について図面を参照して詳細に説明する。
<構成>
図5は、本発明の第3の実施の形態の構成を示すブロック図である。
図5を参照すると、第3の実施の形態の構成は、図1に示した第1の実施の形態の横成と比較して、移動元ホスト6内の仮想マシンモニタ12に換えて仮想マシンモニタ61、移動先ホスト7内の仮想マシンモニタ22に換えて仮想マシンモニタ71、ネットワークスイッチ8内のパケット転送制御部31に換えてパケット転送制御部81を含む点で異なる。また、仮想マシンモニタ61内の移動制御部611および仮想マシンモニタ71内の移動制御部711については、第1の実施の形態と比較してその動作が異なっている。
また、第1の実施の形態の構成(図1)と比較すると、第3の実施の形態の構成(図5)では、ネットワークスイッチ3内にあったパケットバッファ32がなく、移動先ホスト7内にパケットバッファ712が設けられているという点で異なっている。
移動先ホスト7内に設けられたパケットバッファ712は、仮想マシン11が完全に停止した後にネットワーク5から受信した仮想マシン11宛てのパケットの保存を開始する。パケットバッファ712は、仮想マシン11が移動先ホスト7で仮想マシン21としてパケットの送受信を再開するまでの間、ネットワーク5から受信する仮想マシン11宛てのパケットを保存する。仮想マシン11が移動先ホスト7で仮想マシン21として再開し、ネットワーク5から受信する仮想マシン宛てのパケットの宛先が仮想マシン11から仮想マシン21へと切り替わった後、パケットバッファ712は、仮想マシン11宛てのパケットの保存を終了する。その後、移動元ホスト6から転送されたパケットから順に仮想マシンへのパケット送信が再開される。
その他の構成は、第1の実施の形態と同様であるので、詳細な説明は省略する。
<動作>
次に、図6のフローチャートを参照して本発明を実施するための第3の実施の形態の動作を説明する。以下では、特に移動元ホスト6の移動制御部123、移動先ホスト7の移動制御部711、ネットワークスイッチ8内のパケット転送制御部81の動作を中心に詳細に説明する。
図6のフローチャートを参照すると、本発明を実施するための第3の実施の形態は、ステップb1〜b5を含む点で第1の実施の形態(図2)と異なっている。
まず始めに、移動元ホスト6の移動制御部611は、仮想マシン11の移動先ホスト7への移動の通知を受信する(ステップa1)。続いて、移動制御部611は、仮想マシン11を一定周期毎に停止し、ダーティメモリの情報を移動先ホスト7に送信する(ステップa2)。なお、第1の実施の形態と同様に、ステップa2の動作は、上述のステップc2の動作(図9、図10)と同様であるので、詳細の説明は省略する。ステップa2の後、移動制御部611は、ステップa2を一定周期の間に送信したダーティメモリのデータ量が、同じ周期の間にダーティとなったメモリのデータ量より小さいという条件を満たすまで繰り返す(ステップa3)。ここまでの動作は、図9のステップc1〜c3、図2(第1の実施の形態)のステップa1〜a3と同様である。
次に、移動制御部611は、仮想マシン11を停止する(ステップb1)。また、仮想マシン11が停止した後、移動先ホスト内7のパケットバッファ712は、ネットワーク5から受信した仮想マシン11宛てのパケットの保存を開始する。
第3の実施の形態においては、ステップb1以降、(1)ステップa7〜a8と、(2)ステップb2〜b4とが並行して行われる。しかし、(1)と(2)の処理は必ずしも並行処理である必要はない。ステップa8とステップb4の両方の処理が終了した後、ステップb5へと移行する構成であれば、どちらかが先に行われ、その後にもう一方の処理が行われる構成でも良い。
移動制御部611は、ダーティメモリ検出部121に、前回停止時から今回停止時までに仮想マシン11がメモリ132に書き込んだデータ(ダーティメモリ)の検出を指示する。そして、移動制御部611は、ダーティメモリ検出部121に、検出したダーテイメモリを転送バッファ122に送るように指示する。その後、移動制御部611は、転送バッファ122に記憶されたダーティメモリとCPU131のレジスタ情報とを移動先ホスト7に送信する(ステップa7)。続いて、移動先ホスト7の移動制御部711は、移動元ホスト6が仮想マシン11の実行を停止し、移動元ホスト6から仮想マシン11のダーティメモリとCPU131のレジスタ情報の受信を完了した後、移動前は仮想マシン11であった仮想マシンを仮想マシン21として再開する(ステップa8)。
ステップa7とa8とに並行して、以下に説明するステップb2〜b4が行われる。移動制御部611は、仮想マシン11の停止(ステップb1)の後、ネットワークスイッチ8に仮想マシン11宛てのパケットの送信を移動先ホスト7に切り替えるよう通知する(ステップb2)。ステップb2以降、移動先ホスト7に送信される仮想マシン11宛てのパケットは、仮想マシン11が移動先ホスト7に移動し、仮想マシン21として実行を開始するまで移動制御部711によって仮想マシンモニタ71内のパケットバッファ712に記憶される。移動制御部611は、仮想マシン11を停止した後、ネットワークスイッチ8から受信した仮想マシン11宛てのパケットを移動先ホスト7に転送する(ステップb3)。続いて、移動制御部611は、ネットワークスイッチ8から仮想マシン11宛てのパケット送信を移動先ホスト7に切り替えた旨の確認応答を受信し、移動先ホスト7に仮想マシン11宛てのパケットの転送が完了したことを通知する(ステップb4)。
以上ステップa7〜a8およびステップb2〜b4の並行処理が終了した後、パケットバッファ712は、ネットワーク5から仮想マシン11宛てに受信するパケットの保存を終了する。移動制御部711は、移動元ホスト6から仮想マシン11宛てのパケットの転送が完了した通知(ステップb4)を受信すると、実行を開始した仮想マシン21(ステップa8)に対し、仮想マシンモニタ71のパケットバッファ712に記憶されているパケットを転送する。ここで、まず移動元ホスト6から転送されたパケットが仮想マシン21に転送され、次にネットワークスイッチ8から受信したパケットが仮想マシン21に転送される(ステップb5)。続いて移動制御部711は、ネットワークスイッチ8と仮想マシン21の間のパケットの送受信を開始する(ステップa10)。以上が本実施の形態において仮想マシン11が移動元ホスト6から移動先ホスト7に移動する際の一連の動作である。
なお、本実施の形態では、仮想マシン11を一定周期で停止し、ダーティメモリを移動先ホスト7に送信する段階から、仮想マシン11を完全に停止し、ダーティメモリとCPU131のレジスタ情報を移動先ホスト7に送信する段階への移行において、一定周期の間に送信したダーティメモリのデータ量が、同じ周期の間にダーティとなったメモリのデータ量より小さくなることをその条件とした(ステップa3)。しかし、両段階の移行の条件は第1の実施の形態と同様にこれに限るものではなく、例えばタイマのタイムアウトや一定周期で繰り返し行っているダーティメモリの送信回数などに設定することも可能である。
<効果>
次に、第3の実施の形態の効果について説明する。
第3の実施の形態では、移動先ホスト内に設けられたパケットバッファは、仮想マシンが完全に停止した後にネットワークから受信した仮想マシン宛てのパケットの保存を開始する。パケットバッファは、仮想マシンが移動先ホストでパケットの送受信を再開するまでの間、ネットワークから受信する仮想マシン宛てのパケットを保存する。仮想マシンが移動先ホストで仮想マシンとして再開し、ネットワークから受信する仮想マシン宛てのパケットの宛先が切り替わった後、パケットバッファは、仮想マシン宛てのパケットの保存を終了する。その後、移動元ホストから転送されたパケットから順に仮想マシンへのパケット送信が再開される。
このように、仮想マシンの移動中に受信した仮想マシン宛てのパケットを、パケットバッファに一時的に保存しておき、仮想マシンの移動後に保存したパケットの送信を再開することによって、仮想マシンの移動中に仮想マシン宛てのパケットが欠落することを防いでいる。
したがって、第3の実施の形態によれば、ネットワークスイッチが仮想マシン移動に対応するパケットバッファを保持せず、パケット送信先の切り替えだけを行う場合でも、仮想マシンを移動元ホストから移動先ホストに移動している間に、仮想マシンが送受信するパケットを欠落することなく仮想マシンを移動することができる。
第3の実施の形態のさらに別の効果は、第1及び第2の実施の形態と同様に、仮想マシン内で動作する既存のプログラムを変更することなく、パケット欠落防止の機能を実現することができることである。
その理由は、第3の実施の形態は、仮想マシンモニタのレイヤにおいて、ネットワークスイッチを経由するパケットの送受信が制御されているからである。すなわち、パケットの欠落を防止する機能は、仮想マシンのプログラムに依存することなく実現されているからである。
上述した第1、第2の実施の形態において、ネットワークスイッチ内に設けられたパケットバッファには、所定の期間のみ、ネットワークから受信した仮想マシン宛てのパケットを保存することを記載したが、本発明の構成は上述のような構成に限定されるものではない。ネットワークスイッチが仮想マシン宛てのパケットを受信した場合、必ずネットワークスイッチ内のパケットバッファを通して転送が行われるという構成も考えられる。
なお、上述した第1、第2、第3の実施の形態である移動元ホスト、移動先ホスト及びネットワークスイッチは、ハードウェア、ソフトウェア、またはその組み合わせによって実現され得るものである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2009年4月24日に出願された日本出願特願2009−105790を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1、6、9、1001 移動元ホスト
2、7、10、1002 移動先ホスト
3、8、A1、1003 ネットワークスイッチ
4 ネットワーク共有記憶装置
5、1005 ネットワーク
A2 外部ネットワーク
11、21、1010、1021 仮想マシン
12、22、61、71、91、101、1012、1022 仮想マシンモニタ
13、23、1013、1023 計算機ハードウェア
31、81、1031 パケット転送制御部
32、712、800 パケットバッファ
121 ダーティメモリ検出部
122 転送バッファ
123、221、611、711、911、1011、1123、1221 移動制御部
124、224 HW(ハードウェア)アクセス制御部
131、231 CPU
132、232 メモリ
133、233、921、1021 ネットワークインタフェース

Claims (4)

  1. 仮想マシン手段と、移動元通信手段と、移動先通信手段と、前記仮想マシン手段が前記移動元通信手段から前記移動先通信手段に移動する間、前記仮想マシン手段宛てのパケットを保存し、前記移動先通信手段へ保存したパケットを転送する記憶手段と、前記移動元通信手段と前記移動先通信手段とをネットワークを介して接続するスイッチ手段と、を備えるパケット通信システムであって、
    前記スイッチ手段は、前記記憶手段を備え、
    前記移動元通信手段は、
    前記スイッチ手段に前記仮想マシン手段宛てのパケット送信停止通知を送信し、
    前記スイッチ手段からパケット送信停止の確認応答を受信し、
    前記パケット送信停止の確認応答の受信前に前記スイッチ手段から受信した前記仮想マシン手段宛てのパケットの送信が完了した後、前記仮想マシン手段を停止し、
    前記仮想マシン手段を前記移動先通信手段に移動させる移動元移動制御手段を備え、
    前記移動先通信手段は、
    移動した前記仮想マシン手段を再開し、停止していた前記仮想マシン手段へのパケット送信再開通知を前記スイッチ手段に送信する移動先移動制御手段を備える、
    ことを特徴とするパケット通信システム。
  2. 仮想マシン手段と、移動元通信手段と、移動先通信手段と、前記仮想マシン手段が前記移動元通信手段から前記移動先通信手段に移動する間、前記仮想マシン手段宛てのパケットを保存し、前記移動先通信手段へ保存したパケットを転送する記憶手段を備えるとともに前記移動元通信手段と前記移動先通信手段とをネットワークを介して接続するスイッチ手段と、を備えるパケット通信システムで用いられるパケット通信装置であって、
    前記パケット通信装置は前記仮想マシン手段と前記移動元通信手段とを備え、
    前記移動元通信手段は、
    前記スイッチ手段に前記仮想マシン手段宛てのパケット送信停止通知を送信し、
    前記スイッチ手段からパケット送信停止の確認応答を受信し、
    前記パケット送信停止の確認応答の受信前に前記スイッチ手段から受信した前記仮想マシン手段宛てのパケットの送信が完了した後、前記仮想マシン手段を停止し、
    前記仮想マシン手段を前記移動先通信手段に移動させる、移動元移動制御手段を備える、
    ことを特徴とするパケット通信装置。
  3. 仮想マシン手段を備える移動元通信手段と、移動先通信手段と、をスイッチ手段を介して接続し、
    前記仮想マシン手段が前記移動元通信手段から前記移動先通信手段に移動する間、前記仮想マシン手段宛てのパケットを前記スイッチ手段に保存し、
    前記スイッチ手段に前記仮想マシン手段宛てのパケット送信停止通知を送信し、
    前記スイッチ手段からパケット送信停止の確認応答を受信し、
    前記パケット送信停止の確認応答の受信前に前記スイッチ手段から受信した前記仮想マシン手段宛てのパケットの送信が完了した後、前記仮想マシン手段を停止し、
    前記仮想マシン手段を前記移動先通信手段に移動する、
    ことを特徴とするパケット通信方法。
  4. 仮想マシン手段と、移動元通信手段と、移動先通信手段と、前記仮想マシン手段が前記移動元通信手段から前記移動先通信手段に移動する間、前記仮想マシン手段宛てのパケットを保存し、前記移動先通信手段へ保存したパケットを転送する記憶手段を備えるとともに前記移動元通信手段と前記移動先通信手段とをネットワークを介して接続するスイッチ手段と、を備えるパケット通信システムで用いられるパケット通信装置のコンピュータに、
    前記仮想マシン手段が前記移動元通信手段から前記移動先通信手段に移動する間、前記仮想マシン手段宛てのパケットを前記スイッチ手段に保存する手順、
    前記スイッチ手段に前記仮想マシン手段宛てのパケット送信停止通知を送信する手順、
    前記スイッチ手段からパケット送信停止の確認応答を受信する手順、
    前記パケット送信停止の確認応答の受信前に前記スイッチ手段から受信した前記仮想マシン手段宛てのパケットの送信が完了した後、前記仮想マシン手段を停止する手順、
    前記仮想マシン手段を前記移動先通信手段に移動する手順、
    を実行させるためのパケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2011510394A 2009-04-24 2010-04-21 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体 Expired - Fee Related JP5617839B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011510394A JP5617839B2 (ja) 2009-04-24 2010-04-21 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009105790 2009-04-24
JP2009105790 2009-04-24
PCT/JP2010/057514 WO2010123140A1 (ja) 2009-04-24 2010-04-21 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2011510394A JP5617839B2 (ja) 2009-04-24 2010-04-21 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JPWO2010123140A1 JPWO2010123140A1 (ja) 2012-10-25
JP5617839B2 true JP5617839B2 (ja) 2014-11-05

Family

ID=43011251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011510394A Expired - Fee Related JP5617839B2 (ja) 2009-04-24 2010-04-21 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (3)

Country Link
US (1) US20110268113A1 (ja)
JP (1) JP5617839B2 (ja)
WO (1) WO2010123140A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5594049B2 (ja) * 2010-10-18 2014-09-24 富士通株式会社 仮想計算機移動方法、コンピュータ及びプログラム
JP2012124700A (ja) * 2010-12-08 2012-06-28 Nippon Telegr & Teleph Corp <Ntt> パケットスイッチ
US9253100B2 (en) 2010-12-10 2016-02-02 Alcatel Lucent Asynchronous virtual machine replication
JP5462197B2 (ja) * 2011-02-04 2014-04-02 日本電信電話株式会社 移行制御装置、パケット転送システム、移行制御方法およびプログラム
US8837499B2 (en) 2011-05-14 2014-09-16 International Business Machines Corporation Distributed fabric protocol (DFP) switching network architecture
JP5838661B2 (ja) * 2011-08-29 2016-01-06 富士通株式会社 データ処理システム、データ中継装置およびデータ中継方法
US8910162B2 (en) * 2012-11-30 2014-12-09 International Business Machines Corporation User datagram protocol (UDP) packet migration in a virtual machine (VM) migration
JP6053637B2 (ja) * 2013-08-07 2016-12-27 日本電信電話株式会社 仮想ホストのバージョンアップ方法、および、ネットワーク装置
CN103532815B (zh) * 2013-10-09 2017-03-15 中国联合网络通信集团有限公司 基于虚拟机迁移的报文传输方法和装置
JP6256086B2 (ja) 2014-02-19 2018-01-10 富士通株式会社 情報処理システム、移動制御方法および移動制御プログラム
EP3046028B1 (en) * 2015-01-15 2020-02-19 Alcatel Lucent Load-balancing and scaling of cloud resources by migrating a data session
JP6386485B2 (ja) * 2016-01-20 2018-09-05 日本電信電話株式会社 管理システム、管理方法及び管理プログラム
CN105808287B (zh) 2016-02-25 2019-06-18 网宿科技股份有限公司 一种重启网络服务的方法及系统
US10536552B2 (en) * 2016-05-02 2020-01-14 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Systems and methods to relocate live compute assets
CN107465626A (zh) * 2016-06-03 2017-12-12 阿里巴巴集团控股有限公司 一种虚拟机热迁移方法及装置
US11048539B2 (en) * 2018-02-27 2021-06-29 Hewlett Packard Enterprise Development Lp Transitioning virtual machines to an inactive state

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005327279A (ja) * 2004-05-11 2005-11-24 Internatl Business Mach Corp <Ibm> 仮想計算機をマイグレーションするためのシステム、方法、およびプログラム
WO2006011225A1 (ja) * 2004-07-30 2006-02-02 Mitsubishi Denki Kabushiki Kaisha 通信システム、パケットスイッチ装置、およびエッジノード装置
JP2007013463A (ja) * 2005-06-29 2007-01-18 Mitsubishi Electric Corp 無線通信システムのハンドオーバ方法および移動端末
JP2008165379A (ja) * 2006-12-27 2008-07-17 Nec Corp ストレージシステムとプログラム並びに方法
JP2008225546A (ja) * 2007-03-08 2008-09-25 Nec Corp 仮想装置構成システム、及びその方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8238376B2 (en) * 2005-04-13 2012-08-07 Sony Corporation Synchronized audio/video decoding for network devices
US7761573B2 (en) * 2005-12-07 2010-07-20 Avaya Inc. Seamless live migration of virtual machines across optical networks
US8112527B2 (en) * 2006-05-24 2012-02-07 Nec Corporation Virtual machine management apparatus, and virtual machine management method and program
JP5206674B2 (ja) * 2007-05-24 2013-06-12 日本電気株式会社 仮想マシン管理装置、仮想マシン管理方法および仮想マシン管理プログラム
US8806480B2 (en) * 2007-06-29 2014-08-12 Microsoft Corporation Virtual machine smart migration
JP4995015B2 (ja) * 2007-09-13 2012-08-08 株式会社日立製作所 仮想計算機の実行可否検査方法
US7984123B2 (en) * 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path
JP2009145931A (ja) * 2007-12-11 2009-07-02 Hitachi Ltd 仮想計算機と物理計算機との間のマイグレーション方法及びその計算機システム
US20090217296A1 (en) * 2008-02-26 2009-08-27 Alexander Gebhart Benefit analysis of implementing virtual machines
US8739179B2 (en) * 2008-06-30 2014-05-27 Oracle America Inc. Method and system for low-overhead data transfer
US9715401B2 (en) * 2008-09-15 2017-07-25 International Business Machines Corporation Securing live migration of a virtual machine from a secure virtualized computing environment, over an unsecured network, to a different virtualized computing environment
US7996484B2 (en) * 2008-12-11 2011-08-09 Microsoft Corporation Non-disruptive, reliable live migration of virtual machines with network data reception directly into virtual machines' memory
US8775544B2 (en) * 2009-02-04 2014-07-08 Citrix Systems, Inc. Methods and systems for dynamically switching between communications protocols

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005327279A (ja) * 2004-05-11 2005-11-24 Internatl Business Mach Corp <Ibm> 仮想計算機をマイグレーションするためのシステム、方法、およびプログラム
WO2006011225A1 (ja) * 2004-07-30 2006-02-02 Mitsubishi Denki Kabushiki Kaisha 通信システム、パケットスイッチ装置、およびエッジノード装置
JP2007013463A (ja) * 2005-06-29 2007-01-18 Mitsubishi Electric Corp 無線通信システムのハンドオーバ方法および移動端末
JP2008165379A (ja) * 2006-12-27 2008-07-17 Nec Corp ストレージシステムとプログラム並びに方法
JP2008225546A (ja) * 2007-03-08 2008-09-25 Nec Corp 仮想装置構成システム、及びその方法

Also Published As

Publication number Publication date
JPWO2010123140A1 (ja) 2012-10-25
US20110268113A1 (en) 2011-11-03
WO2010123140A1 (ja) 2010-10-28

Similar Documents

Publication Publication Date Title
JP5617839B2 (ja) パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3573546B2 (ja) 並列計算機における並列プロセススケジューリング方法および並列計算機用処理装置
JP6020476B2 (ja) プロセス制御装置及びその更新方法
US8893122B2 (en) Virtual computer system and a method of controlling a virtual computer system on movement of a virtual computer
US20130160005A1 (en) Apparatus and method for virtualizing input/output devices using shared memory in host-based mobile terminal virtualization environment
JP2005115506A (ja) ストレージシステム
CN104714905A (zh) 用于执行从第一适配器到第二适配器的失效转移操作的方法和系统
JP2007219757A (ja) 仮想計算機システムを機能させるためのプログラム
US20150205673A1 (en) Checkpointing Systems and Methods Using Data Forwarding
JP2006072591A (ja) 仮想計算機制御方法
JP2007018455A (ja) データマイグレーション方法又はデータマイグレーションシステム
JP2009080569A (ja) データ同期システム、方法及びプログラム、並びにサーバ
JP5366858B2 (ja) クラスタシステム、および、クラスタシステムにおける系切替え方法
KR20150111608A (ko) 가상화 서버의 이중화를 위한 제어 방법 및 이를 위한 가상화 제어 장치
US8244930B1 (en) Mechanisms for synchronizing data transfers between non-uniform memory architecture computers
CN104683486A (zh) 分布式系统中处理同步消息的方法、装置、分布式系统
JP2014106660A (ja) 並列計算機、並列計算機の制御プログラム及び並列計算機の制御方法
JP5244082B2 (ja) リアルタイム分散制御システム、リアルタイム分散制御方法、およびロボット
WO2016033755A1 (zh) 任务处理装置、电子设备及方法
JP5437556B2 (ja) 情報処理装置およびプロセッサ機能変更方法
JP2000222376A (ja) 計算機システムとその運用方法
JP2018077594A (ja) 仮想マシン管理装置、システム、仮想マシン移動方法及びプログラム
JP2011113240A (ja) 二重化処理装置
US8214554B2 (en) Periodic and non-periodic data transfer circuit analyzing pointer information
JP2000276433A (ja) データ転送装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140128

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140320

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: 20140819

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140901

R150 Certificate of patent or registration of utility model

Ref document number: 5617839

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees