Edge node, scheduler, dynamic scheduling method and system of edge computing scenario

By working collaboratively between edge nodes and the scheduler, and dynamically monitoring network quality and node load, dynamic task scheduling is achieved. This solves the problem of low scheduling efficiency caused by differences in network quality among edge nodes, and improves resource utilization and user experience.

CN119094396BActive Publication Date: 2026-01-13SHANDONG LANGCHAO YUNTOU INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411224801.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-03
Publication Date
2026-01-13
Estimated Expiration
2044-09-03

AI Technical Summary

Technical Problem

Existing static scheduling algorithms cannot meet the communication needs of edge nodes with different network qualities, resulting in low task scheduling efficiency.

Method used

A dynamic scheduling method is adopted, which monitors the network quality between edge nodes through network probes, and uses a scheduler to perform task requirement analysis, node load assessment and dynamic scheduling decisions to achieve dynamic scheduling and optimization of tasks.

Benefits of technology

It improves the adaptability and resource utilization of task scheduling, reduces task waiting time and execution latency, enhances user experience, and can automatically adjust task allocation to meet network quality requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119094396B_ABST
    Figure CN119094396B_ABST
Patent Text Reader

Abstract

The application provides an edge node, a scheduler, a dynamic scheduling method and system for an edge computing scenario. The scheduler calculates network quality key indicators between each edge node according to round trip times and loss conditions of test data packets recorded by each edge node. The scheduler determines an execution order and a scheduling strategy of a task. The scheduler determines a dynamic scheduling strategy of the task according to the network quality key indicators between each edge node, the execution order and the scheduling strategy of the task, and a load condition of each edge node, allocates each task to each edge node, and monitors an execution condition of the task in real time, and adjusts and optimizes as required. The application can dynamically adjust the task according to network quality, and schedule the service to the edge node meeting the requirements, thereby making up the lack of the scheduling ability of the edge computing task scheduler in terms of network quality and bandwidth.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] One or more embodiments of the present invention relate to network communication technology, and more particularly to a dynamic scheduling method and system for edge nodes, schedulers, and edge computing scenarios. Background Technology

[0002] As edge computing technology matures, more and more communication applications require real-time data processing and analysis at edge nodes. Currently, a pre-set scheduling scheme is used to pre-assign corresponding tasks to each edge node. Subsequently, the tasks are directly forwarded to the edge node so that it can perform real-time data processing and analysis.

[0003] With the ever-increasing demand for communication, the volume and complexity of tasks are also growing, necessitating the use of a large number of edge nodes. Because these edge nodes are distributed across different locations in the network, their network quality varies. Current practices, which pre-assign tasks to fixed edge nodes without considering factors such as network quality, are no longer adequate for practical needs due to the static scheduling algorithms. Summary of the Invention

[0004] One or more embodiments of the present invention describe a dynamic scheduling method and system for edge nodes, schedulers, and edge computing scenarios, which adopts a dynamic scheduling approach to meet business requirements.

[0005] According to the first aspect, an edge node is provided, which is deployed at the network edge, with different edge nodes distributed at different network edge locations; each edge node includes:

[0006] The network probe has both client and server functions. When the network probe acts as a server, it receives connection requests from network probes in other edge nodes. When the network probe acts as a client, it actively connects to network probes in other edge nodes, transmits predetermined test data packets, and records the round-trip time and loss status of the test data packets.

[0007] The task execution module is configured to report the round-trip time and loss status of the recorded test data packets to the scheduler so that the scheduler can calculate key network quality indicators between each edge node; and to receive the scheduler's assignments and perform data processing and analysis on the tasks assigned by the scheduler.

[0008] The key network quality indicators include at least one of the following: network latency, bandwidth, and packet loss rate.

[0009] According to the second aspect, a scheduler is provided, which is deployed among various edge nodes. The scheduler includes: a network quality monitoring module, a task requirement analysis module, a node load assessment module, a dynamic scheduling decision module, and a scheduling execution monitoring module; wherein...

