WO2014208661A1 - 仮想マシン配置設計装置及び方法とシステム並びにプログラム - Google Patents

仮想マシン配置設計装置及び方法とシステム並びにプログラム Download PDF

Info

Publication number
WO2014208661A1
WO2014208661A1 PCT/JP2014/066973 JP2014066973W WO2014208661A1 WO 2014208661 A1 WO2014208661 A1 WO 2014208661A1 JP 2014066973 W JP2014066973 W JP 2014066973W WO 2014208661 A1 WO2014208661 A1 WO 2014208661A1
Authority
WO
WIPO (PCT)
Prior art keywords
link
virtual machine
matrix
network
node
Prior art date
Application number
PCT/JP2014/066973
Other languages
English (en)
French (fr)
Inventor
勇人 逸身
靖伸 千葉
悠介 篠原
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2015524109A priority Critical patent/JPWO2014208661A1/ja
Priority to US14/392,305 priority patent/US9904566B2/en
Publication of WO2014208661A1 publication Critical patent/WO2014208661A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5019Workload prediction

Definitions

  • the present invention is based on a Japanese patent application: Japanese Patent Application No. 2013-134699 (filed on June 27, 2013), and the entire contents of this application are incorporated in the present specification by reference.
  • the present invention relates to an apparatus, method, system, and program for performing layout design of a virtual machine.
  • Various appliances included in the network of a telecommunications carrier, for example, MME (Mobility Management Entity), S-GW (Serving-Gateway), P-GW (PDN (Packet data D ) -Gateway), router, large-scale NAT (Large Scale Network Address Translation: LSN), HLR (Home Location Register), RNC (Radio Network Controller) / eNodeB, firewall, authentication server, etc. are now configured with dedicated devices.
  • MME Mobility Management Entity
  • S-GW Server-Gateway
  • P-GW Packet data D
  • LSN Large-scale NAT (Large Scale Network Address Translation: LSN)
  • HLR Home Location Register
  • RNC Radio Network Controller
  • eNodeB firewall, authentication server, etc.
  • NFV for example, by implementing a server virtualization technology using a general-purpose server, the facility cost and the operation cost are reduced. Moreover, it is possible to improve fault tolerance by adding resources to an increase in communication load such as a control
  • Patent Document 1 discloses that the architecture design process of a cloud application corresponds to a virtual machine group and a physical machine in which each virtual machine is arranged in the resource allocation design phase. A configuration to determine is disclosed.
  • Patent Document 2 as a process of narrowing down physical machines, a physical machine in which a virtual machine is generated is excluded from candidates, whether or not there is one candidate physical machine, and the number of candidate physical machines can be narrowed down to one. If the physical machine narrowing process is completed and the number of candidate physical machines is not one, the number of virtual machines currently operating on each candidate physical machine A configuration in which a physical machine having the smallest number of virtual machines is selected from the ID is disclosed.
  • Patent Document 3 when a computer equipment management apparatus receives an arrangement request for requesting the arrangement of a new virtual computer from the outside, the computer equipment management apparatus is arranged on the computer equipment as a virtual computer among a plurality of virtual hardware facilities.
  • a configuration is disclosed in which one of the virtual hardware facilities that is not present is determined as a virtual hardware facility for new placement, and the determined virtual hardware facility for new placement is placed on the computer equipment as a virtual computer.
  • the placement of virtual machines has attracted attention. For example, it is possible to minimize power consumption by accommodating virtual machines in as few physical machines as possible, or to accommodate multiple virtual machines with a large amount of generated traffic in the same physical machine or a nearby physical machine. This is because the generated traffic is expected to be localized.
  • the present invention was created based on recognition of the above-mentioned problems, and its purpose is to provide a virtual machine arrangement design apparatus, system, method, and program capable of realizing network load distribution in virtualizing network functions. It is to provide.
  • VM placement destination calculation means for selecting a physical machine for placing a virtual machine that virtualizes a network function based on the input request resource; Comprising at least The VM placement destination calculation means includes: When the virtual machine is arranged in the physical machine that meets the conditions specified by the request resource, the traffic amount flowing to the network to which the physical machine is connected is predicted, and the link amount of the network is estimated from the predicted traffic amount.
  • a virtual machine arrangement design apparatus that selects a physical machine that balances utilization as a placement destination of the virtual machine.
  • a virtual machine arrangement design apparatus that arranges a plurality of virtual machines that provide the same function or the same service on different physical machines as much as possible.
  • the process of entering the requested resource A process of selecting a physical machine on which a virtual machine that virtualizes a network function is arranged based on the input request resource, When the virtual machine is arranged in the physical machine that meets the conditions specified by the request resource, the traffic amount flowing in the link between the nodes of the network to which the physical machine is connected is predicted.
  • a computer-readable medium semiconductor memory, magnetic / optical disk, etc. storing the program of viewpoint 4 is provided.
  • Means for providing the requested resource to the virtual machine placement apparatus A physical machine connected to the virtual machine placement device; A virtual machine connected to the virtual machine placement device; A network connected to the virtual machine placement device; A communication system is provided.
  • network load distribution can be realized in network virtualization.
  • Embodiment 1 of this invention It is a figure which illustrates the structure of Embodiment 1 of this invention. It is a flowchart explaining operation
  • (A), (B) is a figure which illustrates typically the PM filtering in Embodiment 1 of this invention, and generation
  • (A), (B) is a figure which illustrates typically selection of PM in which the link utilization rate balances in Embodiment 1 of this invention, and the following VM selection.
  • (A), (B) is a figure explaining the link utilization factor of a network in Embodiment 1 of this invention, and a link utilization factor matrix.
  • (A), (B) is a figure explaining the prediction of the generated traffic volume in Embodiment 1 of this invention, and a generated traffic matrix. It is a figure explaining calculation of the prediction link utilization factor in Embodiment 1 of the present invention. It is a figure explaining Embodiment 2 of this invention. It is a figure explaining Embodiment 2 of this invention. It is a figure explaining the basic concept of this invention.
  • the virtual machine arrangement design device (10) is based on request resource input means (19) for inputting a request resource and the input request resource.
  • VM placement destination calculation means (14) for selecting a physical machine (PM) (40) in which a virtual machine (VM) (30) for virtualizing the network function is placed.
  • the VM placement destination calculation means (14) connects the physical machine (40) when the virtual machine (30) is placed in each physical machine (40) that meets the conditions specified by the requested resource. Predict the amount of traffic flowing on the link of the network (50).
  • the VM placement destination calculation means (14) determines the physical machine (40) that balances (equalizes) the link utilization rate in the network (50) based on the predicted traffic volume as the virtual machine (30). Select as placement destination.
  • the requested resource input unit (19) and the VM placement destination calculation unit (14) may realize their functions by a program executed by a computer constituting the apparatus.
  • the VM placement destination calculation means (14) Calculating a link selection probability that a link between a source and a destination is selected based on a link utilization rate measured for the link of the network (50); Based on the link selection probability and the traffic volume from the source to the destination, the generated traffic amount of the link is predicted, Calculate the expected link utilization rate from the link utilization rate and the generated traffic volume, Calculating the degree of balance (for example, variance) of the expected link utilization rate; Based on the degree of balance, a physical machine that balances (equalizes) the predicted link utilization rate is selected as a virtual machine placement destination.
  • the degree of balance for example, variance
  • the virtual machine arrangement design device (10) includes a unit (15 in FIG. 1) for acquiring the topology information of the network and a storage device (FIG. 1) that stores the acquired topology information. 11).
  • the topology information of the network includes link information of a link between nodes of the network, and the link information is included in a route having directionality from a transmission source to a destination in the network.
  • the link information For each link, information on a node connected to the link start end, information on a node connected to the link end, link bandwidth, and link utilization rate may be included.
  • the network topology information may include location information of the physical machine in the network.
  • the generated traffic volume matrix TM is calculated from the link selection probability matrix P od and the traffic volume between the transmission source and the destination,
  • a plurality of virtual machines that provide the same function or the same service may be arranged in different physical machines as much as possible.
  • description will be given in accordance with the embodiment.
  • FIG. 1 is a diagram illustrating the configuration of the first exemplary embodiment of the present invention.
  • a request source 20 that requests placement of a virtual machine (VM), a VM placement design unit 10 that performs placement design of a virtual machine, a virtual machine 30, a physical machine 40, and a network 50 are provided. Yes.
  • the request source 20 may be configured by, for example, an OSS / BSS (Operation Support Systems / Business Support Systems) of a communication carrier.
  • OSS / BSS Operaation Support Systems / Business Support Systems
  • the physical machine 40 may be configured by a server device or the like, or may be a node connected to the network 50 or a node of the network 50.
  • the virtual machine 30 functions as a virtual appliance that virtualizes network devices and the like, and is allocated on the physical machine.
  • the VM layout design unit 10 performs layout design of the virtual machine 30 on the physical machine 40.
  • the VM arrangement design unit 10 includes a topology information storage unit 11, a virtual machine information storage unit 12, a physical machine information storage unit 13, a VM arrangement destination calculation unit 14, a topology information acquisition unit 15, a virtual machine information acquisition unit 16, and physical machine information.
  • An acquisition unit 17, a VM allocation unit 18, and a request resource input unit 19 are provided.
  • the topology information storage unit 11 stores the topology information of the network 50 acquired by the topology information acquisition unit 15.
  • the virtual machine information storage unit 12 stores information on the virtual machine 30 acquired by the virtual machine information acquisition unit 16.
  • the physical machine information storage unit 13 stores information on the physical machine 40 acquired by the physical machine information acquisition unit 17.
  • the VM allocation unit 18 allocates virtual machines.
  • the request resource input unit 19 (corresponding to the request resource input unit 19 in FIG. 15) inputs a request from the request source 20 and inputs it to the VM allocation unit 18 and the VM placement destination calculation unit 14.
  • the VM placement destination calculation unit 14 calculates a physical machine (PM) in which a virtual machine (VM) is placed.
  • the topology information stored in the topology information storage unit 11 is: ⁇ Link information and ⁇ Host location (HOST location) including.
  • link information is related to each link (link connecting a node pair) included in a route having a direction from a source to a destination in a network.
  • Link start node (From) ⁇ Link end node (To)
  • Link bandwidth ⁇ Link usage rate, including.
  • the link utilization rate of the link information included in the topology information is a measurement result for the network 50.
  • the link utilization rate is acquired from the network 50 by the topology information acquisition unit 15, for example, periodically or when a predetermined event occurs.
  • the host location (HOST location) included in the topology information is information on which physical machine the virtual machine is arranged.
  • the virtual machine information stored in the virtual machine information storage unit 12 is not particularly limited, ⁇ Virtual machine CPU (Central Processing Unit), ⁇ memory, ⁇ service, -Host location information (which physical machine the virtual machine belongs to) including. Information about which physical machine the virtual machine belongs to is calculated by the VM placement destination calculation unit 14 and set in the virtual machine.
  • ⁇ Virtual machine CPU Central Processing Unit
  • ⁇ memory ⁇ memory
  • ⁇ service -Host location information (which physical machine the virtual machine belongs to) including.
  • Information about which physical machine the virtual machine belongs to is calculated by the VM placement destination calculation unit 14 and set in the virtual machine.
  • the physical machine information stored in the physical machine information storage unit 13 includes hardware information of the physical machine, for example, performance information such as CPU, memory, storage, and capacity information.
  • a virtual machine (VM) that virtualizes functions of network devices / equipment is mounted on a virtual machine monitor (Virtual Machine Monitor) such as a hypervisor that is a virtualization platform of a server device that constitutes a physical machine (PM), for example. . It is assumed that the virtual machine 30 can cope with the CPU performance, memory capacity, etc. of the prepared physical machine 40.
  • a virtual machine monitor Virtual Machine Monitor
  • hypervisor that is a virtualization platform of a server device that constitutes a physical machine (PM), for example.
  • PM physical machine
  • each of the units 14-19 may be realized by a program executed by a computer.
  • FIG. 2 is a flowchart for explaining the operation of the first embodiment. The operation of the first embodiment will be described with reference to FIGS.
  • the request resource input unit 19 of the VM arrangement design unit 10 inputs the request resource from the request source 20 (step S1).
  • the VM allocation unit 18 of the VM arrangement design unit 10 selects one VM (step S2).
  • the physical machine information acquisition unit 17 of the VM arrangement design unit 10 lists selectable physical machines (step S3).
  • the VM placement destination calculation unit 14 of the VM placement design unit 10 selects (filters) physical machines that satisfy the condition (computing requirement) requested by the requested resource (step S4).
  • the VM placement destination calculation unit 14 of the VM placement design unit 10 selects a physical machine (PM) on which a virtual machine (VM) is placed (step S5). At that time, the VM placement destination calculation unit 14 refers to the topology information storage unit 11, the virtual machine information storage unit 12, and the physical machine information storage unit 13, and adds the virtual machine to the physical machine (PM) selected in step S 4. , The amount of traffic flowing in the network 50 to which the physical machine (PM) is connected is predicted, and the physical machine (PM) that balances the link utilization rate in the network 50 is selected from the predicted traffic amount. .
  • step S6 If all of the virtual machines (VMs) requested by the requested resource have not been completed and there are remaining virtual machines (VMs) to be assigned (Yes branch in step S6), the process returns to step S2 to return to another virtual machine (VM). Select a machine (VM). When all the allocation of the virtual machine (VM) requested by the requested resource is completed (No branch in step S6), the allocation result is output (step S7).
  • FIG. 3 is a diagram illustrating an example of an operation sequence of virtual machine (VM) allocation (steps S1 and S2 in FIG. 2).
  • VM virtual machine
  • Request resource is input from the request source 20 to the request resource input unit 19 (1).
  • the request resource input unit 19 transmits a VM placement destination calculation request to the VM placement destination calculation unit 14 (2).
  • the VM placement destination calculation unit 14 calculates the placement destination of the virtual machine (VM) (3).
  • the VM allocation destination calculation unit 14 transmits a VM allocation request to the VM allocation unit 18 (4).
  • the VM allocation unit 18 allocates one of a plurality of virtual machines (VMs) 30 (5).
  • FIG. 4 is a diagram for explaining the topology information acquisition of the network 50.
  • the topology information acquisition unit 15 transmits a topology information acquisition request to the network 50 (1).
  • the topology information acquisition unit 15 acquires topology information from the network 50 (2). Specifically, connection information is acquired from the network node.
  • the topology information acquisition unit 15 stores the topology information in the topology information storage unit 11 (3).
  • the topology information acquisition unit 15 transmits a topology information acquisition request at a predetermined event occurrence or periodically (4), and holds the topology information following the change in the topology of the network 50.
  • FIG. 5 is a diagram for explaining an example of an operation sequence for acquiring physical machine information.
  • each sequence is numbered.
  • the numbers in parentheses at the end of the description below correspond to the sequence numbers.
  • the physical machine information acquisition unit 17 transmits a physical machine information acquisition request to the physical machine 40 (1), and acquires physical machine information from the physical machine 40 (2).
  • the physical machine information acquisition unit 17 stores the physical machine information in the physical machine information storage unit 13 (3).
  • the physical machine information acquisition unit 17 periodically transmits a physical machine information acquisition request to the physical machine 40 (4), and holds physical machine information that follows the latest information, such as changes to the physical machine 40. To do.
  • FIG. 6 is a diagram illustrating an example of an operation sequence for acquiring virtual machine information.
  • each sequence is numbered.
  • the numbers in parentheses at the end of the description below correspond to the sequence numbers.
  • An operation sequence for acquiring virtual machine information will be described with reference to FIGS.
  • the virtual machine information acquisition unit 16 transmits a virtual machine information acquisition request to the virtual machine 30 (1), and acquires virtual machine information from the virtual machine 30 (2).
  • the virtual machine information acquisition unit 16 stores the virtual machine information in the virtual machine information storage unit 12 (3).
  • the virtual machine information acquisition unit 16 sends a virtual machine information acquisition request to a virtual machine 30 periodically or when a predetermined event occurs (4), and retains virtual machine information that follows the latest information such as changes to the virtual machine 30 To do.
  • FIG. 7A is a diagram schematically illustrating request resource (VM performance) input according to the first embodiment.
  • the physical machines PM0 to PM2 are connected to the gateways GW0 and GW1 through an interconnect network.
  • the request resource for the virtual machine VM is CPU: 1, Memory: 1, BW (Band): Bands between GW0 and GW1 are both 100 Mbps (Megabit per second).
  • “1” in “CPU: 1” and “Memory: 1” represents a unit of CPU (performance unit) and a unit of memory capacity (capacity unit), respectively.
  • FIG. 7B is a diagram illustrating selection of a virtual machine (VM) (step S2 in FIG. 2) in the first embodiment.
  • VM0 is selected as one virtual machine (VM).
  • FIG. 8A is a diagram schematically illustrating physical machine selection (PM filtering) in the first embodiment.
  • PM0 as available resources, the available CPU is 10, and the available Memory capacity is 10.
  • PM2 the available CPU is 0, and the available memory has a memory capacity of 1.
  • PM2 all CPU resources are allocated to other VMs and there is no available CPU. In this case, PM0 is selected and PM2 is deselected. Note that the resources available for PM1 are not shown, but PM1 is also a selection candidate if it meets the conditions specified by the requested resource.
  • FIG. 8B illustrates the direction from the transmission source to the destination when the VM placement destination calculation unit 14 of FIG. 1 places a virtual machine (VM) on the filtered physical machine (PM) in the first embodiment. It is a figure which illustrates typically calculation of the traffic amount which generate
  • the virtual machine VM0 is arranged in PM0, and for example, the amount of traffic generated on the link between PM0 and the gateways GW0 and GW1 is predicted.
  • FIG. 9A illustrates a physical machine (PM) in which the VM link destination calculation unit 14 illustrated in FIG. 1 has the predicted link usage rate calculated from the link usage rate and the generated traffic volume most balanced in the network in the first embodiment. It is a figure explaining a mode that PM0 which is) is selected.
  • the expected link utilization rate is calculated from the link utilization rate and the generated traffic volume, the degree of balance of the expected link utilization rate in the network is calculated, and the physical machine (PM) with the highest degree of balance is selected.
  • the physical machine PM0 is selected as the placement destination of the virtual machine VM0.
  • the placement destination of the next virtual machine VM1 is determined based on the requested resource. Until the arrangement of all the VMs is completed, the processing from FIG. 7A to FIG. 9A is repeated.
  • the link utilization rate is a value obtained by normalizing the amount of traffic per unit time (the amount of data flowing through the network) with the bandwidth.
  • the link utilization is a measured value. For example, the link utilization rate from node 0 to node 1 being 0.5 represents that the traffic volume per unit time of the link from node 0 to node 2 is half of the bandwidth.
  • the link utilization rate from node 0 to node 0 is 0.2 means that the traffic amount per unit time of the link from node 2 to node 0 is 1/5 of the bandwidth.
  • FIG. 10B is a diagram illustrating a link utilization matrix corresponding to FIG. 10A.
  • the element in the j-th row and i-th column of the link utilization rate matrix represents the link utilization rate of the link from the node j to the node i.
  • the link utilization rate is included in the topology information acquired by the topology information acquisition unit 15 of FIG. 1 from the network 50 and stored in the topology information storage unit 11, for example.
  • the VM placement destination calculation unit 14 in FIG. 1 obtains a link selection probability for each link in FIG.
  • the transmission source is the node 0 (for example, the physical machine PM0 in which the virtual machine VM0 of FIG. 8B is arranged), and the destination is the node 9 (for example, FIG. 8B ) GW0)
  • the link selection probability P odij (link selection probability of the link from node i to node j) for each link in the network is shown.
  • the link selection probability P od02 of the link from the node 0 as the transmission source to the node 2 is 1 (always selected).
  • the element P odij in the i-th row and j-th column of the link selection probability matrix P od is a probability that the pair of the transmission source O and the destination D uses a certain link ij (link from the node i to the node j) (MLB). (Multinominal Logit Based routing protocol) Routing).
  • W oi represents the ease of tracing from the source node o to the node i
  • W jd represents the ease of tracing from the node j to the destination node d
  • W od is the source of the transmission. This represents the ease of tracing from the node o to the destination node d.
  • These matrices W and P are both calculated from the link utilization rate (see Non-Patent Documents 2 and 3).
  • the VM placement destination calculation unit 14 in FIG. 1 calculates the amount of generated traffic.
  • a matrix obtained by multiplying each element of the link selection probability matrix (P od ) by the traffic volume of the transmission source and the destination is the generated traffic matrix (TM) (FIG. 11B).
  • the link utilization matrix is represented as a 10 ⁇ 10 square matrix
  • the link selection probability matrix (P od ) and the generated traffic matrix (TM) are both 10 ⁇ 10 10. Is represented as a square matrix.
  • the VM placement destination calculation unit 14 in FIG. 1 calculates an expected link utilization rate (Estimated utilization) (the following equation (2)).
  • An expected link utilization matrix is a sum (matrix sum) of a link utilization matrix (P od ) and a matrix obtained by normalizing a generated traffic matrix (TM) with a band matrix (BW) ( (See FIG. 12).
  • EU ij is the element in the i-th row and j-th column of the expected link utilization matrix (EU)
  • Link_util ij is an element in the i-th row and j-th column of the link utilization matrix (Link_utilization)
  • TM ij is the element in the i-th row and j-th column of the generated traffic matrix TM
  • the VM placement destination calculation unit 14 in FIG. 1 calculates the degree of balance (link_variance) of the expected link utilization rate matrix EU ij by the following equation (3).
  • the VM placement destination calculation unit 14 in FIG. 1 has the highest balance degree value of the formula (3) in the expected link utilization matrix when a virtual machine (VM) is placed for a plurality of physical machines (PM). Select the high (closest to 1) physical machine (PM).
  • FIG. 11A shows the link selection probability Pod ij for each link when the source is node 0 and the destination is node 9.
  • this corresponds to the case where PM0 is arranged at the node 0 and becomes the transmission source, and GW0 is arranged at the node 9 and is the destination.
  • PM1 is arranged at the node 1
  • the degree of balance of the expected link utilization matrix EU ij is calculated in the same manner.
  • the VM placement destination calculation unit 14 in FIG. 1 has the highest balance (distribution) value obtained by Expression (3) with respect to the expected link usage rate matrix (EU) (the link usage rate is the link usage rate).
  • EU expected link usage rate matrix
  • FIGS. 14A to 14C are diagrams illustrating the configuration of the second embodiment of the present invention.
  • FIG. 13A four virtual machines VM1-VM4 are allocated on the physical machine PM1, VM1 and VM2 provide service A, and VM3 and VM4 provide services B and C, respectively.
  • FIG. 13B three virtual machines VM5-VM7 are allocated on the physical machine PM2, and VM5, VM6, VM7 provide service B, service C, and service A, respectively.
  • FIG. 13C three virtual machines VM8-VM10 are allocated on the physical machine PM3, VM8 and VM10 provide service B, and VM9 provides service C.
  • FIG. 14A shows the allocation of a virtual machine providing the service A to a physical machine in a table format.
  • 1, 2 and 3 in the 1st to 3rd rows are the IDs of the physical machines PM, and the numbers in the 1st to 10th columns are the IDs (1-10) of the virtual machines.
  • the virtual machines that provide the service A are VM1, VM2, and PM2 in PM1, and the virtual machine that provides service A does not exist in PM3.
  • FIG. 14B shows the allocation of a virtual machine providing the service B to a physical machine in a table format.
  • FIG. 14A shows the allocation of a virtual machine providing the service B to a physical machine in a table format.
  • FIG. 14C shows the allocation of a virtual machine that provides the service C to a physical machine in a table format.
  • the virtual machine that provides the service C is VM4 in PM1, VM6 in PM2, and VM9 in PM3.
  • 14 (A), (B), and (C) (VM LOCATION ⁇ MATRIX) is the service information of the virtual machine information stored in the virtual machine information storage unit 12 (what service the virtual machine provides) )
  • the HOST location information (which physical machine the virtual machine is placed on) is automatically generated by the VM allocation unit 18 or the like.
  • the PM 3 with the smallest number of VMs is selected.
  • the VM placement destination is selected based on the amount of traffic generated in the network when the VM is placed in the PM from among the PMs that satisfy the performance condition defined in the requested resource. It is also possible to predict and select a PM having the highest balance (dispersion) value of the expected link utilization rate (EU).
  • EU expected link utilization rate
  • the second embodiment by arranging in different physical machines, it is possible to avoid a bias that virtual machines that provide a certain service concentrate on a specific physical machine, and it is possible to achieve load distribution regarding the services. Further, similarly to the first embodiment, it is possible to avoid the concentration of network traffic and the like and to distribute the load.

