WO2023223514A1 - 統合制御装置、統合制御システム、統合制御方法及びプログラム - Google Patents

統合制御装置、統合制御システム、統合制御方法及びプログラム Download PDF

Info

Publication number
WO2023223514A1
WO2023223514A1 PCT/JP2022/020882 JP2022020882W WO2023223514A1 WO 2023223514 A1 WO2023223514 A1 WO 2023223514A1 JP 2022020882 W JP2022020882 W JP 2022020882W WO 2023223514 A1 WO2023223514 A1 WO 2023223514A1
Authority
WO
WIPO (PCT)
Prior art keywords
control
engines
integrated
integrated control
physical network
Prior art date
Application number
PCT/JP2022/020882
Other languages
English (en)
French (fr)
Inventor
薫明 原田
晃人 鈴木
正裕 小林
太一 河野
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2022/020882 priority Critical patent/WO2023223514A1/ja
Priority to JP2024521495A priority patent/JPWO2023223514A1/ja
Publication of WO2023223514A1 publication Critical patent/WO2023223514A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence

Definitions

  • Each service on the network is operated by a control algorithm designed or provided by a service provider or network operator (communications carrier).
  • one service provider will be constructed independently. Conceivable.
  • the server 310a constructs a virtual network without considering the equipment load status of each node (transfer device 320, servers 310x, 310y), etc.
  • the server 310b constructs a virtual network so as to equalize the equipment load status of each node, etc., without considering the required quality.
  • network control conflicts as shown in FIG. 7 may occur.
  • the data transferable capacity of each node (transfer device) 320a to 320e is "10”
  • a control algorithm for the purpose of load balancing of equipment is first adopted.
  • the server 310b distributes a data capacity of "10” into data capacities of "3", "3", and "4" and transfers the data to the user terminal 330b.
  • the server 310a that employs a control algorithm aimed at minimizing the path length later transfers the data capacity of "10” without distributing it, any of the nodes 320a to 320e can already transfer the remaining data. Since the capacity is not "10", even if an attempt is made to construct a virtual network for data transfer to the user terminal 330a, a problem arises in that resources are insufficient.
  • the above problem can be solved by network control cooperation as shown in FIG.
  • FIG. 8 even if the physical network is the same as that in FIG. If you build a virtual network that uses the nodes 320b, 320c, and 320e that were not used by 310a, you can transfer the data by distributing the data capacity of "10" into each data capacity of "5" and "5". , can achieve their respective objectives.
  • FIG. 9 is a diagram showing the overall configuration of a conventional network.
  • FIG. 10 is a diagram showing an example of the functional configuration of a conventional integrated control engine 200.
  • the integrated control system 10 is connected to a physical network 300 as a network infrastructure.
  • the physical network 300 is a network environment that includes a general-purpose server 310, a node (transfer device) 320, and a user terminal 330.
  • the integrated control system 100 is one or more computers having an integrated control engine 200.
  • the integrated control system 10 controls a virtual network on the physical network 300 using an integrated control engine.
  • the integrated control system 10 acquires network information indicating the network state (situation) from the physical network 300 via the information collection/storage device 30, and sends the control results and setting instructions calculated by the integrated control engine 200 to the orchestrator. 50 to each node 320 of the physical network, coordination of network control is realized.
  • the integrated control engine 200 selects the optimal general-purpose server 310 based on NFV environment information (network configuration information, user demand, network observation information (traffic information, server usage information, etc.)). Allocate virtual resources and virtual functions to and calculate the optimal route.
  • the integrated control engine 200 is realized by an information sharing engine 400 for sharing information between various control engines on the premise of cooperation with various modularized control engines e100 (e101 to e105, etc.).
  • the information sharing engine 400 includes a learning instruction agent 410, each control agent 430 (431, 432, 433, 434, 435, etc.), a comprehensive evaluation calculation section 450, and an input/output conversion section 460.
  • the learning instruction agent 410 learns the selection of each control agent based on the comprehensive evaluation.
  • Each control agent 430 learns to change the solution of each control engine e100 based on the overall evaluation.
  • the comprehensive evaluation calculation unit 450 calculates a reward, which is a comprehensive evaluation, from the evaluation of each control engine e100.
  • the input/output converter 460 converts the input/output format of each control engine e100.
  • the input/output converter 460 is formulated for each combination of control engines e100.
  • Non-Patent Document 1 the information sharing engine 400 collects the above-mentioned various information from each control engine e100, recognizes how each solution wants to control, and then performs each control. The solution is changed while evaluating the objective function of each engine control algorithm. Next, the information sharing engine 400 sends this changed solution to each control engine e100, so that each control engine e100 obtains a new solution. A final solution can be determined by the information sharing engine 400 repeating the process of collecting the various types of information described above from each control engine e100 again.
  • Non-Patent Document 1 control policies (improvement of quality, improvement of resource efficiency, etc.) and constraint conditions (service provision conditions, link capacity, server capacity, etc.) are disclosed for each control algorithm possessed by each control engine e100. It is assumed that
  • Non-Patent Document 1 a problem arises in that it may not be possible to calculate the evaluation of each control engine or to learn how to change the solution of each control engine.
  • the present invention has been made in view of the above-mentioned circumstances, and it is possible to achieve a control completion state (individual control policies are satisfied) for all control engines even without disclosure of the control policies and constraints of the control engines.
  • the objective is to efficiently implement integrated control until the optimum state has been achieved, or a state that cannot be further improved as a whole.
  • the invention according to claim 1 provides an integrated control device that integrally controls a plurality of control engines for constructing a plurality of different virtual networks on a physical network, the integrated control device controlling the state of the physical network.
  • an information distribution unit that receives control requests regarding the plurality of virtual networks from the plurality of control engines by acquiring and distributing the NFV environment information indicated to the plurality of control engines to the plurality of control engines; a comprehensive evaluation estimating unit that aggregates the total number of control instructions in the control requests from the plurality of control engines with respect to the current state of the physical network based on the request; and the control instructions aggregated by the comprehensive evaluation estimating unit.
  • a control permission destination learning unit that uses reinforcement learning to update an action value function for determining control permission so that the total number of is smaller than the previous aggregation, and a control permission destination learning unit that updates the action value function for determining control permission using reinforcement learning, and is an integrated control device including a control application determination unit that transfers a predetermined control request received from a predetermined control engine among the plurality of control engines to the physical network side.
  • FIG. 1 is an overall configuration diagram of a communication system according to a first embodiment.
  • FIG. 2 is an electrical hardware configuration diagram of the integrated control system. 7 is a flowchart showing integrated control processing according to the first embodiment.
  • FIG. 2 is an overall configuration diagram of a communication system according to a second embodiment. 7 is a flowchart showing integrated control processing according to the second embodiment.
  • FIG. 2 is a conceptual diagram of constructing multiple virtual networks for different purposes on a physical network.
  • FIG. 2 is a conceptual diagram when network control conflicts occur when constructing a plurality of virtual networks for different purposes on a physical network.
  • FIG. 2 is a conceptual diagram of coordinating network control when constructing a plurality of virtual networks for different purposes on a physical network.
  • 1 is a diagram showing the overall configuration of a conventional communication system.
  • FIG. 2 is a functional configuration diagram of a conventional integrated control engine 200.
  • FIG. 1 is an overall configuration diagram of a communication system according to a first embodiment.
  • the communication system of this embodiment is constructed of an integrated control system 10, an information collection/storage device 30, an orchestrator 50, and a physical network 300 as a network infrastructure.
  • the physical network 300 is managed and operated by a network operator, and is constructed from multiple general-purpose servers 310, multiple nodes (transfer devices) 320, and multiple user terminals 330.
  • the general-purpose server 310 is constructed by a single or multiple computers, and includes virtual resources (VR) and virtual network functions (VNF) set by the integrated control system 10 via the orchestrator 50.
  • Virtual Network Function examples include a VM (Virtual Machine) that combines a CPU (Central Processing Unit), an HDD (Hard Disk Drive), a GPU (Graphics Processing Unit), an FPGA (Field Programmable Gate Array), and the like.
  • examples of VNF include CPE (Customer Premises Equipment), FW (Firewall), LB (Load Balancer), DPI (Deep Packet Inspection), Proxy, IDS (Intrusion Detection System), NAT (Network Address Translation), etc. Can be mentioned.
  • the general-purpose server 310 acquires server usage information and transmits the server usage information to the integrated control system 10 via the information collection/storage device 30. Further, the general-purpose server 310 processes traffic according to the VR and VNF set by the integrated control system 10 via the orchestrator 50, and generates traffic.
  • the node 320 is a transfer device such as a switch or a server, and functions as a transfer device that transfers traffic.
  • the node 320 acquires traffic information and transmits the traffic information to the integrated control system 10 via the information collection/storage device 30. Further, the node 320 processes traffic according to the route calculated by the integrated control system 10.
  • the user terminal 330 is constructed from a single or multiple computers, and transmits traffic demand generated by the user's communication actions (for example, operation to start using a service, etc.) to other user terminals 330, the general-purpose server 310, etc. do. Further, the user terminal 330 transmits user demand to the integrated control system 10 via the information collection/storage device 30.
  • a virtual network is a logical network that combines VRs, VNFs, and user terminals according to the services to be provided.
  • Various services are realized by setting VRs and VNFs as general-purpose servers and transferring traffic. Ru.
  • the server usage information is the usage rate of physical resources (for example, CPU, memory, etc.) of the general-purpose server 310.
  • the traffic information is the amount of data of any link included in the physical network 300.
  • the user demand includes VR and VNF demand information (the amount of VR and VNF required for each user terminal 330), service constraints (VR and VNF that need to be passed through each user terminal 330), and the like.
  • the information collection/storage device 30 is managed and operated by a network operator, and is constructed by a single or multiple computers.
  • the information collection/storage device 30 centrally monitors the load status of the physical network 300 and various resources. Therefore, the information collection/storage device 30 acquires and accumulates network observation information (traffic information, server usage information, etc.) and user demands from the physical network 300, and transfers them to the integrated control system.
  • network observation information traffic information, server usage information, etc.
  • the orchestrator 50 is managed and operated by a network operator, and is constructed from a single or multiple computers.
  • the orchestrator 50 centrally accepts and applies control instructions to the physical network 300.
  • the orchestrator 50 sends control signals to network devices (routers, switches, virtual servers, etc.) to control and change the virtual network in real time using software. Therefore, control results and setting commands are obtained from the integrated control system 10 according to the solution (control solution) indicating the optimal placement and optimal route calculated by the integrated control system 10, and the control results and setting instructions are obtained from the integrated control system 10.
  • NFV Network Functions Virtualization
  • the orchestrator 50 controls the VR and VNF using functions called "resource orchestration” and "service orchestration.”
  • Resource orchestration is a function of arranging VRs and VNFs on a physical network.
  • Service orchestration is a function that calculates an end-to-end route that connects VRs and VNFs.
  • the integrated control system 10 is constructed by a single or multiple computers, and is managed by a network operator.
  • the integrated control system 10 includes a plurality of control engines e1, e2, and e3, which are control engines created by the network operator itself, control engines created by third parties such as service providers, and the like.
  • control engine e the control engines e1, e2, and e3 will be collectively referred to as "control engine e.”
  • Each control engine e calculates the functional arrangement of individual and independent services.
  • Each control engine e is executed by its own control algorithm. Although three control engines are disclosed in FIG. 1 due to space limitations, there may be two or four or more control engines. Moreover, the integrated control system 10 has an integrated control algorithm A10. Further, the control engine e may be constructed with a server (individual control device) separate from the integrated control algorithm.
  • the integrated control algorithm A10 is an algorithm that issues setting instructions to the NFV orchestrator in order to realize resource orchestration and service orchestration.
  • the integrated control algorithm A10 selects a single predetermined control engine from among the plurality of control engines, and sends a control request (control results and setting instructions) from the selected single control engine via the orchestrator 50. applied to the physical network 300.
  • each control engine e of this embodiment is capable of requesting control of all routes, VRs, and VNFs in order to independently construct a virtual network. This is based on a different premise from the conventional control engine e100 (see FIG. 10), which can only make control requests.
  • the integrated control system 10 uses the integrated control algorithm A10 to determine the optimal placement of VRs and VNFs on the physical network 300 and the optimal end-to-end routes connecting these VRs and VNFs. The calculation controls the NFV environment. At this time, the integrated control system 10 determines the optimal placement of the VRs and VNFs, and the optimal Calculate the route.
  • the network configuration information includes network topology information of the physical network 300 and resource constraints (for example, the amount of each physical resource included in the physical network 300 (server capacity of each general-purpose server 310, link capacity of each node 320, etc.) etc.)).
  • resource constraints for example, the amount of each physical resource included in the physical network 300 (server capacity of each general-purpose server 310, link capacity of each node 320, etc.) etc.
  • the integrated control algorithm A10 may be constructed in a server (integrated control device) separate from each control engine e.
  • FIG. 2 is an electrical hardware configuration diagram of the integrated control system.
  • the integrated control system 10 includes, as a computer, a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, and an SSD (Solid State Drive) 104, as shown in FIG. , an external device connection I/F (Interface) 105, a network I/F 106, a media I/F 109, and a bus line 110.
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • SSD Solid State Drive
  • the CPU 101 controls the operation of the entire integrated control system 10.
  • the ROM 102 stores programs used to drive the CPU 101, such as IPL (Initial Program Loader).
  • RAM 103 is used as a work area for CPU 101.
  • the SSD 104 reads or writes various data under the control of the CPU 101.
  • an HDD Hard Disk Drive
  • SDD Serial Digital
  • the external device connection I/F 105 is an interface for connecting various external devices.
  • External devices in this case include a display, speaker, keyboard, mouse, USB (Universal Serial Bus) memory, printer, and the like.
  • the network I/F 106 is an interface for data communication via a communication network such as the physical network 300.
  • the media I/F 109 controls reading or writing (storage) of data to a recording medium 109m such as a flash memory.
  • the recording media 109m include DVDs (Digital Versatile Discs), Blu-ray Discs (registered trademark), and the like.
  • the bus line 110 is an address bus, a data bus, etc. for electrically connecting each component such as the CPU 101 shown in FIG. 2.
  • the integrated control system 10 evaluates the current network state held by each control engine e from the control requests output by each control engine e, without using information regarding the control policy and constraint conditions of each control engine e. presume.
  • the number of control instructions to the orchestrator received from the corresponding control engine e is regarded as the amount of deviation from the control policy or optimal state that the control engine e should satisfy.
  • the integrated control system 10 repeatedly performs processing using the function realized by the integrated control algorithm A10 until integrated control converges.
  • each function of the information distribution section 11, comprehensive evaluation estimation section 12, control permission destination learning section 13, and control application judgment section 14 can be realized.
  • the information distribution unit 11 acquires NFV environment information (network observation information, user demand, etc.) indicating the network status of the physical network from the information collection/storage device 30 and distributes it to the plurality of control engines e. , receives control requests from a plurality of control engines e regarding the virtual network that each control engine is in charge of.
  • NFV environment information network observation information, user demand, etc.
  • the comprehensive evaluation estimation unit 12 totals the total number of control instructions requested by the plurality of control engines e for the current network situation.
  • the control instructions may be given as a unit for the virtual network, or for individual elements such as changing the arrangement of VRs and VNFs that make up the virtual network, or changing the traffic route, but each control engine Use common units.
  • control engine e1 issues a control request that includes control instructions for two virtual networks
  • control engine e2 issues a control request that includes control instructions for three virtual networks
  • control engine e3 issues control instructions for four virtual networks.
  • the control permission destination learning unit 13 updates the action value function for determining control permission using reinforcement learning so that the total number of control instructions totaled by the comprehensive evaluation estimation unit 12 is smaller than the previous calculation. do. Only control requests from a predetermined control engine among the plurality of control engines e can be transferred from the integrated control algorithm A10 to the physical network via the orchestrator 50. Therefore, the control permission destination learning unit 13 determines a predetermined control engine e (control request) from a plurality of control engines e so that the total number of control instructions from each control engine e is smaller than the previous one. The integrated control of S11 to S20 is converged.
  • control application determining unit 14 transfers a predetermined control request received from a predetermined control engine e among the plurality of control engines e to the orchestrator 50. Transfer to the physical network side. Thereby, a predetermined control request can be applied to the physical network 300.
  • control engine e1 makes a control request including one control instruction
  • control engine e2 makes a control request including two control instructions
  • control engine e3 makes two control requests.
  • FIG. 3 is a flowchart showing integrated control processing according to the first embodiment.
  • the information collection/storage device 30 collects NFV environment information (network observation information, user demand, etc.).
  • the information distribution unit 11 distributes the NFV environment information acquired from the information collection/storage device 30 to each control engine e.
  • the control engine e1 receives NFV environment information from the information distribution unit 11.
  • the control engine e1 transmits a control request to the information distribution unit 11.
  • the processing of S101 to S103 is also performed by the control engines e2 and e3.
  • the information distribution unit 11 receives control requests from each control engine e.
  • S14 The comprehensive evaluation estimating unit 12 totals the number of control instructions in each control request.
  • the comprehensive evaluation estimation unit 12 calculates the difference between the number of control instructions at the time of the previous control application determination and the number of control instructions this time for each control engine e.
  • control permission destination learning unit 13 updates the evaluation of the previous control application permission.
  • S17 The control application determining unit 14 determines whether the evaluation has changed between the previous time and this time.
  • step S18 If the control application determining unit 14 determines that the evaluation has changed in step S17 (YES), the control application determining unit 14 determines whether the evaluation has changed among the control requests (evaluation results and setting commands) received from each control engine e. Based on this, one control request to which application permission is granted is determined, and this one control request is transferred to the orchestrator 50.
  • the orchestrator 50 applies one control request received from the control application determination unit 14 to the physical network 300.
  • Step S20 The orchestrator 50 confirms the completion of application. After that, the process returns to step S11. Steps S11 to S20 and S101 to S103 are repeated until the evaluation does not change (S17: NO).
  • step S17 if the control application determining unit 14 does not determine that the evaluation has changed, that is, if it determines that the evaluation has not changed (NO), the control application determining unit 14 determines which control engine e The control request will also be rejected and the control will be temporarily terminated. After that, the process returns to step S11. Then, the information collection/storage device 30 collects NFV environment information (network observation information and user demand) (S11), and when the evaluation starts to change (S17; YES), the control application judgment unit 14 Among the control requests (evaluation results and setting commands) received from the engine e, one control request to which application permission is granted is determined based on the evaluation, and this one control request is transferred to the orchestrator 50.
  • NFV environment information network observation information and user demand
  • the information distribution unit 11 acquires the network state s t from the information collection/storage device 30, and notifies each control engine i ⁇ 1,...,N ⁇ of the network state s t .
  • the network state s t is generated based on NFV environment information (traffic volume, resource usage, etc.) collected during a period of time (t- ⁇ t,t).
  • Each control engine i ⁇ 1,...,N ⁇ calculates the functional arrangement according to its internal logic, and notifies the integrated control algorithm A10 of the control request M i (x t ).
  • the comprehensive evaluation estimation unit 12 receives control requests M i (x t ) from all control engines, and calculates the state evaluation y i,t-1 given by (Equation 1).
  • the control permission target learning unit 13 calculates the sum r t of state evaluations, and updates the action value function Q(s',i) as shown in (Formula 2).
  • s' t is a vector obtained by discretizing s t .
  • control application determination unit 14 determines the control engine a t ⁇ 1,...,N ⁇ to which application is permitted according to the policy of (Formula 3), and issues a control request.
  • is a separately provided parameter.
  • the information distribution unit 11 acquires the network status st from the information collection/storage device 30.
  • the network state s t is the NFV collected during the time period (t- ⁇ t,t) Generated based on environmental information (traffic volume, resource usage, etc.).
  • control application determination unit 14 determines the control engine a t ⁇ 1,...,N ⁇ to which application is permitted according to the policy of (Equation 3) above.
  • the information distribution unit 11 notifies each control engine i ⁇ 1,...,N ⁇ of the network state s t .
  • Each control engine i ⁇ 1,...,N ⁇ calculates the functional arrangement according to its internal logic, and notifies the integrated control algorithm A10 of the control request M i (x t ).
  • the control application judgment unit 14 receives a control request from the control engine at .
  • the comprehensive evaluation estimation unit 12 receives control requests M i (x t ) from all control engines, and calculates the state evaluation y i,t-1 given by the above (Formula 1).
  • is the number of control instructions to the orchestrator 50 when the control request is M(x).
  • the control permission destination learning unit 13 calculates the sum r t of state evaluations, and updates the action value function Q(s',i) as shown in the above (Formula 2).
  • control application target is determined (S121 to S125) based on the Q function up to the previous time (time t-1) and the Q function is updated (S126, S127) based on the previous determination
  • the control request is When applied, the response is faster than in the above-mentioned specific example 1-1.
  • the response of the selected control algorithm is slow, it will be equivalent to specific example 1-1.
  • the evaluation of the previous decision occurs after the current decision, the ability to follow changes in the situation decreases.
  • the integrated control system 10 of this embodiment uses the control requests output by each control engine to determine the current state held by each control engine, without using information regarding the control policy or constraint conditions of the control engine. The evaluation estimation for the network state is realized. Then, based on the results, the integrated control system 10 transfers the control requests received from each control engine to the orchestrator that issues control instructions to the network infrastructure (physical network 300). As a result, the integrated control system 10 can achieve a control completion state for all control engines (an optimal state in which each control policy is satisfied, or an optimal state as a whole) for all control engines without receiving disclosure of the algorithm on the control engine side. This has the effect of making it possible to efficiently implement integrated control up to a state that cannot be improved.
  • the second embodiment is a modification of the first embodiment, and the integrated control system 20 according to the second embodiment is different from the integrated control system 10 according to the first embodiment in that the mediator m1 , m2, and m3 are added.
  • the mediators m1, m2, and m3 are shown here, there may be two or four or more mediators.
  • the mediators m1, m2, and m3 are collectively referred to as "mediator m.”
  • a mediator m is provided for each control engine e.
  • FIG. 4 is an overall configuration diagram of a communication system according to the second embodiment.
  • the communication system of this embodiment is constructed by an integrated control system 20, an information collection/storage device 30, an orchestrator 50, and a physical network 300 as a network infrastructure.
  • an integrated control system 20 an information collection/storage device 30, an orchestrator 50, and a physical network 300 as a network infrastructure.
  • devices, configurations, or functions similar to those in the first embodiment are denoted by the same symbols, and explanations thereof will be omitted.
  • the integrated control system 20 is constructed by a single or multiple computers, and is managed by a network operator.
  • the integrated control system 20 includes a plurality of control engines e, such as a control engine created by the network operator itself and a control engine created by a third party service provider. Further, the integrated control system 20 includes an integrated control algorithm A20 and a plurality of mediators m.
  • the integrated control algorithm A20 basically plays the same role as the integrated control algorithm A10 according to the first embodiment. The differences between the integrated control algorithm A20 and the integrated control algorithm A10 will be described later.
  • the mediator m processes the NFV environmental information received from the information collection/storage device 30 by adding an adjustment amount according to the control permission frequency for each control engine e, and applies the adjustment amount to each control engine e. To distribute. That is, the mediator m processes the plurality of NFV environment information outputted by the information distribution unit 21 into a single predetermined NFV environment information, and distributes the processed NFV environment information to each control engine e. For example, the mediator m obtains the processed NFV environment information by adding a uniform random value to a plurality of pieces of NFV environment information and taking the average using the FPL (Follow the Perturbed Leader) algorithm described below.
  • FPL Frellow the Perturbed Leader
  • control application permission destinations are determined based on the action value function learned by the integrated control algorithm A20. Therefore, if the frequency of receiving control application permission differs between the control engines e, the situation of the service handled by the corresponding control engine e may deteriorate during the period when control permission is not obtained. Therefore, in this embodiment, the time average performance of each control engine e is improved by utilizing an online decision-making method.
  • the integrated control system 20 uses a mediator e for each control engine between the integrated control algorithm A20 and each control engine e, and distributes information distributed to the control engine e according to the control permission frequency. By adding the adjustment amount of the above magnitude, the control engine e calculates a solution that does not strongly depend on the temporary network state.
  • the integrated control system 20 repeatedly performs processing using the function realized by the integrated control algorithm A20 until the integrated control converges.
  • each function of the information distribution section 21, comprehensive evaluation estimation section 22, control permission destination learning section 23, and control application judgment section 24 can be realized.
  • the information distribution section 21, the comprehensive evaluation estimation section 22, the control permission learning section 23, and the control application judgment section 24 are basically the information distribution section 11, the comprehensive evaluation estimation section 12, the control permission learning section 13, and the control application judgment section 24, respectively.
  • This function is similar to that of the control application determination unit 14.
  • the information distribution unit 21 can distribute the processed NFV environment information to each control engine e via each mediator m.
  • the comprehensive evaluation estimation unit 22 receives control requests (control instructions) from each control engine e via each mediator m.
  • FIG. 5 is a flowchart showing integrated control processing according to the second embodiment.
  • the information collection/storage device 30 collects NFV environment information (network observation information, user demand, etc.) indicating the network status of the physical network.
  • the information distribution unit 21 transmits the NFV environment information acquired from the information collection/storage device 30 to each mediator m. Furthermore, each mediator m processes the NFV environment information and distributes it to each corresponding control engine e.
  • the control engine e1 receives the processed NFV environment information from the mediator e1.
  • the control engine e1 transmits a control request to the information distribution unit 11.
  • S201 to S203 is also performed by the control engines e2 and e3.
  • Each mediator m receives a control request from each control engine e, and passes it to the comprehensive evaluation estimation unit 22.
  • S34 The comprehensive evaluation estimation unit 22 totals the number of control instructions in each control request.
  • the comprehensive evaluation estimation unit 22 calculates the difference between the number of control instructions at the time of the previous control application judgment and the number of control instructions this time for each control engine e.
  • control permission destination learning unit 23 updates the evaluation of the previous control application permission.
  • S37 The control application determining unit 24 determines whether the evaluation has changed between the previous time and this time.
  • step S38 If the control application determining unit 24 determines that the evaluation has changed in step S37 (YES), the control application determining unit 24 determines whether the evaluation has changed among the control requests (evaluation results and setting commands) received from each control engine e. Based on this, one control request to which application permission is granted is determined, and this one control request is transferred to the orchestrator 50.
  • the orchestrator 50 applies one control request received from the control application determination unit 24 to the physical network 300.
  • Step S40 The orchestrator 50 confirms the completion of application. After that, the process returns to step S31. Steps S31 to S40 and S201 to S203 are repeated until the evaluation no longer changes (S37: NO).
  • step S37 if the control application determining unit 24 does not determine that the evaluation has changed, that is, if it determines that the evaluation has not changed (NO), the control application determining unit 24 determines which control engine e The control request will also be rejected and the control will be temporarily terminated. After that, the process returns to step S31. Then, the information collection/storage device 30 collects NFV environment information (network observation information and user demand) (S31), and when the evaluation starts to change (S37; YES), the control application judgment unit 24 Among the control requests (evaluation results and setting commands) received from the engine e, one control request to which application permission is granted is determined based on the evaluation, and this one control request is transferred to the orchestrator 50.
  • NFV environment information network observation information and user demand
  • the information distribution unit 11 acquires the network state s t from the information collection/storage device 30, and notifies each mediator i ⁇ 1,...,N ⁇ of the network state s t .
  • the network state s t is generated based on NFV environment information (traffic volume, resource usage, etc.) collected during a period of time (t- ⁇ t,t).
  • x i,t is based on the FPL (Follow the Perturbed Leader) algorithm described below.
  • Each control engine i ⁇ 1,...,N ⁇ calculates the functional arrangement according to the internal logic, and notifies the integrated control algorithm A20 of the control request M i (x i,t ) via each mediator.
  • the comprehensive evaluation estimation unit 12 receives control requests M i (x i,t ) from all control engines, and calculates the state evaluation y i,t-1 given by (Equation 5).
  • the control permission target learning unit 13 calculates the sum r t of state evaluations, and updates the action value function Q(s',i)) as shown in the above (Formula 2).
  • control application determining unit 14 determines the control engine a t ⁇ 1,...,N ⁇ to which application is permitted in accordance with the policy of (Equation 3) above, and issues a control request.
  • the FPL algorithm which will be described later, is used to process the network information, but it may be replaced with a prediction algorithm that utilizes regression analysis, for example.
  • the information distribution unit 11 acquires the network status st from the information collection/storage device 30.
  • the network state s t is generated based on NFV environment information (traffic volume, resource usage, etc.) collected during a period of time (t- ⁇ t,t).
  • control application determination unit 14 determines the control engine a t ⁇ 1,...,N ⁇ to which application is permitted according to the policy of (Equation 3) above.
  • the information distribution unit 11 notifies each mediator i ⁇ 1,...,N ⁇ of the network state s t .
  • Each control engine i ⁇ 1,...,N ⁇ calculates the functional arrangement according to its internal logic, and notifies the integrated control algorithm A20 of the control request M i (x i,t ).
  • the control application judgment unit 14 receives a control request from the control engine at .
  • the comprehensive evaluation estimation unit 12 receives control requests M i (x i,t ) from all control engines, and calculates the state evaluation y i,t-1 given by the above (Equation 5).
  • the control permission target learning unit 13 calculates the sum r t of state evaluations, and updates the action value function Q(s',i) as shown in the above (Formula 2).
  • the control engine e is
  • the expected value of the cumulative cost by the FPL algorithm is given below with ⁇ as a parameter.
  • the mediator m stores, for example, network information acquired ten times, and processes it into a single piece of network information for one time by using an FPL algorithm or the like. and then sends it to the control engine e. Thereby, the problem can be solved.
  • the integrated control systems 10, 20 and integrated control devices A10, A20 can be realized by a computer and a program, but this program can also be recorded on a (non-temporary) recording medium or via a communication network such as the Internet. It is also possible to provide
  • the number of CPUs 101 is not limited to one, and may be plural.
  • Integrated control system A10 Integrated control algorithm (integrated control device) 11 Information distribution unit 12 Comprehensive evaluation estimation unit 13 Control permission destination learning unit 14 Control application judgment unit e, e1 to e3 Control engine A20 Integrated control algorithm (integrated control device) 21 Information distribution unit 22 Comprehensive evaluation estimation unit 23 Control permission destination learning unit 24 Control application judgment unit m, m1 to m3 Mediator 30 Information collection/storage device 50 Orchestrator 300 Physical network (network infrastructure, NFV environment) 310 General-purpose server 320 Node (transfer device) 330 User terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本開示で、物理ネットワーク上で異なる複数の仮想ネットワークを構築するための複数の制御エンジンを統合制御する統合制御装置は、物理ネットワークの状況を示すNFV環境情報を取得して複数の制御エンジンに配布することで、複数の制御エンジンから当該制御エンジンが所掌する複数の仮想ネットワークに関する制御依頼を受け付ける情報配布部と、複数の制御エンジンから受け取った制御依頼に基づき、現在の物理ネットワークの状況に対して複数の制御エンジンが求める制御依頼における制御指示の総数を集計する総合評価推定部と、総合評価推定部によって集計された前記制御指示の総数が前回の集計時に比べて少なくなるように、強化学習を利用して制御許可決定用の行動価値関数を更新する制御許可先学習部と、制御許可決定用の評価が変化した場合には、複数の制御エンジンのうちの所定の制御エンジンから受け取った所定の制御依頼を前記物理ネットワーク側へ転送する制御適用判断部とを有する。

Description

統合制御装置、統合制御システム、統合制御方法及びプログラム
 本開示内容は、物理ネットワーク(ネットワーク基盤=NFV環境)上で異なる目的の複数の仮想ネットワークを構築するための複数の制御エンジンを統合制御する技術に関する。
 ネットワークの各サービスは、サービス事業者又はネットワーク事業者(通信事業者)によって設計又は提供される制御アルゴリズムにより運用されている。
 将来的には、例えば、図6に示すように、ユーザ端末330と接続先サーバ310zの間のデータ伝送経路に関して、ネットワーク事業者が運営する単一の物理ネットワーク上で、一のサービス事業者が運営する仮想ネットワーク(経路長の最小化を目的とした制御アルゴリズム)と、他のサービス事業者が運営する仮想ネットワーク(設備の負荷分散を目的とした制御アルゴリズム)が独立して構築されることが考えられる。この場合、経路長の最小化を目的とした制御アルゴリズムでは、サーバ310aが各ノード(転送装置320、サーバ310x,310y)等の設備負荷状況を考慮せずに仮想ネットワークを構築する。一方、設備の負荷分散を目的とした制御アルゴリズムでは、サーバ310bが要求品質は考慮せずに、各ノード等の設備負荷状況を平準化するよう仮想ネットワークを構築する。
 ところが、単一の物理ネットワーク上で、異なった目的の複数の仮想ネットワークを構築しようとすると、図7に示すようなネットワーク制御の競合が生じる場合がある。例えば、図7に示すように、各ノード(転送装置)320a~320eのデータ転送可能な容量が「10」の場合であって、先に、設備の負荷分散を目的とした制御アルゴリズムを採用したサーバ310bが「10」のデータ容量を、「3」、「3」、「4」の各データ容量に分散して、ユーザ端末330bにデータを転送した状況を考える。この場合、後から、経路長の最小化を目的とした制御アルゴリズムを採用したサーバ310aが「10」のデータ容量を分散しないでそのまま転送すると、既にいずれのノード320a~320eも残りのデータ転送可能な容量は「10」もないため、ユーザ端末330aにデータ転送するための仮想ネットワークを構築しようとしても、リソースが不足しているという問題が生じてしまう。
 これに対して、図8に示すようなネットワーク制御の協調により、上記問題を解決することができる。例えば、図8のように、図7と同じ物理ネットワークであっても、サーバ310aが、ノード320a,320dを使用して「10」のデータ容量のデータ転送を行った後、サーバ310bが、サーバ310aによって使用されなかったノード320b,320c,320eを使用する仮想ネットワークを構築すれば、「10」のデータ容量を、「5」、「5」の各データ容量に分散してデータ転送しても、それぞれの目的を達成することができる。
 そのため、ネットワーク制御の協調を実現すべく、従来、非特許文献1に示す技術が提案されている。ここで、図9及び図10を用いて、従来の仮想ネットワーク制御について説明する。図9は、従来のネットワークの全体構成を示す図である。図10は、従来の統合制御エンジン200の機能構成例を示す図である。
 図9に示すように、統合制御システム10は、ネットワーク基盤としての物理ネットワーク300と接続される。物理ネットワーク300は、汎用サーバ310、ノード(転送装置)320、及びユーザ端末330が含まれるネットワーク環境である。統合制御システム100は、統合制御エンジン200を有する1以上のコンピュータである。統合制御システム10は、統合制御エンジンにより、物理ネットワーク300上の仮想ネットワークを制御する。統合制御システム10は、情報収集・蓄積装置30を介して、物理ネットワーク300から、ネットワーク状態(状況)を示すネットワーク情報を取得し、統合制御エンジン200により算出した制御結果及び設定命令を、オーケストレータ50を介して物理ネットワークの各ノード320に送信することで、ネットワーク制御の協調を実現している。
 具体的には、図10に示すように、統合制御エンジン200は、NFV環境情報(ネットワーク構成情報、ユーザ需要、ネットワーク観測情報(トラヒック情報、サーバ利用情報等))に基づき、最適な汎用サーバ310への仮想リソースや仮想機能の割当、及び、最適な経路を計算する。統合制御エンジン200は、モジュール化された各種制御エンジンe100(e101~e105等)との連携を前提に、各種制御エンジン間の情報共有を行うための情報共有エンジン400にて実現される。情報共有エンジン400は、学習指示エージェント410、各制御エージェント430(431,432,433,434,435等)、総合評価算出部450、入出力変換部460を有している。
 これらのうち、学習指示エージェント410は、総合評価に基づいて各制御エージェントの選択を学習する。各制御エージェント430は、総合評価に基づいて、各制御エンジンe100の解の変更を学習する。総合評価算出部450は、各制御エンジンe100の評価から、総合評価である報酬を計算する。入出力変換部460は、各制御エンジンe100の入出力の形式を変換する。入出力変換部460の定式化は、各制御エンジンe100の組合せごとに行う。
 このようにして、非特許文献1では、情報共有エンジン400が、各制御エンジンe100から上述の各種情報を収集し、それぞれの解がどのように制御したいのかということを認識した上で、各制御エンジンの各制御アルゴリズムが持っている目的関数を評価しながら解を変更する。次に、情報共有エンジン400が、この変更した解を各制御エンジンe100に送ることで、各制御エンジンe100が新たな解を求める。再度、情報共有エンジン400が各制御エンジンe100から上述の各種情報を収集する処理を繰り返すことで、最終的な解を決めることができる。但し、非特許文献1では、各制御エンジンe100が持つ各制御アルゴリズムには、制御ポリシ(品質の向上、リソース効率の向上等)及び制約条件(サービス提供条件、リンク容量、サーバ容量等)が開示されていることを前提としている。
Akito Suzuki, Ryoichi Kawahara, Masahiro Kobayashi, Yousuke Takahashi, Shigeaki Harada, and Keisuke Ishibashi, "Extendable NFV-Integrated Control Method Using Reinforcement Learning," IEICE Trans. Communications, vol. E103-B, no. 8, pp. 826-841, Aug. 2020.
 しかしながら、例えば、サードパーティーが制御エンジン(制御アルゴリズム)を作成する場合、制御エンジンの制御ポリシや制約条件等が必ずしもネットワーク事業者側に開示されているわけではない。そのため、非特許文献1に開示の技術では、各制御エンジンの評価を計算することや各制御エンジンの解の変更を学習することができない場合があるという課題が生じる。
 本発明は、上述の事情に鑑みてなされたもので、制御エンジンの制御ポリシや制約条件等の開示が無くても、全ての制御エンジンを対象とした制御完了状態(個々の制御ポリシが満たされた最適な状態、又は全体としてそれ以上改善することが不可能な状態)までの統合制御を効率よく実施することを目的とする。
 上記目的を達成するため、請求項1に係る発明は、物理ネットワーク上で異なる複数の仮想ネットワークを構築するための複数の制御エンジンを統合制御する統合制御装置であって、前記物理ネットワークの状況を示すNFV環境情報を取得して前記複数の制御エンジンに配布することで、前記複数の制御エンジンから前記複数の仮想ネットワークに関する制御依頼を受け付ける情報配布部と、前記複数の制御エンジンから受け取った前記制御依頼に基づき、現在の前記物理ネットワークの状況に対して前記複数の制御エンジンからの前記制御依頼における制御指示の総数を集計する総合評価推定部と、前記総合評価推定部によって集計された前記制御指示の総数が前回の集計時に比べて少なくなるように、強化学習を利用して制御許可決定用の行動価値関数を更新する制御許可先学習部と、前記制御許可決定用の評価が変化した場合には、前記複数の制御エンジンのうちの所定の制御エンジンから受け取った所定の制御依頼を前記物理ネットワーク側へ転送する制御適用判断部と、を有する統合制御装置である。
 以上説明したように本発明によれば、制御エンジンの制御ポリシや制約条件等の開示が無くても、全ての制御エンジンを対象とした制御完了状態までの統合制御を効率よく実施することができるという効果を奏する。
第1の実施形態に係る通信システムの全体構成図である。 統合制御システムの電気的なハードウェア構成図である。 第1の実施形態に係る統合制御の処理を示すフローチャートである。 第2の実施形態に係る通信システムの全体構成図である。 第2の実施形態に係る統合制御の処理を示すフローチャートである。 物理ネットワーク上で異なる目的の複数の仮想ネットワークを構築する場合概念図である。 物理ネットワーク上で異なる目的の複数の仮想ネットワークを構築する場合に、ネットワーク制御の競合が生じたときの概念図である。 物理ネットワーク上で異なる目的の複数の仮想ネットワークを構築する場合に、ネットワーク制御の協調を行う場合の概念図である。 従来の通信システムの全体構成を示す図である。 従来の統合制御エンジン200の機能構成図である。
 以下、図面を用いて本発明の実施形態を説明する。
 ●第1の実施形態
 まずは、本発明の第1の実施形態について説明する。
 〔実施形態のシステム構成〕
 図1を用いて、第1の実施形態の通信システムの構成の概略について説明する。図1は、第1の実施形態に係る通信システムの全体構成図である。
 図1に示されているように、本実施形態の通信システムは、統合制御システム10、情報収集・蓄積装置30、オーケストレータ50、ネットワーク基盤としての物理ネットワーク300によって構築されている。
 物理ネットワーク300は、ネットワーク事業者によって管理及び運営されており、複数の汎用サーバ310、複数のノード(転送装置)320、及び複数のユーザ端末330によって構築されている。
 これらのうち、汎用サーバ310は、単一又は複数のコンピュータによって構築されており、オーケストレータ50を介して統合制御システム10により設定される仮想リソース(VR:Virtual Resource)や仮想ネットワーク機能(VNF:Virtual Network Function)を実現する。VRとしては、例えば、CPU(Central Processing Unit)やHDD(Hard Disk Drive)、GPU(Graphics Processing Unit)、FPGA(Field Programmable Gate Array)等を組み合わせたVM(Virtual Machine)が挙げられる。また、VNFとしては、例えば、CPE(Customer Premises Equipment)、FW(Firewall)、LB(Load Balancer)、DPI(Deep Packet Inspection)、Proxy、IDS(Intrusion Detection System)、NAT(Network Address Translation)等が挙げられる。汎用サーバ310は、サーバ利用情報を取得し、情報収集・蓄積装置30を介してサーバ利用情報を統合制御システム10に送信する。また、汎用サーバ310は、オーケストレータ50を介して統合制御システム10により設定されたVR及びVNFに従ってトラヒックを処理し、トラヒックを発生させる。
 ノード320は、スイッチやサーバ等の転送装置であり、トラヒックを転送する転送装置として機能する。ノード320は、トラヒック情報を取得し、情報収集・蓄積装置30を介してトラヒック情報を統合制御システム10に送信する。また、ノード320は、統合制御システム10により算出された経路に従ってトラヒックを処理する。
 ユーザ端末330は、単一又は複数のコンピュータによって構築されており、ユーザの通信行動(例えば、サービスの利用開始操作等)により発生したトラヒック需要を、他のユーザ端末330や汎用サーバ310等に送信する。また、ユーザ端末330は、情報収集・蓄積装置30を介してユーザ需要を統合制御システム10に送信する。
 仮想ネットワークとは,提供するサービスにあわせてVR、VNF、及びユーザ端末を組み合わせた論理的なネットワークであり,VRやVNFを汎用サーバに設定し、トラヒックが転送されることで各種サービスが実現される。
 なお、サーバ利用情報とは、汎用サーバ310の物理リソース(例えばCPUやメモリ等)の利用率等である。トラヒック情報とは、物理ネットワーク300に含まれる任意のリンクのデータ量等である。ユーザ需要とは、VR及びVNFの需要情報(ユーザ端末330毎に必要なVR及びVNFの量)、サービスの制約条件(ユーザ端末330毎に経由する必要があるVR及びVNF)等である。
 情報収集・蓄積装置30は、ネットワーク事業者によって管理及び運営されており、単一又は複数のコンピュータによって構築されている。情報収集・蓄積装置30は、物理ネットワーク300や各種リソースの負荷状況を一元的に監視する。そのため、情報収集・蓄積装置30は、物理ネットワーク300から、ネットワーク観測情報(トラヒック情報やサーバ利用情報等)及びユーザ需要を取得及び蓄積すると共に、統合制御システムに転送する。
 オーケストレータ50は、ネットワーク事業者によって管理及び運営されており、単一又は複数のコンピュータによって構築されている。オーケストレータ50は、物理ネットワーク300への制御指示を一元的に受付及び適用する。例えば、オーケストレータ50は、ネットワーク機器(ルータ、スイッチ、仮想サーバ等)に制御信号を送って、ソフトウェア的にリアルタイムで仮想ネットワークを制御変更する。そのため、統合制御システム10から、統合制御システム10により算出された最適な配置及び最適な経路を示す解(制御解)に応じた制御結果及び設定命令を取得し、各汎用サーバ310及び各ノード320に送信することで、様々な種別のネットワークサービスを提供することが可能なNFV(Network Functions Virtualization)環境の制御が行われる。オーケストレータ50は、「リソースオーケストレーション」及び「サービスオーケストレーション」と呼ばれる機能によりVR及びVNFの制御を行う。リソースオーケストレーションとは、物理ネットワーク上にVR及びVNFを配置する機能のことである。サービスオーケストレーションとは、VRやVNF間を繋ぐEnd-to-Endの経路を算出する機能のことである。
 統合制御システム10は、単一又は複数のコンピュータによって構築されており、ネットワーク事業者によって管理されている。統合制御システム10は、ネットワーク事業者自身が作成した制御エンジン、サービス事業者等のサードパーティーが作成した制御エンジン等である複数の制御エンジンe1,e2,e3を有している。以降、制御エンジンe1,e2,e3の総称は、「制御エンジンe」と示す。各制御エンジンeは、個別独立したサービスの機能配置を計算する。
 各制御エンジンeは、それぞれ独自の制御アルゴリズムによって実行される。なお、図1では、紙面の都合上3つの制御エンジンが開示されているが、2つでもよく、4つ以上でもよい。また、統合制御システム10は、統合制御アルゴリズムA10を有している。また、制御エンジンeは、統合制御アルゴリズムとは別のサーバ(個別制御装置)で構築されていてもよい。
 統合制御アルゴリズムA10は、リソースオーケストレーション及びサービスオーケストレーションの実現に向けて、NFVオーケストレータに設定命令を行うアルゴリズムである。統合制御アルゴリズムA10は、複数の制御エンジンのうちの単一の所定の制御エンジンを選択し、この選択した単一の制御エンジンからの制御依頼(制御結果及び設定命令)を、オーケストレータ50を介して物理ネットワーク300に適用する。なお、本実施形態の各制御エンジンeは、単独で仮想ネットワークを構築するために、経路、VR、及びVNFの全ての制御依頼を行うことができる点で、経路、VR、及びVNFのいずれかの制御依頼しか行うことができない従来の制御エンジンe100(図10参照)と異なる前提を置いている。
 このように、統合制御システム10は、統合制御アルゴリズムA10を用いて、物理ネットワーク300上におけるVR及びVNFの最適な配置と、これらVR及びVNF間を繋ぐEnd-to-Endの最適な経路とを算出することで、NFV環境を制御する。このとき、統合制御システム10は、物理ネットワーク300から受信したネットワーク観測情報(トラヒック情報やサーバ利用情報等)及びユーザ需要と、ネットワーク構成情報とに基づいて、VR及びVNFの最適な配置と、最適な経路とを算出する。
 なお、ネットワーク構成情報とは、物理ネットワーク300のネットワークトポロジー情報や、リソースの制約条件(例えば、物理ネットワーク300に含まれる各物理リソースの量(各汎用サーバ310のサーバ容量や各ノード320のリンク容量等))である。統合制御アルゴリズムA10により実現される各機能に関しては、後述する。なお、統合制御アルゴリズムA10は、各制御エンジンeとは別のサーバ(統合制御装置)に構築されていてもよい。
 〔ハードウェア構成〕
 次に、図2を用いて、統合制御システム10の電気的なハードウェア構成を説明する。図2は、統合制御システムの電気的なハードウェア構成図である。
 統合制御システム10は、コンピュータとして、図2に示されているように、CPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、SSD(Solid State Drive)104、外部機器接続I/F(Interface)105、ネットワークI/F106、メディアI/F109、及びバスライン110を備えている。
 これらのうち、CPU101は、統合制御システム10全体の動作を制御する。ROM102は、IPL(Initial Program Loader)等のCPU101の駆動に用いられるプログラムを記憶する。RAM103は、CPU101のワークエリアとして使用される。
 SSD104は、CPU101の制御に従って各種データの読み出し又は書き込みを行う。なお、SDD104の代わりに、HDD(Hard Disk Drive)を用いても良い。
 外部機器接続I/F105は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、ディスプレイ、スピーカ、キーボード、マウス、USB(Universal Serial Bus)メモリ、及びプリンタ等である。
 ネットワークI/F106は、物理ネットワーク300等の通信ネットワークを介してデータ通信をするためのインターフェースである。
 メディアI/F109は、フラッシュメモリ等の記録メディア109mに対するデータの読み出し又は書き込み(記憶)を制御する。記録メディア109mには、DVD(Digital Versatile Disc)やBlu-ray Disc(登録商標)等も含まれる。
 バスライン110は、図2に示されているCPU101等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
 なお、情報収集・蓄積装置30、オーケストレータ50、汎用サーバ310、ノード320、ユーザ端末330は、統合制御システム10と同様の構成を有するため、ハードウェア構成の説明は省略する。
 〔統合制御システムの機能構成〕
 続いて、図1を用いて、本実施形態に係る統合制御システム10の機能構成について説明する。統合制御システム10は、各制御エンジンeの制御ポリシ及び制約条件に関する情報を利用せずに、各制御エンジンeが出力した制御依頼から各制御エンジンeが保持している現在のネットワーク状態に対する評価を推定する。
 具体的には、該当する制御エンジンeから受け取ったオーケストレータへの制御指示数を、その制御エンジンeが満たすべき制御ポリシ又は最適な状態との乖離量とみなす。
 統合制御システム10は、統合制御が収束するまで、統合制御アルゴリズムA10によって実現される機能による処理を繰り返し実施する。
 この統合制御アルゴリズムA10によって、情報配布部11、総合評価推定部12、制御許可先学習部13、制御適用判断部14の各機能を実現することができる。
 これらのうち、情報配布部11は、情報収集・蓄積装置30から物理ネットワークのネットワーク状態を示すNFV環境情報(ネットワーク観測情報、ユーザ需要等)を取得して複数の制御エンジンeに配布することで、複数の制御エンジンeから各制御エンジンが所掌する仮想ネットワークに関する制御依頼を受け付ける。
 総合評価推定部12は、複数の制御エンジンeから受け取った制御依頼に基づき、現在のネットワーク状況に対して複数の制御エンジンeが求める制御指示の総数を集計する。制御指示は、仮想ネットワークを1つの単位としても良いし、仮想ネットワークを構成するVR及びVNFの配置変更、又はトラヒック経路の変更等の個々の要素を1つの単位としても良いが、各制御エンジンで共通の単位を用いる。例えば、制御エンジンe1が2つの仮想ネットワークに対する制御指示を含む制御依頼を行い、制御エンジンe2が3つの仮想ネットワークに対する制御指示を含む制御依頼を行い、制御エンジンe3が4つの仮想ネットワークに対する制御指示を含む制御依頼を行った場合、制御指示の総数(累積数)は、9(=2+3+4)となる。
 制御許可先学習部13は、総合評価推定部12によって集計された前記制御指示の総数が前回の集計時に比べて少なくなるように、強化学習を利用して制御許可決定用の行動価値関数を更新する。統合制御アルゴリズムA10から、オーケストレータ50を介して物理ネットワークへ転送できるのは、複数の制御エンジンeのうちの所定の制御エンジンによる制御依頼だけである。そのため、制御許可先学習部13は、各制御エンジンeからの制御指示の総数が前回よりも少なくなるように、複数の制御エンジンeから所定の制御エンジンe(制御依頼)を決めることで、後述のS11~S20の統合制御を収束させる。
 制御適用判断部14は、制御許可決定用の評価が変化した場合には、複数の制御エンジンeのうちの所定の制御エンジンeから受け取った所定の制御依頼をオーケストレータ50へ転送することで、物理ネットワーク側へ転送する。これにより、所定の制御依頼を物理ネットワーク300へ適用させることができる。このように処理することで、次の処理では、例えば、制御エンジンe1が1つの制御指示を含む制御依頼を行い、制御エンジンe2が2つの制御指示を含む制御依頼を行い、制御エンジンe3が2つの制御指示を含む制御依頼を行った場合、制御指示の総数(累積数)は、6(=1+2+3)となり、前回の総数「9」よりも少なくなっているため、徐々に統合処理が収束する。
 〔統合制御システムの処理又は動作〕
 続いて、図3を用いて、第1の実施形態に係る統合制御システム10の処理又は動作について説明する。図3は、第1の実施形態に係る統合制御の処理を示すフローチャートである。
 S11:情報収集・蓄積装置30は、NFV環境情報(ネットワーク観測情報及びユーザ需要等)を収集する。
 S12:情報配布部11は、情報収集・蓄積装置30から取得したNFV環境情報を各制御エンジンeへ配布する。
 ここで、各制御エンジンeの処理を説明する。
  S101:制御エンジンe1は、情報配布部11から、NFV環境情報を受け取る。
  S102:制御エンジンe1は、非開示の制御内容の演算を行う。
  S103:制御エンジンe1は、情報配布部11に対して制御依頼を送信する。
 このS101~103の処理は、制御エンジンe2,e3によっても行われる。
 S13:情報配布部11は、各制御エンジンeからの制御依頼を受け付ける。
 S14:総合評価推定部12は、各制御依頼における制御指示数を集計する。
 S15:総合評価推定部12は、各制御エンジンeにおける、前回の制御適用判断時の制御指示数と今回の制御指示数の差分を計算する。
 S16:制御許可先学習部13は、前回の制御適用許可に対する評価を更新する。
 S17:制御適用判断部14は、前回と今回で評価が変化したか否かを判断する。
 S18:制御適用判断部14がステップS17で評価が変化したと判断した場合(YES)、制御適用判断部14は、各制御エンジンeから受け取った制御依頼(評価結果及び設定命令)のうち、評価に基づき適用許可を与える制御依頼を1つ決定し、この1つ制御依頼をオーケストレータ50へ転送する。
 S19:オーケストレータ50は、制御適用判断部14から受け取った1つの制御依頼を物理ネットワーク300へ適用する。
 S20:オーケストレータ50は、適用完了を確認する。その後は、ステップS11の処理に戻る。このステップS11~S20,S101~S103は、評価が変化しなくなるまで(S17:NO)、繰り返される。
 一方、ステップS17で、制御適用判断部14が、評価が変化したと判断しなかった場合、つまり評価が変化しなかったと判断した場合(NO)、制御適用判断部14は、どの制御エンジンeからの制御依頼も不採用とし、一旦制御を終了する。その後は、ステップS11の処理に戻る。そして、情報収集・蓄積装置30は、NFV環境情報(ネットワーク観測情報及びユーザ需要)を収集して(S11)、評価が変化し始めると(S17;YES)、制御適用判断部14は、各制御エンジンeから受け取った制御依頼(評価結果及び設定命令)のうち、評価に基づき適用許可を与える制御依頼を1つ決定し、この1つ制御依頼をオーケストレータ50へ転送する。
 以上により、第1の実施形態に係る統合制御の処理の説明を終了する。
 〔処理の具体例〕
 続いて、第1の実施形態に係る統合制御の処理の具体例について2種類説明する。
 <具体例1―1>
 まず、第1の実施形態に係る統合制御の処理の具体例1―1を説明する。
 ある一定の時間間隔Δtにより時刻を離散化し、t(=(t-Δt,t))で表す。Δtは、各制御エンジンの応答時間及びオーケストレータ50によるネットワーク制御適用時間よりも長いものとする。また、制御エンジン数をNとする。時刻tにおける処理として、統合制御アルゴリズムA10は、時刻t-1における各制御エンジンiの制御依頼Mi(xt-1)を保持してるものとする。
 S111:情報配布部11は、情報収集・蓄積装置30からネットワーク状態stを取得し、各制御エンジンi∈{1,…,N}にネットワーク状態stを通知する。ネットワーク状態stは、時刻(t-Δt,t)の期間に収集されたNFV環境情報(トラヒック量、リソース使用量等)に基づき生成される。
 S112:各制御エンジンi∈{1,…,N}は、内部ロジックに従って機能配置を計算し、統合制御アルゴリズムA10へ制御依頼Mi(xt)を通知する。
 S113:総合評価推定部12は、全ての制御エンジンから制御依頼Mi(xt)を受け取り、(式1)で与えられる状態評価yi,t-1を計算する。
Figure JPOXMLDOC01-appb-M000001
 ここで、|M(x)|は、制御依頼がM(x)であるときのオーケストレータ50への制御指示数とする。
 S114:制御許可先学習部13は、状態評価の総和rtを計算し、(式2)で示すように行動価値関数Q(s',i)を更新する。
Figure JPOXMLDOC01-appb-M000002
 ここで、s'tは,stを離散化したベクトルとする。
 S115:制御適用判断部14は、ネットワーク状態s'tに基づき、(式3)の方策に従い適用許可先の制御エンジンat∈{1,…,N}を決定し、制御依頼
Figure JPOXMLDOC01-appb-M000003
をオーケストレータ50へ転送する。
Figure JPOXMLDOC01-appb-M000004
 ここで、ε は別途与えるパラメータとする。
 なお、前回(時刻t-1)の決定によって系全体としての制御指示数がどの程度下がったかの評価(S111~S113)をQ関数に反映(S114してから、現時点(時刻t)の適用許可先(S115)を決定するため、後述の具体例1-2と比較して、1時刻分だけ制御適用先決定時の情報量が多い。但し、解算出のレスポンスが遅い制御エンジンがあると、前段のQ関数更新に時間がかかり、適用許可先決定までに時間を要する。
 以上により、第1の実施形態に係る統合制御の処理の具体例1-1の説明を終了する。
 <具体例1-2>
 続いて、第1の実施形態に係る統合制御の処理の具体例1-2を説明する。
 上記具体例1-1と同様の条件、即ち、ある一定の時間間隔Δtにより時刻を離散化し、t(=(t-Δt,t))で表す。Δtは、各制御エンジンの応答時間及びオーケストレータ50によるネットワーク制御適用時間よりも長いものとする。また、制御エンジン数をNとする。時刻tにおける処理として、統合制御アルゴリズムA10は、時刻t-1における各制御エンジンiの制御依頼Mi(xt-1)を保持してるものとする。
 S121:情報配布部11は、情報収集・蓄積装置30からネットワーク状態stを取得する。ネットワーク状態stは、時刻(t-Δt,t)の期間に収集されたNFV
環境情報(トラヒック量、リソース使用量等)に基づき生成される。
 S122:制御適用判断部14は、ネットワーク状態s'tに基づき、上記(式3)の方策に従い適用許可先の制御エンジンat∈{1,…,N}を決定する。
 S123:情報配布部11は、各制御エンジンi∈{1,…,N}にネットワーク状態stを通知する。
 S124:各制御エンジンi∈{1,…,N}は、内部ロジックに従って機能配置を計算し、統合制御アルゴリズムA10へ制御依頼Mi(xt)を通知する。
 S125:制御適用判断部14は、制御エンジンat から制御依頼
Figure JPOXMLDOC01-appb-M000005
を受け取り次第、オーケストレータ50へ転送する。
 S126:総合評価推定部12は、全ての制御エンジンから制御依頼Mi(xt)を受け取り、上記(式1)で与えられる状態評価yi,t-1を計算する。ここで、|M(x))|は制御依頼がM(x)であるときのオーケストレータ50への制御指示数とする。
 S127:制御許可先学習部13は、状態評価の総和rtを計算し、上記(式2)で示すように行動価値関数Q(s',i)を更新する。
 なお、前回(時刻t-1)までのQ関数に基づいて制御適用先の決定(S121~S125)を行ってから前回の決定に対してQ関数を更新(S126,S127)するため、制御依頼の適用にあたっては、上述の具体例1-1と比べてレスポンスが早い。但し、選択された制御アルゴリズムのレスポンスが遅い場合には、具体例1-1と同等になる。また、前回の決定に対する評価(Q関数の更新)が今回の決定の後となることで、状況変化への追従性が下がる。
 〔第1の実施形態の効果〕
 以上説明したように、本実施形態の統合制御システム10は、制御エンジンの制御ポリシや制約条件に関する情報を利用せずに、各制御エンジンが出力した制御依頼から各制御エンジンが保持している現在のネットワーク状態に対する評価推定を実現する。そして、統合制御システム10は、その結果を踏まえ、各制御エンジンから受け取った制御依頼を、ネットワーク基盤(物理ネットワーク300)への制御指示を行うオーケストレータへ転送する。これにより、統合制御システム10は、制御エンジン側のアルゴリズムの開示を受けなくても、全ての制御エンジンを対象とした制御完了状態(個々の制御ポリシが満たされた最適な状態、もしくは全体としてそれ以上改善することが不可能な状態)までの統合制御を効率よく実施することが可能となるという効果を奏する。
 ●第2の実施形態
 次に、本発明の第2の実施形態について説明する。なお、第2の実施形態は、第1の実施形態の変形例であり、第2の実施形態に係る統合制御システム20は、第1の実施形態に係る統合制御システム10に対して、メディエータm1,m2,m3が追加されている。なお、ここでは、3つのメディエータm1,m2,m3が示されているが、2つであっても良いし、4つ以上であってもよい。また、メディエータm1,m2,m3の総称を「メディエータm」と示す。メディエータmは、制御エンジンe毎に設けられている。
 〔実施形態のシステム構成〕
 図4を用いて、第2実施形態の通信システムの構成の概略について説明する。図4は、第2の実施形態に係る通信システムの全体構成図である。
 図14示されているように、本実施形態の通信システムは、統合制御システム20、情報収集・蓄積装置30、オーケストレータ50、ネットワーク基盤としての物理ネットワーク300によって構築されている。なお、第1の実施形態と同様の装置、構成又は機能は、同一の記号を付して説明を省略する。
 統合制御システム20は、単一又は複数のコンピュータによって構築されており、ネットワーク事業者によって管理されている。統合制御システム20は、ネットワーク事業者自身が作成した制御エンジン、サードパーティーであるサービス事業者が作成した制御エンジン等である複数の制御エンジンeを有している。また、統合制御システム20は、統合制御アルゴリズムA20及び複数のメディエータmを有している。
 統合制御アルゴリズムA20は、基本的に第1の実施形態に係る統合制御アルゴリズムA10と同様の役割を果たす。統合制御アルゴリズムA20と統合制御アルゴリズムA10の相違点は後述する。
 メディエータmは、情報収集・蓄積装置30から受け取ったNFV環境情報に対し、各制御エンジンeに対する制御許可頻度に応じた調整量を加算することでNFV環境情報を加工して、各制御エンジンeに配布する。即ち、メディエータmは、情報配布部21が出力した複数のNFV環境情報に基づいて所定の単一のNFV環境情報に加工し、加工後のNFV環境情報を各制御エンジンeに配布する。例えば、メディエータmは、後述のFPL(Follow the Perturbed Leader)アルゴリズムを用いて、複数のNFV環境情報に一様ランダムな値を加えて平均を取ることで加工後のNFV環境情報を得る。
 〔統合制御システムの機能構成〕
 本実施形態では、統合制御アルゴリズムA20が学習した行動価値関数に基づき、制御適用許可先を決定する。そのため、制御エンジンe間で制御適用許可を受ける頻度も異なれば、制御許可を得られない期間に該当制御エンジンeが受け持つサービスの状況が悪化する可能性がある。そこで、本実施形態では、オンライン意思決定法を活用することで、各制御エンジンeの時間平均性能を改善する。具体的には、統合制御システム20は、統合制御アルゴリズムA20と各制御エンジンeの間にそれぞれの制御エンジン用のメディエータeを用い、制御エンジンeに配布する情報に対して、制御許可頻度に応じた大きさの調整量を加えることで、一時的なネットワーク状態に強く依存しない解を制御エンジンeに算出させる。
 統合制御システム20は、統合制御が収束するまで、統合制御アルゴリズムA20によって実現される機能による処理を繰り返し実施する。
 この統合制御アルゴリズムA20によって、情報配布部21、総合評価推定部22、制御許可先学習部23、及び制御適用判断部24の各機能を実現することができる。情報配布部21、総合評価推定部22、制御許可先学習部23、及び制御適用判断部24は、それぞれ基本的に、情報配布部11、総合評価推定部12、制御許可先学習部13、及び制御適用判断部14と同様の機能である。但し、情報配布部21は、各メディエータmを介することで、各制御エンジンeに加工後のNFV環境情報を配布することができる。また、総合評価推定部22は、各制御エンジンeから各メディエータmを介して制御依頼(制御指示)を受け取る。
 〔統合制御システムの処理又は動作〕
 続いて、図5を用いて、第2の実施形態に係る統合制御システム20の処理又は動作について説明する。図5は、第2の実施形態に係る統合制御の処理を示すフローチャートである。
 S31:情報収集・蓄積装置30は、物理ネットワークのネットワーク状態を示すNFV環境情報(ネットワーク観測情報及びユーザ需要等)を収集する。
 S32:情報配布部21は、情報収集・蓄積装置30から取得したNFV環境情報を各メディエータmに送信する。また、各メディエータmは、NFV環境情報を加工して、対応する各制御エンジンeへ配布する。
 ここで、各制御エンジンeの処理を説明する。
  S201:制御エンジンe1は、メディエータe1から、加工後のNFV環境情報を受け取る。
  S202:制御エンジンe1は、非開示の制御内容の演算を行う。
  S203:制御エンジンe1は、情報配布部11に対して制御依頼を送信する。
 このS201~203の処理は、制御エンジンe2,e3によっても行われる。
 S33:各メディエータmは、各制御エンジンeからの制御依頼を受け付け、総合評価推定部22に渡す。
 S34:総合評価推定部22は、各制御依頼における制御指示数を集計する。
 S35:総合評価推定部22は、各制御エンジンeにおける、前回の制御適用判断時の制御指示数と今回の制御指示数の差分を計算する。
 S36:制御許可先学習部23は、前回の制御適用許可に対する評価を更新する。
 S37:制御適用判断部24は、前回と今回で評価が変化したか否かを判断する。
 S38:制御適用判断部24がステップS37で評価が変化したと判断した場合(YES)、制御適用判断部24は、各制御エンジンeから受け取った制御依頼(評価結果及び設定命令)のうち、評価に基づき適用許可を与える制御依頼を1つ決定し、この1つ制御依頼をオーケストレータ50へ転送する。
 S39:オーケストレータ50は、制御適用判断部24から受け取った1つの制御依頼を物理ネットワーク300へ適用する。
 S40:オーケストレータ50は、適用完了を確認する。その後は、ステップS31の処理に戻る。このステップS31~S40,S201~S203は、評価が変化しなくなるまで(S37:NO)、繰り返される。
 一方、ステップS37で、制御適用判断部24が、評価が変化したと判断しなかった場合、つまり評価が変化しなかったと判断した場合(NO)、制御適用判断部24は、どの制御エンジンeからの制御依頼も不採用とし、一旦制御を終了する。その後は、ステップS31の処理に戻る。そして、情報収集・蓄積装置30は、NFV環境情報(ネットワーク観測情報及びユーザ需要)を収集して(S31)、評価が変化し始めると(S37;YES)、制御適用判断部24は、各制御エンジンeから受け取った制御依頼(評価結果及び設定命令)のうち、評価に基づき適用許可を与える制御依頼を1つ決定し、この1つ制御依頼をオーケストレータ50へ転送する。
 以上により、第2の実施形態に係る統合制御の処理の説明を終了する。
 〔処理の具体例〕
 続いて、第2の実施形態に係る統合制御の処理の具体例について2種類説明する。
 <具体例2―1>
 まず、第2の実施形態に係る統合制御の処理の具体例2―1を説明する。
 上記具体例1-1と同様の条件、即ち、ある一定の時間間隔Δtにより時刻を離散化し、t(=(t-Δt,t))で表す。Δtは、各制御エンジンの応答時間及びオーケストレータ50によるネットワーク制御適用時間よりも長いものとする。また、制御エンジン数をNとする。時刻tにおける処理として、統合制御アルゴリズムA20は、時刻t-1における各制御エンジンiの制御依頼Mi(xt-1)を保持してるものとする。
 S211:情報配布部11は、情報収集・蓄積装置30からネットワーク状態stを取得し、各メディエータi∈{1,…,N} にネットワーク状態stを通知する。ネットワーク状態stは、時刻(t-Δt,t)の期間に収集されたNFV環境情報(トラヒック量、リソース使用量等)に基づき生成される。
 S212:各メディエータi∈{1,…,N}は、(式4)で与えられる加工済のネットワーク状態xi,tを各制御アルゴリズムMiに通知する。
Figure JPOXMLDOC01-appb-M000006
 この場合、xi,tは、後述のFPL(Follow the Perturbed Leader)アルゴリズムに基づいている。
 S213:各制御エンジンi∈{1,…,N}は、内部ロジックに従って機能配置を計算し、各メディエータを介して統合制御アルゴリズムA20へ制御依頼Mi(xi,t)を通知する。
 S214:総合評価推定部12は、全ての制御エンジンから制御依頼Mi(xi,t)を受け取り、(式5)で与えられる状態評価yi,t-1を計算する。
Figure JPOXMLDOC01-appb-M000007
 ここで、|M(x)|は、制御依頼がM(x)であるときのオーケストレータ50への制御指示数とする。
 S215:制御許可先学習部13は、状態評価の総和rtを計算し、上記(式2)で示すように行動価値関数Q(s',i))を更新する。
 S216:制御適用判断部14は、ネットワーク状態s'tに基づき、上記(式3)の方策に従い適用許可先の制御エンジンat∈{1,…,N}を決定し、制御依頼
Figure JPOXMLDOC01-appb-M000008
をオーケストレータ50へ転送する。
 なお、この具体例2-1では、ネットワーク情報の加工に後述のFPLアルゴリズムを利用しているが、例えば回帰分析などを活用した予測アルゴリズムに置き換えても良い。
 以上により、第2の実施形態に係る統合制御の処理の具体例2-1の説明を終了する。
 <具体例2-2>
 続いて、第2の実施形態に係る統合制御の処理の具体例2-2を説明する。
 上記具体例1-1と同様の条件、即ち、ある一定の時間間隔Δtにより時刻を離散化し、t(=(t-Δt,t))で表す。Δtは、各制御エンジンの応答時間及びオーケストレータ50によるネットワーク制御適用時間よりも長いものとする。また、制御エンジン数をNとする。時刻tにおける処理として、統合制御アルゴリズムA20は、時刻t-1における各制御エンジンiの制御依頼Mi(xt-1)を保持してるものとする。
 S221:情報配布部11は、情報収集・蓄積装置30からネットワーク状態stを取得する。ネットワーク状態stは、時刻(t-Δt,t)の期間に収集されたNFV環境情報(トラヒック量、リソース使用量等)に基づき生成される。
 S222:制御適用判断部14は、ネットワーク状態s'tに基づき、上記(式3)の方策に従い適用許可先の制御エンジンat∈{1,…,N}を決定する。
 S223:情報配布部11は、各メディエータi∈{1,…,N}にネットワーク状態stを通知する。
 S224:各メディエータi∈{1,…,N}は、上記(式4)で与えられる加工済のネットワーク状態xi,tを各制御アルゴリズムMiに通知する。
 S225:各制御エンジンi∈{1,…,N}は、内部ロジックに従って機能配置を計算し、統合制御アルゴリズムA20へ制御依頼Mi(xi,t)を通知する。
 S226:制御適用判断部14は、制御エンジンat から制御依頼
Figure JPOXMLDOC01-appb-M000009
を受け取り次第、オーケストレータ50へ転送する。
 S227:総合評価推定部12は、全ての制御エンジンから制御依頼Mi(xi,t)を受け取り、上記(式5)で与えられる状態評価yi,t-1を計算する。
 S228:制御許可先学習部13は、状態評価の総和rtを計算し、上記(式2)で示すように行動価値関数Q(s',i)を更新する。
 なお、この具体例2-2では、具体例2-1と同様に、ネットワーク情報の加工に後述のFPLアルゴリズムを利用しているが、例えば回帰分析などを活用した予測アルゴリズムに置き換えても良い。
 以上により、第2の実施形態に係る統合制御の処理の具体例2-2の説明を終了する。
 <FPLアルゴリズム>
 続いて、メディエータmが行うネットワーク情報の加工の一例として、FPLアルゴリズムを用いた場合について説明する。
 まず、前提として、n次元空間における線形和コストのオンライン意思決定問題として、以下の状態になっているものとする。
 時刻tの時の意思決定をdt とする:dt∈D⊂Rn
 意思決定dt の後に(ネットワーク)状態stが観測される:st∈S⊂Rn
 コストは意思決定と(ネットワーク)状態の内積d・sで定義される
 M(s)をsが与えられた時のコスト最小解を与える関数とする
Figure JPOXMLDOC01-appb-M000010
 この場合、
(1)FPL(δ)アルゴリズムは、各時刻tにおいて、pt
Figure JPOXMLDOC01-appb-M000011
から一様にランダムに選ぶ。
(2)制御エンジンeは、
Figure JPOXMLDOC01-appb-M000012
を意思決定とする。
 また、定理として、FPLアルゴリズムによる累積コストの期待値はδをパラメータとして以下で与えられる.
Figure JPOXMLDOC01-appb-M000013
 但し、
Figure JPOXMLDOC01-appb-M000014
 全てのd,d'∈Dに対して、
Figure JPOXMLDOC01-appb-M000015
 全てのd∈D, s∈Sに対して、
Figure JPOXMLDOC01-appb-M000016
 全てのs∈Sに対して、
Figure JPOXMLDOC01-appb-M000017
である。
 〔第2の実施形態の効果〕
 以上説明したように、本実施形態の統合制御システム10は、第1の実施形態と同様の効果を奏する。
 更に、オーケストレータ50では、特定の1つの制御エンジンeによる制御依頼しか採用しないため、統合制御が収束するには多くの時間が掛かり、又は所定時間内で統合制御できる頻度が減ってしまうという課題が生じる。これを防ぐために、第2の実施形態では、メディエータmが、例えば、10回分の取得したネットワーク情報を記憶しておき、FPLアルゴリズム等を利用することで、1回分の単一のネットワーク情報に加工してから制御エンジンeに送る。これにより、当該課題を解決することができる。
 〔補足〕
 以上、本発明は、上記の実施形態に限定されることなく、例えば以下に示すように、種々の変更及び応用が可能である。
 (1)統合制御システム10、20、統合制御装置A10,A20は、コンピュータとプログラムによって実現できるが、このプログラムを(非一時的)記録媒体に記録することも、インターネット等の通信ネットワークを介して提供することも可能である。
 (2)CPU101は、単一だけでなく、複数であってもよい。
10 統合制御システム
A10 統合制御アルゴリズム(統合制御装置)
11 情報配布部
12 総合評価推定部
13 制御許可先学習部
14 制御適用判断部
e,e1~e3 制御エンジン
A20 統合制御アルゴリズム(統合制御装置)
21 情報配布部
22 総合評価推定部
23 制御許可先学習部
24 制御適用判断部
m,m1~m3 メディエータ
30 情報収集・蓄積装置
50 オーケストレータ
300 物理ネットワーク(ネットワーク基盤、NFV環境)
310 汎用サーバ
320 ノード(転送装置)
330 ユーザ端末

Claims (8)

  1.  物理ネットワーク上で異なる複数の仮想ネットワークを構築するための複数の制御エンジンを統合制御する統合制御装置であって、
     前記物理ネットワークの状況を示すNFV(Network Functions Virtualization)環境情報を取得して前記複数の制御エンジンに配布することで、前記複数の制御エンジンから前記複数の仮想ネットワークに関する制御依頼を受け付ける情報配布部と、
     前記複数の制御エンジンから受け取った前記制御依頼に基づき、現在の前記物理ネットワークの状況に対して前記複数の制御エンジンからの前記制御依頼における制御指示の総数を集計する総合評価推定部と、
     前記総合評価推定部によって集計された前記制御指示の総数が前回の集計時に比べて少なくなるように、強化学習を利用して制御許可決定用の行動価値関数を更新する制御許可先学習部と、
     前記制御許可決定用の評価が変化した場合には、前記複数の制御エンジンのうちの所定の制御エンジンから受け取った所定の制御依頼を前記物理ネットワーク側へ転送する制御適用判断部と、
     を有する統合制御装置。
  2.  請求項1に記載の統合制御装置と、
     前記複数の制御エンジンと、
     を有する統合制御システム。
  3.  請求項2に記載の統合制御システムであって、
     前記情報配布部が出力した複数の前記NFV環境情報に基づいて所定の単一のNFV環境情報に加工し、加工後のNFV環境情報を前記複数の制御エンジンに配布するメディエータを有する統合制御システム。
  4.  前記メディエータは、FPLアルゴリズムを用いて、複数の前記NFV環境情報に一様ランダムな値を加えて平均を取ることで前記加工後のNFV環境情報を得る、請求項3に記載の統合制御システム。
  5.  物理ネットワーク上で異なる複数の仮想ネットワークを構築するための複数の制御エンジンを統合制御する統合制御システムであって、
     前記物理ネットワークの状況を示すNFV環境情報を取得して前記複数の制御エンジンに配布することで、前記複数の制御エンジンから前記複数の仮想ネットワークに関する制御依頼を受け付ける情報配布部と、
     前記複数の制御エンジンから受け取った前記制御依頼に基づき、現在の前記物理ネットワークの状況に対して前記複数の制御エンジンからの前記制御依頼における制御指示の総数を集計する総合評価推定部と、
     前記総合評価推定部によって集計された前記制御指示の総数が前回の集計時に比べて少なくなるように、強化学習を利用して制御許可決定用の行動価値関数を更新する制御許可先学習部と、
     前記制御許可決定用の評価が変化した場合には、前記複数の制御エンジンのうちの所定の制御エンジンから受け取った所定の制御依頼を前記物理ネットワーク側へ転送する制御適用判断部と、
     を実現する統合制御アルゴリズムと、
     前記複数の制御エンジンと、
     を有する統合制御システム。
  6.  請求項5に記載の統合制御システムであって、
     前記情報配布部が出力した複数の前記NFV環境情報に基づいて所定の単一のNFV環境情報に加工し、加工後のNFV環境情報を前記複数の制御エンジンに配布するメディエータを有する統合制御システム。
  7.  物理ネットワーク上で異なる仮想ネットワークを構築するための複数の制御エンジンを統合制御する統合制御装置が実行する統合制御方法であって、
     前記統合制御装置は、
     前記物理ネットワークの状況を示すNFV環境情報を取得して前記複数の制御エンジンに配布することで、前記複数の制御エンジンから前記複数の仮想ネットワークに関する制御依頼を受け付ける情報配布処理と、
     前記複数の制御エンジンから受け取った前記制御依頼に基づき、現在の前記物理ネットワークの状況に対して前記複数の制御エンジンからの前記制御依頼における制御指示の総数を集計する総合評価推定処理と、
     前記総合評価推定処理によって集計された前記制御指示の総数が前回の集計時に比べて少なくなるように、強化学習を利用して制御許可決定用の行動価値関数を更新する制御許可先学習処理と、
     前記制御許可決定用の評価が変化した場合には、前記複数の制御エンジンのうちの所定の制御エンジンから受け取った所定の制御依頼を前記物理ネットワーク側へ転送する制御適用判断処理と、
     を実行する統合制御方法。
  8.  コンピュータに、請求項7に記載の方法を実行させるプログラム。
PCT/JP2022/020882 2022-05-19 2022-05-19 統合制御装置、統合制御システム、統合制御方法及びプログラム WO2023223514A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2022/020882 WO2023223514A1 (ja) 2022-05-19 2022-05-19 統合制御装置、統合制御システム、統合制御方法及びプログラム
JP2024521495A JPWO2023223514A1 (ja) 2022-05-19 2022-05-19

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/020882 WO2023223514A1 (ja) 2022-05-19 2022-05-19 統合制御装置、統合制御システム、統合制御方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2023223514A1 true WO2023223514A1 (ja) 2023-11-23

Family

ID=88835104

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/020882 WO2023223514A1 (ja) 2022-05-19 2022-05-19 統合制御装置、統合制御システム、統合制御方法及びプログラム

Country Status (2)

Country Link
JP (1) JPWO2023223514A1 (ja)
WO (1) WO2023223514A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020127182A (ja) * 2019-02-06 2020-08-20 日本電信電話株式会社 制御装置、制御方法及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020127182A (ja) * 2019-02-06 2020-08-20 日本電信電話株式会社 制御装置、制御方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SUZUKI AKITO; KOBAYASHI MASAHIRO; TAKAHASHI YOUSUKE; HARADA SHIGEAKI; ISHIBASHI KEISUKE; KAWAHARA RYOICHI: "Extendable NFV-Integrated Control Method Using Reinforcement Learning", 2018 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC), IEEE, 20 May 2018 (2018-05-20), pages 1 - 7, XP033378415, DOI: 10.1109/ICC.2018.8422429 *

Also Published As

Publication number Publication date
JPWO2023223514A1 (ja) 2023-11-23

Similar Documents

Publication Publication Date Title
Natesha et al. Adopting elitism-based Genetic Algorithm for minimizing multi-objective problems of IoT service placement in fog computing environment
Zhang et al. Virtual network embedding based on modified genetic algorithm
Marconett et al. Flowbroker: A software-defined network controller architecture for multi-domain brokering and reputation
US7490140B2 (en) Peer data transfer orchestration
US8732699B1 (en) Migrating virtual machines between physical machines in a define group
Jiang et al. Self-adaptive resource allocation for energy-aware virtual machine placement in dynamic computing cloud
Khoshkholghi et al. Service function chain placement for joint cost and latency optimization
Huang et al. Scalable orchestration of service function chains in NFV-enabled networks: A federated reinforcement learning approach
Jain et al. Skyplane: Optimizing transfer cost and throughput using {Cloud-Aware} overlays
Mijumbi et al. A neuro-fuzzy approach to self-management of virtual network resources
Aral et al. Network-aware embedding of virtual machine clusters onto federated cloud infrastructure
Chen et al. E2FS: an elastic storage system for cloud computing
Pathak et al. A model for virtual network embedding across multiple infrastructure providers using genetic algorithm
Jahromi et al. Online VNF placement and chaining for value-added services in content delivery networks
WO2018142700A1 (ja) 制御装置、制御方法、及びプログラム
Keshri et al. Communication-aware, energy-efficient VM placement in cloud data center using ant colony optimization
Sapkota et al. Multi‐Controller Placement Optimization Using Naked Mole‐Rat Algorithm over Software‐Defined Networking Environment
Latif et al. Resource discovery and scalability-aware routing in cloud federation using distributed meta-brokering paradigm
Jeong et al. Towards energy-efficient service scheduling in federated edge clouds
WO2023223514A1 (ja) 統合制御装置、統合制御システム、統合制御方法及びプログラム
Arab et al. A model for communication between resource discovery and load balancing units in computing environments
Rongfei Super node selection algorithm combining reputation and capability model in P2P streaming media network
Saravana Kumar et al. Trust based resource selection with optimization technique
Khansoltani et al. A request redirection algorithm in content delivery network: Using promethee approach
Reshmi et al. Profit and resource availability-constrained optimal handling of high-performance scientific computing tasks

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22942718

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2024521495

Country of ref document: JP

Kind code of ref document: A