Cloud edge-end cooperative scheduling method in unstable connection scene

By realizing node state awareness and task scheduling decisions in the cloud edge collaborative network, the problems of task scheduling continuity and availability in non-stable connection scenarios are solved, and a cloud edge collaborative scheduling method with high continuity and low perception overhead is realized.

CN119759526AActive Publication Date: 2025-04-04NAT UNIV OF DEFENSE TECH
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411891154.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-20
Publication Date
2025-04-04
Estimated Expiration
2044-12-20

AI Technical Summary

Technical Problem

In an environment with unstable network connections, the task scheduling continuity and availability of cloud-edge collaborative computing networks are significantly restricted, and the existing technology has not effectively solved this problem.

Method used

By implementing the steps of node status awareness, scheduling alternative decisions, task scheduling execution and task operation monitoring in the cloud edge collaborative network, nodes perform task scheduling based on the current network status and actively carry out task unloading when the connection is unstable.

Benefits of technology

It improves the continuity of service operation, reduces network perception overhead, and ensures the stable operation of tasks in non-stable connection scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119759526A_ABST
    Figure CN119759526A_ABST
Patent Text Reader

Abstract

The invention discloses a cloud edge-end cooperative scheduling method in an unstable connection scene, and relates to the technical field of edge computing. The method comprises the following steps: each node in a cloud side end collaborative network collaboratively perceives network state information to form list state information, and real-time refreshing is carried out; when each node generates a task, executing a scheduling strategy according to state information obtained by sensing, and determining an alternative execution node list for task execution; the nodes initiate task execution requests to unmarked nodes in the alternative execution node list in sequence until a certain service node accepts the requests, the nodes accepting the requests are called as the service nodes, and then tasks are scheduled to the service nodes to be executed; and monitoring the running state of the task initiated by each node, and marking the nodes which do not meet the condition. The method has the advantages of good operation continuity, low sensing overhead and the like.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of edge computing technology, and in particular to a cloud-edge-terminal collaborative scheduling method in an unstable connection scenario. Background Art

[0002] The cloud-edge-end collaborative computing network is a new paradigm of collaborative computing that can effectively combine the advantages of cloud computing, edge computing, and end computing to meet the task scheduling needs of different task scenarios. The cloud-edge-end collaborative architecture forms a hierarchical network interconnection and task scheduling architecture to provide timely and context-aware services. However, in an environment with unstable network connections, communications between devices or systems are easily interrupted by interference, which significantly restricts the continuity and availability of task scheduling. Therefore, seeking a collaborative scheduling method in unstable scenarios is the key to improving the continuity of task scheduling and maintaining stable system operation.

[0003] The algorithms proposed by existing cloud-edge-device collaborative computing solutions mostly focus on cloud-edge-device computing offloading strategies under ideal network connection conditions, with the aim of optimizing computing efficiency. However, in actual deployment and implementation, they do not consider problems such as discontinuous task operation and unstable system operation caused by unstable network connection, resulting in unstable and easily interrupted task operation. Summary of the invention

[0004] The technical problem to be solved by the present invention is how to provide a cloud-edge-terminal collaborative scheduling method in an unstable connection scenario with good operation continuity and low perception overhead.

[0005] In order to solve the above technical problems, the technical solution adopted by the present invention is: a cloud-edge-device collaborative scheduling method in an unstable connection scenario, comprising the following steps:

[0006] S101, node status perception: Each node in the cloud-edge collaborative network collaboratively perceives network status information, forms list status information, and refreshes it in real time;

[0007] S102, scheduling alternative decision: when each node generates a task, it executes the scheduling strategy based on the state information it senses, and determines a list of candidate execution nodes for task execution;

[0008] S103, task scheduling and execution: the node initiates a task execution request to the unmarked nodes in the candidate execution node list in order until a service node accepts the request. The node that accepts the request is called the service node, and then the task is scheduled to the service node for execution;

[0009] S104, task operation monitoring: monitor the operation status of the tasks initiated by each node. When the connection between the node and the service node cannot meet the transmission conditions required for task execution, or the service node fails, the node actively unloads the task and marks the nodes that do not meet the conditions, and then goes to step S103 for processing.

[0010] The beneficial effects of adopting the above technical solution are: First, good continuity: in unstable connection scenarios, tasks are scheduled and calculated among the cloud, edge and end based on the current network status, and are actively unloaded in unstable connection scenarios, thereby improving the continuity of service operation; Second, low network perception overhead: using a companion method to perceive the network status can effectively reduce the perception overhead compared to periodic perception solutions. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0012] Figure 1 is a flow chart of the method described in an embodiment of the present invention;

[0013] Figure 2 It is a schematic diagram of cloud-edge-end collaborative scheduling and task computing in the method described in an embodiment of the present invention;

[0014] Figure 3 is a flowchart of node status perception in the method described in an embodiment of the present invention;

