System, method, and information processing device

By relocating containers to optimize node loads and transitioning idle nodes to power-saving states, the system effectively reduces power consumption and resource inefficiencies.

JP2025103856APending Publication Date: 2025-07-09TOYOTA JIDOSHA KK
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2023221535
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-27
Publication Date
2025-07-09

AI Technical Summary

Technical Problem

Existing systems face challenges in reducing power consumption when data traffic exceeds a threshold, leading to inefficient use of resources.

Method used

A system that relocates containers to optimize power usage by aggregating them on nodes with higher loads and transitioning nodes without containers to a power-saving state.

Benefits of technology

This approach reduces the overall power consumption of the system by minimizing idle nodes and optimizing container distribution, while maintaining system functionality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025103856000001_ABST
    Figure 2025103856000001_ABST
Patent Text Reader

Abstract

To reduce power consumption of the whole system.SOLUTION: A system comprises: a plurality of nodes; and an information processing device. At least one container is arranged in each of the plurality of nodes. The information processing device comprises a control unit which executes transmission of a first request for instructing movement to a second node among a plurality of nodes of one or more containers arranged in a first node to the first node among the plurality of nodes, and transmission of an instruction of transition to a power saving state to the first node when there is no container on the first node.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a virtualization system.

Background Art

[0002] When there is data traffic exceeding a threshold value among the data traffic between containers generated by different second servers, a container relocation system is disclosed that relocates at least one of a pair of traffic-exceeding containers so that the pair of traffic-exceeding containers related to the data traffic exceeding the threshold value are arranged on the same second server (for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] One aspect of the present disclosure aims to provide an information processing apparatus and an information processing method capable of reducing the power consumption of the entire system.

Means for Solving the Problems

[0005] One aspect of the present disclosure is a plurality of nodes each having at least one container arranged thereon, transmitting a first request for instructing the movement of one or more containers arranged on the first node to a second node among the plurality of nodes to the first node among the plurality of nodes, transmitting an instruction to shift to a power-saving state to the first node when there are no containers on the first node, an information processing apparatus including a control unit that executes the above, A system comprising...

[0006] One of the other aspects of the present disclosure is that... An information processing apparatus sends... To the first node among a plurality of nodes each having at least one container disposed therein, a first request for instructing the movement of one or more containers disposed in the first node to a second node among the plurality of nodes. When there are no containers left on the first node, send an instruction to shift the first node to a power-saving state. A method of executing...

[0007] One of the other aspects of the present disclosure is that... To the first node among a plurality of nodes each having at least one container disposed therein, a first request for instructing the movement of one or more containers disposed in the first node to a second node among the plurality of nodes. When there are no containers left on the first node, send an instruction to shift the first node to a power-saving state. An information processing apparatus comprising a control unit for executing...

Advantages of the Invention

[0008] According to the present disclosure, the power consumption of the entire system can be reduced.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11A

Figure 11B

Figure 12A

Figure 12B

Figure 13A

Figure 13B

Figure 14A

Figure 14B

DETAILED DESCRIPTION OF THE INVENTION

[0010] One aspect of the present disclosure is a system including a plurality of nodes and an information processing apparatus. Each of the plurality of nodes has at least one container disposed therein. The information processing apparatus includes a control unit. The control unit may transmit a first request instructing the movement of one or more containers disposed in a first node among the plurality of nodes to a second node among the plurality of nodes. The control unit may transmit an instruction to shift to a power-saving state to the first node when there are no containers on the first node.

[0011] The system according to one aspect of the present disclosure is, for example, a virtual computing system, a distributed computing system, an edge computing system, or the like. A node according to one aspect of the present disclosure is, for example, a physical server. When the system is edge computing, the node is an edge node. The container may be any of the functions in the core network of the mobile communication network. Alternatively, the container may be any of the network functions in the core network of the fifth-generation mobile communication network. However, the container is not limited thereto. The information processing apparatus according to one aspect of the present disclosure is, for example, a controller that manages containers. The information processing apparatus is, for example, a dedicated computer. However, the information processing apparatus is not limited thereto. The control unit is, for example, a processor such as a CPU (Central Processing Unit).

[0012] of the processor.

[0013] When the first node receives an instruction to transition to a power-saving state from an information processing apparatus, it transitions to the power-saving state. The power-saving state is a state in which power consumption is not present or the power consumption is less than that in the operating state, such as stopping the power supply or stopping the power supply of the node without stopping the power supply of some hardware.

[0014] In one aspect of the present disclosure, by aggregating containers to the second node and putting the first node without containers into the power-saving state, the power consumption of the first node is reduced. As a result, the power consumption of the entire system can be reduced.

[0015] In one aspect of the present disclosure, the control unit may transmit a first request to a plurality of first nodes. The control unit may transmit an instruction to transition to the power-saving state to the plurality of first nodes when there are no containers in each of the plurality of first nodes. The greater the number of first nodes to be put into the power-saving state, the more the power consumption can be reduced.

[0016] In one aspect of the present disclosure, the control unit may further execute determining, as the second node, a node included in a predetermined top number having a large number of containers arranged among the plurality of nodes. Since the greater the number of containers to be moved, the greater the power consumption for moving the containers, by determining a node with a large number of containers to be arranged as the second node to which the containers are to be moved, the power consumption associated with moving the containers can be reduced.

[0017] In one aspect of the present disclosure, when the container arranged on the first node cannot be moved to the second node, the control unit may determine, among the plurality of nodes, the nodes included in the top predetermined number having a large number of arranged containers as the new second node. The control unit may transmit a first request instructing the movement of the container to the new second node to the first node. When the container on the first node cannot be moved to the second node, it is selected from among the top predetermined number of containers having a large number of containers arranged in the new second node. Thereby, the power consumption of the entire system can be reduced as much as possible.

[0018] In one aspect of the present disclosure, each of the plurality of nodes may determine whether to execute the movement of one or more containers to the second node when receiving the first request from the information processing apparatus. When each of the plurality of nodes determines to execute the movement of one or more containers to the second node, it may move one or more containers to the second node. When each of the plurality of nodes determines not to execute the movement of one or more containers to the second node, it may notify the information processing apparatus that it does not execute the movement of one or more containers to the second node. By the node itself that has received the first request as the first node determining whether to execute the movement of the container from the first node to the second node, the processing load on the information processing apparatus can be reduced.

[0019] Also, each of the plurality of nodes may monitor the power consumption of one or more containers arranged thereon. When each of the plurality of nodes receives a first request, it may determine whether to execute the movement of one or more containers to a second node based on the power consumption of the one or more containers, the maximum power consumption and the current power consumption of the second node. Thereby, it is possible to more accurately determine whether the movement of the container is possible, and for example, it is possible to reduce the failure of the movement of the container such that the container cannot be operated at the second node although the movement of the container has been started.

[0020] In one aspect of the present disclosure, the control unit may determine a first node from a plurality of nodes based on the number of containers arranged thereon. For example, by determining the first node from the top predetermined number of nodes with a small number of arranged containers, it is possible to increase the number of nodes that set the arranged containers to 0 and enter a power-saving state. Thereby, the power consumption of the entire system can be further reduced.

[0021] In one aspect of the present disclosure, when there are a plurality of first containers that execute the same service among a plurality of nodes, before transmitting the first request, the control unit may further transmit a second request instructing deletion of the first container to one or more nodes on which the remaining one or more first containers other than the one first container are arranged. By reducing redundant containers, the power consumption of the entire system can be reduced. Also, the number of containers to be moved can be reduced, and the power consumption associated with the movement of the containers can be kept small.

[0022] As one of other aspects of the present disclosure, the processes executed in the above system can be specified as a method. The method includes an information processing apparatus sending, to a first node among a plurality of nodes each having at least one container disposed thereon, a first request for instructing the transfer of one or more containers disposed on the first node to a second node among the plurality of nodes, and sending, when there are no containers left on the first node, an instruction for the first node to shift to a power-saving state.

[0023] Also, as one of the aspects of the present disclosure, the information processing apparatus included in the above system can be specified. The information processing apparatus includes a control unit that executes sending, to a first node among a plurality of nodes each having at least one container disposed thereon, a first request for instructing the transfer of one or more containers disposed on the first node to a second node among the plurality of nodes, and sending, when there are no containers left on the first node, an instruction for the first node to shift to a power-saving state. One of the aspects of the present disclosure can also be specified, in addition to these, as the information processing apparatus included in the above system, a program for causing a computer to execute the processes of each of the plurality of nodes, and a non-transitory computer-readable recording medium on which the program is recorded.

[0024] Hereinafter, embodiments of the present disclosure will be described based on the drawings. The configurations of the following embodiments are examples, and the present disclosure is not limited to the configurations of the embodiments.

[0025] <First Embodiment> FIG. 1 is a diagram showing an example of the system configuration of the virtualization system 100 according to the first embodiment. The virtualization system 100 is a container-type virtualization system. The virtualization system 100 includes a controller 1 and a plurality of nodes 2 on which containers are arranged. When referring to the nodes as nodes 2, it indicates that the nodes are not distinguished and all nodes will be described. For example, when the virtualization system 100 is an edge computing system, the node 2 is, for example, an edge server arranged in each area so as to be able to process requests for applications from terminals at a position closer to the terminals than the cloud. However, it is not limited thereto, and the virtualization system 100 may be a distributed computing system.

[0026] The controller 1 and each node 2 are connected to a network and can communicate through the network. The network to which the controller 1 and the node 2 are connected is, for example, a LAN (Local Area Network), a public line network such as the Internet, or a backbone network such as an optical fiber network.

[0027] The controller 1 is a device that manages the nodes 2 and the containers. In the first embodiment, it is assumed that the controller 1 runs Kubernetes and manages the containers. However, the system used for container management is not limited to Kubernetes. In the first embodiment, the controller 1 aggregates the containers on some of the nodes 2 and powers off the nodes 2 on which the arranged containers are 0, thereby reducing the power consumption of the entire virtualization system 100.

[0028] More specifically, when the processing demand for the virtualization system 100 decreases, for example, the controller 1 determines to aggregate the containers to some of the nodes 2. The controller 1 determines, for example, based on the number of running Pods, the node 2 to which the Pod is to be moved and the node 2 that will be the destination of the Pod. A Pod is a set of containers necessary for providing a service. In the first embodiment, the movement of the containers is performed in units of Pods. A Pod contains one or more containers.

[0029] In the first embodiment, the controller 1 determines the node 2 with the largest number of deployed Pods as the node 2 that will be the destination of the Pod. The node 2 that will be the destination of the Pod is hereinafter referred to as the destination node. Also, in the first embodiment, the controller 1 determines the node 2 with the smallest number of deployed Pods as the node 2 to which the Pod is to be moved to other nodes 2. The node 2 to which the Pod is to be moved to other nodes 2 is hereinafter referred to as the source node. Note that the selection of the destination node and the source node is not limited to using the number of deployed Pods. For example, the power consumption of the node 2 may be used. For example, the node 2 with the largest power consumption may be selected as the destination node. The source node is an example of the "first node". The destination node is an example of the "second node".

[0030] The controller 1 sends an instruction to move the containers to the destination node to the source node. When the source node receives the container movement instruction, it moves the Pods deployed on itself to the destination node. Thereafter, the controller 1 sends a power-off instruction to the node 2 whose number of deployed Pods has become 0. The node 2 that has received the power-off instruction enters the power-off state. The process of aggregating the containers to some of the nodes 2 and putting the nodes where no containers are deployed into the power-off state as described above is hereinafter referred to as the container aggregation process. The container movement instruction is an example of the "first request". The power-off instruction is an example of the "instruction to transition to the power-saving state".

[0031] For example, in FIG. 1, Pod#A is deployed on node #1. Pod#B is deployed on node #2. Pod#N is deployed on node #N. For example, assume that controller 1 selects node #2 and node #N as the source nodes and node #1 as the destination node. In this case, controller 1 sends a container movement instruction to node #2 and node #N, specifying node #1 as the destination node. Upon receiving the container movement instruction, node #2 and node #N move Pod#B and Pod#N to node #1 respectively. As a result, the number of Pods deployed on node #2 and node #N becomes 0 respectively. Therefore, controller 1 sends a power-off instruction to node #2 and node #N. Node #2 and node #N enter the power-off state upon receiving the power-off instruction. This reduces the power consumption by node #2 and node #N.

[0032] FIG. 2 shows an example of the hardware configuration of controller 1. Controller 1 is, for example, a dedicated computer. However, controller 1 is not limited to a dedicated computer. As a hardware configuration, controller 1 includes a processor 101, a memory 102, an auxiliary storage device 103, and a communication unit 104. Memory 102 and auxiliary storage device 103 are computer-readable recording media. Controller 1 is an example of an "information processing device". Processor 101, auxiliary storage device 103, and communication unit 104 are electrically connected by a bus.

[0033] The auxiliary storage device 103 stores various programs and data used by the processor 101 when executing each program. The auxiliary storage device 103 is, for example, an EPROM (Erasable Programmable ROM) or a hard disk drive. The programs held in the auxiliary storage device 103 include, for example, an operating system (OS), container orchestration software such as Kubernetes, a container aggregation program, and various other application programs.

[0034] The memory 102 is a storage device that provides the processor 101 with a storage area and a working area for loading programs stored in the auxiliary storage device 103, and is also used as a buffer. The memory 102 includes, for example, semiconductor memories such as ROM (Read Only Memory) and RAM (Random Access Memory).

[0035] The processor 101 executes various processes by loading and executing the OS and various other application programs held in the auxiliary storage device 103 into the memory 102. The processor 101 is, for example, a CPU or a DSP (Digital Signal Processor), etc. The processor 101 is not limited to one, and multiple processors may be provided. The processor 101 is an example of a "control unit".

[0036] The communication unit 104 is, for example, a NIC (Network Interface Card), an optical line interface, etc. The communication unit 104 is connected, for example, by wire to a network such as a LAN (Local Area Network) or an optical line network.

[0037] Note that the hardware configuration of the controller 1 is not limited to that shown in FIG. 2. Further, the node 2 includes a processor, a memory, an auxiliary storage device, and a communication unit, similar to the controller 1. In the auxiliary storage device of the node 2, for example, an OS, a container platform such as Kubernetes and Docker of container orchestration software, etc. are stored.

[0038] FIG. 3 is a diagram showing an example of the functional configuration of the controller 1. The controller 1 includes, as functional components, a control unit 11, a container aggregation information DB 12, a Pod information DB 13, and a node information DB 14. The processing by these functional components is achieved by the processor 101 of the controller 1 executing a predetermined program.

[0039] The control unit 11 controls the container aggregation process. More specifically, the control unit 11 starts the container aggregation process when the container aggregation condition is satisfied. The container aggregation condition is, for example, that the processing demand for the virtualization system 100 decreases. For example, when the virtualization system 100 is applied to the core network of the communication network, the container aggregation condition is that it is the nighttime when the communication demand is low. The communication demand is obtained as statistical information based on measured values, for example, for each day of the week and time zone. Generally it has been found that the communication demand is low during the nighttime when human activities are less. However, when a sports event such as the World Cup is held outside of Japan, for example, the communication demand is predicted to be high even at night, so the container aggregation condition is that it is the nighttime when the communication demand is low and there is no scheduled world event. However, the container aggregation condition is not limited to this. For example, the container aggregation condition may include, as an AND condition, that the time duration during which the reception demand is low is equal to or longer than a predetermined time duration. Note that the container aggregation condition is set by the administrator of the virtualization system 100 according to the type of system to which the virtualization system 100 is applied.

[0040] When the control unit 11 starts the container consolidation process, it determines the source node and the destination node. In the first embodiment, the control unit 11 refers to the Pod information DB 13 described later and determines the destination node from among the top predetermined number of nodes 2 with a large number of deployed Pods. In the first embodiment, the node 2 with the largest number of deployed Pods is determined as the destination node. When there are multiple nodes 2 with the largest number of deployed (deployed) Pods, the control unit 11 may select, for example, any one of the nodes 2 as the destination node.

[0041] The control unit 11 refers to the Pod information DB 13 and determines the source node from among the top predetermined number of nodes 2 with a small number of deployed Pods. In the first embodiment, the node 2 with the smallest number is determined as the source node. Multiple source nodes may be selected.

[0042] The control unit 11 sends a container movement instruction to the source node to instruct it to move the Pod to the destination node. After that, when the number of Pods deployed on the source node becomes 0, a power-off instruction is sent to the source node.

[0043] The container consolidation information DB 12, the Pod information DB 13, and the node information DB 14 are created in the storage area of the auxiliary storage device 103. The container consolidation information DB 12 stores information regarding container consolidation conditions. For example, when the virtualization system 100 is applied to the core network of a communication system and the container consolidation condition is that the time zone when the communication demand is lower than a predetermined value and there is no global event held, the container consolidation information DB 12 stores the predicted information of the communication demand by day of the week and time zone and the scheduled information of the global event. Note that the communication demand may be indicated by any one or a combination of the number of connected terminals per unit time and the communication volume per unit time.

[0044] The Pod information DB 13 stores information about Pods. The node information DB 14 stores information about Node 2. Details of the information stored in the Pod information DB 13 and the node information DB 14 will be described later. Note that the functional configuration of the controller 1 is not limited to the example shown in FIG. 3.

[0045] FIG. 4 is an example of the information stored in the Pod information DB 13 of the controller 1. The Pod information DB 13 stores information about Pods. In the example shown in FIG. 4, one record in the Pod information DB 13 corresponds to one Pod. One record in the Pod information DB 13 includes fields for Pod ID, deployment node ID, status, application ID, and container ID.

[0046] The field for Pod ID stores the identification information of the Pod. The identification information of the Pod may be a character string indicating a name arbitrarily set by the administrator of the virtualization system 100, or may be a character string automatically assigned by the control unit 11. The deployment node ID field stores the identification information of the node where the Pod is deployed.

[0047] The field for status stores information indicating, for example, the state of the Pod. Examples of the state of the Pod include Waiting, Running, and Terminated. The information indicating the state of the Pod is, for example, either a code, a flag, or a character string indicating any of the states of the Pod.

[0048] The field for application ID includes, for example, the identification information of the application corresponding to the Pod. Note that the identification information of the application may be included as part of the identification information of the Pod. In this case, the field for application ID may not be necessary. The field for container ID includes the list of containers included in the Pod.