Abstract

 ネットワーク機能の仮想化にあたりネットワークの負荷分散を実現可能とする。要求リソースを入力する手段と、前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシンを配置する物理マシンを選択するVM配置先計算手段とを少なくとも備え、前記VM配置先計算手段は、前記要求リソースで指定される条件に適合する前記物理マシンに前記仮想マシンをそれぞれ配置した場合において、前記物理マシンが接続するネットワークに流れるトラフィック量を予測し、予測したトラフィック量から、前記ネットワークのリンクの利用率をバランスさせる物理マシンを前記仮想マシンの配置先として選択する。

Description

仮想マシン配置設計装置及び方法とシステム並びにプログラム
 [関連出願についての記載]
 本発明は、日本国特許出願:特願2013-134699号(2013年6月27日出願)に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、仮想マシンの配置設計を行う装置及び方法とシステム並びにプログラムに関する。
 ネットワークをソフトウェアで制御できるようにするSDN(Software Defined Network)技術や、例えばコア網(Core Network)等のネットワーク機能を仮想化する「NFV(Network Functions Virtualization)」等、ネットワークにおいても、IT(Intelligent Technology)技術で培われたサーバ仮想化等によるネットワークアプライアンスの仮想化に関心が高まっている。例えば欧州の標準化団体「ETSI」(European Telecommunications Standards Institute)のNFVグループには多くの有力通信事業者、ベンダ等が参加している。通信事業者の網(network)に含まれる様々なアプライアンス(機器)、例えばモバイルコアの機能であるMME(Mobility Management Entity)、S-GW(Serving-Gateway)、P-GW(PDN(Packet data network)-Gateway)、ルータ、大規模NAT(Large Scale Network Address Translation:LSN)、HLR(Home Location Register)、RNC(Radio Network Controller)/eNodeB、ファイアウォールや認証サーバ等は、現在、それぞれ専用機器で構成されている。NFVでは、例えば汎用のサーバを用いたサーバ仮想化技術で実装することで、設備コスト、運用コストの削減を図る。また、制御信号等の通信負荷の増大等に対してリソースを追加することで、耐障害性を高めることを可能としている(NFVについては例えば非特許文献1等が参照される)。
 仮想マシンへのハードウェア資源等の割り当てに関して、例えば特許文献1には、クラウドアプリケーションのアーキテクチャ設計プロセスが、リソース配分設計フェーズで、仮想マシン群と、各仮想マシンを配置する物理マシンとの対応を決定する構成が開示されている。また特許文献2には、物理マシンを絞り込む処理として、仮想マシンが生成されている物理マシンを候補から外し、候補物理マシンが一台かどうかを確認し、候補の物理マシンが一台に絞り込めた場合には、物理マシンの絞り込み処理を終了し、候補の物理マシンが一台にならなかった場合には、各候補物理マシンで現在動作している仮想マシンの数を物理マシン構成の仮想マシンIDから調べ、最も仮想マシンの数が少ない物理マシンを選ぶ構成が開示されている。さらに、特許文献3には、計算機設備管理装置が、新たな仮想計算機の配置を要求する配置要求を外部から受信すると、複数の仮想ハードウェア設備のうち、仮想計算機として計算機設備上に配置されていない仮想ハードウェア設備のいずれかを新規配置用仮想ハードウェア設備として決定し、決定した新規配置用仮想ハードウェア設備を仮想計算機として計算機設備上に配置させる構成が開示されている。
国際公開第2012/147825号 特開2011-095871号公報 特開2013-054589号公報
"Network Functions Virtualisation Introductory White Paper"、[平成25年4月1日検索]、インターネット<URL:http://www.tid.es/es/Documents/NFV_White_PaperV2.pdf> Y. Honma, M. Aida, H. Shimonishi and A. Iwata, "A New Multi-path Routing Methodology Based on Logit Type Assignment." In FutureNet II, 2009. 篠原悠介、千葉靖伸、下西英之、本間裕大、会田雅樹,"データセンタネットワークにおける効率的マルチパスルーティングとそのOpenFlowネットワークへの適用",信学技報,vol.109,no.448,NS2009-164,pp.13-18,March 2010.
 以下に関連技術の分析を与える。
 NFV等、ネットワーク設備等の仮想化において、仮想マシンの配置が着目されている。例えば仮想マシンを可能な限り少ない物理マシンに収容することで、消費電力の最小化等を図る、あるいは、発生トラフィック量の多い複数の仮想マシンを、同一の物理マシン又は近い物理マシンに収容することで、発生トラフィックの局所化を図ることが期待されるためである。
 ネットワーク機能の仮想化において、仮想マシンの割り当てが適切でない場合、ネットワークのリンクのトラフィックに偏り等が生じ、トラフィックの集中等により、ネットワークの性能保証が困難となる場合が生じる。したがって、ネットワーク機能・設備の仮想化において、ネットワーク全体での負荷分散が必要である。
 本発明は、上記課題の認識に基づき創案されたものであって、その目的は、ネットワーク機能の仮想化にあたり、ネットワークの負荷分散を実現可能とする仮想マシン配置設計装置とシステム、方法、プログラムを提供することにある。
 関連するいくつかの側面の1つによれば(視点1)、要求リソースを入力する手段と、
 前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシンを配置する物理マシンを選択するVM配置先計算手段と、
 を少なくとも備え、
 前記VM配置先計算手段は、
 前記要求リソースで指定される条件に適合する前記物理マシンに前記仮想マシンを配置した場合において、前記物理マシンが接続するネットワークに流れるトラフィック量を予測し、予測したトラフィック量から、前記ネットワークのリンクの利用率をバランスさせる物理マシンを、前記仮想マシンの配置先として選択する、仮想マシン配置設計装置が提供される。
 関連する他の側面の1つによれば(視点2)、同一の機能又は同一のサービスを提供する複数の仮想マシンをできる限り、異なる物理マシンに配置する、仮想マシン配置設計装置が提供される。
 関連する他の側面の1つによれば(視点3)、要求リソースを入力する工程と、
 前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシンを配置する物理マシンを選択するVM配置先計算工程と、
 を少なくとも含み、
 前記VM配置先計算工程は、
 前記要求リソースで指定される条件に適合する前記物理マシンに、前記仮想マシンを配置した場合において、前記物理マシンが接続するネットワークに流れるトラフィック量を予測し、
 予測したトラフィック量から、前記ネットワークのリンクの利用率をバランスさせる物理マシンを、前記仮想マシンの配置先として選択する、仮想マシン配置設計方法が提供される。
 関連する他の側面の1つによれば(視点4)、要求リソースを入力する処理と、
 前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシンを配置する物理マシンを選択する処理であって、
 前記要求リソースで指定される条件に適合する前記物理マシンに前記仮想マシンを配置した場合において、前記物理マシンが接続するネットワークのノード間のリンクに流れるトラフィック量を予測し、
 予測したトラフィック量から、前記ネットワークのリンクの利用率をバランスさせる物理マシンを、前記仮想マシンの配置先として選択するVM配置先計算処理を、コンピュータに実行させせるプログラムが提供される。
 関連する他の側面の1つによれば(視点5)、上記視点4のプログラムを記憶したコンピュータ読み出し可能な媒体(半導体メモリ、磁気/光ディスク等)が提供される。
 関連する他の側面の1つによれば(視点6)、上記視点1の仮想マシン配置装置と、
 前記仮想マシン配置装置に前記要求リソースを与える手段と、
 前記仮想マシン配置装置に接続する物理マシンと、
 前記仮想マシン配置装置に接続する仮想マシンと、
 前記仮想マシン配置装置に接続するネットワークと、
 を備えた通信システムが提供される。 
 本発明によれば、ネットワークの仮想化において、ネットワークの負荷分散を実現可能としている。
本発明の実施形態1の構成を例示する図である。 本発明の実施形態1の動作を説明する流れ図である。 本発明の実施形態1の動作(VM割当て)を説明するシーケンス図である。 本発明の実施形態1の動作(トポロジ情報取得)を説明するシーケンス図である。 本発明の実施形態1の動作(物理マシン情報取得)を説明するシーケンス図である。 本発明の実施形態1の動作(仮想マシン情報取得)を説明するシーケンス図である。 (A)、(B)は本発明の実施形態1におけるVM性能入力、VM選択を模式的に説明する図である。 (A)、(B)は本発明の実施形態1におけるPMフィルタリング、フィルタリングされたPM群の発生トラフィック行列算出を模式的に説明する図である。 (A)、(B)は本発明の実施形態1におけるリンク利用率が最もバランスするPMの選択、次のVM選択を模式的に説明する図である。 (A)、(B)は、本発明の実施形態1におけるネットワークのリンク利用率と、リンク利用率行列を説明する図である。 (A)、(B)は、本発明の実施形態1における発生トラフィック量の予測と、発生トラフィック行列を説明する図である。 本発明の実施形態1における予想リンク利用率の算出を説明する図である。 本発明の実施形態2を説明する図である。 本発明の実施形態2を説明する図である。 本発明の基本概念を説明する図である。
 本発明の基本概念を説明する。本発明の好ましい形態の一つによれば、図15を参照すると、仮想マシン配置設計装置(10)は、要求リソースを入力する要求リソース入力手段(19)と、前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシン(VM)(30)を配置する物理マシン(PM)(40)を選択するVM配置先計算手段(14)と、を少なくとも備えている。前記VM配置先計算手段(14)は、前記要求リソースが指定する条件に適合する各前記物理マシン(40)に前記仮想マシン(30)を配置した場合において、前記物理マシン(40)が接続するネットワーク(50)のリンクに流れるトラフィック量を予測する。そして、前記VM配置先計算手段(14)は、予測したトラフィック量から、前記ネットワーク(50)においてリンクの利用率をバランス(均一化)させる物理マシン(40)を、前記仮想マシン(30)の配置先として選択する。特に制限されないが、図15において、要求リソース入力手段(19)、VM配置先計算手段(14)は、装置を構成するコンピュータで実行されるプログラムでその機能を実現するようにしてもよい。
 より詳細には、本発明の一形態によれば、仮想マシン(VM)を、複数の物理マシン(PM)のいずれかに配置するかを決定するにあたり、前記VM配置先計算手段(14)は、
 前記ネットワーク(50)のリンクに対して測定されたリンク利用率に基づき、送信元から宛先の間のリンクが選択されるリンク選択確率を算出し、
 前記リンク選択確率と、送信元から宛先のトラフィック量とに基づき、リンクの発生トラフィック量を予測し、
 前記リンク利用率と前記発生トラフィック量とから予想リンク利用率を算出し、
 前記予想リンク利用率のバランス度(例えば分散)を算出し、
 前記バランス度に基づき、前記予測リンク利用率をバランス(均一化)させる、物理マシンを選択して仮想マシンの配置先とする。
 本発明の一形態によれば、仮想マシン配置設計装置(10)は、前記ネットワークのトポロジ情報を取得する手段(図1の15)と、前記取得した前記トポロジ情報を記憶する記憶装置(図1の11)と、備えた構成としてもよい。
 本発明の一形態によれば、前記ネットワークのトポロジ情報が、前記ネットワークのノード間のリンクのリンク情報を含み、前記リンク情報は、ネットワークにおいて送信元から宛先への方向性を持った経路に含まれる各リンクに関して、前記リンク始端に接続するノードの情報と、前記リンク終端に接続するノードの情報と、前記リンクの帯域と、前記リンクの利用率と、を含むようにしてもよい。
 本発明の一形態によれば、前記ネットワークのトポロジ情報が前記物理マシンのネットワークでの位置情報を含むようにしてもよい。
 本発明の一形態によれば、前記VM配置先計算手段は、前記要求リソースで指定される条件に適合する物理マシンが複数存在する場合、
 前記物理マシンに前記仮想マシンを配置し、
 前記ネットワークのノードiからノードjへのリンクの前記リンク利用率を第i行第j列(i=1~N、j=1~N、Nはネットワークのノード数)の要素とするリンク利用率行列(Link_util)を算出し、
 行列Wを、その第i行第j列(i=1~N、j=1~N)の要素Wijが、ノードiからノードjへの辿り易さを表す行列とし、
 行列Pを、その第i行第j列(i=1~N、j=1~N)の要素Pijが、ノードiからノードjへのリンクの効用を表す行列として、
 第i行第j列(i=1~N、j=1~N)の要素Podijを、

Figure JPOXMLDOC01-appb-I000010
とするリンク選択確率行列Podを算出し、
 リンク選択確率行列Podと送信元と宛先間のトラフィック量から、発生トラフィック量行列TMを算出し、
 第i行第j列(i=1~N、j=1~N)の要素EUijを、次式

Figure JPOXMLDOC01-appb-I000011
 すなわち、前記リンク利用率行列(Link_util)の第i行第j列(i=1~N、j=1~N)の要素と、前記発生トラフィック量行列(TM)の第i行第j列(i=1~N、j=1~N)の要素を、ノードiからノードjへのリンクの帯域幅bwijで除算して計算される値の和とする、予想リンク利用率行列(EU)を算出し、
 次に、前記予想リンク利用率行列(EU)に対してバランス度を、例えば次式
Figure JPOXMLDOC01-appb-I000012
(ただし、EUijは、予想リンク利用率行列(EU)の第i行第j列(i=1~N、j=1~N)の要素)
で算出し、
 前記複数の物理マシンに対して求めた前記バランス度の値に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、前記仮想マシンの配置先とする、ようにしてもよい。
 本発明の一形態によれば、前記物理マシンの情報を取得する手段(図1の17)と、
 前記仮想マシンの情報を取得する手段(図1の16)と、
 前記トポロジ情報を記憶する記憶部(図1の11)と、
 前記物理マシンの情報を記憶する記憶部(図1の13)と、
 前記仮想マシンの情報を記憶する記憶部(図1の12)と、
 をさらに備えた構成としてもよい。
 本発明の一形態によれば、同一の機能又は同一のサービスを提供する複数の仮想マシンをできる限り、異なる物理マシンに配置するようにしてもよい。以下、実施形態に即して説明する。
<実施形態1>
 図1は、本発明の実施形態1の構成を例示する図である。図1を参照すると、仮想マシン(VM)の配置を要求する要求元20と、仮想マシンの配置設計を行うVM配置設計部10と、仮想マシン30と、物理マシン40と、ネットワーク50を備えている。
 特に制限されないが、要求元20は、例えば通信事業者のOSS/BSS(Operation Support Systems/Business Support Systems)で構成してもよい。
 物理マシン40は、サーバ装置等で構成してもよく、ネットワーク50に接続されるノード、あるいは、ネットワーク50のノードであってもよい。
 仮想マシン30は、ネットワーク機器等を仮想化した仮想化アプライアンスとして機能し物理マシン上に割当てられる。VM配置設計部10は、この仮想マシン30の物理マシン40への配置設計を行う。
 VM配置設計部10は、トポロジ情報記憶部11、仮想マシン情報記憶部12、物理マシン情報記憶部13、VM配置先計算部14、トポロジ情報取得部15、仮想マシン情報取得部16、物理マシン情報取得部17、VM割り当て部18、要求リソース入力部19を備えている。
 トポロジ情報記憶部11は、トポロジ情報取得部15が取得したネットワーク50のトポロジ情報を記憶する。
 仮想マシン情報記憶部12は、仮想マシン情報取得部16が取得した仮想マシン30の情報を記憶する。
 物理マシン情報記憶部13は、物理マシン情報取得部17が取得した物理マシン40の情報を記憶する。
 VM割り当て部18は仮想マシンの割り当てを行う。
 要求リソース入力部19(図15の要求リソース入力手段19に対応する)は要求元20からの要求を入力し、VM割り当て部18、VM配置先計算部14に入力する。
 VM配置先計算部14(図15のVM配置先計算手段14に対応する)は、仮想マシン(VM)を配置する物理マシン(PM)を計算する。
 トポロジ情報記憶部11に記憶されるトポロジ情報は、
・リンク情報と、
・ホスト位置(HOST location)と、
を含む。特に制限されないが、リンク情報は、ネットワークにおいて送信元から宛先への方向性を持った経路に含まれる各リンク(ノードペアを結ぶリンク)に関して、
・リンク始端側ノード(From)、
・リンク終端側ノード(To)、
・リンクの帯域、
・リンクの利用率、
を含む。
 トポロジ情報に含まれるリンク情報のリンクの利用率は、ネットワーク50に対する計測結果である。リンクの利用率は、トポロジ情報取得部15により、例えば周期的にあるいは所定のイベント発生時に、ネットワーク50から取得される。
 トポロジ情報に含まれるホスト位置(HOST location)は、仮想マシンをどの物理マシンに配置しているかの情報である。
 仮想マシン情報記憶部12に記憶される仮想マシン情報は、特に制限されないが、
