JP5602775B2 - COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM - Google Patents

COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM Download PDF

Info

Publication number
JP5602775B2
JP5602775B2 JP2012008937A JP2012008937A JP5602775B2 JP 5602775 B2 JP5602775 B2 JP 5602775B2 JP 2012008937 A JP2012008937 A JP 2012008937A JP 2012008937 A JP2012008937 A JP 2012008937A JP 5602775 B2 JP5602775 B2 JP 5602775B2
Authority
JP
Japan
Prior art keywords
server
virtual machine
client device
client
communication control
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
JP2012008937A
Other languages
Japanese (ja)
Other versions
JP2013149076A (en
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012008937A priority Critical patent/JP5602775B2/en
Publication of JP2013149076A publication Critical patent/JP2013149076A/en
Application granted granted Critical
Publication of JP5602775B2 publication Critical patent/JP5602775B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Description

本発明は、通信制御システム、クライアント装置、サーバ装置、通信制御方法、及び通信制御プログラムに関する。   The present invention relates to a communication control system, a client device, a server device, a communication control method, and a communication control program.

従来、インターネットを始めとするネットワーク上のリソースを用いて、各種サービスをユーザに提供するコンピュータ利用形態として、クラウドコンピューティングが普及しつつある。ネットワークに接続されたクライアントは、ネットワーク上のサーバ内に作成された複数の仮想マシン(VM:Virtual Machine)を利用して、クラウドコンピューティングを実現する。上記ネットワークにおいて、クラウド用の仮想マシンは、サーバ管理者または管理用のソフトウェアによって集中的に管理される。例えば、オープンソースを用いたOpenstack方式では、仮想マシンの管理は、仮想マシン管理機能を有するソフトウェアが、一元的に行っている。また、ネットワークコントローラと呼ばれる機能が、仮想スイッチや仮想ルータ等の仮想ネットワークを提供し、IP(Internet Protocol)アドレスやVLAN−ID(Virtual Local Area Network−IDentification)を集中的に管理している。   2. Description of the Related Art Conventionally, cloud computing has become widespread as a computer usage mode that provides various services to users using resources on a network such as the Internet. A client connected to a network implements cloud computing using a plurality of virtual machines (VMs) created in a server on the network. In the network, cloud virtual machines are centrally managed by a server administrator or management software. For example, in the Openstack method using open source, management of virtual machines is performed centrally by software having a virtual machine management function. A function called a network controller provides a virtual network such as a virtual switch and a virtual router, and centrally manages an IP (Internet Protocol) address and a VLAN-ID (Virtual Local Area Network-IDentification).

“DOCOMO Euro Research Atelier”、[online]、[平成24年1月4日検索]、インターネット<URL:http://www.facebook.com/photo.php?fbid=180895138670951&set=a.161315133962285.36546.150800645013734&type=1&theater>“DOCOMO Euro Research Atelier”, [online], [Search January 4, 2012], Internet <URL: http://www.facebook.com/photo.php?fbid=180895138670951&set=a.161315133962285.36546.150800645013734&type= 1 & theater>

しかしながら、上述した従来の方式では、サーバ管理者が、作成済みの仮想マシンを仮想スイッチに登録させる処理を、手動で行う必要がある。また、何れの仮想スイッチに何れの仮想マシンを接続するかの設計についても、管理者が行わなければならない。更に、サーバでの仮想マシンの利用状況の変化等により、使用中のリソースに偏りが発生した場合には、管理者は、リソースが平滑化されるように、仮想マシンの移動や仮想ネットワークの再設定を行う必要がある。また、クライアントが仮想マシンや仮想ネットワークを利用する際、管理者は、CPU(Central Processing Unit)、メモリ、HDD(Hard Disk Drive)等のリソースを事前に確保しておかなければならない。これにより、管理者に掛かる負担が増大する。併せて、従来の方式では、管理用のサーバがリソース管理を集中的に行うため、特に、ネットワークに収容する仮想マシンの数が増加した場合、サーバの負荷が増大する。   However, in the conventional method described above, it is necessary for the server administrator to manually perform the process of registering the created virtual machine in the virtual switch. The administrator must also design which virtual machine is connected to which virtual switch. Furthermore, when a bias occurs in the resources in use due to changes in the usage status of virtual machines on the server, the administrator moves the virtual machine or re-creates the virtual network so that the resources are smoothed. It is necessary to make settings. Further, when a client uses a virtual machine or a virtual network, the administrator must secure resources such as a CPU (Central Processing Unit), a memory, and an HDD (Hard Disk Drive) in advance. This increases the burden on the administrator. In addition, according to the conventional method, the management server performs resource management in a concentrated manner, so that the load on the server increases particularly when the number of virtual machines accommodated in the network increases.

開示の実施例は、上記に鑑みてなされたものであって、サーバ管理者の負担を軽減すると共に、サーバの負荷を低減することができる通信制御システム、クライアント装置、サーバ装置、通信制御方法、及び通信制御プログラムを提供することを目的とする。   An embodiment of the disclosure has been made in view of the above, and can reduce a load on a server administrator and reduce a load on the server, a communication control system, a client device, a server device, a communication control method, And a communication control program.

上述した課題を解決し、目的を達成するために、本願の開示する通信制御システムは、一つの態様において、クライアント装置と、該クライアント装置に対してサービスを提供する複数のサーバ装置とを有する通信制御システムである。前記複数のサーバ装置のそれぞれは、通知部と作成部とを有する。前記通知部は、前記サーバ装置に作成された仮想マシンのリソース状況を前記クライアント装置に通知する。前記作成部は、前記クライアント装置からの要求に応じて、前記クライアント装置用の仮想マシンを作成する。前記クライアント装置は、選択部と要求部とを有する。前記選択部は、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する。前記要求部は、前記選択部により選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する。   In order to solve the above-described problems and achieve the object, a communication control system disclosed in the present application, in one aspect, includes a client device and a communication having a plurality of server devices that provide services to the client device. Control system. Each of the plurality of server devices includes a notification unit and a creation unit. The notification unit notifies the client device of a resource status of a virtual machine created in the server device. The creation unit creates a virtual machine for the client device in response to a request from the client device. The client device includes a selection unit and a request unit. The selection unit selects a server device that uses the least amount of resources from the plurality of server devices using the resource status of the virtual machine. The request unit requests the server device selected by the selection unit to create a virtual machine for the client device.

また、本願の開示するクライアント装置は、一つの態様において、複数のサーバ装置からサービスの提供を受けるクライアント装置である。前記クライアント装置は、選択部と要求部とを有する。前記選択部は、前記複数のサーバ装置のそれぞれに作成された仮想マシンのリソース状況を前記複数のサーバ装置から通知されると、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する。前記要求部は、前記選択部により選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する。   Further, the client device disclosed in the present application is a client device that receives service provision from a plurality of server devices in one aspect. The client device includes a selection unit and a request unit. When the selection unit is notified of the resource status of the virtual machine created in each of the plurality of server devices from the plurality of server devices, the selection unit uses the resource status of the virtual machine to To select the server device that uses the least amount of resources. The request unit requests the server device selected by the selection unit to create a virtual machine for the client device.

更に、本願の開示するサーバ装置は、一つの態様において、クライアント装置に対してサービスを提供するサーバ装置である。前記サーバ装置は、通知部と作成部と算出部と検索部と移動部とを有する。前記通知部は、前記サーバ装置に作成された仮想マシンのリソース状況を前記クライアント装置に通知する。前記作成部は、前記クライアント装置からの仮想マシン作成要求に応じて、前記クライアント装置用の仮想マシンを作成する。前記算出部は、前記サーバ装置以外の他のサーバ装置に作成された仮想マシンの起動数を前記他のサーバ装置毎に取得し、前記起動数を用いて、各サーバ装置における仮想マシンの起動数の平均値を算出する。前記検索部は、前記サーバ装置における仮想マシンの起動数が、前記算出部により算出された平均値を超える場合、複数のサーバ装置の中から、前記仮想マシンの起動数の最も少ないサーバ装置を検索する。前記移動部は、前記サーバ装置において起動されている仮想マシンを、前記サーバ装置から、前記検索部により検索された前記他のサーバ装置に、移動する。   Furthermore, in one aspect, the server device disclosed in the present application is a server device that provides a service to a client device. The server device includes a notification unit, a creation unit, a calculation unit, a search unit, and a movement unit. The notification unit notifies the client device of a resource status of a virtual machine created in the server device. The creation unit creates a virtual machine for the client device in response to a virtual machine creation request from the client device. The calculation unit acquires, for each of the other server devices, the number of virtual machine activations created in a server device other than the server device, and uses the number of activations to determine the number of virtual machine activations in each server device. The average value of is calculated. When the number of virtual machine activations in the server device exceeds the average value calculated by the calculation unit, the search unit searches a plurality of server devices for a server device with the smallest number of virtual machine activations. To do. The moving unit moves a virtual machine activated in the server device from the server device to the other server device searched by the searching unit.

また、本願の開示する通信制御方法は、一つの態様において、クライアント装置と、該クライアント装置に対してサービスを提供する複数のサーバ装置とを有する通信制御システムで実行される通信制御方法である。前記通信制御方法は、通知工程と選択工程と要求工程と作成工程とを含む。前記通知工程では、前記複数のサーバ装置のそれぞれが、前記サーバ装置に作成された仮想マシンのリソース状況を前記クライアント装置に通知する。前記選択工程では、前記クライアント装置が、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する。前記要求工程では、前記クライアント装置が、前記選択工程にて選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する。前記作成工程では、前記サーバ装置が、前記クライアント装置からの要求に応じて、前記クライアント装置用の仮想マシンを作成する。   In one aspect, the communication control method disclosed in the present application is a communication control method executed in a communication control system including a client device and a plurality of server devices that provide services to the client device. The communication control method includes a notification process, a selection process, a request process, and a creation process. In the notification step, each of the plurality of server devices notifies the client device of the resource status of the virtual machine created in the server device. In the selection step, the client device selects a server device that uses the least resources from the plurality of server devices using the resource status of the virtual machine. In the request step, the client device requests the server device selected in the selection step to create a virtual machine for the client device. In the creation step, the server device creates a virtual machine for the client device in response to a request from the client device.

更に、本願の開示する通信制御プログラムは、一つの態様において、コンピュータを上記クライアント装置として機能させる。すなわち、前記通信制御プログラムは、複数のサーバ装置からサービスの提供を受けるクライアント装置で実行される通信制御プログラムである。前記通信制御プログラムは、選択ステップと要求ステップとをコンピュータに実行させる。前記選択ステップでは、前記コンピュータは、前記複数のサーバ装置のそれぞれに作成された仮想マシンのリソース状況を前記複数のサーバ装置から通知されると、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する。前記要求ステップでは、前記コンピュータは、前記選択ステップにて選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する。   Furthermore, in one aspect, a communication control program disclosed in the present application causes a computer to function as the client device. In other words, the communication control program is a communication control program that is executed by a client device that receives services from a plurality of server devices. The communication control program causes a computer to execute a selection step and a request step. In the selection step, when the computer is notified of the resource status of the virtual machine created in each of the plurality of server devices from the plurality of server devices, the computer uses the resource status of the virtual machine to A server device that uses the least resources is selected from the server devices. In the request step, the computer requests the server device selected in the selection step to create a virtual machine for the client device.

本願の開示する通信制御システム、クライアント装置、サーバ装置、通信制御方法、及び通信制御プログラムは、サーバ管理者の負担を軽減すると共に、サーバの負荷を低減することができるという効果を奏する。   The communication control system, the client device, the server device, the communication control method, and the communication control program disclosed in the present application have an effect of reducing the load on the server while reducing the load on the server administrator.

図1は、通信制御システムの概略構成を示す図である。FIG. 1 is a diagram illustrating a schematic configuration of a communication control system. 図2は、クライアントの機能構成を示すブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of the client. 図3は、サーバの機能構成を示すブロック図である。FIG. 3 is a block diagram illustrating a functional configuration of the server. 図4は、通信制御システムの実行する仮想マシン作成処理を説明するためのフローチャートである。FIG. 4 is a flowchart for explaining virtual machine creation processing executed by the communication control system. 図5は、リソース再配置処理の概要を説明するための図である。FIG. 5 is a diagram for explaining the outline of the resource rearrangement process. 図6は、通信制御システムの実行するリソース再配置処理を説明するためのフローチャートである。FIG. 6 is a flowchart for explaining resource rearrangement processing executed by the communication control system. 図7は、通信制御プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。FIG. 7 is a diagram illustrating that information processing by the communication control program is specifically realized using a computer.

以下に、本願の開示する通信制御システム、クライアント装置、サーバ装置、通信制御方法、及び通信制御プログラムの実施例を、図面を参照しながら詳細に説明する。なお、以下の実施例により本願の開示する通信制御システム、クライアント装置、サーバ装置、通信制御方法、及び通信制御プログラムが限定されるものではない。   Embodiments of a communication control system, a client device, a server device, a communication control method, and a communication control program disclosed in the present application will be described in detail below with reference to the drawings. The communication control system, client device, server device, communication control method, and communication control program disclosed in the present application are not limited by the following embodiments.

まず、本願の開示する一実施例に係る通信制御システムの構成を説明する。図1は、通信制御システム1の概略構成を示す図である。図1に示すように、通信制御システム1は、後述するクライアント10と、サーバ20、30、40、50、60とを有する。クライアント10とサーバ20、30、40、50、60とは、ルータR1またはルータR2を介して、各種信号やデータの送受信が可能である。   First, the configuration of a communication control system according to an embodiment disclosed in the present application will be described. FIG. 1 is a diagram showing a schematic configuration of the communication control system 1. As illustrated in FIG. 1, the communication control system 1 includes a client 10 described later and servers 20, 30, 40, 50, 60. The client 10 and the servers 20, 30, 40, 50, 60 can transmit and receive various signals and data via the router R1 or the router R2.

また、サーバ20、30、40、50、60は、ルータR1またはルータR2を介して、相互に各種信号やデータの送受信が可能である。サーバ20は、一つまたは複数の仮想マシン20a−1、2、・・・、n(nは自然数)を内部に作成し、仮想スイッチ20bにより、各仮想マシンの起動、停止等の切替え制御を行う。また、エージェント20cは、サーバ20の通信機能を実現し、例えば、クライアント10を送信元とするリソース確認要求をルータR1から受信すると、該要求に対する応答として、リソース確認応答を返信する。各サーバ20、30、40、50、60間では、エージェントを介して、起動中の仮想マシンの数やリソース使用状況(例えば、CPU使用率、メモリ使用量)を随時交換している。   The servers 20, 30, 40, 50, and 60 can transmit and receive various signals and data to and from each other via the router R1 or the router R2. The server 20 creates one or a plurality of virtual machines 20a-1, 2,..., N (n is a natural number) inside, and performs switching control such as starting and stopping of each virtual machine by the virtual switch 20b. Do. Further, the agent 20c realizes the communication function of the server 20, for example, when receiving a resource confirmation request originating from the client 10 from the router R1, returns a resource confirmation response as a response to the request. Between the servers 20, 30, 40, 50, and 60, the number of active virtual machines and the resource usage status (for example, CPU usage rate and memory usage amount) are exchanged at any time via an agent.

なお、他のサーバ30、40、50、60の概略構成は、上述したサーバ20の構成と同様である。したがって、共通する構成要素には、末尾が同一の参照符号を用いると共に、その詳細な説明は省略する。   The schematic configuration of the other servers 30, 40, 50, and 60 is the same as the configuration of the server 20 described above. Therefore, the same reference numerals are used for common components, and detailed description thereof is omitted.

図2は、クライアント10の機能構成を示すブロック図である。図2に示すように、クライアント10は、リソース確認要求部11とサーバ選択部12と仮想マシン作成要求部13とを有する。これら各構成部分は、一方向又は双方向に、信号やデータの入出力が可能なように接続されている。リソース確認要求部11は、仮想マシンのリソース確認要求を、クラウドネットワークCに向けてブロードキャストする。サーバ選択部12は、仮想マシンのリソース状況を用いて、複数のサーバ20、30、40、50、60の中から、使用されているリソースの最も少ないサーバを選択する。仮想マシン作成要求部13は、選択されたサーバに対して、クライアント10用の仮想マシンの作成を要求する。   FIG. 2 is a block diagram illustrating a functional configuration of the client 10. As illustrated in FIG. 2, the client 10 includes a resource confirmation request unit 11, a server selection unit 12, and a virtual machine creation request unit 13. Each of these components is connected so that signals and data can be input and output in one direction or in both directions. The resource confirmation request unit 11 broadcasts a virtual machine resource confirmation request toward the cloud network C. The server selection unit 12 selects a server with the fewest resources from a plurality of servers 20, 30, 40, 50, 60 using the resource status of the virtual machine. The virtual machine creation request unit 13 requests the selected server to create a virtual machine for the client 10.

図3は、サーバ20の機能構成を示すブロック図である。図3に示すように、サーバ20は、リソース状況通知部21と仮想マシン作成部22と起動数平均値算出部23とサーバ検索部24と仮想マシン移動制御部25とを有する。これら各構成部分は、一方向又は双方向に、信号やデータの入出力が可能なように接続されている。リソース状況通知部21は、各サーバ20、30、40、50、60に作成された仮想マシンのリソース状況をクライアント10に通知する。仮想マシン作成部22は、クライアント10からの要求に応じて、クライアント10の用いる仮想マシンを作成する。起動数平均値算出部23は、他のサーバ30、40、50、60に作成された仮想マシンの起動数をサーバ毎に取得し、該起動数を用いて、各サーバ20、30、40、50、60における仮想マシンの起動数の平均値を算出する。サーバ検索部24は、自サーバ20における仮想マシンの起動数が、算出された平均値を超える場合、複数のサーバ30、40、50、60の中から、仮想マシンの起動数の最も少ないサーバを検索する。仮想マシン移動制御部25は、自サーバ20において起動されている仮想マシンを、自サーバ20から、検索されたサーバに、移動する。   FIG. 3 is a block diagram illustrating a functional configuration of the server 20. As illustrated in FIG. 3, the server 20 includes a resource status notification unit 21, a virtual machine creation unit 22, an activation number average value calculation unit 23, a server search unit 24, and a virtual machine movement control unit 25. Each of these components is connected so that signals and data can be input and output in one direction or in both directions. The resource status notifying unit 21 notifies the client 10 of the resource status of the virtual machine created in each server 20, 30, 40, 50, 60. The virtual machine creation unit 22 creates a virtual machine used by the client 10 in response to a request from the client 10. The activation number average value calculation unit 23 acquires the activation numbers of the virtual machines created in the other servers 30, 40, 50, 60 for each server, and uses the activation numbers, the servers 20, 30, 40, The average value of the virtual machine activation counts at 50 and 60 is calculated. When the number of virtual machine activations in the server 20 exceeds the calculated average value, the server search unit 24 selects the server with the smallest number of virtual machine activations from the plurality of servers 30, 40, 50, and 60. Search for. The virtual machine movement control unit 25 moves the virtual machine activated on the own server 20 from the own server 20 to the searched server.

以上、サーバ20の機能構成を説明したが、他のサーバ30、40、50、60の機能構成は、上述したサーバ20の構成と同様である。したがって、共通する構成要素には、末尾が同一の参照符号を用いると共に、その詳細な説明は省略する。   Although the functional configuration of the server 20 has been described above, the functional configurations of the other servers 30, 40, 50, and 60 are the same as the configuration of the server 20 described above. Therefore, the same reference numerals are used for common components, and detailed description thereof is omitted.

次に、通信制御システム1の動作を説明する。   Next, the operation of the communication control system 1 will be described.

図4は、通信制御システム1の実行する仮想マシン作成処理を説明するためのフローチャートである。S1では、クライアント10のリソース確認要求部11は、クラウドネットワークCに対して、クライアント10用の仮想マシンの作成を希望する旨を伝えるため、リソース確認要求メッセージをブロードキャスト送信する。リソース確認要求メッセージには、クライアント10が作成を所望する仮想マシンのスペックを示す情報が含まれる。スペックを示す情報は、例えば、CPU性能(クロック周波数、コア数、バス速度等)、メモリ容量、HDD容量である。なお、リソース確認要求メッセージの送信は、クラウドネットワークC内に存在するサーバ20、30、40、50、60の内、特定のサーバを宛先とする配信(マルチキャスト)であってもよい。   FIG. 4 is a flowchart for explaining virtual machine creation processing executed by the communication control system 1. In S <b> 1, the resource confirmation request unit 11 of the client 10 broadcasts a resource confirmation request message in order to inform the cloud network C that a virtual machine for the client 10 is desired to be created. The resource confirmation request message includes information indicating the specifications of the virtual machine that the client 10 desires to create. Information indicating the specifications includes, for example, CPU performance (clock frequency, number of cores, bus speed, etc.), memory capacity, and HDD capacity. The transmission of the resource confirmation request message may be distribution (multicast) destined to a specific server among the servers 20, 30, 40, 50, 60 existing in the cloud network C.

S2では、各サーバ20、30、40、50、60のリソース状況通知部は、エージェントにより、クライアント10から上記メッセージを受信すると、自サーバ装置内に仮想マシンを作成可能なサーバは、リソース確認応答メッセージを返信する。リソース確認応答メッセージには、自サーバの現在のリソース状況と、リソース確認要求メッセージにより要求されたスペックの仮想マシンの作成可否とを示す情報が含まれる。また、リソース状況を示す情報は、例えば、自サーバ内に作成または起動されている仮想サーバの数、CPU使用率、使用可能なメモリ容量、HDD容量である。なお、サーバ内に複数の仮想マシンが存在する場合、CPU使用率、使用可能なメモリ容量、HDD容量は、各仮想マシン毎の個別の値であってもよいし、サーバ内の全ての仮想マシンについての合計値であってもよい。   In S2, the resource status notification unit of each server 20, 30, 40, 50, 60 receives the above message from the client 10 by the agent, the server capable of creating a virtual machine in its own server device sends a resource confirmation response Reply message. The resource confirmation response message includes information indicating the current resource status of the own server and whether or not a virtual machine having the specifications requested by the resource confirmation request message can be created. The information indicating the resource status is, for example, the number of virtual servers created or activated in the own server, the CPU usage rate, the usable memory capacity, and the HDD capacity. If there are multiple virtual machines in the server, the CPU usage rate, usable memory capacity, and HDD capacity may be individual values for each virtual machine, or all virtual machines in the server It may be a total value for.

S3では、クライアント10のサーバ選択部12は、S2で返信された複数のリソース確認応答メッセージの受信に伴い、リソース状況を基に、メッセージ送信元のサーバの中から、仮想マシンを作成するのに最適なサーバを選択する。すなわち、サーバ選択部12は、各サーバ20、30、40、50、60に作成された仮想マシンのリソース状況を用いて、複数のサーバ20、30、40、50、60の中から、使用されているリソースの最も少ないサーバを選択する。このとき選択されるサーバの条件として、クライアント10は、上記のリソース状況以外に、ホップ数や遅延時間の条件を付加することもできる。例えば、クライアント10は、クライアント10からのホップ数が所定値(例えば、3〜5)以下であるサーバ、あるいは、クライアント10との通信の遅延時間が所定の閾値(例えば、10〜100ms)以下であるサーバを、選択するものとしてもよい。これにより、よりユーザの現在位置に近いサーバに仮想マシンが作成されることとなる。   In S3, the server selection unit 12 of the client 10 creates a virtual machine from the server that sent the message based on the resource status in response to the reception of the plurality of resource confirmation response messages returned in S2. Choose the best server. That is, the server selection unit 12 is used from among a plurality of servers 20, 30, 40, 50, 60 using the virtual machine resource status created in each server 20, 30, 40, 50, 60. Select the server with the fewest resources. As a server condition to be selected at this time, the client 10 can add a condition of the number of hops and a delay time in addition to the above resource status. For example, the client 10 is a server in which the number of hops from the client 10 is a predetermined value (for example, 3 to 5) or less, or a delay time of communication with the client 10 is a predetermined threshold (for example, 10 to 100 ms) or less. A certain server may be selected. As a result, a virtual machine is created on a server closer to the current position of the user.

以下、本実施例では、サーバ20、30、40、50、60の内、最適なサーバとして、サーバ20が選択されたものとする。   Hereinafter, in this embodiment, it is assumed that the server 20 is selected as the optimum server among the servers 20, 30, 40, 50, and 60.

S4では、クライアント10の仮想マシン作成要求部13は、S3で選択されたサーバ20のエージェント20cに対して、VM作成要求メッセージを送信する。このVM作成要求メッセージには、暗号化処理が施され、仮想マシンの作成に使用されるID、パスワードが含まれている。サーバ20の仮想マシン作成部22は、VM作成要求メッセージを受信すると、上記ID、パスワードを用いて、クライアント10用に仮想マシンを作成する(S5)。なお、VM作成要求を受けたサーバ20は、仮想マシンの作成に先立ち、要求元であるクライアント10に対して、ステータス(VM作成開始またはVM作成不能)を報告するものとしてもよい。   In S4, the virtual machine creation request unit 13 of the client 10 transmits a VM creation request message to the agent 20c of the server 20 selected in S3. This VM creation request message is encrypted and includes an ID and password used to create a virtual machine. When receiving the VM creation request message, the virtual machine creation unit 22 of the server 20 creates a virtual machine for the client 10 using the ID and password (S5). The server 20 that has received the VM creation request may report the status (VM creation start or VM creation is not possible) to the requesting client 10 prior to creation of the virtual machine.

サーバ20は、仮想マシンの作成を完了すると、クライアント10にその旨を知らせるため、VM作成完了メッセージを送信する(S6)。VM作成完了メッセージには、クラウドネットワークC内において仮想マシンを識別するためのVM識別子が含まれる。すなわちS6では、サーバ20は、仮想スイッチ20bを管理するコントローラに対し、仮想ネットワークへの接続設定を行うと共に、ネットワーク内で一意となるVM識別子に、アクセス先のIPアドレス等を付して、仮想マシンの作成完了及びその位置をクライアント10へ報告する。   When the creation of the virtual machine is completed, the server 20 transmits a VM creation completion message to notify the client 10 of the fact (S6). The VM creation completion message includes a VM identifier for identifying the virtual machine in the cloud network C. That is, in S6, the server 20 performs connection setting to the virtual network for the controller that manages the virtual switch 20b, and attaches the IP address of the access destination to the VM identifier that is unique in the network, and performs virtual processing. Report completion of machine creation and its location to client 10.

仮想マシンの作成完了後は、クライアント10は、各種メッセージにより、仮想マシンの挙動を制御する。例えば、クライアント10は、クラウドネットワークCに向けてVM検索要求メッセージを送信し、当該メッセージに対するエージェントからの応答を待機する。これにより、クライアント10は、応答のあったサーバを特定することができるため、現在、自装置の仮想マシンが何れのサーバに存在するかを簡易迅速に検知することができる。また、クライアント10は、検索されたサーバに対して、VM識別子を含むVM起動要求メッセージを起動命令としてユニキャスト送信することで、クラウドネットワークC上に存在する、自装置用の仮想マシンを起動させる。同様に、クライアント10は、起動されたサーバに対して、VM識別子を含むVM停止要求メッセージを停止命令としてユニキャスト送信することで、自装置用の仮想マシンを停止させる。   After the creation of the virtual machine is completed, the client 10 controls the behavior of the virtual machine with various messages. For example, the client 10 transmits a VM search request message toward the cloud network C and waits for a response from the agent to the message. As a result, the client 10 can identify the server that has responded, and therefore can easily and quickly detect in which server the virtual machine of its own device currently exists. Further, the client 10 sends a VM start request message including the VM identifier to the searched server as a start command by unicasting, thereby starting the virtual machine for its own device that exists on the cloud network C. . Similarly, the client 10 suspends the virtual machine for its own device by unicasting a VM stop request message including the VM identifier as a stop command to the started server.

続いて、図5、図6を参照しながら、通信制御システム1がサーバ間の負荷を平滑化するために実行されるリソース再配置処理について説明する。   Subsequently, a resource rearrangement process executed for the communication control system 1 to smooth the load between servers will be described with reference to FIGS. 5 and 6.

図5は、リソース再配置処理の概要を説明するための図である。図5に示すように、サーバ20、30、40には、それぞれ4つの仮想マシンが作成されている。図5において、斜線のハッチングの施された仮想マシン(VM)は起動中であることを示し、ハッチングの施されていない仮想マシン(VM)は停止中であることを示す。各サーバ20、30、40に作成された4つの仮想マシンの内、サーバ20では、全ての仮想マシン20a−1、2、3、4が起動されている。また、サーバ30、40では、4台中3台の仮想マシンが起動されており、1台は停止している。サーバ50、60は、それぞれ3つの仮想マシンを内部に有し、サーバ50では、全ての仮想マシン50a−1、2、3が起動しているが、サーバ60では、2台の仮想マシン60a−1、2が起動している。また、破線で示す矢印Y1は、起動中の仮想マシンが、サーバ20(仮想マシン20a−4)からサーバ60(仮想マシン60a−3)に移動したことを示す。これにより、クラウドネットワークC内におけるリソースの再配置が実現される。その結果、リソースは平滑化される。   FIG. 5 is a diagram for explaining the outline of the resource rearrangement process. As shown in FIG. 5, four virtual machines are created in each of the servers 20, 30, and 40. In FIG. 5, a hatched virtual machine (VM) indicates that it is being started, and a non-hatched virtual machine (VM) indicates that it is being stopped. Of the four virtual machines created in each of the servers 20, 30, 40, all virtual machines 20 a-1, 2, 3, 4 are activated on the server 20. In the servers 30 and 40, three of the four virtual machines are activated, and one is stopped. Each of the servers 50 and 60 includes three virtual machines, and all the virtual machines 50a-1, 2 and 3 are activated in the server 50, but in the server 60, two virtual machines 60a- 1 and 2 are running. An arrow Y1 indicated by a broken line indicates that the active virtual machine has moved from the server 20 (virtual machine 20a-4) to the server 60 (virtual machine 60a-3). Thereby, the rearrangement of resources in the cloud network C is realized. As a result, the resources are smoothed.

具体的には、各サーバ20、30、40、50、60のエージェントは、他のエージェントと情報交換をしており、クラウドネットワークC内の各サーバの平均VM起動数が “3”であることを事前に把握している。サーバ20は、自装置のVM起動数が“4”に達し、平均VM起動数である“3”を超えたことから、リソースに余裕が無くなったものと判断し、仮想マシン20a−4の移動先を検索する。検索の結果、サーバ20は、他のサーバの内、サーバ60のVM起動数が、平均値を下回る“2”であることを検知する。したがって、サーバ20は、サーバ60に仮想マシンを1台移動させる。   Specifically, the agents of each server 20, 30, 40, 50, 60 are exchanging information with other agents, and the average number of VM activations of each server in the cloud network C is “3”. Is known in advance. The server 20 determines that the resource has run out because the number of VM activations of its own device reaches “4” and exceeds the average number of VM activations “3”, and the virtual machine 20a-4 is moved. Search ahead. As a result of the search, the server 20 detects that the VM activation number of the server 60 among other servers is “2” which is below the average value. Therefore, the server 20 moves one virtual machine to the server 60.

図6は、通信制御システム1の実行するリソース再配置処理を説明するためのフローチャートである。S11では、各サーバ20、30、40、50、60は、他のサーバから、自サーバ以外の仮想マシンの起動数を収集する。各サーバの起動数平均値算出部23、33、43、53、63は、S11で収集された仮想マシンの起動数を基に、クラウドネットワークC内の全てのサーバの平均起動数を算出する(S12)。なお、このとき算出される起動数は、必ずしも全てのサーバについての平均値である必要はなく、例えば、仮想マシンの移動元のサーバ(図5のサーバ20)を除いたサーバについての平均値であってもよい。   FIG. 6 is a flowchart for explaining resource rearrangement processing executed by the communication control system 1. In S <b> 11, each server 20, 30, 40, 50, 60 collects the number of activations of virtual machines other than its own server from other servers. The activation number average value calculation units 23, 33, 43, 53, and 63 of each server calculate the average activation number of all the servers in the cloud network C based on the activation number of the virtual machines collected in S11 ( S12). The number of activations calculated at this time is not necessarily an average value for all servers. For example, the number of activations is an average value for servers excluding the server from which the virtual machine is moved (the server 20 in FIG. 5). There may be.

S13では、各サーバの起動数平均値算出部23、33、43、53、63は、自サーバにおいて現在起動されている仮想マシンの数が、S12で算出された平均起動数を超過しているか否かを判定する。当該判定の結果、起動中の仮想マシンの数が各サーバの平均起動数以下である場合(S13;No)には、通信制御システム1は、リソース再配置処理を終了するが、仮想マシンの起動数が平均起動数を上回る場合(S13;Yes)には、S14の処理に移行する。   In S13, the activation number average value calculation unit 23, 33, 43, 53, 63 of each server determines whether the number of virtual machines currently activated in its own server exceeds the average activation number calculated in S12. Determine whether or not. As a result of the determination, if the number of running virtual machines is equal to or less than the average number of activated servers (S13; No), the communication control system 1 ends the resource rearrangement process, but the virtual machines are activated. When the number exceeds the average activation number (S13; Yes), the process proceeds to S14.

本実施例では、図5に示したように、サーバ20における仮想マシンの起動数である“4”がネットワーク全体の平均起動数である“3”を上回っている。したがって、S14では、サーバ20のサーバ検索部24は、クラウドネットワークC内に存在する、自装置以外の全てのサーバ30、40、50、60の中から、仮想マシンの起動数が最も少ないサーバを検索する。本実施例では、図5に示したように、起動中の仮想マシンが2台であるサーバ60が仮想マシン起動数の最小値をとることから、移動先のサーバとして、サーバ60が検索される。   In this embodiment, as shown in FIG. 5, “4”, which is the number of virtual machine activations in the server 20, exceeds “3”, which is the average number of activations of the entire network. Therefore, in S14, the server search unit 24 of the server 20 selects the server with the smallest number of virtual machine activations from all the servers 30, 40, 50, 60 other than the own device existing in the cloud network C. Search for. In this embodiment, as shown in FIG. 5, since the server 60 with two virtual machines that are running takes the minimum number of virtual machine activations, the server 60 is searched as the destination server. .

S15では、サーバ20の仮想マシン移動制御部25は、仮想マシン20a−4を、サーバ20から、S14で検索されたサーバ60に移動させる。具体的には、仮想マシン移動制御部25は、移動対象の仮想マシン20a−4のVM識別子を含むVM移動開始メッセージをサーバ60宛に送信することで、移動先となるサーバ60のエージェント60cに上記VM識別子を登録する。移動した仮想マシンは、サーバ60において、仮想マシン60a−3として機能する。仮想マシン20a−4の移動完了後、サーバ60は、サーバ20に対して、移動が完了したことを通知するメッセージ(VM移動完了メッセージ)を送信する。サーバ20は、当該メッセージの受信により、仮想マシン20a−4が正常にサーバ60に移動したことを検知する。サーバ20は、VM移動完了メッセージの受信を契機として、仮想マシン20a−4に関する情報をエージェント20cから消去する。   In S15, the virtual machine movement control unit 25 of the server 20 moves the virtual machine 20a-4 from the server 20 to the server 60 searched in S14. Specifically, the virtual machine migration control unit 25 transmits a VM migration start message including the VM identifier of the migration-target virtual machine 20a-4 to the server 60, so that it is sent to the agent 60c of the server 60 that is the migration destination. The VM identifier is registered. The moved virtual machine functions as the virtual machine 60a-3 in the server 60. After the movement of the virtual machine 20a-4 is completed, the server 60 transmits a message (VM movement completion message) notifying that the movement is completed to the server 20. The server 20 detects that the virtual machine 20a-4 has moved to the server 60 normally by receiving the message. The server 20 deletes the information related to the virtual machine 20a-4 from the agent 20c when receiving the VM migration completion message.

なお、サーバ20は、仮想マシンの移動完了の検知後、VM識別子と併せて、サーバ60のIDをクライアント10宛に送信することで、仮想マシンの移動先をクライアント10に通知する。クライアント10は、この通知を受けると、以降、仮想マシンを使用するためのサーバとして、IDを通知されたサーバへのアクセスを開始する。これにより、クライアント10用の仮想マシンがクラウドネットワークC内で移動しても、クライアント10は、自装置用の仮想マシンを自ら探索することなく、容易かつ確実に仮想マシンの使用を継続することができる。その結果、通信制御システム1の利便性が向上する。   The server 20 notifies the client 10 of the movement destination of the virtual machine by transmitting the ID of the server 60 to the client 10 together with the VM identifier after detecting the completion of the movement of the virtual machine. Upon receiving this notification, the client 10 starts access to the server notified of the ID as a server for using the virtual machine. As a result, even if the virtual machine for the client 10 moves within the cloud network C, the client 10 can continue to use the virtual machine easily and reliably without searching for the virtual machine for itself. it can. As a result, the convenience of the communication control system 1 is improved.

上述したように、通信制御システム1は、上述した一連のリソース再配置処理を実行することで、起動している仮想マシンの偏在を緩和する。これにより、通信制御システム1は、クラウドネットワークC内に存在する全ての仮想マシンに対して、より高い処理性能を発揮可能なリソースの提供が可能となる。すなわち、サーバ20、30、40、50、60内に存在する各エージェントは、リソース状況として、サーバ内に何台の仮想マシンを現在保持しているか、その内アクティブな仮想マシンは何台あるか、CPU使用率、メモリ残量等の情報を相互に交換している。各サーバ20、30、40、50、60は、自装置のリソース状況が悪化した場合、他のサーバへ仮想マシンを移動させる要求を送出する。そして、リソースに余裕のある他のサーバが、仮想マシンを引き取ることで、ネットワーク全体でのリソースの均一化を図る。仮想マシンを移動させた場合の仮想ネットワークへの接続及び登録は、移動先のサーバのエージェントが自動的に行う。   As described above, the communication control system 1 reduces the uneven distribution of the activated virtual machines by executing the above-described series of resource relocation processing. As a result, the communication control system 1 can provide a resource capable of exhibiting higher processing performance to all virtual machines existing in the cloud network C. In other words, each agent existing in the server 20, 30, 40, 50, 60 has, as a resource status, how many virtual machines are currently held in the server, and how many virtual machines are active among them. Information such as CPU usage rate and remaining memory capacity is exchanged. Each server 20, 30, 40, 50, 60 sends out a request to move a virtual machine to another server when the resource status of its own device deteriorates. Then, another server with sufficient resources takes over the virtual machine, thereby making the resources uniform throughout the network. Connection to the virtual network and registration when the virtual machine is moved are automatically performed by the agent of the destination server.

仮想マシンの管理に関し、仮想マシンは、各サーバのリソース状況の変化に伴い、サーバ間を移動する。このため、クライアント10が、自装置用に作成された仮想マシンにアクセスする際、当該仮想マシンが、最初に作成されたサーバから移動していることがある。この場合、クライアント10は、上記仮想マシンを検索するため、仮想マシンの作成時に受領したVM識別子を含むVM検索要求メッセージを、クラウドネットワークCに送信する。当該VM識別子の割り当てられた仮想マシンを保持するサーバが、当該メッセージに応答することで、クライアント10は、自装置用の仮想マシンの位置やアクセス先のIPアドレス等を容易に検知することができる。   Regarding the management of virtual machines, virtual machines move between servers as the resource status of each server changes. For this reason, when the client 10 accesses a virtual machine created for its own device, the virtual machine may have moved from the server created first. In this case, the client 10 transmits a VM search request message including the VM identifier received when creating the virtual machine to the cloud network C in order to search for the virtual machine. When the server holding the virtual machine to which the VM identifier is assigned responds to the message, the client 10 can easily detect the location of the virtual machine for the own device, the IP address of the access destination, and the like. .

また、クライアントと仮想マシン間の遅延に基づくマイグレーションに関し、クライアント10は、以下の処理を実行することもできる。すなわち、クライアント10は、仮想マシンに接続した際、ホップ数や遅延時間が所定値よりも大きいと判断すると、クラウドネットワークCに対して、自装置用の仮想マシンを自装置近隣のサーバに移動することができないかの問合せメッセージを発信する。近隣のサーバのエージェントが、当該問合せメッセージを受けると、自サーバのリソースに余裕がある場合、クライアント10を受入れ可能であることを示すメッセージをクライアント10に返信する。クライアント10は、当該メッセージの受信に伴い、現在自装置の仮想マシンを収容しているサーバに対し、受入れ可能となった近隣のサーバへ仮想マシンを移動させるための移動指示メッセージを送信する。当該メッセージを受信したサーバは、クライアント10用の仮想マシンを、近隣のサーバに移動させる。   Further, regarding the migration based on the delay between the client and the virtual machine, the client 10 can also execute the following processing. That is, when the client 10 determines that the number of hops and the delay time are larger than the predetermined values when connecting to the virtual machine, the client 10 moves the virtual machine for the own device to a server near the own device with respect to the cloud network C. Send an inquiry message to see if you can't. When the agent of the neighboring server receives the inquiry message, if the server has enough resources, it returns a message indicating that the client 10 can be accepted to the client 10. Upon receipt of the message, the client 10 transmits a movement instruction message for moving the virtual machine to a nearby server that has become acceptable to the server that currently accommodates the virtual machine of its own device. The server that has received the message moves the virtual machine for the client 10 to a nearby server.

以上説明したように、通信制御システム1は、クライアント10と、クライアント10に対してサービスを提供する複数のサーバ20、30、40、50、60とを有する。複数のサーバ20、30、40、50、60は、各サーバに作成された仮想マシンのリソース状況をクライアント10に通知するリソース状況通知部21を有する。クライアント10は、サーバ選択部12と仮想マシン作成要求部13とを有する。サーバ選択部12は、上記仮想マシンのリソース状況を用いて、複数のサーバ20、30、40、50、60の中から、使用されているリソースの最も少ないサーバ20を選択する。仮想マシン作成要求部13は、サーバ選択部12により選択されたサーバに対して、クライアント10の用いる仮想マシンの作成を要求する。サーバ20は、クライアント10からの要求に応じて、クライアント10用の仮想マシンを作成する仮想マシン作成部22を有する。   As described above, the communication control system 1 includes the client 10 and the plurality of servers 20, 30, 40, 50, 60 that provide services to the client 10. The plurality of servers 20, 30, 40, 50, 60 have a resource status notification unit 21 that notifies the client 10 of the resource status of the virtual machine created in each server. The client 10 includes a server selection unit 12 and a virtual machine creation request unit 13. The server selection unit 12 selects the server 20 with the fewest resources from the plurality of servers 20, 30, 40, 50, 60 using the resource status of the virtual machine. The virtual machine creation request unit 13 requests the server selected by the server selection unit 12 to create a virtual machine used by the client 10. The server 20 includes a virtual machine creation unit 22 that creates a virtual machine for the client 10 in response to a request from the client 10.

また、サーバ20は、起動数平均値算出部23とサーバ検索部24と仮想マシン移動制御部25とを更に有するものとしてもよい。起動数平均値算出部23は、サーバ20以外の他のサーバ30、40、50、60に作成された仮想マシンの起動数をサーバ毎に取得し、上記起動数を用いて、上記各サーバにおける仮想マシンの起動数の平均値を算出する。サーバ検索部24は、自サーバ20における仮想マシンの起動数が、起動数平均値算出部23により算出された平均値を超える場合、他のサーバ30、40、50、60の中から、上記仮想マシンの起動数の最も少ないサーバを検索する。仮想マシン移動制御部25は、自サーバ20において起動されている仮想マシンを、自サーバ20から、サーバ検索部24により検索されたサーバに、移動する。   The server 20 may further include an activation number average value calculation unit 23, a server search unit 24, and a virtual machine movement control unit 25. The activation number average value calculation unit 23 acquires the activation numbers of the virtual machines created on the other servers 30, 40, 50, 60 other than the server 20 for each server, and uses the activation numbers, Calculate the average number of virtual machine startups. When the number of virtual machine activations in the server 20 exceeds the average value calculated by the activation number average value calculation unit 23, the server search unit 24 selects the virtual server from among the other servers 30, 40, 50, and 60. Find the server with the fewest machine starts. The virtual machine movement control unit 25 moves the virtual machine activated on the own server 20 from the own server 20 to the server searched by the server search unit 24.

更に、クライアント10の仮想マシン作成要求部13は、サーバ20により作成された仮想マシンの識別子を用いて、複数のサーバ20、30、40、50、60に対して、クライアント10用の仮想マシンの位置の検索を要求するものとしてもよい。   Further, the virtual machine creation request unit 13 of the client 10 uses the virtual machine identifier created by the server 20 to send a virtual machine for the client 10 to the plurality of servers 20, 30, 40, 50, 60. It may be requested to search for a position.

これにより、通信制御システム1は、ユーザが、クラウドネットワークCに対して仮想マシンの作成要求を行うだけで、クラウドネットワークCが仮想マシンや仮想ネットワークのコンフィグ迄を完了する自律的なシステムの提供を可能とする。その際、サーバ20、30、40、50、60間においてリソースが自動的に平滑化されるため、公平なサービスの提供が可能となる。また、仮想マシンは、クライアント10に比較的近い位置に作成されるため、ユーザは、ネットワークに対する快適なアクセス環境を享受することができる。その結果、クラウド用仮想マシン、及び仮想ネットワーク(仮想スイッチ、仮想ルータ)を自律的に管理する分散型クラウドネットワーク管理システムが実現される。   Thereby, the communication control system 1 provides an autonomous system in which the cloud network C completes the configuration of the virtual machine and the virtual network only by the user making a virtual machine creation request to the cloud network C. Make it possible. At that time, the resources are automatically smoothed between the servers 20, 30, 40, 50, and 60, so that a fair service can be provided. Further, since the virtual machine is created at a position relatively close to the client 10, the user can enjoy a comfortable access environment for the network. As a result, a distributed cloud network management system that autonomously manages cloud virtual machines and virtual networks (virtual switches, virtual routers) is realized.

通信制御システム1の適用例として、通常は、クライアントの仮想マシンが国内のデータセンタ内に存在し、当該クライアントのユーザが海外出張等で遠方に移動した場合に、特に好適である。通信制御システム1は、遅延時間やホップ数を基に、仮想マシンをユーザの近くに移動できないかを自発的に判断し、リソースが空いている場合には、仮想マシンをユーザ付近のサーバに移動させる。これにより、複数の国に跨がったネットワークサービスの提供は元より、仮想マシンに低遅延でアクセス可能なサービスの提供が可能となる。例えば、ユーザが海外出張する際、自国のサーバではなく、出張先の国のサーバへ自分の仮想マシンが移動するので、遅延の少ない環境での仮想マシンの使用が可能となる。また、仮想マシンは、仮想スイッチにより制御されるため、通信制御システム1は、仮想マシンの移動制御に際し、ユーザ側の設定変更を意識する必要がない。   As an application example of the communication control system 1, it is usually particularly suitable when a client virtual machine exists in a domestic data center and the user of the client moves away on an overseas business trip or the like. The communication control system 1 voluntarily determines whether or not the virtual machine can be moved near the user based on the delay time and the number of hops. If the resource is available, the virtual machine is moved to a server near the user. Let As a result, it is possible to provide a service that can access a virtual machine with low delay, as well as providing a network service across a plurality of countries. For example, when a user travels abroad, his / her virtual machine moves to a server in the country of the business trip destination instead of the server in the home country, so that the virtual machine can be used in an environment with little delay. In addition, since the virtual machine is controlled by a virtual switch, the communication control system 1 does not need to be aware of the setting change on the user side when controlling the movement of the virtual machine.

上述したように、通信制御システム1によれば、仮想マシンや仮想ネットワークを提供するサーバ内に実装されたソフトウェアとしてのエージェントが、エージェントがインストールされたサーバ間で、相互にリソース情報の交換を行う。これにより、通信制御システム1は、ネットワーク内の全体のリソースを勘案した上で、ネットワーク内で次に仮想マシンを追加するのに最適な場所を特定し、仮想マシンの作成及び仮想ネットワークの構築を自動的に行う。したがって、従来行われていた、人手を介した仮想マシン、仮想ネットワークの設備設計や設備管理が不要となる。また、エージェントが、仮想マシン及び仮想スイッチが搭載されているサーバのリソース状況を判断し、リソースが空いているサーバへ仮想マシンを移動させることで、ネットワーク負荷の分散を図ることが可能となる。   As described above, according to the communication control system 1, agents as software installed in servers that provide virtual machines and virtual networks exchange resource information with each other between the servers on which the agents are installed. . As a result, the communication control system 1 takes into consideration the overall resources in the network, identifies the optimal location for adding a virtual machine next in the network, creates a virtual machine, and constructs a virtual network. Do it automatically. Therefore, it is not necessary to perform facility design and facility management of a virtual machine and a virtual network that are conventionally performed manually. In addition, the agent can determine the resource status of the server on which the virtual machine and the virtual switch are mounted, and move the virtual machine to a server that has available resources, so that the network load can be distributed.

特に、通信制御システム1は、ネットワーク内にリソースを追加する場合、エージェントを有するサーバをネットワーク内に追加するだけで、以降、エージェントが、サーバに内蔵されたCPU、メモリ、HDDをリソースとして自動的に追加する。その際、通信制御システム1は、必要に応じて、仮想マシンや仮想ネットワークを移動させるため、新たなサーバリソースの追加が容易となる。従来の方式では、リソースは、一元的に管理されているため、管理対象の仮想マシンの台数や仮想ネットワークの台数が多くなると、特定のサーバに負荷が集中することとなる。本実施例に係る通信制御システム1では、リソースの管理が各サーバのエージェントに分散されるため、特定のサーバへの集中は回避される。更に、新規に作成される仮想マシンは、サーバとクライアント間のホップ数や遅延時間を考慮して、クライアントの近くに作成される。このため、ユーザは、クライアントを介して、通信速度の高い快適なアクセス環境を享受することができる。   In particular, when adding a resource to the network, the communication control system 1 simply adds a server having an agent to the network, and thereafter the agent automatically uses the CPU, memory, and HDD built in the server as resources. Add to. At that time, the communication control system 1 moves a virtual machine or a virtual network as necessary, so that it is easy to add a new server resource. In the conventional method, resources are managed in a centralized manner. Therefore, when the number of virtual machines to be managed and the number of virtual networks increase, the load is concentrated on a specific server. In the communication control system 1 according to the present embodiment, since resource management is distributed to the agents of each server, concentration on a specific server is avoided. Furthermore, a newly created virtual machine is created near the client in consideration of the number of hops and delay time between the server and the client. For this reason, the user can enjoy a comfortable access environment with a high communication speed via the client.

[通信制御プログラム]
図7は、通信制御プログラムによる情報処理がコンピュータ100を用いて具体的に実現されることを示す図である。図7に例示するように、コンピュータ100は、例えば、メモリ101と、CPU102と、ハードディスクドライブインタフェース103と、ディスクドライブインタフェース104と、シリアルポートインタフェース105と、ビデオアダプタ106と、ネットワークインタフェース107とを有し、これらの各部はバスBによって接続される。
[Communication control program]
FIG. 7 is a diagram illustrating that the information processing by the communication control program is specifically realized using the computer 100. As illustrated in FIG. 7, the computer 100 includes, for example, a memory 101, a CPU 102, a hard disk drive interface 103, a disk drive interface 104, a serial port interface 105, a video adapter 106, and a network interface 107. These units are connected by a bus B.

メモリ101は、図7に例示するように、ROM(Read Only Memory)101a及びRAM(Random Access Memory)101bを含む。ROM101aは、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース103は、図7に例示するように、ハードディスクドライブ108に接続される。ディスクドライブインタフェース104は、図7に例示するように、ディスクドライブ109に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ109に挿入される。シリアルポートインタフェース105は、図7に例示するように、例えばマウス110、キーボード111に接続される。ビデオアダプタ106は、図7に例示するように、例えばディスプレイ112に接続される。   As illustrated in FIG. 7, the memory 101 includes a ROM (Read Only Memory) 101a and a RAM (Random Access Memory) 101b. The ROM 101a stores a boot program such as BIOS (Basic Input Output System). The hard disk drive interface 103 is connected to the hard disk drive 108 as illustrated in FIG. The disk drive interface 104 is connected to the disk drive 109 as illustrated in FIG. For example, a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 109. The serial port interface 105 is connected to a mouse 110 and a keyboard 111, for example, as illustrated in FIG. The video adapter 106 is connected to the display 112, for example, as illustrated in FIG.

ここで、図7に例示するように、ハードディスクドライブ108は、例えば、OS(Operating System)108a、アプリケーションプログラム108b、プログラムモジュール108c、プログラムデータ108dを記憶する。すなわち、開示の実施例に係る通信制御プログラムは、コンピュータ100によって実行される指令が記述されたプログラムモジュール108cとして、例えばハードディスクドライブ108に記憶される。具体的には、上記実施例で説明したリソース確認要求部11、サーバ選択部12、仮想マシン作成要求部13、リソース状況通知部21、仮想マシン作成部22、起動数平均値算出部23、サーバ検索部24、及び仮想マシン移動制御部25と同様の情報処理を実行する各種手順が記述されたプログラムモジュール108cが、ハードディスクドライブ108に記憶される。また、通信制御プログラムによる情報処理に用いられるデータは、プログラムデータ108dとして、例えばハードディスクドライブ108に記憶される。そして、CPU102が、ハードディスクドライブ108に記憶されたプログラムモジュール108cやプログラムデータ108dを必要に応じてRAM101bに読み出し、上記各種手順を実行する。   Here, as illustrated in FIG. 7, the hard disk drive 108 stores, for example, an OS (Operating System) 108a, an application program 108b, a program module 108c, and program data 108d. That is, the communication control program according to the disclosed embodiment is stored in, for example, the hard disk drive 108 as the program module 108c in which a command to be executed by the computer 100 is described. Specifically, the resource confirmation request unit 11, the server selection unit 12, the virtual machine creation request unit 13, the resource status notification unit 21, the virtual machine creation unit 22, the activation number average value calculation unit 23, the server described in the above embodiment. A program module 108c in which various procedures for executing the same information processing as the search unit 24 and the virtual machine movement control unit 25 are described is stored in the hard disk drive 108. Further, data used for information processing by the communication control program is stored in the hard disk drive 108, for example, as program data 108d. Then, the CPU 102 reads the program module 108c and the program data 108d stored in the hard disk drive 108 to the RAM 101b as necessary, and executes the above various procedures.

なお、通信制御プログラムに係るプログラムモジュール108cやプログラムデータ108dは、ハードディスクドライブ108に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ109等を介してCPU102によって読み出されてもよい。あるいは、通信制御プログラムに係るプログラムモジュール108cやプログラムデータ108dは、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース107を介してCPU102によって読み出されてもよい。   Note that the program module 108c and the program data 108d relating to the communication control program are not limited to being stored in the hard disk drive 108, but are stored in, for example, a removable storage medium and read out by the CPU 102 via the disk drive 109 or the like. May be. Alternatively, the program module 108c and the program data 108d relating to the communication control program are stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.), and the network interface 107 is stored. Via the CPU 102.