[0010] The network quality monitoring module is configured to receive the round-trip time and loss status of test data packets sent by network probes in each edge node, and calculate key network quality indicators between each edge node based on the round-trip time and loss status of each received test data packet.

[0011] The task requirement analysis module is configured to listen to and read the definitions of each task, classify the tasks into different types, define a corresponding priority for each type, analyze the dependencies between tasks, and determine the execution order and scheduling strategy of the tasks based on the priorities and dependencies.

[0012] The node load assessment module is configured to monitor the load status of each edge node;

[0013] The dynamic scheduling decision module is configured to determine the dynamic scheduling strategy of tasks based on the key network quality indicators between each edge node calculated by the network quality monitoring module, the execution order and scheduling strategy of tasks determined by the task requirement analysis module, and the load status of each edge node monitored by the node load assessment module.

[0014] The scheduling and execution monitoring module is configured to allocate each task to each edge node according to the dynamic scheduling strategy of the task, monitor the execution status of the task in real time, and make adjustments and optimizations as needed to ensure that the task can be executed in accordance with the dynamic scheduling strategy.

[0015] The task requirements analysis module is configured to parse the user's definition of the task execution group in a declarative YAML format to obtain at least one of the following: task type, dependencies between the various subtasks to be deployed, and the required maximum latency and minimum bandwidth.

[0016] The dynamic scheduling decision module is configured to execute: parse the following scheduling algorithm specified by the user via declarative YAML:

[0017] Load balancing algorithm: Based on the load of edge nodes, a load balancing algorithm is used to distribute tasks to edge nodes with lower loads for execution;

[0018] Network-aware scheduling algorithm: Based on network quality information, select edge nodes with better network quality as task execution targets;

[0019] Dynamic scheduling strategy: Combining task type and execution time limit factors, a dynamic scheduling strategy is adopted to schedule tasks in real time to adapt to different task requirements and system states;

[0020] The scheduling execution monitoring module is further configured to: further allocate each task to each edge node according to the load balancing algorithm and the network-aware scheduling algorithm.

[0021] The dynamic scheduling decision module is configured to execute:

[0022] Determine whether the edge node network meets the requirements of the task group, filter out edge nodes that do not meet the requirements, and only keep edge nodes that meet the requirements.

[0023] When multiple edge nodes meet the requirements, the network quality of these multiple edge nodes is used to score them. Through simulated scheduling, the sum of the scores of the edge node groups under various scheduling conditions is calculated to determine the group of edge nodes with the highest score. The task group is then scheduled to the edge node with the highest score in that group.

[0024] According to the third aspect, a dynamic scheduling system for edge computing scenarios is provided, the system comprising: multiple edge nodes distributed at different network edge locations in any embodiment of the present invention, and a scheduler in any embodiment of the present invention.

[0025] According to the fourth aspect, a dynamic scheduling method for edge computing scenarios based on the system of the embodiments of the present invention is provided, the method comprising:

[0026] Each edge node transmits a predetermined test data packet to other edge nodes, records the round-trip time and loss status of the test data packet, and reports it to the scheduler.

[0027] The scheduler calculates key network quality indicators between edge nodes based on the round-trip time and loss status of each received test data packet.

[0028] The scheduler determines the execution order and scheduling strategy of tasks based on their priorities and dependencies.

[0029] The scheduler determines the dynamic scheduling strategy for tasks based on key network quality indicators between edge nodes, the execution order and scheduling strategy of tasks, and the load of each edge node.

[0030] The scheduler distributes tasks to various edge nodes and monitors task execution in real time, making adjustments and optimizations as needed.

[0031] Each edge node receives scheduling from the scheduler and performs data processing and analysis on the tasks assigned by the scheduler.

[0032] The method further includes:

[0033] The task group is defined using declarative YAML to define the task type, the dependencies between the subtasks to be deployed, and at least one of the required maximum latency and minimum bandwidth.

[0034] And / or,

[0035] The scheduling algorithm can be specified using declarative YAML.

[0036] According to a fifth aspect, a computing device is provided, including a memory and a processor, wherein the memory stores executable code, and the processor executes the executable code to implement the method described in any embodiment of the present invention.