・仮想マシンのCPU(Central Processing Unit)、
・メモリ、
・サービス、
・ホストの配置情報(仮想マシンがどの物理マシンに所属しているか)
を含む。仮想マシンがどの物理マシンに所属しているかの情報は、VM配置先計算部14で計算され、仮想マシンに設定される。
 物理マシン情報記憶部13に記憶される物理マシン情報は、物理マシンのハードウェア情報、例えばCPU、メモリ、ストレージ等の性能情報、容量情報を含む。
 ネットワーク機器・設備の機能を仮想する仮想マシン(VM)は、例えば物理マシン(PM)を構成するサーバ装置の仮想化基盤であるハイパーバイザ等の仮想マシンモニタ(Virtual Machine Monitor)上に実装される。なお、仮想マシン30は、用意されている物理マシン40のCPU性能、メモリ容量等で対応可能であるものとする。
 なお、図1において、14-19の各部は、コンピュータで実行されるプログラムでその処理・機能を実現するようにしてもよい。
 図2は、実施形態1の動作を説明する流れ図である。図1及び図2を参照して、実施形態1の動作を説明する。
 VM配置設計部10の要求リソース入力部19は、要求元20から要求リソースを入力する(ステップS1)。
 VM配置設計部10のVM割り当て部18はVMを1つ選択する(ステップS2)。
 VM配置設計部10の物理マシン情報取得部17は、選択可能な物理マシンをリストアップする(ステップS3)。
 VM配置設計部10のVM配置先計算部14は、要求リソースで要求された条件(コンピューティング要件)を満たす物理マシンを選別(フィルタリング)する(ステップS4)。
 VM配置設計部10のVM配置先計算部14は、仮想マシン(VM)を配置する物理マシン(PM)を選択する(ステップS5)。その際、VM配置先計算部14は、トポロジ情報記憶部11、仮想マシン情報記憶部12、物理マシン情報記憶部13を参照して、ステップS4で選別された物理マシン(PM)に、仮想マシンを配置した場合に、物理マシン(PM)が接続するネットワーク50に流れるトラフィック量を予測し、予測したトラフィック量から、前記ネットワーク50でのリンクの利用率をバランスさせる物理マシン(PM)を選択する。
 要求リソースで要求された仮想マシン(VM)の割当てが全て完了していずに、割当て対象の仮想マシン(VM)が残っている場合(ステップS6のYes分岐)、ステップS2に戻り、別の仮想マシン(VM)を選択する。要求リソースで要求された仮想マシン(VM)の割当てが全て完了すると(ステップS6のNo分岐)、割当て結果を出力する(ステップS7)。
 図3は、仮想マシン(VM)の割当て(図2のステップS1、S2)の動作シーケンスの一例を説明する図である。図3において、各シーケンスには番号が付されている。以下の説明の文末の括弧内の数字がシーケンス番号に対応する。図3及び図1を参照して、仮想マシン(VM)の割当ての動作シーケンスを説明する。
 要求元20から要求リソースが要求リソース入力部19に入力される(1)。
 要求リソース入力部19がVM配置先計算要求をVM配置先計算部14に送信する(2)。
 VM配置先計算部14は、仮想マシン(VM)の配置先を計算する(3)。
 VM配置先計算部14は、VM割り当て要求をVM割り当て部18に送信する(4)。
 VM割り当て部18は、複数の仮想マシン(VM)30の中の1つを割当てる(5)。
 図4は、ネットワーク50のトポロジ情報取得を説明する図である。図4において、各シーケンスには番号が付されている。以下の説明の文末の括弧内の数字がシーケンス番号に対応する。図4及び図1を参照して、トポロジ情報取得の動作シーケンスを説明する。トポロジ情報取得部15は、ネットワーク50に対してトポロジ情報取得要求を送信する(1)。トポロジ情報取得部15は、ネットワーク50からトポロジ情報を取得する(2)。具体的には、ネットワークノードから接続情報を取得する。トポロジ情報取得部15は、トポロジ情報をトポロジ情報記憶部11に記憶する(3)。トポロジ情報取得部15は、所定のイベント発生又は周期的にトポロジ情報取得要求を送信し(4)、ネットワーク50のトポロジの変化に追従したトポロジ情報を保持する。
 図5は、物理マシン情報取得の動作シーケンスの一例を説明する図である。図5において、各シーケンスには番号が付されている。以下の説明の文末の括弧内の数字がシーケンス番号に対応する。図5及び図1を参照して、物理マシン情報取得の動作シーケンスを説明する。物理マシン情報取得部17は物理マシン40に対して、物理マシン情報取得要求を送信し(1)、物理マシン40から物理マシン情報を取得する(2)。物理マシン情報取得部17は、物理マシン情報を物理マシン情報記憶部13に記憶する(3)。物理マシン情報取得部17は、所定のイベント発生又は周期的に物理マシン情報取得要求を物理マシン40に送信し(4)、物理マシン40の変更等、最新の情報に追従した物理マシン情報を保持する。
 図6は、仮想マシン情報取得の動作シーケンスの一例を説明する図である。図6において、各シーケンスには番号が付されている。以下の説明の文末の括弧内の数字がシーケンス番号に対応する。図6及び図1を参照して、仮想マシン情報取得の動作シーケンスを説明する。仮想マシン情報取得部16は仮想マシン30に対して、仮想マシン情報取得要求を送信し(1)、仮想マシン30から仮想マシン情報を取得する(2)。仮想マシン情報取得部16は仮想マシン情報を仮想マシン情報記憶部12に記憶する(3)。仮想マシン情報取得部16は、所定のイベント発生又は周期的に仮想マシン情報取得要求を仮想マシン30に送信し(4)、仮想マシン30の変更等、最新の情報に追従した仮想マシン情報を保持する。
 図7(A)は、実施形態1における要求リソース(VM性能)入力を模式的に説明する図である。図7(A)を参照すると、物理マシンPM0-PM2は、相互接続網(Interconnect Network)でゲートウェイGW0、GW1と接続されている。図7(A)に示すように、仮想マシンVMに対する要求リソースは、
CPU:1、
メモリ(Memory):1、
BW(帯域):GW0、GW1との間の帯域はともに100Mbps(Megabit per second)である。なお、“CPU:1”、“Memory:1”の“1”は、それぞれCPUの単位(性能単位)、メモリ容量の単位(容量単位)を表している。
 図7(B)は、実施形態1における仮想マシン(VM)の選択(図2のステップS2)を説明する図である。図7(B)の例では、1つの仮想マシン(VM)としてVM0が選択される。
 図8(A)は、実施形態1における物理マシンの選択(PMのフィルタリング)を模式的に説明する図である。図8(A)の例では、PM0において、利用可能な資源として、利用可能なCPUは10、利用可能なMemoryの容量は10である。PM2において、利用可能なCPUは0、利用可能はMemoryの容量は1である。PM2において、CPU資源は全て他のVM等に割当てられており利用可能なCPUはない。この場合、PM0が選択され、PM2は選択から外される。なお、PM1の利用可能な資源は図示されていないが、PM1も要求リソースで指定された条件に適合する場合、選択候補となる。
 図8(B)は、実施形態1において、図1のVM配置先計算部14が、フィルタリングされた物理マシン(PM)に、仮想マシン(VM)を配置した場合において、送信元から宛先へ向けてのネットワーク経路のリンクに発生するトラフィック量の算出を模式的に説明する図である。図8(B)に示すように、PM0に仮想マシンVM0が配置され、例えばPM0とゲートウェイGW0、GW1との間のリンクで発生するトラフィック量を予測する。
 図9(A)は、実施形態1において、図1のVM配置先計算部14が、リンク利用率と発生トラフィック量から算出される予想リンク利用率が、ネットワークにおいて、最もバランスする物理マシン(PM)であるPM0を選択する様子を説明する図である。リンク利用率と発生トラフィック量より、予想リンク利用率を算出し、ネットワークにおける予想リンク利用率のバランス度を算出し、最もバランス度の高い物理マシン(PM)を選択する。この場合、仮想マシンVM0の配置先として物理マシンPM0が選択される。
 仮想マシンVM0の物理マシンPM0への配置が決定された後、図9(B)に示すように、要求リソースに基づき、次の仮想マシンVM1の配置先を決定し、以下、要求リソースで要求されたVMの配置が全て完了するまで、図7(A)から図9(A)の処理が繰り返される。
 図10(A)は、ノード0~9からなるネットワーク(ノード数=10)のトポロジの一例を模式的に示す図である。ノードとノードを結ぶリンクを示す矢線に対応して、当該リンクのリンク利用率が示されている。リンク利用率は、単位時間あたりのトラフィック量(ネットワークを流れるデータ量)を帯域(bandwidth)で正規化した値である。リンク利用率は測定された値である。例えばノード0からノード1のリンク利用率が0.5であるとは、ノード0からノード2のリンクの単位時間当たりのトラフィック量は帯域(bandwidth)の半分であることを表しており、ノード2からノード0のリンク利用率が0.2であるとは、ノード2からノード0のリンクの単位時間当たりのトラフィック量は帯域の1/5であることを表している。
 図10(B)は、図10(A)に対応するリンク利用率行列(Link utilization matrix)を例示する図である。リンク利用率行列は行、列ともにノード数(N:、図10(B)ではN=10)に等しい正方行列であり、リンク利用率行列の第i行第j列(i=1~N、j=1~N)の要素は、ノードiからノードjへのリンクのリンク利用率を表している。リンク利用率行列の第j行第i列の要素は、ノードjからノードiへのリンクのリンク利用率を表している。リンク利用率は、例えば図1のトポロジ情報取得部15がネットワーク50から取得し、トポロジ情報記憶部11に記憶されるトポロジ情報に含まれる。
 次に、図1のVM配置先計算部14は、図10(A)の各リンクに対してリンク選択確率を求める。図11(A)は、図10(A)のネットワークにおいて、発信元をノード0(例えば図8(B)の仮想マシンVM0を配置した物理マシンPM0)、宛先をノード9(例えば図8(B)のGW0)とした場合の、ネットワークの各リンクのリンク選択確率Podij(ノードiからノードjへのリンクのリンク選択確率)が示されている。図11(A)の例では、例えば送信元であるノード0からノード2へのリンクのリンク選択確率Pod02は1である(常に選択される)。
 リンク選択確率行列Podの第i行第j列の要素Podijは、送信元Oと宛先Dのペアが、あるリンクij(ノードiからノードjへのリンク)を使用する確率である(MLB(Multinominal Logit Based routing protocol) Routing)。
 リンク選択確率行列Podの第i行第j列(i=1~N、j=1~N)の要素Podijは次式(1)で表すことができる。

