JP2016144133A - Control device, control program and communication system - Google Patents

Control device, control program and communication system Download PDF

Info

Publication number
JP2016144133A
JP2016144133A JP2015020268A JP2015020268A JP2016144133A JP 2016144133 A JP2016144133 A JP 2016144133A JP 2015020268 A JP2015020268 A JP 2015020268A JP 2015020268 A JP2015020268 A JP 2015020268A JP 2016144133 A JP2016144133 A JP 2016144133A
Authority
JP
Japan
Prior art keywords
program
load
guarantee
node
virtual machine
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.)
Pending
Application number
JP2015020268A
Other languages
Japanese (ja)
Inventor
健 清瀬
Takeshi Kiyose
健 清瀬
高橋 清隆
Kiyotaka Takahashi
清隆 高橋
菅野 隆行
Takayuki Sugano
隆行 菅野
泰徳 大本
Yasunori Omoto
泰徳 大本
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2015020268A priority Critical patent/JP2016144133A/en
Publication of JP2016144133A publication Critical patent/JP2016144133A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To efficiently utilize a computation resource in a network according to a guarantee request.SOLUTION: A processor executes the following processing: reception processing for receiving a guarantee request related to the operation guarantee of a load target program, which is a program to be loaded on a plurality of transfer devices; selection processing for selecting, based on management information, a transfer device group configuring a route, from among the plurality of transfer devices; determination processing for determining, according to the guarantee request received by the reception processing, one virtual machine out of a first virtual machine and a second virtual machine configured in the transfer device selected by the selection processing, to be a loading destination of the load target program; and transmission processing for transmitting information related to the load target program to the load destination virtual machine determined by the determination processing. When the transfer device, forming the load destination virtual machine among the plurality of transfer devices, receives information related to the load target program, the transfer device executes the load target program on the load destination virtual machine.SELECTED DRAWING: Figure 1

Description

本発明は、ネットワーク内においてデータを転送する複数の転送装置を制御する制御装置、制御プログラム、および、通信システムに関する。   The present invention relates to a control device, a control program, and a communication system that control a plurality of transfer devices that transfer data in a network.

近年、NFV(Network Functions Virtualisation)技術が注目されている。NFVは、汎用サーバ上で実現するパケット転送やファイアウォール等のネットワーク機能を、ネットワークを構成するノード上のソフトウェアで実現する技術である。NFVでは、ネットワーク機能の動的な追加、削除、および変更が可能となり、ネットワーク構成の変更が容易になり、また、ネットワーク内の物理的なリソースを有効に活用することが可能となる。   In recent years, NFV (Network Functions Virtualization) technology has attracted attention. NFV is a technology for realizing network functions such as packet transfer and firewall realized on a general-purpose server by software on nodes constituting the network. In NFV, network functions can be dynamically added, deleted, and changed, the network configuration can be easily changed, and physical resources in the network can be effectively used.

NFV環境では、ノード上で実行する各機能に対する動作保証要件を満たし、かつ、各ノードの計算リソースをネットワーク全体として効率的に利用するよう各ノードに機能を配備する必要がある。現状では、ネットワーク保守者が、各ノードの計算リソースを管理し、残計算リソースによりソフトウェアのロード対象ノードを決定する。   In the NFV environment, it is necessary to deploy a function in each node so that the operation guarantee requirement for each function executed on the node is satisfied and the calculation resources of each node are efficiently used as the entire network. At present, the network maintainer manages the calculation resources of each node and determines the software load target node based on the remaining calculation resources.

また、ネットワークを管理するコントローラが、ネットワークを構成する各ノードに負荷を分散する例が、特許文献1に記載されている。特許文献1には、「仮想ノードの作成に際し、物理ノードのリソースと仮想ノードの要求位置の物理ノード位置との差異に対する重み係数を用いて、ネットワークリソースを有効活用出来る仮想ネットワークを提供する」と記載される。   Patent Document 1 describes an example in which a controller that manages a network distributes a load to each node that configures the network. Japanese Patent Laid-Open No. 2004-228561 “provides a virtual network that can effectively use network resources by using a weighting factor for a difference between a physical node resource and a physical node position of a requested virtual node position when creating a virtual node”. be written.

特開2012−199644号公報JP 2012-199644 A

しかしながら、特許文献1に記載された技術では、各ノードが要求される保証品質や優先度等の実行要件を満たす各ノード内の計算リソース配分を保証しない。したがって、特許文献1に記載された技術では、NFV環境において、ノード上で実行する各機能に対する動作保証要件を満たし、かつ、各ノードの計算リソースをネットワーク全体として効率的に利用するよう各ノードに機能を配備することができないという問題がある。   However, the technique described in Patent Document 1 does not guarantee the calculation resource allocation in each node that satisfies the execution requirements such as the guaranteed quality and priority required for each node. Therefore, in the technology described in Patent Document 1, in each NFV environment, each node is configured to satisfy the operation guarantee requirement for each function executed on the node and efficiently use the calculation resources of each node as the entire network. There is a problem that the function cannot be deployed.

本発明は、保証要求に応じて、ネットワーク内の計算リソースの効率的な活用を図ることを目的とする。   An object of the present invention is to efficiently use computational resources in a network in response to a guarantee request.

本願において開示される発明の一側面となる通信システムは、ネットワーク内においてデータを転送する複数の転送装置と、前記複数の転送装置を制御する制御装置と、を有する通信システムであって、前記複数の転送装置の各々には、プログラムの動作保証を遵守するように前記プログラムを実行する第1の仮想マシンと、前記プログラムの実行に際し前記プログラムの動作保証を遵守しなくてもよい第2の仮想マシンと、が構築され、前記制御装置は、プロセッサと、前記ネットワーク内に設定された経路を示す経路管理情報を記憶する記憶デバイスと、を有し、前記プロセッサは、前記複数の転送装置にロードする対象のプログラムであるロード対象プログラムの動作保証に関する保証要求を受け付ける受付処理と、前記管理情報に基づいて前記経路を構成する転送装置群を前記複数の転送装置から選択する選択処理と、前記受付処理によって受け付けられた前記保証要求に応じて、前記選択処理によって選択された転送装置に構築される前記第1の仮想マシンおよび前記第2の仮想マシンのうち、いずれか一方の仮想マシンを前記ロード対象プログラムのロード先に決定する決定処理と、前記決定処理によって決定されたロード先の仮想マシンに前記ロード対象プログラムに関する情報を送信する送信処理と、を実行し、前記複数の転送装置のうち前記ロード先の仮想マシンを構築する転送装置は、前記ロード対象プログラムに関する情報を受信すると、前記ロード先の仮想マシン上で前記ロード対象プログラムを実行することを特徴とする。   A communication system according to one aspect of the invention disclosed in the present application is a communication system including a plurality of transfer devices that transfer data in a network and a control device that controls the plurality of transfer devices. Each of the transfer devices includes a first virtual machine that executes the program so as to comply with the operation guarantee of the program, and a second virtual machine that does not need to comply with the operation guarantee of the program when the program is executed. And the control device includes a processor and a storage device that stores route management information indicating a route set in the network, and the processor loads the plurality of transfer devices. A reception process for receiving a guarantee request for guaranteeing the operation of the load target program that is a target program to be loaded, and the management information And selecting the transfer device group that constitutes the path from the plurality of transfer devices and the transfer device selected by the selection process according to the guarantee request received by the acceptance process. A determination process for determining one of the first virtual machine and the second virtual machine as a load destination of the load target program, and a load destination virtual machine determined by the determination process A transmission process that transmits information related to the load target program, and the transfer apparatus that constructs the load destination virtual machine among the plurality of transfer apparatuses receives the information related to the load target program, The load target program is executed on a virtual machine.

本発明の代表的な実施の形態によれば、保証要求に応じて、ネットワーク内の計算リソースの効率的な活用を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。   According to a typical embodiment of the present invention, it is possible to efficiently use computational resources in a network in response to a guarantee request. Problems, configurations, and effects other than those described above will become apparent from the description of the following embodiments.

本実施例にかかる通信システムの構成例を示す説明図である。It is explanatory drawing which shows the structural example of the communication system concerning a present Example. サービスコントローラの内部構成例を示すブロック図である。It is a block diagram which shows the example of an internal structure of a service controller. 図1に示したソフト機能テーブルの記憶内容例を示す説明図である。It is explanatory drawing which shows the example of a memory content of the software function table shown in FIG. 図1に示した計算リソース管理テーブルの記憶内容例を示す説明図である。It is explanatory drawing which shows the example of a memory content of the calculation resource management table shown in FIG. 候補ノードテーブルの記憶内容例を示す説明図である。It is explanatory drawing which shows the example of a memory content of a candidate node table. ノードの内部構成例を示すブロック図である。It is a block diagram which shows the internal structural example of a node. 計算リソーステーブルの記憶内容例を示す説明図である。It is explanatory drawing which shows the example of the memory content of a calculation resource table. 通信システムのシーケンス例を示す説明図である。It is explanatory drawing which shows the example of a sequence of a communication system. 図8に示したロード対象ノード/VM選択処理(ステップS806)の詳細な処理手順例を示すフローチャートである。FIG. 9 is a flowchart showing a detailed processing procedure example of a load target node / VM selection process (step S806) shown in FIG. 8. FIG.

本実施例では、制御対象となるネットワーク内の各ノードに仮想化技術を適用して複数の仮想マシン(Virtual Machine、「VM」)を構築することにより、各ノード内の計算リソース(たとえば、CPU(Central Processing Unit))がVM単位で分割される。各ノードを管理するサービスコントローラは、ネットワーク内に適用するソフトウェアを各ノードにロードするのに先立って、当該ソフトウェアに対する動作の保証要求と、ネットワーク内の各ノードの計算リソースと、により、ロード先のノードおよびノード内のVMを決定する。   In this embodiment, a virtual machine is applied to each node in the network to be controlled to construct a plurality of virtual machines (Virtual Machines, “VMs”), thereby calculating computing resources (for example, CPUs) in each node. (Central Processing Unit)) is divided in VM units. Prior to loading the software to be applied in the network to each node, the service controller that manages each node performs a load-guaranteed request for the software and the calculation resource of each node in the network according to the load-destination request. Determine the nodes and VMs within the nodes.

これにより、ソフトウェアに対する動作の保証要求に応じたソフトウェアの計算リソース(たとえば、CPU使用率)を確保して、ネットワーク内の計算リソースを効率的に活用することができる。また、VM単位でソフトウェアをノードで実行させるため、VMごとに計算リソースを取得することができる。したがって、ソフトウェアの計算リソースを容易に特定することができる。さらに、これらの処理が自動化されることで、ネットワークの保守者の負担軽減を図ることができる。   As a result, it is possible to secure software calculation resources (for example, CPU usage rate) in accordance with a request for guaranteeing the operation of the software and efficiently use the calculation resources in the network. In addition, since the software is executed on the nodes in units of VMs, calculation resources can be acquired for each VM. Therefore, it is possible to easily specify the calculation resource of the software. Furthermore, by automating these processes, the burden on the network maintainer can be reduced.

<通信システムの構成例>
図1は、本実施例にかかる通信システムの構成例を示す説明図である。まず、通信システム100内の接続関係について説明する。通信システム100は、制御対象となるパケットトランスポートネットワーク101上のノード群Nsと、サービスコントローラ103と、を含む。通信システム100では、たとえば、トラフィックモニタやファイアウォール等のパケットトランスポートネットワーク101に付加価値を与える機能を、サービスコントローラ103がノード群Nsにソフトウェアとして提供する。
<Configuration example of communication system>
FIG. 1 is an explanatory diagram of a configuration example of a communication system according to the present embodiment. First, the connection relationship in the communication system 100 will be described. The communication system 100 includes a node group Ns on the packet transport network 101 to be controlled and a service controller 103. In the communication system 100, for example, the service controller 103 provides a function to add value to the packet transport network 101 such as a traffic monitor and a firewall to the node group Ns as software.

ノード群Nsは、エッジノードEN1,EN2と、中継ノードRN1〜RN5と、を含む。エッジノードEN1,EN2はそれぞれ、パケットトランスポートネットワーク101の端点に配置される転送装置である。図1では、エッジノードEN1がネットワーク111と接続され、エッジノードEN2がネットワーク112に接続される。なお、以下の説明で、いずれのエッジノードEN1,EN2でもよい場合は、「エッジノードEN」と表記する。   Node group Ns includes edge nodes EN1 and EN2 and relay nodes RN1 to RN5. Each of the edge nodes EN1 and EN2 is a transfer device arranged at an end point of the packet transport network 101. In FIG. 1, the edge node EN1 is connected to the network 111, and the edge node EN2 is connected to the network 112. In the following description, when any of the edge nodes EN1 and EN2 is acceptable, it is expressed as “edge node EN”.

中継ノードRN1〜RN5はそれぞれ、パケットトランスポートネットワーク101の中継ポイントに配置される転送装置である。なお、以下の説明で、いずれの中継ノードRN1〜RN5でもよい場合は、「中継ノードRN」と表記する。また、以下の説明で、エッジノードENおよび中継ノードRNのいずれでもよい場合は、「ノードN」と表記する。なお、ノードNの数は、図1で示した数に限定されない。   Each of the relay nodes RN <b> 1 to RN <b> 5 is a transfer device arranged at a relay point of the packet transport network 101. In the following description, when any of the relay nodes RN1 to RN5 may be used, it is expressed as “relay node RN”. In the following description, when either the edge node EN or the relay node RN may be used, it is expressed as “node N”. The number of nodes N is not limited to the number shown in FIG.

ノードNは、仮想マシン(VM)を構築する。VMは、サービスコントローラ103からロードされてくるプログラムPを実行する環境である。具体的には、たとえば、2種類のVMが構築される。1つは、プログラムの動作保証を遵守するようにプログラムを実行するVMである。このVMは、後述する動作保証プログラム用VMに相当する。もう1つは、プログラムの実行に際しプログラムの動作保証を遵守しなくてもよいVMである。このVMは、後述するベストエフォートプログラム用VMに相当する。ノードNは、たとえば、データを転送する転送装置であるが、L2スイッチやルータでもよい。   The node N constructs a virtual machine (VM). The VM is an environment for executing the program P loaded from the service controller 103. Specifically, for example, two types of VMs are constructed. One is a VM that executes a program so as to comply with the operation guarantee of the program. This VM corresponds to an operation guarantee program VM described later. The other is a VM that does not have to comply with the operation guarantee of the program when executing the program. This VM corresponds to a best effort program VM described later. The node N is, for example, a transfer device that transfers data, but may be an L2 switch or a router.

保守者/他管理システム102は、パケットトランスポートネットワーク101を管理する保守者またはサービスコントローラ103に接続される上位の管理システムを指す。保守者/他管理システム102は、サービスコントローラ103に指示を与える。   The maintenance person / other management system 102 refers to a maintenance person who manages the packet transport network 101 or an upper management system connected to the service controller 103. The maintenance person / other management system 102 gives an instruction to the service controller 103.

サービスコントローラ103は、各ノードNと接続し、保守者/他管理システム102からの指示にしたがって、ノードNに各種サービスを提供する制御装置である。たとえば、保守者/他管理システム102からの指示が、経路設定要求r1である場合、サービスコントローラ103は、当該経路設定要求r1に従い、経路設定情報RTIを生成し、パケットトランスポートネットワーク101内に経路を設定する。経路設定要求r1には、始点となるエッジノードENを特定する情報、終点となるエッジノードENを特定する情報、使用するポート番号、必要な通信帯域(bps)などが含まれる。図1では、例として、太線で示した選択経路RTが設定される。なお、経路設定情報RTIの生成方法は、公知の方法を用いればよい。   The service controller 103 is a control device that connects to each node N and provides various services to the node N in accordance with instructions from the maintainer / other management system 102. For example, when the instruction from the maintenance person / other management system 102 is the route setting request r1, the service controller 103 generates route setting information RTI in accordance with the route setting request r1, and routes it in the packet transport network 101. Set. The route setting request r1 includes information for specifying the edge node EN as the start point, information for specifying the edge node EN as the end point, a port number to be used, a necessary communication band (bps), and the like. In FIG. 1, as an example, a selection route RT indicated by a bold line is set. A known method may be used as a method for generating the route setting information RTI.

また、保守者/他管理システム102からの指示が、サービス提供要求r2である場合、サービスコントローラ103は、当該サービス提供要求r2に従い、プログラムPをロードするノードNを決定する。サービス提供要求r2には、ノードNが提供するサービスのプログラムであり、ノードNにロードさせることを要求するプログラムP(以下、要求プログラム)を識別する情報(要求プログラムの識別情報)、要求プログラムの動作保証内容を指定する情報(保証要求)などが含まれる。   When the instruction from the maintenance person / other management system 102 is a service provision request r2, the service controller 103 determines a node N to load the program P according to the service provision request r2. The service provision request r2 is a service program provided by the node N, and information (request program identification information) for identifying a program P (hereinafter referred to as a request program) that is requested to be loaded into the node N, Information (guarantee request) that specifies the operation guarantee content is included.

つぎに、サービスコントローラ103およびノードNが保持する情報について説明する。サービスコントローラ103は、ソフト機能テーブルT1、計算リソース管理テーブルT2、通信リソース管理テーブルT3、および候補ノードテーブルT5を有する。ソフト機能テーブルT1は、ソフトウェアの機能を規定する情報である。ここでいうソフトウェアとは、サービスコントローラ103がノードNにロードするプログラムPである。ソフト機能テーブルT1は、あらかじめ用意される情報である。ソフト機能テーブルT1の詳細については図3で説明する。   Next, information held by the service controller 103 and the node N will be described. The service controller 103 has a software function table T1, a calculation resource management table T2, a communication resource management table T3, and a candidate node table T5. The software function table T1 is information defining software functions. Here, the software is a program P that the service controller 103 loads into the node N. The software function table T1 is information prepared in advance. Details of the software function table T1 will be described with reference to FIG.

計算リソース管理テーブルT2は、ノードNの計算リソースを管理するテーブルである。ノードNの計算リソースは、たとえば、CPU使用率やメモリ使用率である。本例では、CPU使用率を例に挙げて説明する。サービスコントローラ103からロードされてきたプログラムがノードNで実行されると、CPU使用率が上昇する。計算リソースは、たとえば、ノードN上に構築されるVMごとに管理される。計算リソース管理テーブルT2の詳細については図4で説明する。   The calculation resource management table T2 is a table for managing the calculation resources of the node N. The calculation resource of the node N is, for example, a CPU usage rate or a memory usage rate. In this example, the CPU usage rate will be described as an example. When the program loaded from the service controller 103 is executed on the node N, the CPU usage rate increases. The calculation resource is managed for each VM constructed on the node N, for example. Details of the calculation resource management table T2 will be described with reference to FIG.

通信リソース管理テーブルT3は、ノードNの通信リソースを管理するテーブルである。ノードNの通信リソースは、たとえば、ノードNの通信帯域(Gbps)やポートの使用状況などである。サービスコントローラ103は、保守者/他管理システム102からの経路設定要求r1(経路の両端となるエッジノードENを指定)に従い、通信リソース管理テーブルT3を参照して、パケットトランスポートネットワーク101内に設定する経路を示す経路設定情報RTIを生成することができる。ここで、パケットトランスポートネットワーク101内に設定する経路とは、最短経路であってもよいし、中継ノードRNの通信リソースが均一となるように負荷分散した経路であってもよい。サービスコントローラ103がどのような経路を設定するかのポリシーを予め保持していてもよい。   The communication resource management table T3 is a table for managing communication resources of the node N. The communication resource of the node N is, for example, the communication band (Gbps) of the node N, the usage status of the port, and the like. The service controller 103 is set in the packet transport network 101 by referring to the communication resource management table T3 according to the route setting request r1 from the maintenance person / other management system 102 (specifying the edge nodes EN at both ends of the route). The route setting information RTI indicating the route to be generated can be generated. Here, the route set in the packet transport network 101 may be the shortest route or a load-distributed route so that the communication resources of the relay nodes RN are uniform. A policy regarding what kind of route the service controller 103 sets may be stored in advance.

候補ノードテーブルT5は、プログラムPのロード先のノードの候補を管理するテーブルである。プログラムPのロード先のノードは、パケットトランスポートネットワーク101内に設定される経路上のノードである。サービスコントローラ103は、保守者/他管理システム102からのサービス提供要求r2(ノードが実行するサービス(プログラムP)を指定)に従い、候補ノードテーブルT5を参照して、プログラムPのロード先のノードを決定する。候補ノードテーブルT5の詳細については図5で説明する。   The candidate node table T5 is a table for managing candidates of nodes to which the program P is loaded. The node to which the program P is loaded is a node on the path set in the packet transport network 101. The service controller 103 refers to the candidate node table T5 according to the service provision request r2 (specifying the service (program P) executed by the node) from the maintenance person / other management system 102, and determines the node to which the program P is loaded. decide. Details of the candidate node table T5 will be described with reference to FIG.

ノードNは、計算リソーステーブルT4を有する。計算リソーステーブルT4は、ノードNの計算リソース(本例では、CPU使用率)を記録するテーブルである。計算リソースは、たとえば、VMごとに管理される。ノードNの計算リソースは、ノードNからサービスコントローラ103に送られ、計算リソース管理テーブルT2の更新に利用される。計算リソーステーブルT4の詳細については図7で説明する。   The node N has a calculation resource table T4. The calculation resource table T4 is a table for recording the calculation resource of the node N (CPU usage rate in this example). The calculation resource is managed for each VM, for example. The calculation resource of the node N is sent from the node N to the service controller 103 and used for updating the calculation resource management table T2. Details of the calculation resource table T4 will be described with reference to FIG.

つぎに、通信システム100の動作について説明する。サービスコントローラ103は、保守者/他管理システム102からの経路設定要求r1に従い、通信リソース管理テーブルT3を参照して、経路設定情報RTIを生成する。サービスコントローラ103は、経路設定情報RTIにより規定される選択経路RT上のノードN(たとえば、エッジノードEN1,EN2,中継ノードRN1〜RN3)に経路設定情報RTIを送信する。経路設定情報RTIを受信したノードNは、経路設定情報RTIに従って、ルーティングを実行する。これにより、選択経路RTが設定される。また、サービスコントローラ103は、生成した経路設定情報RTIを識別する情報と経路設定情報RTIに規定される選択経路RT上のノードNを特定する情報とを対応付けて経路管理テーブル(不図示)に格納する。つまり、経路管理テーブルは、複数の経路設定情報RTIと経路設定情報RTIそれぞれのノードNとを対応付けて記録するテーブルである。   Next, the operation of the communication system 100 will be described. The service controller 103 generates route setting information RTI by referring to the communication resource management table T3 according to the route setting request r1 from the maintenance person / other management system 102. The service controller 103 transmits the route setting information RTI to the nodes N (for example, edge nodes EN1, EN2, relay nodes RN1 to RN3) on the selected route RT defined by the route setting information RTI. The node N that has received the route setting information RTI performs routing according to the route setting information RTI. Thereby, the selection route RT is set. Further, the service controller 103 associates the information for identifying the generated route setting information RTI with the information for specifying the node N on the selected route RT defined in the route setting information RTI in a route management table (not shown). Store. That is, the route management table is a table that records a plurality of route setting information RTIs and the node N of each route setting information RTI in association with each other.

つぎに、サービスコントローラ103は、保守者/他管理システム102からのサービス提供要求r2に従い、候補ノードテーブルT5を参照してプログラムPを実行した場合の選択経路RT上のノードNのVMの計算リソースを確認する。そして、サービスコントローラ103は、プログラムPを実行しても計算リソースに余裕のある選択経路RT上のノードNのVMに、プログラムPをロードする。プログラムPがロードされたノードは、指定されたVM上で当該プログラムPを実行する。これにより、動作保証を要求されたプログラムPの計算リソースを確保することができるとともに、パケットトランスポートネットワーク101内の計算リソースを効率的に活用することができる。また、これらの処理が自動化されることで、パケットトランスポートネットワーク101の保守者の負担軽減を図ることができる。   Next, the service controller 103 refers to the candidate node table T5 in accordance with the service provision request r2 from the maintainer / other management system 102, and the VM calculation resource of the node N on the selected route RT when the program P is executed. Confirm. Then, the service controller 103 loads the program P into the VM of the node N on the selected route RT that has sufficient computing resources even if the program P is executed. The node loaded with the program P executes the program P on the designated VM. As a result, it is possible to secure the calculation resource of the program P for which operation guarantee is requested, and to efficiently use the calculation resource in the packet transport network 101. Also, by automating these processes, it is possible to reduce the burden on the maintainer of the packet transport network 101.

<サービスコントローラ103の内部構成例>
図2は、サービスコントローラ103の内部構成例を示すブロック図である。サービスコントローラ103は、ソフト機能テーブルT1と、計算リソース管理テーブルT2と、通信リソース管理テーブルT3と、保守者/他管理システムIF501と、経路生成部502と、ノードリソース監視部503と、ソフトウェア管理部504と、ソフトウェアロード部505と、ノードIF506と、を有する。
<Internal Configuration Example of Service Controller 103>
FIG. 2 is a block diagram illustrating an internal configuration example of the service controller 103. The service controller 103 includes a software function table T1, a calculation resource management table T2, a communication resource management table T3, a maintainer / other management system IF 501, a path generation unit 502, a node resource monitoring unit 503, and a software management unit. 504, a software load unit 505, and a node IF 506.

ソフト機能テーブルT1、計算リソース管理テーブルT2、および、通信リソース管理テーブルT3は、具体的には、たとえば、メモリやハードディスクなどの記憶デバイス(不図示)により実現される。保守者/他管理システムIF501およびノードIF506は、具体的には、たとえば、ポートを含むインタフェース回路(不図示)により実現される。経路生成部502、ノードリソース監視部503、ソフトウェア管理部504、および、ソフトウェアロード部505は、具体的には、たとえば、記憶デバイスに記憶されたプログラムをプロセッサ(不図示)に実行させることにより実現される。   Specifically, the software function table T1, the calculation resource management table T2, and the communication resource management table T3 are realized by a storage device (not shown) such as a memory or a hard disk, for example. Specifically, the maintenance / other management system IF 501 and the node IF 506 are realized by, for example, an interface circuit (not shown) including a port. Specifically, the path generation unit 502, the node resource monitoring unit 503, the software management unit 504, and the software load unit 505 are realized, for example, by causing a processor (not shown) to execute a program stored in a storage device. Is done.

保守者/他管理システムIF501は、保守者/他管理システム102からの経路設定要求r1やサービス提供要求r2を受け付ける。保守者/他管理システムIF501は、受け付けた要求の種別を識別して、経路設定要求r1を経路生成部502に送り、サービス提供要求r2をソフトウェア管理部504に送る。   The maintenance person / other management system IF 501 receives a route setting request r1 and a service provision request r2 from the maintenance person / other management system 102. The maintenance person / other management system IF 501 identifies the type of the received request, sends a route setting request r1 to the route generation unit 502, and sends a service provision request r2 to the software management unit 504.

経路生成部502は、経路設定要求r1に従い、通信リソース管理テーブルT3を参照して経路設定情報RTIを生成し、経路管理テーブルを生成する。経路生成部502は、生成した経路設定情報RTIを、ノードIF506を介して、経路設定情報RTIで特定される選択経路RTに含まれるノードNに送信する。   The route generation unit 502 generates route setting information RTI by referring to the communication resource management table T3 according to the route setting request r1, and generates a route management table. The route generation unit 502 transmits the generated route setting information RTI to the node N included in the selected route RT specified by the route setting information RTI via the node IF 506.

ノードリソース監視部503は、ノードNの計算リソースを監視する。具体的には、たとえば、ノードリソース監視部503は、所定のタイミングでノードNに計算リソースの取得要求を送信する。当該取得要求を受けたノードNは、計算リソーステーブルT4を参照して、VM種別401ごとに、実行プログラム402ごとのCPU使用率をCPU使用率403から読み出して、ノードリソース監視部503に送る。ノードリソース監視部503は、ノードNからの計算リソース情報RSIであるCPU使用率をノードIF506を介して受信し、受信したCPU使用率をソフトウェア管理部504に送る。   The node resource monitoring unit 503 monitors the calculation resource of the node N. Specifically, for example, the node resource monitoring unit 503 transmits a calculation resource acquisition request to the node N at a predetermined timing. The node N that has received the acquisition request refers to the calculation resource table T4, reads the CPU usage rate for each execution program 402 from the CPU usage rate 403 for each VM type 401, and sends it to the node resource monitoring unit 503. The node resource monitoring unit 503 receives the CPU usage rate, which is the calculation resource information RSI from the node N, via the node IF 506, and sends the received CPU usage rate to the software management unit 504.

ソフトウェア管理部504は、ノードリソース監視部503からのCPU使用率を用いて、計算リソース管理テーブルT2のCPU使用率304を更新する。また、ソフトウェア管理部504は、サービス提供要求r2を受けた場合、候補ノードテーブルT5を作成し、選択経路RTに含まれるノードNのうち、どのノードNのどのVMにサービス提供要求r2で要求された要求プログラムを実行させるかを、候補ノードテーブルT5を用いて決定する。ソフトウェア管理部504は、当該決定結果およびサービス提供要求r2に含まれる要求プログラムの識別情報をソフトウェアロード部505に送る。   The software management unit 504 uses the CPU usage rate from the node resource monitoring unit 503 to update the CPU usage rate 304 of the calculation resource management table T2. In addition, when receiving the service provision request r2, the software management unit 504 creates a candidate node table T5 and is requested by the service provision request r2 to which VM of which node N among the nodes N included in the selected route RT. The candidate node table T5 is used to determine whether to execute the requested program. The software management unit 504 sends the determination result and the identification information of the requested program included in the service provision request r2 to the software loading unit 505.

ソフトウェアロード部505は、ソフトウェア管理部504からの要求プログラムの識別情報により、サービスコントローラ103に格納されている要求プログラムを記憶デバイスから読み出す。そして、ソフトウェアロード部505は、ソフトウェア管理部504の決定結果にしたがって、該当するノードNのVMを指定して、読み出したプログラムPを要求プログラムとしてロードする。   The software load unit 505 reads the request program stored in the service controller 103 from the storage device based on the request program identification information from the software management unit 504. Then, the software loading unit 505 specifies the VM of the corresponding node N according to the determination result of the software management unit 504, and loads the read program P as a request program.

ノードIF506は、経路生成部502からの経路設定情報RTIや要求プログラム(プログラムP)をノードNに送信する。   The node IF 506 transmits the route setting information RTI and the request program (program P) from the route generation unit 502 to the node N.

<サービスコントローラが有するテーブルの記憶内容例>
図3は、図1に示したソフト機能テーブルT1の記憶内容例を示す説明図である。ソフト機能テーブルT1は、プログラム名201と、負荷種別202と、適用ノード種別203と、想定CPU使用率204と、を有する。ソフト機能テーブルT1は、あらかじめサービスコントローラ103が保持する情報である。
<Example of stored contents of table of service controller>
FIG. 3 is an explanatory diagram showing an example of stored contents of the software function table T1 shown in FIG. The software function table T1 includes a program name 201, a load type 202, an applicable node type 203, and an assumed CPU usage rate 204. The software function table T1 is information that the service controller 103 holds in advance.

プログラム名201は、ノードNにロードするプログラムPを一意に特定する識別情報である。負荷種別202は、プログラム名201で特定されるプログラムPの負荷の種別を規定する情報であり、一定負荷と変動負荷がある。一定負荷は、そのプログラムPを実行した場合の負荷が一定であることを示す。変動負荷は、そのプログラムPを実行した場合の負荷が変動することを示す。   The program name 201 is identification information that uniquely identifies the program P to be loaded into the node N. The load type 202 is information that defines the type of load of the program P specified by the program name 201, and includes a constant load and a variable load. The constant load indicates that the load when the program P is executed is constant. The fluctuating load indicates that the load when the program P is executed fluctuates.

適用ノード種別203は、プログラム名201で特定されるプログラムPが適用されるノードNの種別を示す情報である。つまり、適用ノード種別203は、プログラム名201で特定されるプログラムPを実行するノードNの種別を示す情報である。適用ノード種別203が「エッジ」である場合、エッジノードENにのみ適用可能である。適用ノード種別203が「エッジ/中継」である場合、エッジノードENにも中継ノードRNにも適用可能である。適用ノード種別203が「中継」である場合、中継ノードRNにのみ適用可能である。   The application node type 203 is information indicating the type of the node N to which the program P specified by the program name 201 is applied. That is, the applicable node type 203 is information indicating the type of the node N that executes the program P specified by the program name 201. When the application node type 203 is “edge”, it can be applied only to the edge node EN. When the application node type 203 is “edge / relay”, it is applicable to both the edge node EN and the relay node RN. When the application node type 203 is “relay”, it is applicable only to the relay node RN.

想定CPU使用率204は、プログラム名201で特定されるプログラムPのCPU使用率の予測値である。想定CPU使用率204は、CPU1個あたりのCPU使用率の予測値である。   The assumed CPU usage rate 204 is a predicted value of the CPU usage rate of the program P specified by the program name 201. The assumed CPU usage rate 204 is a predicted value of the CPU usage rate per CPU.

図4は、図1に示した選択経路RTの計算リソース管理テーブルT2の記憶内容例を示す説明図である。計算リソース管理テーブルT2は、ノード名301と、VM種別302と、ロード済みプログラム303と、CPU使用率304と、を有する。計算リソース管理テーブルT2は、ノードNからの情報により更新されるテーブルである。なお、経路設定情報RTIが複数生成される場合は、計算リソース管理テーブルT2は、経路設定情報RTI毎に作成される。   FIG. 4 is an explanatory diagram showing an example of stored contents of the calculation resource management table T2 of the selected route RT shown in FIG. The calculation resource management table T2 includes a node name 301, a VM type 302, a loaded program 303, and a CPU usage rate 304. The calculation resource management table T2 is a table that is updated with information from the node N. When a plurality of route setting information RTIs are generated, the calculation resource management table T2 is created for each route setting information RTI.

ノード名301は、ノードNを一意に特定する識別情報である。ノード名301は、あらかじめ設定されてもよい。また、経路設定情報RTIが生成された場合に、サービスコントローラ103のソフトウェア管理部504が、選択経路RT内のノードNのノードをノード名301に格納してもよい。   The node name 301 is identification information that uniquely identifies the node N. The node name 301 may be set in advance. In addition, when the route setting information RTI is generated, the software management unit 504 of the service controller 103 may store the node N in the selected route RT in the node name 301.

VM種別302は、ノード名301で特定されるノードN上で動作するVMの種別を示す情報である。VM種別302である「動作保証プログラム用VM」は、そのVMが、動作保証プログラムを実行するVMであることを示す。動作保証プログラムは、ノードN内の計算リソースの負荷状態に因らず即時かつ完全な動作保証を要求されるプログラムPである。   The VM type 302 is information indicating the type of VM operating on the node N specified by the node name 301. The VM type 302 “operation guarantee program VM” indicates that the VM executes the operation guarantee program. The operation guarantee program is a program P that requires immediate and complete operation guarantee regardless of the load state of the computing resource in the node N.

また、VM種別302である「ベストエフォートプログラム用VM」は、そのVMが、ベストエフォートプログラムを実行するVMであることを示す。ベストエフォートプログラムは、厳密な動作保証を要求されず、ノードN内の計算リソースの負荷状況に因っては、リソースに空きができるまで実行されないことが許容されるという保証レベルのプログラムPである。   The VM type 302 “VM for best effort program” indicates that the VM executes the best effort program. The best effort program is a program P having a guarantee level that does not require a strict guarantee of operation and is allowed not to be executed until a resource is available depending on the load state of the calculation resource in the node N. .

なお、VM種別302は、保守者/他管理システム102から予め設定される。   The VM type 302 is set in advance by the maintenance person / other management system 102.

ロード済みプログラム303は、ノード名301で特定されるノードNにロードされたプログラムPである。ロード済みプログラム303は、VM種別302ごとに分類される。なお、ロード済みプログラム303には、サービスコントローラ103が、各ノードNにプログラムPをロードした後に、ロードしたプログラムPのプログラム名が格納される。   The loaded program 303 is a program P loaded on the node N specified by the node name 301. The loaded program 303 is classified for each VM type 302. The loaded program 303 stores the program name of the loaded program P after the service controller 103 loads the program P to each node N.

CPU使用率304は、ロード済みプログラム303についてのVM種別302で規定されるVMでのCPU使用率である。CPU使用率304については、サービスコントローラ103のソフトウェア管理部504がノードNからCPU使用率を受信した場合に、ソフトウェア管理部504が、受信したCPU使用率をそのまま、CPU使用率304に格納してもよく、また受信したCPU使用率を用いて所定の統計値を算出し、算出結果をCPU使用率304に格納してもよい。   The CPU usage rate 304 is a CPU usage rate in the VM defined by the VM type 302 for the loaded program 303. Regarding the CPU usage rate 304, when the software management unit 504 of the service controller 103 receives the CPU usage rate from the node N, the software management unit 504 stores the received CPU usage rate in the CPU usage rate 304 as it is. Alternatively, a predetermined statistical value may be calculated using the received CPU usage rate, and the calculation result may be stored in the CPU usage rate 304.

VM種別302が動作保証プログラム用VMである場合、ロード済みプログラム303の各CPU使用率304については、同一ノードNから収集したCPU使用率の最大値がCPU使用率304にロード済みプログラム303ごとに格納される。最大値とすることにより、動作保証プログラムVMがロード済みプログラム303を確実に実行するように計算リソース割当をおこなうことができる。   When the VM type 302 is the VM for the operation guarantee program, for each CPU usage rate 304 of the loaded program 303, the maximum value of the CPU usage rate collected from the same node N is the same for each loaded program 303 in the CPU usage rate 304. Stored. By setting the maximum value, calculation resource allocation can be performed so that the operation guarantee program VM surely executes the loaded program 303.

また、VM種別302がベストエフォートプログラム用VMである場合、ロード済みプログラム303の各CPU使用率304については、同一ノードNから収集したCPU使用率の平均値がCPU使用率304にロード済みプログラム303ごとに格納される。平均値とすることにより負荷の変動があった場合を想定した計算リソース割当をおこなうことができる。   When the VM type 302 is a VM for the best effort program, for each CPU usage rate 304 of the loaded program 303, the average value of the CPU usage rates collected from the same node N is loaded into the CPU usage rate 304. Stored for each. By setting the average value, it is possible to perform calculation resource allocation assuming a case where the load varies.

図5は、候補ノードテーブルT5の記憶内容例を示す説明図である。候補ノードテーブルT5は、選択経路内ノード601と、候補フラグ602と、CPU使用率603と、必要CPU使用率604と、ロード後想定CPU使用率605と、を有する。候補ノードテーブルT5は、サービスコントローラ103のソフトウェア管理部504がサービス提供要求r2を受信した場合にソフトウェア管理部504によって作成される。   FIG. 5 is an explanatory diagram of an example of stored contents of the candidate node table T5. The candidate node table T5 includes a node 601 in the selected path, a candidate flag 602, a CPU usage rate 603, a necessary CPU usage rate 604, and an assumed CPU usage rate 605 after loading. The candidate node table T5 is created by the software management unit 504 when the software management unit 504 of the service controller 103 receives the service provision request r2.

選択経路内ノード601は、選択経路RTを構成するノードNを一意に特定する識別情報である。図1の例では、選択経路内ノード601には、選択経路RTを構成するノードNの識別情報として、EN1,EN2,RN1,RN2,RN3が格納される。ノードNの識別情報の「EN」は、そのノードNがエッジノードであることを示す。ノードNの識別情報の「RN」は、そのノードNが中継ノードであることを示す。選択経路内ノード601には、サービスコントローラ103の経路生成部502が選択経路を決定した後に、決定した選択経路上のノードNのノード名がソフトウェア管理部504によって格納される。   The selected route node 601 is identification information for uniquely identifying the node N constituting the selected route RT. In the example of FIG. 1, EN1, EN2, RN1, RN2, and RN3 are stored in the selected route node 601 as identification information of the node N that constitutes the selected route RT. The identification information “EN” of the node N indicates that the node N is an edge node. The identification information “RN” of the node N indicates that the node N is a relay node. In the selected route node 601, after the route generation unit 502 of the service controller 103 determines the selected route, the node name of the node N on the selected selected route is stored by the software management unit 504.

候補フラグ602は、選択経路内ノード601が、図3のソフト機能テーブルT1における要求プログラムに対応する適用ノード種別203に該当するか否かを示す識別情報である。本例では、該当する場合が「1」、該当しない場合が「0」である。   The candidate flag 602 is identification information indicating whether the node 601 in the selected route corresponds to the applicable node type 203 corresponding to the request program in the software function table T1 of FIG. In this example, “1” is applicable and “0” is not applicable.

たとえば、要求プログラムが「導通特性試験」である場合、ソフトウェア管理部504は、ソフト機能テーブルT1を参照して、プログラム名201:「導通特性試験」に対応する適用ノード種別203:「エッジ」を特定する。図5の選択経路内ノード601が「EN1」である場合、適用ノード種別203:「エッジ」に該当するため、「EN1」に対応する候補フラグは「1」になる。選択経路内ノード601が「EN2」についても同様である。反対に、選択経路内ノード601が「RN1」、「RN2」、「RN3」の場合は、適用ノード種別「エッジ」に該当しないため、候補フラグ602は「0」のままである。   For example, when the requested program is “continuity characteristics test”, the software management unit 504 refers to the software function table T1 and sets the application node type 203: “edge” corresponding to the program name 201: “continuity characteristics test”. Identify. When the node 601 in the selected path in FIG. 5 is “EN1”, the candidate flag corresponding to “EN1” is “1” because it corresponds to the applicable node type 203: “edge”. The same applies to the node 601 in the selection path “EN2”. On the other hand, when the node 601 in the selected route is “RN1”, “RN2”, or “RN3”, the candidate node 602 remains “0” because it does not correspond to the applicable node type “edge”.

CPU使用率603は、計算リソース管理テーブルT2において、サービス提供要求r2に含まれる要求プログラムの動作保証要件の情報(保証要求)に応じたVM種別302でのロード済みプログラム303のCPU使用率304の合計値である。たとえば、保証要求が「保証」である場合、VM種別302は「動作保証プログラム用VM」となる。したがって、計算リソース管理テーブルT2において、ノード名301:「EN1」の場合、ロード済みプログラム303である「帯域制御」、「ファイアウォール」、および「接続性監視」の各CPU使用率304である「18%」、「17%」、および「5%」の合計である「40%」が、候補ノードテーブルT5において選択経路内ノード601:「EN1」のCPU使用率603に格納される。   The CPU usage rate 603 corresponds to the CPU usage rate 304 of the loaded program 303 in the VM type 302 according to the operation guarantee requirement information (guarantee request) of the requested program included in the service provision request r2 in the calculation resource management table T2. It is the total value. For example, when the guarantee request is “guarantee”, the VM type 302 is “VM for operation guarantee program”. Accordingly, in the calculation resource management table T2, when the node name 301 is “EN1”, the CPU usage rates 304 of “bandwidth control”, “firewall”, and “connectivity monitoring” that are the loaded programs 303 are “18”. “40%”, which is the sum of “%”, “17%”, and “5%”, is stored in the CPU usage rate 603 of the node 601 in the selected path: “EN1” in the candidate node table T5.

保証要求が、「保証orベストエフォート」の場合も同様である。「保証orベストエフォート」は、可能な限り「保証」として扱い、「保証」では要求プログラムのロード先が決定しない場合に、「ベストエフォート」として扱われる保証要求である。なお、上記の例で、保証要求が「ベストエフォート」である場合、VM種別302は「ベストエフォートプログラム用VM」となる。したがって、計算リソース管理テーブルT2において、ノード名301:「EN1」の場合、ロード済みプログラム303である「遅延時間測定」、「導通特性試験」および「トラフィックモニタ」の各CPU使用率である「7%」、「5%」、および「8%」の合計である「20%」が、候補ノードテーブルT5において、選択経路内ノード601が「EN1」のCPU使用率603に格納される。   The same applies when the guarantee request is “guaranteed or best effort”. “Warranty or best effort” is a guarantee request that is treated as “guaranteed” as much as possible, and is handled as “best effort” when the load destination of the requested program is not determined in “guaranteed”. In the above example, when the guarantee request is “best effort”, the VM type 302 is “VM for best effort program”. Therefore, in the calculation resource management table T2, in the case of the node name 301: “EN1”, the CPU usage rates of “7 delay time measurement”, “continuity characteristics test” and “traffic monitor” which are the loaded programs 303 are “7”. “20%”, which is the sum of “%”, “5%”, and “8%”, is stored in the CPU usage rate 603 of the node 601 in the selected path “EN1” in the candidate node table T5.

必要CPU使用率604は、要求プログラムの実行に必要とされるCPU使用率である。ソフトウェア管理部504は、図3のソフト機能テーブルT1を参照し、プログラム名201で特定される要求プログラムの負荷種別202が「一定負荷」である場合、想定CPU使用率204を、必要CPU使用率として必要CPU使用率604に格納する。一方、プログラム名201で特定される要求プログラムの負荷種別202が「変動負荷」である場合、ソフトウェア管理部504は、想定CPU使用率204の最大値を、必要CPU使用率として必要CPU使用率604に格納する。   The required CPU usage rate 604 is a CPU usage rate required for executing the requested program. The software management unit 504 refers to the software function table T1 in FIG. 3, and when the load type 202 of the request program specified by the program name 201 is “constant load”, the software management unit 504 sets the assumed CPU usage rate 204 to the required CPU usage rate. As a necessary CPU usage rate 604. On the other hand, when the load type 202 of the requested program specified by the program name 201 is “variable load”, the software management unit 504 uses the maximum value of the assumed CPU usage rate 204 as the required CPU usage rate, and the required CPU usage rate 604. To store.

