A scheduling method for multi-dimensional compatibility and conflict repair of TSN end-side jitter

By constructing a multi-dimensional compatibility assessment and phase guidance mechanism on the TSN end-side device, the scheduling conflict problem caused by end-side clock deviation and jitter is solved, and a highly reliable and low-latency scheduling table is generated, which significantly improves the schedulability and latency stability of the system.

CN121334079BActive Publication Date: 2026-07-21NORTHEASTERN UNIV CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NORTHEASTERN UNIV CHINA
Filing Date
2025-11-21
Publication Date
2026-07-21

Smart Images

  • Figure CN121334079B_ABST
    Figure CN121334079B_ABST
Patent Text Reader

Abstract

The application provides a scheduling method for multi-dimensional compatibility and conflict repair of TSN end-side jitter, and relates to the technical field of data transmission. The application introduces a multi-dimensional compatibility evaluation and phase guiding mechanism on the end system side, constructs a comprehensive compatibility index through four dimensions of periodic compatibility, load occupation degree, jitter interval risk and time window overlap degree, realizes the clustering scheduling of time-sensitive flow and the absorption and shaping of end-side jitter. Through queue division based on multi-dimensional compatibility, the application divides the global scheduling problem into multiple independent intra-cluster sub-problems, so that the service flows in the same cluster have high similarity in periodicity, bandwidth occupation and time tolerance characteristics, significantly reducing the conflict probability at the port and queue levels. The application introduces an anchor flow mechanism to establish a unified time grid structure, and other flows select phases and are arranged in staggered positions on the grid to realize the periodic alignment and orderly staggered peak of the queue.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data transmission technology, specifically a scheduling method for multidimensional compatibility and conflict resolution oriented towards TSN end-side jitter. Background Technology

[0002] Real-time data transmission is becoming increasingly critical in modern information systems, especially against the backdrop of the continuous development of emerging technologies such as the Industrial Internet, autonomous driving, smart healthcare, and smart cities. Time-Sensitive Networking (TSN), a novel Ethernet enhancement technology proposed by the IEEE 802.1 working group, aims to provide real-time, low-jitter, congestion-free, low-packet-loss, and highly robust data transmission capabilities. This technology achieves deterministic transmission of critical data by ensuring timely network responses to specific events within a specific time period. Among the various TSN standards, IEEE 802.1Qbv defines the Time-Aware Shaper (TAS). The TAS, through a Gate Control List (GCL), periodically opens or closes queues on ports, achieving precise scheduling control and is one of the core mechanisms ensuring deterministic communication in TSN. TAPRIO, a qdisc in the Linux kernel, provides a flexible software implementation of the 802.1Qbv / TAS protocol.

[0003] In the IEEE 802.1Qbv port architecture, each egress port contains multiple priority-based transmission queues, each preceded by a time gate. When a data frame arrives at the port, it is classified into the corresponding priority queue based on its VLAN priority identifier (PCP value). The transmission authority of a queue is controlled by the state of its corresponding time gate. This scheduling mechanism is highly dependent on precise time synchronization to ensure that different priority queues open and close on time within predetermined time slots. However, when there are hardware or software clock deviations or reception time jitter between the end-side devices and the TSN switch, the actual arrival time of data packets may differ from the expected time in the scheduling table. In some cases, data packets arriving early may be forwarded immediately within the current scheduling cycle, disrupting the original transmission order and potentially causing the task to miss its deadline; data packets arriving late may miss the current transmission time slot and be forced to wait until the next cycle, resulting in task timeouts or scheduling failures. This type of arrival time offset caused by end-side asynchrony not only undermines the predictability of TAPRIO scheduling but may also lead to serious problems such as link conflicts and frame order errors.

[0004] However, most existing TSN scheduling studies assume that all nodes in the network (including switches and end-side devices) can achieve strict time synchronization. Under this assumption, the design of the scheduling table only needs to consider factors such as link bandwidth, queue priority, and task deadlines, without dealing with uncertainties caused by clock skew. However, in actual deployments, even if switches can achieve precise time synchronization using high-precision synchronization protocols such as IEEE 802.1AS or PTP, end-side devices may still have discrepancies between their local clocks and the global reference time due to hardware / software differences, network latency jitter, and other reasons. This end-side asynchrony can cause discrepancies between the actual arrival time of data packets and the scheduling table's expectations, thus posing a potential threat to the correctness and stability of scheduling.

[0005] Currently, academia and industry mainly use global optimization scheduling models to generate TSN gating plans, assuming that the end system's transmission time is precisely controllable. Typical methods include optimization models based on SMT / ILP: Craciunas et al. proposed in "Combining optimization approaches for scheduling of time-triggered traffic in switched Ethernet networks" (Real-Time Systems, 2016, 52(2):221–253) to formalize the TSN scheduling problem into an SMT / ILP model, and obtain the optimal schedule by solving global constraints.

[0006] The paper “Practical Aspects of Cross-Vendor TSN Time Synchronization Using IEEE 802.1AS” demonstrates in cross-vendor tests that different interpretations and implementations of IEEE 802.1AS / gPTP reduce synchronization accuracy, thereby impairing scheduling predictability. This highlights the necessity of explicitly considering terminal system jitter and clock skew in TSN design.

[0007] To address scheduling conflicts caused by end-system bias, some studies have attempted to introduce robust constraints into optimization models. For example, by adding an upper bound term for end-system jitter to the SMT or ILP model, scheduling can remain feasible under finite time bias. These methods can ensure that constraints such as frame isolation are strictly satisfied, theoretically enhancing the bias resistance of the scheduling table. However, they primarily rely on global optimization modeling and highly complex solutions, resulting in extremely high computational costs in large-scale networks. This makes it difficult to generate scheduling schemes in real-time in large-scale networks or engineering practice, thus lacking a lightweight repair mechanism.