Figure JPOXMLDOC01-appb-I000013
             ・・・(1)
 行列Wの第i行第j列(i=1~N、j=1~N)の要素Wijは、ノードiからノードjへの辿り易さを表す行列である。上式(1)において、Woiは、送信元ノードoからノードiへの辿り易さを表し、Wjdは、ノードjから宛先ノードdへの辿り易さを表し、Wodは、送信元ノードoから宛先ノードdへの辿り易さを表している。また、行列Pの第i行第j列(i=1~N、j=1~N)の要素Pijは、ノードiからノードjへのリンクの効用を表している。これら行列W、Pはいずれもリンク利用率から算出される(非特許文献2、3参照)
 次に、図1のVM配置先計算部14は、発生トラフィック量を算出する。リンク選択確率行列(Pod)の各要素に、送信元と宛先のトラフィック量を乗算した行列が、発生トラフィック行列(TM)となる(図11(B))。
 図10(A)のノード数10のネットワークでは、リンク利用率行列は、10×10の正方行列として表され、リンク選択確率行列(Pod)、発生トラフィック行列(TM)はいずれも10×10の正方行列として表される。
 次に、図1のVM配置先計算部14は、予想リンク利用率(Estimated utilization)を算出する(次式(2))。
 予想リンク利用率行列(Estimation Utilization Matrix:EU)は、リンク利用率行列(Pod)と、発生トラフィック行列(TM)を帯域行列(BW)で正規化した行列の和(行列和)である(図12参照)。帯域行列(BW)の第i行第j列(i=1~N、j=1~N)の要素bwijは、ノードiからノードjへのリンクの帯域である。

Figure JPOXMLDOC01-appb-I000014
             ・・・(2)
 上式(2)において、
EUijは、予想リンク利用率行列(EU)の第i行第j列の要素、
Link_utilijは、リンク利用率行列(Link_utilization)の第i行第j列の要素、
TMijは発生トラフィック行列TMの第i行第j列の要素、
bwijは帯域行列BWの第i行第j列の要素である(i、j=1~N)。
 次に、図1のVM配置先計算部14は、予想リンク利用率行列EUijのバランス度(link_variance:分散)を次式(3)で算出する。

Figure JPOXMLDOC01-appb-I000015
              ・・・(3)
 ただし、Nはノード数(正方行列である予想リンク利用率行列の行数N(=列数))である。
 図1のVM配置先計算部14は、複数の物理マシン(PM)に対して仮想マシン(VM)を配置した場合の予想リンク利用率行列のうち、式(3)のバランス度の値が最も高い(1に最も近い)物理マシン(PM)を選択する。
 例えば、図11(A)には、発信元をノード0、宛先をノード9とした場合の各リンクのリンク選択確率Podijが示されている。これは、例えば図8(B)において、ノード0にPM0が配置され送信元となり、ノード9にGW0が配置され宛先である場合に対応する。ノード1にPM1が配置される場合も、同様にして、予想リンク利用率行列EUijのバランス度を算出する。そして、図1のVM配置先計算部14は、予想リンク利用率行列(EU)に対して、式(3)で求めたバランス度(分散)の値が最も高くなる(リンクの利用率がリンク間で最もバランス(均一化)する)PMを選択する。
 この結果、要求リソース条件をみたす仮想マシンを物理マシンに配置するにあたり、ネットワークにおけるトラフィック量の偏りの発生等を回避可能とし、負荷分散を図ることができる。
<実施形態2>
 次に本発明の実施形態2を説明する。実施形態2において、システムの基本構成は、図1に示したものと同様とされる。実施形態2では、仮想マシンの配置先の物理マシンを、要求リソースのサービス情報に基づき選択するようにしている。図13(A)乃至(C)、図14(A)乃至(C)は、本発明の実施形態2の構成を例示する図である。
 図13(A)では、物理マシンPM1上に4つの仮想マシンVM1-VM4が割当てられ、VM1、VM2はサービスAを提供し、VM3、VM4はサービスB、Cをそれぞれ提供する。図13(B)では、物理マシンPM2上に3つの仮想マシンVM5-VM7が割当てられ、VM5、VM6、VM7はサービスB、サービスC、サービスAをそれぞれ提供する。図13(C)では、物理マシンPM3上に3つの仮想マシンVM8-VM10が割当てられ、VM8、VM10はサービスBを提供し、VM9はサービスCを提供する。
 図14(A)は、サービスAを提供する仮想マシンの物理マシンへの割当てを表形式で表したものである。図14(A)において、第1-第3行の1、2、3は物理マシンPMのID、第1-第10列の数字は、仮想マシンのID(1-10)である。図14(A)の例では、サービスAを提供する仮想マシンは、PM1ではVM1、VM2、PM2ではVM7であり、PM3にはサービスAを提供する仮想マシンは存在しない。図14(B)は、サービスBを提供する仮想マシンの物理マシンへの割当てを表形式で表したものである。図14(B)の例では、サービスBを提供する仮想マシンは、PM1ではVM3、PM2ではVM5であり、PM3ではVM8、VM10である。図14(C)は、サービスCを提供する仮想マシンの物理マシンへの割当てを表形式で表したものである。図14(C)の例では、サービスCを提供する仮想マシンは、PM1ではVM4、PM2ではVM6であり、PM3ではVM9である。なお、図14(A)、(B)、(C)の表(VM LOCATION MATRIX)は、仮想マシン情報記憶部12に記憶される仮想マシン情報のサービス情報(仮想マシンが如何なるサービスを提供するか)と、HOST位置情報(仮想マシンがどの物理マシンに配置されているか)からVM割り当て部18等で自動生成される。
 要求リソースがサービスAの仮想マシンの配置要求である場合、一番VMの個数が少ないPM3が選択される。
 VMを選択したあと、VMの配置先の選択は、前記した実施形態1に従い、要求リソースに規定される性能条件を満たすPMの中から、PMにVMを配置した場合のネットワークの発生トラフィック量を予測し、予想リンク利用率(EU)のバランス度(分散)の値が最も高くなるPMを選択するようにしてもよい。
 実施形態2によれば、異なる物理マシンに配置することで、あるサービスを提供する仮想マシンが特定の物理マシンに集中するという偏りを回避し、サービスに関して負荷分散を図ることができる。さらに、実施形態1と同様に、ネットワークのトラフィックの集中等を回避し、負荷分散を図ることができる。
 以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、更なる変形・置換・調整を加えることができる。なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得る各種変形、修正を含むことは勿論である。
10 VM配置設計部
11 トポロジ情報記憶部
12 仮想マシン情報記憶部
13 物理マシン情報記憶部
14 VM配置先計算部(VM配置先計算手段)
15 トポロジ情報取得部
16 仮想マシン情報取得部
17 物理マシン情報取得部
18 VM割り当て部
19 要求リソース入力部(要求リソース入力手段)
20 要求元
30 仮想マシン
40 物理マシン
50 ネットワーク

