JP6133804B2 - Network control device, communication system, network control method, and network control program - Google Patents
Network control device, communication system, network control method, and network control program Download PDFInfo
- Publication number
- JP6133804B2 JP6133804B2 JP2014031059A JP2014031059A JP6133804B2 JP 6133804 B2 JP6133804 B2 JP 6133804B2 JP 2014031059 A JP2014031059 A JP 2014031059A JP 2014031059 A JP2014031059 A JP 2014031059A JP 6133804 B2 JP6133804 B2 JP 6133804B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- virtual machine
- network
- network device
- set value
- 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
Links
- 238000004891 communication Methods 0.000 title claims description 91
- 238000000034 method Methods 0.000 title description 22
- 230000005012 migration Effects 0.000 claims description 67
- 238000013508 migration Methods 0.000 claims description 67
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 230000004044 response Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、ネットワーク制御装置、通信システム、ネットワーク制御方法、および、ネットワーク制御プログラムに関する。 The present invention relates to a network control device, a communication system, a network control method, and a network control program.
近年、クラウドコンピューティングが普及し、データセンタに設置される物理サーバのリソースを用いて仮想環境を構築して、ユーザに各種サービスを提供することが行われている。また、仮想スイッチを用いて、異なるデータセンタ間を跨った仮想L2(レイヤ2)ネットワーク構築も行われている。 In recent years, cloud computing has become widespread, and a virtual environment is constructed using resources of a physical server installed in a data center to provide various services to users. In addition, a virtual L2 (layer 2) network is constructed across different data centers using virtual switches.
例えば、部門サーバ、経理サーバ、出退勤管理サーバ、ファイルサーバ等を仮想マシン(以下、VM(Virtual Machine)と記載する場合がある)によって実現する企業(Z)を例にして説明する。企業(Z)では、拠点(札幌)のデータセンタ(X)で仮想マシン(A)と仮想マシン(B)とを動作させ、拠点(福岡)のデータセンタ(Y)で仮想マシン(C)と仮想マシン(D)とを動作させる。そして、Open vSwitch等による仮想スイッチを用いて、データセンタ(X)とデータセンタ(Y)とを仮想L2ネットワークで接続する。 For example, a description will be given by taking as an example a company (Z) that realizes a department server, an accounting server, an attendance / leaving management server, a file server, and the like by a virtual machine (hereinafter sometimes referred to as VM (Virtual Machine)). In the company (Z), the virtual machine (A) and the virtual machine (B) are operated at the data center (X) of the base (Sapporo), and the virtual machine (C) is operated at the data center (Y) of the base (Fukuoka). The virtual machine (D) is operated. Then, the data center (X) and the data center (Y) are connected by a virtual L2 network using a virtual switch such as Open vSwitch.
このようにして、企業(Z)では、異なるデータセンタで動作して各サービスを提供する仮想マシン間の通信を実現することで、各拠点にいる社員に対して、拠点に依存することなく、各種サービスの提供を行う。 In this way, in the company (Z), by realizing communication between virtual machines that operate in different data centers and provide each service, employees at each base can be made independent of the base, Provide various services.
このようなネットワークの拠点間において仮想マシンのライブマイグレーションが実施されることがある。 In some cases, live migration of virtual machines is performed between bases of such networks.
しかし、ライブマイグレーションの対象の仮想マシンに対し、複数のユーザのWebアクセス等の集中による頻繁なアクセスが発生したり、DoS攻撃、DDoS攻撃等による頻繁なアクセスが発生したり、当該仮想マシンやサーバにおける処理負荷が大きかったりすると、ライブマイグレーションの完了に長時間を要する場合や、ライブマイグレーションが完了しない場合がある。そこで、本発明は前記した問題を解決し、仮想マシンのライブマイグレーションの時間を短縮することを課題とする。 However, frequent access due to concentration of multiple users' web access, etc., or frequent access due to DoS attacks, DDoS attacks, etc. occurs on the virtual machine that is the target of live migration. If the processing load is large, live migration may take a long time to complete or live migration may not be completed. Accordingly, an object of the present invention is to solve the above-described problems and shorten the time for live migration of a virtual machine.
上述した課題を解決し、目的を達成するために、本発明は、ライブマイグレーションの対象となる仮想マシンの通信量を当該仮想マシンの通信経路のネットワーク装置から取得する取得部と、前記取得部によって取得された通信量が、所定の設定値を超えているか否かを判定する判定部と、前記判定部によって前記通信量が、所定の設定値を超えていると判定された場合には、前記ネットワーク装置に対し、前記仮想マシンへの通信を制限する旨を指示する装置制御部とを備えることを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention provides an acquisition unit that acquires a communication amount of a virtual machine that is a target of live migration from a network device on a communication path of the virtual machine, and the acquisition unit. A determination unit that determines whether or not the acquired communication amount exceeds a predetermined setting value, and when the determination unit determines that the communication amount exceeds a predetermined setting value, And a device control unit that instructs the network device to restrict communication to the virtual machine.
本発明によれば、仮想マシンのライブマイグレーションの時間を短縮することができる。 According to the present invention, the time for live migration of a virtual machine can be shortened.
以下、本発明を実施するための形態(実施形態)を説明する。なお、この実施形態により本発明が限定されるものではない。 Hereinafter, modes (embodiments) for carrying out the present invention will be described. In addition, this invention is not limited by this embodiment.
図1に示すように、通信システムは、拠点Aと、拠点Bと、ネットワーク制御装置10と、クラウドコントローラ(管理装置)20と、端末30とを備える。各拠点と端末30とはインターネット、VPN(Virtual Private Network)等のネットワークにより接続される。拠点内にはデータセンタが設置される。ここでは拠点Aには、データセンタ2Aが設置され、拠点Bにはデータセンタ2Bが設置されるものとする。
As shown in FIG. 1, the communication system includes a base A, a base B, a
端末30は、データセンタ2Aまたはデータセンタ2B等で動作する仮想マシン(VM)にアクセスして、各種サービスを利用する端末であり、例えばノートパソコンやスマートフォン等である。
The
データセンタ2A、データセンタ2Bは、それぞれ1台以上の物理サーバ(図示省略)が設置され、物理サーバの物理リソースを用いてVMを収容/制御するHV(ハイパーバイザ)を動作させる。なお、物理リソースとしては、通信インタフェース、プロセッサ、メモリ、ハードディスク等である。なお、HVは、VMを収容/制御する仮想ソフトウェアであり、例えば、仮想スイッチ(図3参照)を含んでいてもよい。また、データセンタ2A、データセンタ2Bは、それぞれネットワーク装置40を備える。ここでは、データセンタ2Aのネットワーク装置40をネットワーク装置40Aとし、データセンタ2Bのネットワーク装置40をネットワーク装置40Bとする。
In each of the
図2に示す通り、VM間は、仮想L2ネットワーク21により接続される。この仮想L2ネットワーク21が、データセンタ間を跨ぐ場合は、例えば、図3の仮想スイッチおよび仮想ソフトウェアスイッチと、物理ネットワーク22(ネットワーク接続装置40A、インターネット/VPNおよびネットワーク接続装置40B)を経由する経路を通るVPN技術によって実現する。
As shown in FIG. 2, VMs are connected by a
ネットワーク装置40は、各データセンタの各VMのデータ通信を中継する装置であり、例えば、このネットワーク装置40は、各VMと端末30とのデータ通信を中継する。このネットワーク装置40は、例えば、データセンタと外部ネットワークとの境界に設置されるルータである。このネットワーク装置40は、前記したルータとしての機能のほか、ファイアウォール、ロードバランサ、パケットシェイパーの機能を備えていてもよい。また、このネットワーク装置40は、VMが収容される物理サーバとは別個の装置であってもよいし、当該物理サーバにより仮想的に実現される装置であってもよいし、また、専用の物理装置であってもよい。
The
VMは、例えばWebサーバやDBサーバ等を実行する仮想的な装置であり、端末30との間でデータ通信を行い、各種サービスを提供する。なお、各VMは、動作する拠点が異なっていても、同一セグメントで動作するものとする。また、各VMはクラウドコントローラ20からの指示に基づき、データセンタを跨いだマイグレーションが行われる。例えば、VMは、クラウドコントローラ20からの指示により、データセンタ2Aからデータセンタ2Bへのマイグレーションが行われる。本実施形態において、VMのマイグレーションはライブマイグレーション(VMを稼働させた状態で、丸ごと別の物理サーバに移動させること)を想定している。
The VM is a virtual device that executes, for example, a Web server or a DB server, and performs data communication with the
クラウドコントローラ20は、VMの制御を行う装置である。ここでのVMの制御はVMを制御するHVに対して行われる。このクラウドコントローラ20は、例えば、VMを収容する物理サーバに対しマイグレーションを指示する。そして、クラウドコントローラ20は、マイグレーションの指示を行うと、マイグレーションを開始した旨をネットワーク装置10に通知する。
The
ネットワーク制御装置10は、ネットワーク装置40に対するトラヒック制限を指示する。具体的には、ネットワーク制御装置10は、ライブマイグレーションの対象となるVMの通信量を、当該VMの通信経路のネットワーク装置40から取得する。ネットワーク制御装置10は、VMの通信経路にあるネットワーク装置40を監視し、VMの通信量(例えば、http等のアプリケーションのリクエスト数、TCPセッション数、pps(packet/sec)、bps(bit/sec)等)を取得する。
The
そして、ネットワーク制御装置10は、取得されたVMの通信量が、所定の設定値を超えているか否かを判定する。例えば、ネットワーク制御装置10は、VMの通信量の判定処理として、http等のアプリケーションのリクエスト数が「1000http/sec」を超えているか否かを判定する。なお、http等のアプリケーションのリクエスト数以外に、TCPセッション数、pps、bps等をVMの通信量の判定処理に用いてもよい。
Then, the
そして、ネットワーク制御装置10は、VMの通信量が、所定の設定値を超えていると判定された場合には、ネットワーク装置40に対し、VMへの通信を制限する旨を指示(図1では「トラヒック制限指示」と記載)する。例えば、ネットワーク制御装置10は、ライブマイグレーションの対象となるVMを収容しているネットワーク装置40(例えば、境界ルータ)に対して、当該VM宛ての通信量を、設定値と同じ「1000http/sec」以下となるように削減するように設定する。このような指示を受けたネットワーク装置40は、例えば、通信中の通信量を減らしたり、新規TCPセッションの受付を停止する等を行う。その結果、当該VMへの通信が制限されるので、当該VMの負荷の軽減がされる。なお、本実施形態では、通信システムは、ネットワーク制御装置10とクラウドコントローラ20とを有する場合を説明したが、これに限定されるものではなく、ネットワーク制御装置10が有する機能をクラウドコントローラ20に適用し、ネットワーク制御装置10を設けないようにしてもよい。
Then, when it is determined that the amount of VM communication exceeds a predetermined set value, the
このようにすることで、VMのライブマイグレーション中に、当該VMへのアクセス集中等により高負荷な状態になっている場合であっても、当該VMの負荷が軽減される。その結果、当該VMのマイグレーションに要する時間を短縮することができる。 By doing so, the load on the VM is reduced even during a live migration of the VM even when the load is high due to concentration of access to the VM. As a result, the time required for migration of the VM can be shortened.
図3は、VMを動作させる物理サーバの階層構造を示す図である。なお、ここでは、一例として1台の物理サーバでVMを動作させる例を説明する。データセンタ2Aでは、物理サーバ6が動作し、データセンタ2Bでは、物理サーバ16が動作する。各物理サーバは、一般的なサーバ装置であり、プロセッサ、メモリ等のハードウェアを有する。
FIG. 3 is a diagram illustrating a hierarchical structure of physical servers that operate VMs. Here, an example in which a VM is operated by one physical server will be described as an example. The physical server 6 operates in the
データセンタ2Aの物理サーバ6は、ハードウェア6a上で仮想化ソフトウェア6bを動作させて、仮想環境を提供する。仮想化ソフトウェア6bは、仮想スイッチ6cを動作させる。また同様に、データセンタ2Bの物理サーバ16は、ハードウェア16a上で仮想化ソフトウェア16bを動作させて、仮想環境を提供する。また、仮想化ソフトウェア16bは、仮想スイッチ16cを動作させて、図2に例示した仮想L2ネットワーク21を構築する。すなわち、異なるデータセンタ間を仮想L2ネットワーク21で通信可能に接続する。
The physical server 6 of the
そして、各物理サーバの各仮想化ソフトウェアは、仮想L2ネットワーク21を利用可能な状態でVMを動作させる。具体的には、仮想化ソフトウェア6bは、物理サーバ6の物理リソースを用いてVM(A)とVM(B)とを動作させ、仮想スイッチ6cを経由して、各VMを仮想L2ネットワーク21に接続する。同様に、仮想化ソフトウェア16bは、物理サーバ16の物理リソースを用いてVM(C)とVM(D)とを動作させ、仮想スイッチ16cを経由して、各VMを仮想L2ネットワーク21に接続する。
Then, each virtualization software of each physical server operates the VM in a state where the
次に、図4を用いて、ネットワーク制御装置10を詳細に説明する。ネットワーク制御装置10は、入出力部11と、記憶部12と、制御部13とを備える。
Next, the
入出力部11は、外部装置との各種情報の入出力を司る入出力インタフェースである。この入出力部11は、例えば、ネットワーク装置40からVMの通信量に関する情報を取得したり、ネットワーク装置40へのトラヒック制限の指示を出力したりする。この入出力部11は、外部装置との入出力インタフェースのほか、ネットワーク経由で通信可能な通信インタフェースを備えていてもよい。
The input / output unit 11 is an input / output interface that controls input / output of various information to / from an external device. The input / output unit 11 acquires, for example, information related to the VM traffic from the
記憶部12は、VM情報と、ネットワーク装置情報と、設定値情報とを記憶する。 The storage unit 12 stores VM information, network device information, and setting value information.
VM情報は、通信システム内のVMに関する情報であり、例えば、図5に示すように、VMの識別情報ごとに当該VMの属する拠点等を示した情報である。図5の例を挙げて具体的に説明すると、例えば、VM情報として、VMの識別情報「VM1」と該VMが属する拠点を示す情報「拠点A」とが対応付けられて記憶部12に記憶される。 The VM information is information related to a VM in the communication system. For example, as illustrated in FIG. 5, the VM information is information indicating a base to which the VM belongs for each VM identification information. Specifically, for example, as VM information, VM identification information “VM1” and information “base A” indicating the base to which the VM belongs are associated with each other and stored in the storage unit 12. Is done.
ネットワーク装置情報は、通信システム内のネットワーク装置40に関する情報であり、例えば、図6に示すように、ネットワーク装置40の識別情報ごとに、当該ネットワーク装置40の属する拠点を示した情報である。このネットワーク装置情報は、図6に示すように、各ネットワーク装置40が収容するVMの通信量の値を含んでいてもよい。例えば、図6の例では、ネットワーク装置情報として、ネットワーク装置の識別情報「40A」と、該ネットワーク装置の属する拠点を示す情報「A」と、該ネットワーク装置が収容するVMの通信量として「800http」とが対応付けられて記憶部12に記憶される。なお、図6の例では、ネットワーク装置が収容するVMが一つであるものとして、簡略化されて記載されている。
The network device information is information related to the
設定値情報は、判定部132(後記)がネットワーク装置40に対しトラヒック制限を行うか否かを判定するための情報である。この設定値情報は、例えば、ユーザにより設定可能な情報である。例えば、図7に示すように、ユーザ応答を優先するかライブマイグレーションを優先するかを示す優先度に対応付けて、ネットワーク装置40に対しトラヒック制限を行うか否かを判定するための閾値である設定値が記憶されている。なお、ここで優先度は、値が低いほどユーザ応答を優先し、値が高いほどライブマイグレーションを優先しているものとする。
The set value information is information used by the determination unit 132 (described later) to determine whether or not to limit traffic to the
図7の例を挙げて説明すると、例えば、設定値情報として、優先度「1」と、設定値「4000http/sec」とが対応付けられて記憶部12に記憶されている。また、例えば、設定値情報として、優先度「5」と、設定値「0http/sec」とが対応付けられて記憶部12に記憶されている。このように、優先度の値が低い場合には、ユーザ応答を優先しているため、閾値である設定の通信量が多く設定されている。また、優先度の値が低い場合には、ユーザ応答を優先しているため、閾値である設定の通信量が低く設定されている。 Explaining with an example of FIG. 7, for example, as the setting value information, the priority “1” and the setting value “4000 http / sec” are associated with each other and stored in the storage unit 12. Further, for example, as the set value information, the priority “5” and the set value “0http / sec” are associated with each other and stored in the storage unit 12. As described above, when the priority value is low, priority is given to the user response, and therefore, a large amount of communication set as a threshold is set. Further, when the priority value is low, the user response is given priority, so the communication amount set as the threshold is set low.
つまり、上記の優先度「1」の例では、VMの通信量が「4000http/sec」を超えた場合に、ネットワーク装置10が、VMを収容するネットワーク装置40の通信量を「4000http/sec」以下に削減するように、ネットワーク装置40に対してトラヒック制限を指示することを意味する。また、上記の優先度「5」の例では、ネットワーク制御装置10が、VMを収容するネットワーク装置40に対する全ての通信を遮断するように、ネットワーク装置40に対してトラヒック制限を指示することを意味する。
That is, in the example of the above priority “1”, when the VM traffic exceeds “4000 http / sec”, the
制御部13は、ネットワーク制御装置10全体の制御を司る。この制御部13は、受付部130と、取得部131と、判定部132と、装置制御部133とを備える。
The
受付部130は、入出力部11経由で、設定値の指定を受け付ける。具体的には、受付部130は、ユーザ応答を優先するのか、マイグレーションを優先するのかをVMごとに段階的に設定値を指定できる画面を表示し、段階的な設定値の指定をユーザの操作により受け付ける。
The accepting
ここで、図8を用いて、ユーザ応答を優先するのか、マイグレーションを優先するのかを段階的に指定できる画面の例について説明する。図8に示すように、設定値を5段階で指定できるバーが表示されており、ユーザがマウスを操作する等により、バー上に表示される円形のポインタを左右にスライドすることで、ユーザ応答を優先した設定値もしくは、マイグレーションを優先した設定値を指定することができる。図8の例では、円形のポインタを左にスライドさせるほど、ユーザ応答を優先した設定値が設定され、円形のポインタを右にスライドさせるほど、マイグレーションを優先した設定値が設定される。 Here, an example of a screen that can specify stepwise whether to give priority to a user response or to give priority to migration will be described with reference to FIG. As shown in FIG. 8, a bar is displayed in which setting values can be specified in five stages, and the user responds by sliding the circular pointer displayed on the bar left and right by operating the mouse or the like. It is possible to specify a setting value giving priority to migration or a setting value giving priority to migration. In the example of FIG. 8, the setting value giving priority to user response is set as the circular pointer is slid to the left, and the setting value giving priority to migration is set as the circular pointer is slid to the right.
例えば、図8の(1)に示す画面例では、円形のポインタを左にスライドさせており、ユーザ応答を優先した設定値が指定されているものとする。また、図8の(2)に示す画面例では、円形のポインタを右にスライドさせており、マイグレーションを優先した設定値が指定されているものとする。 For example, in the screen example shown in (1) of FIG. 8, it is assumed that a circular pointer is slid to the left and a setting value giving priority to the user response is designated. Further, in the screen example shown in (2) of FIG. 8, it is assumed that a circular pointer is slid to the right and a setting value giving priority to migration is designated.
また、図8の例では、ユーザがマウスを操作する等により、画面の下部に表示された決定ボタンが押下されると、指定された設定値が適用される。ここで、図8に例示する画面例では、設定値を5段階で指定できるようにしており、図7に例示した設定値情報と対応している。つまり、例えば、円形のポインタを一番左にスライドさせた状態で決定ボタンが押下されると、優先度「1」に対応する設定値「4000http/sec」が適用される。また、例えば、円形のポインタを一番右にスライドさせた状態で決定ボタンが押下されると、優先度「5」に対応する設定値「0http/sec」が適用される。 In the example of FIG. 8, when the determination button displayed at the bottom of the screen is pressed by the user operating the mouse or the like, the specified setting value is applied. Here, in the screen example illustrated in FIG. 8, the setting value can be designated in five stages, and corresponds to the setting value information illustrated in FIG. That is, for example, when the determination button is pressed while the circular pointer is slid to the left, the set value “4000http / sec” corresponding to the priority “1” is applied. Further, for example, when the determination button is pressed while the circular pointer is slid to the right, the set value “0http / sec” corresponding to the priority “5” is applied.
取得部131は、入出力部11経由で、ライブマイグレーションの対象となるVMの通信量を当該VMの通信経路のネットワーク装置40から取得する。この通信量は、例えば、http等のアプリケーションのリクエスト数、TCPセッション数、pps、bps等である。
The acquisition unit 131 acquires the communication amount of the VM that is the target of live migration from the
具体的には、取得部131は、VMのマイグレーションが開始した後に、VMの通信経路のネットワーク装置40からVMの通信量に関する情報として、http等のアプリケーションのリクエスト数、TCPセッション数、pps、bps等を取得する。
Specifically, after the VM migration starts, the acquisition unit 131 uses the number of application requests such as http, the number of TCP sessions, pps, and bps as information on the VM traffic from the
判定部132は、取得部131によって取得された通信量が、所定の設定値を超えているか否かを判定する。具体的には、判定部132は、取得部131によって取得された通信量が、受付部130によって受け付けられた設定値を超えているか否かを判定する。例えば、判定部132は、設定値として「4000http/sec」が指定された場合には、VMに対するhttp等のリクエスト数が1秒間あたり「4000」を超えているか否かを判定する。
The
装置制御部133は、判定部132によってVM通信量が、設定値を超えていると判定された場合には、ネットワーク装置40に対し、VMへの通信を制限する旨を指示する。例えば、装置制御部133は、VMの通信量が指定値「4000http/sec」を超えた場合に、ネットワーク装置10が、VMを収容するネットワーク装置40の通信量を「4000http/sec」以下に削減するように、ネットワーク装置40に対してトラヒック制限を指示する。なお、通信量をどの程度削減するかについては、指定値と同じでなくともよい。
When the
また、例えば、判定部132によってVMの通信量が、設定値を超えていると判定された場合には、ネットワーク装置40に対し、VMに対する通信のうち、通信中の通信パケットを制限する旨を指示してもよいし、VMに対する新規TCPセッションの受付を中止する旨を指示してもよい。つまり、通信中の通信パケットを制限することで、VMの通信量を抑制するとともに、メモリ内容の変化を抑えてマイグレーション先にメモリ内容の変化を送る頻度を減らすことが可能である。また、新規TCPセッションの受付を中止することで、VMの通信量が新たなTCPセッションにより増加することを抑制することが可能である。
Further, for example, when the
また、装置制御部133は、ネットワーク装置40に対してVMへの通信を制限する旨を指示してから所定の設定時間(例えば、5分)が経過した場合であって、且つ、ライブマイグレーションが完了していない場合には、VMへの通信を全て遮断する旨をネットワーク装置40に指示する。これにより、確実にマイグレーションを完了させることが可能である。
Further, the
また、装置制御部133は、VMのマイグレーションの完了後、トラヒック制限を解除する。具体的には、装置制御部133は、ネットワーク装置40から当該VMのマイグレーションが完了した旨の情報を取得すると、当該VMの通信経路のネットワーク装置40に対し、トラヒック制限を解除するよう指示する。
In addition, the
ここで、DDoS攻撃を受けている際にライブマイグレーションを行う場合を例に、ネットワーク装置40Aに対するネットワーク制御処理の一連の流れについて説明する。図9は、DDoS攻撃を受けている際の、ネットワーク制御処理の一連の流れを説明する図である。
Here, a series of flow of network control processing for the
図9に示すように、DDos(Distributed Denial of Service)攻撃を受けている場合、同一ネットワーク内に存在するVMへのネットワーク帯域が使えない等の影響がでるため、仮想マシンを退避用のデータセンタ2Bにマイグレーションさせることで、他のVMへの影響を防ぐ手段が考えられる。このとき、攻撃を受けているVMをマイグレーションさせようとしても、攻撃のトラヒックを受け続けているため、ライブマイグレーションの完了に長時間を要する場合や、ライブマイグレーションが完了しない場合がある。そこで、ネットワーク制御装置10が以下に説明するネットワーク処理を行うことで、VMのライブマイグレーションの時間を短縮することができる。
As shown in FIG. 9, when receiving a DDos (Distributed Denial of Service) attack, the network bandwidth to a VM existing in the same network cannot be used. By migrating to 2B, a means for preventing the influence on other VMs can be considered. At this time, even if an attempt is made to migrate a VM under attack, since the attack traffic continues to be received, it may take a long time to complete live migration, or live migration may not be completed. Therefore, the
まず、ネットワーク制御装置10が、VMのライブマイグレーションが実施されると、データセンタ内に存在するデータセンタ2Aと外部の境界ルータ等であるネットワーク装置40Aから、当該VMの通信量を定期的に取得する(図9の(1)参照)。
First, when the VM live migration is performed, the
そして、クラウドコントローラ20が、ライブマイグレーションをVMに指示し(図9の(2)参照)、マイグレーションを開始した旨をネットワーク制御装置10に通知する。続いて、ネットワーク制御装置10は、クラウドコントローラ20からマイグレーションを開始した旨の通知を受け付けると(図9の(3)参照)、VMの通信量が設定値を超えているか判定し、VMの通信量が設定値を超えている場合には、ネットワーク装置40Aに対し、トラヒック制限を指示する(図9の(4)参照)。
Then, the
具体的には、ライブマイグレーションの実施に伴い、ネットワーク制御装置10は、当該VMを収容しているネットワーク装置40Aと連携して、当該VM宛てのトラヒック量(L4パケット、pps、bps等)を削減することで、マイグレーション時間の短縮やマイグレーションを完了可能な状態にする。なお、ルータ等がトラヒック削減できない場合、パケットシェイパーを導入し、これを用いてトラヒック量の制限を行うようにしてもよい。なお、マイグレーション完了後、クラウドコントローラ20は、経路を移動先のデータセンタ2Bのネットワーク装置40Bに切替える。また、ネットワーク制御装置10は、ネットワーク装置40Aに対するトラヒック制限を解除する。
Specifically, with the execution of live migration, the
(処理手順)
次に、図10を用いて、ネットワーク制御装置10の処理手順を説明する。なお、以下の処理は、例えば、VMのマイグレーション開始後、クラウドコントローラ20からネットワーク制御装置10へ処理の開始指示が送信されたことを契機に実行される。
(Processing procedure)
Next, the processing procedure of the
まず、ネットワーク制御装置10の取得部131は、ネットワーク装置40からVMの通信量を取得する(S1)。次に、ネットワーク制御装置10の判定部132は、取得部131によって取得された通信量が、所定の設定値を超えているか否かを判定する(S2)。例えば、判定部132は、設定値として「4000http/sec」が設定されている場合には、VMに対するhttp等のリクエスト数が1秒間あたり「4000」を超えているか否かを判定する。
First, the acquisition unit 131 of the
この結果、通信量が、所定の設定値を超えていないと判断したとき(S2でNo)、トラヒック制限は行わずに処理を終了する。また、通信量が、所定の設定値を超えていると判断したとき(S2でYes)、ネットワーク制御装置10の装置制御部133は、ネットワーク装置40に対し、VMへの通信を制限する旨を指示する(S3)。例えば、装置制御部133は、ネットワーク装置40に対し、VMに対する通信のうち、通信中の通信パケットを制限する旨を指示してもよいし、VMに対する新規TCPセッションの受付を中止する旨を指示してもよい。
As a result, when it is determined that the communication amount does not exceed the predetermined set value (No in S2), the process is terminated without performing traffic restriction. When it is determined that the communication amount exceeds the predetermined set value (Yes in S2), the
そして、装置制御部133が、当該VMのマイグレーションが完了したか否かを判定する(S4)。この結果、装置制御部133が、当該VMのマイグレーションが完了したと判断したとき(S4でYes)、ネットワーク装置40に対するトラヒック制限を解除する(S5)。
Then, the
また、装置制御部133が、S4において、当該VMのマイグレーションがまだ完了していないと判断したときは(S4でNo)、所定の設定時間(例えば、5分)が経過したか否かを判定する(S6)。この結果、所定の設定時間(例えば、5分)が経過していないと判断したときは(S6でNo)、S2へ戻る。
When the
また、所定の設定時間(例えば、5分)が経過したと判断したときは(S6でYes)、VMへの通信を全て遮断する旨をネットワーク装置40に指示する(S7)。そして、装置制御部133が、当該VMのマイグレーションが完了したか否かを判定する(S8)。この結果、装置制御部133が、当該VMのマイグレーションが完了したと判断したとき(S8でYes)、ネットワーク装置40に対するトラヒック制限を解除し(S5)、処理を終了する。
If it is determined that a predetermined set time (for example, 5 minutes) has elapsed (Yes in S6), the
このように、ネットワーク制御装置10は、ライブマイグレーションの対象となるVMの通信量を当該VMの通信経路のネットワーク装置40から取得し、取得された通信量が、所定の設定値を超えているか否かを判定する。この結果、ネットワーク制御装置10は、通信量が、所定の設定値を超えていると判定された場合には、ネットワーク装置40に対し、VMへの通信を制限する旨を指示する。このため、VMのライブマイグレーション時に、当該VMが高負荷な状態になっている場合であっても、負荷の軽減がされるので、当該VMのマイグレーションに要する時間を短縮することができる。また、ネットワーク制御装置10は、マイグレーションの開始前およびマイグレーションの完了後はトラヒック制限を行わないので、VMの性能を最大限利用することが可能である。
In this way, the
例えば、ネットワーク制御装置10では、ロードバランサを介在しないVMが、頻繁に通信を行っている場合にマイグレーション時間が長くなる問題や、マイグレーションが完了しない問題を解決することができる。また、例えば、DDoS攻撃を受けているVMを他拠点に移動させ、攻撃を受けていないVMを守る際に、トラヒック量が原因で退避できない状況の回避に有効である。
For example, the
(システム構成等)
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、判定部132と装置制御部133を統合してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(System configuration etc.)
Further, each component of each illustrated apparatus is functionally conceptual, and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured. For example, the
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。 In addition, among the processes described in the present embodiment, all or part of the processes described as being automatically performed can be manually performed, or the processes described as being manually performed can be performed. All or a part can be automatically performed by a known method. In addition, the processing procedure, control procedure, specific name, and information including various data and parameters shown in the above-described document and drawings can be arbitrarily changed unless otherwise specified.
(プログラム)
また、上記実施形態に係るネットワーク制御装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、ネットワーク制御装置10と同様の機能を実現するネットワーク制御プログラムを実行するコンピュータの一例を説明する。
(program)
In addition, it is possible to create a program in which processing executed by the
図11は、ネットワーク制御プログラムを実行するコンピュータを示す図である。図11に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
FIG. 11 is a diagram illustrating a computer that executes a network control program. As illustrated in FIG. 11, the
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
The
ここで、図11に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ1090やメモリ1010に記憶される。
Here, as shown in FIG. 11, the hard disk drive 1090 stores, for example, an
また、ネットワーク制御プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、ハードディスクドライブ1090に記憶される。具体的には、上記実施形態で説明したネットワーク制御装置10が実行する各処理が記述されたプログラムモジュールが、ハードディスクドライブ1090に記憶される。
Further, the network control program is stored in the hard disk drive 1090 as a program module in which commands executed by the
また、ネットワーク制御プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ1090に記憶される。そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
Further, data used for information processing by the network control program is stored in the hard disk drive 1090 as program data, for example. Then, the
なお、ネットワーク制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、ネットワーク制御プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
The
2 データセンタ
10 ネットワーク制御装置
11 入出力部
12 記憶部
13 制御部
20 クラウドコントローラ
21 仮想L2ネットワーク
30 端末
40 ネットワーク装置
130 受付部
131 取得部
132 判定部
133 装置制御部
2
Claims (7)
前記取得部によって取得された通信量が、所定の設定値を超えているか否かを判定する判定部と、
前記判定部によって前記通信量が、所定の設定値を超えていると判定された場合には、前記ネットワーク装置に対し、前記仮想マシンへの通信を制限する旨を指示し、前記ネットワーク装置に対して前記仮想マシンへの通信を制限する旨を指示してから所定の時間が経過した場合であって、且つ、前記ライブマイグレーションが完了していない場合には、前記仮想マシンへの通信を全て遮断する旨を指示する装置制御部と
を備えることを特徴とするネットワーク制御装置。 An acquisition unit that acquires the traffic of a virtual machine that is a target of live migration from a network device on a communication path of the virtual machine;
A determination unit for determining whether or not the traffic acquired by the acquisition unit exceeds a predetermined set value;
If the determination unit determines that the communication amount exceeds a predetermined set value, the network unit is instructed to limit communication to the virtual machine, and the network device is instructed. If a predetermined time has elapsed after instructing to restrict communication to the virtual machine and the live migration has not been completed, all communication to the virtual machine is blocked. And a device control unit for instructing to do so.
前記判定部は、前記取得部によって取得された通信量が、前記受付部によって受け付けられた設定値を超えているか否かを判定することを特徴とする請求項1〜3のいずれか一つに記載のネットワーク制御装置。 A reception unit that receives the setting value;
The said determination part determines whether the communication amount acquired by the said acquisition part exceeds the setting value received by the said reception part, It is any one of Claims 1-3 characterized by the above-mentioned. The network control device described.
ライブマイグレーションの対象となる仮想マシンの通信量を前記ネットワーク装置から取得する取得部と、
前記取得部によって取得された通信量が、所定の設定値を超えているか否かを判定する判定部と、
前記判定部によって前記通信量が、所定の設定値を超えていると判定された場合には、前記ネットワーク装置に対し、前記仮想マシンへの通信を制限する旨を指示し、前記ネットワーク装置に対して前記仮想マシンへの通信を制限する旨を指示してから所定の時間が経過した場合であって、且つ、前記ライブマイグレーションが完了していない場合には、前記仮想マシンへの通信を全て遮断する旨を指示する装置制御部と
を備えることを特徴とする通信システム。 A communication system including a network control device that controls a network device in a communication path of a virtual machine that performs live migration,
An acquisition unit that acquires the traffic of a virtual machine that is a target of live migration from the network device;
A determination unit for determining whether or not the traffic acquired by the acquisition unit exceeds a predetermined set value;
If the determination unit determines that the communication amount exceeds a predetermined set value, the network unit is instructed to limit communication to the virtual machine, and the network device is instructed. If a predetermined time has elapsed after instructing to restrict communication to the virtual machine and the live migration has not been completed, all communication to the virtual machine is blocked. And a device control unit that instructs to do so.
前記取得ステップによって取得された通信量が、所定の設定値を超えているか否かを判定する判定ステップと、
前記判定ステップによって前記通信量が、所定の設定値を超えていると判定された場合には、前記ネットワーク装置に対し、前記仮想マシンへの通信を制限する旨を指示し、前記ネットワーク装置に対して前記仮想マシンへの通信を制限する旨を指示してから所定の時間が経過した場合であって、且つ、前記ライブマイグレーションが完了していない場合には、前記仮想マシンへの通信を全て遮断する旨を指示する装置制御ステップと
を含んだことを特徴とするネットワーク制御方法。 An acquisition step of acquiring the communication amount of the virtual machine that is the target of live migration from the network device of the communication path of the virtual machine;
A determination step of determining whether or not the traffic volume acquired by the acquisition step exceeds a predetermined set value;
If it is determined by the determination step that the communication amount exceeds a predetermined set value, the network device is instructed to limit communication to the virtual machine, and the network device is instructed. If a predetermined time has elapsed after instructing to restrict communication to the virtual machine and the live migration has not been completed, all communication to the virtual machine is blocked. And a device control step for instructing to do so.
前記取得ステップによって取得された通信量が、所定の設定値を超えているか否かを判定する判定ステップと、
前記判定ステップによって前記通信量が、所定の設定値を超えていると判定された場合には、前記ネットワーク装置に対し、前記仮想マシンへの通信を制限する旨を指示し、前記ネットワーク装置に対して前記仮想マシンへの通信を制限する旨を指示してから所定の時間が経過した場合であって、且つ、前記ライブマイグレーションが完了していない場合には、前記仮想マシンへの通信を全て遮断する旨を指示する装置制御ステップと
をコンピュータに実行させることを特徴とするネットワーク制御プログラム。 An acquisition step of acquiring the communication amount of the virtual machine that is the target of live migration from the network device of the communication path of the virtual machine;
A determination step of determining whether or not the traffic volume acquired by the acquisition step exceeds a predetermined set value;
If it is determined by the determination step that the communication amount exceeds a predetermined set value, the network device is instructed to limit communication to the virtual machine, and the network device is instructed. If a predetermined time has elapsed after instructing to restrict communication to the virtual machine and the live migration has not been completed, all communication to the virtual machine is blocked. A network control program for causing a computer to execute a device control step for instructing to do so.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014031059A JP6133804B2 (en) | 2014-02-20 | 2014-02-20 | Network control device, communication system, network control method, and network control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014031059A JP6133804B2 (en) | 2014-02-20 | 2014-02-20 | Network control device, communication system, network control method, and network control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015156585A JP2015156585A (en) | 2015-08-27 |
JP6133804B2 true JP6133804B2 (en) | 2017-05-24 |
Family
ID=54775660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014031059A Expired - Fee Related JP6133804B2 (en) | 2014-02-20 | 2014-02-20 | Network control device, communication system, network control method, and network control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6133804B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7125601B2 (en) | 2018-07-23 | 2022-08-25 | 富士通株式会社 | Live migration control program and live migration control method |
US11411969B2 (en) * | 2019-11-25 | 2022-08-09 | Red Hat, Inc. | Live process migration in conjunction with electronic security attacks |
US11354207B2 (en) | 2020-03-18 | 2022-06-07 | Red Hat, Inc. | Live process migration in response to real-time performance-based metrics |
JP2021053491A (en) * | 2021-01-12 | 2021-04-08 | 株式会社三洋物産 | Game machine |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8949431B2 (en) * | 2011-08-24 | 2015-02-03 | Radware, Ltd. | Method for live migration of virtual machines |
JP5838661B2 (en) * | 2011-08-29 | 2016-01-06 | 富士通株式会社 | Data processing system, data relay device, and data relay method |
JP5602775B2 (en) * | 2012-01-19 | 2014-10-08 | 日本電信電話株式会社 | COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM |
-
2014
- 2014-02-20 JP JP2014031059A patent/JP6133804B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015156585A (en) | 2015-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11582165B1 (en) | Dynamic resource allocation of cloud instances and enterprise application migration to cloud architecture | |
US10749966B2 (en) | Communication stack optimized per application without virtual machine overhead | |
JP4805238B2 (en) | Method, apparatus and system for enabling a secure location aware platform | |
US8863138B2 (en) | Application service performance in cloud computing | |
US20160323245A1 (en) | Security session forwarding following virtual machine migration | |
EP2724244B1 (en) | Native cloud computing via network segmentation | |
US8707417B1 (en) | Driver domain as security monitor in virtualization environment | |
JP6144639B2 (en) | Network control device, communication system, network control method, and network control program | |
JP2019528005A (en) | Method, apparatus, and system for a virtual machine to access a physical server in a cloud computing system | |
US20160188378A1 (en) | Method of Facilitating Live Migration of Virtual Machines | |
AU2019261875B2 (en) | Computer system providing SaaS application session state migration features and related methods | |
US10116622B2 (en) | Secure communication channel using a blade server | |
JP6133804B2 (en) | Network control device, communication system, network control method, and network control program | |
US20160057210A1 (en) | Application profile to configure and manage a software defined environment | |
EP3070633A1 (en) | Network interface devices with remote storage control | |
US20140289198A1 (en) | Tracking and maintaining affinity of machines migrating across hosts or clouds | |
US10795998B2 (en) | Dynamic routing of files to a malware analysis system | |
US20150244568A1 (en) | Virtual device profile | |
JP6243749B2 (en) | NETWORK CONTROL DEVICE, COMMUNICATION SYSTEM, NETWORK CONTROL METHOD, AND NETWORK CONTROL PROGRAM | |
US11089066B2 (en) | System and method for dynamic medium access control (MAC) relating to a virtualization environment | |
JP5964786B2 (en) | Management device, communication system, management method, and management program | |
JP5972838B2 (en) | Management device, communication system, management method, and management program | |
Mahmood et al. | Assessment of Network & Processor Virtualization in Cloud Computing | |
Hsu et al. | Handover: A mechanism to improve the reliability and availability of network services for clients behind a network address translator | |
Huijgen | Effciently protecting virtualized desktop infrastructures against malware: Performance comparison between traditional-and centralized antivirus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20151001 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20151005 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160304 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170221 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170329 |
|
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: 20170418 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170420 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6133804 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |