A task scheduling method separating control plane from data plane

By embedding node load occupancy and dynamic carrying thresholds into the path relaxation rules, and setting safety boundaries and penalties, the problem of path selection not conforming to the actual network state is solved, achieving more efficient task scheduling and stability, and reducing the computational overhead of the control plane.

CN122137771APending Publication Date: 2026-06-02SHANGHAI LIWEI INFORMATION TECHNOLOGY CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHANGHAI LIWEI INFORMATION TECHNOLOGY CO LTD
Filing Date
2026-04-20
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

In existing network architectures where the control plane and data plane are separated, the path calculation phase does not pay enough attention to the load status of nodes during operation. This leads to path selection that does not match the actual network conditions, which can easily cause local congestion and reduced scheduling efficiency. Furthermore, the global recalculation method affects the timeliness and stability of scheduling.

Method used

By obtaining the current load occupancy rate and dynamic load threshold of the node, embedding them into the path relaxation rules, setting safety boundaries and load penalties, constructing a comprehensive scoring function, selecting the target path, and performing local corrections after local migration, updating the node status table, and avoiding global recalculation.

Benefits of technology

It effectively avoids local congestion, improves the real-time performance and stability of scheduling, ensures that path selection is consistent with the actual network state, and reduces control computational overhead.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122137771A_ABST
    Figure CN122137771A_ABST
Patent Text Reader

Abstract

This invention discloses a task scheduling method that separates the control plane and data plane, relating to the field of network resource management technology. It addresses the problem that in path calculation based on static link costs, the path selection result does not match the actual runtime carrying capacity of nodes, easily leading to local congestion, decreased scheduling efficiency, and delayed subsequent state updates. The method acquires static network structure information and generates a candidate path set, while simultaneously forming the current cumulative carrying capacity of nodes. Based on the current cumulative carrying capacity and the node's nominal forwarding capacity, it obtains the node's current load occupancy rate, dynamic carrying threshold, and carrying margin. The carrying margin is embedded into path relaxation rules to complete target path selection and flow table distribution. Finally, it performs local feedback updates and local re-comparisons around affected nodes. This invention improves the consistency between path selection and the actual network carrying state, reducing the probability of highly loaded nodes being selected.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network resource management technology, and more specifically, to a task scheduling method that separates the control plane and the data plane. Background Technology

[0002] In network architectures where the control plane and data plane are separated, the control plane is typically responsible for network topology maintenance, path calculation, and flow table generation, while the data plane is responsible for actual forwarding based on the forwarding table entries. Most existing task scheduling schemes perform path calculations based on network topology and static link costs. For example, they run shortest path algorithms based on static hop count, static latency, link bandwidth, or combinations thereof to obtain the transmission path for the task flow to be scheduled. In this type of technology, the controller typically completes the path calculation first and then sends the result to the data plane for forwarding, emphasizing path reachability and optimal static cost overall.

[0003] The existing technology has the following shortcomings: Because the path calculation phase does not pay enough attention to the runtime load status of nodes, especially rarely embedding the current cumulative load capacity, changes in node load occupancy, and dynamic load boundaries of nodes directly into the path relaxation process, even if a path is superior in terms of static cost, it may still have insufficient actual carrying capacity because its intermediate nodes are already close to full load. This can lead to problems such as local congestion, decreased task flow scheduling efficiency, and inconsistencies between path calculation results and the actual network state. In addition, if the state is still updated by global recalculation after the task flow is deployed, it will not only incur high computational overhead, but also easily cause delays in the control plane response, affecting the timeliness and stability of subsequent scheduling results.

[0004] To address the above problems, this invention proposes a solution. Summary of the Invention

[0005] To overcome the aforementioned deficiencies of the prior art, embodiments of the present invention provide a task scheduling method that separates the control plane and the data plane to solve the problems mentioned in the background art.

[0006] To achieve the above objectives, the present invention provides the following technical solution: A task scheduling method that separates the control plane and the data plane includes the following steps; Step S1: Obtain static structure information, define node nominal forwarding capacity, task flow resource requirements, active task flow set and path association indicator, read link basic cost, generate initial shortest path and then expand to candidate path set, establish path database, task path mapping table, path node mapping table, node status table and affected path index table, and synchronously query active task flow deployment results to form the current cumulative carrying capacity of node; Step S2: Compress the node status into the node's current load occupancy rate and the node's dynamic bearer threshold. Calculate the current load occupancy rate based on the node's current cumulative bearer capacity and nominal forwarding capacity. Calculate the average occupancy rate and occupancy fluctuation based on the load occupancy rate sequence of the most recent sampling window. Obtain the dynamic bearer threshold through an adaptive expression with upper and lower bound constraints. Further derive the node's bearer margin as a unified bearer representation. Step S3: Embed the node carrying capacity into the path relaxation rule, form a candidate subgraph with the candidate path set, set a safety boundary and establish scalable judgment conditions, add a carrying capacity penalty term to the relaxation increment cost of nodes that meet the conditions, set the expansion cost of nodes that do not meet the conditions to infinity, after completing the modified path relaxation update, calculate the path bottleneck capacity for the candidate paths and construct a comprehensive scoring function, select the target path based on the comprehensive scoring value and generate the flow table distribution result; Step S4: Lock the nodes on the target path and the nodes whose load changes due to the partial migration of the task flow as affected nodes. Update the current cumulative load based on the flow table counter and port statistics. Recalculate the current load occupancy rate. When the local correction condition is triggered, update the dynamic load threshold using the local correction method. Update the node load margin and write it back to the node status table. Mark the candidate path containing the affected nodes as the path to be refreshed. Determine whether to trigger a local re-comparison based on the feedback update termination condition.