なお、上記実施例では、仮想マシン作成処理の実行に際してクライアント10がサーバを選択する基準として、クライアント10は、使用リソースが最少のサーバを選択する態様を例示した。しかしながら、かかる態様に限らず、クライアント10は、CPU使用率が最も低いサーバ、あるいは、メモリやHDDの空き容量が最も多いサーバを、仮想マシン作成の要求先として選択するものとしてもよい。また、クライアント10は、CPU使用率や空き容量を組み合わせて、使用してもよい。その際、CPU使用率の比重を他のパラメータよりも大きくする等の重み付けを行ってもよい。更に、クライアント10は、サーバ内に作成されている仮想マシンの数や起動中の仮想マシンの数を、上述の各種パラメータと組み合わせて用いてもよい。例えば、クライアント10は、まず、自サーバ内に存在する起動中の仮想マシンの数が最少の値をとるサーバを選択する。そして、クライアント10は、当該値が同一である場合に初めて、他のパラメータであるCPU使用率、空きメモリ容量等を参照するものとしてもよい。   In the above-described embodiment, as an example of a criterion for the client 10 to select a server when executing the virtual machine creation process, the client 10 selects a server that uses the least amount of resources. However, the present invention is not limited thereto, and the client 10 may select a server with the lowest CPU usage rate or a server with the largest free space in the memory or HDD as a request destination for creating a virtual machine. The client 10 may use a combination of CPU usage rate and free space. At that time, weighting such as making the specific gravity of the CPU usage rate larger than other parameters may be performed. Further, the client 10 may use the number of virtual machines created in the server or the number of active virtual machines in combination with the various parameters described above. For example, the client 10 first selects a server in which the number of active virtual machines existing in its own server takes the minimum value. The client 10 may refer to other parameters such as the CPU usage rate and the free memory capacity only when the values are the same.