[0037] As can be seen, the edge node, scheduler, and dynamic scheduling method and system for edge computing scenarios provided in the embodiments of the present invention can dynamically adjust tasks according to network quality and schedule services to edge nodes that meet the requirements, thereby making up for the lack of ability of edge computing task schedulers to schedule based on factors such as network quality and bandwidth. The various embodiments of the present invention also have the following beneficial effects:

[0038] 1. Simple and easy to use: Users can deploy various task groups to edge nodes that meet network latency and bandwidth requirements simply by declaring them in YAML.

[0039] 2. Strong real-time performance: It utilizes network quality information to make real-time task scheduling decisions and deploys task groups on edge node groups that meet the requirements, making it more adaptable.

[0040] 3. High resource utilization: The allocation of tasks is dynamically adjusted according to the node load and task requirements, which improves the efficiency of resource utilization.

[0041] 4. Improve user experience: Optimized task scheduling reduces task waiting time and execution delay, thus improving user experience.

[0042] 5. Multiple task groups can be deployed simultaneously. The scheduler will automatically sort the tasks according to their dependencies and find the optimal deployment order that meets the conditions.

[0043] 6. It will continuously monitor the network quality of the edge nodes where the task is located, and will automatically trigger rescheduling when the task requirements are not met.

[0044] 7. The entire process is completed automatically by the program, without the user's awareness. Attached Figure Description

[0045] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0046] Figure 1 This is a schematic diagram of the architecture of a dynamic scheduling system for an edge computing scenario in one embodiment of the present invention.

[0047] Figure 2 This is a schematic diagram of the structure of an edge node in one embodiment of the present invention.

[0048] Figure 3 This is a schematic diagram of the scheduler in one embodiment of the present invention.

[0049] Figure 4 This is a flowchart of a dynamic scheduling method for an edge computing scenario in one embodiment of the present invention. Detailed Implementation

[0050] As edge computing technology matures, more and more applications require real-time data processing and analysis at edge nodes. However, due to differences in network quality between edge nodes and the diversity of task types and load conditions, traditional static scheduling algorithms can no longer meet practical needs. Therefore, a method that can dynamically adjust task scheduling based on network quality is required. This invention can calculate the latency and bandwidth between various edge nodes and schedule services to edge nodes that meet the requirements, thereby compensating for the lack of edge computing task schedulers in scheduling based on network quality and bandwidth.

[0051] The solution provided by the present invention will now be described with reference to the accompanying drawings.

[0052] First, it should be noted that the terminology used in the embodiments of this invention is for the purpose of describing specific embodiments only and is not intended to limit the invention. The singular forms “a,” “the,” and “the” used in the embodiments of this invention and the appended claims are also intended to include the plural forms, unless the context clearly indicates otherwise.

[0053] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.

[0054] To facilitate understanding of the method provided by this invention, the system architecture involved and applicable to this invention will first be described. For example... Figure 1 As shown, the system includes: multiple edge nodes 101 distributed at different network edge locations, and a scheduler 102 located between the edge nodes.

[0055] The function and structure of edge node 101 can be implemented using the edge nodes provided in any embodiment of the present invention. For example, it can be implemented using a combination of... Figure 2 Any type of edge node described.

[0056] The functions and structure of scheduler 102 can be implemented using the scheduler provided in any embodiment of the present invention. For example, it can be implemented using a combination of... Figure 3 Any scheduler as described.

[0057] In this context, edge nodes are logical abstractions of the fundamental common capabilities of various edge-side products, such as edge gateways, edge controllers, and edge servers. These products possess common capabilities including real-time data analysis, local data storage, and real-time network connectivity. For example, multiple edge nodes distributed at different network edge locations could be various cameras located at different network edge locations, relatively far from cloud servers. Because the number of edge nodes is large and they are scattered, with varying network conditions, it is necessary to establish... Figure 1 The monitoring network shown provides unified monitoring and scheduling of the various distributed edge nodes.

[0058] It should be understood that Figure 1 The number of edge nodes and schedulers shown is merely illustrative. Any number can be selected and deployed as needed for implementation.