[0049] Each Pod transmits, for example, at a predetermined time interval, Pod information which is information about the Pod, to the controller 1. The control unit 11 receives the Pod information from each Pod. The Pod information includes, for example, the identification information of the Pod, the identification information of the deployed node 2, and the status of the Pod, etc. The control unit 11 stores the received Pod information in the Pod information DB 13. As a result, the record of the corresponding Pod in the Pod information DB 13 is updated. When a new Pod is added to the virtualization system 100, Pod information about the new Pod starts to be received, and as a result, the control unit 11 adds a record of the new Pod to the Pod information DB 13. Thereby, the control unit 11 recognizes the addition of a new Pod to the virtualization system 100. When a Pod is deleted from the virtualization system 100, the Pod information about the Pod is no longer received, and within a predetermined time, the record of the corresponding Pod in the Pod information DB 13 is no longer updated. If a record is not updated in the Pod information DB 13 for a predetermined time, the record is deleted. Thereby, the control unit 11 recognizes the deletion of the Pod from the virtualization system 100. Note that the method for detecting the addition and deletion of a Pod is not limited to the method described above. Also, the information held in the Pod information DB 13 is not limited to the information shown in FIG. 4.

[0050] FIG. 5 is an example of the information stored in the node information DB 14. Information about the node 2 is stored in the node information DB 14. One record of the node information DB 14 corresponds to one node. The record of the node information DB 14 includes fields of a node ID, a maximum power consumption, a power consumption, and a status.

[0051] The field of the node ID stores the identification information of the node 2. The field of the maximum power consumption stores the value of the maximum power consumption of the node 2. The field of the power consumption stores the value of the power consumption of the node 2. The unit of the power consumption is watt (W) or kilowatt (kW).

[0052] In the status field, information indicating the status of Node 2 is stored. The status of Node 2 includes, for example, Ready, False, Unknown, etc. When the status of Node 2 is Ready, it indicates that Node 2 is in a state where it can place Pods. When the status of Node 2 is other than Ready, it indicates that Node 2 is in a state where it cannot place Pods. When Node 2 is in a power-off state or a power-saving state, for example, the status field may store information indicating power-off, which indicates the power-off state. For example, when the control unit 11 receives a notification of the result of the power-off process from Node 2, the control unit 11 may store information indicating power-off in the status field.

[0053] In the virtualization system 100, Node 2 transmits node information, which is information about Node 2, to Controller 1 at a predetermined cycle, for example. The control unit 11 receives the node information from Node 2 at a predetermined cycle. The node information includes, for example, the identification information of the node, the maximum power consumption, the power consumption, and the status, etc. When the control unit 11 receives the node information from Node 2, the control unit 11 updates the corresponding record in the node information DB 14 with the received node information.

[0054] In addition, the control unit 11 also transmits the identification information, the maximum power consumption, and the power consumption of the destination node to the source node together with the container movement instruction. Note that the node information transmitted from Node 2 and the information stored in the node information DB 14 are not limited to the information shown in FIG. 5.

[0055] FIG. 6 is a diagram showing an example of the functional configuration of Node 2. Node 2 includes a control unit 21, a power consumption monitoring unit 22, and a container 23 as its functional configuration. The processing of these functional components is achieved by the processor of Node 2 executing a predetermined program, respectively.

[0056] The container 23 is included one or more times in Node 2. However, in FIG. 6, for the sake of convenience, only one container 23 is shown. The power consumption monitoring unit 22 monitors the power consumption of each of the containers 23.

[0057] When selected as the source node, the control unit 21 receives a container movement instruction from the controller 1, and the identification information, maximum power consumption, and power consumption of the destination node. The control unit 21 determines whether to move the container 23 to the destination node. In the first embodiment, the control unit 21 determines to move the container 23 to the destination node when the sum of the power consumption of the destination node and the power consumption of the container 23 is less than the maximum power consumption of the destination node. When the sum of the power consumption of the destination node and the power consumption of the container 23 is greater than or equal to the maximum power consumption of the destination node, the control unit 21 determines not to move the container 23 to the destination node, and sends a container movement impossible response to the controller 1 as a response to the container movement instruction.

[0058] When there are a plurality of containers 23, the control unit 21 may determine whether to move all the containers 23 to the destination node, or may determine whether to move each of the containers 23 to the destination node. When determining whether to move each of the containers 23 to the destination node, for example, if there is even one container 23 that is not moved to the destination node, the control unit 21 may send a container movement impossible response to the controller 1.

[0059] When it is determined to move the container 23 to the destination node, the control unit 21 moves the container 23 to the destination node. The movement of the container 23 may be performed by the interaction between the control unit 21 and the destination node. Alternatively, the movement of the container 23 may be performed by the controller 1 by placing a new Pod corresponding to the container 23 on the destination node and deleting the container 23 from the node 2 which is the source node. In the latter case, when the control unit 21 determines to move the container 23 to the destination node, the control unit 21 may send a container movable response to the controller 1.

[0060] Also, when the control unit 21 receives a power-off instruction from the controller 1, the control unit 21 performs power-off processing. In the power-off processing, the control unit 21 turns off the power of the node 2. Note that the functional configuration of the node 2 is not limited to the example shown in FIG. 6.

[0061] <Flow of processing> FIG. 7 is an example of a flowchart of the container aggregation process of the controller 1. The process shown in FIG. 7 is repeatedly executed, for example, at a predetermined cycle. The execution subject of the process shown in FIG. 7 is, for example, the processor 101 of the controller 1, but for convenience, the description will be mainly based on the functional components.

[0062] In OP101, the control unit 11 determines whether or not the container aggregation condition is satisfied. If the container aggregation condition is satisfied (OP101: YES), the process proceeds to OP102. If the container aggregation condition is not satisfied (OP101: NO), the process shown in FIG. 7 ends.

[0063] In OP102, the control unit 11 determines redundant Pods among a plurality of Pods that execute the same application, for example, by referring to the Pod information DB 13. The redundant Pods are the Pods other than one of the plurality of Pods that execute the same application. For example, the control unit 11 determines as redundant Pods the Pods other than the Pods on the node 2 where the largest number of Pods are arranged.

[0064] In OP103, the control unit 11 sends a redundant container deletion instruction to node 2 where the redundant Pod determined in OP102 is deployed. Along with the redundant container deletion instruction, the identification information of the Pod to be deleted is also sent. Node 2 that has received the redundant container deletion instruction deletes the specified Pod. The control unit 11 executes the process of deleting redundant Pods between OP102 and OP103 for each application running within the virtualization system 100. Through the processes of OP102 and OP103, each application's Pod in the virtualization system 100 becomes one, so the virtualization system 100 has the configuration necessary to operate the minimum system. Note that the processes of OP102 and OP103 may vary the number of remaining Pods based on factors such as the number of requests to the application.

[0065] In addition to the redundant Pods, if there are idle-state Pods, the control unit 11 may send a deletion instruction for the idle-state Pods to node 2 where the idle-state Pods are deployed.

[0066] In OP104, the control unit 11 selects a source node and a destination node, for example, by referring to the Pod information DB 13. In the first embodiment, the control unit 11 selects, as the source node, the node 2 with the fewest number of deployed Pods. The control unit 11 selects, as the destination node, the node 2 with the largest number of deployed Pods.

[0067] In OP105, the control unit 11 sends a container movement instruction to the source node. Along with the container movement instruction, for example, the identification information, maximum power consumption, and power consumption of the destination node are also sent. The identification information, maximum power consumption, and power consumption of the destination node are obtained from the node information DB 14.

[0068] In OP106, the control unit 11 determines whether the movement of the Pod from the source node to the destination node has been completed. For example, when the control unit 11 starts receiving Pod information regarding the Pod moved from the destination node and the record of the corresponding Pod in the Pod information DB 13 is updated, OP106 makes an affirmative determination. Also, for example, when the control unit 11 receives a container movement impossible response from the source node, OP106 makes a negative determination. If the movement of the Pod from the source node to the destination node has been completed (OP106: YES), the process proceeds to OP108.

[0069] If the Pod does not move from the source node to the destination node (OP106: NO), the process proceeds to OP107. In OP107, the control unit 11 selects a new destination node and sends a container movement instruction to the source node where the Pod could not be moved. Along with the container movement instruction, for example, the identification information, the maximum power consumption, and the power consumption of the new destination node are also sent. The control unit 11 selects, as the new destination node, the node 2 with a larger number of Pods arranged next to the original destination node. Along with the container movement instruction, for example, the identification information, the maximum power consumption, and the power consumption of the new destination node are also sent. The control unit 11 selects, as the new destination node, the node 2 with a larger number of Pods arranged next to the original destination node.

[0070] In OP108, the control unit 11, for example, refers to the Pod information DB 13 and sends a power-off instruction to the node where the number of arranged Pods is 0. In OP109, the control unit 11 determines whether the termination condition is satisfied. The termination condition is set to one or more of, for example, the number of nodes where Pods are arranged becoming equal to or less than the threshold value, the number of nodes 2 in the power-off state becoming equal to or more than the threshold value, and being unable to move any more Pods, etc. When the termination condition includes a plurality of conditions, for example, the termination condition is an OR condition. Note that the termination condition is not limited to these.

[0071] If the termination condition is satisfied (OP109: YES), the process shown in FIG. 7 ends. If the termination condition is not satisfied (OP109: NO), the process proceeds to OP104, and the processes after OP104 are repeated.