また、上記実施例では、図4のS2において、自サーバ装置内に仮想マシンを作成可能なサーバが、リソース確認要求に対するリソース確認応答メッセージをクライアント10に返信するものとした。しかしながら、リソース確認応答メッセージを返信するサーバは、必ずしも、クラウドネットワークC内に設置された全てのサーバ20、30、40、50、60である必要はない。すなわち、自サーバ装置内に仮想マシンを作成可能なサーバの内、クライアント10の要求するスペックを満たす仮想マシンを作成可能なサーバのみが、リソース確認応答メッセージをクライアント10に返信するものとしてもよい。   In the above-described embodiment, the server capable of creating a virtual machine in its own server device returns a resource confirmation response message to the client 10 in response to the resource confirmation request in S2 of FIG. However, the servers that return the resource confirmation response message do not necessarily have to be all the servers 20, 30, 40, 50, 60 installed in the cloud network C. That is, only a server that can create a virtual machine that satisfies the specifications required by the client 10 among servers that can create a virtual machine in its own server device may return a resource confirmation response message to the client 10.

例えば、クライアント10がクラウドネットワークCに対して、CPUの周波数として3GHz以上、メモリ容量として3GB以上、及びHDD容量として100GB以上のスペックを要求した場合を想定する。この場合、クラウドネットワークC内に存在するサーバ20、30、40、50、60の内、これらの条件を満たす仮想マシンをクライアント10に提供することのできる一つまたは複数のサーバが、リソース状況を応答する。これにより、選択されてもクライアント10からの要求を満たすことのできないサーバ、換言すれば、仮想マシンを作成するサーバに選択される可能性の低いサーバが、リソース確認応答メッセージを返信する処理が不要となる。その結果、当該メッセージの送信に伴うネットワーク負荷が軽減される。また、クライアント10が各サーバからのリソース状況の収集を完了するために要する待機時間が短縮される。   For example, it is assumed that the client 10 requests the cloud network C for specifications of 3 GHz or more as the CPU frequency, 3 GB or more as the memory capacity, and 100 GB or more as the HDD capacity. In this case, among the servers 20, 30, 40, 50, and 60 existing in the cloud network C, one or a plurality of servers that can provide the client 10 with virtual machines that satisfy the conditions satisfy the resource status. respond. As a result, a server that cannot satisfy the request from the client 10 even if selected, in other words, a server that is unlikely to be selected as a server that creates a virtual machine, does not need to send back a resource confirmation response message. It becomes. As a result, the network load accompanying transmission of the message is reduced. In addition, the waiting time required for the client 10 to complete the collection of the resource status from each server is shortened.