[0059] See Figure 1 The scheduler can calculate and record the network quality and resource usage of each edge node in real time, schedule task groups to edge nodes that meet the requirements, and continuously monitor the network quality of the edge nodes where the task groups are located. When the network of an edge node fails to meet the network quality requirements of the task for a period of time, the scheduler will automatically trigger rescheduling to find a suitable edge node for the task group, always meeting the network quality requirements of the task group and ensuring the execution performance of the task group.

[0060] The edge node, scheduler, and dynamic scheduling method and system for edge computing scenarios provided in this invention can dynamically adjust tasks based on network quality and schedule services to edge nodes that meet the requirements, thereby making up for the lack of edge computing task schedulers in terms of scheduling capabilities based on factors such as network quality and bandwidth.

[0061] The edge nodes and scheduler in the system of this invention will be described below.

[0062] Figure 2 This is a schematic diagram of the edge node structure in one embodiment of the present invention. See also... Figure 1 and Figure 2 In one embodiment of the present invention, edge nodes are deployed at the network edge, with different edge nodes distributed at different network edge locations; each edge node includes:

[0063] Network probe 201 has both client and server functions. When the network probe acts as a server, it receives connection requests from network probes in other edge nodes. When the network probe acts as a client, it actively connects to network probes in other edge nodes, transmits predetermined test data packets, and records the round-trip time and loss status of the test data packets.

[0064] The task execution module 202 is configured to report the round-trip time and loss status of the recorded test data packets to the scheduler so that the scheduler can calculate key network quality indicators between each edge node; and to receive the scheduler's schedule and perform data processing and analysis on the tasks assigned by the scheduler.

[0065] Key network quality indicators include at least one of the following: network latency, bandwidth, and packet loss rate.

[0066] exist Figure 2 In the edge nodes shown, network probe 201 is responsible for periodically sending test data packets to each other and recording the round-trip time and packet loss. The network probe acts as both a client and a server. As a client, it actively connects to the servers of other edge nodes, and simultaneously receives connections from other edge nodes. Once a connection is established between the client and server, the client uses techniques such as packet pairs and packet trains to transmit special test traffic. This data can also be transmitted and received via network message protocols such as ICMP or UDP. This allows for testing the network latency and maximum bandwidth between nodes without affecting existing network traffic. By collecting this data, the scheduler can subsequently calculate metrics such as network latency, bandwidth, and packet loss rate between each edge node.

[0067] Figure 3 This is a schematic diagram of the scheduler in one embodiment of the present invention. See also... Figure 1 and Figure 3The scheduler is located between the edge nodes and includes: a network quality monitoring module 301, a task requirement analysis module 302, a node load assessment module 303, a dynamic scheduling decision module 304, and a scheduling execution monitoring module 305; among which,

[0068] The network quality monitoring module 301 is configured to receive the round-trip time and loss status of test data packets sent by network probes in each edge node, and calculate key network quality indicators between each edge node based on the round-trip time and loss status of each received test data packet.

[0069] The task requirement analysis module 302 is configured to listen to and read the definitions of each task, classify the tasks into different types, define a corresponding priority for each type, analyze the dependencies between tasks, and determine the execution order and scheduling strategy of the tasks based on the priorities and dependencies.

[0070] The node load assessment module 303 is configured to monitor the load status of each edge node;

[0071] The dynamic scheduling decision module 304 is configured to determine the dynamic scheduling strategy of tasks based on the key network quality indicators between each edge node calculated by the network quality monitoring module 301, the execution order and scheduling strategy of tasks determined by the task requirement analysis module 302, and the load status of each edge node monitored by the node load assessment module 303.

[0072] The scheduling execution monitoring module 305 is configured to allocate each task to each edge node according to the dynamic scheduling strategy of the task, and monitor the execution status of the task in real time, and make adjustments and optimizations as needed to ensure that the task can be executed in accordance with the dynamic scheduling strategy.