[0015] Figure 4 It is a flow chart of a node list, a resource list, and a connection list obtained by collecting status information in the method according to an embodiment of the present invention;

[0016] Figure 5 is a flowchart of scheduling alternative decision making in the method described in an embodiment of the present invention;

[0017] Figure 6 is a schematic diagram of node computing power analysis in the method described in an embodiment of the present invention;

[0018] Figure 7 is a flowchart of candidate node screening in the method according to an embodiment of the present invention;

[0019] Figure 8 is a flow chart of the initial screening of time-invariant nodes in the method according to an embodiment of the present invention;

[0020] Fig. 9 is a flow chart of the final screening of time-varying nodes in the method according to an embodiment of the present invention;

[0021] Fig.10 is a flowchart of task scheduling execution in the method described in an embodiment of the present invention;

[0022] Fig.11 is a flowchart of task operation monitoring in the method described in an embodiment of the present invention;

[0023] Fig.12 It is a flowchart of completing the computing task in the method described in the embodiment of the present invention. DETAILED DESCRIPTION

[0024] The following is a clear and complete description of the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0025] In the following description, many specific details are set forth to facilitate a full understanding of the present invention, but the present invention may also be implemented in other ways different from those described herein, and those skilled in the art may make similar generalizations without violating the connotation of the present invention. Therefore, the present invention is not limited to the specific embodiments disclosed below.

[0026] like Figure 1 As shown, an embodiment of the present invention discloses a cloud-edge-device collaborative scheduling method in an unstable connection scenario, and the method includes the following steps:

[0027] S101: Node status perception: Each node in the cloud-edge collaborative network collaborates to perceive network status information, including the computing and storage resource amount, load information, connection status between nodes, etc. of each node, to form list status information;

[0028] S102: Scheduling alternative decision: When each node generates a task, it executes the scheduling strategy based on the state information it senses, and determines a list of candidate execution nodes for the task. The node list includes the node that generates the task and other nodes that meet the requirements determined based on the scheduling strategy.

[0029] S103: Task scheduling and execution: The task generation node initiates a task execution request to the unmarked nodes in the candidate execution node list in order, and in the request process, performs a companion list status information update until a service node accepts the request. The node that accepts the request is called a service node, and then schedules the task to the service node for execution;

[0030] S104: Task operation monitoring: The node periodically monitors the operation status of each task it initiates. When the connection between the node and the service node cannot meet the transmission conditions required for task execution, or the service node fails, the node actively unloads the task and marks the current service node, and goes to step S103.

[0031] Figure 2 A possible scenario of collaborative scheduling of computing tasks is given. Tasks will be offloaded between nodes, including from end nodes to edge nodes, end nodes to cloud nodes, etc. In an unstable connection scenario, if the connection between nodes cannot meet the transmission conditions required for task execution, or the service node fails, the task needs to be offloaded.

[0032] Further, such as Figure 3 As shown, the specific method of node status perception includes the following steps:

[0033] S1011: Node status perception: Perceive the computing and storage resource amount and load information of each node, the transmission bandwidth, transmission delay, delay jitter and other connection status information between nodes;

[0034] The computing resources refer to the number of cores in the node CPU and the number of threads that each core can process.

[0035] The storage resource amount refers to the total amount of physical memory of the node and the operating frequency of the memory;

[0036] The load information refers to the utilization rate of the current computing and storage resources of the node. The greater the utilization rate, the greater the load of the node;

[0037] The transmission bandwidth refers to the average data transmission rate that a network connection can provide when data is transmitted between nodes;

[0038] The transmission delay refers to the average time required for a data packet to be transmitted from a sending node to a receiving node;

[0039] The delay jitter refers to the deviation between the time interval for a data packet to arrive at the receiving end and the expected time interval during data transmission;

[0040] The state information can be continuously updated in a companion manner, thereby ensuring that the information used is relatively new information.

[0041] S1012: generating a status information list: analyzing the collected status information to form status information such as a node list, a resource list, and a connection list;

[0042] The node list refers to a list of three types of nodes, namely, cloud nodes, edge nodes and end nodes in the cloud-edge-end collaborative network. Assume that there are N nodes in total, which are recorded in the list as U={U1,U2...U N};

[0043] The resource list refers to a list containing the computing capacity, storage capacity and load information of N nodes, where the resource list of the i-th node is respectively denoted as {C i ,Li ,S i};

[0044] The connection list refers to the transmission bandwidth matrix B between nodes ij , transmission delay matrix T ij , are N×N dimensional matrices, where B ij represents the bandwidth when node i transmits data to node j, T ij It represents the delay of data transmission from node i to node j.

[0045] S1013: Status information sharing: Each node shares the perceived status information with other nodes in the cloud-edge collaborative network so that all nodes can make scheduling decisions based on the latest network status;