たとえば、要求プログラムが「帯域制御」である場合、負荷種別202が「一定負荷」であり、想定CPU使用率204は「20%」であるため、必要CPU使用率604に「20%」が格納される。一方、要求プログラムが「導通特性試験」である場合、負荷種別202が「変動負荷」であり、想定CPU使用率204は「0〜10%」であるため、必要CPU使用率604に「10%」が格納される。図5は、サービス提供要求r2の要求プログラムが「導通特性試験」であり、保証要求が、「保証」である場合の例である。   For example, when the requested program is “bandwidth control”, the load type 202 is “constant load” and the assumed CPU usage rate 204 is “20%”, so “20%” is stored in the required CPU usage rate 604. Is done. On the other hand, when the request program is “continuity characteristic test”, the load type 202 is “fluctuating load” and the assumed CPU usage rate 204 is “0 to 10%”, so the required CPU usage rate 604 is “10%”. Is stored. FIG. 5 shows an example in which the request program of the service provision request r2 is “continuity characteristic test” and the guarantee request is “guarantee”.

ロード後想定CPU使用率605は、要求プログラムがロード先のノードNにロードされた場合において、当該ロード先のノードNで当該要求プログラムを実行するVMでのCPU使用率の予測値である。具体的には、たとえば、ロード後想定CPU使用率は、CPU使用率603と必要CPU使用率604との合計値である。ロード後想定CPU使用率605には、ソフトウェア管理部504がCPU使用率603と必要CPU使用率604とに基づいて算出した値が格納される。   The post-load assumed CPU usage rate 605 is a predicted value of the CPU usage rate in the VM that executes the requested program at the load destination node N when the requested program is loaded into the load destination node N. Specifically, for example, the post-load estimated CPU usage rate is a total value of the CPU usage rate 603 and the required CPU usage rate 604. The post-load assumed CPU usage rate 605 stores a value calculated by the software management unit 504 based on the CPU usage rate 603 and the required CPU usage rate 604.

<ノードNの内部構成例>
図6は、ノードNの内部構成例を示すブロック図である。ノードNは、ネットワークインタフェース(NW−IF)701と、VM管理部702と、動作保証プログラム用VM703と、ベストエフォートプログラム用VM704と、経路テーブル705と、入出力処理部706と、ポート707と、を有する。
<Internal configuration example of node N>
FIG. 6 is a block diagram illustrating an internal configuration example of the node N. The node N includes a network interface (NW-IF) 701, a VM management unit 702, an operation guarantee program VM 703, a best effort program VM 704, a route table 705, an input / output processing unit 706, a port 707, Have

NW−IF701は、ノードNがサービスコントローラ103と通信するインタフェースである。NW−IF701がサービスコントローラ103から受け付けるデータには、経路設定情報RTIとプログラムPがある。また、NW−IF701からサービスコントローラ103に送るデータには、計算リソース情報RSIがある。   The NW-IF 701 is an interface through which the node N communicates with the service controller 103. Data received by the NW-IF 701 from the service controller 103 includes path setting information RTI and a program P. The data sent from the NW-IF 701 to the service controller 103 includes calculation resource information RSI.

VM管理部702は、ノードN内部にVMを構築(動作保証プログラム用VM703、ベストエフォートプログラム用VM704)し、構築されたVMを管理する。VM管理部702は、ゲストOS(Operating System)を起動し、VMの種別ごとにプロセッサを割り当てる。たとえば、ノードNがx個のプロセッサを有する場合、VM管理部702は、動作保証プログラム用VM703にy個、ベストエフォートプログラム用VM704にz個のプロセッサを割り当てる(y+z≦x)。   The VM management unit 702 constructs a VM inside the node N (operation guarantee program VM 703, best effort program VM 704), and manages the constructed VM. The VM management unit 702 activates a guest OS (Operating System) and allocates a processor for each VM type. For example, when the node N has x processors, the VM management unit 702 assigns y processors to the operation guarantee program VM 703 and z processors to the best effort program VM 704 (y + z ≦ x).

VM管理部702は、動作保証プログラム用VM703とベストエフォートプログラム用VM704とでプロセッサを共有させないようにするのが好ましい。そして、VM管理部702は、VMごとにゲストOSを起動して、動作保証プログラム用VM703およびベストエフォートプログラム用VM704を構築する。各VMには、サービスコントローラ103からロードされてきたプログラムPが実装される。   It is preferable that the VM management unit 702 does not share the processor between the operation guarantee program VM 703 and the best effort program VM 704. Then, the VM management unit 702 activates the guest OS for each VM, and constructs an operation guarantee program VM 703 and a best effort program VM 704. Each VM is loaded with the program P loaded from the service controller 103.

また、VM管理部702は、計算リソース監視部721と、プログラム格納部722と、上述した計算リソーステーブルT4と、を含む。計算リソース監視部721は、VMごとに、CPU使用率などの計算リソースの使用状況を監視する。たとえば、計算リソース監視部721は、各VMに対して計算リソースの取得要求を繰り返し(たとえば、定期的に)送信し、VMから当該VM上で実行されているプログラムの計算リソースの使用状況(たとえば、CPU使用率)を取得し、計算リソーステーブルT4に格納する。計算リソース監視部721は、具体的には、たとえば、ノードNのホストOSまたはホストOS上で動作するアプリケーションをプロセッサに実行させることにより実現される。   In addition, the VM management unit 702 includes a calculation resource monitoring unit 721, a program storage unit 722, and the calculation resource table T4 described above. The calculation resource monitoring unit 721 monitors the usage status of calculation resources such as a CPU usage rate for each VM. For example, the calculation resource monitoring unit 721 repeatedly (for example, periodically) transmits a calculation resource acquisition request to each VM, and uses a calculation resource usage status (for example, a program executed on the VM from the VM). , CPU usage rate) is acquired and stored in the calculation resource table T4. Specifically, the computing resource monitoring unit 721 is realized, for example, by causing a processor to execute a host OS of a node N or an application running on the host OS.

プログラム格納部722は、サービスコントローラ103から要求プログラムとしてロードされてきたプログラムPを格納する記憶領域である。プログラム格納部722に格納されたプログラムPは、該当するVMに送られる。プログラム格納部722は、具体的には、たとえば、ノードN内の記憶デバイスにより実現される。   The program storage unit 722 is a storage area for storing the program P loaded as a request program from the service controller 103. The program P stored in the program storage unit 722 is sent to the corresponding VM. Specifically, the program storage unit 722 is realized by a storage device in the node N, for example.

動作保証プログラム用VM703は、割り当てられたプロセッサにより、動作保証プログラムを実行するVMである。動作保証プログラムは、CPU使用率などのノードN内の計算リソースの負荷状態に因らず、即時かつ完全な動作保証を要求されるプログラムPである。動作保証プログラム用VM703は、プログラムインスタンス731と、ソフト機能実行部732と、により構成される。プログラムインスタンス731は、動作保証プログラム用VM703上で動作する動作保証プログラムである。ソフト機能実行部732は、プログラムインスタンス731を実行するゲストOSである。   The operation guarantee program VM 703 is a VM that executes an operation guarantee program by an assigned processor. The operation guarantee program is a program P that requires immediate and complete operation guarantee regardless of the load state of the computing resources in the node N such as the CPU usage rate. The operation guarantee program VM 703 includes a program instance 731 and a software function execution unit 732. The program instance 731 is an operation guarantee program that runs on the operation guarantee program VM 703. The software function execution unit 732 is a guest OS that executes the program instance 731.

ベストエフォートプログラム用VM704は、割り当てられたプロセッサにより、ベストエフォートプログラムを実行するVMである。ベストエフォートプログラムは、厳密な動作保証を要求されず、CPU使用率などのノードN内の計算リソースの負荷状況に因っては、計算リソースに空きができるまで実行されないことが許容されるという保証レベルのプログラムPである。ベストエフォートプログラム用VM704は、プログラムインスタンス741と、ソフト機能実行部742と、により構成される。プログラムインスタンス741は、ベストエフォートプログラム用VM704上で動作するベストエフォートプログラムである。ソフト機能実行部742は、プログラムインスタンス741を実行するゲストOSである。両VM703,704は、計算リソース監視部721から計算リソースの取得要求を受けると、動作中のプログラムインスタンス731,741についてのCPU使用率を返す。   The best effort program VM 704 is a VM that executes a best effort program by an assigned processor. The best effort program does not require a strict guarantee of operation and guarantees that it will not be executed until the computing resource is free, depending on the load situation of the computing resource in the node N such as the CPU usage rate. Level program P. The best effort program VM 704 includes a program instance 741 and a software function execution unit 742. The program instance 741 is a best effort program that operates on the best effort program VM 704. The software function execution unit 742 is a guest OS that executes the program instance 741. Upon receiving a calculation resource acquisition request from the calculation resource monitoring unit 721, both VMs 703 and 704 return CPU usage rates for the program instances 731 and 741 that are operating.

このように、ノードN内で保証要求毎にVMを分けることで、ノードN内の計算リソースが明確に分割され、プログラム動作の保証要求を満たすことができる。なお、本実施例では、動作保証プログラム用VM703とベストエフォートプログラム用VM704とをそれぞれ1つ構築した例について示した。動作保証プログラム用VM703は、複数構築されてもよい。この場合、各動作保証プログラム用VM703で動作するプログラムインスタンス731は、重複しないように配備される。同様に、ベストエフォートプログラム用VM704も複数構築されてもよい。この場合、各ベストエフォートプログラム用VM704で動作するプログラムインスタンス741は、重複しないように配備される。   As described above, by dividing the VM for each guarantee request in the node N, the calculation resources in the node N can be clearly divided and the program operation guarantee request can be satisfied. In the present embodiment, an example is shown in which one operation guarantee program VM 703 and one best effort program VM 704 are constructed. A plurality of operation guarantee program VMs 703 may be constructed. In this case, the program instances 731 that operate in the respective operation guarantee program VMs 703 are arranged so as not to overlap. Similarly, a plurality of best effort program VMs 704 may be constructed. In this case, the program instances 741 that operate in each best effort program VM 704 are arranged so as not to overlap.

経路テーブル705は、サービスコントローラ103からNW−IF701を経由して展開された経路設定情報RTIを格納するテーブルである。   The route table 705 is a table that stores route setting information RTI developed from the service controller 103 via the NW-IF 701.

入出力処理部706は、経路テーブル705を参照して、あるポート707から入力されたパケットの出力先ポート707を決定し、決定した出力先ポート707にパケットを渡す。また、入出力処理部706は、あるポート707から入力されたパケットを解析して、解析結果に応じて動作保証プログラム用VM703やベストエフォートプログラム用VM704に転送する。ポート707は、パケットを送受信する。   The input / output processing unit 706 refers to the route table 705, determines the output destination port 707 of the packet input from a certain port 707, and passes the packet to the determined output destination port 707. The input / output processing unit 706 analyzes a packet input from a certain port 707 and transfers the packet to the operation guarantee program VM 703 or the best effort program VM 704 according to the analysis result. The port 707 transmits and receives packets.

計算リソーステーブルT4は、具体的には、たとえば、メモリやハードディスクなどの記憶デバイス(不図示)により実現される。VM管理部702、動作保証プログラム用VM703、およびベストエフォートプログラム用VM704は、具体的には、たとえば、記憶デバイスに記憶されたプログラムをプロセッサに実行させることにより実現される。NW−IF701およびポート707は、具体的には、たとえば、インタフェース回路(不図示)により実現される。経路テーブル705および入出力処理部706は、具体的には、たとえば、FPGA(Field−Programmable Gate Array)により実現される。   The calculation resource table T4 is specifically realized by a storage device (not shown) such as a memory or a hard disk. Specifically, the VM management unit 702, the operation guarantee program VM 703, and the best effort program VM 704 are realized, for example, by causing a processor to execute a program stored in a storage device. Specifically, the NW-IF 701 and the port 707 are realized by, for example, an interface circuit (not shown). Specifically, the path table 705 and the input / output processing unit 706 are realized by, for example, an FPGA (Field-Programmable Gate Array).

<ノードが有するテーブルの記憶内容例>
図7は、計算リソーステーブルT4の記憶内容例を示す説明図である。計算リソーステーブルT4は、VM種別401と、実行プログラム402と、CPU使用率403と、を有する。計算リソーステーブルT4は、サービスコントローラ103からの情報およびVMでのCPUの使用状況により更新されるテーブルである。図7の例は、エッジノードEN1が有する計算リソーステーブルT4の例を示す。
<Example of stored contents of table in node>
FIG. 7 is an explanatory diagram of an example of the contents stored in the calculation resource table T4. The calculation resource table T4 includes a VM type 401, an execution program 402, and a CPU usage rate 403. The calculation resource table T4 is a table that is updated according to information from the service controller 103 and the usage status of the CPU in the VM. The example of FIG. 7 shows an example of the calculation resource table T4 that the edge node EN1 has.

VM種別401については、サービスコントローラ103からVM種別が指定された場合に、ノードNが、当該VM種別をVM種別401に格納する。   As for the VM type 401, when the VM type is designated from the service controller 103, the node N stores the VM type in the VM type 401.

実行プログラム402は、サービスコントローラ103からロードされ、VM種別401のVM上で実行されているプログラムPである。実行プログラム402については、サービスコントローラ103からプログラムPがロードされた場合に、ノードNが、当該プログラム名を実行プログラム402に格納する。   The execution program 402 is a program P that is loaded from the service controller 103 and executed on the VM of the VM type 401. For the execution program 402, when the program P is loaded from the service controller 103, the node N stores the program name in the execution program 402.

CPU使用率403は、VM種別401でのVM上での実行プログラム402のCPU使用率である。VMが占有するプロセッサが複数ある場合には、全プロセッサでのCPU使用率となる。CPU使用率403については、ノードNが、VM種別401のVMがCPU使用率の取得コマンドを所定のタイミングで実行した場合に取得されるCPU使用率を、CPU使用率403に格納する。すなわち、CPU使用率403には、最新のCPU使用率が格納される。取得コマンドは、たとえば、一定時間間隔で発行される。   The CPU usage rate 403 is the CPU usage rate of the execution program 402 on the VM in the VM type 401. When there are a plurality of processors occupied by the VM, the CPU usage rate of all the processors is obtained. As for the CPU usage rate 403, the node N stores the CPU usage rate acquired when the VM of the VM type 401 executes the CPU usage rate acquisition command at a predetermined timing in the CPU usage rate 403. That is, the latest CPU usage rate is stored in the CPU usage rate 403. The acquisition command is issued at regular time intervals, for example.

<通信システム100のシーケンス>
図8は、通信システム100のシーケンス例を示す説明図である。保守者/他管理システム102は、サービスコントローラ103に経路設定要求r1を与える(ステップS801)。サービスコントローラ103は、経路設定要求r1を受けると、経路を決定して経路設定情報RTIを生成する(ステップS802)。図1では、始点エッジノードENとしてEN1、終点エッジノードENとしてEN2が経路設定要求r1で指定され、選択経路RT(エッジノードEN1、中継ノードRN1、RN2、RN3、エッジノードEN2)が決定される。
<Sequence of Communication System 100>
FIG. 8 is an explanatory diagram showing a sequence example of the communication system 100. The maintenance person / other management system 102 gives a route setting request r1 to the service controller 103 (step S801). Upon receiving the route setting request r1, the service controller 103 determines a route and generates route setting information RTI (step S802). In FIG. 1, EN1 as the start edge node EN and EN2 as the end edge node EN are designated by the route setting request r1, and the selected route RT (edge node EN1, relay nodes RN1, RN2, RN3, edge node EN2) is determined. .

そして、サービスコントローラ103は、決定した選択経路RTに関する経路設定情報RTIを、選択経路RT上のノードNに送信する(ステップS803)。経路設定情報RTIを受信したノードNは、受信した経路設定情報RTIを経路テーブル705に格納して、経路設定情報RTIに従った経路を設定する(ステップS804)。   Then, the service controller 103 transmits the route setting information RTI related to the determined selected route RT to the node N on the selected route RT (step S803). The node N that has received the route setting information RTI stores the received route setting information RTI in the route table 705, and sets a route according to the route setting information RTI (step S804).

このあと、保守者/他管理システム102は、サービスコントローラ103にサービス提供要求r2を与える(ステップS805)。サービス提供要求r2には、要求プログラムの識別情報であるプログラム名と保証要求とが含まれる。保証要求は、たとえば、「保証」、「ベストエフォート」、「保証orベストエフォート」の3種類がある。   Thereafter, the maintenance person / other management system 102 gives a service provision request r2 to the service controller 103 (step S805). The service provision request r2 includes a program name that is identification information of the requested program and a guarantee request. There are three types of guarantee requests, for example, “guarantee”, “best effort”, and “guarantee or best effort”.

「保証」は、要求プログラムを動作保証プログラム用VM703で実行させたい場合に指定される保証要求である。具体的には、たとえば、「保証」は、ロード対象プログラムの動作保証を遵守するという保証内容を示す保証要求である。   “Warranty” is a guarantee request designated when the requested program is to be executed by the operation guarantee program VM 703. Specifically, for example, “guarantee” is a guarantee request indicating the guarantee content to comply with the operation guarantee of the load target program.

「ベストエフォート」は、要求プログラムをベストエフォートプログラム用VM704で実行させたい場合に指定される保証要求である。具体的には、たとえば、「ベストエフォート」は、ロード対象プログラムの動作保証を遵守しなくてもよいという保証内容を示す保証要求である。   “Best effort” is a guarantee request designated when the requested program is to be executed by the VM 704 for the best effort program. Specifically, for example, “best effort” is a guarantee request indicating a guarantee content that the operation guarantee of the load target program does not have to be observed.

「保証orベストエフォート」は、要求プログラムを可能な限り動作保証プログラム用VM703で実行させたい場合に指定される保証要求である。具体的には、たとえば、「保証orベストエフォート」は、「保証」の保証内容を充足しなければ「ベストエフォート」の保証内容が適用されるという保証内容を示す保証要求である。動作保証プログラム用VM703で動作保証されない場合には、要求プログラムは、ベストエフォートプログラム用VM704に割り当てられる。   “Guaranteed or Best Effort” is a guarantee request designated when the requested program is to be executed by the operation guarantee program VM 703 as much as possible. Specifically, for example, “guarantee or best effort” is a guarantee request indicating the guarantee content that the guarantee content of “best effort” is applied unless the guarantee content of “guarantee” is satisfied. If the operation guarantee program VM 703 does not guarantee the operation, the request program is assigned to the best effort program VM 704.

サービスコントローラ103は、サービス提供要求r2を受けると、ロード対象ノード/VM選択処理を実行する(ステップS806)。ロード対象ノード/VM選択処理(ステップS806)は、要求プログラムのロード先、すなわち、ノードNおよび当該ノードN上のVMを選択する処理である。ロード対象ノード/VM選択処理(ステップS806)の詳細については、図9で説明する。   Upon receiving the service provision request r2, the service controller 103 executes a load target node / VM selection process (step S806). The load target node / VM selection process (step S806) is a process of selecting the load destination of the requested program, that is, the node N and the VM on the node N. Details of the load target node / VM selection process (step S806) will be described with reference to FIG.

サービスコントローラ103は、ロード対象ノード/VM選択処理(ステップS806)によりロード先を選択すると、要求プログラムであるプログラムPおよびプログラムPを実行させるVMのVM種別をロード先のノードNに送信する(ステップS807)。ノードNは、送信されたプログラムPをプログラム格納部722に格納する(ステップS808)。そして、ノードNは、プログラムPを送信されたVM種別が示すロード先として選択されたVMにプログラムインスタンスとして割り当てて、当該VM上で要求プログラムを実行する(ステップS809)。   When the service controller 103 selects the load destination in the load target node / VM selection process (step S806), the service controller 103 transmits the request program P and the VM type of the VM that executes the program P to the load destination node N (step S806). S807). The node N stores the transmitted program P in the program storage unit 722 (step S808). Then, the node N allocates the program P as a program instance to the VM selected as the load destination indicated by the transmitted VM type, and executes the requested program on the VM (step S809).

<ロード対象ノード/VM選択処理(ステップS806)>
図9は、図8に示したロード対象ノード/VM選択処理(ステップS806)の詳細な処理手順例を示すフローチャートである。サービスコントローラ103のソフトウェア管理部504は、ステップS802で決定した選択経路RT上のノードNのノード名を候補ノードテーブルT5の選択経路内ノード601に設定する(ステップS901)。図1の例では、選択経路内ノード601には、選択経路RTを構成するノードNの識別情報として、EN1,EN2,RN1,RN2,RN3が格納される。
<Load target node / VM selection process (step S806)>
FIG. 9 is a flowchart showing a detailed processing procedure example of the load target node / VM selection process (step S806) shown in FIG. The software management unit 504 of the service controller 103 sets the node name of the node N on the selected route RT determined in step S802 to the selected route node 601 of the candidate node table T5 (step S901). In the example of FIG. 1, EN1, EN2, RN1, RN2, and RN3 are stored in the selected route node 601 as identification information of the node N that constitutes the selected route RT.

つぎに、サービスコントローラ103のソフトウェア管理部504は、図3に示したソフト機能テーブルT1を参照して、受信したサービス提供要求r2に含まれる要求プログラムのプログラム名を基にプログラム名201を検索し、該当するプログラム名201の適用ノード種別203を特定する(ステップS902)。たとえば、要求プログラムのプログラム名201が「帯域制御」である場合、その適用ノード種別203は、「エッジ」である。また、要求プログラムのプログラム名201が「トラフィックモニタ」である場合、その適用ノード種別203は、「エッジ/中継」である。   Next, the software management unit 504 of the service controller 103 searches the program name 201 based on the program name of the request program included in the received service provision request r2 with reference to the software function table T1 shown in FIG. The application node type 203 of the corresponding program name 201 is specified (step S902). For example, when the program name 201 of the request program is “bandwidth control”, the applicable node type 203 is “edge”. When the program name 201 of the request program is “traffic monitor”, the applicable node type 203 is “edge / relay”.

つぎに、サービスコントローラ103のソフトウェア管理部504は、ステップS902で特定された適用ノード種別203に基づいて選択経路内ノード601から候補ノードを選定する(ステップS903)。たとえば、適用ノード種別203が「エッジ」である場合、サービスコントローラ103のソフトウェア管理部504は、エッジノードを候補ノードに設定する。つまり、ソフトウェア管理部504は、候補ノードテーブルT5の選択経路内ノード601が「エッジノード」である候補フラグ602を「1」に変更する。   Next, the software management unit 504 of the service controller 103 selects a candidate node from the nodes 601 in the selected route based on the applicable node type 203 specified in step S902 (step S903). For example, when the applicable node type 203 is “edge”, the software management unit 504 of the service controller 103 sets the edge node as a candidate node. That is, the software management unit 504 changes the candidate flag 602 in which the node 601 in the selected route in the candidate node table T5 is an “edge node” to “1”.

また、適用ノード種別203が「エッジ/中継」である場合、サービスコントローラ103のソフトウェア管理部504は、エッジノードおよび中継ノードを候補ノードに設定する。つまり、ソフトウェア管理部504は、候補ノードテーブルT5の選択経路内ノード601が「エッジノード」および「中継ノード」である候補フラグ602を「1」に変更する。また、適用ノード種別203が「中継」である場合、サービスコントローラ103のソフトウェア管理部504は、中継ノードを候補ノードに設定する。つまり、ソフトウェア管理部504は、候補ノードテーブルT5の選択経路内ノード601が「中継ノード」である候補フラグ602を「1」に変更する。サービスコントローラ103は、候補ノードテーブルT5の候補フラグ602を「1」にすることにより、候補ノードを設定する。図5の例では、適用ノード種別203が「エッジ」であるため、選択経路内ノード601:ノードEN1,EN2について、候補フラグ602が「1」に設定される。   When the applicable node type 203 is “edge / relay”, the software management unit 504 of the service controller 103 sets the edge node and the relay node as candidate nodes. That is, the software management unit 504 changes the candidate flag 602 in which the node 601 in the selected route in the candidate node table T5 is “edge node” and “relay node” to “1”. When the application node type 203 is “relay”, the software management unit 504 of the service controller 103 sets the relay node as a candidate node. That is, the software management unit 504 changes the candidate flag 602 in which the node 601 in the selected route in the candidate node table T5 is “relay node” to “1”. The service controller 103 sets a candidate node by setting the candidate flag 602 of the candidate node table T5 to “1”. In the example of FIG. 5, since the applicable node type 203 is “edge”, the candidate flag 602 is set to “1” for the nodes 601 in the selected route: the nodes EN1 and EN2.

このあと、サービスコントローラ103のソフトウェア管理部504は、保証要求について判断する(ステップS904)。ステップS904〜S908は、候補ノードごとに実行される。ステップS904において、保証要求が「ベストエフォート」である場合(ステップS904:ベストエフォート)、サービスコントローラ103のソフトウェア管理部504は、候補ノードのVM種別のうち保証要求に応じたVM種別であるベストエフォートプログラム用VMのCPU使用率の合算値を取得して、候補ノードの選択経路内ノード601に対応する候補ノードテーブルT5のCPU使用率603に格納し(ステップS905)、ステップS907に移行する。   Thereafter, the software management unit 504 of the service controller 103 determines a guarantee request (step S904). Steps S904 to S908 are executed for each candidate node. In step S904, when the guarantee request is “best effort” (step S904: best effort), the software management unit 504 of the service controller 103 selects the best effort which is the VM type corresponding to the guarantee request among the VM types of the candidate nodes. The CPU CPU usage rate of the program VM is acquired and stored in the CPU usage rate 603 of the candidate node table T5 corresponding to the node 601 in the selection path of the candidate node (step S905), and the process proceeds to step S907.

具体的には、たとえば、サービスコントローラ103のソフトウェア管理部504は、受信した要求プログラムのプログラム名を基に図4の計算リソース管理テーブルT2を参照し、候補ノードのエントリをノード名301から特定する。保証要求が「ベストエフォート」であるため、VM種別302:「ベストエフォートプログラム用VM」に対応するロード済みプログラムおよびCPU使用率を、候補ノードのエントリ内のロード済みプログラム303およびCPU使用率304から特定する。サービスコントローラ103のソフトウェア管理部504は、特定したCPU使用率304の合算値を算出し、算出した合算値をCPU使用率603に格納する。   Specifically, for example, the software management unit 504 of the service controller 103 refers to the calculation resource management table T2 in FIG. 4 based on the program name of the received request program, and identifies the entry of the candidate node from the node name 301. . Since the guarantee request is “best effort”, the loaded program and CPU usage rate corresponding to the VM type 302: “VM for best effort program” are obtained from the loaded program 303 and CPU usage rate 304 in the entry of the candidate node. Identify. The software management unit 504 of the service controller 103 calculates the total value of the identified CPU usage rate 304 and stores the calculated total value in the CPU usage rate 603.

たとえば、図4において、候補ノードのノード名301がEN1で、かつ、保証要求が「ベストエフォート」である場合、ロード済みプログラム303およびCPU使用率30は、「遅延時間測定」の「7%」と、「導通特性試験」の「5%」と、「トラフィックモニタ」の「8%」である。したがって、サービスコントローラ103のソフトウェア管理部504は、CPU使用率の合算値として「20%」を算出する。そして、サービスコントローラ103のソフトウェア管理部504は、合算値である「20%」を、候補ノードテーブルT5において、候補ノード「EN1」のCPU使用率603に格納する。   For example, in FIG. 4, when the node name 301 of the candidate node is EN1 and the guarantee request is “best effort”, the loaded program 303 and the CPU usage rate 30 are “7%” of “delay time measurement”. “5%” in the “continuity characteristics test” and “8%” in the “traffic monitor”. Therefore, the software management unit 504 of the service controller 103 calculates “20%” as the total value of the CPU usage rate. Then, the software management unit 504 of the service controller 103 stores “20%”, which is the total value, in the CPU usage rate 603 of the candidate node “EN1” in the candidate node table T5.

また、ステップS904において、保証要求が「保証」または「保証orベストエフォート」である場合(ステップS904:「保証」または「保証orベストエフォート」)、サービスコントローラ103のソフトウェア管理部504は、候補ノードのVM種別のうち保証要求に応じたVM種別である動作保証プログラム用VMのCPU使用率の合算値を取得して、候補ノードの選択経路内ノード601に対応する候補ノードテーブルT5のCPU使用率603に格納し(ステップS906)、ステップS907に移行する。   In step S904, when the guarantee request is “guarantee” or “guarantee or best effort” (step S904: “guarantee” or “guarantee or best effort”), the software management unit 504 of the service controller 103 selects the candidate node. The CPU usage rate of the operation guarantee program VM that is the VM type corresponding to the guarantee request among the VM types is acquired, and the CPU usage rate of the candidate node table T5 corresponding to the node 601 in the selection path of the candidate node is acquired. In step S906, the process proceeds to step S907.

具体的には、たとえば、サービスコントローラ103のソフトウェア管理部504は、受信した要求プログラムのプログラム名を基に図4の計算リソース管理テーブルT2を参照し、候補ノードのエントリをノード名301から特定する。保証要求が「保証」または「保証orベストエフォート」であるため、VM種別302:「動作保証プログラム用VM」に対応するロード済みプログラムおよびCPU使用率を、候補ノードのエントリ内のロード済みプログラム303およびCPU使用率304から特定する。サービスコントローラ103のソフトウェア管理部504は、特定したCPU使用率304の合算値を算出し、算出した合算値をCPU使用率603に格納する。   Specifically, for example, the software management unit 504 of the service controller 103 refers to the calculation resource management table T2 in FIG. 4 based on the program name of the received request program, and identifies the entry of the candidate node from the node name 301. . Since the guarantee request is “guaranteed” or “guaranteed or best effort”, the loaded program 303 corresponding to the VM type 302: “VM for operation guarantee program” and the CPU usage rate are set to the loaded program 303 in the candidate node entry. And the CPU usage rate 304. The software management unit 504 of the service controller 103 calculates the total value of the identified CPU usage rate 304 and stores the calculated total value in the CPU usage rate 603.