[0008] In summary, existing solutions generally suffer from two shortcomings: first, they rely on global modeling for solution, resulting in long computation times and difficulty in online deployment; second, scheduling optimization is mostly performed at the switch side, rather than pre-shaping at the source of jitter—the end system side. Since the uncertainty of end system transmissions is amplified through cascading in the network, lightweight heuristic adjustments to the transmission phase at the end system can absorb jitter and reduce collisions before entering the switch, thus significantly improving overall schedulability. Therefore, there is an urgent need for a scheduling method that can be executed quickly at the end system level, possesses adaptive collision repair capabilities, and does not require global synchronous solution, in order to absorb time deviations at the source and improve system real-time performance and robustness. Summary of the Invention

[0009] To address the shortcomings of existing technologies, the present invention aims to propose a multi-dimensional compatibility and conflict resolution scheduling method for TSN end-side jitter, comprising:

[0010] On the edge device, acquire multiple time-sensitive streams, as well as the parameters of the time-sensitive streams, their timing attributes, path, and constraint information;

[0011] Based on the parameters of the time-sensitive flow, a multidimensional compatibility index matrix is ​​calculated;

[0012] The multidimensional compatibility index matrix is ​​processed by a hierarchical clustering algorithm to obtain multiple queues, each containing multiple time-sensitive streams, and each queue is assigned a number.

[0013] Determine the anchor stream and the final transmission phase of the anchor stream in each queue. The transmission phase of the anchor stream represents the transmission time of the anchor stream.

[0014] Determine the transmission phase of non-anchor streams other than anchor streams in each queue;

[0015] Based on the final transmission phase of all non-anchor streams and the final transmission phase of all anchor streams, a gating slot configuration table for each queue is generated. The final transmission phase of each time-sensitive stream, the queue to which each time-sensitive stream belongs, and the gating slot configuration table for each queue constitute a global scheduling table.

[0016] End-side devices send time-sensitive flows to the TSN switch according to the global scheduling table.

[0017] Optionally, the time-sensitive flow parameters include at least the period, frame transmission duration, jitter error upper bound, earliest start time, latest start time, first hop link, data packet size, data packet deadline, and priority; the timing attribute is the generation time of the time-sensitive flow, and the constraint information includes queue isolation constraints, port isolation constraints, jitter safety margin constraints, and deadline constraints.

[0018] Optionally, based on the parameters of the time-sensitive flow, a multidimensional compatibility index matrix is ​​calculated, including:

[0019] Calculate the periodic compatibility between two time-sensitive streams Specifically, this is achieved through the following formula:

[0020] ;

[0021] Among them, T i T represents the period of time-sensitive flow i. j Let lcm represent the period of time-sensitive flow j, lcm represent the least common multiple, and gcd represent the greatest common divisor.

[0022] Calculate the load occupancy of two time-sensitive streams Specifically, this is achieved through the following formula:

[0023] ;

[0024] in, Indicates the frame transmission duration of time-sensitive stream i. This represents the frame transmission duration of time-sensitive stream j. This represents the period of the time-sensitive flow p. This represents the period of the time-sensitive flow q. This represents the frame transmission duration of the time-sensitive stream p. This represents the frame transmission duration of time-sensitive stream q, where time-sensitive stream p and time-sensitive stream q are any two time-sensitive streams from all time-sensitive streams.

[0025] Calculate the jitter interval risk for two time-sensitive streams Specifically, this is achieved through the following formula:

[0026] ;

[0027] Where gap is the safety interval;

[0028] Calculate the time window overlap between two time-sensitive streams Specifically, this is achieved through the following formula:

[0029] ;

[0030] ;

[0031] in, Indicates the latest sending time of time-sensitive stream i. This represents the latest sending time of time-sensitive stream j. This indicates the earliest start time of time-sensitive stream i. This indicates the earliest start time of time-sensitive stream j. This represents the window overlap ratio between time-sensitive stream i and time-sensitive stream j;

[0032] Periodic compatibility Load utilization jitter interval risk Overlap with time window We perform a weighted summation to obtain the comprehensive compatibility index. Specifically, this is achieved through the following formula:

[0033] ;

[0034] ;

[0035] in, , , , All are preset weights;

[0036] Repeat the above steps to calculate the multidimensional compatibility index matrix.

[0037] Optionally, determine the anchor stream and the final transmission phase of the anchor stream in each queue, including:

[0038] For each queue, obtain the greatest common divisor of the periods of all time-sensitive streams in the queue as the common scale G, and obtain the least common multiple of the periods of all time-sensitive streams in the queue as the supercycle H;

[0039] Among all time-sensitive streams in the queue, the time-sensitive stream with the longest period is selected as the anchor stream. If the periods of the time-sensitive streams are the same, the time-sensitive stream with the highest load is selected as the anchor stream. The load is obtained by dividing the packet size of the time-sensitive stream by the period. If the periods and loads of the time-sensitive streams are the same, the time-sensitive stream with the shortest packet deadline is selected as the anchor stream. Thus, the anchor stream for each queue is obtained.

[0040] The median value of the target interval of the anchor stream is obtained as the initial transmission phase of the anchor stream, and the initial transmission phase of each anchor stream is obtained. The target interval of the anchor stream is the time interval from the earliest transmission time to the latest transmission time.

[0041] For each anchor stream, it is determined whether the initial transmission phase of the anchor stream satisfies the constraints of the anchor stream. If the initial transmission phase of the anchor stream satisfies the constraints, the initial transmission phase of the anchor stream is taken as the final transmission phase. If the initial transmission phase of the anchor stream does not satisfy the constraints, the initial phase of the anchor stream is fine-tuned. Specifically, within the target interval of the anchor stream, the initial transmission phase is moved at a granularity of a common scale G to obtain the final transmission phase of the anchor stream, and thus the final transmission phase of each anchor stream is obtained.

[0042] Optionally, determine the transmission phase of non-anchor streams other than anchor streams in each queue, including:

[0043] Get the first non-anchor stream in the queue, and remove the determined phases from the interval between the earliest and latest sending times of the non-anchor stream to obtain the candidate sending phases;

[0044] For each candidate transmission phase, calculate the cost evaluation. ;