更に、上述のリソース再配置処理では、各サーバ20、30、40、50、60は、仮想マシンの起動数に基づき、仮想マシンの移動の要否及び移動先を決定するものとした。しかしながら、各サーバ20、30、40、50、60は、仮想マシンのリソース使用状況、ひいては、CPU使用率、メモリやHDDの使用容量等を参照して、仮想マシンの移動の要否及び移動先を決定するものとしてもよい。また、これらのパラメータ(例えば、各サーバにおける起動数、リソース使用量、CPU使用率、メモリやHDDの使用容量)を組み合わせてもよい。各サーバ20、30、40、50、60は、パラメータを組み合わせる際、適宜重み付けを行ってもよい。   Furthermore, in the above-described resource rearrangement process, each server 20, 30, 40, 50, 60 determines whether or not to move a virtual machine and the movement destination based on the number of virtual machine activations. However, each server 20, 30, 40, 50, 60 refers to the resource usage status of the virtual machine, and in turn, the CPU usage rate, the usage capacity of the memory and HDD, etc. It is good also as what determines. Further, these parameters (for example, the number of activations in each server, resource usage, CPU usage rate, memory and HDD usage capacity) may be combined. Each server 20, 30, 40, 50, 60 may appropriately weight when combining parameters.

例えば、サーバ20が、仮想マシンの移動の要否あるいは移動先を決定するための指標として、CPU使用率を用いる場合、サーバ20は、自装置のCPU使用率とネットワーク内の各サーバのCPU使用率の平均値とを監視する。監視の結果、サーバ20の収容する仮想マシンが使用するCPUの使用率が、ネットワーク全体におけるCPU使用率を上回る場合には、サーバ20は、仮想マシンの移動を決定する。サーバ20は、クラウドネットワークC内で最もCPU使用率の低いサーバを検索し、検索されたサーバを空きリソースに余裕のあるサーバと判断する。サーバ20は、当該サーバ宛に、VM移動開始メッセージを送信することで、移動対象の仮想マシンのVM識別子を移動先のサーバに登録する。そして、サーバ20は、仮想マシンを当該サーバに移動させる。これにより、CPU使用率の高かった移動元のサーバ20における仮想マシンのCPU使用率は減少し、CPU使用率の低かった移動先のサーバにおける仮想マシンのCPU使用率は増加する。したがって、クラウドネットワークC内に存在するサーバ間におけるCPU使用率のバラつきは、緩和(平滑化)される。その結果、各サーバの負荷が分散される。   For example, when the server 20 uses the CPU usage rate as an index for determining whether or not to move the virtual machine or the destination, the server 20 uses the CPU usage rate of its own device and the CPU usage of each server in the network. Monitor the average rate. As a result of monitoring, if the usage rate of the CPU used by the virtual machine accommodated by the server 20 exceeds the CPU usage rate in the entire network, the server 20 determines the movement of the virtual machine. The server 20 searches for the server with the lowest CPU usage rate in the cloud network C, and determines that the searched server is a server with sufficient free resources. The server 20 registers the VM identifier of the migration target virtual machine in the migration destination server by transmitting a VM migration start message to the server. Then, the server 20 moves the virtual machine to the server. As a result, the CPU usage rate of the virtual machine in the migration source server 20 having a high CPU usage rate decreases, and the CPU usage rate of the virtual machine in the migration destination server having a low CPU usage rate is increased. Therefore, the variation in the CPU usage rate among servers existing in the cloud network C is reduced (smoothed). As a result, the load on each server is distributed.

