Edge computing resource scheduling method, device, system, electronic device and medium

By obtaining data from terminal devices and edge nodes, determining service priority queues and updating resource pool registry, the problem of low computing resource utilization in edge computing platforms is solved, and efficient allocation of edge computing resource and business service quality improvement is achieved.

CN115766875BActive Publication Date: 2025-03-04CHINA TELECOM CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211457049.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-16
Publication Date
2025-03-04
Estimated Expiration
2042-11-16

AI Technical Summary

Technical Problem

In business scenarios such as smart cities and smart transportation, edge computing platforms have low computing resource utilization rates due to heterogeneous computing power environments, and traditional computing power collaboration strategies cannot meet the complex scenarios of edge computing resource allocation.

Method used

By obtaining the resource scheduling request of the terminal device and the node computing power data of the edge node, the service priority queue of the task is determined, and the resource pool registry for the edge computing power is updated. Finally, according to the service priority queue and resource pool registry, the edge computing resources on the corresponding edge node are allocated to the task.

Benefits of technology

The utilization rate of edge computing resources on edge clusters is improved, and the delay caused by resource allocation queuing by high concurrent real-time services is reduced, ensuring that service performance is not reduced, and at the same time, system throughput is increased, and business service quality is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115766875B_ABST
    Figure CN115766875B_ABST
Patent Text Reader

Abstract

The present disclosure provides an edge computing resource scheduling method, device, system, electronic device and storage medium, which relates to the field of edge computing technology. The method includes: obtaining a resource scheduling request sent by multiple terminal devices for requesting the allocation of edge computing resources for tasks, and the node computing power data of each edge node, wherein the resource scheduling request contains the required resource data of the task; according to the required resource data of each task in multiple tasks, the service priority queue of all tasks is determined; according to the node computing power data of each edge node, the edge computing available resource pool registry is updated; according to the service priority queue and the edge computing available resource pool registry, the edge computing resources on the corresponding edge node are allocated to each task. The present disclosure increases the system throughput and improves the utilization rate of edge computing resources on the edge cluster while ensuring that the service performance is not reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] In business scenarios such as smart cities and smart transportation, as applications extend from the cloud center to the edge, the heterogeneity of edge devices in the end-edge-cloud system makes it increasingly difficult to schedule computing resources.

[0003] Existing traditional resource scheduling algorithms such as heuristic genetics cannot achieve optimal computing resource utilization in edge heterogeneous computing environments. Edge computing platforms have the ability to access and process massive amounts of data, but current traditional computing coordination strategies cannot meet the complex scenarios of edge computing resource allocation. Existing terminal devices are usually strongly bound to edge nodes, and the traffic distribution of terminal devices is fixed, making it impossible to efficiently utilize edge computing resources.

[0004] Based on this, how to improve the utilization rate of edge computing resources has become a technical problem that needs to be solved urgently.

[0005] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0006] The present disclosure provides an edge computing resource scheduling method, device, system, electronic device and storage medium, which at least to a certain extent overcome the problem of low edge computing resource utilization in related technologies.

[0007] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by the practice of the present disclosure.

[0008] According to one aspect of the present disclosure, a method for scheduling edge computing resources is provided, including: obtaining resource scheduling requests sent by multiple terminal devices for requesting the allocation of edge computing resources for tasks, and node computing power data of each edge node, wherein the resource scheduling request includes the required resource data of the task, and the node computing power data is data representing the usage of edge computing resources on the edge node; determining the service priority queue of all tasks according to the required resource data of each task in the multiple tasks; updating the edge computing available resource pool registry according to the node computing power data of each edge node, wherein the edge computing available resource pool registry is used to record the usage of edge computing resources of all edge nodes; and allocating edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing available resource pool registry.

[0009] In one embodiment of the present disclosure, before obtaining the resource scheduling request sent by the terminal device and the node computing power data of each edge node, the method also includes: deploying services of different service types to each computing power node based on a policy gradient algorithm of a graph neural network, wherein the service includes allocatable edge computing power resources.

[0010] In one embodiment of the present disclosure, the demand resource data includes at least one of computing demand data, storage demand data, network demand data and peak resource demand prediction data of the task.

[0011] In one embodiment of the present disclosure, a service priority queue of all tasks is determined based on demand resource data of each task among multiple tasks, including: generating a feature description of the task based on at least one of the computing requirement data, storage requirement data, network requirement data, and peak resource requirement forecast data of the task, wherein the feature description is a feature portrait of the latency, accuracy, reliability, and / or scalability of the task; and determining the service priority queue of all tasks based on the feature description of each task.

[0012] In one embodiment of the present disclosure, the node computing power data includes at least one of resource usage data, resource utilization rate, and service number of each edge node.

[0013] In one embodiment of the present disclosure, the edge computing power available resource pool registry includes an allocated computing power set, an unallocated computing power set, and a predicted allocated computing power set.

[0014] In one embodiment of the present disclosure, the method also includes: when the terminal device cancels a task, or when the computing power resource allocation of the edge node is canceled, the computing power resource data reported by the edge node is obtained, and the edge computing power available resource pool registry is updated according to the computing power resource data of the edge node; when the terminal device starts a task, or when the computing power resource allocation of the edge node occurs, the computing power resource data reported by the edge node is obtained, and the edge computing power available resource pool registry is updated according to the computing power resource data of the edge node.

[0015] In one embodiment of the present disclosure, after allocating computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing power available resource pool registration table, the method further includes: sending a no resources available message to the terminal device corresponding to the target task, wherein the target task is a task among multiple tasks to which no computing resources are allocated.

[0016] According to another aspect of the present disclosure, an edge computing resource scheduling device is provided, including: a request and data acquisition module, which is used to obtain resource scheduling requests sent by multiple terminal devices for requesting the allocation of edge computing resources to tasks, and node computing power data of each edge node, wherein the resource scheduling request includes the required resource data of the task, and the node computing power data is data representing the usage of edge computing resources on the edge node; a service priority queue determination module, which is used to determine the service priority queue of all tasks according to the required resource data of each task in multiple tasks; a resource pool registry update module, which is used to update the edge computing available resource pool registry according to the node computing power data of each edge node, wherein the edge computing available resource pool registry is used to record the usage of edge computing resources of all edge nodes; an edge computing resource allocation module, which is used to allocate edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing available resource pool registry.

[0017] In one embodiment of the present disclosure, the above-mentioned device also includes a service deployment module, which is used to deploy services of different service types to each computing power node based on a policy gradient algorithm of a graph neural network, wherein the service includes allocatable edge computing power resources.

[0018] In one embodiment of the present disclosure, the above-mentioned service priority queue determination module is also used to generate a feature description of the task based on at least one of the computing requirement data, storage requirement data, network requirement data and peak resource requirement forecast data of the task, wherein the feature description is a feature portrait of the task's latency, accuracy, reliability and / or scalability; and determine the service priority queue of all tasks based on the feature description of each task.

[0019] In one embodiment of the present disclosure, the above-mentioned resource pool registry update module is also used to obtain the computing power resource data reported by the edge node when the terminal device cancels the task, or when the computing power resource allocation of the edge node is canceled, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node; when the terminal device starts the task, or when the computing power resource allocation of the edge node occurs, obtain the computing power resource data reported by the edge node, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node.

[0020] In one embodiment of the present disclosure, the above-mentioned device also includes a no-resource-schedulable message sending module, which is used to send a no-resource-schedulable message to a terminal device corresponding to a target task, wherein the target task is a task among multiple tasks to which computing resources are not allocated.

[0021] According to another aspect of the present disclosure, an edge computing resource scheduling system is provided, including: a node request assignment module, used to obtain resource scheduling requests sent by multiple terminal devices for requesting the allocation of edge computing resources to tasks, wherein the resource scheduling requests include the required resource data of the tasks; a node computing power perception module, used to monitor and obtain the node computing power data of each edge node, wherein the node computing power data is data representing the usage of edge computing resources on the edge node; a service demand generation module, used to determine the service priority queue of all tasks according to the required resource data of each task in multiple tasks; an on-cloud computing power perception module, used to update the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the usage of edge computing resources of all edge nodes; an edge computing power scheduling module, used to allocate edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing power available resource pool registry.

[0022] In one embodiment of the present disclosure, the demand resource data includes at least one of computing demand data, storage demand data, network demand data and peak resource demand prediction data of the task.

[0023] In one embodiment of the present disclosure, the system also includes a service feature generation module; wherein the service feature generation module is used to generate a feature description of the task based on at least one of the task's computing requirement data, storage requirement data, network requirement data, and peak resource requirement prediction data, wherein the feature description is a feature portrait of the task's latency, accuracy, reliability, and / or scalability; the service demand generation module is also used to determine the service priority queue of all tasks based on the feature descriptions of each task.

[0024] In one embodiment of the present disclosure, the above-mentioned cloud computing power perception module is also used to obtain the computing power resource data reported by the edge node when the terminal device cancels the task, or when the computing power resource allocation of the edge node is canceled, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node; when the terminal device starts the task, or when the computing power resource allocation of the edge node occurs, obtain the computing power resource data reported by the edge node, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node.

[0025] According to another aspect of the present disclosure, there is provided an electronic device, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the above-mentioned edge computing resource scheduling method by executing the executable instructions.

[0026] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the above-mentioned edge computing resource scheduling method is implemented.

[0027] The embodiments of the present disclosure provide an edge computing resource scheduling method, device, system, electronic device and storage medium, wherein the edge computing resource scheduling method includes: obtaining resource scheduling requests sent by multiple terminal devices for requesting the allocation of edge computing resources for tasks, and node computing data of each edge node, wherein the resource scheduling request contains the required resource data of the task; determining the service priority queue of all tasks according to the required resource data of each task in the multiple tasks; updating the edge computing available resource pool registry according to the node computing data of each edge node; and allocating the edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing available resource pool registry. The present disclosure avoids the problem of delays caused by queuing for edge computing resource allocation for a large number of high-concurrency real-time services, while ensuring that service performance is not reduced, increasing system throughput, and improving the utilization rate of edge computing resources on the edge cluster. At the same time, the edge node for allocating edge computing resources is dynamically selected according to the resource requirements of the task to ensure the operation of the task, thereby improving the service quality of the business.

[0028] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0030] Figure 1 A schematic diagram showing a device-edge-cloud system structure in an embodiment of the present disclosure is shown;

[0031] Figure 2 A flow chart of an edge computing resource adjustment method in an embodiment of the present disclosure is shown;

[0032] Figure 3 A flow chart of another edge computing resource adjustment method in an embodiment of the present disclosure is shown;

[0033] Figure 4 A flow chart of another edge computing resource adjustment method in an embodiment of the present disclosure is shown;

[0034] Figure 5A schematic diagram of an edge computing resource adjustment method in an embodiment of the present disclosure is shown;

[0035] Figure 6 A schematic diagram of an edge computing resource adjustment device in an embodiment of the present disclosure is shown;

[0036] Figure 7 A schematic diagram of an edge computing resource adjustment system in an embodiment of the present disclosure is shown;

[0037] Figure 8 A structural block diagram of an electronic device in an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0038] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the disclosure will be more comprehensive and complete and to fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0039] In addition, the accompanying drawings are only schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0040] As mentioned in the background technology, existing terminal devices are usually strongly bound to edge nodes, the traffic distribution of terminal devices is fixed, and edge computing resources cannot be efficiently utilized. Edge computing resources are heterogeneous and dispersed.

[0041] Based on this, the present disclosure provides an edge computing resource scheduling method, device, system, electronic device and storage medium. The present disclosure allocates edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing available resource pool registry, thereby avoiding the delay of a large number of high-concurrency real-time services due to edge computing resource allocation queuing. While ensuring that service performance is not reduced, the system throughput is increased and the utilization rate of edge computing resources on the edge cluster is improved. At the same time, the edge node for allocating edge computing resources is dynamically selected according to the task's demand for resources to ensure task operation, thereby improving business service quality.

[0042] The present disclosure can model the characteristics of the business from the aspects of real-time, reliability, scalability and accuracy to meet the requirements of different business scenarios for low latency, high efficiency and other characteristics, and generate characteristic descriptions of the business; the present disclosure abstracts the heterogeneous computing resources of the edge cluster, and can deploy different types of services to each edge node based on the policy gradient algorithm of the graph neural network, so as to realize the reasonable scheduling and allocation of computing resources on the edge cluster.

[0043] The present disclosure can be based on an edge computing power scheduling strategy for multilateral cluster collaboration. The edge computing power scheduling strategy is generated through self-learning through operational experience, which unbinds terminal devices from edge nodes and fully improves the utilization efficiency of edge computing power resources.

[0044] Figure 1 A schematic diagram of an exemplary system architecture that can be applied to an edge computing resource scheduling method or an edge computing resource scheduling device according to an embodiment of the present disclosure is shown.

[0045] like Figure 1 As shown, the system architecture may include a cloud center, an edge cluster, and terminal devices, wherein the cloud center, the edge cluster, and the terminal devices are connected via a network.

[0046] Among them, the cloud center includes: service feature generation module, service generation demand module, image manager, node manager, device controller, edge controller, cloud computing power control module, cloud request assignment module, and cloud computing power scheduling module;

[0047] The service feature generation module is used to generate the basic features of the business. Through business feature recognition technology, it analyzes the business's demands for computing, storage, network and other resources. Combined with business requirements such as latency sensitivity and accuracy sensitivity, it realizes feature portrait modeling of different businesses in terms of real-time, reliability, determinism, and scalability.

[0048] The service generation demand module is used to analyze and determine the warrant ratio of the variables corresponding to each feature of the business according to the basic characteristics of the business, calculate the priority queue to which the business belongs through the service demand function, and provide a basis for computing power allocation.

[0049] The cloud computing power control module is used to receive the computing power status of the node (allocated, idle, etc.) reported by the node computing power perception module, and is responsible for synchronizing the information in real time to the "edge computing power available resource pool registry".

[0050] The cloud request assignment module is used to reasonably assign task requests to different computing nodes based on the multi-agent algorithm according to the actual situation of the current load of the edge nodes.

[0051] The cloud computing power scheduling module is used to deploy different types of services to various computing nodes based on the policy gradient algorithm of graph neural networks.

[0052] The edge cluster includes: edge node 1 and edge node 2, and edge node 1 and edge node 2 respectively include a node computing power perception module, a node request assignment module and an edge computing power scheduling module.

[0053] The node computing power perception module is used to monitor and report the changes in the edge computing power resources on the node in real time, and provide data support for the edge computing power allocation. Since there are a large number of heterogeneous edge computing power resources on the edge, the edge computing power resources suitable for different businesses are categorized. At the same time, this module realizes the unified quantification of edge heterogeneous computing power resources such as NPU (Neural-network Processing Unit), CPU (Central Processing Unit), and GPU (Graphics Processing Unit).

[0054] The node request assignment module is used to allocate requests for multiple tasks of the same type. By comprehensively considering the edge node resource situation and service quality requirements, the end-side terminal device traffic is uniformly scheduled to the nodes where different tasks are located to achieve stable service quality.

[0055] The edge computing power scheduling module is used to reasonably schedule tasks to different computing nodes based on the edge computing power available resource registry and service priority queue.

[0056] The terminal devices include: terminal device 1, terminal device 2, terminal device 3 and terminal device 4.

[0057] The network is used as a medium to provide communication links between cloud centers, edge clusters, and terminal devices. It can be a wired network or a wireless network.

[0058] Optionally, the wireless network or wired network described above uses standard communication technology and / or protocol. The network is usually the Internet, but it can also be any network, including but not limited to a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a mobile, wired or wireless network, a dedicated network or any combination of a virtual private network). In some embodiments, technologies and / or formats including Hyper Text Mark-up Language (HTML), Extensible Markup Language (XML), etc. are used to represent data exchanged through the network. In addition, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), Internet Protocol Security (IPsec) can also be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies can also be used to replace or supplement the above data communication technologies.

[0059] The terminal device can be various electronic devices, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, wearable devices, augmented reality devices, virtual reality devices, etc.

[0060] Optionally, the client of the application installed in different terminal devices is the same, or the client of the same type of application based on different operating systems. Based on the different terminal platforms, the specific form of the client of the application can also be different, for example, the application client can be a mobile client, a PC client, etc.

[0061] Those skilled in the art will know that Figure 1 The number of terminal devices and edge nodes in the example is only illustrative, and any number of terminal devices and edge nodes may be provided according to actual needs. This embodiment of the present disclosure does not limit this.

[0062] The present exemplary implementation is described in detail below with reference to the accompanying drawings and embodiments.

[0063] First, an edge computing resource adjustment method is provided in an embodiment of the present disclosure, which can be applied to the above Figure 1 The disclosed edge-cloud system can be executed by any electronic device with computing and processing capabilities.

[0064] Figure 2 A flow chart of an edge computing resource adjustment method in an embodiment of the present disclosure is shown as follows: Figure 2 As shown, the edge computing resource adjustment method provided in the embodiment of the present disclosure includes the following steps:

[0065] S202, obtaining resource scheduling requests sent by multiple terminal devices for requesting allocation of edge computing resources for tasks, and node computing power data of each edge node, wherein the resource scheduling request includes the required resource data of the task, and the node computing power data is data indicating the usage of edge computing resources on the edge node.

[0066] It should be noted that terminal devices can be various electronic devices connected through edge devices, including but not limited to smart phones, tablets, laptops, desktop computers, wearable devices, augmented reality devices, virtual reality devices, etc.; edge nodes can be business platforms built on the edge of the network close to the user, which can be used to provide storage, computing, network and other resources, and sink some key business applications to the edge of the access network to reduce the width and delay losses caused by network transmission and multi-level forwarding.

[0067] In one embodiment of the present disclosure, the demand resource data may include at least one of the computing demand data, storage demand data, network demand data and peak resource demand prediction data of the task.

[0068] In one embodiment of the present disclosure, the node computing power data may include at least one of resource usage data, resource utilization, and service number of each edge node.

[0069] S204: Determine the service priority queues of all tasks according to the resource requirement data of each task among the multiple tasks.

[0070] It should be noted that the service priority queue can include the priorities of each task. Here, the order of allocating edge computing resources to the tasks can be determined according to the priorities of each task, and then the edge computing resources on the corresponding edge nodes can be allocated to the tasks in sequence according to the order in which the edge computing resources are allocated to the tasks.

[0071] In one embodiment of the present disclosure, Figure 3 Another edge computing resource adjustment method flow chart shown in the figure determines the service priority queue of all tasks according to the required resource data of each task among multiple tasks, which may include the following steps:

[0072] S302, generating a feature description of the task based on at least one of the computing requirement data, storage requirement data, network requirement data and peak resource requirement prediction data of the task, wherein the feature description is a feature portrait of the latency, accuracy, reliability and / or scalability of the task.

[0073] S304: Determine the service priority queues of all tasks according to the feature descriptions of each task.

[0074] It should be noted that the feature description may include parameter indicators such as latency, accuracy, reliability and scalability, providing a basis for the generation of service priority queues.

[0075] S206, updating the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes;

[0076] It should be noted that the edge computing power available resource pool registry can be used to record parameters such as resource usage, resource utilization, and number of services of all edge nodes on the edge cluster.

[0077] In one embodiment of the present disclosure, the edge computing power available resource pool registry includes an allocated computing power set, an unallocated computing power set, and a predicted allocated computing power set.

[0078] S208, allocating edge computing resources on the corresponding edge nodes to each task according to the service priority queue and the edge computing available resource pool registry.

[0079] In one embodiment of the present disclosure, according to the service priority queue and the edge computing power available resource pool registry, the edge computing power resources on the corresponding edge node are allocated to each task, which may include: the corresponding edge nodes can be selected for the tasks in turn according to the task order on the service priority queue, and the high-value nodes are first selected by using a periodic step-by-step scheduling method, and then the service orchestration action decision is made for the selected high-value nodes to determine the edge computing power resource values ​​allocated to each task on the corresponding edge node. Here, the high-value node can be judged according to the node computing power data of the edge node. For example, when the edge computing power resources on the edge node are greater than or equal to the preset edge computing power resource threshold, the edge node is determined to be a high-value node; when the edge computing power resources on the edge node are less than the preset edge computing power resource threshold, the edge node is determined to be a low-value node.

[0080] The edge computing resource scheduling method provided by the embodiment of the present disclosure allocates edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing available resource pool registry, thereby avoiding the problem that a large number of high-concurrency real-time services are delayed due to edge computing resource allocation queuing. While ensuring that service performance is not reduced, the system throughput is increased, and the utilization rate of edge computing resources on the edge cluster is improved. At the same time, the edge node for allocating edge computing resources is dynamically selected according to the task's demand for resources to ensure task operation, thereby improving business service quality.

[0081] In one embodiment of the present disclosure, before obtaining the resource scheduling request sent by the terminal device and the node computing power data of each edge node, the method also includes: deploying services of different service types to each computing power node based on a policy gradient algorithm of a graph neural network, wherein the service includes allocatable edge computing power resources.

[0082] In one embodiment of the present disclosure, the method further includes: when the terminal device cancels a task, or when the computing power resource allocation of the edge node is canceled, the computing power resource data reported by the edge node is obtained, and the edge computing power available resource pool registry is updated according to the computing power resource data of the edge node; when the terminal device starts a task, or when computing power resources are allocated at the edge node, the computing power resource data reported by the edge node is obtained, and the edge computing power available resource pool registry is updated according to the computing power resource data of the edge node. The present disclosure can obtain the edge computing power resource usage on the edge node in real time when the terminal device cancels the task, starts the task, the computing power resource allocation of the edge node is canceled, and the computing power resource allocation of the edge node occurs, and the edge computing power available resource pool registry is updated according to the edge computing power resource usage on each edge node, so as to reasonably allocate the edge computing power resources on the corresponding edge node to the task.

[0083] In one embodiment of the present disclosure, after allocating computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing power available resource pool registry, the method also includes: sending a no resources available to schedule message to the terminal device corresponding to the target task, wherein the target task is a task among multiple tasks to which computing resources are not allocated.

[0084] In one embodiment of the present disclosure, the present disclosure also provides another edge computing resource scheduling method, wherein Figure 4 Another edge computing resource adjustment method flow chart is shown, and the method may include the following steps:

[0085] S402, obtaining resource scheduling requests sent by multiple terminal devices for requesting allocation of edge computing resources for tasks, and node computing power data of each edge node, wherein the resource scheduling request includes the required resource data of the task, and the node computing power data is data indicating the usage of edge computing resources on the edge node.

[0086] S404: Generate a feature description of the task based on the required resource data of the task.

[0087] S406: Determine the service priority queues of all tasks according to the feature descriptions of each task.

[0088] S408, updating the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes.

[0089] S410, allocating edge computing resources on corresponding edge nodes to each task according to the service priority queue and the edge computing available resource pool registry.

[0090] In one embodiment of the present disclosure, Figure 5 A schematic diagram of an edge computing resource allocation method is shown. The present invention adopts a multi-tasking mechanism to execute services in parallel on multiple edge nodes to ensure the quality of edge services. The cloud request assignment module and the node request assignment module work together: the cloud request assignment module can reasonably assign resource scheduling requests to different computing nodes based on the multi-agent algorithm according to the actual situation of the current load of the edge node; and balance the requests of the own-end devices to different edge nodes.

[0091] Based on the same inventive concept, an edge computing resource scheduling device is also provided in the embodiments of the present disclosure, such as the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0092] Figure 6 A schematic diagram of an edge computing resource scheduling device in an embodiment of the present disclosure is shown. Figure 6 As shown, the device comprises:

[0093] The request and data acquisition module 610 is used to acquire resource scheduling requests sent by multiple terminal devices for requesting to allocate edge computing resources for tasks, and node computing power data of each edge node, wherein the resource scheduling request includes the required resource data of the task, and the node computing power data is data indicating the usage of edge computing resources on the edge node;

[0094] A service priority queue determination module 620, for determining the service priority queues of all tasks according to the required resource data of each task among the multiple tasks;

[0095] The resource pool registry update module 630 is used to update the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes;

[0096] The edge computing resource allocation module 640 is used to allocate edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing available resource pool registration table.

[0097] In one embodiment of the present disclosure, the above-mentioned device also includes a service deployment module, which is used to deploy services of different service types to each computing power node based on a policy gradient algorithm of a graph neural network, wherein the service includes allocatable edge computing power resources.

[0098] In one embodiment of the present disclosure, the above-mentioned service priority queue determination module 620 is also used to generate a feature description of the task based on at least one of the computing requirement data, storage requirement data, network requirement data and peak resource requirement prediction data of the task, wherein the feature description is a feature portrait of the latency, accuracy, reliability and / or scalability of the task; and determine the service priority queue of all tasks based on the feature description of each task.

[0099] In one embodiment of the present disclosure, the above-mentioned resource pool registry update module 630 is also used to obtain the computing power resource data reported by the edge node when the terminal device cancels the task, or when the computing power resource allocation of the edge node is canceled, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node; when the terminal device starts the task, or when the computing power resource allocation of the edge node occurs, obtain the computing power resource data reported by the edge node, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node.

[0100] In one embodiment of the present disclosure, the above-mentioned device also includes a no-resource-schedulable message sending module, which is used to send a no-resource-schedulable message to a terminal device corresponding to a target task, wherein the target task is a task among multiple tasks to which computing resources are not allocated.

[0101] Based on the same inventive concept, an edge computing resource scheduling system is also provided in the embodiments of the present disclosure, such as the following embodiments. Since the principle of solving the problem in the system embodiment is similar to that in the above method embodiment, the implementation of the system embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0102] Figure 7 A schematic diagram of an edge computing resource scheduling system in an embodiment of the present disclosure is shown. Figure 7 As shown, the system includes:

[0103] The node request assignment module 710 is used to obtain resource scheduling requests sent by multiple terminal devices for requesting to allocate edge computing resources for tasks, wherein the resource scheduling requests include required resource data of the tasks;

[0104] The node computing power sensing module 720 is used to monitor and obtain the node computing power data of each edge node, wherein the node computing power data is data indicating the usage of edge computing power resources on the edge node;

[0105] A service demand generation module 730, for determining a service priority queue of all tasks according to the resource demand data of each task among the multiple tasks;

[0106] The cloud computing power perception module 740 is used to update the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes;

[0107] The edge computing power scheduling module 750 is used to allocate edge computing power resources on the corresponding edge node to each task according to the service priority queue and the edge computing power available resource pool registration table.

[0108] In one embodiment of the present disclosure, the demand resource data includes at least one of computing demand data, storage demand data, network demand data, and peak resource demand prediction data of the task.

[0109] In one embodiment of the present disclosure, the system also includes a service feature generation module; wherein the service feature generation module is used to generate a feature description of the task based on at least one of the computing requirement data, storage requirement data, network requirement data and peak resource requirement prediction data of the task, wherein the feature description is a feature portrait of the latency, accuracy, reliability and / or scalability of the task; the service demand generation module 730 is also used to determine the service priority queue of all tasks based on the feature descriptions of each task.

[0110] In one embodiment of the present disclosure, the above-mentioned cloud computing power perception module 740 is also used to obtain the computing power resource data reported by the edge node when the terminal device cancels the task, or when the computing power resource allocation of the edge node is canceled, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node; when the terminal device starts the task, or when the computing power resource allocation of the edge node occurs, obtain the computing power resource data reported by the edge node, and update the edge computing power available resource pool registry based on the computing power resource data of the edge node.

[0111] Those skilled in the art will appreciate that various aspects of the present disclosure may be implemented as systems, methods or program products. Therefore, various aspects of the present disclosure may be specifically implemented in the following forms, namely: complete hardware implementation, complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to herein as "circuits", "modules" or "systems".

[0112] Refer to the following Figure 8 The electronic device 800 according to this embodiment of the present disclosure is described. Figure 8 The electronic device 800 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0113] like Figure 8 As shown, the electronic device 800 is in the form of a general computing device. The components of the electronic device 800 may include but are not limited to: at least one processing unit 810, at least one storage unit 820, and a bus 830 connecting different system components (including the storage unit 820 and the processing unit 810).

[0114] Among them, the storage unit stores program code, and the program code can be executed by the processing unit 810, so that the processing unit 810 executes the steps described in the above "Exemplary Method" section of this specification according to various exemplary embodiments of the present disclosure. For example, the processing unit 810 can execute the following steps of the above method embodiment: obtain a resource scheduling request sent by multiple terminal devices for requesting the allocation of edge computing resources for tasks, and the node computing power data of each edge node, wherein the resource scheduling request contains the required resource data of the task, and the node computing power data is data representing the usage of edge computing resources on the edge node; determine the service priority queue of all tasks according to the required resource data of each task in the multiple tasks; update the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the usage of edge computing resources of all edge nodes; allocate edge computing resources on the corresponding edge node to each task according to the service priority queue and the edge computing power available resource pool registry.

[0115] The storage unit 820 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 8201 and / or a cache memory unit 8202 , and may further include a read-only memory unit (ROM) 8203 .

[0116] The storage unit 820 may also include a program / utility 8204 having a set (at least one) of program modules 8205, such program modules 8205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0117] Bus 830 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0118] The electronic device 800 may also communicate with one or more external devices 840 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 800, and / or communicate with any device that enables the electronic device 800 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed via an input / output (I / O) interface 850. Furthermore, the electronic device 800 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 860. As shown, the network adapter 860 communicates with other modules of the electronic device 800 via a bus 830. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 800, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.

[0119] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0120] In an exemplary embodiment of the present disclosure, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. A program product capable of implementing the above method of the present disclosure is stored thereon. In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product, which includes a program code, and when the program product is run on a terminal device, the program code is used to cause the terminal device to execute the steps according to various exemplary implementations of the present disclosure described in the above “Exemplary Method” section of this specification.

[0121] More specific examples of computer-readable storage media in the present disclosure may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0122] In the present disclosure, a computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, wherein a readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A readable signal medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0123] Alternatively, the program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0124] In a specific implementation, the program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., using an Internet service provider to connect through the Internet).

[0125] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0126] In addition, although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.

[0127] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0128] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the appended claims.

Claims

1. A method for scheduling edge computing resources, characterized in that: include: Obtain resource scheduling requests sent by multiple terminal devices for requesting allocation of edge computing resources for tasks, and node computing power data of each edge node, wherein the resource scheduling request includes required resource data of the task, and the node computing power data is data indicating the usage of edge computing resources on the edge node; Determine the service priority queue of all tasks based on the resource demand data of each task among multiple tasks; According to the node computing power data of each edge node, an edge computing power available resource pool registry is updated, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes; Allocate edge computing resources on corresponding edge nodes to each task according to the service priority queue and the edge computing available resource pool registry; The resource demand data includes at least one of the task's computing demand data, storage demand data, network demand data, and peak resource demand prediction data; Based on the resource demand data of each task among multiple tasks, determine the service priority queue of all tasks, including: Generate a feature description of the task according to at least one of the computing requirement data, storage requirement data, network requirement data, and peak resource requirement forecast data of the task, wherein the feature description is a feature portrait of latency, accuracy, reliability, and / or scalability of the task; Determine the service priority queue for all tasks based on the characteristic description of each task; The method further comprises: According to the order of tasks on the service priority queue, the corresponding edge nodes are selected for the tasks in turn. High-value nodes are selected preferentially using a periodic step-by-step scheduling method. Then, service orchestration action decisions are made for the selected high-value nodes to determine the edge computing power resource values ​​allocated to each task on the corresponding edge nodes. When the edge computing power resources on any edge node are greater than or equal to the preset edge computing power resource threshold, the any edge node is determined to be a high-value node.

2. The edge computing resource scheduling method according to claim 1, characterized in that: Before obtaining the resource scheduling request sent by the terminal device and the node computing power data of each edge node, the method further includes: Based on the policy gradient algorithm of graph neural network, services of different types are deployed to various computing nodes, where the services include allocatable edge computing resources.

3. The edge computing resource scheduling method according to claim 1, characterized in that: The node computing power data includes at least one of resource usage data, resource utilization rate, and service number of each edge node.

4. The edge computing resource scheduling method according to claim 1, characterized in that: The edge computing power available resource pool registry includes an allocated computing power set, an unallocated computing power set, and a predicted allocated computing power set.

5. The edge computing resource scheduling method according to claim 1, characterized in that: The method further comprises: When the terminal device cancels the task, or when the computing resource allocation of the edge node is canceled, the computing resource data reported by the edge node is obtained, and the edge computing resource pool registry is updated according to the computing resource data of the edge node; When the terminal device starts a task, or when computing power resources are allocated at the edge node, the computing power resource data reported by the edge node is obtained, and the edge computing power available resource pool registry is updated according to the computing power resource data of the edge node.

6. The edge computing resource scheduling method according to claim 1, characterized in that: After allocating computing resources on corresponding edge nodes to each task according to the service priority queue and the edge computing power available resource pool registry, the method further includes: A message indicating that no resources can be scheduled is sent to a terminal device corresponding to a target task, wherein the target task is a task among multiple tasks to which computing resources are not allocated.

7. An edge computing resource scheduling device, characterized in that: include: A request and data acquisition module, used to acquire resource scheduling requests sent by multiple terminal devices for requesting the allocation of edge computing resources for tasks, and node computing power data of each edge node, wherein the resource scheduling request includes the required resource data of the task, and the node computing power data is data indicating the usage of edge computing resources on the edge node; the required resource data includes at least one of the computing demand data, storage demand data, network demand data and peak resource demand prediction data of the task; A service priority queue determination module, used to determine the service priority queues of all tasks according to the required resource data of each task among the multiple tasks; A resource pool registry update module, used to update an edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes; An edge computing resource allocation module, used to allocate edge computing resources on corresponding edge nodes to each task according to the service priority queue and the edge computing available resource pool registry; The service priority queue determination module is further used to generate a feature description of the task based on at least one of the computing demand data, storage demand data, network demand data and peak resource demand prediction data of the task, wherein the feature description is a feature portrait of the task's latency, accuracy, reliability and / or scalability; and determine the service priority queues of all tasks based on the feature descriptions of each task; The edge computing resource allocation module is used to select corresponding edge nodes for tasks in turn according to the task order on the service priority queue, use a periodic step-by-step scheduling method to give priority to high-value nodes, and then make service orchestration action decisions for the selected high-value nodes to determine the edge computing resource values ​​allocated to each task on the corresponding edge node; wherein, when the edge computing resources on any edge node are greater than or equal to a preset edge computing resource threshold, the any edge node is determined to be a high-value node.

8. An edge computing resource scheduling system, characterized in that: include: A node request assignment module is used to obtain resource scheduling requests sent by multiple terminal devices for requesting to allocate edge computing resources for tasks, wherein the resource scheduling request includes the required resource data of the task; the required resource data includes at least one of the computing requirement data, storage requirement data, network requirement data and peak resource requirement prediction data of the task; A node computing power perception module is used to monitor and obtain node computing power data of each edge node, wherein the node computing power data is data indicating the usage of edge computing power resources on the edge node; A service demand generation module is used to determine the service priority queue of all tasks according to the demand resource data of each task among multiple tasks; The cloud computing power perception module is used to update the edge computing power available resource pool registry according to the node computing power data of each edge node, wherein the edge computing power available resource pool registry is used to record the edge computing power resource usage of all edge nodes; An edge computing power scheduling module is used to allocate edge computing power resources on corresponding edge nodes to each task according to the service priority queue and the edge computing power available resource pool registry; The system also includes a service feature generation module; The service feature generation module is used to generate a feature description of the task based on at least one of the computing requirement data, storage requirement data, network requirement data and peak resource requirement prediction data of the task, wherein the feature description is a feature portrait of the latency, accuracy, reliability and / or scalability of the task; The service demand generation module is further used to determine the service priority queue of all tasks according to the characteristic description of each task; The edge computing power scheduling module is used to select corresponding edge nodes for tasks in turn according to the task order on the service priority queue, use a periodic step-by-step scheduling method to give priority to high-value nodes, and then make service orchestration action decisions for the selected high-value nodes to determine the edge computing power resource values ​​allocated to each task on the corresponding edge node; wherein, when the edge computing power resources on any edge node are greater than or equal to a preset edge computing power resource threshold, the any edge node is determined to be a high-value node.

9. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the edge computing resource scheduling method described in any one of claims 1 to 6 by executing the executable instructions.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the edge computing resource scheduling method described in any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Edge computing power resource scheduling method and system based on terminal triggering

    CN112134802A

  • Multi-entity resource, security, and service management in edge computing deployments

    CN114026834A