[0046] Among them, a possible list of state sense generation is as follows Figure 4 As shown, the node list includes all cloud nodes, edge nodes, and end nodes; C in the resource list i , S i and L i Represent the computing power, storage capacity and load of node i respectively; for N nodes, the connection list contains N-dimensional bandwidth matrix and delay matrix, where B ij represents the bandwidth when node i transmits data to node j, T ij represents the delay of data transmission from node i to node j, i,j∈{1,2……N},i≠j;

[0047] Further, such as Figure 5 As shown, the step scheduling alternative decision specifically includes the following steps:

[0048] S1021: Computing power analysis: Obtain the amount of task computing data, analyze the computing cost of the task execution process, including latency, execution power consumption, and analyze the constraints of task execution, including computing accuracy, maximum allowable delay, task compatibility, real-time performance, and task safety requirements;

[0049] The delay refers to the time it takes to complete the task execution;

[0050] The execution power consumption refers to the energy consumed by the service node when the task is executed and the energy consumed in the uplink and downlink during the offloading process;

[0051] The calculation accuracy refers to the floating point accuracy requirement of the task during the calculation process;

[0052] The maximum allowable delay refers to the maximum delay time that can be accepted when completing the task. If this delay time is exceeded, the value of the task execution result will be significantly reduced;

[0053] S1022: Determine the scheduling target: for each task, determine the optimization target of task scheduling;

[0054] The optimization goal refers to the target condition for task execution, such as the highest calculation accuracy, the lowest calculation delay, the lowest calculation cost, etc.

[0055] S1023: Candidate node screening: Based on the scheduling target and constraint conditions of the task, the nodes in the node list are screened, and all nodes that meet the constraint conditions constitute the candidate node list of the task;

[0056] like Figure 6 As shown, the node computing power analysis step specifically includes the following steps:

[0057] S10211: Local execution delay calculation: define f i is the node computing power (processor frequency), c represents the cycle of processing one bit of data, d i Indicates the size of the task data. When the computing task is offloaded to the local computer, the computing delay is: where β i Indicates the CPU ratio of the end node allocated to task i;

[0058] S10212: Local execution power consumption calculation: The energy consumption generated by task i in local calculation is E i =p i T i , where p i Indicates the power of local execution;

[0059] S10213: Calculation of unloaded uplink rate: When the task is unloaded from node i to node j for execution, the bandwidth of node j is B, and the bandwidth proportion allocated by node j to node i is λ ij , the power of node i uploading data is P i up , the channel gain in the wireless channel is H i , the distance between the two nodes is d(i,j), the noise gain of the channel is N0, the path loss index of the transmission channel is ξ, and the margin introduced to meet the uplink signal-to-noise ratio is Γ(g up ), the calculation task uplink rate is

[0060] S10214: Offload uplink delay calculation: The transmission delay of the task offload uplink is

[0061] S10215: Unloading uplink power consumption calculation: The uplink transmission energy consumption is

[0062] S10216: Calculation of offloading execution delay: The time required for the task to be offloaded from node i to be executed at node j is where f j is the computing power of node j;

[0063] S10217: Unloading execution power consumption calculation: The energy consumption of the corresponding calculation task for the execution task is

[0064] S10218: Offload downlink rate calculation: The downlink and uplink have the same channel environment. When the task calculation is completed and offloaded from node j to node i for execution, the bandwidth of node i is B, and the bandwidth proportion allocated by node i to node j is λ ij , the power of the downlink data of node j is P i do , the channel gain in the wireless channel is H i , the distance between the two nodes is d(i,j), the noise gain of the channel is N0, the path loss index of the transmission channel is ξ, and the margin introduced to meet the uplink signal-to-noise ratio is Γ(g up ), the downlink rate of the calculation task is:

[0065] S10219: Offload downlink delay calculation: The transmission delay of the task offload downlink is

[0066] S102110: Calculation of downlink power consumption when unloading: The downlink transmission energy consumption is

[0067] S102111: Calculation of total offloading execution time: The total time from offloading from node i to executing the computing task at node j is

[0068] S102112: Calculation of total power consumption for offloading execution: The total power consumption for offloading the computing task from node i to node j is

[0069] S102113: Task processing cost calculation: Define the total cost of local calculation as C i =αT i +(1-α)E i ; The total cost of the offloading calculation is The calculation results of these costs are used for scheduling decisions to determine which node is more economical and efficient to execute the task. Sending computing requests to a group of nodes arranged in ascending order of computing cost can optimize resource allocation and improve the overall performance and efficiency of the system;

[0070] like Figure 7 As shown, the candidate node screening step specifically includes the following steps:

[0071] S10231: Refresh node status information list: refresh the resource list and connection status matrix to obtain the latest status.

[0072] S10232: Extract nodes: sequentially retrieve nodes U from the node list U i , each node is extracted only once in a single task cycle, and the number of extractions is counted as ξ=i;