[0072] FIG. 8 is an example of a flowchart of processing when node 2 receives a container movement instruction. The processing shown in FIG. 8 is repeatedly executed, for example, at a predetermined cycle. The execution subject of the processing shown in FIG. 8 is, for example, the processor of node 2, but for convenience, the description will be made mainly with functional components as the subject.

[0073] In OP201, the control unit 21 determines whether or not it has received a container movement instruction from the controller 1. If a container movement instruction is received from the controller 1 (OP201: YES), the process proceeds to OP202. Along with the container movement instruction, for example, the identification information, the maximum power consumption, and the power consumption of the destination node are also received. If no container movement instruction has been received from the controller 1 (OP201: NO), the processing shown in FIG. 8 ends.

[0074] In OP202, the control unit 21 determines whether or not the arranged Pod can be moved to the destination node. In the first embodiment, OP202 makes an affirmative determination when the sum of the power consumption of the destination node and the power consumption of the Pod arranged in node 2 itself is less than the maximum power consumption of the destination node. When the sum of the power consumption of the destination node and the power consumption of the Pod arranged in node 2 itself is greater than or equal to the maximum power consumption of the destination node, OP202 makes a negative determination.

[0075] If the arranged Pod can be moved to the destination node (OP202: YES), the process proceeds to OP203. In OP203, the control unit 21 moves the Pod on node 2 to the destination node. Then, the processing shown in FIG. 8 ends.

[0076] If the arranged Pod cannot be moved to the destination node (OP202: NO), the process proceeds to OP204. In OP204, the control unit 21 transmits a container movement impossible response to the controller 1. Then, the processing shown in FIG. 8 ends.

[0077] Note that the processing when receiving the container movement instruction of Node 2 is not limited to the processing shown in FIG. 8. For example, when the movement of the Pod to the destination node is completed, Node 2 may notify Controller 1 of the completion of the container movement.

[0078] FIG. 9 is a diagram showing an example of the sequence of container aggregation processing in the virtualization system 100. In FIG. 9, the virtualization system 100 includes Node #1, Node #2, and Node #3. In S10, Controller 1 detects that the container aggregation condition is satisfied and starts the container aggregation process (OP101: YES in FIG. 7).

[0079] In S11, S12, and S13, Controller 1 sends redundancy container deletion instructions to Node #1, Node #2, and Node #3, respectively, to delete the redundant Pods of each application (OP102 and OP103 in FIG. 7). When Node #1, Node #2, and Node #3 receive the redundancy container deletion instructions, they delete the corresponding Pods. After the processing of S10 to S13, it is assumed that the node with the largest number of deployed Pods is Node #1. It is also assumed that Pod #B is deployed on Node #2 and Pod #C is deployed on Node #3.

[0080] In S21, Controller 1 determines that the source node is Node #2 and the destination node is Node #1 (OP104 in FIG. 7), and sends a container movement instruction to Node #2. To Node #2, together with the container movement instruction, the identification information, maximum power consumption, and power consumption of Node #1, which is the destination node, are also sent.

[0081] In S22, Node #2 receives a container movement instruction from Controller 1 (OP201: YES in FIG. 8), and since the sum of the power consumption of Node #1 and the power consumption of Pod #B is less than the maximum power consumption of Node #1, it is determined to move Pod #B to Node #1 (OP202: YES in FIG. 8). In S23, Node #2 moves Pod #B to Node #1 (OP203 in FIG. 8).

[0082] In S24, Node #1 starts periodic transmission of Pod information about Pod #B. By receiving the Pod information of Pod #B from Node #1, Controller 1 detects the completion of the movement of Pod #B (OP106: YES in FIG. 7). Also, due to the movement of Pod #B, the number of Pods arranged in Node #2 becomes 0.

[0083] In S25, Controller 1 detects that the number of Pods arranged in Node #2 is 0, and transmits a power-off instruction to Node #2 (OP108 in FIG. 7). Controller 1 detects that the number of Pods arranged in Node #2 is 0 by referring to, for example, Pod Information DB 13 and Node Information DB 14.

[0084] In S26, Node #2 receives a power-off instruction from Controller 1 and enters a power-off state. In S27, Node #2 notifies Controller 1 of the processing result of the power-off. Note that the processing result of the power-off is transmitted immediately before Node #2 enters the power-off state.

[0085] Next, in S31 to S37, using Node #3 as the source node and Node #1 as the destination node, the same processing as in S21 to S27 is executed. In FIG. 9, it is assumed that even after Pod #B has moved to Node #1, the sum of the power consumption of Node #1 and the power consumption of Pod #C is less than the maximum power consumption of Node #1. Therefore, when a container movement instruction is transmitted from Controller 1 to Node #3 (S31), Pod #C is moved from Node #3 to Node #1 (S32, S33), and then Node #3 enters a power-off state (S35 - S37).

[0086] In the example shown in FIG. 9, by the container aggregation process, Pod#B and Pod#C are aggregated to Node#1, and Node#2 and Node#3 are powered off. As a result, the power consumption due to the operation of Node#2 and Node#3 is reduced, and the total power consumption of the virtualization system 100 can be reduced. On the other hand, since Pod#B and Pod#C continue to exist in the virtualization system 100, the processing of each application can continue.

[0087] FIG. 10 is a diagram showing an example of a sequence of container aggregation processing in the virtualization system 100. The configuration of the virtualization system 100 in FIG. 10 is the same as the configuration of the virtualization system 100 in FIG. 9. From S50 to S53, similar to S10 to S13 in FIG. 9, the controller 1 starts the container aggregation process (S51), sends a redundant container deletion instruction to Node#1, Node#2, and Node#3 (S51 to S53), and the corresponding Pod is deleted. It is assumed that the arrangement of the Pods after the processing of S50 to S53 is the same as that in FIG. 9.

[0088] In S61, the controller 1 determines that the source node is Node#2 and the destination node is Node#1 (OP104 in FIG. 7), and sends a container movement instruction to Node#2. To Node#2, the identification information, maximum power consumption, and power consumption of Node#1, which is the destination node, are also sent together with the container movement instruction.

[0089] In S62, Node#2 receives the container movement instruction from the controller 1 (OP201: YES in FIG. 8), and since the sum of the power consumption of Node#1 and the power consumption of Pod#B is not less than the maximum power consumption of Node#1, it is determined not to move Pod#B to Node#1 (OP202: NO in FIG. 8). In S63, Node#2 sends a container movement impossible response to the controller 1 (OP204 in FIG. 8).

[0090] In S71, since the controller 1 received a container movement impossible response from node #2 (OP106:NO in Fig. 7), it selects node #C as the new transfer destination node and sends a container movement instruction to node #2 (OP107 in Fig. 8). In S71, to node #2, along with the container movement instruction, the identification information, maximum power consumption, and power consumption of the new destination node, node #3, are transmitted.

[0091] In S72, node #2 receives a container movement instruction from the controller 1 (OP201:YES in Fig. 8). Since the sum of the power consumption of node #3 and the power consumption of Pod#B is less than the maximum power consumption of node #3, it determines to move Pod#B to node #3 (OP202:YES in Fig. 8). In S73, node #2 moves Pod#B to node #3 (OP203 in Fig. 8).

[0092] In S74, node #3 starts periodic transmission of Pod information about Pod#B. By receiving the Pod information of Pod#B from node #3, the controller 1 detects the completion of the movement of Pod#B (OP106:YES in Fig. 7). Also, due to the movement of Pod#B, the number of Pods arranged in node #2 becomes 0.

[0093] In S75, the controller 1 detects that the number of Pods arranged in node #2 is 0 and sends a power-off instruction to node #2 (OP108 in Fig. 7). In S76, node #2 receives the power-off instruction from the controller 1 and enters the power-off state. In S77, node #2 notifies the controller 1 of the processing result of the power-off.

[0094] In the example shown in Fig. 10, by the container aggregation process, Pod#B and Pod#C are aggregated in node #3, and node #2 enters the power-off state. As a result, the power consumption due to the operation of node #2 is reduced, and the power consumption of the entire virtualization system 100 can be decreased.

[0095] In addition, in FIGS. 9 and 10, when the release condition of the container aggregation process is satisfied, for example, the control unit 11 may transmit a power-on instruction to the node 2 in the power-off state to operate it. The release condition of the container aggregation process is, for example, when the virtualization system 100 is a communication network system, the time zone when the communication demand becomes equal to or greater than the threshold value, or even when the communication demand is less than the threshold value, it is the scheduled time for holding a global event, etc. However, the release condition of the container aggregation process is not limited to this. Hereinafter, according to the processing demand of each Pod for the virtualization system 100, a Pod is newly added (scaled out).

[0096] <Effects of the First Embodiment> In the first embodiment, the Pods operating in the virtualization system 100 are aggregated to some of the nodes 2 according to the decrease in processing demand, and the nodes 2 where the Pods are no longer arranged are set to the power-off state, so that the power consumption of the entire virtualization system 100 can be reduced.

[0097] In the first embodiment, the node 2 with the largest number of Pods arranged is selected as the destination node. As a result, the number of Pods to be moved can be kept small, and the power consumption related to the movement of the Pods can be kept small.