また、クライアント10及びサーバ20、30、40、50、60の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は、図示のものに限らず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することもできる。例えば、リソース確認要求部11と仮想マシン作成要求部13、あるいは、サーバ検索部24と仮想マシン移動制御部25をそれぞれ1つの構成要素として統合してもよい。反対に、仮想マシン作成要求部13に関し、クライアント10用の仮想マシンの作成を要求する部分と、クライアント10用の仮想マシンの位置検索を要求する部分とに分散してもよい。更に、ハードディスクドライブ108を、クライアント10の外部装置としてネットワークやケーブル経由で接続するようにしてもよい。   The constituent elements of the client 10 and the servers 20, 30, 40, 50, and 60 do not necessarily need to be physically configured as illustrated. That is, the specific mode of distribution / integration of each device is not limited to the illustrated one, and all or a part thereof is functionally or physically distributed in an arbitrary unit according to various loads or usage conditions. -It can also be integrated and configured. For example, the resource confirmation request unit 11 and the virtual machine creation request unit 13, or the server search unit 24 and the virtual machine movement control unit 25 may be integrated as one component. Conversely, the virtual machine creation request unit 13 may be distributed into a part that requests creation of a virtual machine for the client 10 and a part that requests a location search for the virtual machine for the client 10. Furthermore, the hard disk drive 108 may be connected as an external device of the client 10 via a network or a cable.