[0073] As can be seen, in the scheduler provided by this invention, the above five modules work together with the edge nodes to form a complete dynamic scheduling system. When a new task arrives or the network quality changes, the system dynamically adjusts the allocation and execution order of tasks according to a predefined scheduling strategy and real-time monitoring data to maximize resource utilization and task execution performance.

[0074] The specific implementation is as follows:

[0075] In this embodiment of the invention, a network quality monitoring module 301 is deployed between edge nodes to monitor key network quality indicators such as network latency, bandwidth, and packet loss rate in real time. Using network probes and network monitoring tools, test data packets are periodically sent between edge nodes, and information such as round-trip time and packet loss is recorded. This data can be transmitted and received via network message protocols such as ICMP or UDP. The network quality monitoring module 301 performs real-time monitoring using either timed polling or event-driven methods to ensure the latest network quality information is obtained in real time. Specifically, the timed polling or event-driven method collects and aggregates all data recorded by the network probes, infers network quality by monitoring network traffic and routing information, performs routing analysis, analyzes the data transmission path and routing status in the network to determine the optimal data transmission path, and dynamically models and analyzes the network topology and link status.

[0076] In this embodiment of the invention, the task requirement analysis module 302 listens to and reads the definitions of each task group, divides the tasks into different types according to the characteristics and execution requirements of the tasks, and defines a corresponding priority for each type, such as real-time tasks, batch processing tasks, etc.

[0077] Regarding task execution time limit settings: The task requirement analysis module 302 will listen to and read the definitions of each task group, and set the execution time limit or maximum response time for the task based on user needs or system constraints, execution time requirements (such as maximum response time, maximum execution duration), network requirements (maximum latency, minimum bandwidth), etc., to ensure that the task is completed within the specified time.

[0078] For task dependency analysis: The task requirement analysis module 302 analyzes the dependencies between tasks, determines the execution order and scheduling strategy of tasks, so as to ensure that the data dependencies between tasks are satisfied, so that the subsequent scheduling decision module can optimize the scheduling.

[0079] In this embodiment of the invention, the node load assessment module 303 is responsible for monitoring the load status of edge nodes, including the utilization of resources such as CPU, memory, and storage. Node load can be acquired and statistically analyzed in real time through system monitoring tools and the designed monitoring module. The monitoring module can periodically collect node load information, including indicators such as CPU utilization, memory usage, and disk I / O, and analyze and judge it according to predefined load thresholds. If the node load exceeds the set threshold, the system can mark the node as having a high load, affecting scheduling decisions.

[0080] In this embodiment of the invention, the dynamic scheduling decision module 304 can be implemented according to specific scheduling strategies and algorithms. Combining network quality, task requirements, and node load, it employs a suitable scheduling algorithm to dynamically schedule tasks, thereby achieving efficient resource utilization and maximizing task execution performance. Users can specify the corresponding scheduling algorithm using declarative YAML, including the following algorithms:

[0081] 1) Load balancing algorithm: Based on the node load, a load balancing algorithm is used to distribute tasks to nodes with lower loads to avoid the problem of uneven node load.

[0082] 2) Network-aware scheduling algorithm: Considering network quality information, select nodes with better network quality as task execution targets to reduce task execution time and transmission delay.

[0083] 3) Dynamic scheduling strategy: Combining factors such as task type and execution time limit, a dynamic scheduling strategy is adopted to schedule tasks in real time to adapt to different task requirements and system states.

[0084] Depending on the actual situation, an appropriate scheduling algorithm can be selected for optimization decisions to meet the task execution requirements and system resource constraints.

[0085] Therefore, in one embodiment of the present invention, the task requirement analysis module 302 is configured to perform: parsing the user's definition of the task execution group in a declarative YAML manner to obtain at least one of the task type, the dependencies between the various subtasks to be deployed, and the required maximum latency and minimum bandwidth.

[0086] Therefore, in one embodiment of the present invention, the dynamic scheduling decision module 304 is configured to execute: parsing the following scheduling algorithm specified by the user via declarative YAML:

[0087] Load balancing algorithm: Based on the load of edge nodes, a load balancing algorithm is used to distribute tasks to edge nodes with lower loads for execution;

[0088] Network-aware scheduling algorithm: Based on network quality information, select edge nodes with better network quality as task execution targets;

[0089] Dynamic scheduling strategy: Combining task type and execution time limit factors, a dynamic scheduling strategy is adopted to schedule tasks in real time to adapt to different task requirements and system states;

[0090] The scheduling execution monitoring module 305 is further configured to: further allocate each task to each edge node according to the load balancing algorithm and the network-aware scheduling algorithm.

[0091] In one embodiment of the present invention, the dynamic scheduling decision module 304 is configured to execute:

[0092] Determine whether the edge node network meets the requirements of the task group, filter out edge nodes that do not meet the requirements, and only keep edge nodes that meet the requirements.

[0093] When multiple edge nodes meet the requirements, the network quality of these multiple edge nodes is used to score them. Through simulated scheduling, the sum of the scores of the edge node groups under various scheduling conditions is calculated to determine the group of edge nodes with the highest score. The task group is then scheduled to the edge node with the highest score in that group.

[0094] As can be seen, in the process of calculating scheduling decisions, the dynamic scheduling decision module 304 serves as the core computing component.

[0095] It filters and selects tasks based on the deployment order and network quality conditions such as network latency and maximum bandwidth of each node. When it finds edge node groups that meet the requirements, it deploys the tasks to these edge node groups. This process consists of two steps: filtering and scoring.

[0096] Filtering: First, determine whether the edge node network meets the requirements of the task group, filter out edge nodes that do not meet the requirements, and keep only edge nodes that meet the requirements.

[0097] Scoring: When multiple edge nodes meet the requirements, the scheduling calculator will score each edge node. The score is based on the network quality of the edge node. The better the network quality of the edge node, the higher the score. The scheduling calculator first calculates the sum of the scores of the edge node group under various scheduling conditions through simulated scheduling. The higher the score, the better the quality of the entire network line of the task group, and the more suitable it is for scheduling. Through this process, the group of edge nodes with the highest score is found, which is the most suitable edge node group to schedule the task group.

[0098] In addition, it will automatically detect the network quality between the edge nodes where the deployed task groups are located. When the network quality does not meet the requirements of the task group for a period of time, it will trigger the rescheduling of the task group. The scheduling calculator will use the latest network quality to find edge node groups that meet the requirements. When a matching edge node group is found, it will be rescheduled in sequence.

[0099] In this embodiment of the invention, the scheduling execution monitoring module 305 implements the scheduling results into the edge computing system and monitors the execution status of tasks in real time, making adjustments and optimizations as needed to ensure that tasks can be executed effectively according to the scheduling strategy. The scheduling execution monitoring module 305 includes two sub-modules: a task manager and a scheduling executor. The scheduling executor is responsible for assigning tasks to appropriate edge nodes and monitoring the execution status and results of the tasks. The task manager is responsible for managing the entire task execution. If an abnormal situation occurs during task execution, the task manager can handle it according to a predefined processing strategy, such as rescheduling the task or notifying the user. The scheduling execution monitoring module 305 has the following mechanisms:

[0100] Task allocation and scheduling: Based on scheduling strategies and decisions, tasks are actually allocated to appropriate edge nodes, and the execution status and progress of tasks are monitored.

[0101] Anomaly handling and self-healing mechanism: Implement anomaly handling and self-healing mechanism to promptly detect and handle abnormal situations during task execution, such as edge node failures and task timeouts, and trigger rescheduling or notify users according to policies to ensure the stability and reliability of the system.

[0102] Performance monitoring and optimization: Monitor system performance metrics, such as task response time and resource utilization, and optimize scheduling strategies based on monitoring results to improve the overall performance and efficiency of the system.

[0103] One embodiment of the present invention also proposes a dynamic scheduling method for edge computing scenarios based on any system of the present invention, see [link to relevant documentation]. Figure 4 The method includes:

[0104] Step 401: Each edge node transmits a predetermined test data packet to other edge nodes, records the round-trip time and loss status of the test data packet, and reports it to the scheduler;