[0098] <Modification Example of the First Embodiment> In the first embodiment, in the container consolidation process, the controller 1 sends a power-off instruction to the node 2 where the number of pods deployed has become 0, and the node 2 that has received the power-off instruction shuts down the power of the machine. However, it is not limited to this. In the container consolidation process, the controller 1 may send an instruction to transition to a power-saving state to the node 2 where the number of pods deployed has become 0, and the node 2 that has received the instruction to transition to a power-saving state may transition to a power-saving state. Examples of the power-saving state of the node 2 include poweroff, suspend, and hibernate. Poweroff is a state in which the power of the node 2 is turned off. Suspend is a state in which the state of the node 2 is saved in the RAM (memory) and the power of devices other than the RAM is turned off. Hibernate is a state in which the state of the node 2 is saved in the hard disk drive and the power of the node 2 is turned off. In the process of transitioning to a power-saving state, the administrator of the virtualization system 100 can arbitrarily set whether the node 2 is in any of the states of poweroff, suspend, and hibernate.

[0099] In the first embodiment, the container consolidation process is performed in units of nodes to consolidate the pods and set the node 2 where the number of pods to be deployed has become 0 to the power-off state. However, the container consolidation process may be performed, for example, in units of racks or floors. More specifically, the pods may be consolidated on a plurality of nodes mounted on one rack, and all the nodes mounted on another rack where the number of pods deployed on all the mounted nodes has become 0 may be set to the power-off state. In this case, the nodes may be managed in units of racks or floors.

[0100] In the first embodiment, the source node determines whether or not to move the Pod to the destination node, but this is not limited thereto, and the controller 1 may execute the determination. For example, the node 2 transmits the power consumption of each container placed therein as one piece of Pod information to the controller 1, thereby enabling the controller 1 to determine whether or not to move the Pod from the source node to the destination node. When the controller 1 determines that the Pod can be moved from the source node to the destination node, it may transmit a container movement instruction to the source node.

[0101] <Application Examples> The virtualization system 100 of the first embodiment can be applied to, for example, a 5G core network system. In this case, the Pod is, for example, an Access and Mobility Management Facility (AMF). Function), SMF (Session Management Function), UPF (User Plane Function) NF (Network Node B) in the 5G core network, such as Edge Application Server (EAS) or Edge Application Server (EAS) It is an instance of the Array<T>() ...

[0102] 11A is a diagram showing an example of a sequence of a container aggregation process when the virtualization system 100 is applied to a 5G core network system. When the virtualization system 100 is applied to a communication system, for example, a procedure is adopted in which a copy of the Pod is created in the destination node and then the Pod is deleted in the source node, instead of moving the Pod, so as to prevent communication from being interrupted. Therefore, the node 2 receives a container movement instruction from the controller 1 (OP201 in FIG. 8), and after determining whether or not the Pod can be moved to the destination node (OP202 in FIG. 8), the node 2 transmits a determination result of whether or not the Pod can be moved to the destination node as a response to the controller 1, unlike the process described in FIG. 8.

[0103] In the example shown in FIG. 11A, the virtualization system 100 includes Node #4 and Node #5. The controller 1, Node #4, and Node #5 are also devices included in the 5G core network system in the example shown in FIG. 11A. In the example shown in FIG. 11A, it is assumed that Pod #X, which is an instance of any NF, is running on Node #4.

[0104] In S110, the controller 1 detects that the container aggregation condition is satisfied and starts the container aggregation process. In S111, the controller 1 determines the source node as Node #4 and the destination node as Node #5, and sends a container migration instruction to Node #4. To Node #4, together with the container migration instruction, the identification information, maximum power consumption, power consumption, and identification information of the Pod to be migrated of Node #5, which is the destination node, are also sent. Note that in the example shown in FIG. 11A, before the process of S111, if there is an idle redundant Pod, the controller 1 sends a deletion instruction for the idle Pod to the corresponding Node 2.

[0105] In S112, Node #4 receives the container migration instruction from the controller 1, and since the sum of the power consumption of Node #5 and the power consumption of Pod #X is less than the maximum power consumption of Node #5, it is determined to move Pod #X to Node #5. In S113, Node #4 sends a container migration possible response indicating that Pod #X can be moved to Node #5 to the controller 1.

[0106] In S114, the controller 1 sends a Pod creation instruction instructing Node #5 to create a Pod of the same type instance as Pod #X. In S115, Node #5 receives the Pod creation instruction from the controller 1 and creates Pod #Y, which is an instance of the same type as Pod #X. In S116, Node #5 starts periodic transmission of Pod information about Pod #Y. As a result, the controller 1 detects that Pod #Y has been added.

[0107] In S120, instance switching processing is executed within the 5G core network. The processing of S120 differs according to the type of NF instance. Details of the processing of S120 will be described later with examples when the instance to be switched is a UPF, SMF, or AMF.

[0108] In S131, Controller 1 detects that the switching of the instance within the 5G core network has been completed and sends a deletion instruction for Pod#X to Node #4. In S132, Node #4 deletes Pod#X. When Pod#X is deleted, the Pod information of Pod#X will no longer reach Controller 1, whereby Controller 1 can detect that Pod#X has been deleted.

[0109] In S133, Controller 1 detects that the number of Pods arranged in Node #4 is 0 and sends a power-off instruction to Node #4. In S134, Node #4 receives the power-off instruction from Controller 1 and enters the power-off state. Note that in FIG. 11A, although the procedure of creating a copy of the target Pod in the source node before moving and then deleting the target Pod in the source node is adopted, it is not limited to this. For example, when a Pod of the same type as the target Pod is arranged in the destination node, the target Pod may be merged with the Pod arranged in the destination node. Although the procedure of creating a copy of the target Pod in the source node before moving and then deleting the target Pod in the source node is adopted in FIG. 11A, it is not limited to this. For example, when a Pod of the same type as the target Pod is arranged in the destination node, the target Pod may be merged with the Pod arranged in the destination node.

[0110] FIG. 11B is a diagram showing another example of the sequence of container aggregation processing when the virtualization system 100 is applied to a 5G core network system. In FIG. 11B, a Pod movement determination function 2A that performs a process of determining whether a Pod can be moved from a source node to a destination node is introduced into the 5G core network as an additional function of a new NF or an existing NF. The NF to which the Pod movement determination function 2A is added as a new function includes, for example, NWDAF. However, the NF to which the Pod movement determination function 2A can be added is not limited to NWDAF. The Pod movement determination function 2A may determine whether a Pod can be moved from a source node to a destination node with the same logic as the node 2 in the first embodiment. In FIG. 11B, the same processes as those in FIG. 11A are denoted by the same reference numerals.

[0111] As shown in FIG. 11B, when the Pod movement determination function 2A is introduced, the Pod movement determination function 2A periodically collects, from each node 2, the power consumption of the node 2 and the power consumption of each Pod arranged on the node 2 (S150). Also, the Pod movement determination function 2A obtains the maximum power consumption of each node 2 by notification from each node 2.

[0112] When the controller 1 detects that the container aggregation condition is satisfied, the controller 1 starts the container aggregation process (S110). In S151, the controller 1 determines the source node as node #4 and the destination node as node #5, and transmits a container movement availability query to the Pod movement determination function 2A to inquire whether Pod #X can be moved from the source node #4 to the destination node #5. Along with the container movement availability query, the identification information of the source node, node #4, the identification information of the destination node, node #5, and the identification information of the Pod #X to be moved are also transmitted.

[0113] In S152, the Pod movement determination function 2A receives a container movement availability inquiry from the controller 1. Since the sum of the power consumption of node #5 and the power consumption of Pod #X is less than the maximum power consumption of node #5, it is determined that Pod #X can be moved from node #4 to node #5. In S153, the Pod movement determination function 2A sends a container movement available response indicating that Pod #X can be moved from node #4 to node #5 to the controller 1. Note that when it is determined that the Pod cannot be moved from the source node to the destination node, the Pod movement determination function 2A sends a container movement unavailable response to the controller 1.

[0114] After S114, it is the same as in FIG. 11A. The controller sends a Pod creation instruction to node #5 (S114), node #5 creates Pod #Y (S115), and an instance switching process is performed from Pod #X to Pod #Y (S120).

[0115] FIGS. 12A and 12B are an example of a sequence of instance switching processes in the 5G core network when the Pod is an instance of the UPF. The processes shown in FIGS. 12A and 12B correspond to the processes executed in S120 of FIGS. 11A and 11B when the Pod is an instance of the UPF.

[0116] In S211, the SMF 6 sends an Nnrf_NFManagement_NFStatusSubscribe message to the NRF 7. The Nnrf_NFManagement_NFStatusSubscribe message transmitted in S211 is a message that requests registration with the NRF 7 so that notifications can be received about newly added NF instances in the 5G core network. The process of S211 may be executed in advance prior to the container aggregation process.

[0117] ​​In S212, upon receiving a Pod creation instruction from the controller 1 (S114), node #5 creates a new UPF instance, UPF#Y (Pod#Y). The process of S212 corresponds to the process of S115 in FIGS. 11A and 11B. In S213, UPF#Y sends an Nnrf_NFManagement_NFRegister Request message to NRF7. The Nnrf_NFManagement_NFRegister Request message transmitted in S213 is a message that requests to register the instance information of UPF#Y with NRF 7.

[0118] In S214, since UPF#Y is newly added, NRF 7 sends an Nnrf_NFManagement_NFStatusNotify message to SMF 6. The Nnrf_NFManagement_NFStatusNotify message transmitted in S214 is a message that notifies SMF 6 that UPF#Y is newly added. As a result, SMF 6 can recognize the existence of UPF#Y and, for example, can select UPF#Y as the UPF to be used for the PDU session when a PDU session establishment request occurs.