1 通信制御システム
10 クライアント
11 リソース確認要求部
12 サーバ選択部
13 仮想マシン作成要求部
20、30、40、50、60 サーバ
20a−1、20a−2、20a−3、・・・、20a−n 仮想マシン(VM)
30a−1、30a−2、30a−3、・・・、30a−n 仮想マシン(VM)
40a−1、40a−2、40a−3、・・・、40a−n 仮想マシン(VM)
50a−1、50a−2、50a−3、・・・、50a−n 仮想マシン(VM)
60a−1、60a−2、60a−3、・・・、60a−n 仮想マシン(VM)
20b、30b、40b、50b、60b 仮想スイッチ
20c、30c、40c、50c、60c エージェント
21、31、41、51、61 リソース状況通知部
22、32、42、52、62 仮想マシン作成部
23、33、43、53、63 起動数平均値算出部
24、34、44、54、64 サーバ検索部
25、35、45、55、65 仮想マシン移動制御部
100 コンピュータ
101 メモリ
101a ROM
101b RAM
102 CPU
103 ハードディスクドライブインタフェース
104 ディスクドライブインタフェース
105 シリアルポートインタフェース
106 ビデオアダプタ
107 ネットワークインタフェース
108 ハードディスクドライブ
108a OS
108b アプリケーションプログラム
108c プログラムモジュール
108d プログラムデータ
109 ディスクドライブ
110 マウス
111 キーボード
112 ディスプレイ
B バス
C クラウドネットワーク
R1、R2 ルータ
Y1 仮想マシンの移動を示す矢印
DESCRIPTION OF SYMBOLS 1 Communication control system 10 Client 11 Resource confirmation request | requirement part 12 Server selection part 13 Virtual machine creation request | requirement part 20, 30, 40, 50, 60 Server 20a-1, 20a-2, 20a-3, ..., 20a-n Virtual machine (VM)
30a-1, 30a-2, 30a-3, ..., 30a-n Virtual Machine (VM)
40a-1, 40a-2, 40a-3, ..., 40a-n Virtual Machine (VM)
50a-1, 50a-2, 50a-3, ..., 50a-n Virtual machine (VM)
60a-1, 60a-2, 60a-3, ..., 60a-n Virtual machine (VM)
20b, 30b, 40b, 50b, 60b Virtual switch 20c, 30c, 40c, 50c, 60c Agent 21, 31, 41, 51, 61 Resource status notification unit 22, 32, 42, 52, 62 Virtual machine creation unit 23, 33 , 43, 53, 63 Start number average calculation unit 24, 34, 44, 54, 64 Server search unit 25, 35, 45, 55, 65 Virtual machine movement control unit 100 Computer 101 Memory 101a ROM
101b RAM
102 CPU
103 Hard Disk Drive Interface 104 Disk Drive Interface 105 Serial Port Interface 106 Video Adapter 107 Network Interface 108 Hard Disk Drive 108a OS
108b Application program 108c Program module 108d Program data 109 Disk drive 110 Mouse 111 Keyboard 112 Display B Bus C Cloud network R1, R2 Router Y1 Arrow indicating movement of virtual machine