[0105] Step 403: The scheduler calculates key network quality indicators between edge nodes based on the round-trip time and loss status of each received test data packet.

[0106] Step 405: The scheduler determines the execution order and scheduling strategy of tasks based on their priorities and dependencies.

[0107] Step 407: The scheduler determines the dynamic scheduling strategy for tasks based on the key network quality indicators between each edge node, the execution order and scheduling strategy of the tasks, and the load of each edge node.

[0108] Step 409: The scheduler assigns each task to each edge node and monitors the execution status of the tasks in real time, making adjustments and optimizations as needed;

[0109] Step 411: Each edge node receives the scheduler's schedule and performs data processing and analysis on the tasks assigned by the scheduler.

[0110] In the method of the present invention, the method further includes:

[0111] The task group is defined using declarative YAML to define the task type, the dependencies between the subtasks to be deployed, and at least one of the required maximum latency and minimum bandwidth.

[0112] In the method of the present invention, the method further includes: specifying the scheduling algorithm by declarative YAML.

[0113] The various embodiments of the present invention have the following beneficial effects:

[0114] 1. Simple and easy to use: Users can deploy various task groups to edge nodes that meet network latency and bandwidth requirements simply by declaring them in YAML.

[0115] 2. Strong real-time performance: It utilizes network quality information to make real-time task scheduling decisions and deploys task groups on edge node groups that meet the requirements, making it more adaptable.

[0116] 3. High resource utilization: The allocation of tasks is dynamically adjusted according to the node load and task requirements, which improves the efficiency of resource utilization.

[0117] 4. Improve user experience: Optimized task scheduling reduces task waiting time and execution delay, thus improving user experience.

[0118] 5. Multiple task groups can be deployed simultaneously. The scheduler will automatically sort the tasks according to their dependencies and find the optimal deployment order that meets the conditions.

[0119] 6. It will continuously monitor the network quality of the edge nodes where the task is located, and will automatically trigger rescheduling when the task requirements are not met.

[0120] 7. The entire process is completed automatically by the program, without the user's awareness.

[0121] It should be noted that the above-mentioned devices are typically implemented on the server side. They can be set up on independent servers, or some or all of the devices can be combined and installed on the same server. This server can be a single server or a server cluster consisting of multiple servers. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system. The above-mentioned devices can also be implemented on computer terminals with strong computing capabilities.

[0122] One embodiment of the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method in any of the embodiments of the specification.

[0123] One embodiment of the present invention provides a computing device, including a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, it implements the method of any embodiment in the specification.

[0124] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the apparatus of the embodiments of the present invention. In other embodiments of the specification, the above-described apparatus may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0125] The various embodiments in this invention are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0126] Those skilled in the art will recognize that, in one or more of the examples above, the functions described in this invention can be implemented using hardware, software, widgets, or any combination thereof. When implemented in software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium.

[0127] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made on the basis of the technical solution of the present invention should be included within the scope of protection of the present invention.

Claims

1. An edge node, characterized in that, This edge node is deployed at the network edge, with different edge nodes distributed at different network edge locations; each edge node includes: The network probe has both client and server functions. When the network probe acts as a server, it receives connection requests from network probes in other edge nodes. When the network probe acts as a client, it actively connects to network probes in other edge nodes, transmits predetermined test data packets, and records the round-trip time and loss status of the test data packets. The task execution module is configured to report the round-trip time and loss status of the recorded test data packets to the scheduler so that the scheduler can calculate key network quality indicators between each edge node; and to receive the scheduler's assignments and perform data processing and analysis on the tasks assigned by the scheduler.

2. The edge node according to claim 1, characterized in that, The key network quality indicators include at least one of the following: network latency, bandwidth, and packet loss rate.