[0073] S10233: Time-invariant node initial screening: The three time-invariant properties of candidate execution nodes, namely security, compatibility, and computational accuracy, will not change with unstable connection conditions such as network jitter. For the requirements of the computing task on these three points, a preliminary screening is first performed to narrow the range of candidate nodes and form a preliminary candidate list U primary ={U1,U2......U n}, n≤N;

[0074] S10234: Final screening of time-varying nodes: The resources, computing power, storage space, and latency jitter of candidate execution nodes will change with unstable connection conditions such as network jitter. For the requirements of computing tasks, the candidate list U primary Nodes that meet the time-varying property are screened to form a final candidate list U final ={U1,U2......U m},m≤n;

[0075] like Figure 8 As shown, the initial screening of invariant nodes in the step specifically includes the following steps:

[0076] S102331: Determine whether the accuracy meets the requirements of the computing task: The cloud uses double-precision (FP64) or single-precision (FP32) floating-point numbers for high-precision calculations, and the edge and terminal devices use half-precision (FP16) or lower-precision numerical representations due to resource limitations. According to the processing and analysis requirements of the calculated data, if the calculation accuracy matches, go to step S102332, otherwise go to step S10232;

[0077] S102332: Determine whether the node compatibility meets the computing task requirements: Check whether the software version currently running on the node matches the task requirements and whether the hardware supports the features required by the task. If the computing task requirements are compatible with the node software and hardware, go to step S102333; otherwise, go to step S10232.

[0078] S102333: Determine whether the node security meets the computing task requirements: Determine whether the current node meets the security requirements, such as encryption, access control, etc. Ensure that the node meets industry standards and regulatory requirements. If the node security meets the computing task requirements, add the node to the sequence U. primaryOtherwise, go to step S10232;

[0079] S102334: Determine ξ=N: When ξ<N, the nodes have not been traversed yet, and go to S10232; when ξ=N, the N nodes have been traversed, and go to S102325;

[0080] S102335: Primary candidate list generation: After the traversal is completed, a primary candidate list U is formed primary ={U1,U2......U n}, n≤N.

[0081] like Fig. 9 As shown, the final screening of the degenerative nodes in the step specifically includes the following steps:

[0082] S102341: From the node list U primary Node U is retrieved sequentially i , each node is extracted only once in a single task cycle, and the number of extractions is counted as ζ=i;

[0083] S102342: Judgment C n <C r : Check the computing capacity of the current node resource list, for the total node resource C i , the node has used resources C u , calculate the remaining resources of the node C r =C i -C u , by calculating the task data volume d i Estimate the amount of resources required for the task C n , if C n <C r Then go to step S102343, otherwise go to step S102341;

[0084] S102343: Determine T<L available : Check the load capacity L in the current node resource list i , the node has used a load of L u , calculate the maximum available resources under the condition of ensuring the remaining m% resource utilization rate is Calculate the actual available resources as Calculating task complexity Where k is a constant and n is a complexity index. The processing efficiency of the computation task is B p is the processing bandwidth of the system, and the node hardware performance is Where P is the number of floating-point operations per second of the CPU, and the total load of the computing task is T = T c +T e +T h, if T<L available Then go to step S102344, otherwise go to step S102341;

[0085] S102344: Judge d i <S r ': Check the storage capacity of the current node resource list, for the total physical memory S of the node i , the node has used storage space S u , calculate the remaining memory of the node S r =S i -S u , p% of the storage space is reserved for redundancy and backup, and the actual available storage space is calculated as If d i <S r 'Then go to step S102345, otherwise go to step S102341;

[0086] S102345: Determine whether the real-time performance of the node meets the requirements: evaluate the real-time requirements of the computing task. For tasks with high real-time performance, if the node delay jitter is low and meets the requirements, go to step S102346; otherwise, go to step S102341;

[0087] S102346: Judgment or T i <T R :The response time requirement of the computing task is T R , if the current node is a local node and T i <T R , or the current node is a heretic node and Add the node to sequence O and go to step S102347, otherwise go to step S102341;

[0088] S102347: Determine ζ=n: When ζ<n, the nodes have not been traversed yet, and go to S102341; when ξ=n, the n nodes have been traversed, and go to S102348;

[0089] S102348: Determine the ultimate candidate list: Finally form the candidate node list U final ={U1,U2......U m},m≤n, where m is the number of candidate nodes, U i Represents an alternative node.

[0090] Further, such as Fig.10 As shown, the task scheduling execution specifically includes the following steps:

[0091] S1031: Alternative node sorting: Only the status information list of nodes in O is refreshed, and the status information list of nodes in U is refreshed.final ={U1,U2......U m}, the time-varying properties of all nodes in the list are refreshed, the nodes that meet the requirements are sorted from best to worst according to the scheduling requirements, and the nodes that do not meet the calculation requirements are marked and placed at the end of the list, forming a sequential node list R = {R1, R2...R m};

