WO2015106618A1 - 一种资源调度的方法及装置 - Google Patents

一种资源调度的方法及装置 Download PDF

Info

Publication number
WO2015106618A1
WO2015106618A1 PCT/CN2014/094662 CN2014094662W WO2015106618A1 WO 2015106618 A1 WO2015106618 A1 WO 2015106618A1 CN 2014094662 W CN2014094662 W CN 2014094662W WO 2015106618 A1 WO2015106618 A1 WO 2015106618A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
network
host
network element
virtual
Prior art date
Application number
PCT/CN2014/094662
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 华为技术有限公司
Publication of WO2015106618A1 publication Critical patent/WO2015106618A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • 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

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for resource scheduling.
  • the network element equipment leased by the user is deployed in the telecom cloud infrastructure, and the board that implements various functions of the network element is
  • the virtual machine is placed in one or more hosts, and the virtual machines in these hosts work together to implement all the functions corresponding to the network element.
  • the cloud resource scheduler configures the network elements leased by the user as follows: the host that is placed for each virtual machine in the network element is selected, and the host is selected according to the hardware configuration required to implement the corresponding function. filter. For example, the CPU (Central Processing Unit) of the host, IO (Input/Output), RAM (Random Access Memory), etc. are used as screening indicators. Finally, the cloud resource scheduler selects a set of hosts that place the virtual machine with the best hardware configuration as the network element provided to the user.
  • the host Central Processing Unit
  • IO Input/Output
  • RAM Random Access Memory
  • an embodiment of the present invention provides a method and an apparatus for resource scheduling.
  • the technical solution is as follows:
  • the first aspect a method for resource scheduling, includes:
  • the performance parameter of the network device and the performance requirement parameter of each virtual machine one of selecting a set of placement locations corresponding to each virtual machine for placing the a host of each virtual machine, comprising at least one candidate list of network elements to be configured, wherein the list of candidate network elements to be configured includes the host for placing each of the virtual machines;
  • the at least one of a performance parameter of the network device and a performance requirement parameter of each virtual machine according to a current network topology, respectively, in each A host for placing each of the virtual machines is selected from the set of placement locations corresponding to the virtual machines, including:
  • a host that meets the number of hops in the network device that passes through each of the virtual machines is less than a preset number of hosts, Host of the machine; or,
  • the method further includes:
  • the method further includes :
  • the first network configuration information includes at least the forwarding path information and the forwarding rule information in each of the network devices when the hosts corresponding to the virtual machines communicate with each other, where the virtual machine corresponds to each virtual machine.
  • the method after the sending, by the network device, the updated network configuration information, the method also includes:
  • the second path information is generated by re-provisioning the path for the network element according to the host where each virtual machine is included in the network element;
  • the second network configuration information includes at least forwarding path information and forwarding rule information in each of the network devices when communicating between the hosts corresponding to each virtual machine, and corresponding to each virtual machine.
  • a device for resource scheduling includes:
  • a first receiving module configured to receive a set of placement locations corresponding to each virtual machine sent by the cloud resource scheduler, and a performance requirement parameter of each virtual machine, where the set of placement locations includes at least one host that meets a placement condition ;
  • a selecting module configured to select one of the set of placement locations corresponding to each virtual machine according to at least one of a current network topology, a performance parameter of the network device, and a performance requirement parameter of each virtual machine Hosts for placing each of the virtual machines, comprising at least one candidate list of network elements to be configured, wherein the list of candidate network elements to be configured includes the host in which each of the virtual machines is placed;
  • a returning module configured to return the list of the candidate network elements to be configured to the cloud resource scheduler.
  • the selecting module includes:
  • a first selecting unit configured to select, in the set of placement locations corresponding to each virtual machine, a host that meets the preset number of hops in the network device that meets the communication between each virtual machine, As a host on which each virtual machine is placed;
  • a second selecting unit configured to select, in each set of the placement locations corresponding to each virtual machine, a host that meets a delay between the virtual machines and the preset delay parameter, Host of a virtual machine
  • a third selecting unit configured to select, in each set of the placement locations corresponding to each virtual machine, that the bandwidth that is not allocated when the communication between the virtual machines is satisfied is greater than the communication between each virtual machine A host that requires bandwidth as a host to place each of the virtual machines.
  • the device further includes:
  • a first path planning module configured to perform path planning for the candidate network element to be configured according to the host in which the virtual machine is placed in the list of the candidate network elements to be configured, and generate the The first path information corresponding to the candidate network element to be configured.
  • the apparatus further includes:
  • a second receiving module configured to receive a network element configuration result sent by the cloud resource scheduler, where the network element configuration result carries a host that is included in the network element and places each virtual machine;
  • a first update module configured to search for the first path information corresponding to the network element according to the host corresponding to each virtual machine, and send the information to each network device involved in the first path information Updated first network configuration information;
  • the first network configuration information includes at least the forwarding path information and the forwarding rule information in each of the network devices when the hosts corresponding to the virtual machines communicate with each other, where the virtual machine corresponds to each virtual machine.
  • the apparatus further includes:
  • a second path planning module configured to: when the network device involved in the first path information is faulty, perform path planning for the network element according to the host where each virtual machine is included in the network element Second path information;
  • a second update module configured to send updated second network configuration information to each network device involved in the second path information
  • the second network configuration information includes at least forwarding path information and forwarding rule information in each of the network devices when communicating between the hosts corresponding to each virtual machine, and corresponding to each virtual machine.
  • the parameter filters out the required NEs to be configured and returns them to the cloud resource scheduler. It compensates for the condition that only the hardware configuration is used as the screening network element, and ignores the impact of the network condition on the communication between the virtual machines, so that the delay between the virtual machines in the network element is reduced. Sufficient bandwidth, and due to the management of network devices, the utilization of network elements is improved after the network elements are planned and allocated.
  • FIG. 1 is a flowchart of a method for resource scheduling according to Embodiment 1 of the present invention.
  • FIG. 2 is a flowchart of a method for resource scheduling according to Embodiment 2 of the present invention.
  • FIG. 3 is a flowchart of a method for re-planning a path for a network element in a resource scheduling method according to Embodiment 2 of the present invention
  • FIG. 4 is a schematic structural diagram of an apparatus for resource scheduling according to Embodiment 3 of the present invention.
  • FIG. 5 is a schematic structural diagram of an SDN Controller (Software Defined Network Controller) according to Embodiment 4 of the present invention.
  • the embodiment of the invention provides a method for resource scheduling.
  • the method process includes:
  • Step 102 Select one of the set of placement locations corresponding to each virtual machine for placing according to the current network topology, the performance parameter of the network device, and the performance requirement parameter of each virtual machine.
  • the host of each virtual machine is configured as a list of at least one candidate network element to be configured, and the list of the candidate network elements to be configured includes the host on which each virtual machine is placed;
  • the embodiment of the present invention receives the set of placement locations corresponding to each virtual machine included in the network element to be configured that is selected by the cloud resource scheduler, and performs performance parameters of the network device and each virtual network according to the current network topology structure managed by the SDN Controller.
  • the performance requirement parameters of the communication between the machines are filtered out to meet the required network elements to be configured and returned to the cloud resource scheduler. It compensates for the condition that only the hardware configuration is used as the screening network element, and ignores the impact of the network condition on the communication between the virtual machines, so that the delay between the virtual machines in the network element is reduced. Sufficient bandwidth, and because the SDN Controller manages the network devices, the utilization of the network elements is improved after the network elements are planned and allocated.
  • the embodiment of the invention provides a method for resource scheduling, as shown in FIG. 2 .
  • the network element to be configured sent by the cloud resource scheduler is further filtered, and the execution subject that meets the performance requirement parameter for communication between each virtual machine is SDN (Software Defined Network). , software-defined network) Controller software defines the network controller.
  • the method flow includes:
  • the cloud resource scheduler obtains the candidate information of the candidate network element to be configured, and selects a host that meets the requirement selected by each virtual machine in the candidate network element to be configured according to the demand information, and generates a corresponding virtual machine. Place a collection of locations.
  • the cloud resource scheduler can obtain the information according to the requirement. All kinds of corresponding virtual machines are configured to implement all the functions of the network element.
  • each virtual machine When selecting the host where each virtual machine is placed, it will be configured through hardware configuration parameters, exclusive parameters or affinity parameters, and performance requirement parameters for communication between each virtual machine. These are placed in the cloud resource scheduler.
  • the mode and parameters of the initial screening performed by the host of each virtual machine are preset according to the configuration parameters required for implementing various functions in the network element, and the setting manner thereof is not limited herein.
  • the hardware configuration parameters may include parameters such as CPU, IO, and RAM.
  • the cloud resource scheduler needs to filter the host to select adaptive virtual. Hardware configuration of the machine.
  • the exclusive parameter or the affinity parameter of the host where each virtual machine is located where the exclusive parameter or the affinity parameter may be a placement requirement between hosts of each virtual machine. For example, when virtual machine A and virtual machine B are set as exclusive parameters, virtual machine A and virtual machine B cannot be placed in the same host. When virtual machine A and virtual machine B are set as affinity parameters. After that, virtual machine A and virtual machine B need to be placed in the same host. For the parameters in this item, the cloud resource scheduler needs to filter the host to select the exclusive or affinity configuration for each virtual machine.
  • the performance requirement parameter for communication between each virtual machine is a requirement for the network when communicating between the virtual machines, for example, the bandwidth requirement, the packet loss rate in the network, and the network. Delayed demand, network jitter requirements, etc.
  • the SDN Controller needs to filter the host to select the host that meets the communication requirements between each virtual machine.
  • the requirements configuration for the first two items is configured by the cloud resource scheduler. After the configuration, a set of placement locations corresponding to each virtual machine is obtained, and each placement location set includes one or more hosts corresponding to the placement conditions corresponding to the virtual machine.
  • the host that meets the hardware configuration parameters of virtual machine A is (HOST1, HOST2, HOST3), and the host that meets the hardware configuration parameters of virtual machine B is (HOST3, HOST4, HOST5).
  • the exclusive demand parameter or the affinity requirement parameter the setting between virtual machine A and virtual machine B is exclusive, so the two virtual machines are not allowed to be placed in the same host.
  • the host that satisfies the hardware configuration parameters of virtual machine A is (HOST1, HOST2)
  • the host that satisfies the hardware configuration parameters of virtual machine B is (HOST3, HOST4, HOST5) or the hardware that satisfies virtual machine A.
  • the host whose configuration parameters are (HOST1, HOST2, HOST3) and the host that meets the hardware configuration parameters of virtual machine B are (HOST4, HOST5).
  • the SDN controller receives a set of placement locations corresponding to each virtual machine sent by the cloud resource scheduler, and a performance requirement parameter of each virtual machine, where the set of placement locations includes at least one host that meets the placement condition.
  • the further screening process performed by the SDN Controller according to the parameters of each network device in the network managed by the SDN controller is to select one host corresponding to the virtual machine in each set of placement locations corresponding to each virtual machine to form a host.
  • the SDN controller selects one of the set of placement locations corresponding to each virtual machine according to at least one of a current network topology, a performance parameter of the network device, and a performance requirement parameter of each virtual machine.
  • the hosts of each of the virtual machines are configured to form a list of at least one candidate network element to be configured, and the list of the candidate network elements to be configured includes the host in which each of the virtual machines is placed.
  • the SDN Controller masters the network topology structure managed by itself, and is used to select an optimal path for the candidate network element to be configured, and to select each virtual machine for the alternate network element to be configured to communicate with each other.
  • the number of hops of the device Therefore, the upper limit value of the path length at the time of communication between the placed virtual machines is set in advance, and the upper limit value of the hop count of the passed network device is set in advance, so that the communication between the virtual machines can be improved. effectiveness.
  • the SDN Controller grasps various parameters of each network device (router, switch) in the network managed by itself, such as allocated bandwidth and unallocated bandwidth in the network device, packet loss rate parameters and jitter parameters in the network device, and the like. .
  • the SDN Controller filters the hosts in the set of placement locations corresponding to each virtual machine according to the performance requirement parameters of communication between each virtual machine to meet the performance requirement parameters for communication between each virtual machine.
  • the bandwidth corresponding to the service currently assigned by a switch A and the bandwidth unallocated by the switch A.
  • step 203 can select a host where the virtual machine is placed for the candidate network element to be configured in the following manner:
  • a host that meets the number of hops in the network device that passes through each of the virtual machines is less than a preset number of hosts, Host of the machine; or,
  • the above three methods may exist at the same time or may select one or two methods to coexist in a manner to perform host screening, which is not limited herein.
  • the specific implementation manner of selecting one or more configured network elements may be:
  • a host that is, the first host, is sequentially selected in the set of placement positions of the virtual machines located in the first place, and in the order of Each set of the placement position of each virtual machine other than the set of the placement position of the virtual machine is selected, and each host is matched with the first host to perform the foregoing various conditions, and the network element to be configured can be used as a set of network elements to be configured.
  • the set of placement positions of other virtual machines are filtered, and then the second host, that is, the second host, is sequentially selected from the set of placement positions of the virtual machines in the first place, and according to the above manner
  • the filtering side is performed in the placement set of each of the virtual machines except the set of placement positions of the virtual machines located in the first place.
  • the combination of all the network elements to be configured that meet the conditions is selected by the following method.
  • Each of the to-be-configured network elements includes one host for each virtual machine.
  • the host that satisfies the hardware configuration parameters of the virtual machine A is (HOST1, HOST2)
  • the host that satisfies the hardware configuration parameters of the virtual machine B is (HOST3, HOST4, HOST5).
  • select HOST1 in virtual machine A and select HOST3, HOST4, and HOST5 in virtual machine B, and filter with HOST1 respectively.
  • the host corresponding to the candidate network element to be configured that meets the conditions is selected.
  • the combination can be (HOST1, HOST3), (HOST1, HOST5), at which point the screening process of HOST1 ends.
  • the candidate network elements to be configured that meet the conditions are selected.
  • the list can be the following two sets of entries (HOST2, HOST4), (HOST2, HOST5). At this time, four candidate network elements to be configured that meet the conditions are selected.
  • the SDN controller performs path planning for the candidate network element to be configured according to the host in which the virtual machine is placed in the list of the candidate network elements to be configured, and generates the candidate to be configured. Configure the first path information corresponding to the NE.
  • the configured NEs are configured to perform path planning and save the path information of each NE to be configured.
  • step 206 the process of planning a path for the network element in this step may also be performed in step 206, but the process is to perform path planning on the network element of a final configuration result.
  • the host corresponding to each virtual machine in the network element finally selected by the cloud resource scheduler is selected according to the host of each virtual machine in the network element.
  • the path of the network element is configured in the principle of the hop count of the least network device when the virtual machine is selected for the network element to communicate.
  • the SDN controller returns the list of the candidate network elements to be configured to the cloud resource scheduler.
  • the cloud resource scheduler selects a final network element configuration result according to the candidate list of the configured network element.
  • the network element to be configured is determined to be the final network element configuration result
  • the cloud resource scheduler filters the candidate network elements to be configured through further restrictions, and finally selects a network element to be configured as the final Network element configuration results. Where restrictions may be limited based on performance and/or cost requirements;
  • the SDN controller receives the configuration result of the network element sent by the cloud resource scheduler, where the network element configuration result carries the host where each virtual machine is included in the network element.
  • the first network configuration information includes at least forwarding path information and forwarding rule information in each network device when communicating between hosts corresponding to each virtual machine, and communication between hosts corresponding to each virtual machine.
  • Each network device sends updated network configuration information to inform each network device of the forwarding address and forwarding rules when forwarding the message between the virtual machines, and to notify each network device between the virtual machines.
  • the network configuration information is supported by the OpenFlow (flow table) protocol, and the network device in the current network also supports the OpenFlow protocol.
  • a method for re-planning a path for the network element when the network device in the network fails or the line fails is configured in the method of resource scheduling, as shown in FIG. 3 Show that the method includes:
  • the second path information is generated by re-provisioning the path for the network element according to the host where each virtual machine is included in the network element.
  • the SDN Controller monitors the network managed by the SDN Controller in real time, and receives a notification when the network device fails or the line fails. At this time, the network element that is managed by the SDN Controller is involved in the faulty network device or The network element of the faulty line performs re-route planning to generate new path information.
  • the process of re-planning the path and updating the network configuration information is the same as the process in the above steps 204 and 208, and details are not described herein again.
  • the second network configuration information includes at least forwarding path information and forwarding rule information in each network device when communicating between hosts corresponding to each virtual machine, and communication between hosts corresponding to each virtual machine.
  • the embodiment of the present invention receives the set of placement locations corresponding to each virtual machine included in the network element to be configured that is selected by the cloud resource scheduler, and performs performance parameters of the network device and each virtual network according to the current network topology structure managed by the SDN Controller.
  • the performance requirement parameters of the communication between the machines are filtered out to meet the required network elements to be configured and returned to the cloud resource scheduler. Make up for the condition that only the hardware configuration is used as the screening network element, and ignore the impact of the network condition on the communication between the virtual machines, so that the network In the communication process of the virtual machines, the delay is allocated to a sufficient bandwidth. Because the SDN Controller manages the network devices, the utilization of the network elements is improved after the network elements are planned and allocated.
  • An embodiment of the present invention provides a device for resource scheduling.
  • the device includes:
  • a first receiving module 401 configured to receive a set of placement locations corresponding to each virtual machine sent by the cloud resource scheduler, and a performance requirement parameter of each virtual machine, where the set of placement locations includes at least one that meets a placement condition Host
  • the selecting module 402 is configured to select, according to the current network topology, the performance parameter of the network device, and the performance requirement parameter of each virtual machine, respectively, in the set of placement locations corresponding to each virtual machine.
  • the returning module 403 is configured to return the list of the candidate network elements to be configured to the cloud resource scheduler.
  • the selection module 402 includes:
  • a first selecting unit configured to select, in the set of placement locations corresponding to each virtual machine, a host that meets the preset number of hops in the network device that meets the communication between each virtual machine, As a host on which each virtual machine is placed;
  • a second selecting unit configured to select, in each set of the placement locations corresponding to each virtual machine, a host that meets a delay between the virtual machines and the preset delay parameter, Host of a virtual machine
  • a third selecting unit configured to select, in each set of the placement locations corresponding to each virtual machine, that the bandwidth that is not allocated when the communication between the virtual machines is satisfied is greater than the communication between each virtual machine A host that requires bandwidth as a host to place each of the virtual machines.
  • the device further comprises:
  • the first path planning module 404 is configured to perform path planning for the candidate network element to be configured according to the host in which the virtual machine is placed in the list of the candidate network elements to be configured, and generate a path.
  • the first path information corresponding to the candidate network element to be configured is described.
  • the device further comprises:
  • the second receiving module 405 is configured to receive a network element configuration result that is sent by the cloud resource scheduler, where the network element configuration result carries a host that is included in the network element and that places each virtual machine;
  • the first update module 406 is configured to search, according to the host corresponding to each virtual machine, the first path information corresponding to the network element, and to each network device involved in the first path information. Sending updated first network configuration information;
  • the first network configuration information includes at least the forwarding path information and the forwarding rule information in each of the network devices when the hosts corresponding to the virtual machines communicate with each other, where the virtual machine corresponds to each virtual machine.
  • the device further comprises:
  • the second path planning module 407 is configured to re-route the network element according to the host where each virtual machine is placed according to the host that is included in the network element when the network device involved in the first path information is faulty. Generating second path information;
  • a second update module 408 configured to send updated second network configuration information to each network device involved in the second path information
  • the second network configuration information includes at least forwarding path information and forwarding rule information in each of the network devices when communicating between the hosts corresponding to each virtual machine, and corresponding to each virtual machine.
  • the embodiment of the present invention receives the set of placement locations corresponding to each virtual machine included in the network element to be configured that is selected by the cloud resource scheduler, and performs performance parameters of the network device and each virtual network according to the current network topology structure managed by the SDN Controller.
  • the performance requirement parameters of the communication between the machines are filtered out to meet the required network elements to be configured and returned to the cloud resource scheduler. It compensates for the condition that only the hardware configuration is used as the screening network element, and ignores the impact of the network condition on the communication between the virtual machines, so that the delay between the virtual machines in the network element is reduced. Sufficient bandwidth, and because the SDN Controller manages the network devices, the utilization of the network elements is improved after the network elements are planned and allocated.
  • An embodiment of the present invention provides an SDN Controller, the structure of which is shown in FIG. 5.
  • the SDNController includes: a memory 501 and at least one processor 502, and the processor 502 is configured to perform the following operations:
  • the cloud resource scheduler Receiving, by the cloud resource scheduler, a set of placement locations corresponding to each virtual machine, and a performance requirement parameter of each virtual machine, where the placement location set includes at least one host that meets the placement condition;
  • the performance parameter of the network device and the performance requirement parameter of each virtual machine one of selecting a set of placement locations corresponding to each virtual machine for placing the a host of each virtual machine, comprising at least one candidate list of network elements to be configured, wherein the list of candidate network elements to be configured includes the host for placing each of the virtual machines;
  • the selecting according to the current network topology structure, the performance parameter of the network device and the performance requirement parameter of each virtual machine, respectively, selecting one of the placement location sets corresponding to each virtual machine For placing the host of each virtual machine, including:
  • a host that meets the number of hops in the network device that passes through each of the virtual machines is less than a preset number of hosts, Host of the machine; or,
  • the method further includes:
  • the method further includes:
  • the first network configuration information includes at least the forwarding path information and the forwarding rule information in each of the network devices when the hosts corresponding to the virtual machines communicate with each other, where the virtual machine corresponds to each virtual machine.
  • the method further includes:
  • the second path information is generated by re-provisioning the path for the network element according to the host where each virtual machine is included in the network element;
  • the second network configuration information includes at least forwarding path information and forwarding rule information in each of the network devices when communicating between the hosts corresponding to each virtual machine, and corresponding to each virtual machine.
  • the embodiment of the present invention receives the set of placement locations corresponding to each virtual machine included in the network element to be configured that is selected by the cloud resource scheduler, and performs performance parameters of the network device and each virtual network according to the current network topology structure managed by the SDN Controller.
  • the performance requirement parameters of the communication between the machines are filtered out to meet the required network elements to be configured and returned to the cloud resource scheduler. It compensates for the condition that only the hardware configuration is used as the screening network element, and ignores the impact of the network condition on the communication between the virtual machines, so that the delay between the virtual machines in the network element is reduced. Sufficient bandwidth, and because the SDN Controller manages the network devices, the utilization of the network elements is improved after the network elements are planned and allocated.
  • a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种资源调度的方法及装置,属于通信技术领域。方法包括:接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及每个虚拟机的性能需求参数;根据当前的网络拓朴结构,网络设备的性能参数以及每个虚拟机的性能需求参数中的至少一个条件,分别在每个虚拟机对应的放置位置集合中选取一个用于放置每个虚拟机的主机,组成至少一个备选的待配置网元的列表,备选的待配置网元的列表中包含放置每个虚拟机的主机;将备选的待配置网元的列表返回给云资源调度器。本发明弥补了仅通过硬件配置作为筛选网元的条件,而忽略了网络状况对各虚拟机之间通信带来的影响,提高了网元中各虚拟机之间通信的效率。

Description

一种资源调度的方法及装置
本申请要求于2014年1月16日提交中国专利局、申请号为CN201410020032.8、发明名称为“一种资源调度的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,特别涉及一种资源调度的方法及装置。
背景技术
随着通信技术和云计算技术的发展,电信设备也已经进入了云化的时代,用户租用的网元设备被部署在电信云基础设施内,即将实现该网元的各种功能的单板以虚拟机的形式放置在一个或多个主机中,这些主机中的虚拟机协同处理以实现该网元对应的所有功能。
云资源调度器为用户租用的网元进行配置的方式为:为该网元中实现每一种功能的虚拟机分别选取放置的主机,在选取主机时会按照实现对应功能所需的硬件配置进行筛选。例如:主机的CPU(Central Processing Unit,中央处理器),IO(Input/Output,输入/输出),RAM(Random Access Memory,随机存储器)等作为筛选指标。最后,云资源调度器选取硬件配置最优的一组放置虚拟机的主机作为提供给用户的网元。
发明人发现现有技术至少存在以下问题:
由于在选取放置虚拟机的主机时仅考虑到了硬件配置,而忽略了各主机之间进行通信的网络状况,有可能会造成无法满足各虚拟机之间的通信要求,造成网元的执行任务的效率低下,影响用户的使用。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种资源调度的方法及装置。所述技术方案如下:
第一方面、一种资源调度的方法,包括:
接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一 个主机;
根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
将所述备选的待配置网元的列表返回给所述云资源调度器。
在第一方面的第一种可能的实现方式中,所述根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,包括:
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;或者,
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;或者,
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
在第一方面的第二种可能的实现方式中,所述组成至少一个备选的待配置网元的列表之后,所述方法还包括:
根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所述备选的待配置网元对应的第一路径信息。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述将所述备选的待配置网元返回给所述云资源调度器之后,所述方法还包括:
接收所述云资源调度器发送的网元配置结果,所述网元配置结果中携带所述网元包含的放置每个虚拟机的主机;
根据所述放置每个虚拟机对应的主机,查找所述网元对应的所述第一路 径信息,并向所述第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息;
其中所述第一网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息,为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述向所述第一路径信息中所涉及的每一个网络设备发送更新的网络配置信息之后,所述方法还包括:
当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息;
向所述第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
其中所述第二网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息以及为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
第二方面、一种资源调度的装置,包括:
第一接收模块,用于接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机;
选取模块,用于根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
返回模块,用于将所述备选的待配置网元的列表返回给所述云资源调度器。
在第二方面的第一种可能的实现方式中,所述选取模块,包括:
第一选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;
第二选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;
第三选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
在第二方面的第二种可能的实现方式中,所述装置还包括:
第一路径规划模块,用于根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所述备选的待配置网元对应的第一路径信息。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述装置还包括:
第二接收模块,用于接收所述云资源调度器发送的网元配置结果,所述网元配置结果中携带所述网元包含的放置每个虚拟机的主机;
第一更新模块,用于根据所述放置每个虚拟机对应的主机,查找所述网元对应的所述第一路径信息,并向所述第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息;
其中所述第一网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息,为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述装置还包括:
第二路径规划模块,用于当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息;
第二更新模块,用于向所述第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
其中所述第二网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息以及为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
本发明实施例提供的技术方案带来的有益效果是:
通过接收云资源调度器初选的待配置网元包含的每个虚拟机对应的放置位置集合,并根据当前的网络拓扑结构,网络设备的性能参数以及每个虚拟机之间进行通信的性能需求参数筛选出符合要求的待配置网元并返回给云资源调度器。弥补了仅通过硬件配置作为筛选网元的条件,而忽略了网络状况对各虚拟机之间通信带来的影响,使得网元中各虚拟机之间在通信过程中降低了时延被分配到了足够的带宽,并由于对网络设备进行管理,在对网元进行规划分配后使得网络设备的利用率得到了提高。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的资源调度的方法流程图;
图2是本发明实施例二提供的资源调度的方法流程图;
图3是本发明实施例二提供的资源调度的方法中重新为网元规划路径的方法流程图;
图4是本发明实施例三提供的资源调度的装置结构示意图;
图5是本发明实施例四提供的SDN Controller(Software Defined Network Controller,软件定义网络控制器)的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种资源调度的方法,参见图1,方法流程包括:
101:接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机;
102:根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
103:将所述备选的待配置网元的列表返回给所述云资源调度器。
本发明实施例通过接收云资源调度器初选的待配置网元包含的每个虚拟机对应的放置位置集合,并根据SDN Controller管理的当前的网络拓扑结构,网络设备的性能参数以及每个虚拟机之间进行通信的性能需求参数筛选出符合要求的待配置网元并返回给云资源调度器。弥补了仅通过硬件配置作为筛选网元的条件,而忽略了网络状况对各虚拟机之间通信带来的影响,使得网元中各虚拟机之间在通信过程中降低了时延被分配到了足够的带宽,并由于SDN Controller对网络设备进行管理,在对网元进行规划分配后使得网络设备的利用率得到了提高。
实施例二
本发明实施例提供了一种资源调度的方法,参见图2。
需要说明的是,在本发明实施例中对云资源调度器发送的待配置网元进行进一步的筛选,得到符合每个虚拟机之间进行通信的性能需求参数的执行主体为SDN(Software Defined Network,软件定义网络)Controller软件定义网络控制器。
其中,该方法流程包括:
201:云资源调度器获取备选的待配置网元的需求信息,并根据需求信息为备选的待配置网元中每个虚拟机选取的满足需求的放置主机,生成每个虚拟机对应的放置位置集合。
用户进行网元的配置时,会提交该网元各种功能的需求信息,其中每一种功能会对应一个或多个虚拟机来实现,因此云资源调度器根据该需求信息 来配置各种对应的虚拟机来实现该网元的所有功能。
在选取放置每个虚拟机的主机时,会通过硬件配置参数、排他性参数或亲和性参数以及每个虚拟机之间进行通信的性能需求参数等进行配置,这些在云资源调度器中对放置每个虚拟机的主机进行的初步筛选的方式和参数,是根据网元中实现各种功能所需的配置参数进行预设的,其设定方式在此并不限定。
其中,对于每个虚拟机所在主机的硬件配置参数,该硬件配置参数中可以包括CPU、IO、RAM等参数,对于本项中的参数需要由云资源调度器对主机进行筛选,以选取适应虚拟机的硬件配置。
其中,对于每个虚拟机所在主机的排他性参数或亲和性参数,其中排他性参数或亲和性参数可以为各个虚拟机所在主机之间的放置要求。例如,当虚拟机A和虚拟机B之间设置为排他性参数后,则虚拟机A和虚拟机B不能放置在同一个主机中,当虚拟机A和虚拟机B之间设置为亲和性参数后,则虚拟机A和虚拟机B需要放置在同一个主机中,对于本项中的参数需要由云资源调度器对主机进行筛选,以选取适应各虚拟机的排他性或亲和性配置。
其中,对于每个虚拟机之间进行通信的性能需求参数,该需求参数为各个虚拟机之间进行通信时对网络的需求,例如可以设置为带宽的需求、网络中丢包率的需求、网络延迟的需求、网络抖动的需求等,对于本项中的参数需要由SDN Controller对主机进行筛选,以选取适应每个虚拟机之间通信需求的主机。
因此对于前两项的需求配置,由云资源调度器进行配置。并在配置后得到每个虚拟机对应的放置位置集合,每个放置位置集合中包含该虚拟机对应的符合放置条件的一个或多个主机。
例如:在第一步根据硬件配置进行筛选时,满足虚拟机A的硬件配置参数的主机为(HOST1,HOST2,HOST3),满足虚拟机B的硬件配置参数的主机为(HOST3,HOST4,HOST5);针对排他性需求参数或亲和性需求参数,虚拟机A和虚拟机B之间的设置为排他性,因此这两个虚拟机不允许放置在同一个主机中。在第二步排他性筛选后,满足虚拟机A的硬件配置参数的主机为(HOST1,HOST2),满足虚拟机B的硬件配置参数的主机为(HOST3,HOST4,HOST5)或者满足虚拟机A的硬件配置参数的主机为(HOST1,HOST2,HOST3),满足虚拟机B的硬件配置参数的主机为(HOST4,HOST5)。
202:SDN Controller接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机。
此时,由SDN Controller根据自身管理的网络中各网络设备的各项参数,进行的进一步筛选过程,是分别在每个虚拟机对应的放置位置集合中选取一个该虚拟机对应的主机,组成一个或多个网元的可执行的放置方案,该放置方案中每个虚拟机对应的主机需要满足每个虚拟机之间进行通信的性能需求参数。
203:SDN Controller根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机。
其中,SDN Controller掌握自身管理的网络拓扑结构,用于为备选的待配置网元选取最优的路径,以及用于为备选的待配置网元选取各虚拟机进行通信时经过最少的网络设备的跳数。因此,预先设定放置的各虚拟机之间进行通信时的路径长度的上限值,并预先设定经过的网络设备的跳数的上限值,可以提高各虚拟机之间在通信时的效率。
进一步的,SDN Controller掌握自身管理的网络中各网络设备(路由器,交换机)的各项参数,如网络设备中已分配的带宽和未分配的带宽,网络设备中的丢包率参数以及抖动参数等。SDN Controller按照每个虚拟机之间进行通信的性能需求参数在每个虚拟机对应的放置位置集合中对主机进行筛选,以满足每个虚拟机之间进行通信的性能需求参数。
例如某交换机A当前已分配的业务对应的带宽,以及该交换机A未分配的带宽。
因此,步骤203可以通过以下方式为备选的待配置网元选取放置虚拟机的主机:
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;或者,
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟 机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;或者,
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
其中,上述三种方式可以同时存在也可以按需求选取其中一种或两种方式并存的方式进行主机的筛选,在此并不限定。
在选取一个或多个带配置网元的具体实施方式可以为:
在备选的待配置网元包含的每个虚拟机对应的放置位置集合中,首先在位于首位的虚拟机的放置位置集合中按顺序选取一个主机即第一主机,并按顺序在除位于首位的虚拟机的放置位置集合以外的每一个虚拟机的放置位置集合中选取每一个主机与第一主机进行上述各种条件的匹配,满足条件的即可作为一组待配置网元。当除位于首位的虚拟机以外,其他虚拟机的放置位置集合都被筛选一遍后,再从位于首位的虚拟机的放置位置集合中按顺序选取第二个主机即第二主机,并按照上述方式在除位于首位的虚拟机的放置位置集合以外的其他每一个虚拟机的放置集合中进行筛选一边。以此类推筛选出所有的满足条件的待配置网元的组合,每个待配置网元中包含放置每个虚拟机的一个主机。
接步骤202中的例子进行说明,满足虚拟机A的硬件配置参数的主机为(HOST1,HOST2),满足虚拟机B的硬件配置参数的主机为(HOST3,HOST4,HOST5)。首先通过在虚拟机A中选取HOST1,并在虚拟机B中选取HOST3、HOST4、HOST5,分别与HOST1进行筛选,根据上述的筛选条件筛选后,满足条件的备选的待配置网元对应的主机组合可以为(HOST1,HOST3),(HOST1,HOST5),此时HOST1的筛选过程结束。进入第二步,在虚拟机A中选取HOST2,并在虚拟机B中选取HOST3、HOST4、HOST5,分别与HOST2进行筛选,根据上述的筛选条件筛选后,满足条件的备选的待配置网元的列表可以为以下两组表项(HOST2,HOST4),(HOST2,HOST5),此时筛选出四个满足条件的备选的待配置网元。
204:SDN Controller根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所述备选的待配置网元对应的第一路径信息。
根据为备选的待配置网元中每个虚拟机的主机选取最优的路径,以及用于为待配置网元选取各虚拟机进行通信时经过最少的网络设备的跳数的原则,为已配置好的待配置网元进行路径规划,保存每个待配置网元的路径信息。
进一步的,本步骤中的对网元进行规划路径的过程还可以在步骤206中进行,但是该过程是为对一个最终配置结果的网元进行路径规划。
其中步骤206中接收到云资源调度器发送的最终配置结果之后,由云资源调度器最终选取的网元中每个虚拟机对应的主机,根据为网元中每个虚拟机的主机选取最优的路径,以及用于为网元选取各虚拟机进行通信时经过最少的网络设备的跳数的原则配置网元的路径信息。
205:SDN Controller将所述备选的待配置网元的列表返回给所述云资源调度器。
206:云资源调度器根据备选的待配置网元的列表选取最终的网元配置结果。
如果备选的待配置网元的列表中仅包含一个组合时,则确定该待配置网元为最终的网元配置结果;
如果备选的待配置网元的列表中仅包含一个以上的组合时,云资源调度器则会通过进一步的限制条件对备选的待配置网元进行筛选,最终选取一个待配置网元作为最终的网元配置结果。其中限制条件可以为根据性能和/或成本的需求进行限制;
将最终的网元配置结果返回给SDN Controller。
207:SDN Controller接收云资源调度器发送的网元配置结果,网元配置结果中携带网元包含的放置每个虚拟机的主机。
208:根据放置每个虚拟机对应的主机,查找网元对应的第一路径信息,并向第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息。
其中第一网络配置信息中至少包含每个虚拟机对应的主机之间进行通信时在每一个网络设备中的转发路径信息和转发规则信息以及为每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
SDN Controller会根据该网元预先规划的,或收到网元配置结果后进行规划的路径信息,为该网元中每个虚拟机对应的主机之间进行通信时所经过的 每一个网络设备发送更新的网络配置信息,以告知每一个网络设备在虚拟机之间进行通信时,对通信进行转发消息时的转发地址和转发规则,以及告知每一个网络设备在虚拟机之间进行通信时,需要为其分配的带宽以及被要求的最大时延。其中,被分配的带宽被用于在所述网元中各虚拟机之间进行通信时,各网络设备为该数据传输所分配的带宽;所要求的最大时延被用于在所述网元中各虚拟机之间进行数据传输时,各网络设备为该通信所保证的时延,该时延不能大于最大时延,已保证通信的效率。
其中,在本发明实施例中,网络配置信息是支持OpenFlow(流表)协议的,相对应当前网络中的网络设备也是支持OpenFlow协议的。
在本发明实施例中,还提供了一种资源调度的方法中配置好网元后,当网络中网络设备出现故障或线路出现故障时,重新为该网元规划路径的方法,如图3所示,该方法包括:
301:当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息。
其中,SDN Controller实时监控自身所管理的网络,在网络设备出现故障或线路出现故障时会接到通知,此时将自身所管理的各网元中涉及到该出现故障的网络设备或经过该出现故障的线路的网元进行重新的路径规划,生成新的路径信息。重新规划路径以及更新网络配置信息的过程和上述步骤204和步骤208中的过程相同,在此不再赘述。
302:向第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
其中第二网络配置信息中至少包含每个虚拟机对应的主机之间进行通信时在每一个网络设备中的转发路径信息和转发规则信息以及为每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
本发明实施例通过接收云资源调度器初选的待配置网元包含的每个虚拟机对应的放置位置集合,并根据SDN Controller管理的当前的网络拓扑结构,网络设备的性能参数以及每个虚拟机之间进行通信的性能需求参数筛选出符合要求的待配置网元并返回给云资源调度器。弥补了仅通过硬件配置作为筛选网元的条件,而忽略了网络状况对各虚拟机之间通信带来的影响,使得网 元中各虚拟机之间在通信过程中降低了时延被分配到了足够的带宽,并由于SDN Controller对网络设备进行管理,在对网元进行规划分配后使得网络设备的利用率得到了提高。
实施例三
本发明实施例提供了一种资源调度的装置,参见图4,该装置包括:
第一接收模块401,用于接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机;
选取模块402,用于根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
返回模块403,用于将所述备选的待配置网元的列表返回给所述云资源调度器。
其中,所述选取模块402,包括:
第一选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;
第二选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;
第三选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
其中,所述装置还包括:
第一路径规划模块404,用于根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所 述备选的待配置网元对应的第一路径信息。
其中,所述装置还包括:
第二接收模块405,用于接收所述云资源调度器发送的网元配置结果,所述网元配置结果中携带所述网元包含的放置每个虚拟机的主机;
第一更新模块406,用于根据所述放置每个虚拟机对应的主机,查找所述网元对应的所述第一路径信息,并向所述第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息;
其中所述第一网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息,为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
其中,所述装置还包括:
第二路径规划模块407,用于当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息;
第二更新模块408,用于向所述第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
其中所述第二网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息以及为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
本发明实施例通过接收云资源调度器初选的待配置网元包含的每个虚拟机对应的放置位置集合,并根据SDN Controller管理的当前的网络拓扑结构,网络设备的性能参数以及每个虚拟机之间进行通信的性能需求参数筛选出符合要求的待配置网元并返回给云资源调度器。弥补了仅通过硬件配置作为筛选网元的条件,而忽略了网络状况对各虚拟机之间通信带来的影响,使得网元中各虚拟机之间在通信过程中降低了时延被分配到了足够的带宽,并由于SDN Controller对网络设备进行管理,在对网元进行规划分配后使得网络设备的利用率得到了提高。
实施例四
本发明实施例提供了一种SDN Controller,其结构参见图5,其中,该SDNController包括:存储器501和至少一个处理器502,处理器502被配置为执行如下操作:
接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机;
根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
将所述备选的待配置网元的列表返回给所述云资源调度器。
其中,所述根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,包括:
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;或者,
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;或者,
分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
其中,所述组成至少一个备选的待配置网元的列表之后,所述方法还包括:
根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所述备选的待配置网元对应的第一路径信息。
其中,所述将所述备选的待配置网元返回给所述云资源调度器之后,所述方法还包括:
接收所述云资源调度器发送的网元配置结果,所述网元配置结果中携带所述网元包含的放置每个虚拟机的主机;
根据所述放置每个虚拟机对应的主机,查找所述网元对应的所述第一路径信息,并向所述第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息;
其中所述第一网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息,为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
其中,所述向所述第一路径信息中所涉及的每一个网络设备发送更新的网络配置信息之后,所述方法还包括:
当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息;
向所述第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
其中所述第二网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息以及为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
本发明实施例通过接收云资源调度器初选的待配置网元包含的每个虚拟机对应的放置位置集合,并根据SDN Controller管理的当前的网络拓扑结构,网络设备的性能参数以及每个虚拟机之间进行通信的性能需求参数筛选出符合要求的待配置网元并返回给云资源调度器。弥补了仅通过硬件配置作为筛选网元的条件,而忽略了网络状况对各虚拟机之间通信带来的影响,使得网元中各虚拟机之间在通信过程中降低了时延被分配到了足够的带宽,并由于SDN Controller对网络设备进行管理,在对网元进行规划分配后使得网络设备的利用率得到了提高。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

  1. 一种资源调度的方法,其特征在于,所述方法包括:
    接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机;
    根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
    将所述备选的待配置网元的列表返回给所述云资源调度器。
  2. 根据权利要求1所述的方法,其特征在于,所述根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,包括:
    分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;或者,
    分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;或者,
    分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
  3. 根据权利要求1所述的方法,其特征在于,所述组成至少一个备选的待配置网元的列表之后,所述方法还包括:
    根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所述备选的待配置网元对应的第一路径信息。
  4. 根据权利要求3所述的方法,其特征在于,所述将所述备选的待配置网元返回给所述云资源调度器之后,所述方法还包括:
    接收所述云资源调度器发送的网元配置结果,所述网元配置结果中携带所述网元包含的放置每个虚拟机的主机;
    根据所述放置每个虚拟机对应的主机,查找所述网元对应的所述第一路径信息,并向所述第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息;
    其中所述第一网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息,为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
  5. 根据权利要求4所述的方法,其特征在于,所述向所述第一路径信息中所涉及的每一个网络设备发送更新的网络配置信息之后,所述方法还包括:
    当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息;
    向所述第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
    其中所述第二网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息以及为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
  6. 一种资源调度的装置,其特征在于,所述装置包括:
    第一接收模块,用于接收云资源调度器发送的每个虚拟机对应的放置位置集合,以及所述每个虚拟机的性能需求参数,所述放置位置集合中包含符合放置条件的至少一个主机;
    选取模块,用于根据当前的网络拓扑结构,网络设备的性能参数以及所述每个虚拟机的性能需求参数中的至少一个条件,分别在所述每个虚拟机对 应的放置位置集合中选取一个用于放置所述每个虚拟机的主机,组成至少一个备选的待配置网元的列表,所述备选的待配置网元的列表中包含所述放置所述每个虚拟机的主机;
    返回模块,用于将所述备选的待配置网元的列表返回给所述云资源调度器。
  7. 根据权利要求6所述的装置,其特征在于,所述选取模块,包括:
    第一选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时经过的网络设备中的跳数小于预设数量的主机,作为放置所述每个虚拟机的主机;
    第二选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时时延小于预设时延参数的主机,作为放置所述每个虚拟机的主机;
    第三选取单元,用于分别在所述每个虚拟机对应的放置位置集合中,选取满足所述每个虚拟机之间进行通信时未分配的带宽大于所述每个虚拟机之间进行通信的需求带宽的主机,作为放置所述每个虚拟机的主机。
  8. 根据权利要求6所述的装置,其特征在于,所述装置还包括:
    第一路径规划模块,用于根据所述备选的待配置网元的列表中所述放置所述每个虚拟机的主机,为所述备选的待配置网元进行路径规划,生成所述备选的待配置网元对应的第一路径信息。
  9. 根据权利要求8所述的装置,其特征在于,所述装置还包括:
    第二接收模块,用于接收所述云资源调度器发送的网元配置结果,所述网元配置结果中携带所述网元包含的放置每个虚拟机的主机;
    第一更新模块,用于根据所述放置每个虚拟机对应的主机,查找所述网元对应的所述第一路径信息,并向所述第一路径信息中所涉及的每一个网络设备发送更新的第一网络配置信息;
    其中所述第一网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息,为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时 延。
  10. 根据权利要求9所述的装置,其特征在于,所述装置还包括:
    第二路径规划模块,用于当所述第一路径信息中所涉及的网络设备出现故障时,根据所述网元包含的放置每个虚拟机的主机,为所述网元重新进行路径规划生成第二路径信息;
    第二更新模块,用于向所述第二路径信息中所涉及的每一个网络设备发送更新的第二网络配置信息;
    其中所述第二网络配置信息中至少包含所述每个虚拟机对应的主机之间进行通信时在所述每一个网络设备中的转发路径信息和转发规则信息以及为所述每个虚拟机对应的主机之间进行通信时所分配的带宽和所要求的最大时延。