[0045] Among all the cost evaluations of candidate transmission phases, the candidate transmission phase with the lowest cost evaluation is selected and used as the first transmission phase of the non-anchor stream.

[0046] Determine whether the first transmission phase of the non-anchor stream satisfies the constraint information of the non-anchor stream. If the first transmission phase of the non-anchor stream satisfies the constraint information of the non-anchor stream, take the first transmission phase as the final transmission phase of the non-anchor stream, obtain the next anchor stream in the queue, and return to execute: remove the determined phase from the interval between the earliest and latest transmission times of the non-anchor stream.

[0047] If the first transmission phase of a non-anchor stream does not satisfy the constraint information of the non-anchor stream, conflict repair is performed to obtain the repair result. The repair result includes the final transmission phase of the non-anchor stream or conflict information. The conflict information includes the non-anchor stream, the link of the non-anchor stream, and all phases of the non-anchor stream.

[0048] If the repair result includes conflict information, increase the cost weight of all phases of non-anchor streams in the conflict information and return to the execution: remove the determined phases from the interval between the earliest and latest sending times of the non-anchor streams until all sending phases of the non-anchor streams satisfy the constraint information, and obtain the final sending phase of the non-anchor streams in each queue. If, during multiple rounds of execution, there are sending phases of non-anchor streams that do not satisfy the constraint information, return to the execution again: remove the determined phases from the interval between the earliest and latest sending times of the non-anchor streams; for sending phases of non-anchor streams with high priority, determine whether they satisfy the constraint information; for sending phases of non-anchor streams with low priority, do not determine whether they satisfy the constraint information, and obtain the final sending phase of the non-anchor streams in each queue.

[0049] Optionally, a cost evaluation is calculated for each candidate transmission phase. Specifically, this is achieved through the following formula:

[0050] ;

[0051] in, Indicates the candidate transmission phase; QueueGapRisk represents the inverse penalty of the minimum head-to-tail distance of adjacent intervals in the same queue; PortGapRisk represents the occupancy density penalty of other queues on the same port in this time window; SlackLossPenalty represents the penalty for insufficient window slack. , , All are cost weights.

[0052] Optionally, if the first transmission phase of the non-anchor stream does not satisfy the constraint information of the non-anchor stream, conflict repair is performed to obtain the repair result, including:

[0053] The first transmission phase of the non-anchor flow is fine-tuned to obtain the second transmission phase. Specifically, among the candidate phases of the non-anchor flow, the first transmission phase is moved multiple times with a common scale G as the granularity. The cost evaluation of each moved transmission phase is calculated, and the transmission phase with the smallest cost evaluation is selected as the second transmission phase. If the second transmission phase satisfies the constraint information, the second transmission phase is taken as the final transmission phase of the non-anchor flow.

[0054] If the second transmission phase does not meet the constraint information, intra-cluster rearrangement is performed. Specifically, all non-anchor flows in the queue to which the non-anchor flow belongs are obtained, and sorted in ascending order of data packet deadlines. For each non-anchor flow, the following steps are performed: remove the determined phase from the interval between the earliest and latest transmission times of the non-anchor flow until the transmission phase is obtained through phase fine-tuning. If the transmission phase obtained through phase fine-tuning meets the constraint information, it is taken as the final phase of the non-anchor flow.

[0055] If the phase fine-tuning results in a transmission phase that does not meet the constraints, then inter-cluster migration is performed. Specifically, the non-anchor flow is migrated to the queue adjacent to its own queue and with the lowest queue load. The queue load is the sum of the packet sizes of all time-sensitive flows in the queue divided by the least common multiple of the periods of all time-sensitive flows. Then, the process returns to: removing the determined phases from the interval between the earliest and latest transmission times of the non-anchor flow until the transmission phase is obtained by intra-cluster rearrangement. If the transmission phase obtained by intra-cluster rearrangement does not meet the constraints, then inter-cluster migration is performed again until the last queue is reached. If a transmission phase meets the constraints during the inter-cluster migration process, it is taken as the final phase of the non-anchor flow. If no transmission phase meets the constraints during the inter-cluster migration process, then the non-anchor flow, the link of the non-anchor flow, and all phases of the non-anchor flow are recorded.

[0056] The beneficial effects of adopting the above technical solution are as follows:

[0057] This invention introduces a multi-dimensional compatibility assessment and phase guidance mechanism on the end system side. It constructs a comprehensive compatibility index through four dimensions: periodic compatibility, load occupancy, jitter interval risk, and time window overlap, enabling clustered scheduling of time-sensitive flows and end-side jitter absorption and shaping. This method achieves highly reliable, low-latency quasi-periodic data transmission without relying on a globally synchronized optimization solver, thereby significantly improving the system's schedulability and latency stability.

[0058] This invention divides the global scheduling problem into multiple independent intra-cluster subproblems through queue partitioning based on multidimensional compatibility. This ensures that service flows within the same cluster have high similarity in terms of periodicity, bandwidth usage, and time tolerance characteristics, reducing scheduling competition between clusters and significantly lowering the probability of conflicts at the port and queue levels. Furthermore, an anchor flow mechanism is introduced, using flows with longer periods, higher loads, or tighter deadlines as time bases to establish a unified time grid structure. Other flows select phases at these grid points and are staggered, achieving periodic alignment and orderly peak shifting within the queue. This mechanism not only ensures the neatness and predictability of queue-level scheduling but also avoids the jitter amplification problem caused by multi-baseline conflicts.

[0059] In the phase allocation phase of non-anchor flows, this invention designs a multi-cost function that includes queue interval risk, port occupancy density, time window margin, and downstream link slackness. It selects the optimal transmission phase through heuristic search, ensuring the flow stays as far away from the boundary as possible within the feasible window and avoids port-level contention. This mechanism effectively prevents critical overlap caused by port reuse and can adaptively adjust locally to alleviate conflicts, thus obtaining a high-quality feasible solution within a limited computation time. Furthermore, through a local conflict repair strategy, this invention only fine-tunes or swaps the order of the affected time window and flow after detecting intra-cluster or port-level conflicts, without requiring a global backtracking, significantly reducing algorithm complexity and solution time.