Claims (25)

  1.  要求リソースを入力する手段と、
     前記入力した要求リソースに基づき、仮想マシンを配置する物理マシンを選択するVM配置先計算手段と、
     を少なくとも備え、
     前記VM配置先計算手段は、
     前記要求リソースで指定される条件に適合する前記物理マシンに前記仮想マシンを配置した場合に、前記物理マシンが接続するネットワークに流れるトラフィック量を予測し、
     前記予測したトラフィック量から、前記ネットワークでのリンクの利用率をバランスさせる物理マシンを、前記仮想マシンの配置先として選択する、仮想マシン配置設計装置。
  2.  前記VM配置先計算手段は、
     前記ネットワークのリンクに対して測定されたリンク利用率に基づき、送信元から宛先の間のリンクが選択されるリンク選択確率を算出し、
     前記リンク選択確率と、前記送信元から前記宛先のトラフィック量に基づき、前記リンクの発生トラフィック量を予測し、
     前記リンク利用率と前記発生トラフィック量とから予想リンク利用率を算出し、
     前記予想リンク利用率のバランス度を算出し、前記バランス度に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、仮想マシンの配置先とする、請求項1記載の仮想マシン配置設計装置。
  3.  前記ネットワークのトポロジ情報を取得する手段と、
     前記取得した前記トポロジ情報を記憶する記憶部と、
     を備えた、請求項1又は2記載の仮想マシン配置設計装置。
  4.  前記ネットワークのトポロジ情報が、前記ネットワークのリンク情報を含み、
     前記リンク情報は、
     前記送信元から前記宛先への方向性を持つ経路に含まれる各リンクに関して、
     前記リンク始端に接続するノードの情報と、
     前記リンク終端に接続するノードの情報と、
     前記リンクの帯域と、
     前記リンクの利用率と、
     を含む、請求項3記載の仮想マシン配置設計装置。
  5.  前記ネットワークのトポロジ情報が、前記物理マシンの前記ネットワークにおける位置情報を含む、請求項4記載の仮想マシン配置設計装置。
  6.  前記VM配置先計算手段は、前記要求リソースで指定される条件に適合する物理マシンが複数存在する場合、
     前記物理マシンに前記仮想マシンを配置し、
     前記ネットワークのノードiからノードjへのリンクの前記リンク利用率を第i行第j列(i=1~N、j=1~N、Nはネットワークのノード数)の要素とするリンク利用率行列(Link_util)を算出し、
     行列Wを、その第i行第j列(i=1~N、j=1~N)の要素Wijが、ノードiからノードjへの辿り易さを表す行列とし、
     行列Pを、その第i行第j列(i=1~N、j=1~N)の要素Pijが、ノードiからノードjへのリンクの効用を表す行列として、
     第i行第j列(i=1~N、j=1~N)の要素Podijを、
    Figure JPOXMLDOC01-appb-I000001
    とするリンク選択確率行列Podを算出し、
     リンク選択確率行列Podと送信元と宛先間のトラフィック量から、発生トラフィック量行列TMを算出し、
     第i行第j列(i=1~N、j=1~N)の要素EUijを、次式
    Figure JPOXMLDOC01-appb-I000002
     すなわち、前記リンク利用率行列(Link_util)の第i行第j列(i=1~N、j=1~N)の要素Link_utilijと、前記発生トラフィック量行列(TM)の第i行第j列(i=1~N、j=1~N)の要素を、ノードiからノードjへのリンクの帯域bwijで除算して計算される値の和とする、予想リンク利用率行列(EU)を算出し、
     次に、前記予想リンク利用率行列(EU)に対してバランス度(link_variance)を次式、

    Figure JPOXMLDOC01-appb-I000003
    (ただし、EUijは、予想リンク利用率行列(EU)の第i行第j列(i=1~N、j=1~N)の要素)で算出し、
     前記複数の物理マシンに対して求めた前記バランス度の値に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、前記仮想マシンの配置先とする、請求項4又は5記載の仮想マシン配置設計装置。
  7.  前記物理マシンの情報を取得する手段と、
     前記仮想マシンの情報を取得する手段と、
     前記トポロジ情報を記憶する記憶部と、
     前記物理マシンの情報を記憶する記憶部と、
     前記仮想マシンの情報を記憶する記憶部と、
     をさらに備えた、請求項1乃至6のいずれか1項に記載の仮想マシン配置設計装置。
  8.  同一の機能又は同一のサービスを提供する複数の仮想マシンをできる限り、異なる物理マシンに配置する、請求項1乃至7のいずれか1項に記載の仮想マシン配置設計装置。
  9.  請求項1乃至8のいずれか1項に記載の仮想マシン配置装置と、
     前記仮想マシン配置装置に前記要求リソースを与える手段と、
     前記仮想マシン配置装置に接続する物理マシンと、
     前記仮想マシン配置装置に接続する仮想マシンと、
     前記仮想マシン配置装置に接続するネットワークと、
     を備えた通信システム。 
  10.  要求リソースを入力する工程と、
     前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシンを配置する物理マシンを選択するVM配置先計算工程と、
     を少なくとも含み、
     前記VM配置先計算工程は、
     前記要求リソースで指定される条件に適合する前記物理マシンに前記仮想マシンを配置した場合において、前記物理マシンが接続するネットワークに流れるトラフィック量を予測し、
     前記予測したトラフィック量から、前記ネットワークのリンクの利用率をバランスさせる物理マシンを、前記仮想マシンの配置先として選択する、仮想マシン配置設計方法。
  11.  前記VM配置先計算工程は、
     前記ネットワークのリンクに対して測定されたリンク利用率に基づき、送信元から宛先の間のリンクが選択されるリンク選択確率を算出し、
     前記リンク選択確率と、前記送信元から前記宛先のトラフィック量に基づき、前記リンクの発生トラフィック量を予測し、
     前記リンク利用率と前記発生トラフィック量とから予想リンク利用率を算出し、
     前記予想リンク利用率のバランス度を算出し、前記バランス度に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、仮想マシンの配置先とする、請求項10記載の仮想マシン配置設計方法。
  12.  前記ネットワークのトポロジ情報を取得する工程と、
     前記取得した前記トポロジ情報を記憶部に記憶する工程と、
     を含む、請求項10又は11記載の仮想マシン配置設計方法。
  13.  前記ネットワークのトポロジ情報が、前記ネットワークのリンク情報を含み、
     前記リンク情報は、
     前記送信元から前記宛先への方向性を持つ経路に含まれる各リンクに関して、
     前記リンク始端に接続するノードの情報と、
     前記リンク終端に接続するノードの情報と、
     前記リンクの帯域と、
     前記リンクの利用率と、
     を含む、請求項12記載の仮想マシン配置設計方法。
  14.  前記ネットワークのトポロジ情報が前記物理マシンのネットワークでの位置情報を含む、請求項13記載の仮想マシン配置設計方法。
  15.  前記VM配置先計算工程は、
     前記要求リソースで指定される条件に適合する物理マシンが複数存在する場合、
     前記物理マシンに前記仮想マシンを配置し、
     前記ネットワークのノードiからノードjへのリンクの前記リンク利用率を第i行第j列(i=1~N、j=1~N、Nはネットワークのノード数)の要素とするリンク利用率行列(Link_util)を算出し、
     行列Wを、その第i行第j列(i=1~N、j=1~N)の要素Wijが、ノードiからノードjへの辿り易さを表す行列とし、
     行列Pを、その第i行第j列(i=1~N、j=1~N)の要素Pijが、ノードiからノードjへのリンクの効用を表す行列として、
     第i行第j列(i=1~N、j=1~N)の要素Podijを、
    Figure JPOXMLDOC01-appb-I000004
    とするリンク選択確率行列Podを算出し、
     リンク選択確率行列Podと送信元と宛先間のトラフィック量から、発生トラフィック量行列TMを算出し、
     第i行第j列(i=1~N、j=1~N)の要素EUijを、次式

    Figure JPOXMLDOC01-appb-I000005
     すなわち、前記リンク利用率行列(Link_util)の第i行第j列(i=1~N、j=1~N)の要素と、前記発生トラフィック量行列(TM)の第i行第j列(i=1~N、j=1~N)の要素を、ノードiからノードjへのリンクの帯域bwijで除算して計算される値の和とする、予想リンク利用率行列(EU)を算出し、
     次に、前記予想リンク利用率行列(EU)に対してバランス度(link_variance)を次式


    Figure JPOXMLDOC01-appb-I000006
    (ただし、EUijは、予想リンク利用率行列(EU)の第i行第j列(i=1~N、j=1~N)の要素)で算出し、
     前記複数の物理マシンに対して求めた前記バランス度の値に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、前記仮想マシンの配置先とする、請求項13又は14に記載の仮想マシン配置設計方法。
  16.  前記物理マシンの情報を取得する工程と、
     前記仮想マシンの情報を取得する工程と、
     前記物理マシンの情報を記憶部に記憶する工程と、
     前記仮想マシンの情報を記憶部に記憶する工程と、
     をさらに含む請求項10乃至15のいずれか1項に記載の仮想マシン配置設計方法。
  17.  同一の機能又は同一のサービスを提供する複数の仮想マシンをできる限り、異なる物理マシンに配置する、請求項10乃至16のいずれか1項に記載の仮想マシン配置設計方法。
  18.  要求リソースを入力する処理と、
     前記入力した要求リソースに基づき、ネットワーク機能を仮想化する仮想マシンを配置する物理マシンを選択する処理であって、
     前記要求リソースで指定される条件に適合する各前記物理マシンに前記仮想マシンを配置した場合において、前記物理マシンが接続するネットワークに流れるトラフィック量を予測し、
     前記予測したトラフィック量から、前記ネットワークのリンクの利用率をバランスさせる物理マシンを、前記仮想マシンの配置先として選択するVM配置先計算処理と、
     をコンピュータに実行させるプログラム。
  19.  前記VM配置先計算処理は、
     前記ネットワークのリンクに対して測定されたリンク利用率に基づき、送信元から宛先の間のリンクが選択されるリンク選択確率を算出し、
     前記リンク選択確率と、前記送信元から前記宛先のトラフィック量に基づき、前記リンクの発生トラフィック量を予測し、
     前記リンク利用率と前記発生トラフィック量とから予想リンク利用率を算出し、
     前記予想リンク利用率のバランス度を算出し、前記バランス度に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、仮想マシンの配置先とする、請求項18記載のプログラム。
  20.  前記ネットワークのトポロジ情報を取得する処理と、
     前記取得した前記トポロジ情報を記憶部に記憶する処理と、
    含む請求項18又は19記載のプログラム。
  21.  前記ネットワークのトポロジ情報が、前記ネットワークのリンク情報を含み、
     前記リンク情報は、
     前記送信元から前記宛先への方向性を持つ経路に含まれる各リンクに関して、
     前記リンク始端に接続するノードの情報と、
     前記リンク終端に接続するノードの情報と、
     前記リンクの帯域と、
     前記リンクの利用率と、
     を含む、請求項20記載のプログラム。
  22.  前記ネットワークのトポロジ情報が前記物理マシンのネットワークでの位置情報を含む、請求項21記載のプログラム。
  23.  前記VM配置先計算処理は、
     前記要求リソースで指定される条件に適合する物理マシンが複数存在する場合、
     前記物理マシンに前記仮想マシンを配置し、
     前記ネットワークのノードiからノードjへのリンクの前記リンク利用率を第i行第j列(i=1~N、j=1~N、Nはネットワークのノード数)の要素とするリンク利用率行列(Link_util)を算出し、
     行列Wを、その第i行第j列(i=1~N、j=1~N)の要素Wijが、ノードiからノードjへの辿り易さを表す行列とし、
     行列Pを、その第i行第j列(i=1~N、j=1~N)の要素Pijが、ノードiからノードjへのリンクの効用を表す行列として、
     第i行第j列(i=1~N、j=1~N)の要素Podijを、

    Figure JPOXMLDOC01-appb-I000007
    とするリンク選択確率行列Podを算出し、
     リンク選択確率行列Podと送信元と宛先間のトラフィック量から、発生トラフィック量行列TMを算出し、
     第i行第j列(i=1~N、j=1~N)の要素EUijを、次式

    Figure JPOXMLDOC01-appb-I000008
     すなわち、前記リンク利用率行列(Link_util)の第i行第j列(i=1~N、j=1~N)の要素と、前記発生トラフィック量行列(TM)の第i行第j列(i=1~N、j=1~N)の要素を、ノードiからノードjへのリンクの帯域bwijで除算して計算される値の和とする、予想リンク利用率行列(EU)を算出し、
     次に、前記予想リンク利用率行列(EU)に対してバランス度(link_variance)を次式


    Figure JPOXMLDOC01-appb-I000009
    (ただし、EUijは、予想リンク利用率行列(EU)の第i行第j列(i=1~N、j=1~N)の要素)で算出し、
     前記複数の物理マシンに対して求めた前記バランス度の値に基づき、前記予測リンク利用率を均一化する物理マシンを選択して、前記仮想マシンの配置先とする、請求項21又は22に記載のプログラム。
  24.  前記物理マシンの情報を取得する処理と、
     前記仮想マシンの情報を取得する処理と、
     前記物理マシンの情報を記憶部に記憶する処理と、
     前記仮想マシンの情報を記憶部に記憶する処理と、
     をさらに含む、請求項18乃至23のいずれか1項に記載のプログラム。
  25.  同一の機能又は同一のサービスを提供する複数の仮想マシンをできる限り、異なる物理マシンに配置する、請求項18乃至24のいずれか1項に記載のプログラム。