[0007] In a preferred embodiment, step S1 includes the following: A network topology graph is established using a unified scheduling entity in the control plane as the scheduling subject. After receiving a scheduling request for a new task flow, an initial shortest path is generated. Based on the initial shortest path, a candidate path set is generated using the K-shortest simple path method. Store candidate path identifiers, a list of sequential nodes contained in the path, and the corresponding link sequence; The task path mapping table is used to record the correspondence between active task flows and their current deployment paths; The path node mapping table is used to record the set of nodes traversed by each candidate path; The node status table is used to record the node's nominal forwarding capacity, the node's current cumulative carrying capacity, the node's current load occupancy rate, the node's dynamic carrying threshold, and the node's carrying margin. The affected path index table is used to record the identifiers of candidate paths containing specified nodes.

[0008] In a preferred embodiment, step S2 includes the following: The current load occupancy rate of a node is calculated based on its current cumulative carrying capacity and nominal forwarding capacity. The average occupancy rate and occupancy fluctuation are calculated based on the load occupancy rate sequence within the most recent sampling window of the same node. The dynamic carrying threshold of a node is obtained through an adaptive expression with upper and lower bound constraints. The node carrying margin is derived as a unified carrying capacity representation based on the current load occupancy rate, the dynamic carrying threshold, and the nominal forwarding capacity of the node. After obtaining the average occupancy rate and occupancy fluctuation, the dynamic carrying capacity threshold of the node is calculated. When the recent average occupancy rate of the node is lower than the preset occupancy rate threshold and the occupancy fluctuation is lower than the preset fluctuation threshold, its dynamic carrying capacity threshold is adjusted upward. When the recent average occupancy rate of a node is higher than the preset occupancy rate threshold or the occupancy fluctuation is higher than the preset fluctuation threshold, its dynamic carrying capacity threshold will be adjusted downward.

[0009] In a preferred embodiment, step S3 includes the following: A candidate subgraph is constructed using the nodes and links that have appeared in the candidate path set. Write the node carrying capacity margin into the relaxation rules, set the safety boundary and establish scalable judgment conditions, and add a carrying capacity penalty term to the relaxation incremental cost for nodes that meet the conditions. The cost of expanding nodes that do not meet the conditions is set to infinity. After completing the path relaxation update after the transformation, the path bottleneck margin is calculated for the candidate paths and a comprehensive scoring function is constructed. The target path is selected based on the comprehensive scoring value and the flow table is generated and the result is distributed. The path bottleneck margin is the minimum among the carrying margins of all nodes on the candidate path. The comprehensive scoring function is constructed based on the sum of static link costs and the reciprocal of the path bottleneck margin, and the candidate path with the smallest comprehensive score is selected as the target path.

[0010] In a preferred embodiment, step S4 includes the following: Nodes on the target path and nodes whose load changes due to local migration of the task flow are identified as affected nodes; Update the current cumulative load based on the flow table counter and port statistics, recalculate the current load occupancy rate, and update the dynamic load threshold using a local correction method when a local correction condition is triggered. Update the node carrying capacity and write it back to the node status table. Mark the candidate path containing the affected node as the path to be refreshed. Determine whether to trigger a local re-comparison based on the feedback update termination condition. The conditions for terminating the feedback update include: If all nodes on the updated target path meet the carrying safety conditions, then no further rerouting will be triggered for the current task flow; If individual nodes do not meet the security requirements for carrying out tasks, the current task flow will be marked as a local task flow to be reviewed. If any node on the target path is in a high-risk state within a continuous feedback window or the node's carrying capacity margin after the update is continuously less than or equal to zero, then a local re-comparison is directly performed on the subset of candidate paths containing that node.

[0011] The technical effects and advantages of the task scheduling method with separate control plane and data plane of the present invention are as follows: This invention uses the current cumulative carrying capacity of nodes as a basis to uniformly quantify the node operating status and directly introduces the node carrying capacity margin into the path relaxation and path scoring process. This allows the control plane to consider not only static link costs when selecting paths, but also whether the node has the ability to safely carry new task flows at the current moment. This effectively avoids local congestion and path mismatch problems caused by scheduling based solely on the shortest path. At the same time, this invention further constructs a local feedback update mechanism around affected nodes, which can complete threshold correction and candidate path refresh without repeatedly recalculating the entire network status. Therefore, it can reduce control computation overhead and improve the real-time performance, stability and continuous operation capability of task scheduling while ensuring that the scheduling results are consistent with the real network status. Attached Figure Description