[0060] Compared with traditional solutions that rely on static guard bands or global robustness modeling, this invention introduces a jitter absorption layer on the end system side, which reshapes the data stream into a quasi-periodic stream before it enters the first-hop switch. This avoids the cascading amplification of jitter during multi-hop transmission and effectively ensures the timing stability of subsequent nodes. Attached Figure Description

[0061] Figure 1 This is a flowchart illustrating a scheduling method for multidimensional compatibility and conflict resolution of TSN end-side jitter in an embodiment of the present invention. Detailed Implementation

[0062] The specific embodiments of the present invention will be described in further detail below with reference to the accompanying drawings and examples. The following examples are for illustrative purposes only and are not intended to limit the scope of the invention.

[0063] To address the problems existing in the prior art, this invention provides a scheduling method for TSN end-side jitter mitigation based on multidimensional compatibility and conflict repair. Addressing the issues of high computational complexity, sensitivity to end-system jitter, and difficulty in real-time deployment in engineering practice inherent in existing TSN scheduling methods, this invention proposes a lightweight, end-system jitter mitigation scheduling method based on multidimensional compatibility and conflict repair that can be optimized at the end-system level.

[0064] This invention introduces a multi-dimensional compatibility index during the end-system transmission phase to optimize data stream grouping and phase, absorbing arrival time uncertainties caused by end-side clock deviations at the source and preventing the cascading propagation of scheduling conflicts. Simultaneously, by combining a local conflict detection and repair mechanism, it achieves dynamic recovery of feasible solutions during phase allocation, improving the adaptability and robustness of scheduling.

[0065] By employing heuristic queue partitioning, anchor flow selection, and cost function-driven phase optimization mechanisms, this invention can quickly generate robust feasible scheduling tables without the need for a global solver. This effectively reduces computational complexity, improves port bandwidth utilization, and ensures that frame isolation and timing constraints are met, thereby significantly enhancing the real-time performance, determinism, and scalability of time-sensitive networks.

[0066] This invention provides a multi-dimensional compatibility and conflict resolution scheduling method for TSN end-side jitter, combining... Figure 1 This may include the following steps:

[0067] Step 1: On the end device, obtain multiple time-sensitive flows, as well as the parameters of the time-sensitive flows, their timing attributes, path, and constraint information. Specifically, the parameters of the time-sensitive flows can be obtained from the upper-layer network controller or configuration file.

[0068] The time-sensitive flow parameters include at least the period, frame transmission duration, jitter error upper bound, earliest start time, latest start time, first hop link, data packet size, data packet deadline, and priority; the timing attribute is the generation time of the time-sensitive flow, and the constraint information includes queue isolation constraints, port isolation constraints, jitter safety margin constraints, and deadline constraints.

[0069] In addition, the number of queues was initialized in step 1. In step 3, the total number of queues is less than or equal to the number of queues initialized. A compatibility matrix was also initialized to store the multidimensional compatibility evaluation values ​​between streams. A conflict record table was also initialized to record conflict information in the subsequent repair phase. Both tables were empty at this stage, and only two tables were set.

[0070] Step 2: Calculate the multidimensional compatibility index matrix based on the parameters of the time-sensitive flow;

[0071] Step 2.1: Calculate the periodic compatibility between two time-sensitive streams Specifically, this is achieved through the following formula:

[0072] ;

[0073] Among them, T i T represents the period of time-sensitive flow i. j The period of time-sensitive flow j is represented by lcm, the least common multiple is lcm, and the greatest common divisor is gcd; periodicity compatibility Used to characterize the harmonic relationship between two flow cycles, the smaller the value of this index, the more compatible the cycles are, and the easier it is to arrange them into conflict-free periodic schedules.

[0074] Step 2.2: Calculate the load occupancy of the two time-sensitive streams. Specifically, this is achieved through the following formula:

[0075] ;

[0076] in, Indicates the frame transmission duration of time-sensitive stream i. This represents the frame transmission duration of time-sensitive stream j. This represents the period of the time-sensitive flow p. This represents the period of the time-sensitive flow q. This represents the frame transmission duration of the time-sensitive stream p. This represents the frame transmission duration of time-sensitive stream q, where time-sensitive stream p and time-sensitive stream q are any two time-sensitive streams; load occupancy. Describes the time resource usage intensity of two streams, reflecting the bandwidth strain and load occupancy of a port or queue. The larger the value, the more time resources the two time-sensitive streams occupy, and the more likely they are to compete during scheduling.

[0077] Step 2.3: Calculate the jitter interval risk for the two time-sensitive streams. Specifically, this is achieved through the following formula:

[0078] ;

[0079] Here, gap is the safety interval used to absorb system jitter and clock errors; jitter interval risk. This is used to describe the overlap risk of two time-sensitive streams in the presence of clock skew. If the total transmission duration of the two time-sensitive streams and the safety interval are less than their periodic common divisor, then... If the value is close to 1, it means that the two time-sensitive flows will almost certainly overlap within a minimum common period and are unlikely to share the same queue. The larger the value, the higher the risk of time overlap between the two time-sensitive streams.

[0080] Step 2.4: Calculate the time window overlap between the two time-sensitive streams. Specifically, this is achieved through the following formula:

[0081] ;

[0082] ;

[0083] in, Indicates the latest sending time of time-sensitive stream i. This represents the latest sending time of time-sensitive stream j. This indicates the earliest start time of time-sensitive stream i. This indicates the earliest start time of time-sensitive stream j. This represents the window overlap ratio between time-sensitive stream i and time-sensitive stream j;

[0084] Time window overlap The degree of overlap between the sendable time windows [est, lst] of two time-sensitive streams is used to reflect their staggerability in the scheduling time domain. If the time windows of two time-sensitive streams completely overlap, ,but This indicates strong time competition; if the time windows of the two time-sensitive streams do not overlap at all, it means there is strong time competition. ,but This indicates complete separation in the time domain. Therefore, It can be directly used to evaluate whether two time-sensitive streams can be scheduled without interference in the time domain.

[0085] Step 2.5: Periodic compatibility Load utilization jitter interval risk Overlap with time window We perform a weighted summation to obtain the comprehensive compatibility index. Specifically, this is achieved through the following formula:

[0086] ;

[0087] ;

[0088] in, , , , All are preset weights; The smaller the value, the more compatible the two time-sensitive streams are in terms of multidimensional characteristics, and the more suitable they are to share the same sending queue.

[0089] Step 2.6: Repeat steps 2.1 to 2.5 to calculate the multidimensional compatibility index matrix;

[0090] Step 3: Process the multidimensional compatibility index matrix using a hierarchical clustering algorithm to obtain multiple queues, each containing multiple time-sensitive streams, and assign a number to each queue;

[0091] The goal of this phase is to ensure, while maintaining scheduling feasibility, maximize the compatibility of service flows within the same cluster in terms of periodicity, bandwidth usage, jitter risk, and time windows, thereby reducing the probability of conflicts in subsequent phase allocation. If the incompatibility within the current cluster exceeds a threshold, a new cluster (i.e., a queue) is created. Under the same conditions, the load of the cluster is balanced first to make the utilization rates of each queue similar.

[0092] To ensure that scheduling within the same queue cluster has a unified time base, the concept of "anchor flow" is proposed. Anchor flow is a reference flow used to define the time tick structure of the queue cluster, and its period and phase serve as the reference for the phase allocation of other flows within the cluster.

[0093] Step 4: Determine the anchor stream and the final transmission phase of the anchor stream in each queue. The transmission phase of the anchor stream represents the transmission time of the anchor stream.

[0094] Step 4.1: For each queue, obtain the greatest common divisor of the periods of all time-sensitive streams in the queue as the common scale G, and obtain the least common multiple of the periods of all time-sensitive streams in the queue as the supercycle H;

[0095] Step 4.2: Among all time-sensitive streams in the queue, the time-sensitive stream with the longest period is selected as the anchor stream. If the periods of the time-sensitive streams are the same, the time-sensitive stream with the highest load is selected as the anchor stream. The load is obtained by dividing the packet size of the time-sensitive stream by the period. If the periods and loads of the time-sensitive streams are the same, the time-sensitive stream with the smallest packet deadline is selected as the anchor stream. This process is repeated to obtain the anchor stream for each queue.

[0096] Step 4.3: Obtain the median value of the target interval of the anchor stream as the initial transmission phase of the anchor stream, and obtain the initial transmission phase of each anchor stream. The target interval of the anchor stream is the time interval from the earliest transmission time to the latest transmission time.

[0097] Step 4.4: For each anchor stream, determine whether the initial transmission phase of the anchor stream satisfies the constraint information of the anchor stream. If the initial transmission phase of the anchor stream satisfies the constraint information, the initial transmission phase of the anchor stream is taken as the final transmission phase. If the initial transmission phase of the anchor stream does not satisfy the constraint information, the initial phase of the anchor stream is fine-tuned. Specifically, within the target interval of the anchor stream, the initial transmission phase is moved at a granularity of common scale G to obtain the final transmission phase of the anchor stream, and thus the final transmission phase of each anchor stream is obtained.

[0098] Other non-anchor streams perform phase search and staggered arrangement at this time grid, avoiding and aligning with the phase of the anchor stream as a reference, thereby ensuring the neatness and predictability of the periodic structure within the queue. This mechanism ensures orderly scheduling while avoiding phase oscillations and increased computational complexity caused by multi-reference conflicts. For each candidate phase of the anchor stream, the following evaluation quantities are calculated: boundary margin with transmittable time slots and port conflict risk between different queues.

[0099] Step 5: Determine the transmission phase of non-anchor streams other than anchor streams in each queue;

[0100] Step 5.1: Obtain the first non-anchor stream in the queue, and remove the determined phases from the interval between the earliest and latest sending times of the non-anchor stream to obtain the candidate sending phases;

[0101] Step 5.2: Calculate the cost evaluation for each candidate transmission phase. Specifically, this is achieved through the following formula:

[0102] ;

[0103] in, Indicates the candidate transmission phase; QueueGapRisk represents the inverse penalty of the minimum head-to-tail distance of adjacent intervals in the same queue; PortGapRisk represents the occupancy density penalty of other queues on the same port in this time window; SlackLossPenalty represents the penalty for insufficient window slack. , , All are cost weights;

[0104] Step 5.3: Among all the cost evaluations of candidate transmission phases, obtain the candidate transmission phase with the minimum cost evaluation and use it as the first transmission phase of the non-anchor stream;

[0105] Step 5.4: Determine whether the first transmission phase of the non-anchor stream satisfies the constraint information of the non-anchor stream. If the first transmission phase of the non-anchor stream satisfies the constraint information of the non-anchor stream, take the first transmission phase as the final transmission phase of the non-anchor stream, obtain the next anchor stream in the queue, and return to execute Step 5.1: Remove the determined phases from the interval between the earliest and latest transmission times of the non-anchor stream to obtain candidate transmission phases;

[0106] If the first transmission phase of the non-anchor stream does not satisfy the constraint information of the non-anchor stream, conflict repair is performed (i.e., Figure 1 (Local repair) When the non-anchor stream cannot find a feasible phase that satisfies all constraints, or when the system detects a conflict in the local arrangement (such as overlapping frames in the queue, simultaneous transmission at the port level, etc.), it enters the conflict repair phase.

[0107] The repair result includes the final transmission phase of the non-anchor stream (corresponding to...) Figure 1 Repair successful), or conflict information (corresponding to Figure 1 (Repair unsuccessful), conflict information includes non-anchor flows, links of non-anchor flows, and all phases of non-anchor flows;

[0108] Specifically, the first transmission phase of the non-anchor stream is fine-tuned to obtain the second transmission phase. Specifically, among the candidate phases of the non-anchor stream, the first transmission phase is moved multiple times with a common scale G as the granularity. The cost evaluation of each moved transmission phase is calculated, and the transmission phase with the smallest cost evaluation is selected as the second transmission phase. If the second transmission phase satisfies the constraint information, the second transmission phase is taken as the final transmission phase of the non-anchor stream.

[0109] If the second transmission phase does not meet the constraint information, intra-cluster rearrangement is performed. Specifically, all non-anchor flows in the queue to which the non-anchor flow belongs are obtained, and sorted in ascending order of data packet deadlines. In order, for each non-anchor flow, step 5.1 is returned: the determined phases are removed from the interval between the earliest and latest transmission times of the non-anchor flow until the phase is fine-tuned to obtain the transmission phase. If the transmission phase obtained by phase fine-tuning meets the constraint information, it is taken as the final phase of the non-anchor flow.

[0110] If the phase fine-tuning results in a transmission phase that does not meet the constraint information, then inter-cluster migration is performed. Specifically, the non-anchor flow is migrated to the queue adjacent to its own queue and the queue with the lowest queue load. The queue load is the sum of the packet sizes of all time-sensitive flows in the queue divided by the least common multiple of the periods of all time-sensitive flows. Then, return to step 5.1: Remove the determined phases from the interval between the earliest and latest transmission times of the non-anchor flow until the transmission phase is obtained by intra-cluster rearrangement. If the transmission phase obtained by intra-cluster rearrangement does not meet the constraint information, then inter-cluster migration is performed again until the last queue is reached. If a transmission phase meets the constraint information during the inter-cluster migration process, then it is taken as the final phase of the non-anchor flow. If no transmission phase meets the constraint information during the inter-cluster migration process, then the non-anchor flow, the link of the non-anchor flow, and all phases of the non-anchor flow are recorded.

[0111] Step 5.5: If the repair result includes conflict information, increase the cost weight of all phases of non-anchor streams in the conflict information, and return to execute Step 5.1: Remove the determined phases from the interval between the earliest and latest sending times of the non-anchor streams to obtain candidate sending phases, until the sending phases of all non-anchor streams satisfy the constraint information, and obtain the final sending phase of the non-anchor streams in each queue. If, during the process of returning to execute multiple rounds, there are non-anchor stream sending phases that do not satisfy the constraint information, then return to execute Step 5.1 again: Remove the determined phases from the interval between the earliest and latest sending times of the non-anchor streams. For the sending phases of non-anchor streams with high priority, determine whether they satisfy the constraint information. For the sending phases of non-anchor streams with low priority, do not determine whether they satisfy the constraint information, and obtain the final sending phase of the non-anchor streams in each queue.

[0112] The cost weight of all phases of non-anchor flows in the conflict information is increased to guide the scheduler to avoid high-risk combinations. This conflict record participates in the next round of scheduling as a lightweight constraint to avoid repeated conflicts, while not permanently masking potentially feasible combinations. If the conflict still cannot be resolved after multiple rounds of repair, the system triggers a degradation tolerance strategy, allowing a limited range of delay offsets or a one-cycle delay for non-critical flows (i.e., low-priority non-anchor flows) to maintain global schedulability.

[0113] Step 6: Based on the final transmission phase of all non-anchor streams and the final transmission phase of all anchor streams, generate a gating slot configuration table for each queue. The final transmission phase of each time-sensitive stream, the queue to which each time-sensitive stream belongs, and the gating slot configuration table of each queue constitute a global scheduling table.

[0114] Step 7: The end-side device sends time-sensitive flows to the TSN switch according to the global scheduling table; the output scheduling table can be directly sent to the TAPRIO module in Linux or the TSN switch configuration interface to achieve synchronous scheduling after jitter absorption at the end side. Since this invention achieves jitter absorption at the end system side through lightweight heuristic phase optimization, the flows entering the switch have been shaped into quasi-periodic flows, thereby effectively improving the schedulability and robustness of the entire TSN network.

[0115] This invention proposes a time-sensitive network (TSN) end-side jitter absorption scheduling method based on multidimensional compatibility and conflict repair. Addressing the problems of existing TSN scheduling methods that generally rely on global optimization solutions, are computationally complex, and neglect end-side jitter absorption, this invention innovatively introduces a lightweight heuristic optimization mechanism on the end system side, realizing integrated scheduling from "source jitter shaping" to "network synchronous transmission".

[0116] The core innovations of this invention are mainly reflected in three aspects: (1) A multi-dimensional compatibility index system is constructed, which comprehensively considers multiple factors such as periodicity, load occupancy, jitter risk and time window overlap, and establishes a coexistence measurement model between business flows, providing a quantitative basis for subsequent clustering and scheduling; (2) Secondly, an anchor flow phase reference mechanism is proposed, which selects flows with longer periods, higher loads or tighter deadlines as time references to establish a unified time grid, ensuring the neatness and predictability of scheduling within the queue and avoiding phase oscillations caused by multiple reference bases; (3) A conflict repair and heuristic fine-tuning strategy is introduced. When a local conflict is detected, the phase is adjusted or the flow cluster is migrated only within the affected window, without the need for global backtracking, thereby significantly reducing computational complexity. Through the above mechanisms, this invention realizes fast and feasible scheduling and dynamic jitter absorption on the end system side, providing a new end-side optimization framework with low complexity and high robustness for time-sensitive networks.

[0117] Compared to existing time-sensitive network scheduling methods that rely on global modeling and solving using SMT / ILP, this invention introduces a multi-dimensional compatibility assessment and phase guidance mechanism at the end system side. It constructs a comprehensive compatibility index through four dimensions: periodic compatibility, load occupancy, jitter interval risk, and time window overlap, achieving clustered scheduling of time-sensitive flows and end-side jitter absorption and shaping. This method achieves highly reliable, low-latency quasi-periodic data transmission without relying on a global synchronous optimization solver, thereby significantly improving the system's schedulability and latency stability.

[0118] This invention divides the global scheduling problem into multiple independent intra-cluster subproblems through queue partitioning based on multidimensional compatibility. This ensures that service flows within the same cluster have high similarity in terms of periodicity, bandwidth usage, and time tolerance characteristics, reducing scheduling competition between clusters and significantly lowering the probability of conflicts at the port and queue levels. Furthermore, an anchor flow mechanism is introduced, using flows with longer periods, higher loads, or tighter deadlines as time bases to establish a unified time grid structure. Other flows select phases at these grid points and are staggered, achieving periodic alignment and orderly peak shifting within the queue. This mechanism not only ensures the neatness and predictability of queue-level scheduling but also avoids the jitter amplification problem caused by multi-baseline conflicts.

[0119] In the phase allocation phase of non-anchor flows, this invention designs a multi-cost function that includes queue interval risk, port occupancy density, time window margin, and downstream link slackness. It selects the optimal transmission phase through heuristic search, ensuring the flow stays as far away from the boundary as possible within the feasible window and avoids port-level contention. This mechanism effectively prevents critical overlap caused by port reuse and can adaptively adjust locally to alleviate conflicts, thus obtaining a high-quality feasible solution within a limited computation time. Furthermore, through a local conflict repair strategy, this invention only fine-tunes or swaps the order of the affected time window and flow after detecting intra-cluster or port-level conflicts, without requiring a global backtracking, significantly reducing algorithm complexity and solution time.

[0120] Compared with traditional solutions that rely on static guard bands or global robustness modeling, this invention introduces a jitter absorption layer on the end system side, which reshapes the data stream into a quasi-periodic stream before it enters the first-hop switch. This avoids the cascading amplification of jitter during multi-hop transmission and effectively ensures the timing stability of subsequent nodes.

[0121] In summary, this invention achieves a fusion of edge jitter absorption and scalable scheduling in time-sensitive networks, ensuring both real-time performance and reliability of scheduling while also considering the feasibility of engineering implementation. Its main advantages include: maintaining low-jitter deterministic communication without requiring high-precision global synchronization; rapidly generating feasible schedules with limited computing resources; and significantly improving network robustness and bandwidth utilization efficiency through lightweight edge deployment, demonstrating good engineering promotion value and application prospects.

[0122] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in the embodiments of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described inventive concept. For example, technical solutions formed by substituting the above-described features with (but not limited to) technical features with similar functions disclosed in the embodiments of this disclosure.

Claims

1. A scheduling method for multidimensional compatibility and conflict resolution oriented towards TSN end-side jitter, characterized in that, include: On the edge device, acquire multiple time-sensitive streams, as well as the parameters of the time-sensitive streams, their timing attributes, path, and constraint information; Based on the parameters of the time-sensitive flow, a multidimensional compatibility index matrix is ​​calculated; Specifically, calculate the periodic compatibility between two time-sensitive streams. Specifically, this is achieved through the following formula: ; Among them, T i T represents the period of time-sensitive flow i. j Let lcm represent the period of time-sensitive flow j, lcm represent the least common multiple, and gcd represent the greatest common divisor. Calculate the load occupancy of two time-sensitive streams Specifically, this is achieved through the following formula: ; in, Indicates the frame transmission duration of time-sensitive stream i. This represents the frame transmission duration of time-sensitive stream j. This represents the period of the time-sensitive flow p. This represents the period of the time-sensitive flow q. This indicates the frame transmission duration of the time-sensitive stream p. This represents the frame transmission duration of time-sensitive stream q, where time-sensitive stream p and time-sensitive stream q are any two time-sensitive streams from all time-sensitive streams. Calculate the jitter interval risk for two time-sensitive streams Specifically, this is achieved through the following formula: ; Where gap is the safety interval; Calculate the time window overlap between two time-sensitive streams Specifically, this is achieved through the following formula: ; ; in, Indicates the latest sending time of time-sensitive stream i. This represents the latest sending time of time-sensitive stream j. This indicates the earliest start time of time-sensitive stream i. This indicates the earliest start time of time-sensitive stream j. This represents the window overlap ratio between time-sensitive stream i and time-sensitive stream j; Periodic compatibility Load utilization jitter interval risk Overlap with time window We perform a weighted summation to obtain the comprehensive compatibility index. Specifically, this is achieved through the following formula: ; ; in, , , , All are preset weights; Repeat the above steps to calculate the multidimensional compatibility index matrix; The multidimensional compatibility index matrix is ​​processed by a hierarchical clustering algorithm to obtain multiple queues, each containing multiple time-sensitive streams, and each queue is assigned a number. Determine the anchor stream and the final transmission phase of the anchor stream in each queue. The transmission phase of the anchor stream represents the transmission time of the anchor stream. Determine the transmission phase of non-anchor streams other than anchor streams in each queue; Based on the final transmission phase of all non-anchor streams and the final transmission phase of all anchor streams, a gating slot configuration table for each queue is generated. The final transmission phase of each time-sensitive stream, the queue to which each time-sensitive stream belongs, and the gating slot configuration table for each queue constitute a global scheduling table. End-side devices send time-sensitive flows to the TSN switch according to the global scheduling table.

2. The scheduling method for multi-dimensional compatibility and conflict repair oriented towards TSN end-side jitter according to claim 1, characterized in that, The time-sensitive flow parameters include at least the period, frame transmission duration, jitter error upper bound, earliest start time, latest start time, first hop link, data packet size, data packet deadline, and priority; the timing attribute is the generation time of the time-sensitive flow, and the constraint information includes queue isolation constraints, port isolation constraints, jitter safety margin constraints, and deadline constraints.

3. The scheduling method for multidimensional compatibility and conflict repair oriented towards TSN end-side jitter according to claim 1, characterized in that, Determine the anchor stream and the final transmission phase of the anchor stream in each queue, including: For each queue, obtain the greatest common divisor of the periods of all time-sensitive streams in the queue as the common scale G, and obtain the least common multiple of the periods of all time-sensitive streams in the queue as the supercycle H; Among all time-sensitive streams in the queue, the time-sensitive stream with the longest period is selected as the anchor stream. If the periods of the time-sensitive streams are the same, the time-sensitive stream with the highest load is selected as the anchor stream. The load is obtained by dividing the packet size of the time-sensitive stream by the period. If the periods and loads of the time-sensitive streams are the same, the time-sensitive stream with the shortest packet deadline is selected as the anchor stream. Thus, the anchor stream for each queue is obtained. The median value of the target interval of the anchor stream is obtained as the initial transmission phase of the anchor stream, and the initial transmission phase of each anchor stream is obtained. The target interval of the anchor stream is the time interval from the earliest transmission time to the latest transmission time. For each anchor stream, it is determined whether the initial transmission phase of the anchor stream satisfies the constraints of the anchor stream. If the initial transmission phase of the anchor stream satisfies the constraints, the initial transmission phase of the anchor stream is taken as the final transmission phase. If the initial transmission phase of the anchor stream does not satisfy the constraints, the initial phase of the anchor stream is fine-tuned. Specifically, within the target interval of the anchor stream, the initial transmission phase is moved at a granularity of a common scale G to obtain the final transmission phase of the anchor stream, and thus the final transmission phase of each anchor stream is obtained.

4. The scheduling method for multidimensional compatibility and conflict repair oriented towards TSN end-side jitter according to claim 1, characterized in that, Determine the transmission phase of non-anchor streams other than anchor streams in each queue, including: Get the first non-anchor stream in the queue, and remove the determined phases from the interval between the earliest and latest sending times of the non-anchor stream to obtain the candidate sending phases; For each candidate transmission phase, calculate the cost evaluation. ; Among all the cost evaluations of candidate transmission phases, the candidate transmission phase with the lowest cost evaluation is selected and used as the first transmission phase of the non-anchor stream. Determine whether the first transmission phase of the non-anchor stream satisfies the constraint information of the non-anchor stream. If the first transmission phase of the non-anchor stream satisfies the constraint information of the non-anchor stream, take the first transmission phase as the final transmission phase of the non-anchor stream, obtain the next anchor stream in the queue, and return to execute: remove the determined phase from the interval between the earliest and latest transmission times of the non-anchor stream. If the first transmission phase of a non-anchor stream does not satisfy the constraint information of the non-anchor stream, conflict repair is performed to obtain the repair result. The repair result includes the final transmission phase of the non-anchor stream or conflict information. The conflict information includes the non-anchor stream, the link of the non-anchor stream, and all phases of the non-anchor stream. If the repair result includes conflict information, increase the cost weight of all phases of non-anchor streams in the conflict information and return to the execution: remove the determined phases from the interval between the earliest and latest sending times of the non-anchor streams until all sending phases of the non-anchor streams satisfy the constraint information, and obtain the final sending phase of the non-anchor streams in each queue. If, during multiple rounds of execution, there are sending phases of non-anchor streams that do not satisfy the constraint information, return to the execution again: remove the determined phases from the interval between the earliest and latest sending times of the non-anchor streams; for sending phases of non-anchor streams with high priority, determine whether they satisfy the constraint information; for sending phases of non-anchor streams with low priority, do not determine whether they satisfy the constraint information, and obtain the final sending phase of the non-anchor streams in each queue.

5. A scheduling method for multidimensional compatibility and conflict repair oriented towards TSN end-side jitter according to claim 4, characterized in that, For each candidate transmission phase, calculate the cost evaluation. Specifically, this is achieved through the following formula: ; in, Indicates the candidate transmission phase; QueueGapRisk represents the inverse penalty of the minimum head-to-tail distance of adjacent intervals in the same queue; PortGapRisk represents the occupancy density penalty of other queues on the same port in this time window; SlackLossPenalty represents the penalty for insufficient window slack. , , All are cost weights.

6. A scheduling method for multidimensional compatibility and conflict repair oriented towards TSN end-side jitter according to claim 4, characterized in that, If the first transmission phase of a non-anchor stream does not satisfy the constraint information of the non-anchor stream, conflict repair is performed, and the repair result is obtained, including: The first transmission phase of the non-anchor flow is fine-tuned to obtain the second transmission phase. Specifically, among the candidate phases of the non-anchor flow, the first transmission phase is moved multiple times with a common scale G as the granularity. The cost evaluation of each moved transmission phase is calculated, and the transmission phase with the smallest cost evaluation is selected as the second transmission phase. If the second transmission phase satisfies the constraint information, the second transmission phase is taken as the final transmission phase of the non-anchor flow. If the second transmission phase does not meet the constraint information, intra-cluster rearrangement is performed. Specifically, all non-anchor flows in the queue to which the non-anchor flow belongs are obtained, and sorted in ascending order of data packet deadlines. For each non-anchor flow, the following steps are performed: remove the determined phase from the interval between the earliest and latest transmission times of the non-anchor flow until the transmission phase is obtained through phase fine-tuning. If the transmission phase obtained through phase fine-tuning meets the constraint information, it is taken as the final phase of the non-anchor flow. If the phase fine-tuning results in a transmission phase that does not meet the constraints, then inter-cluster migration is performed. Specifically, the non-anchor flow is migrated to the queue adjacent to its own queue and with the lowest queue load. The queue load is the sum of the packet sizes of all time-sensitive flows in the queue divided by the least common multiple of the periods of all time-sensitive flows. Then, the process returns to: removing the determined phases from the interval between the earliest and latest transmission times of the non-anchor flow until the transmission phase is obtained by intra-cluster rearrangement. If the transmission phase obtained by intra-cluster rearrangement does not meet the constraints, then inter-cluster migration is performed again until the last queue is reached. If a transmission phase meets the constraints during the inter-cluster migration process, it is taken as the final phase of the non-anchor flow. If no transmission phase meets the constraints during the inter-cluster migration process, then the non-anchor flow, the link of the non-anchor flow, and all phases of the non-anchor flow are recorded.