たとえば、図4において、候補ノードのノード名301がEN1で、かつ、保証要求が「保証」または「保証orベストエフォート」である場合、ロード済みプログラム303およびCPU使用率304は、「帯域制御」の「18%」と、「ファイアウォール」の「17%」と、「接続性監視」の「5%」である。したがって、サービスコントローラ103のソフトウェア管理部504は、CPU使用率304の合算値として「40%」を算出する。そして、サービスコントローラ103のソフトウェア管理部504は、合算値である「40%」を、候補ノードテーブルT5において、候補ノード「EN1」のCPU使用率603に格納する。   For example, in FIG. 4, when the node name 301 of the candidate node is EN1 and the guarantee request is “guaranteed” or “guaranteed or best effort”, the loaded program 303 and the CPU usage rate 304 are “bandwidth control”. “18%”, “firewall” “17%”, and “connectivity monitoring” “5%”. Therefore, the software management unit 504 of the service controller 103 calculates “40%” as the total value of the CPU usage rate 304. Then, the software management unit 504 of the service controller 103 stores “40%”, which is the total value, in the CPU usage rate 603 of the candidate node “EN1” in the candidate node table T5.

つまり、CPU使用率603に格納される値は、受信する保証要求に応じたVM種別(保証要求が「保証」または「保証orベストエフォート」であれば、「動作保証プログラム用VM」、保証要求が「ベストエフォート」であれば、「ベストエフォートプログラム用VM」)のCPU使用率である。   That is, the value stored in the CPU usage rate 603 is the VM type corresponding to the received guarantee request (if the guarantee request is “guaranteed” or “guaranteed or best effort”, “operation guarantee program VM”, guarantee request Is “best effort”, “VM for best effort program”)).

ステップS907において、サービスコントローラ103のソフトウェア管理部504は、ソフト機能テーブルT1を参照して、要求プログラムの負荷種別および想定CPU使用率を負荷種別202および想定CPU使用率204を取得する(ステップS907)。具体的には、たとえば、サービスコントローラ103のソフトウェア管理部504は、受信したサービス提供要求r2に含まれる要求プログラムのプログラム名を基にプログラム名201を検索し、該当するプログラム名201の要求プログラムの負荷種別および想定CPU使用率を該当するプログラム名201のエントリ内の負荷種別202および想定CPU使用率204から特定する。たとえば、要求プログラムのプログラム名201が「帯域制御」である場合、負荷種別202は「一定負荷」であり、想定CPU使用率204は「20%」である。   In step S907, the software management unit 504 of the service controller 103 refers to the software function table T1 and acquires the load type and the assumed CPU usage rate of the request program as the load type 202 and the assumed CPU usage rate 204 (step S907). . Specifically, for example, the software management unit 504 of the service controller 103 searches the program name 201 based on the program name of the request program included in the received service provision request r2, and searches for the request program of the corresponding program name 201. The load type and the assumed CPU usage rate are specified from the load type 202 and the assumed CPU usage rate 204 in the corresponding program name 201 entry. For example, when the program name 201 of the request program is “bandwidth control”, the load type 202 is “constant load”, and the assumed CPU usage rate 204 is “20%”.

なお、想定CPU使用率204はプロセッサ1個あたりのCPU使用率の予測値であるため、保証要求に応じた候補ノードのVMに割り当てられているプロセッサの個数が1個の場合は、取得した想定CPU使用率204がそのまま用いられる。   Since the assumed CPU usage rate 204 is a predicted value of the CPU usage rate per processor, when the number of processors assigned to the VM of the candidate node corresponding to the guarantee request is 1, the obtained assumption is obtained. The CPU usage rate 204 is used as it is.

一方、保証要求に応じた候補ノードのVMに割り当てられているプロセッサの個数が複数の場合は、サービスコントローラ103のソフトウェア管理部504は、取得した想定CPU使用率204を、保証要求に応じた候補ノードのVMに割り当てられたプロセッサの個数で除算する。たとえば、保証要求に応じた候補ノードのVMに割り当てられたプロセッサの個数が4個で、ソフト機能テーブルT1から取得した想定CPU使用率204が「20%」である場合、除算後の想定CPU使用率は、「5%」となる。後述の説明では、保証要求に応じた候補ノードのVMに割り当てられているプロセッサの個数が1個の場合を例に挙げて説明するが、除算後の想定CPU使用率も想定CPU使用率204として扱われる。   On the other hand, when the number of processors assigned to the VM of the candidate node corresponding to the guarantee request is plural, the software management unit 504 of the service controller 103 uses the acquired assumed CPU usage rate 204 as a candidate corresponding to the guarantee request. Divide by the number of processors assigned to the VM of the node. For example, when the number of processors allocated to the VM of the candidate node corresponding to the guarantee request is four and the assumed CPU usage rate 204 acquired from the software function table T1 is “20%”, the assumed CPU usage after division is The rate is “5%”. In the following description, the case where the number of processors allocated to the VM of the candidate node corresponding to the guarantee request is one will be described as an example, but the assumed CPU usage rate after division is also assumed as the assumed CPU usage rate 204. Be treated.

そして、サービスコントローラ103のソフトウェア管理部504は、取得した想定CPU使用率204を候補ノードの候補ノードテーブルT5の必要CPU使用率604に格納する。具体的には、たとえば、要求プログラムが「トラフィックモニタ」である場合、想定CPU使用率204は「10%」であるため、候補ノードテーブルT5において、候補ノード(たとえば、EN1)の必要CPU使用率604に「10%」が格納される。   Then, the software management unit 504 of the service controller 103 stores the acquired assumed CPU usage rate 204 in the necessary CPU usage rate 604 of the candidate node candidate node table T5. Specifically, for example, when the request program is “traffic monitor”, the assumed CPU usage rate 204 is “10%”, so that the required CPU usage rate of the candidate node (for example, EN1) in the candidate node table T5 “10%” is stored in 604.

また、たとえば、要求プログラムについての負荷種別202が「変動負荷」である場合、サービスコントローラ103のソフトウェア管理部504は、想定CPU使用率204を取得して、想定CPU使用率204の最大値を候補ノードテーブルT5の必要CPU使用率604に格納する。具体的には、たとえば、要求プログラムが「ロードバランサ」である場合、想定CPU使用率204は「0〜30%」であるため、候補ノードテーブルT5において、候補ノード(たとえば、EN1)の必要CPU使用率604に、想定CPU使用率204:「0〜30%」の最大値「30%」が格納される。   Further, for example, when the load type 202 for the request program is “variable load”, the software management unit 504 of the service controller 103 acquires the assumed CPU usage rate 204 and sets the maximum value of the assumed CPU usage rate 204 as a candidate. Stored in the necessary CPU usage rate 604 of the node table T5. Specifically, for example, when the request program is “load balancer”, the assumed CPU usage rate 204 is “0 to 30%”, and therefore the CPU required for the candidate node (for example, EN1) in the candidate node table T5 In the usage rate 604, the maximum value “30%” of the assumed CPU usage rate 204: “0 to 30%” is stored.

このあと、サービスコントローラ103のソフトウェア管理部504は、候補ノードごとに、ロード後想定CPU使用率605を算出する(ステップS908)。具体的には、たとえば、サービスコントローラ103のソフトウェア管理部504は、候補ノードテーブルT5の候補フラグが「1」であるエントリごとに、CPU使用率603と必要CPU使用率604とを合算して、ロード後想定CPU使用率を算出し、ロード後想定CPU使用率605に格納する。図5の候補ノードテーブルT5の選択経路内ノード601:「EN1」のエントリでは、CPU使用率603が「40%」、必要CPU使用率604が「10%」であるため、ロード後想定CPU使用率605として「50%」が格納される。   Thereafter, the software management unit 504 of the service controller 103 calculates a post-load assumed CPU usage rate 605 for each candidate node (step S908). Specifically, for example, the software management unit 504 of the service controller 103 adds the CPU usage rate 603 and the necessary CPU usage rate 604 for each entry whose candidate flag is “1” in the candidate node table T5. The post-load assumed CPU usage rate is calculated and stored in the post-load assumed CPU usage rate 605. In the entry of node 601: “EN1” in the selection path of the candidate node table T5 in FIG. 5, the CPU usage rate 603 is “40%” and the necessary CPU usage rate 604 is “10%”. “50%” is stored as the rate 605.

このあと、サービスコントローラ103のソフトウェア管理部504は、候補ノード群の中に、ロード後想定CPU使用率605が100%以下の候補ノードがあるか否かを判断する(ステップS909)。すなわち、サービスコントローラ103のソフトウェア管理部504は、ロード後想定計算リソースが要求プログラムの動作保証を遵守できる計算リソースであるか否かを候補ノードごとに判断する。ロード後想定CPU使用率605が100%以下の候補ノードがある場合(ステップS909:Yes)、サービスコントローラ103のソフトウェア管理部504は、ロード後想定CPU使用率605が100%以下の候補ノードにおけるCPU使用率の取得元VM(ステップS905でCPU使用率を取得したベストエフォートプログラム用VMまたはステップS906でCPU使用率を取得した動作保証プログラム用VM)をロード先に決定する(ステップS910)。   Thereafter, the software management unit 504 of the service controller 103 determines whether there is a candidate node having a post-load assumed CPU usage rate 605 of 100% or less in the candidate node group (step S909). That is, the software management unit 504 of the service controller 103 determines, for each candidate node, whether or not the post-load assumed calculation resource is a calculation resource that can comply with the operation guarantee of the request program. When there is a candidate node whose estimated CPU usage rate 605 after loading is 100% or less (step S909: Yes), the software management unit 504 of the service controller 103 causes the CPU in the candidate node whose estimated CPU usage rate 605 after loading is 100% or less. The usage rate acquisition source VM (the best effort program VM for which the CPU usage rate has been acquired in step S905 or the operation guarantee program VM for which the CPU usage rate has been acquired in step S906) is determined as the load destination (step S910).

ロード後想定CPU使用率605が100%以下の候補ノードが複数ある場合は、ロード後想定CPU使用率605が最低となる候補ノードにおけるCPU使用率の取得元VMをロード先に決定してもよい。また、ロード後想定CPU使用率605が100%以下の候補ノードが複数ある場合は、ロード後想定CPU使用率605が所定CPU使用率以下となるいずれかの候補ノードにおけるCPU使用率の取得元VMをロード先に決定してもよい。このあと、サービスコントローラ103のソフトウェア管理部504は、要求プログラムと保証要求に応じたVM種別を、ステップS910で選択した候補ノードに送信することになる(ステップS807)。   When there are a plurality of candidate nodes whose post-load assumed CPU usage rate 605 is 100% or less, the CPU usage rate acquisition source VM of the candidate node having the lowest post-load expected CPU usage rate 605 may be determined as the load destination. . In addition, when there are a plurality of candidate nodes whose post-load assumed CPU usage rate 605 is 100% or less, the CPU usage rate acquisition source VM in any candidate node whose post-load assumed CPU usage rate 605 is equal to or lower than the predetermined CPU usage rate. May be determined as the load destination. Thereafter, the software management unit 504 of the service controller 103 transmits the requested program and the VM type corresponding to the guarantee request to the candidate node selected in step S910 (step S807).

一方、ロード後想定CPU使用率605が100%以下の候補ノードがない場合(ステップS909:No)、サービスコントローラ103のソフトウェア管理部504は、保証要求を判断する(ステップS911)。保証要求が「保証orベストエフォート」である場合(ステップS911:保証orベストエフォート)、サービスコントローラ103のソフトウェア管理部504は、保証要求を「ベストエフォート」に更新し(ステップS912)、ステップS905に戻る。すなわち、ステップ909において、ロード後想定CPU使用率605が100%以下の候補ノードがない(ステップS909:No)ため、ロード先の候補ノードで動作保証できなくなる。したがって、保証要求を「ベストエフォート」に更新して、ステップS905に戻すことで、その後、ステップS911で保証要求が判断されると、後述するステップS914が実行される。すなわち、要求プログラムの動作を「保証」で動作させたいが動作保証できないため、「ベストエフォート」での動作に変更する。   On the other hand, when there is no candidate node whose post-load assumed CPU usage rate 605 is 100% or less (step S909: No), the software management unit 504 of the service controller 103 determines a guarantee request (step S911). When the guarantee request is “guaranteed or best effort” (step S911: guarantee or best effort), the software management unit 504 of the service controller 103 updates the guarantee request to “best effort” (step S912), and proceeds to step S905. Return. In other words, in step 909, there is no candidate node with an assumed post-loading CPU usage rate 605 of 100% or less (step S909: No), so operation cannot be guaranteed at the load candidate node. Accordingly, by updating the guarantee request to “best effort” and returning to step S905, when the guarantee request is determined in step S911, step S914 described later is executed. That is, the operation of the requested program is to be performed with “guaranteed” but cannot be assured.

また、保証要求が「保証」である場合(ステップS911:保証)、ロード後想定CPU使用率605が100%以下の候補ノードがない(ステップS909:No)ため、ロード先の候補ノードで動作保証できなくなる。この場合、サービスコントローラ103のソフトウェア管理部504は、要求プログラムのロード先の決定不可通知を保守者/他管理システム102に出力する(ステップS913)。すなわち、要求プログラム動作を「保証」で動作させたいが動作保証できず、「ベストエフォート」にも変更できないため、保守者/他管理システム102に対して選択経路RTの再設定を促すことになる。   Further, when the guarantee request is “guaranteed” (step S911: guarantee), there is no candidate node whose post-load assumed CPU usage rate 605 is 100% or less (step S909: No), so operation guarantee is performed at the load destination candidate node. become unable. In this case, the software management unit 504 of the service controller 103 outputs a notification that the request program load destination cannot be determined to the maintainer / other management system 102 (step S913). That is, although the requested program operation is to be performed with “guaranteed”, the operation cannot be guaranteed and cannot be changed to “best effort”, so the maintenance person / other management system 102 is prompted to reset the selected route RT. .

また、保証要求が「ベストエフォート」である場合(ステップS911:ベストエフォート)、サービスコントローラ103のソフトウェア管理部504は、ベストエフォートプログラム用VMの総CPU使用率に対する変動負荷プログラムのCPU使用率の割合が最も高い候補ノードにおけるCPU使用率の取得元VMをロード先に決定する(ステップS914)。また、サービスコントローラ103のソフトウェア管理部504は、ベストエフォートプログラム用VMの総CPU使用率に対する変動負荷プログラムのCPU使用率の割合が所定割合以上となる候補ノードにおけるCPU使用率の取得元VMをロード先に決定してもよい。   When the guarantee request is “best effort” (step S911: best effort), the software management unit 504 of the service controller 103 determines the ratio of the CPU usage rate of the variable load program to the total CPU usage rate of the VM for the best effort program. The CPU usage rate acquisition source VM in the candidate node with the highest is determined as the load destination (step S914). Further, the software management unit 504 of the service controller 103 loads the CPU usage rate acquisition source VM in the candidate node in which the ratio of the CPU usage rate of the variable load program to the total CPU usage rate of the best effort program VM is equal to or higher than a predetermined rate. It may be determined first.

ベストエフォートプログラム用VMの総CPU使用率とは、計算リソース管理テーブルT2において、候補ノードのノード名301に対応するベストエフォートプログラム用VM302のロード済みプログラム303のCPU使用率304の合算値である。たとえば、図4において、ノード名301:「EN1」のエントリでは、ベストエフォートプログラム用VM302のロード済みプログラム303は、「遅延時間測定」、「導通特性試験」および「トラフィックモニタ」であり、また、それぞれのCPU使用率304は「7%」、「5%」、および「8%」である。したがって、候補ノードEN1についてのベストエフォートプログラム用VMの総CPU使用率は「20%」である。   The total CPU usage rate of the best effort program VM is a total value of the CPU usage rates 304 of the loaded program 303 of the best effort program VM 302 corresponding to the node name 301 of the candidate node in the calculation resource management table T2. For example, in FIG. 4, in the entry of the node name 301: “EN1”, the loaded program 303 of the VM 302 for best effort program is “delay time measurement”, “continuity characteristic test”, and “traffic monitor”. The respective CPU usage rates 304 are “7%”, “5%”, and “8%”. Therefore, the total CPU usage rate of the best effort program VM for the candidate node EN1 is “20%”.