Claims (7)

クライアント装置と、該クライアント装置に対してサービスを提供する複数のサーバ装置とを有する通信制御システムであって、
前記複数のサーバ装置のそれぞれは、
前記サーバ装置に作成された仮想マシンのリソース状況を前記クライアント装置に通知する通知部と、
前記クライアント装置からの要求に応じて、前記クライアント装置用の仮想マシンを作成する作成部とを有し、
前記クライアント装置は、
前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する選択部と、
前記選択部により選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する要求部と
を有することを特徴とする通信制御システム。
A communication control system having a client device and a plurality of server devices that provide services to the client device,
Each of the plurality of server devices is
A notification unit for notifying the client device of the resource status of the virtual machine created in the server device;
A creation unit that creates a virtual machine for the client device in response to a request from the client device;
The client device is
A selection unit that selects a server device that uses the least amount of resources from the plurality of server devices using the resource status of the virtual machine;
A communication control system, comprising: a request unit that requests the server device selected by the selection unit to create a virtual machine for the client device.
前記サーバ装置は、
前記サーバ装置以外の他のサーバ装置に作成された仮想マシンの起動数を前記他のサーバ装置毎に取得し、前記起動数を用いて、各サーバ装置における仮想マシンの起動数の平均値を算出する算出部と、
前記サーバ装置における仮想マシンの起動数が、前記算出部により算出された平均値を超える場合、前記他のサーバ装置の中から、前記仮想マシンの起動数の最も少ないサーバ装置を検索する検索部と、
前記サーバ装置において起動されている仮想マシンを、前記サーバ装置から、前記検索部により検索された前記他のサーバ装置に、移動する移動部と
を更に有することを特徴とする請求項1に記載の通信制御システム。
The server device
The number of virtual machine boots created in other server devices other than the server device is acquired for each of the other server devices, and the average number of virtual machine boots in each server device is calculated using the number of boots. A calculating unit to
A search unit that searches for the server device having the smallest number of virtual machine activations among the other server devices when the number of virtual machine activations in the server device exceeds the average value calculated by the calculation unit; ,
The moving part which moves the virtual machine started in the said server apparatus from the said server apparatus to the said other server apparatus searched by the said search part, The further characterized by the above-mentioned. Communication control system.
前記クライアント装置の要求部は、前記サーバ装置により作成された仮想マシンの識別子を用いて、前記複数のサーバ装置に対して、前記クライアント装置用の仮想マシンの位置の検索を要求することを特徴とする請求項1に記載の通信制御システム。   The request unit of the client device requests the plurality of server devices to search for a location of the virtual machine for the client device, using an identifier of the virtual machine created by the server device. The communication control system according to claim 1. 複数のサーバ装置からサービスの提供を受けるクライアント装置であって、
前記複数のサーバ装置のそれぞれに作成された仮想マシンのリソース状況を前記複数のサーバ装置から通知されると、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する選択部と、
前記選択部により選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する要求部と
を有することを特徴とするクライアント装置。
A client device that receives services from a plurality of server devices,
When the resource status of the virtual machine created in each of the plurality of server devices is notified from the plurality of server devices, the resource status of the virtual machine is used from the plurality of server devices. A selection unit that selects a server device having the least number of resources;
A client device, comprising: a request unit that requests the server device selected by the selection unit to create a virtual machine for the client device.
クライアント装置に対してサービスを提供するサーバ装置であって、
前記サーバ装置に作成された仮想マシンのリソース状況を前記クライアント装置に通知する通知部と、
前記クライアント装置からの仮想マシン作成要求に応じて、前記クライアント装置用の仮想マシンを作成する作成部と、
前記サーバ装置以外の他のサーバ装置に作成された仮想マシンの起動数を前記他のサーバ装置毎に取得し、前記起動数を用いて、各サーバ装置における仮想マシンの起動数の平均値を算出する算出部と、
前記サーバ装置における仮想マシンの起動数が、前記算出部により算出された平均値を超える場合、複数のサーバ装置の中から、前記仮想マシンの起動数の最も少ないサーバ装置を検索する検索部と、
前記サーバ装置において起動されている仮想マシンを、前記サーバ装置から、前記検索部により検索された前記他のサーバ装置に、移動する移動部と
を有することを特徴とするサーバ装置。
A server device that provides services to client devices,
A notification unit for notifying the client device of the resource status of the virtual machine created in the server device;
In response to a virtual machine creation request from the client device, a creation unit that creates a virtual machine for the client device;
The number of virtual machine boots created in other server devices other than the server device is acquired for each of the other server devices, and the average number of virtual machine boots in each server device is calculated using the number of boots. A calculating unit to
When the number of virtual machine activations in the server device exceeds the average value calculated by the calculation unit, a search unit for searching a server device with the smallest number of virtual machine activations from a plurality of server devices;
A server device, comprising: a moving unit that moves a virtual machine activated in the server device from the server device to the other server device searched by the search unit.
クライアント装置と、該クライアント装置に対してサービスを提供する複数のサーバ装置とを有する通信制御システムで実行される通信制御方法であって、
前記複数のサーバ装置のそれぞれが、前記サーバ装置に作成された仮想マシンのリソース状況を前記クライアント装置に通知する通知工程と、
前記クライアント装置が、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する選択工程と、
前記クライアント装置が、前記選択工程にて選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する要求工程と、
前記サーバ装置が、前記クライアント装置からの要求に応じて、前記クライアント装置用の仮想マシンを作成する作成工程と
を含むことを特徴とする通信制御方法。
A communication control method executed in a communication control system having a client device and a plurality of server devices that provide services to the client device,
A notification step in which each of the plurality of server devices notifies the client device of a resource status of a virtual machine created in the server device;
A selection step in which the client device uses the resource status of the virtual machine to select a server device that uses the least amount of resources from the plurality of server devices;
A requesting step in which the client device requests the server device selected in the selection step to create a virtual machine for the client device;
The server control method includes a creation step of creating a virtual machine for the client device in response to a request from the client device.
複数のサーバ装置からサービスの提供を受けるクライアント装置で実行される通信制御プログラムであって、
前記複数のサーバ装置のそれぞれに作成された仮想マシンのリソース状況を前記複数のサーバ装置から通知されると、前記仮想マシンのリソース状況を用いて、前記複数のサーバ装置の中から、使用されているリソースの最も少ないサーバ装置を選択する選択ステップと、
前記選択ステップにて選択されたサーバ装置に対して、前記クライアント装置用の仮想マシンの作成を要求する要求ステップと
をコンピュータに実行させるための通信制御プログラム。
A communication control program executed by a client device that receives services from a plurality of server devices,
When the resource status of the virtual machine created in each of the plurality of server devices is notified from the plurality of server devices, the resource status of the virtual machine is used from the plurality of server devices. A selection step of selecting a server device having the least number of resources;
A communication control program for causing a computer to execute a requesting step for requesting the server device selected in the selecting step to create a virtual machine for the client device.
JP2012008937A 2012-01-19 2012-01-19 COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM Expired - Fee Related JP5602775B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012008937A JP5602775B2 (en) 2012-01-19 2012-01-19 COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012008937A JP5602775B2 (en) 2012-01-19 2012-01-19 COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM

Publications (2)

Publication Number Publication Date
JP2013149076A JP2013149076A (en) 2013-08-01
JP5602775B2 true JP5602775B2 (en) 2014-10-08

Family

ID=49046524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012008937A Expired - Fee Related JP5602775B2 (en) 2012-01-19 2012-01-19 COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM

Country Status (1)

Country Link
JP (1) JP5602775B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6133804B2 (en) * 2014-02-20 2017-05-24 日本電信電話株式会社 Network control device, communication system, network control method, and network control program
JP6277853B2 (en) * 2014-05-12 2018-02-14 富士通株式会社 Control device, communication device, and communication method
JP6660905B2 (en) * 2017-03-17 2020-03-11 Kddi株式会社 Method and system for optimizing distributed container placement
JP6744260B2 (en) * 2017-07-14 2020-08-19 日本電信電話株式会社 Virtual server configuration changing method and virtual server configuration changing system
JP2019022078A (en) * 2017-07-18 2019-02-07 日本電信電話株式会社 Virtual server organization method and virtual server organization system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060704A1 (en) * 2003-09-17 2005-03-17 International Business Machines Corporation Managing processing within computing environments including initiation of virtual machines
US20100030877A1 (en) * 2007-02-23 2010-02-04 Mitsuru Yanagisawa Virtual server system and physical server selecting method
CN101998629B (en) * 2009-08-28 2014-05-21 国际商业机器公司 Method, device and system for searching for virtual resources
JP5559582B2 (en) * 2010-03-25 2014-07-23 株式会社日立システムズ Virtual computer resource configuration changing system, method and program

Also Published As

Publication number Publication date
JP2013149076A (en) 2013-08-01

Similar Documents

Publication Publication Date Title
US10171567B2 (en) Load balancing computer device, system, and method
Son et al. Priority-aware VM allocation and network bandwidth provisioning in software-defined networking (SDN)-enabled clouds
US8386825B2 (en) Method and system for power management in a virtual machine environment without disrupting network connectivity
US9600319B2 (en) Computer-readable medium, apparatus, and method for offloading processing from a virtual switch to a physical switch
US9632839B2 (en) Dynamic virtual machine consolidation
JP5602775B2 (en) COMMUNICATION CONTROL SYSTEM, CLIENT DEVICE, SERVER DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM
CN103999031B (en) The virtual privately owned storage array service of Cloud Server
US8566822B2 (en) Method and system for distributing hypervisor functionality over multiple physical devices in a network and configuring sub-hypervisor to control the virtual machines
KR101473317B1 (en) Cloud computing system and traffic distributing and control method in cloud computing system
JP6636142B2 (en) Scale-out association method and apparatus and system
US20120233315A1 (en) Systems and methods for sizing resources in a cloud-based environment
WO2012100544A1 (en) Method, device and cluster system for virtual machine migration based on network data flow direction
US20090300614A1 (en) Virtual-machine control system and virtual-machine moving method
RU2676452C1 (en) Controller, management method and program
JP2018522471A (en) Software-defined data center and service cluster placement method there
WO2012173642A1 (en) Decentralized management of virtualized hosts
WO2014032233A1 (en) System and method for live migration of virtual machine
WO2012125144A1 (en) Systems and methods for sizing resources in a cloud-based environment
WO2012173641A1 (en) Decentralized management of virtualized hosts
WO2021120633A1 (en) Load balancing method and related device
US20180013860A1 (en) Method and apparatus for determining to-be-uploaded nsd
JP2014035661A (en) Virtual machine system and high-speed live migration method thereof
WO2013137896A1 (en) At least one message to announce entry into relatively lower power state
US20210211381A1 (en) Communication method and related device
TWI520524B (en) A method and system for controlling virtual machine network access and flow through a controller to generate a secure virtual isolation group

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140811

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

R150 Certificate of patent or registration of utility model

Ref document number: 5602775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees