Task offloading method and apparatus, electronic device, and storage medium

By optimizing task offloading through a cloud-edge-device collaborative architecture and selecting appropriate server nodes to process tasks, the energy consumption and load balancing issues in existing technologies are resolved, achieving efficient resource utilization and meeting business needs.

CN115835301BActive Publication Date: 2025-12-09CHINA UNITED NETWORK COMM GRP CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211434800.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-16
Publication Date
2025-12-09
Estimated Expiration
2042-11-16

AI Technical Summary

Technical Problem

Existing technologies fail to comprehensively consider system energy consumption and load balancing during task unloading, resulting in resource waste.

Method used

Through a cloud-edge-device collaborative architecture, the system receives task offloading requests from terminal devices, searches for available edge service nodes, and determines whether they meet preset requirements. If so, it selects the target edge service node to execute the task; otherwise, it searches the edge service center or cloud service center and determines the offloading strategy based on a predefined algorithm. This ensures that each task resource is processed by only one type of server node, reducing system complexity and energy consumption.

Benefits of technology

It achieves load balancing and energy consumption optimization during task unloading, saving resources and meeting business latency requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115835301B_ABST
    Figure CN115835301B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of mobile communication, and provides a task offloading method and device, electronic equipment and storage medium, which are applied to a cloud-edge-end collaborative architecture. The method comprises the following steps: receiving a task offloading request sent by a terminal device, finding at least one available edge service node based on the request; judging whether the at least one edge service node meets preset requirements after executing a task to be offloaded; if yes, determining a target edge service node to execute the task to be offloaded based on a predefined algorithm to obtain a first execution result; if no, finding a corresponding edge service center or cloud service center based on the task offloading request, judging whether the edge service center or the cloud service center meets the preset requirements after executing the task to be offloaded to obtain a judgment result, and selecting a corresponding offloading strategy to offload the task based on the judgment result. In this way, each task can only select a single node to implement the processing of the task, the load balancing of the system is reduced, the consumption of step-by-step access to computing resources from the bottom to the top is reduced, and resources are saved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of mobile communication, and particularly relates to a task offloading method and device, an electronic device and a storage medium. BACKGROUND

[0002] With the rapid development of the 5th Generation Mobile Communication Technology (5G), the deployment demand of the cloud, edge and end collaborative architecture is increasing. Due to the different processing capabilities and distribution locations of the Multi-access Edge Computing (MEC) service nodes and the different probabilities of network task arrival, a new network structure such as the end-edge-cloud collaborative architecture is needed to solve the massive service offloading demand. The end-edge-cloud collaborative architecture includes three parts: cloud-edge collaboration, edge-end collaboration and cloud-edge-end collaboration.

[0003] In the prior art, the task offloading strategy can be formulated based on the current situation of the edge server and the cloud data center computing resources and storage resources, and further, the task offloading is performed based on the formulated task offloading strategy.

[0004] However, the above method does not comprehensively consider the system energy consumption, load balancing and collaborative use of multiple resources, resulting in excessive system energy consumption and load balancing, causing resource waste. SUMMARY

[0005] The present application provides a task offloading method and device, an electronic device and a storage medium, which are used to solve the problem of excessive system energy consumption and load balancing and resource waste caused by formulating a task offloading strategy based on the current situation of the edge server and the cloud data center computing resources and storage resources.

[0006] In a first aspect, the present application provides a task offloading method applied to a cloud-edge-end collaborative architecture, wherein the cloud-edge-end collaborative architecture includes an edge service node, an edge service center and a cloud service center; and the method comprises the following steps:

[0007] receiving a task offloading request sent by a terminal device, and searching for at least one available edge service node based on the task offloading request; the task offloading request includes a task to be offloaded;

[0008] determining whether the at least one edge service node meets a preset requirement after executing the task to be offloaded;

[0009] If yes, a target edge service node in the at least one edge service node is determined to perform the task to be offloaded based on a predefined algorithm, a first execution result is obtained, and the first execution result is fed back to the terminal device;

[0010] If no, a corresponding edge service center or a cloud service center is found based on the task offloading request, a judgment result is obtained by judging whether the edge service center or the cloud service center meets a preset requirement after performing the task to be offloaded, and a corresponding offloading strategy is selected for task offloading based on the judgment result.

[0011] Optionally, the task offloading request sent by the terminal device is received, including:

[0012] The utilization rate of a central processing unit (CPU) corresponding to the execution task of the terminal device is obtained, and whether the terminal device meets a business requirement after processing the execution task is judged based on the utilization rate of the CPU;

[0013] If yes, the energy consumption of the terminal device for processing the execution task is received, which is calculated based on a specific algorithm after the terminal device selects a corresponding processing decision to process the execution task;

[0014] If no, the task offloading request sent by the terminal device is received.

[0015] Optionally, judging whether the at least one edge service node meets a preset requirement after performing the task to be offloaded includes:

[0016] For each edge service node, an energy consumption function of offloading to the edge service node is constructed based on variables, wherein the variables include: the task to be offloaded, an average transmission rate of offloading to the edge service node, a required computing resource of the task to be offloaded, and a computing resource corresponding to the edge service node;

[0017] According to a constraint condition, a minimum value of the energy consumption of offloading to the edge service node is solved, wherein the constraint condition is used to constrain at least one of the following: a time delay corresponding to offloading to the edge service node, and a load imbalance rate corresponding to offloading to the edge service node;

[0018] According to the result obtained by solving, whether the edge service node meets the preset requirement after performing the task to be offloaded is judged.

[0019] Optionally, the energy consumption function of offloading to the edge service node is constructed based on variables, including:

[0020] A transmission time of transmitting a task between the terminal device and the edge service node is constructed according to the average transmission rate of offloading to the edge service node and the task to be offloaded;

[0021] constructing a time delay of offloading to the edge computing node according to the transmission time, a required computing resource of the task to be offloaded, and a corresponding computing resource of the edge service node;

[0022] obtaining a running power of the edge service node processing the task, a waiting power of the terminal device waiting for the edge service node processing the task, and a transmission power of offloading to the edge service node;

[0023] constructing an energy consumption function of offloading to the edge service node by using the transmission time, the time delay, the running power, the waiting power, and the transmission power.

[0024] Optionally, according to a constraint condition, a minimum value of the energy consumption of offloading to the edge service node is solved, including:

[0025] obtaining occupied resources of the edge service node corresponding to the task to be offloaded, a total amount of resources corresponding to the cloud-edge-end collaborative architecture, and a total amount of servers; the total amount of servers is a sum of the number of servers corresponding to the edge service node, the edge service center, and the cloud service center;

[0026] calculating a first resource average utilization rate of the edge service node and a second resource average utilization rate of the cloud-edge-end collaborative architecture based on the occupied resources of the edge service node, the total amount of resources, and the total amount of servers;

[0027] constructing a load imbalance rate of offloading to the edge service node by using the first resource average utilization rate and the second resource average utilization rate;

[0028] solving a minimum value of the energy consumption of offloading to the edge service node according to the time delay and the load imbalance rate; wherein the time delay is less than a maximum tolerable time delay corresponding to the offloaded task; and the load imbalance rate is less than a preset threshold.

[0029] Optionally, a target edge service node in the at least one edge service node is determined to execute the task to be offloaded based on a predefined algorithm, including:

[0030] obtaining position information corresponding to each edge service node and a particle velocity; the particle velocity is a propagation velocity corresponding to the task offloading; different edge service nodes correspond to different propagation velocities;

[0031] determining the target edge service node based on the position information, the particle velocity, and a discrete particle swarm algorithm, and executing the task to be offloaded by using the target edge service node.

[0032] Optionally, it is judged whether the edge service center or the cloud service center meets the preset requirement after executing the task to be offloaded, and a judgment result is obtained, including:

[0033] It is judged whether the edge service center meets the preset requirement after executing the task to be offloaded.

[0034] If yes, the edge service center is used to execute the task to be offloaded, a second execution result is obtained, and the second execution result is fed back to the terminal device.

[0035] If no, the cloud service center is used to execute the task to be offloaded, a third execution result is obtained, and the third execution result is fed back to the terminal device.

[0036] In a second aspect, the application further provides a task offloading device applied to a cloud-edge-end collaborative architecture, the cloud-edge-end collaborative architecture including an edge service node, an edge service center and a cloud service center; the device includes:

[0037] A receiving module is configured to receive a task offloading request sent by a terminal device, and find at least one available edge service node based on the task offloading request; the task offloading request includes a task to be offloaded.

[0038] A judging module is configured to judge whether the at least one edge service node meets a preset requirement after executing the task to be offloaded.

[0039] An executing module is configured to, when the at least one edge service node meets the preset requirement after executing the task to be offloaded, determine a target edge service node in the at least one edge service node to execute the task to be offloaded based on a predefined algorithm, obtain a first execution result, and feed back the first execution result to the terminal device.

[0040] A finding module is configured to, when the at least one edge service node does not meet the preset requirement after executing the task to be offloaded, find a corresponding edge service center or cloud service center based on the task offloading request, judge whether the edge service center or the cloud service center meets the preset requirement after executing the task to be offloaded, obtain a judgment result, and select a corresponding offloading strategy based on the judgment result to offload the task.

[0041] In a third aspect, the application further provides an electronic device including a processor and a memory connected with the processor in communication;

[0042] The memory stores computer execution instructions.

[0043] The processor executes the computer execution instructions stored in the memory to implement the method according to any one of the first aspect.

[0044] In a fourth aspect, the present application also provides a computer readable storage medium, which stores computer execution instructions, and the computer execution instructions are executed by a processor to implement the method according to any one of the first aspect.

[0045] To sum up, the present application provides a task offloading method and device, electronic equipment and storage medium, which are applied to a cloud-edge-end collaborative architecture, and the cloud-edge-end collaborative architecture includes an edge service node, an edge service center and a cloud service center. Specifically, a task offloading request sent by a terminal device can be received, and at least one available edge service node can be found based on the task offloading request. Further, it is determined whether the at least one edge service node meets a preset requirement after executing a task to be offloaded. If yes, a target edge service node in the at least one edge service node is determined to execute the task to be offloaded based on a predefined algorithm, a first execution result is obtained, and the first execution result is fed back to the terminal device. If no, a corresponding edge service center or cloud service center is found based on the task offloading request, it is determined whether the edge service center or cloud service center meets the preset requirement after executing the task to be offloaded, a determination result is obtained, and a corresponding offloading strategy is selected based on the determination result to offload the task, wherein the task offloading request includes the task to be offloaded. In this way, when the task is offloaded, each task resource can only select one kind of server node in the cloud-edge-end collaborative architecture to implement the processing of the task, the complexity of the model is reduced, the collaborative service is provided for a large number of task offloading, the load balancing of the system can be reduced, the communication signaling consumption of the bottom-up step-by-step access to the computing resource is reduced, and resources are saved. BRIEF DESCRIPTION OF DRAWINGS

[0046] The accompanying drawings, which are incorporated herein and constitute part of the specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0047] Figure 1 An application scenario diagram is provided for the embodiments of the present application.

[0048] Figure 2 A flowchart of a task offloading method is provided for the embodiments of the present application.

[0049] Figure 3 A flowchart of a complete task offloading method is provided for the embodiments of the present application.

[0050] Figure 4 A structure diagram of a task offloading device is provided for the embodiments of the present application.

[0051] Figure 5 A structure diagram of an electronic device is provided for the embodiments of the present application.

[0052] The specific embodiments of the application will now be described in detail with reference to the following figures. The following description, with reference to the figures, is not meant to limit the scope of the application in any way and represents only one example of the application. DETAILED DESCRIPTION

[0053] The exemplary embodiments will be described in detail with reference to the drawings. Unless otherwise noted, the same or similar components in different drawings have the same or similar reference numbers. The following exemplary embodiments are described in order to provide a person skilled in the art with a thorough understanding of the application. However, the exemplary embodiments are not intended to limit the scope of the application as recited in the appended claims.

[0054] In order to clearly describe the technical solutions of the embodiments of the application, in the embodiments of the application, the terms "first", "second", and the like are used to distinguish the same or similar items or elements with substantially the same function and role. For example, the first device and the second device are merely used to distinguish different devices, and do not limit the order. Those skilled in the art can understand that the terms "first", "second", and the like do not limit the number and execution order, and the terms "first", "second", and the like do not necessarily mean different.

[0055] It should be noted that in the present application, the words "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design described as "exemplary" or "for example" in the present application should not be construed as being more preferred or advantageous than other embodiments or designs. In fact, the use of the words "exemplary" or "for example" is intended to present concepts in a particular manner.

[0056] In the present application, "at least one" means one or more, and "multiple" means two or more. The relationship between the associated objects is described as "and / or", which means that there can be three relationships, for example, A and / or B, which means that A exists alone, A and B exist together, B exists alone, and A and B can be singular or plural. The character " / " generally represents an "or" relationship between the associated objects. "At least one of the following" or similar expressions means any combination of these items, including single or multiple combinations of any combination. For example, at least one of a, b, or c can mean a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, and c can be singular or plural.

[0057] With the development of mobile communication technology, the mobile terminal can effectively reduce the network delay by offloading tasks to the edge server or cloud data center for calculation, and through the cooperation and complementation of edge server and cloud, the network energy efficiency and load balancing of network nodes can be improved.

[0058] In a possible implementation manner, a task offloading strategy can be formulated based on the current situation of edge server and cloud data center computing resources and storage resources, and further, the task offloading is performed based on the formulated task offloading strategy.

[0059] However, the above method does not comprehensively consider the energy consumption, load balancing and collaborative use of multiple resources of the system, which causes excessive energy consumption and load balancing of the system, resulting in resource waste.

[0060] To solve the above problems, the present application provides a task offloading method applied to a multi-resource computing offloading architecture of end-edge-cloud collaboration. In this architecture, the collaboration problem among edge nodes, edge service centers and cloud service centers is considered. In multi-resource offloading, the edge server node, edge service center and cloud service center are regarded as non-difference server nodes. When performing task offloading, each task resource can only select one server node to implement task processing. The task offloading of edge device is realized by fully considering the load balancing of network server nodes and the goal of minimizing the overall energy consumption of the system, which can reduce the load balancing and energy consumption of the system, save resources and meet the user's business delay demand.

[0061] The embodiments of the present application will be described below with reference to the accompanying drawings. Figure 1 A kind of application scene schematic diagram provided for the embodiments of the present application, a kind of task offloading method provided by the present application can be applied in the application scene as shown in Figure 1 The application scene includes: first terminal device 101, second terminal device 102, third terminal device 103, fourth terminal device 104, fifth terminal device 105, first edge service node 106, second edge service node 107, third edge service node 108, edge service center 109 and cloud service center 110.

[0062] Specifically, the first terminal device 101 and the second terminal device 102 are located in the area covered by the first base station and the edge server, the second terminal device 102, the third terminal device 103 and the fourth terminal device 104 are located in the area covered by the second base station and the edge server, if the first terminal device 101 and the second terminal device 102 simultaneously initiate the task offloading request, the first terminal device 101 close to the base station can access the first edge service node 106 for data uploading, the second terminal device 102 located in the middle area (the second terminal device 102 is located at the intersection of the two base stations) can access the second edge service node 107 far away for data uploading, further, when the third terminal device 103 initiates the offloading task request, if the computing capability of the second edge service node 107 does not meet the business delay requirement, in order to reduce the waiting delay, the task can be offloaded to the edge service center 109 through the base station, further, if the fourth terminal device 104 initiates the offloading task request, since the edge service center 109 does not meet the business delay requirement, in order to reduce the waiting delay, the task can be offloaded to the cloud service center 110 through the base station, and when the fifth terminal device 105 initiates the offloading task request, the fifth terminal device 105 can directly access the third edge service node 108 for data uploading.

[0063] Correspondingly, after the first edge service node 106, the second edge service node 107, the third edge service node 108, the edge service center 109 and the cloud service center 110 process the task, the processing result can be issued to the corresponding terminal device.

[0064] It should be noted that, Figure 1 The application scenario is based on the multi-resource computing offloading architecture of end-edge-cloud, which gradually assigns the offloading task from low to high, for realizing the effective utilization of resources.

[0065] It can be understood that in an architecture with multiple resource selection, the terminal device can realize the processing of the task through at most twice forwarding, and the number of terminal devices and edge service nodes is not limited in the embodiment of the application.

[0066] The technical solutions of the application will be described in detail in the specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes can not be described in some embodiments. The embodiments of the application will be described in conjunction with the drawings.

[0067] Figure 2A flowchart of a task offloading method provided in an embodiment of the present application is shown in FIG. 1. The task offloading method is applied to a cloud-edge-end collaborative architecture, which includes an edge service node (MEC node), an edge service center (MCC), and a cloud service center (CCC). The edge service node, the edge service center, and the cloud service center are collectively referred to as a server node in the system, as shown in FIG. 1. The task offloading method includes the following steps: Figure 2

[0068] S201. Receiving a task offloading request sent by a terminal device, and finding at least one available edge service node based on the task offloading request. The task offloading request includes a task to be offloaded.

[0069] In an embodiment of the present application, one edge server node can be deployed at the base station side, which is used to send a task to the edge server node for processing based on an offloading processing decision when the processing capability of the terminal device cannot meet the business requirement.

[0070] In this step, the cloud-edge-end collaborative architecture can receive a task offloading request sent by a terminal device, and find an edge server node within a preset range based on the task offloading request, i.e., at least one available edge service node. The at least one edge service node is located at different base station sides, but the terminal device is located within the coverage area of the base station corresponding to the at least one edge service node, and can perform data transmission. The preset range is the base station coverage area range set according to different business scenarios, and the area corresponding to the preset range is not limited in the embodiment of the present application.

[0071] S202. Determining whether the at least one edge service node meets a preset requirement after executing the task to be offloaded.

[0072] In an embodiment of the present application, the preset requirement can refer to a requirement set in advance for determining whether the edge service node meets the requirements of minimum energy consumption and load balancing after executing the corresponding task, so that the total energy consumption of the system is minimized and resources are saved when the task offloading is performed by using the edge device.

[0073] In this step, for each edge service node in the preset range, it is determined whether the edge service node meets the requirements of minimum energy consumption and load balancing after being assigned the task. If there are multiple edge service nodes that meet the preset requirement, the edge service node closest to the terminal device is selected for task offloading.

[0074] It should be noted that only a single edge service node can be selected to implement the processing of the task when each task resource is offloaded, which is used to reduce the complexity of the model. ​

[0075] S203, if yes, determining a target edge service node in the at least one edge service node to perform the task to be offloaded based on a predefined algorithm, obtaining a first execution result, and feeding back the first execution result to the terminal device.

[0076] In the embodiments of the present application, the predefined algorithm is an algorithm defined in advance for quickly searching a suitable edge service node to undertake a task from the at least one edge service node, such as a discrete particle swarm algorithm, a depth-first search algorithm, a breadth-first search algorithm, or a Dijkstra algorithm, etc. The embodiments of the present application do not make specific limitations on the predefined algorithm, and the predefined algorithm is used to find an optimal server node to offload a task. The embodiments of the present application do not make specific limitations on the predefined algorithm.

[0077] In this step, based on the background of software defined network (SDN), a discrete particle swarm algorithm can be used to select a target edge service node in a set of edge service nodes that meet a preset condition, and the selected target edge service node is used to perform a task to be offloaded. Further, a first execution result corresponding to the execution of the task is obtained, and the first execution result is fed back to the terminal device.

[0078] Optionally, a predefined algorithm can also be used to select a target server node from the entire system server node set A = {1, 2, …, m}. The target server node can be an edge service node or an edge service center, or a cloud service center. The number of target server nodes can only be one.

[0079] It should be noted that when selecting a target server node, if an inquiry request is sent every time, a large amount of communication signaling will be wasted. Therefore, the predefined algorithm can be used to find an optimal server node to reduce the consumption of communication signaling for accessing computing resources from bottom to top.

[0080] S204, if no, finding a corresponding edge service center or cloud service center based on the task offloading request, judging whether the edge service center or the cloud service center meets a preset requirement after performing the task to be offloaded, obtaining a judgment result, and selecting a corresponding offloading strategy based on the judgment result to offload the task.

[0081] In the embodiments of the present application, the offloading strategy can refer to a strategy for receiving a task for processing to meet different scene requirements, such as a strategy of multiple resource cooperation or an offloading strategy determined based on the current status of a server node. The embodiments of the present application do not make specific limitations on the offloading strategy, which can be set according to a business scene.

[0082] In this step, when the edge computing node is insufficient in computing capability, the edge service center can receive the task to calculate; when the edge service center is insufficient in computing, the cloud service center can receive the task to calculate. This multi-resource collaborative strategy can be applied to the scenario of massive user-intensive business.

[0083] Therefore, the embodiment of the present application provides a task offloading method, which can receive a task offloading request sent by a terminal device, and find at least one available edge service node based on the task offloading request. Further, it is judged whether the at least one edge service node meets a preset requirement after executing a task to be offloaded. If yes, a target edge service node in the at least one edge service node is determined to execute the task to be offloaded based on a predefined algorithm, a first execution result is obtained, and the first execution result is fed back to the terminal device. If no, a corresponding edge service center or cloud service center is found based on the task offloading request, it is judged whether the edge service center or cloud service center meets the preset requirement after executing the task to be offloaded, a judgment result is obtained, and a corresponding offloading strategy is selected based on the judgment result to offload the task, wherein the task offloading request includes the task to be offloaded. In this way, when the task is offloaded, each task resource can only select one kind of server node in the cloud-edge-end collaborative architecture to implement the processing of the task, the complexity of the model is reduced, the collaborative service is provided for massive task offloading, the load balancing of the system can be reduced, and the consumption of communication signaling of the bottom-to-top step-by-step access to computing resources is saved, thereby saving resources.

[0084] Optionally, the task offloading request sent by the terminal device includes:

[0085] The utilization rate of a central processing unit (CPU) corresponding to the terminal device for executing a task is obtained, and it is judged whether the terminal device meets a business requirement after processing the execution task based on the utilization rate of the CPU.

[0086] If yes, the energy consumption of the terminal device for processing the execution task sent by the terminal device is received; the energy consumption is calculated based on a specific algorithm after the terminal device selects a corresponding processing decision to process the execution task.

[0087] If no, the task offloading request sent by the terminal device is received.

[0088] In the embodiment of the present application, the specific algorithm refers to an algorithm for calculating the energy consumption of the terminal device for processing the task. Specifically, the power used by the terminal device for executing the task is constructed according to the task executed by the terminal device, the energy consumption of the terminal device is calculated by using the specific algorithm based on the power used and the time used by the terminal device for processing the execution task.

[0089] In this step, whether the processing capability corresponding to the terminal device can process the execution task can be determined based on the utilization rate of the central processing unit (CPU) of the terminal device, that is, whether the processing capability corresponding to the terminal device meets the service demand, and if so, the energy consumption of the terminal device corresponding to the task i (a certain execution task) can be calculated by the following formula:

[0090]

[0091] wherein, P i is the used power, is the used time of the terminal device processing the execution task, which is calculated by C i represents the computing resource required for executing the task, and f i represents the computing capability of the terminal device, that is, the utilization rate of the CPU.

[0092] It should be noted that the task i can only be selected to be offloaded by one server node in the system or to be locally offloaded, and therefore, a ij is used to represent the task execution mode, and a ij represents the following:

[0093]

[0094] Further, the constraint condition is used to constrain that the task i can only be selected to be offloaded by one server node in the system or to be locally offloaded.

[0095] wherein, the set V={1, 2, …, v} represents all the terminal devices in the region, and the set A of server nodes in the system is A={1, 2, …, m}, and m represents the number of available server nodes in the system.

[0096] Therefore, the embodiments of the present application consider both local computing and offloading computing, set that the task can only be selected to be offloaded by one server node in the system or to be locally offloaded, and if the local offloading condition is met, the local processing decision can be directly made, thereby improving the flexibility of task processing.

[0097] Optionally, it is judged whether the at least one edge service node meets the preset requirement after executing the task to be offloaded, including:

[0098] For each edge service node, an energy consumption function of offloading to the edge service node is constructed based on variables, wherein the variables include: the task to be offloaded, the average transmission rate of offloading to the edge service node, the computing resource required for the task to be offloaded, and the computing resource corresponding to the edge service node.

[0099] According to the constraint condition, a minimum value of energy consumption unloaded to the edge service node is solved; wherein the constraint condition is used to constrain at least one of the following: a time delay corresponding to unloading to the edge service node, a load imbalance rate corresponding to unloading to the edge service node;

[0100] According to the result solved, it is judged whether the edge service node meets a preset requirement after executing the task to be unloaded.

[0101] In the embodiment of the application, the average transmission rate unloaded to the edge service node can be calculated by the following formula:

[0102]

[0103] Wherein, B represents the bandwidth of the upload link channel, N0 represents the Gaussian white noise power; G represents the transmission power of the terminal device, H i represents the channel gain parameter corresponding to unloading task i, the channel gain parameter is related to the channel fading factor h of the upload link and the average distance from the terminal device to the start and end of the transmission task , that is, it can be calculated by , and σ represents the size of the Rayleigh distribution.

[0104] It should be noted that the energy consumption function corresponding to unloading task to MCC and unloading task to CCC is similar to the energy consumption function corresponding to unloading task to the edge computing node, therefore, the MEC node, MCC and CCC are regarded as the server nodes of the whole system, and then the energy consumption function unloaded to the server nodes can be constructed based on the variables.

[0105] Optionally, for each server node, the energy consumption function unloaded to the server node is constructed based on the variables; wherein the variables include: the task to be unloaded, the average transmission rate unloaded to the server node, the computing resource required by the task to be unloaded, and the computing resource corresponding to the server node.

[0106] According to the constraint condition, a minimum value of energy consumption unloaded to the server node is solved; wherein the constraint condition is used to constrain at least one of the following: a time delay corresponding to unloading to the server node, a load imbalance rate corresponding to unloading to the server node;

[0107] According to the result solved, it is judged whether the server node meets a preset requirement after executing the task to be unloaded.

[0108] Therefore, the embodiment of the application can comprehensively consider various factors such as business time delay requirement, computing capability, network load balancing and network energy consumption, and take minimizing system energy consumption as the target, and involves a scheme of multiple resource computing unloading, so as to effectively execute task unloading and meet business requirements.

[0109] Optionally, the energy consumption function unloaded to the edge service node is constructed based on variables, including:

[0110] According to the average transmission rate unloaded to the edge service node and the task to be unloaded, a transmission time of transmitting the task between the terminal device and the edge service node is constructed;

[0111] According to the transmission time, the computing resource required by the task to be unloaded and the computing resource corresponding to the edge service node, a time delay unloaded to the edge computing node is constructed;

[0112] The running power of the edge service node processing the task, the waiting power of the terminal device waiting for the edge service node processing the task, and the transmission power unloaded to the edge service node are obtained;

[0113] The transmission time, the time delay, the running power, the waiting power and the transmission power are used to construct the energy consumption function unloaded to the edge service node.

[0114] In the embodiment of the application, the computing resource corresponding to each edge service node is available f MEC It is represented that assuming that the task i generated by the terminal device is available three tuple It is represented that D i It is represented that the size of the task to be unloaded is C i It is represented that the computing resource required by the task to be unloaded is tmax i It is represented that the maximum tolerable time delay corresponding to the task to be unloaded.

[0115] In this step, the transmission time of transmitting the task between the terminal device and the edge service node can be calculated according to the following formula:

[0116]

[0117] Further, based on the calculated transmission time, the computing resource required by the task to be unloaded and the computing resource corresponding to the edge service node, the time delay unloaded to the edge computing node is calculated by the following formula:

[0118]

[0119] Further, the energy consumption function unloaded to the edge service node is constructed by the following formula:

[0120]

[0121] Wherein, It is represented that the time delay of the task i unloaded to the edge computing node is P MEC It is represented that the running power is P t It is represented that the transmission power is tw denotes the transmission time of transmitting the task between the terminal device and the edge service node, P0 denotes the waiting power, i.e. denotes the energy consumption function of task i being offloaded to the MEC node, the first part denotes the energy consumption of the edge service node processing the task, the second part denotes the energy consumption of data transmission to the wireless base station corresponding to the MEC node, and the third part denotes the energy consumption occurring when the terminal device waits for the MEC node to process the task.

[0122] Optionally, the energy consumption function of being offloaded to the edge service center can be constructed by using the following formula:

[0123]

[0124] wherein, denotes the delay of task i being offloaded to the edge service center, P MCC denotes the running power of the edge service center processing the task, P t denotes the transmission power of being offloaded to the edge service center, t w denotes the transmission time of transmitting the task between the terminal device and the edge service center, P0 denotes the waiting power of the terminal device waiting for the edge service center to process the task, i.e. denotes the energy consumption function of task i being offloaded to the MEC, the first part denotes the energy consumption of the edge service center processing the task, the second part denotes the energy consumption of data transmission to the edge service center, and the third part denotes the energy consumption occurring when the terminal device waits for the edge service center to process the task.

[0125] The delay of task i being offloaded to the edge service center can be calculated by using the following formula:

[0126]

[0127] wherein, f MCC denotes the computing resource corresponding to the edge service node.

[0128] Optionally, the energy consumption function of being offloaded to the cloud service center can be constructed by using the following formula:

[0129]

[0130] wherein, denotes the delay of task i being offloaded to the cloud service center, P CCC denotes the running power of the cloud service center processing the task, P t denotes the transmission power of being offloaded to the cloud service center, t w denotes the transmission time of transmitting the task between the terminal device and the cloud service center, P0 denotes the waiting power of the terminal device waiting for the cloud service center to process the task, i.e. The energy consumption function of task i offloaded to the CCC, the first part represents the energy consumption of the cloud service center processing the task, the second part represents the corresponding energy consumption of data transmission to the cloud service center, and the third part represents the energy consumption of the terminal device waiting for the cloud service center to process the task.

[0131] The delay of task i offloaded to the cloud service center can be calculated by the following formula:

[0132]

[0133] Wherein, f CCC represents the corresponding computing resources of the cloud service center.

[0134] Therefore, the embodiments of the present application can construct the energy consumption function of offloading to the edge service node, the edge service center and the cloud service center, meet the different scenarios of offloading tasks, and then can solve the minimum value according to the constructed energy consumption function, so as to meet the lowest total energy consumption of the system.

[0135] Optionally, according to the constraint condition, the minimum value of the energy consumption offloaded to the edge service node is solved, comprising:

[0136] The occupied resources of the task to be offloaded offloaded to the edge service node, the total amount of resources corresponding to the cloud-edge-end collaborative architecture and the total amount of servers are obtained; the total amount of servers is the sum of the number of servers corresponding to the edge service node, the edge service center and the cloud service center;

[0137] The first resource average utilization rate of the edge service node and the second resource average utilization rate corresponding to the cloud-edge-end collaborative architecture are calculated based on the occupied resources of the edge service node, the total amount of resources and the total amount of servers;

[0138] The first resource average utilization rate and the second resource average utilization rate are used to construct the load imbalance rate corresponding to the offloading to the edge service node;

[0139] The minimum value of the energy consumption offloaded to the edge service node is solved according to the delay and the load imbalance rate; wherein, the delay is less than the maximum tolerance delay corresponding to the offloaded task; the load imbalance rate is less than the preset threshold.

[0140] In the embodiments of the present application, the maximum tolerable delay can refer to a preset maximum delay for determining that offloading to the edge computing node (or edge service center, cloud service center) meets the business demand, and the preset threshold can refer to a preset threshold for determining that the load imbalance rate corresponding to offloading to the edge computing node (or edge service center, cloud service center) meets the business demand. The embodiments of the present application do not limit the specific values corresponding to the maximum tolerable delay and the preset threshold. For example, the preset threshold can be set to 20%.

[0141] In this step, the set of server nodes in the system is A, A={k|0≤k≤m}, m represents the number of available server nodes in the system, and the set of occupied resources (CPU, memory, bandwidth, etc.) of the server is B, B={r|0≤r≤p}, r represents the type of server node.

[0142] Since the network is dynamically changing, the resource occupied by the server node k to which the task i has been allocated at the current time is That is, the task to be offloaded is offloaded to the occupied resource corresponding to the server node, and the total amount of resources is That is, the total amount of resources corresponding to the cloud-edge-end collaborative architecture, then the first resource average utilization of the server node k on the resource r can be calculated by the following formula:

[0143]

[0144] Further, the second resource average utilization of the cloud-edge-end collaborative architecture is calculated by the following formula:

[0145]

[0146] Further, based on the resource average utilization of the physical server, the load imbalance rate μ of the entire system is calculated by the following formula:

[0147]

[0148] Further, based on the constructed energy consumption function of offloading to the edge service node Solve the minimum value of the energy consumption of offloading to the edge service node, where μ≤20%.

[0149] It should be noted that the edge service node is one of the server nodes.

[0150] Optionally, in each calculation cycle, a target function of the system can be constructed based on the energy consumption function of the edge service node to which the task is offloaded, the energy consumption function of the edge service center to which the task is offloaded, and the energy consumption function of the cloud service center to which the task is offloaded, and the minimum value of the energy consumption of the system is solved based on the constraint condition, so that the system meets the lowest total energy consumption.

[0151] The target function and the constraint condition corresponding to the target function are as follows:

[0152]

[0153] s.t.

[0154]

[0155] wherein tmax i represents the maximum tolerance delay corresponding to the offloaded task, the first constraint condition is used to constrain the processing delay of each task to be less than the maximum delay tolerance value; the second constraint condition is used to constrain that when the task i is offloaded, only one type of multiple resources can be selected, and only one server node of the type of resources can be selected; and the third constraint condition is used to constrain that the load imbalance rate of the system as a whole is less than 20%.

[0156] Therefore, on the basis that the task offloading meets the minimum delay and on the basis that the load imbalance rate meets the minimum requirement (20%), the embodiment of the present application can find the system server node with the lowest power consumption, so that on the basis of the multiple resource computing offloading architecture of the end-edge-cloud, the multiple resource offloading problem of energy consumption, delay and load balancing is comprehensively considered, and the lowest energy consumption of the entire system is realized through the assignment of the node task, thereby improving the use performance.

[0157] Optionally, determining the target edge service node in the at least one edge service node to execute the task to be offloaded based on a predefined algorithm comprises:

[0158] acquiring the position information and the particle velocity corresponding to each edge service node; the particle velocity is the propagation velocity corresponding to the task offloading; different edge service nodes correspond to different propagation velocities;

[0159] determining the target edge service node based on the position information, the particle velocity and the discrete particle swarm algorithm, and executing the task to be offloaded by using the target edge service node.

[0160] In the embodiment of the present application, compared with the method of searching for the target edge service node by using the greedy search, a large amount of time will be consumed and the performance of the system will be reduced, therefore, the discrete particle swarm method is used to realize the fast search of the server node, and it can be determined to which server node the task is offloaded.

[0161] In this step, for a certain task, there is a set of candidate server nodes, and then the discrete particle swarm method can be used to quickly retrieve suitable server nodes from the server node set to undertake task offloading. For example, after the system receives a task offloading request, the system searches for D server node candidate sets that meet the preset requirements based on the task offloading request, and determines the target server node from the D server node candidate sets.

[0162] Specifically, the D server node candidate sets are represented by particles i, x i i1 i2 iD , and v i i1 i2 iD represent the position information of the particle, and v i i1 i2 iD represent the particle velocity. The update velocity v(t+1) of the particle can be calculated by the following formula:

[0163] v(t+1) = w·v(t) + c1·rand()[p i,best (t) - x i (t)] + c2·rand()[g i,best (t) - x i (t)]

[0164] where w represents the weight of the particle movement direction, which is a pre-known value, p i,best (t) represents the best position point of particle i, g i,best (t) represents the best position point of global particle i, c1 = c max *(1-γ n-t ), c max represents the maximum step length of particle i movement, γ represents the decay factor, c2 = c min *(1+γ n-t ), and c min represents the minimum step length of particle i movement.

[0165] Further, since the position information is a discrete variable, the particle velocity can be converted by using a sigmoid function to map it to 0-1, and the conversion formula is as follows:

[0166] s(V(t+1)) = 1 / (1+exp(-V(t)))

[0167] Further, the absolute probability of position change is calculated by the following formula:

[0168]

[0169] ​Wherein, the update speed is used to represent the feasible solution of the value 0 / 1 corresponding to the position information of the particle, and based on the above formula, if x iD is 1, the corresponding v(t+1) is a feasible solution.

[0170] Further, the transmission time t w of the task transmitted between the terminal device and the server node is determined, and the maximum value is the global optimal solution, and a set of feasible solutions x i is found based on the maximum number of iterations of the current particle i1 , i2 , iD , ..., i satisfying the minimum energy consumption, i.e., based on x i1 , i2 , iD , determining the position of the target server node, sending the task to the target server node, and realizing the fast unloading of the task.

[0171] Therefore, the embodiments of the present application can find the optimal server node for task unloading, and can realize the fast unloading of the task and improve the unloading rate.

[0172] Optionally, it is judged whether the edge service center or the cloud service center satisfies the preset requirement after executing the task to be unloaded, and a judgment result is obtained, including:

[0173] It is judged whether the edge service center satisfies the preset requirement after executing the task to be unloaded;

[0174] If yes, the edge service center is used to execute the task to be unloaded, a second execution result is obtained, and the second execution result is fed back to the terminal device;

[0175] If no, the cloud service center is used to execute the task to be unloaded, a third execution result is obtained, and the third execution result is fed back to the terminal device.

[0176] Optionally, if the edge service node, the edge service center and the cloud service center do not satisfy the preset requirement, the task is put into a waiting state until the edge service center satisfies the requirements of the minimum energy consumption and responsibility balance, and then enters the processing state.

[0177] In combination with the above embodiments, Figure 3 a complete task unloading method flowchart provided by the embodiments of the present application is provided; the task unloading method includes the following steps:

[0178] Step 1: the mobile terminal defines the task, calculates the local processing capability, and judges whether the local processing capability meets the business requirement, if the local processing capability meets the business requirement, a local processing decision is made, the task is not unloaded, the task is left for local calculation, and a calculation result is obtained; if the local processing capability does not meet the business requirement, step 2 is performed.

[0179] Step 2: an unloading processing decision is made, specifically, a MEC node available is found, and it is judged whether the single node meets the requirements of minimum energy consumption and load balancing after the task is assigned to the MEC node, if the single node meets the requirements, the MEC node executes the task and returns a calculation result (first execution result) to the mobile terminal; if the single node does not meet the requirements, step 3 is performed.

[0180] Step 3: an edge service center (MCC) available is found, and it is judged whether the MCC meets the requirements of minimum energy consumption and load balancing after the task is assigned to the edge service center, if the MCC meets the requirements, the edge service center executes the task and returns a calculation result (second execution result) to the mobile terminal; if the MCC does not meet the requirements, step 4 is performed.

[0181] Step 4: a cloud service center (CCC) available is found, and it is judged whether the CCC meets the requirements of minimum energy consumption and load balancing after the task is assigned to the cloud service center, if the CCC meets the requirements, the cloud service center executes the task and returns a calculation result (third execution result) to the mobile terminal; if the CCC does not meet the requirements, the task is in a waiting state until the edge service center meets the requirements of energy consumption and load balancing, and the task enters a processing state.

[0182] Therefore, the embodiments of the present application use the strategy of multiple resource cooperation to unload the task, which can be applied to the case of massive user intensive business, and improves the flexibility and processing rate of processing.

[0183] In the foregoing embodiments, the task unloading method provided by the embodiments of the present application is introduced, and in order to realize each function in the method provided by the embodiments of the present application, the electronic device as an execution subject can include a hardware structure and / or a software module, and each function is realized in the form of a hardware structure, a software module, or a hardware structure plus a software module. Whether a certain function in the foregoing functions is executed in the form of a hardware structure, a software module, or a hardware structure plus a software module depends on the specific application of the technical solution and the design constraint conditions.

[0184] For example, Figure 4 A structural schematic diagram of a task unloading device provided by the embodiments of the present application is shown, the task unloading device is applied to a cloud-edge-end cooperative architecture, the cloud-edge-end cooperative architecture includes an edge service node, an edge service center, and a cloud service center; as Figure 4As shown, the apparatus comprises: a receiving module 410, a judging module 420, an executing module 430 and a searching module 440; wherein the receiving module 410 is configured to receive a task offloading request sent by a terminal device, and search for at least one available edge service node based on the task offloading request; the task offloading request comprises a task to be offloaded;

[0185] The judging module 420 is configured to judge whether the at least one edge service node meets preset requirements after executing the task to be offloaded.

[0186] The executing module 430 is configured to, when the at least one edge service node meets the preset requirements after executing the task to be offloaded, determine a target edge service node in the at least one edge service node to execute the task to be offloaded based on a predefined algorithm, obtain a first execution result, and feed back the first execution result to the terminal device.

[0187] The searching module 440 is configured to, when the at least one edge service node does not meet the preset requirements after executing the task to be offloaded, search for a corresponding edge service center or a cloud service center based on the task offloading request, judge whether the edge service center or the cloud service center meets the preset requirements after executing the task to be offloaded, obtain a judgment result, and select a corresponding offloading strategy based on the judgment result to offload the task.

[0188] Optionally, the receiving module 410 is specifically configured to:

[0189] Obtain an execution task corresponding to the terminal device and a utilization rate of a central processing unit (CPU), and judge whether the terminal device meets business requirements after processing the execution task based on the utilization rate of the CPU;

[0190] If yes, receive an energy consumption corresponding to processing the execution task sent by the terminal device; the energy consumption is obtained based on a specific algorithm after the terminal device selects a corresponding processing decision to process the execution task;

[0191] If no, receive the task offloading request sent by the terminal device.

[0192] Optionally, the judging module 420 comprises a constructing unit, a solving unit and a judging unit.

[0193] Specifically, the constructing unit is configured to, for each edge service node, construct an energy consumption function of offloading to the edge service node based on variables; wherein the variables comprise: the task to be offloaded, an average transmission rate of offloading to the edge service node, a required computing resource of the task to be offloaded, and a computing resource corresponding to the edge service node.

[0194] solving unit, for solving a minimum value of energy consumption unloaded to the edge service node according to a constraint condition; wherein the constraint condition is used to constrain at least one of the following: a time delay corresponding to unloading to the edge service node, a load imbalance rate corresponding to unloading to the edge service node;

[0195] The judgment unit is used for judging whether the edge service node meets a preset requirement after executing the task to be unloaded according to a result obtained by solving.

[0196] Optionally, the construction unit is specifically used for:

[0197] According to the average transmission rate unloaded to the edge service node and the task to be unloaded, a transmission time of transmitting the task between the terminal device and the edge service node is constructed.

[0198] According to the transmission time, a required computing resource of the task to be unloaded and a computing resource corresponding to the edge service node, a time delay unloaded to the edge computing node is constructed.

[0199] The running power of the edge service node processing the task, the waiting power of the terminal device waiting for the edge service node processing the task, and the transmission power unloaded to the edge service node are obtained.

[0200] The transmission time, the time delay, the running power, the waiting power and the transmission power are used to construct an energy consumption function unloaded to the edge service node.

[0201] Optionally, the solving unit is specifically used for:

[0202] The occupied resource of the task to be unloaded corresponding to the edge service node, the total amount of resources corresponding to the cloud-edge-end collaborative architecture and the total amount of servers are obtained; the total amount of servers is the sum of the number of servers corresponding to the edge service node, the edge service center and the cloud service center;

[0203] The first resource average utilization rate of the edge service node and the second resource average utilization rate corresponding to the cloud-edge-end collaborative architecture are calculated based on the occupied resource corresponding to the edge service node, the total amount of resources and the total amount of servers.

[0204] The load imbalance rate corresponding to unloading to the edge service node is constructed by using the first resource average utilization rate and the second resource average utilization rate.

[0205] According to the time delay and the load imbalance rate, a minimum value of energy consumption unloaded to the edge service node is solved; wherein the time delay is less than a maximum tolerable time delay corresponding to unloading the task; and the load imbalance rate is less than a preset threshold.

[0206] Optionally, the execution module 430 is specifically configured to:

[0207] acquire position information corresponding to each edge service node and particle velocity; the particle velocity is a propagation velocity corresponding to task offloading; different edge service nodes correspond to different propagation velocities;

[0208] determine a target edge service node based on the position information, the particle velocity, and a discrete particle swarm algorithm, and execute the task to be offloaded by using the target edge service node.

[0209] Optionally, the searching module 440 is specifically configured to:

[0210] determine whether the edge service center meets a preset requirement after executing the task to be offloaded;

[0211] if yes, execute the task to be offloaded by using the edge service center, obtain a second execution result, and feed back the second execution result to the terminal device;

[0212] if no, execute the task to be offloaded by using the cloud service center, obtain a third execution result, and feed back the third execution result to the terminal device.

[0213] The specific implementation principles and effects of the task offloading apparatus provided in the embodiments of the present application can be referred to the related descriptions and effects of the corresponding embodiments described above, and will not be repeated here.

[0214] The embodiments of the present application further provide a structural schematic diagram of an electronic device, Figure 5 A structural schematic diagram of an electronic device provided in the embodiments of the present application, as Figure 5 shown, the electronic device can include a processor 501 and a memory 502 in communication connection with the processor; the memory 502 stores a computer program; the processor 501 executes the computer program stored in the memory 502, so that the processor 501 executes the method described in any of the above embodiments.

[0215] The memory 502 and the processor 501 can be connected through a bus 503.

[0216] The embodiments of the present application further provide a computer readable storage medium, which stores computer program execution instructions; the computer program execution instructions are executed by a processor to implement the method in any of the above embodiments.

[0217] The embodiments of the present application further provide a chip running instruction, which is used to execute the method described in any of the above embodiments executed by an electronic device.

[0218] The embodiment of the present application further provides a computer program product, which comprises a computer program, and the computer program can realize the method described in any of the preceding embodiments when executed by a processor.

[0219] In several embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other manners. For example, the embodiments of the apparatus described above are merely schematic; for example, the division of the modules is merely a logical function division; there can be another division manner for the actual implementation; for example, a plurality of modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections between different modules can be indirect couplings or communication connections through some interfaces, devices or modules, and can be in electrical, mechanical or other forms.

[0220] The modules illustrated as separated components can or can not be physically separated, and the components illustrated as modules can or can not be physical units, i.e., can be located in one place or can be distributed on a plurality of network units. Some or all of the modules can be selected according to actual needs to implement the embodiments of the present application.

[0221] In addition, each functional module in the embodiments of the present application can be integrated in one processing unit, or each module can exist physically independently, or two or more modules can be integrated in one unit. The units mentioned above can be realized in the form of hardware, or in the form of hardware plus software function units.

[0222] The integrated modules realized in the form of software function modules can be stored in a computer readable storage medium. The software function modules stored in the storage medium include a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute some steps of the methods described in the embodiments of the present application.

[0223] It should be appreciated that the above processor can be a central processing unit (CPU), and can also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in the application can be directly embodied by hardware processor execution, or by hardware and software module combination in the processor.

[0224] The memory can include a high-speed random access memory (RAM), and can also include a non-volatile memory (NVM), such as at least one disk memory, and can also be a U disk, a mobile hard disk, a read-only memory, a magnetic disk or an optical disk, etc.

[0225] The bus can be an industry standard architecture (ISA) bus, a peripheral component interconnect (PCI) bus, or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, the bus in the drawings of the present application does not limit only one bus or one type of bus.

[0226] The storage medium can be implemented by any type of volatile or non-volatile storage devices or a combination thereof, such as static random-access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk. The storage medium can be any available medium that can be accessed by a general or special purpose computer.