PCT/JP2014/066973 2013-06-27 2014-06-26 仮想マシン配置設計装置及び方法とシステム並びにプログラム WO2014208661A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015524109A JPWO2014208661A1 (ja) 2013-06-27 2014-06-26 仮想マシン配置設計装置及び方法とシステム並びにプログラム
US14/392,305 US9904566B2 (en) 2013-06-27 2014-06-26 Selecting virtual machine placement by computing network link utilization and link variance

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013134699 2013-06-27
JP2013-134699 2013-06-27

Publications (1)

Publication Number Publication Date
WO2014208661A1 true WO2014208661A1 (ja) 2014-12-31

Family

ID=52141988

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/066973 WO2014208661A1 (ja) 2013-06-27 2014-06-26 仮想マシン配置設計装置及び方法とシステム並びにプログラム

Country Status (3)

Country Link
US (1) US9904566B2 (ja)
JP (1) JPWO2014208661A1 (ja)
WO (1) WO2014208661A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016121754A1 (ja) * 2015-01-28 2016-08-04 日本電気株式会社 システム、仮想化制御装置、仮想化制御装置の制御方法及びプログラム
WO2016121728A1 (ja) * 2015-01-27 2016-08-04 日本電気株式会社 ネットワーク機能仮想化管理およびオーケストレーション装置とシステムと管理方法とプログラム
WO2016207989A1 (ja) * 2015-06-24 2016-12-29 株式会社日立製作所 分散システム
WO2017070963A1 (zh) * 2015-10-31 2017-05-04 华为技术有限公司 一种虚拟资源的部署方法、装置及系统
US10091116B2 (en) 2016-08-30 2018-10-02 Fujitsu Limited Service chain construction method and server apparatus
WO2018181961A1 (ja) * 2017-03-31 2018-10-04 日本電気株式会社 仮想ネットワーク機能管理装置、仮想インフラストラクチャ管理装置、及び仮想ネットワーク機能構築方法
EP3281112A4 (en) * 2015-04-09 2018-11-14 Level 3 Communications, LLC Network service infrastructure management system and method of operation
US11249814B2 (en) 2016-02-08 2022-02-15 Nokia Solutions And Networks Oy Resource placement control in network virtualization scenarios

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10237235B1 (en) * 2014-05-29 2019-03-19 Amazon Technologies, Inc. System for network address translation
JP2016010124A (ja) * 2014-06-26 2016-01-18 富士通株式会社 管理装置、管理プログラム及び情報処理システム
US11122452B2 (en) * 2019-04-15 2021-09-14 Netscout Systems, Inc System and method for load balancing of network packets received from a MME with smart filtering
JP2021157339A (ja) * 2020-03-25 2021-10-07 富士通株式会社 情報処理方法、及び情報処理プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003330740A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
JP2007004414A (ja) * 2005-06-23 2007-01-11 Hitachi Ltd 複合サービス部品宛先解決方法
JP2010146420A (ja) * 2008-12-22 2010-07-01 Hitachi Ltd 余剰資源管理システム、その管理方法、及びサーバ装置
JP2012243223A (ja) * 2011-05-23 2012-12-10 Fujitsu Ltd プロセス配置装置、プロセス配置方法及びプロセス配置プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840593B2 (en) * 2002-07-30 2010-11-23 Sony Corporation Program, information processing method and device, and data structure
JP2011095871A (ja) 2009-10-28 2011-05-12 Hitachi Ltd プログラム配布方法及び運用管理装置
US9626156B2 (en) 2011-04-28 2017-04-18 Nec Corporation Application architecture design method, application architecture design system, and recording medium
JP5432963B2 (ja) 2011-09-05 2014-03-05 日本電信電話株式会社 計算機設備管理装置、ネットワーク接続情報管理装置、管理方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003330740A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
JP2007004414A (ja) * 2005-06-23 2007-01-11 Hitachi Ltd 複合サービス部品宛先解決方法
JP2010146420A (ja) * 2008-12-22 2010-07-01 Hitachi Ltd 余剰資源管理システム、その管理方法、及びサーバ装置
JP2012243223A (ja) * 2011-05-23 2012-12-10 Fujitsu Ltd プロセス配置装置、プロセス配置方法及びプロセス配置プログラム

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101924746B1 (ko) 2015-01-27 2019-02-27 닛본 덴끼 가부시끼가이샤 네트워크 기능 가상화의 관리, 및 오케스트레이션 장치, 시스템, 관리 방법 및 프로그램
CN107209709A (zh) * 2015-01-27 2017-09-26 日本电气株式会社 网络功能虚拟化管理和编排装置、系统、管理方法及程序
US11099869B2 (en) 2015-01-27 2021-08-24 Nec Corporation Management of network functions virtualization and orchestration apparatus, system, management method, and program
CN107209709B (zh) * 2015-01-27 2021-02-05 日本电气株式会社 网络功能虚拟化管理和编排装置、系统、管理方法及程序
WO2016121728A1 (ja) * 2015-01-27 2016-08-04 日本電気株式会社 ネットワーク機能仮想化管理およびオーケストレーション装置とシステムと管理方法とプログラム
KR20170107532A (ko) * 2015-01-27 2017-09-25 닛본 덴끼 가부시끼가이샤 네트워크 기능 가상화의 관리, 및 오케스트레이션 장치, 시스템, 관리 방법 및 프로그램
JPWO2016121728A1 (ja) * 2015-01-27 2017-11-09 日本電気株式会社 ネットワーク機能仮想化管理およびオーケストレーション装置とシステムと管理方法とプログラム
KR101939075B1 (ko) 2015-01-28 2019-04-11 닛본 덴끼 가부시끼가이샤 시스템, 가상화 제어 장치, 가상화 제어 장치의 제어 방법 및 프로그램
WO2016121754A1 (ja) * 2015-01-28 2016-08-04 日本電気株式会社 システム、仮想化制御装置、仮想化制御装置の制御方法及びプログラム
EP3252602A4 (en) * 2015-01-28 2018-01-10 Nec Corporation System, virtualization control device, method for controlling virtualization control device, and program
US11093296B2 (en) 2015-01-28 2021-08-17 Nec Corporation System, virtualization control apparatus, method for controlling a virtualization control apparatus, and program
KR20170107502A (ko) * 2015-01-28 2017-09-25 닛본 덴끼 가부시끼가이샤 시스템, 가상화 제어 장치, 가상화 제어 장치의 제어 방법 및 프로그램
CN107209695A (zh) * 2015-01-28 2017-09-26 日本电气株式会社 系统、虚拟化控制设备、用于控制虚拟化控制设备的方法和程序
US10514957B2 (en) 2015-04-09 2019-12-24 Level 3 Communications, Llc Network service infrastructure management system and method of operation
EP3281112A4 (en) * 2015-04-09 2018-11-14 Level 3 Communications, LLC Network service infrastructure management system and method of operation
WO2016207989A1 (ja) * 2015-06-24 2016-12-29 株式会社日立製作所 分散システム
JPWO2016207989A1 (ja) * 2015-06-24 2018-02-22 株式会社日立製作所 分散システム
CN107615247A (zh) * 2015-06-24 2018-01-19 株式会社日立制作所 分布式系统
WO2017070963A1 (zh) * 2015-10-31 2017-05-04 华为技术有限公司 一种虚拟资源的部署方法、装置及系统
US11249814B2 (en) 2016-02-08 2022-02-15 Nokia Solutions And Networks Oy Resource placement control in network virtualization scenarios
US10091116B2 (en) 2016-08-30 2018-10-02 Fujitsu Limited Service chain construction method and server apparatus
WO2018181961A1 (ja) * 2017-03-31 2018-10-04 日本電気株式会社 仮想ネットワーク機能管理装置、仮想インフラストラクチャ管理装置、及び仮想ネットワーク機能構築方法

Also Published As

Publication number Publication date
US20160147548A1 (en) 2016-05-26
US9904566B2 (en) 2018-02-27
JPWO2014208661A1 (ja) 2017-02-23

Similar Documents

Publication Publication Date Title
WO2014208661A1 (ja) 仮想マシン配置設計装置及び方法とシステム並びにプログラム
Zhao et al. Optimal placement of cloudlets for access delay minimization in SDN-based Internet of Things networks
Ma et al. Mobility-aware and delay-sensitive service provisioning in mobile edge-cloud networks
Baumgartner et al. Mobile core network virtualization: A model for combined virtual core network function placement and topology optimization
CN103560967B (zh) 一种业务需求感知的虚拟数据中心映射方法
Zhang et al. An opportunistic resource sharing and topology-aware mapping framework for virtual networks
US8924392B2 (en) Clustering-based resource aggregation within a data center
Wang et al. Multiple bulk data transfers scheduling among datacenters
WO2019001092A1 (zh) 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法
CN106489251A (zh) 应用拓扑关系发现的方法、装置和系统
Javadpour Improving resources management in network virtualization by utilizing a software-based network
US10356185B2 (en) Optimal dynamic cloud network control
US11327688B2 (en) Master data placement in distributed storage systems
Sun et al. Exploring online virtual networks mapping with stochastic bandwidth demand in multi-datacenter
Tseng et al. Link-aware virtual machine placement for cloud services based on service-oriented architecture
JPWO2012141241A1 (ja) ネットワーク、データ転送ノード、通信方法およびプログラム
Meng et al. Joint heterogeneous server placement and application configuration in edge computing
US20160269297A1 (en) Scaling the LTE Control Plane for Future Mobile Access
WO2018200890A1 (en) Service function placement and routing
Di et al. Efficient online virtual network mapping using resource evaluation
Zhao et al. Optimize the placement of edge server between workload balancing and system delay in smart city
Kim et al. Service platform and monitoring architecture for network function virtualization (NFV)
Haghani et al. Multi-objective embedding of software-defined virtual networks
Li et al. Availability-aware provision of service function chains in mobile edge computing
Naseri et al. Placement of SDN controllers based on network setup cost and latency of control packets

Legal Events

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

Ref document number: 14818052

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015524109

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14392305

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14818052

Country of ref document: EP

Kind code of ref document: A1