3. A scheduler, characterized in that, The scheduler is deployed among various edge nodes and includes: a network quality monitoring module, a task requirement analysis module, a node load assessment module, a dynamic scheduling decision module, and a scheduling execution monitoring module; wherein... The network quality monitoring module is configured to receive the round-trip time and loss status of test data packets sent by network probes in each edge node, and calculate key network quality indicators between each edge node based on the round-trip time and loss status of each received test data packet. The task requirement analysis module is configured to listen to and read the definitions of each task, classify the tasks into different types, define a corresponding priority for each type, analyze the dependencies between tasks, and determine the execution order and scheduling strategy of the tasks based on the priorities and dependencies. The node load assessment module is configured to monitor the load status of each edge node; The dynamic scheduling decision module is configured to determine the dynamic scheduling strategy of tasks based on the key network quality indicators between each edge node calculated by the network quality monitoring module, the execution order and scheduling strategy of tasks determined by the task requirement analysis module, and the load status of each edge node monitored by the node load assessment module. The scheduling and execution monitoring module is configured to allocate each task to each edge node according to the dynamic scheduling strategy of the task, monitor the execution status of the task in real time, and make adjustments and optimizations as needed to ensure that the task can be executed in accordance with the dynamic scheduling strategy.

4. The scheduler according to claim 3, characterized in that, The task requirements analysis module is configured to parse the user's definition of the task execution group in a declarative YAML format to obtain at least one of the following: task type, dependencies between the various subtasks to be deployed, and the required maximum latency and minimum bandwidth.

5. The scheduler according to claim 3, characterized in that, The dynamic scheduling decision module is configured to execute: parse the following scheduling algorithm specified by the user via declarative YAML: Load balancing algorithm: Based on the load of edge nodes, a load balancing algorithm is used to distribute tasks to edge nodes with lower loads for execution; Network-aware scheduling algorithm: Based on network quality information, select edge nodes with better network quality as task execution targets; Dynamic scheduling strategy: Combining task type and execution time limit factors, a dynamic scheduling strategy is adopted to schedule tasks in real time to adapt to different task requirements and system states; The scheduling execution monitoring module is further configured to: further allocate each task to each edge node according to the load balancing algorithm and the network-aware scheduling algorithm.

6. The scheduler according to claim 3, characterized in that, The dynamic scheduling decision module is configured to execute: Determine whether the edge node network meets the requirements of the task group, filter out edge nodes that do not meet the requirements, and only keep edge nodes that meet the requirements. When multiple edge nodes meet the requirements, the network quality of these multiple edge nodes is used to score them. Through simulated scheduling, the sum of the scores of the edge node groups under various scheduling conditions is calculated to determine the group of edge nodes with the highest score. The task group is then scheduled to the edge node with the highest score in that group.

7. A dynamic scheduling system for edge computing scenarios, characterized in that, The system includes: multiple edge nodes distributed at different network edge locations, each edge node being an edge node as described in any one of claims 1 to 2, and a scheduler as described in any one of claims 3 to 6 located among the edge nodes.

8. A dynamic scheduling method for edge computing scenarios based on the system described in claim 7, characterized in that, The method includes: Each edge node transmits a predetermined test data packet to other edge nodes, records the round-trip time and loss status of the test data packet, and reports it to the scheduler. The scheduler calculates key network quality indicators between edge nodes based on the round-trip time and loss status of each received test data packet. The scheduler determines the execution order and scheduling strategy of tasks based on their priorities and dependencies. The scheduler determines the dynamic scheduling strategy for tasks based on key network quality indicators between edge nodes, the execution order and scheduling strategy of tasks, and the load of each edge node. The scheduler distributes tasks to various edge nodes and monitors task execution in real time, making adjustments and optimizations as needed. Each edge node receives scheduling from the scheduler and performs data processing and analysis on the tasks assigned by the scheduler.

9. The method according to claim 8, characterized in that, The method further includes: The task group is defined using declarative YAML to define the task type, the dependencies between the subtasks to be deployed, and at least one of the required maximum latency and minimum bandwidth. And / or, The scheduling algorithm can be specified using declarative YAML.

10. A computing device comprising a memory and a processor, wherein the memory stores executable code, and the processor, when executing the executable code, implements the method of any one of claims 8-9.

Citation Information

Patent Citations

  • Task scheduling method and device based on edge computing network

    CN111679904A

  • Network system, client device, and edge network abnormality detection method

    CN116132322A