PCT/CN2014/094662 2014-01-16 2014-12-23 一种资源调度的方法及装置 WO2015106618A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410020032.8 2014-01-16
CN201410020032.8A CN103812930B (zh) 2014-01-16 2014-01-16 一种资源调度的方法及装置

Publications (1)

Publication Number Publication Date
WO2015106618A1 true WO2015106618A1 (zh) 2015-07-23

Family

ID=50709123

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/094662 WO2015106618A1 (zh) 2014-01-16 2014-12-23 一种资源调度的方法及装置

Country Status (2)

Country Link
CN (1) CN103812930B (zh)
WO (1) WO2015106618A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103812930B (zh) * 2014-01-16 2017-10-17 华为技术有限公司 一种资源调度的方法及装置
WO2015192360A1 (zh) 2014-06-19 2015-12-23 华为技术有限公司 一种发送数据包的方法及装置
CN105245428B (zh) * 2014-07-07 2018-07-31 北京东土科技股份有限公司 一种报文处理规则的配置方法及装置
CN104202264B (zh) * 2014-07-31 2019-05-10 华为技术有限公司 云化数据中心网络的承载资源分配方法、装置及系统
CN104518993A (zh) * 2014-12-29 2015-04-15 华为技术有限公司 云化网络通信路径的分配方法、装置及系统
CN104636184B (zh) 2014-12-29 2018-05-01 上海华为技术有限公司 虚拟机实例的部署方法和装置及设备
CN105607950A (zh) * 2015-10-30 2016-05-25 浪潮(北京)电子信息产业有限公司 一种虚拟机资源配置方法和装置
CN106919450B (zh) * 2015-12-24 2020-11-17 华为技术有限公司 资源调整方法和装置
CN106502760B (zh) * 2016-09-21 2019-06-21 华为技术有限公司 一种虚拟机亲和性策略可视化的方法及装置
CN108011907B (zh) * 2016-10-31 2020-06-02 华为技术有限公司 配用电通信网的资源分配方法及装置
CN107547242B (zh) * 2017-05-24 2019-11-12 新华三技术有限公司 Vm配置信息的获取方法及装置
CN109976901B (zh) * 2017-12-28 2021-04-16 航天信息股份有限公司 一种资源调度方法、装置、服务器及可读存储介质
CN109728984B (zh) * 2018-11-26 2021-01-29 华为技术有限公司 一种接入系统、方法及装置
CN113489604B (zh) * 2021-06-24 2022-08-26 哈尔滨工业大学 网络仿真方法、装置、终端设备以及存储介质
CN116032757B (zh) * 2022-12-16 2024-05-10 派欧云计算(上海)有限公司 边缘云混跑场景的网络资源优化方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739798A (zh) * 2012-07-05 2012-10-17 成都国腾实业集团有限公司 具有网络感知功能的云平台资源调度方法
CN103095788A (zh) * 2011-11-02 2013-05-08 佳都新太科技股份有限公司 一种基于网络拓扑的云资源调度策略
CN103248659A (zh) * 2012-02-13 2013-08-14 北京华胜天成科技股份有限公司 一种云计算资源调度方法和系统
CN103812930A (zh) * 2014-01-16 2014-05-21 华为技术有限公司 一种资源调度的方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI426393B (zh) * 2010-02-12 2014-02-11 Elitegroup Computer Sys Co Ltd 雲端計算資源排程方法與應用之系統
CN102394932A (zh) * 2011-11-04 2012-03-28 浪潮(北京)电子信息产业有限公司 一种云海操作系统及其资源调度方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095788A (zh) * 2011-11-02 2013-05-08 佳都新太科技股份有限公司 一种基于网络拓扑的云资源调度策略
CN103248659A (zh) * 2012-02-13 2013-08-14 北京华胜天成科技股份有限公司 一种云计算资源调度方法和系统
CN102739798A (zh) * 2012-07-05 2012-10-17 成都国腾实业集团有限公司 具有网络感知功能的云平台资源调度方法
CN103812930A (zh) * 2014-01-16 2014-05-21 华为技术有限公司 一种资源调度的方法及装置

Also Published As

Publication number Publication date
CN103812930B (zh) 2017-10-17
CN103812930A (zh) 2014-05-21

Similar Documents

Publication Publication Date Title
WO2015106618A1 (zh) 一种资源调度的方法及装置
US11218423B2 (en) Method for service implementation in network function virtualization (NFV) system and communications unit
US9729424B2 (en) Defining data flow paths in software-defined networks with application-layer traffic optimization
US8447849B2 (en) Negotiated parent joining in directed acyclic graphs (DAGS)
CN103229468B (zh) 分组交换资源分配方法及设备
US8937886B2 (en) Dynamic reroute scheduling in a directed acyclic graph (DAG)
KR101473783B1 (ko) 터널링을 이용한 다이나믹 서비스 체이닝 제어 방법 및 장치
US9917729B2 (en) Methods, systems, and computer readable media for multi-layer orchestration in software defined networks (SDNs)
US10587494B2 (en) Network control method and apparatus
US9667500B2 (en) Contextual virtual routing updates
CN110535766A (zh) 一种生成路由的方法和设备
US9628371B2 (en) Controlling routing during scheduled node downtime
EP3065360A1 (en) Traffic cleaning method and device, and computer storage medium
US11184267B2 (en) Intelligent in-band telemetry auto-configuration for IP networks
CN106487558B (zh) 一种实现接入设备扩缩容的方法和装置
JP2019500822A (ja) 仮想マシンパケット制御
US9418340B2 (en) Fast learning to train learning machines using shadow joining
US11444840B2 (en) Virtualized networking application and infrastructure
KR101460048B1 (ko) 태깅을 이용한 다이나믹 서비스 체이닝 제어 방법 및 장치
EP4099631A1 (en) Method for configuring performance test indication information, and related device
KR101658824B1 (ko) 소프트웨어 정의 네트워크에서 플로우 룰을 변경하는 방법, 장치 및 컴퓨터 프로그램
CN104753705B (zh) Ds域的生成方法、设备及系统
KR101707073B1 (ko) Sdn 기반의 에러 탐색 네트워크 시스템
US12015543B2 (en) Method for configuring performance measurement indication information and related device
CN115695287A (zh) 一种转发路径计算的方法以及相关装置

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: 14878865

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14878865

Country of ref document: EP

Kind code of ref document: A1