[0227] An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. Of course, the storage medium can be a part of the processor. The processor and the storage medium can be located in an application specific integrated circuit (ASIC). The processor and the storage medium can be located in a remote terminal or server and coupled to the remote terminal or server via a network.

[0228] The above description is merely a specific implementation of the present application. The protection scope of the present application is not limited in this way. Any change or replacement within the technical scope disclosed in the present application should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A task offloading method, characterized by, The method is applied to a cloud-edge-end collaborative architecture, the cloud-edge-end collaborative architecture comprising an edge service center, a cloud service center and an edge service node deployed at a base station side; the method comprises: The base station side receives a task offloading request sent by a terminal device, and finds at least one available edge service node based on the task offloading request; the task offloading request comprises a task to be offloaded; It is judged whether the at least one edge service node meets a preset requirement after executing the task to be offloaded, specifically comprising: for each edge service node, an energy consumption function offloaded to the edge service node is constructed; the minimum value of the energy consumption offloaded to the edge service node is solved according to the constraint condition; wherein the constraint condition is used to constrain at least one of the following: the delay corresponding to the offloading to the edge service node, the load imbalance rate corresponding to the offloading to the edge service node; according to the result obtained by solving, it is judged whether the edge service node meets the preset requirement after executing the task to be offloaded; If there is the edge service node meeting the preset requirement, a target edge service node in the at least one edge service node is determined to execute the task to be offloaded based on a predefined algorithm, a first execution result is obtained, and the first execution result is fed back to the terminal device; If the at least one edge service node does not meet the preset requirement, a corresponding edge service center is found based on the task offloading request, and it is judged whether the edge service center meets the preset requirement after executing the task to be offloaded; if yes, the edge service center is used to execute the task to be offloaded, a second execution result is obtained, and the second execution result is fed back to the terminal device; If no, the cloud service center is used to execute the task to be offloaded, a third execution result is obtained, the third execution result is fed back to the terminal device, and a corresponding offloading strategy is selected based on the judgment result for task offloading; The energy consumption function offloaded to the edge service node is constructed, comprising: The transmission time of transmitting a task between the terminal device and the edge service node is constructed according to the average transmission rate offloaded to the edge service node and the task to be offloaded; The delay of offloading to the edge computing node is constructed according to the transmission time, the required computing resource of the task to be offloaded and the corresponding computing resource of the edge service node; The running power of the edge service node processing the task, the waiting power of the terminal device waiting for the edge service node processing the task, and the transmission power offloaded to the edge service node are obtained; The energy consumption function offloaded to the edge service node is constructed by using the transmission time, the delay, the running power, the waiting power and the transmission power.

2. The method of claim 1, wherein, The task offloading request sent by the terminal device is received, comprising: The utilization rate of a central processing unit (CPU) corresponding to the execution task of the terminal device is obtained, and it is judged whether the terminal device meets the business demand after processing the execution task based on the utilization rate of the CPU; If yes, receiving energy consumption of processing the execution task sent by the terminal device; the energy consumption is calculated based on a specific algorithm and obtained by the terminal device selecting a corresponding processing decision to process the execution task; If no, receiving a task offloading request sent by the terminal device.

3. The method of claim 1, wherein, According to the constraint condition, solving a minimum value of energy consumption of offloading to the edge service node includes: Obtaining occupied resources of offloading the task to the edge service node, total amount of resources of the cloud-edge-end collaborative architecture, and total amount of servers; the total amount of servers is a sum of server numbers of the edge service node, the edge service center, and the cloud service center; Based on the occupied resources of the edge service node, the total amount of resources, and the total amount of servers, calculating a first resource average utilization rate of the edge service node and a second resource average utilization rate of the cloud-edge-end collaborative architecture; Using the first resource average utilization rate and the second resource average utilization rate to construct a load imbalance rate of offloading to the edge service node; According to the time delay and the load imbalance rate, solving a minimum value of energy consumption of offloading to the edge service node; wherein the time delay is less than a maximum tolerable time delay of offloading the task; and the load imbalance rate is less than a preset threshold.

4. The method of claim 1, wherein, Based on a predefined algorithm, determining a target edge service node in the at least one edge service node to execute the task to be offloaded includes: Obtaining location information and particle velocity of each edge service node; the particle velocity is a propagation velocity of task offloading; different edge service nodes correspond to different propagation velocities; Based on the location information, the particle velocity, and a discrete particle swarm algorithm, determining the target edge service node, and using the target edge service node to execute the task to be offloaded.

5. A task offloading apparatus characterized by comprising: An apparatus for executing the method of any one of claims 1-4 is applied to a cloud-edge-end collaborative architecture including an edge service center, a cloud service center, and an edge service node deployed on a base station side; the apparatus includes: A receiving module for receiving a task offloading request sent by a terminal device on the base station side, and finding at least one available edge service node based on the task offloading request; the task offloading request includes a task to be offloaded. The judging module is configured to judge whether the at least one edge service node meets the preset requirement after executing the task to be offloaded, and specifically comprises: for each edge service node, constructing a transmission time of transmitting the task between the terminal device and the edge service node according to the average transmission rate of the offloaded task to the edge service node and the task to be offloaded; constructing a time delay of offloading to the edge computing node according to the transmission time, the required computing resource of the task to be offloaded, and the computing resource corresponding to the edge service node; obtaining a running power of the edge service node processing the task, a waiting power of the terminal device waiting for the edge service node processing the task, and a transmission power of offloading to the edge service node; constructing an energy consumption function of offloading to the edge service node by using the transmission time, the time delay, the running power, the waiting power, and the transmission power; solving a minimum value of the energy consumption of offloading to the edge service node according to a constraint condition; wherein the constraint condition is configured to constrain at least one of the following: a time delay corresponding to offloading to the edge service node, and a load imbalance rate corresponding to offloading to the edge service node; judging whether the edge service node meets the preset requirement after executing the task to be offloaded according to the result obtained by the solving. The executing module is configured to determine a target edge service node in the at least one edge service node to execute the task to be offloaded based on a predefined algorithm when the at least one edge service node meets the preset requirement after executing the task to be offloaded, obtain a first execution result, and feed back the first execution result to the terminal device. The searching module is configured to search for a corresponding edge service center or a cloud service center based on the task offloading request when the at least one edge service node does not meet the preset requirement after executing the task to be offloaded, judge whether the edge service center or the cloud service center meets the preset requirement after executing the task to be offloaded, obtain a judgment result, and select a corresponding offloading strategy based on the judgment result to offload the task.

6. An electronic device, comprising: Comprise: A processor, and a memory connected with the processor in communication; The memory stores computer execution instructions; The processor executes the computer execution instructions stored in the memory to implement the method of any one of claims 1-4.

7. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer execution instructions, and the computer execution instructions are executed by the processor to implement the method of any one of claims 1-4.

Citation Information

Patent Citations

  • Mobile user terminal task unloading method under distributed edge computing service system

    CN111262906A