[0119] The processes after S221 are processes for switching the UPF instance from UPF#X to UPF#Y. When switching the UPF instance, it is necessary to reconnect the UE that had established a PDU session by connecting to UPF#X to UPF#Y and re - establish the PDU session.

[0120] In S221, the controller 1 sends an Nnef_TrafficInfluence_Create (or Update) request message to the NEF 3. The Nnef_TrafficInfluence_Create (or Update) message sent in S221 is a message that instructs a change to the PDU session. In the first embodiment, the Nnef_TrafficInfluence_Create (or Update) request message corresponds to a UPF instance switch instruction that instructs a switch of the UPF instance. Along with the Nnef_TrafficInfluence_Create (or Update) request message, for example, information regarding the source UPF#X and the destination UPF#Y of the PDU session and policy information are also sent. The information regarding the source UPF#X and the destination UPF#Y of the PDU session includes, for example, the identification information of the UPF instance. The policy information includes, for example, an instruction to move the PDU session on UPF#X to UPF#Y. Along with the Nnef_TrafficInfluence_Create (or Update) request message, for example, a list of the DNN (Data Network Name) and DNAI (Data Network Access Identifier) of the data network that is the destination of the traffic handled by UPF#X is also sent. For example, when the UPF instance is switched from UPF#X to UPF#Y, the new handling destination of the traffic handled by UPF#X may be determined again without limiting it to UPF#Y. In such a case, based on the DNN and DNAI, a UPF that becomes the new handling destination of the traffic handled by UPF#X may be determined. The Nnef_TrafficInfluence_Create (or Update) request message in S221 is an example of the "second request". When the UPF instance is switched from UPF#X to UPF#Y, the new handling destination of the traffic handled by UPF#X may be determined again without limiting it to UPF#Y. In such a case, based on the DNN and DNAI, a UPF that becomes the new handling destination of the traffic handled by UPF#X may be determined. The Nnef_TrafficInfluence_Create (or Update) request message in S221 is an example of the "second request".

[0121] In S222, the NEF 3 stores the policy information received together with the Nnef_TrafficInfluence_Create (or Update) request message in the UDR 4. In S223, the NEF 3 sends an Nnef_TrafficInfluence_Create (or Update) response message to the controller 1.

[0122] In S230, the UDR 4 sends a Nudr_DM_Notify message to the PCF 5 to notify that the policy information has changed. The policy information is also sent together with the Nudr_DM_Notify message.

[0123] In S240, the PCF 5 sends an Npcf_SMPolicyControl_UpdateNotify message to the SMF 6 to provide an update on the policy information applied to the PDU session. The policy information is also sent together with the Npcf_SMPolicyControl_UpdateNotify message.

[0124] In S251 of Figure 12B, the controller 1 sends an Nnef_EventExposure_Subscribe request message to the NEF 3 to request notification of the occurrence of an event related to a specified NF. An instruction to monitor the establishment and release of the PDU session is also sent together with the Nnef_EventExposure_Subscribe request message transmitted in S251.

[0125] In S252, when the NEF 3 receives the Nnef_EventExposure_Subscribe request message, it converts it into a Nudm_EventExposure_Subscribe request message and sends it to the UDM 9. When the UDM 9 receives the Nudm_EventExposure_Subscribe request message, it converts it into a Nsmf_EventExposure_Subscribe request message and sends it to the SMF 6. This enables the SMF 6 to notify the NEF 3 when a PDU session is established or released.

[0126] In S261, SMF 6 inherits the Npcf_SMPolicyControl_UpdateNotify message from PCF 5. In S213, UE 50 transmits a response to the PDU Session Modification Command to SMF 6 via AMF 8 according to policy information including an instruction to move the PDU session on UPF#X to UPF#Y. The PDU Session Modification Command transmitted in S261 instructs UE 50 to release the PDU session with UPF#X and establish a PDU session with UPF#Y. In S213, UE 50 transmits a response to the PDU Session Modification Command to SMF 6 via AMF 8.

[0127] In S263, a procedure for establishing a PDU session between the UE 50 and the UPF#Y is performed (for example, see 4.3.2.2.1 of 3GPP TS23.502). In S264, a procedure for releasing a PDU session between the UE 50 and the UPF#X is performed (for example, see 4.3.4.2 of 3GPP TS23.502).

[0128] In S271, SMF 6 sends the Nsmf_EventExposure_Notify message to notify the establishment of a PDU session in S263 and the release of a PDU session in S264. Send the message to NEF 3. In S272, when NEF 3 receives the Nsmf_EventExposure_Notify message, it converts it into an Nnef_EventExposure_Notify message and sends it to Controller 1. Controller 1 detects the completion of the release of the PDU session on UPF#X and the establishment of the PUD session on UPF#Y, that is, the switching of the UPF instance, by receiving the Nnef_EventExposure_Notify message. Then, a Pod deletion instruction for Pod#X corresponding to S131 in FIGS. 11A and 11B is sent from Controller 1 to Node#4. Note that in FIGS. 12A and 12B, the response of the response message to the reception of the request message is partially omitted. In FIGS. 12A and 12B, UPF#X is an example of the "old first NF instance", and UPF#Y is an example of the "new first NF instance". Also, NEF 3 is an example of the "second NF instance". Thereby, the release of the PDU session on UPF#X and the establishment of the PUD session on UPF#Y, that is, the completion of the switching of the UPF instance, are detected. Then, a Pod deletion instruction for Pod#X corresponding to S131 in FIGS. 11A and 11B is sent from Controller 1 to Node#4. Note that in FIGS. 12A and 12B, the response of the response message to the reception of the request message is partially omitted. In FIGS. 12A and 12B, UPF#X is an example of the "old first NF instance", UPF#Y is an example of the "new first NF instance". Also, NEF 3 is an example of the "second NF instance".

[0129] Note that in the sequence of processes shown in FIGS. 12A and 12B, it is assumed that the PDU session is in SSC mode 3. However, it is not limited to this, and the PDU session may be in SSC mode 1 or SSC mode 2. When the PDU session is in SSC mode 1 or SSC mode 2, instead of the sequence of processes for switching the UPF instance from S261 to S264, for example, the following sequence of processes may be performed be performed.

[0130] When SMF 6 receives the Npcf_SMPolicyControl_UpdateNotify message from PCF 5 in S240, it moves the PDU session on UPF#X to UPF#Y First, in accordance with the policy information including the instruction of the event, delete the instance information of UPF#X from the NRF 7. For example, the SMF 6 deletes the instance information of UPF#X from the NRF 7 by sending an Nnrf_NFManagement_NFDeregister request message to the NRF 7. This suppresses the assignment of a new PDU session to UPF#X.

[0131] Next, the SMF 6 waits for the communication of the PDU session on UPF#X to complete. Once the communication of the PDU session is completed, the SMF 6 sends a PDU Session Release Command message to the AMF 8 through which it instructs the UE 50 to release the PDU session on UPF#X. Upon receiving the PDU Session Release Command message, the UE 50 and UPF#X execute the PDU session release procedure (see, for example, 4.3.4.2 of 3GPP TS23.502). Thereafter, when the UE 50 starts a new PDU session communication, UPF#Y or another UPF is selected and a new PDU session is assigned.

[0132] Figures 13A and 13B show an example of the sequence of instance switching processes in the 5G core network when the Pod is an instance of the SMF. The processes shown in Figures 13A and 13B correspond to the processes executed in S120 of Figures 11A and 11B when the Pod is an instance of the SMF. Therefore, in Figures 13A and 13B, the old Pod#X is SMF#X and the new Pod#Y is SMF#Y. Also, when switching the SMF instance, the controller 1 is assumed to operate as one of the NFs in the 5G core network.

[0133] In S311, the controller 1 sends a Nudm_EventExposure_Subscribe request message to the UDM 9. Along with the Nudm_EventExposure_Subscribe request message, an instruction to monitor the management trends regarding the PDU session is also sent.

[0134] In S312, when the UDM 9 receives the Nudm_EventExposure_Subscribe request message, it converts it into a Nsmf_EventExposure_Subscribe request message and sends it to, for example, SMF#X and SMF#Y. As a result, SMF#X and SMF#Y will notify the NEF 3 when a new PDU session is associated with or the association with a PDU session is released. Note that in S311, the controller 1 may also send the identification information of SMF#X and SMF#Y along with the Nudm_EventExposure_Subscribe request message to specify the SMF to be monitored.

[0135] In S321, the controller 1 sends an SMF instance switch instruction to the AMF 8. When there are multiple AMFs 8, the SMF instance switch instruction is sent to the AMF that manages the UE corresponding to the PDU session managed by SMF#X. The AMF that manages the UE corresponding to the PDU session managed by SMF#X can be obtained, for example, by querying the UDM. Along with the SMF instance switch instruction, for example, the fact that the switch is from SMF#X to SMF#Y and the identification information of SMF#X and SMF#Y are also sent. The SMF instance switch instruction in S321 is an example of the "second request".

[0136] In S322, when the AMF 8 receives the SMF instance switch instruction, it requests SMF#Y to create an association between the AMF 8 that manages the same PDU session and SMF#Y Send the Nsmf_PDUSession_CreateSMContext request message. The association between the PDU session, the AMF, and the SMF is included in the SM context. The SM context is configuration information for managing the PDU session. The Nsmf_PDUSession_CreateSMContext request message is a message that requests the creation of an SM context 。 。