[0012] Figure 1 This is a schematic diagram of the structure of a task scheduling method that separates the control plane and the data plane according to the present invention.

[0013] Figure 2 A schematic diagram illustrating the construction of candidate path sets and node status basic data. Detailed Implementation

[0014] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0015] Example Please see Figures 1-2 As shown, this invention discloses a task scheduling method that separates the control plane and the data plane, including the following steps: Step S1: Obtain static structure information, define node nominal forwarding capacity, task flow resource requirements, active task flow set and path association indicator, read link basic cost, generate initial shortest path and then expand to candidate path set, establish path database, task path mapping table, path node mapping table, node status table and affected path index table, and synchronously query active task flow deployment results to form the current cumulative carrying capacity of node; Step S2: Compress the node status into the node's current load occupancy rate and the node's dynamic bearer threshold. Calculate the current load occupancy rate based on the node's current cumulative bearer capacity and nominal forwarding capacity. Calculate the average occupancy rate and occupancy fluctuation based on the load occupancy rate sequence of the most recent sampling window. Obtain the dynamic bearer threshold through an adaptive expression with upper and lower bound constraints. Further derive the node's bearer margin as a unified bearer representation. Step S3: Embed the node carrying capacity into the path relaxation rule, form a candidate subgraph with the candidate path set, set a safety boundary and establish scalable judgment conditions, add a carrying capacity penalty term to the relaxation increment cost of nodes that meet the conditions, set the expansion cost of nodes that do not meet the conditions to infinity, after completing the modified path relaxation update, calculate the path bottleneck capacity for the candidate paths and construct a comprehensive scoring function, select the target path based on the comprehensive scoring value and generate the flow table distribution result; Step S4: Lock the nodes on the target path and the nodes whose load changes due to the partial migration of the task flow as affected nodes. Update the current cumulative load based on the flow table counter and port statistics. Recalculate the current load occupancy rate. When the local correction condition is triggered, update the dynamic load threshold using the local correction method. Update the node load margin and write it back to the node status table. Mark the candidate path containing the affected nodes as the path to be refreshed. Determine whether to trigger a local re-comparison based on the feedback update termination condition.

[0016] In step S1, static structure information is obtained, node nominal forwarding capacity, task flow resource requirements, active task flow set, and path association indicators are defined. The basic link cost is read, and after generating the initial shortest path, it is expanded into a candidate path set. A path database, task path mapping table, path node mapping table, node status table, and affected path index table are established. The deployment results of active task flows are simultaneously queried to form the current cumulative capacity of the node. Specific content includes: Obtain the static structure information of the separate control plane and data plane networks, and establish a network topology using the unified scheduling entity in the control plane as the scheduling subject. Let the set of forwarding nodes in the network be . The link set is ; Set nodes The nominal forwarding capacity is The nominal forwarding capacity is preferably expressed as the bandwidth value, packet rate value, or normalized forwarding resource value that a node can stably process within a unit scheduling cycle. Let the first A new task flow awaiting scheduling is Its starting node is The destination node is The task requirement is This represents the amount of target forwarding resources that the task flow needs to occupy within the current scheduling period; Let the set of task flows that are currently deployed and active in the network be . Any activity task flow The resource usage is recorded as If the task flow The current path passes through the nodes Then record the path association indicator. ,otherwise ; The active task flow set is limited to the task flow set that is uniformly scheduled by the control plane and whose resource occupancy can be obtained through flow table counters, port statistics, or related forwarding status information; for background service traffic that is not included in the unified scheduling scope, it can be absorbed by reserving basic resources or deducting conservative margins in advance from the node's nominal forwarding capacity, so that the current cumulative carrying capacity of the node calculated based on the active task flow set is consistent with the actual schedulable resource range. For any link Read the basic cost of the link The basic cost of the link is preferably represented by static hop count, static delay, the reciprocal of the link's rated bandwidth, or a combination thereof. The basic cost of the link is set as follows: ;in, For link Static jump long item, when and If directly connected, the value is 1; otherwise, it is not included in the current link calculation. The rated bandwidth of the link; and These are the jump length weight and the bandwidth weight, respectively. To avoid extremely small positive numbers with a denominator of zero; Upon receiving a new task flow After receiving the scheduling request, As the source, with As the destination, first run the baseline pathfinding process according to the static rules to obtain the initial shortest path. The baseline pathfinding process can be implemented using a shortest path algorithm based on static link cost, preferably Dijkstra's algorithm. In existing unified scheduling scenarios in the control plane, the controller usually performs shortest path calculation based on network topology and static link cost, and rarely embeds the node runtime bearer state directly into the path relaxation process. Furthermore, a candidate path set is generated based on the initial shortest path. The candidate path set is generated using the K-shortest simple path method, denoted as: ;in, For new task flow The set of candidate paths; This represents the number of candidate paths. For the first 10 candidate paths, select the best one Integers between 3 and 8 can be used to provide sufficient samples of alternative paths for subsequent steps. Then, we only need to make constraint judgments based on the node carrying status on these alternative paths, thereby reducing the search range during online scheduling and avoiding full graph recalculation. After obtaining the candidate path set, a path node mapping table and a task path mapping table are further established. For any candidate path in the candidate path set... It consists of several sequential nodes, denoted as ,in Write the list of nodes corresponding to each candidate path in the candidate path set into the path database to determine the number of nodes for that candidate path. The path database stores candidate path identifiers, a list of sequential nodes contained in the path, and the corresponding link sequence; the task path mapping table records the correspondence between active task flows and their currently deployed paths; the path node mapping table records the set of nodes traversed by each candidate path; the node status table records the node's nominal forwarding capacity, current cumulative capacity, current load occupancy, dynamic capacity threshold, and capacity margin; and the affected path index table records candidate path identifiers containing specified nodes, enabling quick location of the subset of candidate paths that need to be re-compared after node status updates. Furthermore, simultaneously query the existing set of activity task flows. The deployment results yield the current activity task flow's occupancy distribution across nodes, forming the basic data for the current carrying status; Preferably, the basic data of the current carrying status can be represented as the current cumulative carrying capacity of the node: ;in, For nodes At the present moment The cumulative carrying capacity of resources; For task flow Has the node been passed at the current moment? Path association indicator; For task flow Resource usage in the current scheduling cycle It can be calculated from the byte counter, packet counter, and duration field of the flow table within a preset sampling window; This step yields three types of data results that can be directly used in the next step: the first being a network topology diagram. The second is the candidate path set. Thirdly, the current cumulative carrying capacity of the node. In step S2, there is no need to build an abstract multidimensional state model from scratch. Instead, convergence calculations are performed directly around the actual carrying data output from step S1. This step forms a candidate path set and simultaneously establishes the data structure foundation for subsequent steps. The node status table, task path mapping table, path node mapping table, and affected path index table involved in subsequent steps are all generated based on the deployment results of the network topology, candidate path set, and active task flow set obtained in this step, and are continuously updated in the subsequent feedback process. This step completes the construction of the network foundation representation for unified scheduling in the control plane. It not only establishes a network topology map and link-based cost system that can be used for subsequent pathfinding, but also generates a set of candidate paths with substitution relationships. Simultaneously, it forms basic data that closely reflects the actual operating state of nodes, such as the actual load capacity of nodes. The range of selectable paths and the current load facts of nodes are fixed in advance, and the candidate path samples and node load distribution are associated in the same step. This provides a direct basis for subsequent steps to construct node load criteria based on the actual load.