[0092] The sorting process is related to the scheduling target; for minimizing the scheduling target, the nodes are sorted in ascending order according to the scheduling target, so that the nodes with smaller scheduling target values ​​are sorted first; for maximizing the scheduling target, the nodes are sorted in descending order according to the scheduling target, so that the nodes with larger scheduling target values ​​are sorted first;

[0093] For example, when the scheduling goal is to minimize the task computation cost, the candidate nodes are sorted in ascending order according to the computation cost to form a sorted candidate node list;

[0094] Since the task weights of each user may be different, different tasks should be assigned different weights according to the task type. When the task is delay-sensitive, the value of weight α should be appropriately increased. When the task is energy-sensitive, the value of weight α should be appropriately reduced. The specific initialization value can be selected based on a large number of experiments.

[0095] S1032: Generate neighboring node list: Identify the node list R in order = {R1, R2...R m}, extract the neighboring nodes of the node to generate the neighboring node list R N = {R1, R2......R k};

[0096] The neighboring nodes refer to the k unmarked nodes after the first unmarked node, and the number of k is determined according to the network conditions. When the network conditions are very unstable, the state information of the node changes greatly over time, and the number of k should be appropriately increased to increase the selectivity of the task generation node.

[0097] S1033: Neighboring node refresh: only for R N Update the status information list of the nodes in R N = {R1, R2......R k} The list is refreshed according to its time-varying nature to ensure the accuracy and timeliness of the nodes. N If the marked node meets the calculation requirements, the mark is removed. If the unmarked node does not meet the calculation requirements due to instability, a mark is added to the node.

[0098] S1034: Sort neighboring nodes: sort the marked nodes from R NDelete it and make a N The unmarked nodes are reordered according to the scheduling goal.

[0099] S1035: Judge R N Is it empty: When R N When there is no node in, jump to S1031.

[0100] S1036: Determine whether R1 meets the calculation requirements: Task generation node P i To R N The first node R1 sends a task execution request and senses the node status information to determine whether the node meets the computing requirements. If the node meets the requirements, a timeout period τ is set. out , start timing from the time the task is sent, and wait for E i A confirmation response is sent back. If the node does not meet the calculation requirements, the node is marked and the process jumps to S1033;

[0101] S1037: Determine whether the execution node is confirmed: If τ out Within time P i After receiving the response from R1, the execution node is defined as the service node S. i , if τ out No response was received within the time, P i Actively abandon the execution node, mark the node and go to S1033;

[0102] S1038: The task generation node sends the task: the request contains necessary parameters and configuration information so that the execution node can understand and execute the task;

[0103] The necessary parameters and configuration information refer to the amount of input data and environment variables required for task execution, the number of times a task needs to be executed in a batch or repetitive task, the execution node identifier used to specify the node that executes the task, and the address or callback URL where the result is sent back after the task is executed;

[0104] S1039: Computing Task Allocation: Service Node S i Perform verification and preparation work, add tasks to their task queues, and allocate available computing resources;

[0105] S10310: Computing task started: Service node S i Initializes the required execution environment, loads necessary applications, dependencies, and input data, and starts executing the tasks assigned to it.

[0106] like Fig.11 As shown, the task operation monitoring step specifically includes the following steps:

[0107] S1041: Determine whether the service task is started normally: Node P i Monitor the startup status of the task on the service node to determine whether the task is successfully started on the expected node; since the service node is time-varying, when the transmission demand for task execution is not met or the service node fails, the node needs to perform task unloading processing and go to step S1042, otherwise go to step S1043;

[0108] S1042: Failed node marking: When the actual computing task is in progress, the connection between nodes is affected by network fluctuations, hardware failures, software updates, etc., and the load status of the node increases or decreases due to factors such as task completion, allocation of new tasks, consumption and release of resources, etc. The dynamic and adaptive nature of the distributed system requires a monitoring and adjustment mechanism to cope with these changes, maintain the stability and efficiency of the system, mark the failed nodes, and go to S1033;

[0109] S1043: Execute computing tasks: perform necessary preprocessing on data and select appropriate algorithms or models according to task requirements;

[0110] S1044: Calculation result processing: After the task is executed, the service node will process the calculation results, verify, format and store the results. After processing, the results are returned to the node requesting the task or stored in a specified location;

[0111] S1045: Computing task completed: The service node completes the task of this collaborative execution and restores all settings to the initial state.

[0112] like Fig.12 As shown, the step calculation task completion specifically includes the following steps:

[0113] S10451: Release computing resources: The task node releases all resources related to the task, including CPU, memory, and other computing resources;

[0114] S10452: Task log record: Provides log information of task startup, including startup time, node information, and warnings or errors during task startup;

[0115] S10453: Status update and notification: The service node updates the task status to "completed" and notifies other nodes in the node list of this status change;

[0116] S10454: Waiting for task delivery: The service node decides whether to schedule new computing tasks based on the current resource status and task queue. If there are pending tasks, the node will select the next task to execute according to the predetermined scheduling strategy. If there are no pending tasks, the node may enter standby mode and wait for the arrival of new tasks.

[0117] It should be noted that the system corresponds to the method, and the specific implementation method of the modules in the system can refer to the implementation steps of the method.

[0118] In summary, the method has two advantages: First, good continuity: in unstable connection scenarios, tasks are scheduled and calculated among the cloud, edge and end based on the current network status, and are actively unloaded in unstable connection scenarios, thereby improving the continuity of service operation; Second, low network perception overhead: using a companion approach to perceive network status can effectively reduce perception overhead compared to periodic perception schemes.

Claims

1. A cloud-edge-device collaborative scheduling method in an unstable connection scenario, characterized in that The steps include: S101, node status perception: Each node in the cloud-edge collaborative network collaboratively perceives network status information, forms list status information, and refreshes it in real time; S102, scheduling alternative decision: when each node generates a task, it executes the scheduling strategy based on the state information it senses, and determines a list of candidate execution nodes for task execution; S103, task scheduling and execution: the node initiates a task execution request to the unmarked nodes in the candidate execution node list in order until a service node accepts the request. The node that accepts the request is called the service node, and then the task is scheduled to the service node for execution; S104, task operation monitoring: monitor the operation status of the tasks initiated by each node. When the connection between the node and the service node cannot meet the transmission conditions required for task execution, or the service node fails, the node actively unloads the task and marks the nodes that do not meet the conditions, and then goes to step S103 for processing.

2. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 1, characterized in that: The node status perception in S101 specifically includes the following steps: S1011, node status perception: perceive the status information of each node, the status information includes computing and storage resource amount, load information, transmission bandwidth between nodes, transmission delay and delay jitter; S1012, generating a status information list: analyzing the collected status information to form a node list, a resource list, and a connection list; The node list refers to a list of three types of nodes, namely, cloud nodes, edge nodes and end nodes in the cloud-edge-end collaborative network. Assume that there are N nodes in total, which are recorded in the list as U={U1,U2...U N }; The resource list refers to a list containing the computing capacity, storage capacity and load information of N nodes, where the resource list of the i-th node is respectively denoted as {C i ,L i ,S i }; The connection list refers to the transmission bandwidth matrix B between nodes ij , transmission delay matrix T ij , are N×N dimensional matrices, where B ij represents the bandwidth when node i transmits data to node j, T ij represents the delay of data transmission from node i to node j; S1013, status information sharing: Each node shares the perceived status information with other nodes in the cloud-edge collaborative network so that all nodes can make scheduling decisions based on the latest network status.

3. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 1, characterized in that: The S102 scheduling alternative decision includes the following steps: S1021, node computing power analysis: obtain the task computing data volume, analyze the computing cost of the task execution process and analyze the constraints of the task execution; S1022, determining a scheduling target: for each task, determining an optimization target for task scheduling; S1023, candidate node screening: based on the scheduling target and constraint conditions of the task, the nodes in the node list are screened, and all nodes that meet the constraint conditions constitute the candidate node list of the task.

4. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 3, characterized in that: The S1021 node computing power analysis includes the following steps: S10211, Local execution delay calculation: define f i is the node computing power, c represents the cycle of processing one bit of data, d i Indicates the size of the task data. When the computing task is offloaded to the local computer, the computing delay is: where β i Indicates the CPU ratio of the end node allocated to task i; S10212, local execution power consumption calculation: The energy consumption generated by task i in local calculation is E i =p i T i , where p i Indicates the power of local execution; S10213, calculation of unloaded uplink rate: When the task is unloaded from node i to node j for execution, the bandwidth of node j is B, and the bandwidth proportion allocated by node j to node i is λ ij , the power of node i uploading data is P i up , the channel gain in the wireless channel is H i , the distance between the two nodes is d(i,j), the noise gain of the channel is N0, the path loss index of the transmission channel is ξ, and the margin introduced to meet the uplink signal-to-noise ratio is Γ(g up ), the calculation task uplink rate is S10214, calculation of uplink unloading delay: The transmission delay of the uplink unloading task is S10215, calculation of uplink power consumption for unloading: The uplink transmission energy consumption is S10216, calculation of unloading execution delay: The time required for the task to be unloaded from node i to be executed at node j is where f j is the computing power of node j; S10217, offload execution power consumption calculation: the energy consumption of the corresponding calculation task for the execution task is S10218, offload downlink rate calculation: The downlink and uplink have the same channel environment. When the task calculation is completed and offloaded from node j to node i for execution, the bandwidth of node i is B, and the bandwidth proportion allocated by node i to node j is λ ij , the power of the downlink data of node j is P i do , the channel gain in the wireless channel is H i , the distance between the two nodes is d(i,j), the noise gain of the channel is N0, the path loss index of the transmission channel is ξ, and the margin introduced to meet the uplink signal-to-noise ratio is Γ(g up ), the downlink rate of the calculation task is: S10219, calculation of downlink unloading delay: The transmission delay of downlink unloading task is S102110, calculation of downlink power consumption when unloading: the downlink transmission energy consumption is S102111, calculation of total offloading execution time: The total time from offloading from node i to executing the computing task at node j is S102112, calculation of total power consumption for offloading execution: The total power consumption of offloading the computing task from node i to node j is S102113, Task processing cost calculation: Define the total cost of local calculation as C i =αT i +(1-α)E i ; The total cost of the offloading calculation is The calculation results of these costs are used for scheduling decisions to determine on which node the task is executed more economically and efficiently, and computing requests are sent in sequence to a group of nodes arranged in ascending order of computing costs.

5. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 3, characterized in that: The step S1023 of selecting candidate nodes specifically includes the following steps: S10231, refresh the node status information list: refresh the resource list and connection status matrix to obtain the latest status; S10232, extract node: sequentially retrieve node U from node list U i , each node is extracted only once in a single task cycle, and the number of extractions is counted as ξ=i; S10233, initial screening of time-invariant nodes: The three time-invariant properties of candidate execution nodes, namely security, compatibility, and computational accuracy, will not change with unstable connection conditions such as network jitter. For the requirements of the computing task on these three points, a preliminary screening is performed to narrow the range of candidate nodes and form a preliminary candidate list U primary ={U1,U2......U n }, n≤N; S10234, final screening of time-varying nodes: The resources, computing power, storage space, and latency jitter of candidate execution nodes will change with unstable connection conditions such as network jitter. For the requirements of computing tasks, the candidate list U primary Nodes that meet the time-varying property are screened to form a final candidate list U final ={U1,U2......U m },m≤n.

6. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 5, characterized in that: The S10233 time-invariant node initial screening specifically includes the following steps: S102331, determine whether the accuracy meets the requirements of the computing task: the cloud uses double-precision or single-precision floating-point numbers for high-precision calculations, and the edge and terminal devices use half-precision or lower-precision numerical representations due to resource limitations. According to the processing and analysis requirements of the calculated data, if the calculation accuracy matches, go to step S102332, otherwise go to step S10232; S102332, determine whether the node compatibility meets the computing task requirements: check whether the software version running on the current node matches the task requirements, and whether the hardware supports the features required by the task. If the computing task requirements are compatible with the node software and hardware, go to step S102333; otherwise, go to step S10232; S102333, determine whether the node security meets the computing task requirements: determine whether the current node meets the security requirements, ensure that the node meets industry standards and regulatory requirements, and if the node security meets the computing task requirements, add the node to the sequence U. primary Otherwise, go to step S10232; S102334, determine ξ=N: when ξ<N, the nodes have not been traversed yet, go to S10232; when ξ=N, the N nodes have been traversed, go to S102325; S102335, primary candidate list generation: after the traversal is completed, a primary candidate list U is formed primary ={U1,U2......U n }, n≤N.

7. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 6, characterized in that: The final screening of the degeneration node at S10234 specifically includes the following steps: S102341: From the node list U primary Node U is retrieved sequentially i , each node is extracted only once in a single task cycle, and the number of extractions is counted as ζ=i; S102342, judgment C n <C r : Check the computing capacity of the current node resource list, for the total node resource C i , the node has used resources C u , calculate the remaining resources of the node C r =C i -C u , by calculating the task data volume d i Estimate the amount of resources required for the task C n , if C n <C r Then go to step S102343, otherwise go to step S102341; S102343, judge T<L available : Check the load capacity L in the current node resource list i , the node has used a load of L u , calculate the maximum available resources under the condition of ensuring the remaining m% resource utilization rate is Calculate the actual available resources as Calculating task complexity Where k is a constant and n is a complexity index; the processing efficiency of the computational task is B p is the processing bandwidth of the system, and the node hardware performance is Where P is the number of floating-point operations per second of the CPU, and the total load of the computing task is T = T c +T e +T h , if T<L available Then go to step S102344, otherwise go to step S102341; S102344, judge d i <S r ': Check the storage capacity of the current node resource list, for the total physical memory S of the node i , the node has used storage space S u , calculate the remaining memory of the node S r =S i -S u , p% of the storage space is reserved for redundancy and backup, and the actual available storage space is calculated as If d i <S r 'Then go to step S102345, otherwise go to step S102341; S102345, judging whether the real-time performance of the node meets the requirements: evaluating the real-time performance requirements of the computing task, for tasks with high real-time performance, if the node delay jitter is low and meets the requirements, go to step S102346, otherwise go to step S102341; S102346, judgment or T i <T R :The response time requirement of the computing task is T R , if the current node is a local node and T i <T R , or the current node is a heretic node and Add the node to sequence O and go to step S102347, otherwise go to step S102341; S102347, determine ζ=n: when ζ<n, the node traversal is not completed, go to S102341; when ξ=n, the traversal of n nodes is completed, go to S102348; S102348, determine the ultimate candidate list: finally form the candidate node list U final ={U1,U2......U m },m≤n, where m is the number of candidate nodes, U i Represents an alternative node.

8. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 1, characterized in that: The S103 task scheduling execution specifically includes the following steps: S1031, sorting candidate nodes: only refresh the status information list of nodes in O, and final ={U1,U2......U m }, the time-varying properties of all nodes in the list are refreshed, the nodes that meet the requirements are sorted from best to worst according to the scheduling requirements, and the nodes that do not meet the calculation requirements are marked and placed at the end of the list, forming a sequential node list R = {R1, R2...R m }; The sorting process is related to the scheduling target; for minimizing the scheduling target, the nodes are sorted in ascending order according to the scheduling target, so that the nodes with smaller scheduling target values ​​are sorted first; for maximizing the scheduling target, the nodes are sorted in descending order according to the scheduling target, so that the nodes with larger scheduling target values ​​are sorted first; S1032, generate a neighboring node list: identify the node list R={R1, R2...R m }, extract the neighboring nodes of the node to generate the neighboring node list R N = {R1, R2......R k }; S1033, neighboring node refresh: only for R N Update the status information list of the nodes in R N = {R1, R2......R k } The list is refreshed when the property changes. If R N If the marked node meets the calculation requirements, the mark is removed. If the unmarked node does not meet the calculation requirements due to instability, the node is marked. S1034, sorting neighboring nodes: sort the marked nodes from R N Delete it and make a N The unmarked nodes are reordered according to the scheduling goal; S1035, judge R N Is it empty: When R N When there is no node in, jump to S1031; S1036, determine whether R1 meets the calculation requirements: the task generates node P i To R N The first node R1 sends a task execution request and senses the node status information to determine whether the node meets the computing requirements. If the node meets the requirements, a timeout period τ is set. out , start timing from the time the task is sent, and wait for E i Return a confirmation response; if the node does not meet the calculation requirements, mark the node and jump to S1033; S1037, determine whether the execution node is confirmed: if τ out Within time P i After receiving the response from R1, the execution node is defined as the service node S. i , if τ out No response was received within the time, P i Actively abandon the execution node, mark the node and go to S1033; S1038, the task generation node sends the task: the request includes necessary parameters and configuration information so that the execution node can understand and execute the task; S1039, computing task allocation: service node S i Perform verification and preparation work, add tasks to their task queues, and allocate available computing resources; S10310, computing task starts: service node S i Initializes the required execution environment, loads necessary applications, dependencies, and input data, and starts executing assigned tasks.

9. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 1, characterized in that: The S104 task operation monitoring specifically includes the following steps: S1041, determine whether the service task is started normally: Node P i Monitor the startup status of the task on the service node to determine whether the task is successfully started on the expected node; since the service node is time-varying, when the transmission demand for task execution is not met or the service node fails, the node needs to perform task unloading processing and go to step S1042, otherwise go to step S1043; S1042, failed node marking: When the actual computing task is being performed, the dynamics and adaptability of the distributed system need to be monitored and adjusted to cope with these changes, maintain the stability and efficiency of the system, mark the failed nodes, and go to S1033; S1043, executing computing tasks: preprocessing the data and selecting a suitable algorithm or model according to task requirements; S1044, calculation result processing: after the task is executed, the service node processes the calculation result, verifies, formats and stores the result. After the processing is completed, the result is returned to the node requesting the task or stored in a specified location; S1045, computing task completed: the service node completes the task of this collaborative execution and restores all settings to the initial state.

10. The cloud-edge-device collaborative scheduling method in an unstable connection scenario according to claim 9, characterized in that: The S1045 computing task completion specifically includes the following steps: S10451, release computing resources: the task node releases all resources related to the task, including CPU, memory and other computing resources; S10452, Task log record: Provides log information of task startup, including startup time, node information, and warnings or errors during task startup; S10453, Status Update and Notification: The service node updates the task status to completed and notifies other nodes in the node list of this status change; S10454, waiting for task issuance: the service node decides whether to schedule new computing tasks based on the current resource status and task queue; if there are pending tasks, the node will select the next task to execute according to the predetermined scheduling strategy; if there are no pending tasks, the node may enter standby mode and wait for the arrival of new tasks.

Citation Information

Patent Citations

  • Space-based computing autonomous service discovery and collaboration method based on subscription and publishing

    CN114500579A

  • Service scheduling method and device, electronic equipment and computer readable storage medium

    CN115934264A

  • Cloud edge resource collaborative management system in weak network connection environment

    CN118842798A

  • Computing power resource scheduling method and apparatus

    WO2024187479A1