[0137] Along with the Nsmf_PDUSession_CreateSMContext request message, for example, the identification information of AMF 8, the identification information of the PDU session (PDU session ID) associated with AMF 8 and SMF#X, and the identification information of the SM context (SM context ID) including the association between AMF 8 and SMF#X are also sent. The SM context including the association between AMF 8 and SMF#X also includes the PDU session ID of the PDU session associated with AMF 8 and SMF#X. The PDU session associated with AMF 8 and SMF#X is a PDU session whose management is taken over from SMF#X to SMF#Y. Hereinafter, the PDU session whose management is taken over from SMF#X to SMF#Y is referred to as the PDU session whose association relationship is the takeover target. That is, the SM context ID sent together with the Nsmf_PDUSession_CreateSMContext request message is the identification information of the context regarding the PDU session whose association relationship is the takeover target 。

[0138] In S323, SMF#Y sends an Nsmf_PDUSession_Context request message to request SMF#X to provide an SM context. Along with the Nsmf_PDUSession_Context request message, for example, the context ID of the SM context related to the PDU session to be handed over is also sent. In S324, SMF#X receives the Nsmf_PDUSession_Context request message and, as a response, sends an Nsmf_PDUSession_Context response message and the SM context related to the PDU session to be handed over to SMF#Y.

[0139] In S325, based on the SM context received in S324, SMF#Y selects UPF 60 responsible for managing the PDU session to be handed over. For example, the SM context received in S324 includes information such as S-NSSAI and UE location information as information for identifying UPF 60 responsible for managing the PDU session to be handed over.

[0140] In S326, SMF#Y sends an N4 Session Establishment request message to request UPF 60 to establish an N4 session. In S327, UPF 60 establishes an N4 session with SMF#Y and sends an N4 Session Establishment response message to SMF#Y. When the processing of S327 is completed, SMF#Y creates and registers an SM context including the association between AMF 8, SMF#Y, and the PDU session to be handed over.

[0141] In S328, SMF#Y sends an Nsmf_PDUSession_CreateSMContext response message to AMF 8 as a response to the Nsmf_PDUSession_CreateSMContext request message received in S322.

[0142] In S331 of FIG. 13B, the AMF 8 sends an Nsmf_PDUSession_ReleaseSMContext request message to the SMF#X to request deletion of the SM context related to the PDU session to be handed over. In S332, upon receiving the Nsmf_PDUSession_ReleaseSMContext request message, the SMF#X deletes the SM context related to the PDU session to be handed over and sends an Nsmf_PDUSession_ReleaseSMContext response message to the AMF 8.

[0143] In S333, the SMF#X sends an N4 Session Release request message to the UPF 60 to request release of the N4 session. In S334, the UPF 60 releases the N4 session with the SMF#X and sends an N4 Session Release response message to the SMF#X. In S335, the AMF 8 sends a completion response for SMF instance switchover to the controller 1.

[0144] In S341, the SMF#Y sends an Nsmf_EventExposure_Notify message to the controller 1 to notify that it is newly responsible for managing the PDU session (a new SM context has been registered) through the processes from S322 to S328, and that the SMF#X has been relieved of the responsibility for processing the PDU session (the SM context has been deleted) through the processes from S331 to S334. Upon receiving the Nsmf_EventExposure_Notify message, the controller 1 detects that the processing of the PUD session has been taken over from the SMF#X to the SMF#Y. Thereafter, a Pod deletion instruction for Pod#X, corresponding to S131 in FIGS. 11A and 11B, is sent from the controller 1 to the node #4. In S132, the SMF#X is deleted by the node #4. Note that in FIGS. 13A and 13B, the responses of the response messages to the reception of some request messages are omitted.

[0145] In addition, for notifying the controller that the switching of the SMF instance in the 5G core network has been completed, at least one of the processes of S311 to S312 and S341 and the process of transmitting the SMF instance switching completion response of S335 may be executed. In FIGS. 13A and 13B, SMF#X is an example of the "old first NF instance", and SMF#Y is an example of the "new first NF instance". Also, AMF 8 is an example of the "second NF instance".

[0146] FIGS. 14A and 14B are an example of the sequence of the instance switching process in the 5G core network when the Pod is an instance of the AMF. The processes shown in FIGS. 14A and 14B correspond to the processes executed in S120 of FIGS. 11A and 11B when the Pod is an instance of the AMF. Therefore, in FIGS. 14A and 14B, the old Pod#X is AMF#X, and the new Pod#Y is AMF#Y. Also, when switching the AMF instance, the controller 1 shall operate as one of the NFs in the 5G core network.

[0147] In S411, the controller 1 transmits a Nudm_EventExposure_Subscribe request message to the UDM 9. Along with the Nudm_EventExposure_Subscribe request message transmitted in S411, an instruction for monitoring the Mobility Event is also transmitted.

[0148] In S412, when the UDM 9 receives a Nudm_EventExposure_Subscribe request message, it converts it into a Namf_EventExposure_Subscribe request message and sends it to AMF#X and AMF#Y. As a result, AMF#X and AMF#Y will notify the NEF 3 when newly taking over the management of the PDU session or when the responsibility for the management of the PDU session is released. Note that in S411, the controller 1 may also send the identification information of AMF#X and AMF#Y together with the Nudm_EventExposure_Subscribe request message to specify the AMF to be monitored.

[0149] In S421, the controller 1 sends an AMF instance switch instruction to AMF#X. Together with the AMF instance switch instruction, for example, the information indicating the switch from AMF#X to AMF#Y and the identification information of AMF#Y are also sent. The AMF instance switch instruction in S421 is an example of the "second request".

[0150] In S422, when AMF#X receives an AMF instance switch instruction and sends it to AMF#Y, it sends a Namf_Communication_CreateUEContext request message to request the handover of the UE context to the new AMF#Y. The UE context includes the association between the AMF, the UE, and the PDU session. Together with the Namf_Communication_CreateUEContext request message, the UE context regarding the PDU session that AMF#X is currently in charge of and will transfer the processing to AMF#Y is also sent. The PDU session that AMF#X is currently in charge of and will transfer the processing to AMF#Y is hereinafter referred to as the PDU session to be handed over.

[0151] In S423, AMF#Y sends an Nsmf_PDUSession_UpdateSMContext request message to SMF 6 to request an update of the SM context, which changes the AMF associated with the PDU session to be handed over to AMF#Y. Along with the Nsmf_PDUSession_UpdateSMContext request message, the identification information of AMF#Y and the PDU session ID to be handed over are also sent. In S424, when SMF 6 receives the Nsmf_PDUSession_UpdateSMContext request message from AMF#Y, it associates AMF#Y with the PDU session to be handed over, updates the SM context, and sends an Nsmf_PDUSession_UpdateSMContext response message to AMF#Y. In S425, AMF#Y sends a UE Context Modification Request message to RAN 70 to request registration of the UE context. Along with the UE Context Modification Request message, the UE context related to the PDU session to be handed over is also sent. In S426, when RAN 70 receives the UE Context Modification Request message, it registers the UE context related to the PDU session to be handed over and sends a UE Context Modification Response message to AMF#Y.

[0152] In S425, AMF#Y sends a UE Context Modification Request message to RAN 70 to request registration of the UE context. Along with the UE Context Modification Request message, the UE context related to the PDU session to be handed over is also sent. In S426, when RAN 70 receives the UE Context Modification Request message, it registers the UE context related to the PDU session to be handed over and sends a UE Context Modification Response message to AMF#Y.

[0153] In S427, AMF#Y sends a Namf_Communication_CreateUEContext response message to AMF#X. Through the processing from S422 to S427, the settings for the newly created AMF#Y to take over the PDU session from AMF#X are completed.

[0154] In S431 of FIG. 14B, AMF#X sends an Nsmf_PDUSession_ReleaseSMContext request message to SMF 6 to request deletion of the SM context related to the PDU session to be handed over. In S432, SMF 6 deletes the SM context related to the PDU session to be handed over and sends an Nsmf_PDUSession_ReleaseSMContext response message to AMF#X.

[0155] In S433, AMF#X sends a UE Context Release Command message to RAN 70 to request deletion of the UE context related to the PDU session to be handed over. In S434, RAN 70 deletes the UE context related to the PDU session to be handed over and sends a UE Context Release Complete message to AMF#X. When AMF#X receives the UE Context Release Complete message, it deletes the UE context related to the PDU session to be handed over.

[0156] Through the processing from S431 to S434, the settings of the PDU session to be handed over are deleted from the old AMF#X, and thereafter, the processing of the PDU session to be handed over will be performed by AMF#Y. In S435, AMF#X sends an AMF instance switch completion response to controller 1.

[0157] In S441, AMF#Y is responsible for newly processing the PDU session (new UE context is registered) through the processing from S422 to S427, and ​MF#X sends a Namf_EventExposure_Notify message to Controller 1 to notify that it has been relieved of the responsibility for processing the PDU session (the UE context has been deleted) through the processing of S431 to S434. By receiving the Namf_EventExposure_Notify message, Controller 1 detects that the processing of the PUD session has been taken over from AMF#X to AMF#Y. Thereafter, a Pod deletion instruction for Pod#X, corresponding to S131 in FIGS. 11A and 11B, is sent from Controller 1 to Node #4. In S132, AMF#X is deleted by Node #4. Note that in FIGS. 14A and 14B, the response of the response message to the reception of the request message is partially omitted.