[0017] In step S2, the node state is compressed into the node's current load occupancy rate and the node's dynamic bearer threshold. The current load occupancy rate is calculated based on the node's current cumulative bearer capacity and nominal forwarding capacity. The average load occupancy rate and occupancy fluctuation are calculated based on the load occupancy rate sequence of the most recent sampling window. The dynamic bearer threshold is obtained through an adaptive expression with upper and lower bound constraints. Furthermore, the node bearer margin is derived as a unified bearer representation. The specific content includes: This step further compresses the information that is actually needed in the path relaxation phase into two runtime parameters: the current load occupancy rate of the node and the dynamic load threshold of the node. The two together determine whether the node can still accept new task flows. The two most critical input parameters in the path relaxation process are retained, and the node load margin is derived from these two input parameters as the result quantity. Based on the node's current cumulative carrying capacity and node nominal forwarding capability Calculate the current load utilization of the node. The formula can be expressed as: ;in, For nodes At any moment The current load utilization rate; This represents the node's current cumulative carrying capacity. For nodes The nominal forwarding capability, preferably, when When the value approaches 1, it indicates that the node is nearing full load; when... When the occupancy rate is below the first preset threshold, it indicates that the node still has a high spare capacity. Based on the nearest node Calculate the node dynamic load threshold based on the load occupancy sequence within each sampling window. For nodes In recent Load occupancy sequence within each sampling window Calculate average occupancy rate and occupied volatility ; compute nodes In recent The average load occupancy rate within a sampling window can be expressed by the formula: ; Furthermore, computing nodes In recent The occupancy fluctuation within a sampling window can be expressed by the formula: The larger this value, the more drastic the changes in node load; the smaller this value, the more stable the node load. After obtaining the average occupancy rate and occupancy fluctuation, the dynamic load threshold of the node is calculated. Preferably, the node dynamic carrying threshold adopts an adaptive expression with upper and lower bound constraints: ;in, For nodes At any moment The dynamic carrying threshold; The baseline load-bearing threshold; This is the average occupancy rate compensation coefficient; This is the fluctuation penalty coefficient; and These are the lower and upper bounds of the dynamic load threshold, respectively. The upper and lower bound clipping functions; When the recent average occupancy rate of a node is lower than the second preset occupancy rate threshold and the occupancy fluctuation is lower than the first preset fluctuation threshold, the node is determined to be in a low occupancy and stable state, and its dynamic carrying capacity threshold can be adjusted upward. When the recent average occupancy rate of a node is higher than the third preset occupancy rate threshold, or the occupancy fluctuation is higher than the second preset fluctuation threshold, the node is determined to be in a high occupancy or high fluctuation state, and its dynamic carrying capacity threshold should be adjusted downward. In obtaining and After considering the two runtime parameters, the node carrying capacity margin is further calculated. The formula can be expressed as: ;in, For nodes At any moment Node capacity margin; when When the value is greater than 0, it indicates that the node still has an allocable margin under the dynamic carrying capacity threshold constraint; when When the value is less than or equal to 0, it indicates that the node is no longer suitable to carry new task flows; Preferably, the node carrying capacity margin is expressed in the same dimension as the resource quantity, so that it can be directly correlated with the resource requirements of the new task flow. By comparing the two, it is no longer necessary to substitute the occupancy rate and threshold into the path relaxation formula separately; instead, only the data needs to be read. This amount of result is sufficient for a quick judgment; The first preset occupancy threshold, the second preset occupancy threshold, the third preset occupancy threshold, and the first preset fluctuation threshold and the second preset fluctuation threshold can be determined by offline calibration or operation and maintenance configuration based on network scale, task type and historical operation data. This step further compresses and refines the actual node load status obtained in step S1 into two core runtime parameters: the current load occupancy rate and the dynamic load threshold. Based on this, a node load margin result that can be directly used in scheduling decisions is derived. The originally scattered, continuously changing node load information, which was inconvenient to embed directly into path calculation, is transformed into a unified load representation that can be compared, constrained, and directly invoked. This provides a clear and computable basis for determining whether a node is suitable to continue accepting new task flows. The most critical two-parameter structure is retained around the information truly needed for subsequent path relaxation, and then these are merged into a single result output. This balances the sufficiency of state expression with the simplicity of online scheduling calculation. Based on this result, step S3 no longer needs to process the load occupancy rate and threshold separately, but can directly write the node load margin into the path relaxation rule, achieving a natural transition from state awareness to path decision-making.

[0018] In step S3, node carrying capacity is embedded into path relaxation rules. A candidate subgraph is constructed using the candidate path set. A safety boundary is set, and scalability judgment conditions are established. For nodes that meet the conditions, a carrying capacity penalty term is added to the relaxation increment cost. For nodes that do not meet the conditions, the expansion cost is set to infinity. After completing the modified path relaxation update, the path bottleneck margin is calculated for the candidate paths, and a comprehensive scoring function is constructed. Based on the comprehensive scoring value, the target path is selected, and the flow table distribution result is generated. Specific content includes: This step constructs a candidate subgraph using the nodes and links that have appeared in the candidate path set, and calculates the node carrying capacity output in step S2. By directly writing relaxation rules, the path expansion process not only focuses on static link cost, but also simultaneously judges whether candidate nodes have sufficient carrying capacity, thereby moving the high load risk that was originally exposed after path generation to the path calculation stage for identification and avoidance. Read the candidate path set and node carrying capacity set Path relaxation is performed only within the candidate subgraph corresponding to the candidate path set. Nodes and links not falling into the candidate subgraph do not participate in this path comparison. For the current new task flow... Its resource requirements are To prevent new task flows from being introduced to a node even if that node approaches its dynamic capacity threshold, a safety boundary related to the node's nominal capacity is further set. The preferred definition is: ;in, For safety and conservatism, the value is preferably between 0.02 and 0.10; In candidate expansion nodes The expandable decision condition is: like Then the node is considered If the current safety conditions for carrying a new task flow are not met, it is not allowed to be a valid extended node in this path relaxation. like If so, the node is allowed to participate in the path relaxation calculation; When the remaining safe callable capacity is insufficient to cover the needs of the newly added task flow and the minimum safety margin, it is regarded as an unsuitable node for expansion in advance, thereby blocking the risk of congestion in advance. Preferably, under the premise of satisfying scalability conditions, different degrees of relaxation penalty terms are applied to different nodes according to their carrying capacity margin. Assuming that in the Dijkstra-type update process, the nodes have been determined... The current minimum cost to reach the source is If it is necessary to examine the current situation, Extend to adjacent nodes The path, then the modified relaxation increment cost The formula can be expressed as: ;in, For new task flow By node Extend to nodes The cost of relaxation increment after modification; The static link base cost defined in step S1; To bear the penalty weight; To avoid extremely small positive numbers with a denominator of zero; When a node's capacity margin is insufficient, the incremental cost is set to infinity, which is equivalent to excluding the node from the relaxation process. When a node's capacity margin is sufficient, it is still allowed to participate in path competition. However, the smaller the capacity margin, the larger the penalty term. Thus, even if multiple nodes have not yet been excluded, new task flows will be preferentially directed to the path of the node with a larger capacity margin. Therefore, the modified path relaxation update process can be expressed as: if Then Update node The current optimal cost, and its predecessor node is denoted as ; The node runtime carrying state is directly integrated into the relaxation condition itself, so that the path search starts to avoid high-risk nodes when expanding. When a certain intermediate node in the static shortest path has a better topological position but too low node carrying margin, the path that looks slightly longer but has a higher carrying margin is automatically selected to solve the problem of mismatch between path calculation results and actual network carrying capacity. Furthermore, after obtaining multiple feasible paths through node-level relaxation, this embodiment preferably also performs a consistency assessment on the overall carrying capacity of the entire candidate path to avoid a situation where, although all nodes of a certain path barely meet the expansion conditions, some individual nodes are too weak and become bottlenecks. Preferably, candidate paths are defined. The path bottleneck margin is: ;in, Candidate paths The path bottleneck margin represents the minimum carrying capacity of all nodes on the path. The larger the path bottleneck margin, the higher the safety margin of even the weakest node on the entire path. Preferably, the final path scoring function can be expressed as: ;in, Candidate paths The overall score; and These are the static cost weight and the bottleneck penalty weight, respectively. If the value is a very small positive number, the candidate path with the smallest comprehensive score is selected as the target path. The basic reachability and efficiency preference of the existing shortest path mechanism are preserved, and the path selection is no longer based solely on the total length, but rather on whether the weakest node is reliable. After obtaining the target path, the corresponding flow table is generated and the results are sent to the data plane, forming the task flow according to the node order of the target path. Generate a hop-by-hop forwarding table entry so that the task flow can be transmitted along the target path on the data plane. To avoid changes in the path state due to computation delay, the time interval from the node carrying margin to the completion of the flow table generation does not exceed one sampling window length, and no global sampling is performed within this time interval. The result quantity is used directly to complete this scheduling. This step substantially transforms the traditional shortest path relaxation rules, shifting path selection from solely relying on static link costs to simultaneously incorporating constraints such as node capacity margin, security boundaries, and path bottleneck margins during the candidate node expansion phase. This moves high-load risks, previously exposed after path generation, to the relaxation process for identification and avoidance. It embeds the runtime question of whether a node can safely handle new task flows directly into the path calculation mechanism itself, ensuring the final target path possesses topological reachability, capacity feasibility, and overall controllability of weak links. This represents a capacity-oriented reconstruction at the path generation rule level, enabling the path search process to proactively avoid high-risk nodes and prioritize high-margin paths. This step not only outputs a target path more aligned with actual network capacity but also provides a clear feedback object for step S4: the target path and its associated node set. This allows subsequent updates to focus on the affected local area without recalculating at the global level.

[0019] In step S4, nodes on the target path and nodes whose load changes due to partial migration of the task flow are identified as affected nodes. The current cumulative load is updated based on the flow table counter and port statistics. The current load occupancy rate is recalculated. When a local correction condition is triggered, the dynamic load threshold is updated using a local correction method. The node load margin is updated and written back to the node status table. Candidate paths containing affected nodes are marked as paths to be refreshed. Whether to trigger a local re-comparison is determined based on the feedback update termination condition. Specific details include: This step performs local feedback updates, only targeting nodes whose status has changed due to the deployment of the current target path and their associated candidate paths. It does not perform synchronous recalculation on unaffected nodes and candidate paths across the entire network. Affected nodes include nodes on the current target path and nodes whose current cumulative capacity has changed due to the partial migration of the task flow. Affected paths include candidate paths that contain the affected nodes. The system updates the current load occupancy, dynamic capacity threshold, and capacity margin of nodes along the newly deployed target path and its associated nodes, without regenerating the entire network of candidate paths or rescanning all historical raw data of all nodes. The optimized data can then be used as input for the next time step, thus avoiding recalculation of large amounts of historical raw data. This also includes feedback window length and initial frequency. It can be set according to the preset window configuration parameters, and frequency adjustment is performed when the node status fluctuation is detected to exceed the preset range in multiple consecutive feedback windows; Specifically, at the end of the first feedback window after the target path deployment is completed, the latest flow table counters and port statistics of each node on the target path are read, and the current cumulative capacity of the nodes after the update is calculated. If node If a task is not on the current target path and no task flow addition, cancellation, or path switching event has occurred within the feedback window that falls within the scope of unified scheduling, then it is preferable to keep the corresponding node status result in step S2 unchanged. If node If a task is located on the target path, or if the deployment causes a partial relocation of existing task flows (i.e., the deployment of the target path causes adjustments to forwarding entries in local nodes or links, resulting in changes to the current cumulative load capacity of the relevant nodes), then update their current load occupancy rate: ;in, For nodes The current load utilization rate after the update at the feedback time; The node at the end of the feedback window The current cumulative load capacity of the node, and the update of the current load occupancy rate of the node still follows the definition method of step S2; After updating the current load occupancy rate, the node dynamic load threshold is updated using a local correction method. Preferably, a node is considered to be true when any of the following conditions are met. Local adjustment of dynamic load capacity threshold is required: the absolute value of the change in the node's current load capacity compared to the previous recorded value is greater than the preset change threshold. The current load occupancy rate of a node exceeds its original dynamic capacity threshold, thus reducing the warning bandwidth. The corresponding occupancy boundary, warning bandwidth This refers to the early warning margin set to trigger dynamic load threshold correction in advance. This early warning margin corresponds to the early warning occupancy boundary within the occupancy space. If a local correction is triggered, the node's dynamic carrying threshold will be updated to: ;in, For nodes The dynamic carrying threshold is updated after the feedback time; For local correction step size; This refers to the updated occupancy fluctuation within a local feedback window, obtained based on the most recent occupancy rate results. After receiving the update and Then, immediately recalculate the node capacity margin of the affected nodes: ;in, This is to provide capacity margin for the updated nodes; Preferably, the updated node capacity margin is written back to the node status table, and the candidate paths containing the node in the affected path index table are marked as paths to be refreshed; when the next new task flow arrives, or when the node on the current target path remains in a high-risk state for two consecutive feedback windows, the high-risk state refers to the node capacity margin being less than or equal to the preset high-risk capacity margin threshold, or the node's current load occupancy rate reaching the warning interval near its dynamic capacity threshold, step S3 is preferentially run only on the subset of candidate paths containing these affected paths; Furthermore, it is preferable to set a termination condition for a single feedback update. Specifically, after completing a local feedback update, if all nodes on the updated target path satisfy the following condition: If the current scheduling result is still considered to be in a safe and bearable state after the update, no further rerouting will be triggered for the current task flow. If individual nodes do not meet the above conditions, the multi-round global iteration will not be entered immediately. Instead, the current task flow will be marked as a local task flow to be reviewed. When the next new task flow arrives, the updated node will be used to carry the margin of results and step S3 will be re-executed to re-compare the current target path with other paths in the candidate path set. Furthermore, if any node on the current target path is in a high-risk state for two consecutive feedback windows, or if the node's carrying capacity margin after the update is continuously less than or equal to zero, then there is no need to wait for a new task flow to arrive. Instead, a local re-comparison is immediately performed on the subset of candidate paths containing the node to determine whether to switch to a new target path. This step establishes a local feedback update mechanism centered around the target path and affected nodes. This mechanism ensures that the current load occupancy rate, dynamic capacity threshold, and capacity margin of nodes can be promptly corrected based on actual operational results after task flow deployment. The corrected results are then written back to the node status table and candidate path index relationship. This maintains consistency between the scheduling basis and the actual network state with a minimal update scope, avoiding control plane response delays due to excessive global recalculation overhead, and preventing subsequent scheduling from continuing to be based on outdated data due to long-term state lag. By adopting a target path-oriented local feedback, local correction, and local refresh strategy, state correction is limited to a subset of nodes and paths truly affected by the deployment results. This balances feedback timeliness and computational economy, making this solution no longer a one-time path selection method, but a dynamic scheduling mechanism that can continuously adapt and evolve as the task flow continues to arrive.

[0020] The above formulas are all dimensionless calculations. The formulas are derived from software simulations based on a large amount of collected data to obtain the most recent real-world results. The preset parameters in the formulas are set by those skilled in the art according to the actual situation.

[0021] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, in the form of a computer program product.

[0022] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and inventive constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0023] In addition, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.

[0024] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0025] In conclusion, the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A task scheduling method that separates the control plane and the data plane, characterized in that, Includes steps; Step S1: Obtain static structure information, define node nominal forwarding capacity, task flow resource requirements, active task flow set and path association indicator, read link basic cost, generate initial shortest path and then expand to candidate path set, establish path database, task path mapping table, path node mapping table, node status table and affected path index table, and synchronously query active task flow deployment results to form the current cumulative carrying capacity of node; Step S2: Compress the node status into the node's current load occupancy rate and the node's dynamic bearer threshold. Calculate the current load occupancy rate based on the node's current cumulative bearer capacity and nominal forwarding capacity. Calculate the average occupancy rate and occupancy fluctuation based on the load occupancy rate sequence of the most recent sampling window. Obtain the dynamic bearer threshold through an adaptive expression with upper and lower bound constraints. Further derive the node's bearer margin as a unified bearer representation. Step S3: Embed the node carrying capacity into the path relaxation rule, form a candidate subgraph with the candidate path set, set a safety boundary and establish scalable judgment conditions, add a carrying capacity penalty term to the relaxation increment cost of nodes that meet the conditions, set the expansion cost of nodes that do not meet the conditions to infinity, after completing the modified path relaxation update, calculate the path bottleneck capacity for the candidate paths and construct a comprehensive scoring function, select the target path based on the comprehensive scoring value and generate the flow table distribution result; Step S4: Lock the nodes on the target path and the nodes whose load changes due to the partial migration of the task flow as affected nodes. Update the current cumulative load based on the flow table counter and port statistics. Recalculate the current load occupancy rate. When the local correction condition is triggered, update the dynamic load threshold using the local correction method. Update the node load margin and write it back to the node status table. Mark the candidate path containing the affected nodes as the path to be refreshed. Determine whether to trigger a local re-comparison based on the feedback update termination condition.