また、ベストエフォートプログラム用VM302のロード済みプログラム303:「遅延時間測定」、「導通特性試験」および「トラフィックモニタ」のうち、変動負荷プログラムは、「遅延時間測定」および「導通特性試験」である。したがって、変動負荷プログラムのCPU使用率は、それぞれのCPU使用率「7%」および「5%」の合算値「12%」となる。   Of the loaded program 303 of the best effort program VM 302: “delay time measurement”, “continuity characteristic test”, and “traffic monitor”, the variable load program is “delay time measurement” and “continuity characteristic test”. . Therefore, the CPU usage rate of the variable load program is the total value “12%” of the CPU usage rates “7%” and “5%”.

そして、ベストエフォートプログラム用VMの総CPU使用率に対する変動負荷プログラムのCPU使用率の割合は、たとえば、変動負荷プログラムのCPU使用率をベストエフォートプログラム用VMの総CPU使用率で除算して求められる。上記の例の場合、12%/20%=3/5(=60%)となる。   The ratio of the CPU usage rate of the variable load program to the total CPU usage rate of the best effort program VM is obtained, for example, by dividing the CPU usage rate of the variable load program by the total CPU usage rate of the best effort program VM. . In the case of the above example, 12% / 20% = 3/5 (= 60%).

サービスコントローラ103のソフトウェア管理部504は、当該割合が最高となる候補ノードをロード先として選択することになる。すなわち、ステップS905で変動負荷プログラムのCPU使用率の平均値であるCPU使用率304を取得しているため、変動負荷プログラムの割合が高い方が、負荷が低下する確率が高くなり、ロード後のCPU使用率を抑制できるからである。このあと、サービスコントローラ103のソフトウェア管理部504は、要求プログラムと保証要求に応じたVM種別を、ステップS914で選択した候補ノードに送信することになる(ステップS807)。   The software management unit 504 of the service controller 103 selects the candidate node with the highest ratio as the load destination. That is, since the CPU usage rate 304 that is the average value of the CPU usage rate of the variable load program is acquired in step S905, the higher the rate of the variable load program, the higher the probability that the load will decrease. This is because the CPU usage rate can be suppressed. Thereafter, the software management unit 504 of the service controller 103 transmits the requested program and the VM type corresponding to the guarantee request to the candidate node selected in step S914 (step S807).

このように、本実施例によれば、動作保証を要求されたソフトウェアの計算リソースを確保することができるとともに、ネットワーク内の計算リソースを効率的に活用することができる。また、VM単位でソフトウェアをノードで実行させるため、VMごとに計算リソースを取得することができる。したがって、ソフトウェアの計算リソースを容易に特定することができる。さらに、これらの処理が自動化されることで、ネットワークの保守者の負担軽減を図ることができる。   As described above, according to the present embodiment, it is possible to secure the calculation resource of the software for which the operation guarantee is requested and to efficiently use the calculation resource in the network. In addition, since the software is executed on the nodes in units of VMs, calculation resources can be acquired for each VM. Therefore, it is possible to easily specify the calculation resource of the software. Furthermore, by automating these processes, the burden on the network maintainer can be reduced.

また、ロード対象ノード/VM選択処理(ステップS806)は、サービス提供要求r2をトリガにして実行されるが、要求プログラムが割り当てられたノードのVMの計算リソースが所定のしきい値(たとえば、CPU使用率が100%)以上になったことをサービスコントローラ103が検知した場合に、サービスコントローラ103がロード対象ノード/VM選択処理(ステップS806)を再実行してもよい。   Further, the load target node / VM selection process (step S806) is executed with the service provision request r2 as a trigger, but the VM calculation resource of the node to which the request program is allocated has a predetermined threshold value (for example, CPU When the service controller 103 detects that the usage rate is 100% or more, the service controller 103 may re-execute the load target node / VM selection process (step S806).

ここでいう所定のしきい値は、VM種別ごとに異なる値でもよい。たとえば、VMが動作保証プログラム用VMである場合、計算リソースが100%以上となったことをサービスコントローラ103が検知した場合に、サービスコントローラ103がロード対象ノード/VM選択処理(ステップS806)を再実行する。また、ベストエフォートプログラム用VMでは、CPU使用率が100%を超過することを許容しているが、100%を超過した状態が所定時間以上継続したことをサービスコントローラ103が検知した場合に、サービスコントローラ103がロード対象ノード/VM選択処理(ステップS806)を再実行する。   The predetermined threshold value here may be a value different for each VM type. For example, when the VM is an operation guarantee program VM and the service controller 103 detects that the calculation resource has reached 100% or more, the service controller 103 restarts the load target node / VM selection process (step S806). Run. In addition, the VM for the best effort program allows the CPU usage rate to exceed 100%, but if the service controller 103 detects that the state in which the CPU usage rate has exceeded 100% has continued for a predetermined time or longer, The controller 103 re-executes the load target node / VM selection process (step S806).

再実行の場合、ロード対象ノード/VM選択処理(ステップS806)では、ステップS904から実行が開始される。これにより、ロード先の決定後においても計算リソースの上昇を動的に抑制することができる。なお、要求プログラムが別のノードNに割り当てられた場合には、元のノードNのVMにおいて実行されていた要求プログラムのプログラムインスタンスは消去される。   In the case of re-execution, in the load target node / VM selection process (step S806), execution starts from step S904. Thereby, it is possible to dynamically suppress an increase in calculation resources even after the load destination is determined. When the request program is assigned to another node N, the program instance of the request program executed in the VM of the original node N is deleted.

なお、上述した実施例では、プログラムPをロードする構成としたが、プログラムPをあらかじめノードNに格納しておく構成でもよい。この場合、サービスコントローラ103は、プログラムPをロードする代わりに、プログラムPの識別情報(例えば、プログラム名)をロードし、プログラムPの識別情報を受けたノードNは、VM管理部によりプログラムPのプログラムインスタンスを指定されたVMに構築すればよい。このように、プログラムPの代わりにプログラムPの識別情報をロードすることにより、サービスコントローラ103からノードNへの通信量の低減化を図ることができる。   In the above-described embodiment, the program P is loaded. However, the program P may be stored in the node N in advance. In this case, instead of loading the program P, the service controller 103 loads the identification information (for example, the program name) of the program P, and the node N that has received the identification information of the program P receives the identification information of the program P by the VM management unit. What is necessary is just to build a program instance in the designated VM. In this way, by loading the identification information of the program P instead of the program P, it is possible to reduce the amount of communication from the service controller 103 to the node N.

上述した実施例では、サービスコントローラ103が保守/他管理システム102から受信する経路設定要求r1および経路設定要求r1に続いて受信するサービス提供要求r2に基づいて、ノードNにロードするプログラムPを選択する構成としたが、サービスコントローラ103が独立に受信した経路設定要求r1およびサービス提供要求r2に基づいて、ノードNにロードするプログラムPを選択する構成としてもよい。すなわち、サービスコントローラ103は、複数の経路設定要求r1を受信して、複数の選択経路RTをパケットトランスポートネットワーク101内に設定し、その後受信するサービス提供要求r2に基づいて、経路情報テーブルを参照して、複数の選択経路RTから要求プログラムをロードする選択経路RTを選択して、選択した選択経路RT上のノードNにロードするプログラムPを選択してもよい。   In the embodiment described above, the program P to be loaded to the node N is selected based on the route setting request r1 received from the maintenance / other management system 102 and the service provision request r2 received following the route setting request r1. However, the program P to be loaded into the node N may be selected based on the route setting request r1 and the service provision request r2 that are independently received by the service controller 103. That is, the service controller 103 receives a plurality of route setting requests r1, sets a plurality of selected routes RT in the packet transport network 101, and refers to the route information table based on the service provision request r2 received thereafter. Then, the selection route RT for loading the request program may be selected from the plurality of selection routes RT, and the program P to be loaded to the node N on the selected selection route RT may be selected.

この場合、サービス提供要求r2に、要求プログラムをロードする選択経路RTを特定する情報が含まれる構成であっても、サービスコントローラ103が、サービス提供要求r2とともに、要求プログラムをロードする選択経路RTを特定する情報を受信する構成であってもよい。   In this case, even if the service provision request r2 includes information for specifying the selection route RT for loading the request program, the service controller 103 sets the selection route RT for loading the request program together with the service provision request r2. The configuration may be such that information to be specified is received.

サービスコントローラ103が経路設定要求r1およびサービス提供要求r2を独立に受信する構成とすることで、経路設定とロードするプログラムPの選択を独立して実行し、例えば、経路設定要求r1を受信せずサービス提供要求r2を受信した場合に、既に設定した経路を変更せずに、複数の設定ずみの経路のうちの1つに対してプログラムPをロードすることができ、また、既にロードされたプログラムPを変更することもできるため、プログラムPのロード先の決定を柔軟に行うことができる。また、ネットワーク内の計算リソースの効率的な活用を図ることができる。   With the configuration in which the service controller 103 receives the route setting request r1 and the service provision request r2 independently, the route setting and selection of the program P to be loaded are executed independently, for example, the route setting request r1 is not received. When the service provision request r2 is received, the program P can be loaded into one of a plurality of preset routes without changing the already set route, and the already loaded program Since P can be changed, the load destination of the program P can be determined flexibly. In addition, it is possible to efficiently use computational resources in the network.

なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。   The present invention is not limited to the above-described embodiments, and includes various modifications and equivalent configurations within the scope of the appended claims. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and the present invention is not necessarily limited to those having all the configurations described. A part of the configuration of one embodiment may be replaced with the configuration of another embodiment. Moreover, you may add the structure of another Example to the structure of a certain Example. Moreover, you may add, delete, or replace another structure about a part of structure of each Example.

また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。   In addition, each of the above-described configurations, functions, processing units, processing means, etc. may be realized in hardware by designing a part or all of them, for example, with an integrated circuit, and the processor realizes each function. It may be realized by software by interpreting and executing the program to be executed.

各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。   Information such as programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, and an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, and a DVD.

また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。   Further, the control lines and the information lines are those that are considered necessary for the explanation, and not all the control lines and the information lines that are necessary for the mounting are shown. In practice, it can be considered that almost all the components are connected to each other.

100 通信システム
101 パケットトランスポートネットワーク
103 サービスコントローラ
502 経路生成部
503 ノードリソース監視部
504 ソフトウェア管理部
505 ソフトウェアロード部
702 VM管理部
706 入出力処理部
721 計算リソース監視部
722 プログラム格納部
N ノード
T1 ソフト機能テーブル
T2 計算リソース管理テーブル
T4 計算リソーステーブル
T5 候補ノードテーブル
100 communication system 101 packet transport network 103 service controller 502 route generation unit 503 node resource monitoring unit 504 software management unit 505 software load unit 702 VM management unit 706 input / output processing unit 721 calculation resource monitoring unit 722 program storage unit N node T1 software Function table T2 Calculation resource management table T4 Calculation resource table T5 Candidate node table

Claims (14)

ネットワーク内においてデータを転送する複数の転送装置を制御する制御装置であって、
前記複数の転送装置の各々には、プログラムの動作保証を遵守するように前記プログラムを実行する第1の仮想マシンと、前記プログラムの実行に際し前記プログラムの動作保証を遵守しなくてもよい第2の仮想マシンと、が構築され、
前記制御装置は、プロセッサと、前記ネットワーク内に設定された経路を示す経路管理情報を記憶する記憶デバイスと、を有し、
前記プロセッサは、
前記複数の転送装置にロードする対象のプログラムであるロード対象プログラムの動作保証に関する保証要求を受け付ける受付処理と、
前記経路管理情報に基づいて前記経路を構成する転送装置群を前記複数の転送装置から選択する選択処理と、
前記受付処理によって受け付けられた前記保証要求に応じて、前記選択処理によって選択された転送装置に構築される前記第1の仮想マシンおよび前記第2の仮想マシンのうち、いずれか一方の仮想マシンを前記ロード対象プログラムのロード先に決定する決定処理と、
を実行することを特徴とする制御装置。
A control device for controlling a plurality of transfer devices for transferring data in a network,
Each of the plurality of transfer devices includes a first virtual machine that executes the program so as to comply with the operation guarantee of the program, and a second that does not need to comply with the operation guarantee of the program when the program is executed. With a virtual machine,
The control apparatus includes a processor and a storage device that stores path management information indicating a path set in the network,
The processor is
A reception process for receiving a guarantee request for guaranteeing operation of a load target program that is a program to be loaded into the plurality of transfer devices;
A selection process for selecting, from the plurality of transfer devices, a transfer device group constituting the route based on the route management information;
Either one of the first virtual machine and the second virtual machine constructed in the transfer device selected by the selection process in response to the guarantee request received by the reception process. A determination process for determining a load destination of the load target program;
The control apparatus characterized by performing.
前記記憶デバイスは
プログラムごとの想定計算リソースをさらに記憶し、
前記保証要求は、
前記ロード対象プログラムの動作保証を遵守する第1の保証内容と、前記ロード対象プログラムの動作保証を遵守しなくてもよい第2の保証内容のいずれかの保証内容を含み、
前記プロセッサは、
前記選択処理によって選択された転送装置について、前記いずれか一方の仮想マシンにおける現在の計算リソースを取得する取得処理と、
前記記憶デバイスに記憶されている前記ロード対象プログラムの想定計算リソースと、前記取得処理によって取得された前記現在の計算リソースと、に基づいて、前記ロード対象プログラムが前記選択された転送装置に構築されている前記いずれか一方の仮想マシンにロードされた場合におけるロード後想定計算リソースを算出する算出処理と、
をさらに実行し、
前記決定処理では、前記プロセッサは、前記算出処理によって算出された前記ロード後想定計算リソースに基づいて、前記ロード先の仮想マシンを決定することを特徴とする請求項1に記載の制御装置。
The storage device further stores assumed calculation resources for each program,
The warranty request is:
Including the guarantee contents of the first guarantee contents that comply with the operation guarantee of the load target program and the second guarantee contents that do not need to comply with the operation guarantee of the load target program,
The processor is
For the transfer device selected by the selection process, an acquisition process for acquiring a current computing resource in any one of the virtual machines;
Based on the assumed calculation resource of the load target program stored in the storage device and the current calculation resource acquired by the acquisition process, the load target program is constructed in the selected transfer device. A calculation process for calculating an assumed calculation resource after loading when the virtual machine is loaded on any one of the virtual machines;
Run further,
The control device according to claim 1, wherein in the determination process, the processor determines the load destination virtual machine based on the post-load assumed calculation resource calculated by the calculation process.
前記取得処理では、前記プロセッサは、前記いずれかの保証内容が前記第1の保証内容である場合、前記選択された転送装置における前記第1の仮想マシンの現在の計算リソースを取得し、前記いずれかの保証内容が前記第2の保証内容である場合、前記選択された転送装置における前記第2の仮想マシンの現在の計算リソースを取得することを特徴とする請求項2に記載の制御装置。   In the acquisition process, the processor acquires the current calculation resource of the first virtual machine in the selected transfer device when any one of the guarantee contents is the first guarantee contents, 3. The control device according to claim 2, wherein when the guarantee content is the second guarantee content, a current calculation resource of the second virtual machine in the selected transfer device is acquired. 前記決定処理では、前記プロセッサは、前記選択された転送装置の前記いずれか一方の仮想マシンにおいて、前記ロード後想定計算リソースが前記ロード対象プログラムの動作保証を遵守できる計算リソースであるかを判断し、前記ロード後想定計算リソースが前記ロード対象プログラムの動作保証を遵守できる計算リソースである場合、前記選択された転送装置の前記いずれか一方の仮想マシンを前記ロード対象プログラムのロード先に決定することを特徴とする請求項2に記載の制御装置。   In the determination process, the processor determines whether the post-load assumed calculation resource is a calculation resource capable of complying with the operation guarantee of the load target program in any one of the virtual machines of the selected transfer device. If the post-load assumed calculation resource is a calculation resource that can comply with the operation guarantee of the load target program, the virtual machine of the selected transfer device is determined as the load destination of the load target program. The control device according to claim 2. 前記決定処理では、前記プロセッサは、前記ロード後想定計算リソースが前記ロード対象プログラムの動作保証を遵守できる前記選択された転送装置の前記いずれか一方の仮想マシンが、前記転送装置群に複数存在する場合、前記複数存在する前記仮想マシンのうち前記ロード後想定計算リソースが最低または所定のしきい値以下となる前記選択された転送装置の前記いずれか一方の仮想マシンを、前記ロード対象プログラムのロード先に決定することを特徴とする請求項4に記載の制御装置。   In the determination process, the processor includes a plurality of the one virtual machines of the selected transfer apparatuses in which the post-load assumption calculation resource can comply with the operation guarantee of the load target program in the transfer apparatus group. In this case, among the plurality of existing virtual machines, the one or more virtual machines of the selected transfer device whose estimated calculation resource after loading is the minimum or a predetermined threshold value or less are loaded with the load target program. The control device according to claim 4, wherein the control device is determined first. 前記決定処理では、前記プロセッサは、前記ロード後想定計算リソースが前記ロード対象プログラムの動作保証を遵守できる前記選択された転送装置の前記いずれか一方の仮想マシンが、前記転送装置群に存在しない場合、前記いずれかの保証内容に応じて、前記ロード対象プログラムのロード先を決定することを特徴とする請求項4に記載の制御装置。   In the determination process, the processor, when the post-load assumption calculation resource does not exist in the transfer device group, the one virtual machine of the selected transfer device that can comply with the operation guarantee of the load target program. 5. The control apparatus according to claim 4, wherein a load destination of the load target program is determined according to any one of the guarantee contents. 前記決定処理では、前記プロセッサは、前記いずれかの保証内容が前記第1の保証内容である場合、前記ロード対象プログラムのロード先の決定不可通知を出力することを特徴とする請求項6に記載の制御装置。   7. The determination process according to claim 6, wherein, in the determination process, when any one of the guarantee contents is the first guarantee contents, the processor outputs a notification that the load destination of the load target program cannot be determined. Control device. 前記記憶デバイスは、前記プログラムごとに、負荷が一定であるか変動であるかを示す負荷種別を規定した負荷種別情報を記憶しており、
前記決定処理では、前記プロセッサは、前記いずれかの保証内容が前記第2の保証内容である場合、前記選択された転送装置ごとに、前記第2の仮想マシンで実行中のプログラム群のうち前記負荷種別が変動であるプログラムの割合を算出し、算出した前記選択された転送装置ごとの当該割合が最大または所定割合以上である前記選択された転送装置の前記いずれか一方の仮想マシンを、前記ロード対象プログラムのロード先に決定することを特徴とする請求項5に記載の制御装置。
The storage device stores, for each program, load type information that defines a load type indicating whether the load is constant or variable,
In the determination process, when any one of the guarantee contents is the second guarantee contents, the processor, for each of the selected transfer devices, out of the group of programs being executed in the second virtual machine. Calculate the ratio of the program whose load type is fluctuating, and calculate the one virtual machine of the selected transfer apparatus whose calculated ratio for each selected transfer apparatus is the maximum or a predetermined ratio or more. The control apparatus according to claim 5, wherein the control apparatus determines a load destination of the load target program.
前記保証要求は、
前記第1の保証内容を充足しなければ前記第2の保証内容が適用される第3の保証内容をさらに含み、
前記決定処理では、前記プロセッサは、前記いずれかの保証内容が前記第3の保証内容である場合、前記いずれかの保証内容を前記第3の保証内容から前記第2の保証内容に変更し、
前記プロセッサは、前記変更された第2の保証内容により、前記取得処理、前記算出処理、および、前記決定処理を再実行することを特徴とする請求項6に記載の制御装置。
The warranty request is:
If the first warranty content is not satisfied, the second warranty content further includes a third warranty content,
In the determination process, when any one of the guarantee contents is the third guarantee contents, the processor changes any one of the guarantee contents from the third guarantee contents to the second guarantee contents,
The control device according to claim 6, wherein the processor re-executes the acquisition process, the calculation process, and the determination process according to the changed second guarantee content.
前記プロセッサは、前記決定処理によって決定されたロード先の仮想マシンに前記ロード対象プログラムに関する情報を送信する送信処理を実行することを特徴とする請求項1に記載の制御装置。   The control device according to claim 1, wherein the processor executes a transmission process of transmitting information related to the load target program to a load destination virtual machine determined by the determination process. 前記プロセッサは、前記ロード先の計算リソースが所定のしきい値以上となった場合に、前記取得処理、前記算出処理、および、前記決定処理を再実行することを特徴とする請求項2に記載の制御装置。   3. The processor according to claim 2, wherein the processor re-executes the acquisition process, the calculation process, and the determination process when the calculation resource of the load destination becomes a predetermined threshold value or more. Control device. ネットワーク内においてデータを転送する複数の転送装置を制御する制御装置のプロセッサに実行させる制御プログラムであって、
前記複数の転送装置の各々には、プログラムの動作保証を遵守するように前記プログラムを実行する第1の仮想マシンと、前記プログラムの実行に際し前記プログラムの動作保証を遵守しなくてもよい第2の仮想マシンと、が構築され、
前記制御装置は、前記プロセッサと、前記ネットワーク内に設定された経路を示す経路管理情報を記憶する記憶デバイスと、を有し、
前記制御プログラムは、
前記プロセッサに、
前記複数の転送装置にロードする対象のプログラムであるロード対象プログラムの動作保証に関する保証要求を受け付ける受付処理と、
前記経路管理情報に基づいて前記経路を構成する転送装置群を前記複数の転送装置から選択する選択処理と、
前記受付処理によって受け付けられた前記保証要求に応じて、前記選択処理によって選択された転送装置に構築される前記第1の仮想マシンおよび前記第2の仮想マシンのうち、いずれか一方の仮想マシンを前記ロード対象プログラムのロード先に決定する決定処理と、
を実行させることを特徴とする制御プログラム。
A control program executed by a processor of a control device that controls a plurality of transfer devices that transfer data in a network,
Each of the plurality of transfer devices includes a first virtual machine that executes the program so as to comply with the operation guarantee of the program, and a second that does not need to comply with the operation guarantee of the program when the program is executed. With a virtual machine,
The control apparatus includes the processor and a storage device that stores path management information indicating a path set in the network,
The control program is
In the processor,
A reception process for receiving a guarantee request for guaranteeing operation of a load target program that is a program to be loaded into the plurality of transfer devices;
A selection process for selecting, from the plurality of transfer devices, a transfer device group constituting the route based on the route management information;
Either one of the first virtual machine and the second virtual machine constructed in the transfer device selected by the selection process in response to the guarantee request received by the reception process. A determination process for determining a load destination of the load target program;
A control program characterized by causing
前記記憶デバイスは
プログラムごとの想定計算リソースをさらに記憶し、
前記保証要求は、
前記ロード対象プログラムの動作保証を遵守する第1の保証内容と、前記ロード対象プログラムの動作保証を遵守しなくてもよい第2の保証内容のいずれかの保証内容を含み、
前記制御プログラムは、
前記プロセッサに、
前記選択処理によって選択された転送装置について、前記いずれか一方の仮想マシンにおける現在の計算リソースを取得する取得処理と、
前記記憶デバイスに記憶されている前記ロード対象プログラムの想定計算リソースと、前記取得処理によって取得された前記現在の計算リソースと、に基づいて、前記ロード対象プログラムが前記選択された転送装置に構築されている前記いずれか一方の仮想マシンにロードされた場合におけるロード後想定計算リソースを算出する算出処理と、
前記決定処理によって決定されたロード先の仮想マシンに前記ロード対象プログラムに関する情報を送信する送信処理と、
をさらに実行させ、
前記決定処理では、前記制御プログラムは、前記プロセッサに、前記算出処理によって算出された前記ロード後想定計算リソースに基づいて、前記ロード先の仮想マシンを決定させることを特徴とする請求項12に記載の制御プログラム。
The storage device further stores assumed calculation resources for each program,
The warranty request is:
Including the guarantee contents of the first guarantee contents that comply with the operation guarantee of the load target program and the second guarantee contents that do not need to comply with the operation guarantee of the load target program,
The control program is
In the processor,
For the transfer device selected by the selection process, an acquisition process for acquiring a current computing resource in any one of the virtual machines;
Based on the assumed calculation resource of the load target program stored in the storage device and the current calculation resource acquired by the acquisition process, the load target program is constructed in the selected transfer device. A calculation process for calculating an assumed calculation resource after loading when the virtual machine is loaded on any one of the virtual machines;
A transmission process for transmitting information related to the load target program to the load destination virtual machine determined by the determination process;
Is executed further,
13. The determination process according to claim 12, wherein the control program causes the processor to determine the load destination virtual machine based on the post-load assumed calculation resource calculated by the calculation process. Control program.
ネットワーク内においてデータを転送する複数の転送装置と、前記複数の転送装置を制御する制御装置と、を有する通信システムであって、
前記複数の転送装置の各々には、プログラムの動作保証を遵守するように前記プログラムを実行する第1の仮想マシンと、前記プログラムの実行に際し前記プログラムの動作保証を遵守しなくてもよい第2の仮想マシンと、が構築され、
前記制御装置は、プロセッサと、前記ネットワーク内に設定された経路を示す経路管理情報を記憶する記憶デバイスと、を有し、
前記プロセッサは、
前記複数の転送装置にロードする対象のプログラムであるロード対象プログラムの動作保証に関する保証要求を受け付ける受付処理と、
前記管理情報に基づいて前記経路を構成する転送装置群を前記複数の転送装置から選択する選択処理と、
前記受付処理によって受け付けられた前記保証要求に応じて、前記選択処理によって選択された転送装置に構築される前記第1の仮想マシンおよび前記第2の仮想マシンのうち、いずれか一方の仮想マシンを前記ロード対象プログラムのロード先に決定する決定処理と、
前記決定処理によって決定されたロード先の仮想マシンに前記ロード対象プログラムに関する情報を送信する送信処理と、
を実行し、
前記複数の転送装置のうち前記ロード先の仮想マシンを構築する転送装置は、
前記ロード対象プログラムに関する情報を受信すると、前記ロード先の仮想マシン上で前記ロード対象プログラムを実行することを特徴とする通信システム。
A communication system comprising a plurality of transfer devices that transfer data in a network, and a control device that controls the plurality of transfer devices,
Each of the plurality of transfer devices includes a first virtual machine that executes the program so as to comply with the operation guarantee of the program, and a second that does not need to comply with the operation guarantee of the program when the program is executed. With a virtual machine,
The control apparatus includes a processor and a storage device that stores path management information indicating a path set in the network,
The processor is
A reception process for receiving a guarantee request for guaranteeing operation of a load target program that is a program to be loaded into the plurality of transfer devices;
A selection process for selecting, from the plurality of transfer devices, a transfer device group constituting the route based on the management information;
Either one of the first virtual machine and the second virtual machine constructed in the transfer device selected by the selection process in response to the guarantee request received by the reception process. A determination process for determining a load destination of the load target program;
A transmission process for transmitting information related to the load target program to the load destination virtual machine determined by the determination process;
Run
Among the plurality of transfer devices, the transfer device that constructs the load destination virtual machine is:
A communication system, wherein when the information related to the load target program is received, the load target program is executed on the load destination virtual machine.
JP2015020268A 2015-02-04 2015-02-04 Control device, control program and communication system Pending JP2016144133A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015020268A JP2016144133A (en) 2015-02-04 2015-02-04 Control device, control program and communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015020268A JP2016144133A (en) 2015-02-04 2015-02-04 Control device, control program and communication system

Publications (1)

Publication Number Publication Date
JP2016144133A true JP2016144133A (en) 2016-08-08

Family

ID=56570870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015020268A Pending JP2016144133A (en) 2015-02-04 2015-02-04 Control device, control program and communication system

Country Status (1)

Country Link
JP (1) JP2016144133A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018143235A1 (en) * 2017-02-01 2018-08-09 日本電気株式会社 Management system, management device, and management method and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018143235A1 (en) * 2017-02-01 2018-08-09 日本電気株式会社 Management system, management device, and management method and program
US11397605B2 (en) 2017-02-01 2022-07-26 Nec Corporation Management system, management apparatus, management method, and program

Similar Documents

Publication Publication Date Title
KR102273413B1 (en) Dynamic scheduling of network updates
JP2020184745A (en) Monitoring-based edge computing services with delay assurance
JP5954074B2 (en) Information processing method, information processing apparatus, and program.
US20180349121A1 (en) Dynamic deployment of an application based on micro-services
US10153979B2 (en) Prioritization of network traffic in a distributed processing system
KR20160087706A (en) Apparatus and method for resource allocation of a distributed data processing system considering virtualization platform
JP6406633B2 (en) Virtual network control device, virtual network control method, and program
US20080148272A1 (en) Job allocation program, method and apparatus
JP2007207136A (en) Data processor, data processing method, and data processing program
JP2014138244A (en) Centralized management network control system
CN114697256B (en) Dynamic network bandwidth allocation and management based on centralized controllers
US11695631B1 (en) Generating candidate links and candidate paths before selecting links for an optimized optical network plan
CN111699659A (en) Virtualized network functions
JP2014186411A (en) Management device, information processing system, information processing method and program
JP2013187656A (en) Network control system, path management server, and network control method and program for distributed type cloud infrastructure
JP5754504B2 (en) Management apparatus, information processing apparatus, information processing system, and data transfer method
JP6754115B2 (en) Selection device, device selection method, program
JP7176633B2 (en) VIRTUALIZATION BASE CONTROL DEVICE, VIRTUALIZATION BASE CONTROL METHOD AND VIRTUALIZATION BASE CONTROL PROGRAM
JP2016144133A (en) Control device, control program and communication system
CN108737144B (en) Method and device for resource management
JP2015153330A (en) Virtual machine arrangement system and method
JP6191361B2 (en) Information processing system, information processing system control method, and control program
JP6721106B2 (en) First control device, device, method, program, recording medium, and system
WO2014016950A1 (en) Parallel computer system, and method for arranging processing load in parallel computer system
JP6339978B2 (en) Resource allocation management device and resource allocation management method