[0158] Note that, for notifying the controller that the switching of the AMF instance within the 5G core network has been completed, at least one of the processing of S411 to S412 and S441 and the processing of transmitting the AMF instance switching completion response of S435 may be implemented. In FIGS. 14A and 14B, AMF#X is an example of the "old first NF instance", and AMF#Y is an example of the "new first NF instance". Also, AMF#X is an example of the "second NF instance".

[0159] According to FIGS. 11A to 14B, it is possible to execute the Pod aggregation process without stopping the processing of the NF within the 5G core network, that is, without disconnecting the communication of the UE, and it is possible to reduce the power consumption of the virtualization system 100.

[0160] Note that in FIGS. 12A, 12B, 13A, 13B, 14A, and 14B, the processes (e.g., S221, S223, S251, S272, S311, S321, S335, S341, S441, S435, S441) between the controller 1 and each NF may be executed while an NF in a 5G core network different from the controller 1 cooperates with the controller 1. In this case, the NF in the 5G core network different from the controller 1 is an example of a "second NF instance".

[0161] Note that the switching of the NF instance is also applicable to the switching of EAS (Edge Application Servers) in an edge computing system such as MEC (Multi-access Edge Computing). For example, after detecting the addition of a new Pod#Y (EAS instance) in S116 of FIGS. 11A and 11B, the controller 1 sends an Nnef_TrafficInfluence_Create / Update message instructing the switching of the EAS instance to the NEF. By doing so, the switching of the EAS instance may be executed.

[0162] <Other Embodiments> The above embodiments are merely examples, and the present disclosure can be appropriately modified and implemented without departing from the gist thereof.

[0163] The processes and means described in the present disclosure can be freely combined and implemented as long as no technical contradiction occurs.

[0164] Also, the processes described as being performed by one device may be shared and executed by a plurality of devices. Alternatively, the processes described as being performed by different devices may be executed by one device. In a computer system, how each function is realized by a hardware configuration (server configuration) can be flexibly changed.

[0165] ​The present disclosure can also be realized by supplying a computer program that implements the functions described in the above embodiments to a computer and causing one or more processors included in the computer to read and execute the program. Such a computer program may be provided to the computer by a non-transitory computer-readable storage medium connectable to the system bus of the computer, or may be provided to the computer via a network. The non-transitory computer-readable storage medium includes, for example, any type of disk such as a magnetic disk (e.g., a floppy (registered trademark) disk, a hard disk drive (HDD), etc.), an optical disk (e.g., a CD-ROM, a DVD disk, a Blu-ray disk, etc.), a read-only memory (ROM), a random access memory (RAM), an EPROM, an EEPROM, a magnetic card, a flash memory, an optical card, and any type of medium suitable for storing electronic instructions. It may be provided to the computer by a non-transitory computer-readable storage medium connectable to the system bus of the computer, or may be provided to the computer via a network. The non-transitory computer-readable storage medium includes, for example, any type of disk such as a magnetic disk (e.g., a floppy (registered trademark) disk, a hard disk drive (HDD), etc.), an optical disk (e.g., a CD-ROM, a DVD disk, a Blu-ray disk, etc.), a read-only memory (ROM), a random access memory (RAM), an EPROM, an EEPROM, a magnetic card, a flash memory, an optical card, and any type of medium suitable for storing electronic instructions.

Explanation of Signs

[0166] 1 ··· Controller 2 ··· Node 11 ··· Control Unit 12 ··· Container Aggregation Information DB 13 ··· Pod Information DB 14 ··· Node Information DB 21 ··· Control Unit 22 ··· Power Consumption Monitoring Unit 23 ··· Container 100 ··· Virtualization System 101 ··· Processor 102 ··· Memory 103 ··· Auxiliary Storage Device 104 ··· Communication Unit

Claims

1. A plurality of nodes, each having at least one container disposed therein; Sending a first request to a first node among the plurality of nodes, instructing the movement of one or more containers disposed in the first node to a second node among the plurality of nodes; When there are no containers left on the first node, sending an instruction to the first node to shift to a power-saving state; An information processing apparatus including a control unit that executes the above; A system comprising the above.

2. The control unit Sends the first request to a plurality of the first nodes; In each of the plurality of the first nodes, when there are no more containers, sends an instruction to the plurality of the first nodes to shift to the power-saving state. The system according to claim 1.

3. The control unit Further executes determining, as the second node, a node included in a predetermined upper number of nodes having a large number of containers disposed therein among the plurality of nodes. The system according to claim 1.

4. The control unit When one or more containers disposed in the first node cannot be moved to the second node, determines, as a new second node, a node included in a predetermined upper number of nodes having a large number of containers disposed therein among the plurality of nodes; Sends the first request to the first node, instructing the movement of one or more containers disposed in the first node to the new second node. The system according to claim 1.

5. Each of the plurality of nodes Determines whether to execute the movement of the one or more containers to the second node when receiving the first request from the information processing apparatus; When it is determined to execute the movement of the one or more containers to the second node, executes processing related to the movement of the one or more containers to the second node; When it is determined not to execute the movement of the one or more containers to the second node, notifies the information processing apparatus that the movement of the one or more containers to the second node is not executed. The system according to claim 1.

6. Each of the plurality of nodes Monitors the power consumption of one or more containers disposed therein. When the first request is received, it is determined whether to execute the movement of the one or more containers to the second node based on the power consumption of the one or more containers, the maximum power consumption of the second node, and the current power consumption. The system according to claim 5. **Claim 7** The control unit determines the first node from the plurality of nodes based on the number of containers arranged. determines. The system according to claim 1. **Claim 8** The control unit When there are a plurality of first containers that execute the same service among the plurality of nodes, before transmitting the first request, to one or more nodes in which the remaining one or more first containers other than one first container are arranged, further executes transmitting a second request instructing deletion of the first container. The system according to claim 1. **Claim 9** The container is any one of the functions in the core network of the mobile communication network. The system according to claim 1. **Claim 10** The container is any instance of an NF (Network Function) in the core network of the 5th generation mobile communication network. The system according to claim 1. **Claim 11** The control unit After transmitting the first request, when the container is newly arranged as a new first NF instance in the second node, transmits a second request instructing the second NF instance to switch from the old first NF instance arranged in the first node to the new first NF instance arranged in the second node; When the switch from the old first NF instance to the new first NF instance is completed, transmits an instruction to delete the old first NF instance to the first node. further executes. The system according to claim 10. **Claim 12** An information processing apparatus transmits a first request instructing the movement of one or more containers arranged in the first node to the second node among the plurality of nodes each having at least one container arranged therein; when there are no more containers on the first node, transmits an instruction to shift to a power-saving state to the first node. A method of execution. **Claim 13** The information processing apparatus sends the first request to the plurality of the first nodes, and when there is no longer a container in each of the plurality of the first nodes, sends an instruction to shift to the power saving state to the plurality of the first nodes. The method according to claim 12.

14. The information processing apparatus further includes determining, as the second nodes, nodes included in a predetermined top number of nodes having a large number of containers arranged among the plurality of nodes. The method according to claim 12.

15. The information processing apparatus when one or more containers arranged in the first node cannot be moved to the second node, determines, as a new second node, a node included in a predetermined top number of nodes having a large number of containers arranged among the plurality of nodes, and sends the first request instructing the first node to move one or more containers arranged in the first node to the new second node. The method according to claim 12.

16. Each of the plurality of nodes determines whether to execute the movement of the one or more containers to the second node when receiving the first request from the information processing apparatus, and when it is determined to execute the movement of the one or more containers to the second node, executes processing related to the movement of the one or more containers to the second node, and when it is determined not to execute the movement of the one or more containers to the second node, notifies the information processing apparatus that the movement of the one or more containers to the second node is not executed. The method according to claim 12.

17. Each of the plurality of nodes monitors the power consumption of one or more containers arranged, and when receiving the first request, determines whether to execute the movement of the one or more containers to the second node based on the power consumption of the one or more containers, the maximum power consumption and the current power consumption of the second node. The method according to claim 15.

18. The container is any instance of an NF (network function) in the core network of a 5th generation mobile communication network. The method according to claim 12.

19. The information processing apparatus ​ After transmitting the first request, when the container is newly arranged as a new first NF instance in the second node, a second request for instructing a switch from the old first NF instance arranged in the first node to the new first NF instance arranged in the second node is transmitted to the second NF instance. When the switch from the old first NF instance to the new first NF instance is completed, an instruction for deleting the old first NF instance is transmitted to the first node. which further executes The method according to claim 18. **Claim 20** For a first node among a plurality of nodes each having at least one container arranged therein, transmitting a first request for instructing movement of one or more containers arranged in the first node to a second node among the plurality of nodes. When there are no containers left on the first node, transmitting an instruction for shifting to a power-saving state to the first node. An information processing apparatus including a control unit that executes the above.

Citation Information

Patent Citations

  • Server system, and power reduction method of server system

    JP2009169858A

  • Distribution system and virtual machine allocation device

    JP2013069205A

  • Information processing device, control device, transfer method, and program

    JP2019205079A

  • Procedure execution control method and program

    JP7402292B1

  • Virtualization management program, virtualization management device, and virtualization management method

    WO2018003031A1