2. The task scheduling method with separate control plane and data plane according to claim 1, characterized in that, In step S1, a network topology graph is established using the unified scheduling entity in the control plane as the scheduling subject. After receiving a scheduling request for a new task flow, an initial shortest path is generated. Based on the initial shortest path, a candidate path set is generated using the K-shortest simple path method.

3. The task scheduling method with separate control plane and data plane according to claim 2, characterized in that, Store candidate path identifiers, a list of sequential nodes contained in the path, and the corresponding link sequence; The task path mapping table is used to record the correspondence between active task flows and their current deployment paths; The path node mapping table is used to record the set of nodes traversed by each candidate path; The node status table is used to record the node's nominal forwarding capacity, the node's current cumulative carrying capacity, the node's current load occupancy rate, the node's dynamic carrying threshold, and the node's carrying margin. The affected path index table is used to record the identifiers of candidate paths containing specified nodes.

4. The task scheduling method with separate control plane and data plane according to claim 1, characterized in that, In step S2, the current load occupancy rate of a node is calculated based on its current cumulative load capacity and nominal forwarding capacity. The average occupancy rate and occupancy fluctuation are calculated based on the load occupancy rate sequence within the most recent sampling window of the same node. The dynamic load occupancy threshold of a node is obtained through an adaptive expression with upper and lower bound constraints. The node load margin is derived as a unified load characterization based on the current load occupancy rate, the dynamic load occupancy threshold, and the nominal forwarding capacity of the node.

5. A task scheduling method for separating the control plane and data plane according to claim 4, characterized in that, After obtaining the average occupancy rate and occupancy fluctuation, the dynamic carrying capacity threshold of the node is calculated. When the recent average occupancy rate of the node is lower than the preset occupancy rate threshold and the occupancy fluctuation is lower than the preset fluctuation threshold, its dynamic carrying capacity threshold is adjusted upward. When the recent average occupancy rate of a node is higher than the preset occupancy rate threshold or the occupancy fluctuation is higher than the preset fluctuation threshold, its dynamic carrying capacity threshold will be adjusted downward.

6. The task scheduling method with separate control plane and data plane according to claim 1, characterized in that, In step S3, candidate subgraphs are constructed using the nodes and links that have appeared in the candidate path set; Write the node carrying capacity margin into the relaxation rules, set the safety boundary and establish scalable judgment conditions, and add a carrying capacity penalty term to the relaxation incremental cost for nodes that meet the conditions. The cost of expanding nodes that do not meet the conditions is set to infinity. After completing the path relaxation update after the transformation, the path bottleneck margin is calculated for the candidate paths and a comprehensive scoring function is constructed. The target path is selected based on the comprehensive scoring value and the flow table is generated and the result is distributed.

7. A task scheduling method for separating the control plane and data plane according to claim 6, characterized in that, The path bottleneck margin is the minimum among the carrying margins of all nodes on the candidate path. The comprehensive scoring function is constructed based on the sum of static link costs and the reciprocal of the path bottleneck margin, and the candidate path with the smallest comprehensive score is selected as the target path.

8. A task scheduling method for separating the control plane and data plane according to claim 1, characterized in that, In step S4, nodes on the target path and nodes whose load changes due to local migration of the task flow are identified as affected nodes. Update the current cumulative load based on the flow table counter and port statistics, recalculate the current load occupancy rate, and update the dynamic load threshold using a local correction method when a local correction condition is triggered. Update the node carrying capacity and write it back to the node status table. Mark the candidate path containing the affected node as the path to be refreshed. Determine whether to trigger a local re-comparison based on the feedback update termination condition.

9. A task scheduling method for separating the control plane and data plane according to claim 8, characterized in that, The conditions for terminating the feedback update include: If all nodes on the updated target path meet the carrying safety conditions, then no further rerouting will be triggered for the current task flow; If individual nodes do not meet the security requirements for carrying out tasks, the current task flow will be marked as a local task flow to be reviewed. If any node on the target path is in a high-risk state within a continuous feedback window or the node's carrying capacity margin after the update is continuously less than or equal to zero, then a local re-comparison is directly performed on the subset of candidate paths containing that node.