Virtual network allocation device, virtual network allocation method, and program
The virtual network allocation method addresses VM allocation challenges by optimizing routes and latency constraints, ensuring communication performance and preventing congestion while optimizing power usage and costs.
Patent Information
- Application Number
- PCT/JP2024/006381
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-21
- Publication Date
- 2025-08-28
AI Technical Summary
Existing methods for allocating virtual machines (VMs) in communication networks fail to consider latency constraints and traffic and power consumption generated by VM migration, leading to potential delays, network congestion, increased costs, and environmental impact due to renewable energy fluctuations.
A virtual network allocation method that determines VM allocation and routes considering latency, traffic, and power consumption, formulated as an integer linear programming problem, to minimize power differences and link utilization while ensuring communication performance and preventing congestion.
Guarantees communication performance, prevents network congestion, and optimizes power usage by balancing supply and demand, minimizing costs and load distribution related to VM migration.
Smart Images

Figure JP2024006381_28082025_PF_FP_ABST
Abstract
Description
Virtual network allocation device, virtual network allocation method, and program
[0001] The present invention relates to a virtual network allocating device, a virtual network allocating method, and a program.
[0002] In recent years, with the development of network function visualization (NFV), a virtualization technology, it has become possible to provide a huge variety of network services by flexibly combining a wide variety of virtual network resources (VRs) and virtual network functions (VNFs). To provide these services, it is necessary to appropriately allocate VRs and VNFs to physical resources for each service. In addition, it is necessary to appropriately control the end-to-end routes for transmitting services and guarantee the desired communication performance (e.g., communication delay time). Furthermore, to process a huge number of services, it is necessary to realize a network that suppresses link congestion in the network in order to respond to sudden fluctuations in traffic volume.
[0003] In recent years, there has been a global movement to introduce renewable energy sources in order to reduce the burden on the environment. This trend is no exception in the operation of communication networks that operate virtual network environments, and it is expected that renewable energy will account for a large proportion of the electricity supplied to communication networks.
[0004] For example, Non-Patent Document 1 proposes a method for determining VNF allocation and routes that not only satisfies communication performance such as communication delay of the entire communication network but also minimizes the amount of power consumed in the entire communication network, with the aim of greening the power consumption of the entire communication network. However, Non-Patent Document 1 does not assume that the communication network will be operated with renewable energy.
[0005] On the other hand, Non-Patent Document 2 proposes a planning method for appropriately allocating virtual machines (VMs) to physical nodes so that the amount of power consumed to run the VMs associated with each service can be covered as much as possible by renewable energy, while ensuring communication performance such as preventing congestion on the communication network.
[0006] MM Tajiki, S Salsano, L. Chiaraviglio, M. Shojafar, and B. Akbari, "Joint energy efficient and QoS-aware path allocation and VNF placement for service function chaining," IEEE Transactions on Network and service management, 2019. Ryota Nakamura and Kunaki Harada, "Proposal of an ICT load placement method considering renewable energy," Proceedings of the IEICE Annual Conference, March 2022.
[0007] However, when considering allocating a VM at a certain time, Non-Patent Document 2 fails to consider constraints that arise when a VM that was allocated to another physical node at the time before the allocation is moved by live migration or the like. For example, live migration does not necessarily allow a VM to be moved to an arbitrary physical node in terms of latency. Therefore, if a VM is allocated without considering latency constraints, the VM may not be moved by the time it should have been allocated, resulting in a delay in service provision. Furthermore, live migration generates traffic volume, which places a load on the link used to move the VM. In addition, additional power consumption is incurred on each of the two physical nodes before and after the VM is moved.
[0008] If VMs are allocated without any consideration of the traffic volume and power consumption generated by VM migration, various problems will arise, such as degradation of communication performance, congestion, increased costs due to purchasing power shortages, and increased environmental load due to a decrease in the utilization rate of renewable energy. Therefore, a method is needed to determine VM allocation and routes that take into account constraints on the delay time between physical nodes before and after VM migration, as well as the traffic and additional power consumption generated by VM migration.
[0009] The present invention has been made in view of the above points, and has an object to enable allocation of a virtual network taking into consideration the movement of virtual machines.
[0010] In order to solve the above problem, the virtual network allocation device has an allocation determination unit configured to allocate one or more virtual machines to multiple physical nodes constituting a physical network at each time during a certain period, determine the route at each time between the virtual machine and a user who uses a service provided by the virtual machine in the physical network, and determine the route for movement of the virtual machine at each time in the physical network so as to minimize the sum of the difference between the amount of power generated and the amount of power consumed in all of the physical nodes at all of the times and the sum of the maximum values of link utilization rates occurring in all of the services at all of the times.
[0011] It is possible to allocate a virtual network taking into consideration the movement of a virtual machine.
[0012] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, and are not intended to be limiting unless otherwise specified.
[0013] This embodiment discloses a virtual network allocation method that takes into account constraints on latency between physical nodes before and after VM migration, as well as traffic and power consumption generated by VM migration. The method of this embodiment determines the allocation of VMs (virtual machines) at each time point over a certain future period, the routes connecting users and VMs, and the transfer routes between VM movements (VM migration routes). This method ensures communication performance and prevents congestion on the communication network, while also guaranteeing latency between physical nodes before and after VM migration. Additionally, it simultaneously minimizes costs related to supply and demand balance on the network and distributes loads related to traffic volume, taking into account traffic and power consumption generated by VM migration. The method of this embodiment is formulated as an integer linear programming problem, allowing it to be realized using a class of algorithms that can be easily solved by existing solvers.
[0014] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0015] As shown in FIG. 1, a physical network is targeted, which has a supply source of renewable energy (hereinafter also referred to as "renewable energy") and a predetermined topology (the topology is known). The current time is k=0, and N S Consider the problem of embedding virtual networks corresponding to services. Here, S is described as a set of virtual networks, and a physical network is composed of physical nodes and physical links, with N being a set of physical nodes and L being a set of physical links. In this embodiment, there is a one-to-one correspondence between virtual networks and services. There is a one-to-one correspondence between VMs that provide services via virtual networks and virtual networks. Therefore, there is a one-to-one correspondence between VMs and services. In the following, the sth VM and the sth service refer to the VM or service corresponding to the sth virtual network.
[0016] It is assumed that there are two types of physical nodes: one plays the role of a router or a user accommodating station, and the other is a node that, in addition to the above roles, also plays the role of a data center that processes virtual machines (VMs). Hereinafter, the latter node is called a "DC node," and the set of DC nodes is called N. DC ⊆N.
[0017] Assuming that a renewable energy power generation facility is installed next to the DC node, the amount of renewable energy power generation supplied to the nth physical node at time k is ξ n k It is written as:
[0018] On the other hand, the target service is assumed to be a virtual network consisting of three elements: a user, a VM, and a virtual link, and is called a stateful service. In this case, the user's location (one of the user accommodation nodes existing on the physical node) is given in advance. Also, when a virtual network is assigned and the user location and the VM placement location (one of the DC nodes existing on the physical node) are different, traffic occurs between the user and the node where the VM is placed. In this case, the amount of traffic generated in the sth virtual network at time k is defined as λ s k It is written as follows.
[0019] Here, x ns k A binary variable is introduced that takes the value of 1 when the sth VM is placed on the nth physical node at time k and the value of 0 otherwise. In this case, the total power consumption generated by moving a VM from the nth DC node to a DC node other than the nth DC node, or by moving the sth VM from a DC node other than the nth DC node to the nth DC node from time k-1 to time k, is defined as follows:
[0020] where α ns k represents the total power consumption generated by migrating the s-th VM from the n-th DC node to a DC node other than the n-th DC node at time k-1 to time k, and β ns krepresents the total power consumption generated by migrating the s-th VM from a DC node other than the n-th DC node to the n-th DC node from time k−1 to time k.
[0021] Furthermore, the total amount of traffic generated when the sth VM is migrated from time k-1 to time k is μ s k Let's say.
[0022] Based on the above preparations, we formulate the virtual network allocation problem that utilizes renewable energy while taking into account the power consumption generated by VM migration as the following optimization problem.
[0023] Here, y ls k is the traffic volume λ associated with the sth service at time k. s k is a binary variable that takes the value 1 when transmitting on the lth physical link and the value 0 otherwise, while z ls k is the total traffic volume μ generated when migrating a VM (s-th VM) corresponding to the s-th service from time k-1 to time k. s k is a binary variable that takes the value of 1 when transmitting on the lth physical link and the value of 0 otherwise. In the optimization problem (2a)-(2k), equation (2a) represents minimizing the sum of the total cost related to the supply and demand balance on all DC nodes at all times and the sum of the maximum values of the link utilization rates (physical link utilization rates) occurring in all services at all times. That is, the objective function J n k(x ns k ) represents the cost related to the supply and demand balance on the nth DC node at time k, and the objective function ψ k (y ls k , z ls k ) represents the maximum value of all link utilizations at time k, and are defined as follows:
[0024] However, in equation (3), π(x nsk , ξ n k ) is a function defined as follows:
[0025] This function represents the cost determined by the supply and demand balance at the nth DC node at time k (the difference between the amount of power generated by the power generation facility attached to the nth DC node and the amount of power consumed by all the DC nodes). n k is the amount of renewable energy power supplied to the nth physical node at time k, and d ns k represents the amount of power consumption generated when the sth VM is placed on the nth physical node at time k. n k(x ns k ) is π(x ns k , ξ n k ) is positive, it means that there is surplus power, and the smaller the value, the more renewable energy generated is utilized (renewable energy is being used without waste). ns k , ξ n k ) is negative, it represents the cost required to compensate for the amount of electricity that cannot be covered by renewable energy generation, and c n k represents the coefficient required for compensation. k (y ls k , z ls k ) is the maximum value of all link utilization rates at time k, and by reducing this value, it is possible to distribute the load on the network.
[0026] Although the optimization problems (2a)-(2k) use the objective functions (3) and (4), it should be noted that the following discussion is equally applicable to functions of the class of linear functions, maximum functions, etc.
[0027] Constraints (2b)-(2d) represent constraints on the CPU, memory, and storage capacity of each DC node, respectively, and θ ns cpu , θns mem , θ ns st are the values of CPU, memory, and storage that occur when the sth VM is placed on the nth DC node. These values may be, for example, the respective usage rates. In (2b)-(2d), at each time and in each DC node, the sum of these values is the upper limit value (θ -cpu , θ -mem , θ -st ) or less. However, θ - corresponds to the symbol with a minus sign above θ in the formula.
[0028] Constraint (2e) states that the total traffic volume accommodated on each physical link l at time k is within the bandwidth Φ l The constraints that must be met are as follows: Here, the first term on the left side of (2d) is the total amount of traffic generated to process the service at time k and accommodated on link l, and the second term on the left side is the total amount of traffic that passes through link l when migrating VMs from time k-1 to k.
[0029] Inequality (2f) is the upper limit of latency T 1,s is a constraint on the delay time of the sth service for p ls represents the delay time required when traffic associated with the sth service is transmitted over the lth physical link.
[0030] Inequality (2g) is the upper limit of latency T 2,s This is a constraint on the delay time caused by VM migration of the sth service for q ls represents the delay time required when a VM associated with the sth service is moved via the lth physical link (i.e., the delay time required for the VM to move via the lth physical link).
[0031] Equation (2h) is a constraint that means that a VM node in each virtual network can only be placed on one DC node.
[0032] Equation (2i) represents the conservation law of outflow regarding the traffic volume associated with the sth service in the nth physical node. Equation (2j) represents the conservation law of outflow regarding the traffic volume generated when migrating a VM associated with the sth service in the nth physical node. Here, the following represents the incoming link set in physical node n.
[0033] Also, the following represents the set of incoming links at physical node n:
[0034] Also, u ns k is a binary value that takes the value 1 when a user associated with the sth service at time k is accommodated in the nth physical node, and is a parameter that is given in advance.
[0035] Formula (2k) is x ns k , y ls k , z ls k is a binary variable imposed on the decision variables of
[0036] Finally, in optimization problems (2a)-(2k), x ns 0 is assumed to be given in advance.
[0037] To solve the optimization problems (2a)-(2k) (to find the values of x, y, and z), we reduce them to the following solvable class of integer linear programming problems: In the following integer linear programming problems, in addition to x, y, and z, η and ρ are also variables (subjects of calculation).
[0038] Since (6a)-(6g) are integer linear programming problems, they can be easily solved using existing solvers.
[0039] In this embodiment, it is possible to construct a virtual network allocation algorithm for stateless services using a similar formulation. The features of stateless services are that the virtual network is described by a single virtual machine, and that the service can be processed over multiple times by combining operation and stop. In the former case, the concept of a virtual link disappears, so y in the allocation problem (2a)-(2k) can be ls k Regarding the latter, the number of times required to process the sth stateless service up to K steps ahead is set as H s This means that the following constraints are imposed:
[0040] Furthermore, assuming that the amount of power consumption generated by the operations of starting, stopping, and migrating a VM in a stateless service is the same, the amount of power consumption generated by starting, stopping, and migrating a VM can be expressed by equation (1).From the above, the optimization problem for solving the virtual network allocation problem for a stateless service can be formulated as follows.
[0041] For the sake of convenience, the solution method for stateful services and the solution method for stateless services are described separately, but this embodiment can also be formulated as an optimization problem in a situation where stateful services and stateless services are allocated simultaneously.
[0042] [Virtual Network Allocating Device 10] The virtual network allocating device 10 that calculates the above optimization problem will now be described. Fig. 2 is a diagram showing an example of the hardware configuration of the virtual network allocating device 10 according to an embodiment of the present invention. The virtual network allocating device 10 in Fig. 2 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a processor 104, and an interface device 105, all of which are connected to each other via a bus B.
[0043] A program that realizes processing in the virtual network allocating device 10 is provided by a recording medium 101 such as a CD-ROM. When the recording medium 101 storing the program is set in the drive device 100, the program is installed from the recording medium 101 to the auxiliary storage device 102 via the drive device 100. However, the program does not necessarily have to be installed from the recording medium 101, but may be downloaded from another computer via a network. The auxiliary storage device 102 stores the installed program as well as necessary files, data, etc.
[0044] When an instruction to start a program is received, the memory device 103 reads and stores the program from the auxiliary storage device 102. The processor 104 is a CPU or a GPU (Graphics Processing Unit), or a CPU and a GPU, and executes functions related to the virtual network allocating device 10 in accordance with the program stored in the memory device 103. The interface device 105 is used as an interface for connecting to a network.
[0045] 3 is a diagram showing an example of the functional configuration of the virtual network allocating device 10 according to an embodiment of the present invention. In FIG. 3, the virtual network allocating device 10 includes a physical network information collecting unit 11, a virtual network information collecting unit 12, a VM migration related information collecting unit 13, an allocation determining unit 14, and a control unit 15. Each of these units is realized by a process in which one or more programs installed in the virtual network allocating device 10 are executed by the processor 104.
[0046] The physical network information collection unit 11 collects information on the topology of the physical network and the maximum capacity Φ of the physical link. l , the delay time p ls , the amount of renewable energy power supplied to the DC node at each time ξ n k , parameters related to the amount of power consumption / CPU / memory / storage generated when processing VMs on the virtual network at each time (d ns k , θ nscpu , θ ns mem , θ ns st , θ -cpu , θ -mem , θ -st ) is obtained from the database. Note that the parameters that depend on k are registered in the database based on various types of predicted information up to K steps ahead that are calculated using some kind of algorithm from information observed on each DC node. Note that the maximum number of time steps K for allocation is determined in advance by the designer who performs the allocation before various types of information are stored in the database. The step size of k is, for example, 1 second.
[0047] The virtual network information collection unit 12 collects the location u of the user on the virtual network at each time. ns k and the traffic volume of the service linked to the virtual network, λ s k The information is obtained from the database. ns k may be registered in a database that manages the physical network, for example. s k It is sufficient that the prediction information for up to K steps ahead calculated by some algorithm is registered in the database.
[0048] The VM migration related information collection unit 13 calculates the amount of power consumed when migrating a VM linked to a virtual network at each time (α ns k , β ns k ) and the delay time q required to migrate a VM via a physical link ls The information is calculated by some algorithm (α ns k , β ns k It is sufficient that the prediction information (for example, up to K steps ahead) is registered in the database.
[0049] Each of the databases described above can be realized using, for example, the auxiliary storage device 102 or a storage device connectable to the virtual network allocating device 10 via a network.
[0050] The allocation determination unit 14 acquires information acquired from the physical network information collection unit 11, the virtual network information collection unit 12, and the VM migration related information collection unit 13, as well as information acquired from the parameter c n k Determine γ. n k and γ may be preset by the designer. n k is a coefficient necessary to compensate for the cost required to compensate for the amount of power not covered by the renewable energy power generation amount supplied to the nth physical node at time k, and γ is a parameter representing the weight of the objective function (the second term of equation (2a)). The allocation determination unit 14 determines the allocation of one or more virtual machines to multiple physical nodes constituting a physical network at each time period (K), the routes between the virtual machines and users who use the services provided by the virtual machines in the physical network at each time period, and the routes for virtual machine movement at each time period in the physical network at each time period by solving the integer linear programming problems (6a)-(6g), so as to minimize the sum of the difference between the amount of power generation and the amount of power consumption at all physical nodes at all times and the sum of the maximum link utilization rates occurring in all services at all times. In other words, the determination unit determines the allocation of traffic for services provided by the virtual machines to physical links connecting the physical nodes at each time period to determine the routes for virtual machines and users who use the services provided by the virtual machines at each time period, and determines the routes for virtual machine movement at each time period by determining the allocation of traffic associated with virtual machine movement to physical links at each time period.
[0051] The control unit 15 allocates VMs on the actual physical network and controls the transmission paths and VM migration based on the obtained optimal solution. Specifically, the control unit 15 allocates VMs to physical nodes based on x, controls the transmission paths between users and VMs based on y, and controls the transfer paths for VM migration based on z.
[0052] As described above, according to this embodiment, it is possible to allocate a virtual network taking into consideration the movement of a virtual machine.
[0053] More specifically, according to this embodiment, it is possible to guarantee communication performance on the communication network and prevent congestion, while also making it possible to guarantee the delay time that occurs between physical nodes before and after the migration of a VM.
[0054] In addition, the algorithm simultaneously minimizes costs related to supply and demand balancing on the network and distributes load related to traffic, taking into account the traffic and power consumption generated by VM migration. The balance between the costs related to supply and demand balancing and the load distribution costs related to traffic can be adjusted using the parameter γ. Furthermore, conventional methods do not consider the traffic and power consumption caused by VM migration, which can lead to congestion on the network and worsening costs related to supply and demand balancing due to sudden increases in traffic and power consumption caused by frequent VM migration. However, the algorithm we invented enables optimal virtual network allocation that avoids congestion while taking into account the increases in traffic and power consumption caused by frequent VM migration.
[0055] Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims.
[0056] REFERENCE SIGNS LIST 10 Virtual network allocation device 11 Physical network information collection unit 12 Virtual network information collection unit 13 VM migration related information collection unit 14 Allocation determination unit 15 Control unit 100 Drive device 101 Recording medium 102 Auxiliary storage device 103 Memory device 104 Processor 105 Interface device B Bus
Claims
1. A virtual network allocation device characterized by having an allocation determination unit configured to allocate one or more virtual machines to multiple physical nodes that make up a physical network at each time during a certain period of time, determine the route between the virtual machine and a user who uses a service provided by the virtual machine in the physical network at each time, and determine the route for movement of the virtual machine in the physical network at each time so as to minimize the sum of the difference between the amount of power generated and the amount of power consumed in all of the physical nodes at all of the times and the sum of the maximum values of link utilization rates occurring in all of the services at all of the times.
2. The virtual network allocation device of claim 1, characterized in that the allocation determination unit is configured to determine the route at each time between the virtual machine and a user who uses the service provided by the virtual machine by determining the allocation at each time of traffic of the service provided by the virtual machine to the physical links connecting the physical nodes, and to determine the route for the movement of the virtual machine at each time by determining the allocation at each time of traffic associated with the movement of the virtual machine to the physical links.
3. The virtual network allocation device according to claim 2, characterized in that the allocation determination unit is configured to determine the allocation based on the maximum capacity of the physical links, the delay time occurring in each of the physical links, the amount of power generated at each time, the amount of power consumed by the virtual machine at each time, the physical node accommodating the user at each time, the traffic volume of the service at each time, the amount of power consumed when the virtual machine is moved at each time, and the delay time required for the virtual machine to travel via the physical link when moving at each time.
4. A virtual network allocation method characterized by being executed by a computer, comprising: an allocation determination procedure for allocating one or more virtual machines to multiple physical nodes constituting a physical network at each time during a certain period; determining a route at each time between the virtual machines and users who use the services provided by the virtual machines in the physical network; and determining a route for movement of the virtual machines in the physical network at each time so as to minimize the sum of the difference between the amount of power generated and the amount of power consumed in all of the physical nodes at all of the times and the sum of the maximum values of link utilization rates occurring in all of the services at all of the times.
5. A program that causes a computer to execute an allocation determination procedure that determines the allocation of one or more virtual machines to multiple physical nodes that make up a physical network at each time during a certain period, the route between the virtual machines and users who use the services provided by the virtual machines at each time in the physical network, and the route for movement of the virtual machines at each time in the physical network, so as to minimize the sum of the difference between the amount of power generated and the amount of power consumed at all of the physical nodes at all of the times and the sum of the maximum values of link utilization rates occurring in all of the services at all of the times.
Citation Information
Patent Citations
Virtualization system, management server, and migration method
JP2017182435A
Control device, control method, and program
WO2023026340A1
Virtual machine provisioning device, virtual machine provisioning method, and program
WO2023112160A1