Traffic scheduling method for avionics system based on time sensitive network qbv protocol

By transforming the flow constraints of avionics systems into available time slot ranges and dynamically updating the scheduling sequence, a deterministic scheduling table is directly generated, solving the problems of long scheduling time and randomness in existing methods and realizing efficient deterministic scheduling design.

CN117278487BActive Publication Date: 2026-04-24BEIHANG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIHANG UNIV
Filing Date
2023-10-23
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

When applying the Time-Sensitive Network (Qbv) protocol to existing avionics systems, there is a lack of methods for rapidly generating deterministic scheduling tables. Existing methods rely on external solvers or have randomness in scheduling schemes, resulting in low efficiency in scheduling design.

Method used

By converting the complex constraints between traffic flows into an equivalent range of available traffic time slots and dynamically updating the traffic scheduling queue in real time, a deterministic traffic scheduling table is directly generated, and scheduling planning is performed using the network topology and traffic configuration information generated by aviation equipment.

Benefits of technology

It enables the rapid generation of deterministic scheduling tables, avoids dependence on external solvers, improves scheduling design efficiency and determinism, and solves the problems of long scheduling time and randomness in traditional methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117278487B_ABST
    Figure CN117278487B_ABST
Patent Text Reader

Abstract

The application discloses a traffic scheduling method of an avionics system based on a time-sensitive network Qbv protocol, and the method comprises the following steps: traffic scheduling initialization, obtaining traffic and a transmission path thereof, calculating a range boundary of available time slots, excluding invalid time for scheduling, calculating a traffic scheduling time, updating a traffic scheduling queuing sequence, generating a scheduling Gantt chart, and synthesizing a gate list. The method directly calculates a bias for scheduling traffic in a TSN network by means of dynamic sequencing and boundary conversion, not only overcomes the dependence on an external solver in a traditional constraint solving method, but also avoids the randomness of iterative optimization in an intelligent optimization method, so that a deterministic traffic scheduling table serving the avionics system can be quickly generated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to avionics systems using the Time-Sensitive Networking (Qbv) protocol, and more particularly, to a flow scheduling method for avionics systems based on the Qbv protocol, which is a fast flow scheduling method based on dynamic flow sorting and boundary equivalence transformation. Background Technology

[0002] Avionics systems are evolving towards greater integration, placing higher demands on data transmission capacity, real-time performance, and reliability. Time-Sensitive Networking (TSN), as a current candidate protocol for "timely and accurate" end-to-end transmission, has attracted widespread attention in the aviation industry. Within the TSN protocol suite, the IEEE 802.1Qbv protocol proposes a Time-Aware Shaper (TAS) flow control mechanism based on a Gate Control List (GCL). This mechanism can ensure the transmission of high-priority scheduled traffic (ST) by controlling the opening and closing times of time windows for different priority traffic queues. Designing feasible traffic scheduling schemes and implementing GCLs have become prerequisites for applying the Qbv protocol. However, the switched interconnection and First-In-First-Out (FIFO) principle of TSN networks increase the complexity of traffic scheduling constraints, posing significant challenges to scheduling design.

[0003] Existing scheduling methods primarily employ constraint-solving and intelligent optimization methods. Constraint-solving methods largely combine the generated network topology and traffic configuration, transforming constraints into mathematical logical expressions based on Satisfiability Modulo Theories (SMT) or Integer Linear Programming (ILP) for solution. Their scheduling design often relies on time-consuming, computationally intensive computations by the corresponding solvers. Intelligent optimization methods draw on heuristic learning or machine learning ideas, achieving optimal scheduling design by setting optimization objectives and search strategies. However, the random selection in iterative searches introduces randomness into the scheduling scheme. Therefore, current avionics systems still lack methods for rapidly generating deterministic scheduling tables for TSN networks. Summary of the Invention

[0004] For traffic scheduling under the Time-Sensitive Network (TSN) Qbv protocol in avionics systems, existing constraint-solving methods or intelligent optimization methods still suffer from drawbacks such as reliance on external solvers, long solution times, or random scheduling schemes. This invention proposes a traffic scheduling method for avionics systems based on the TSN Qbv protocol. This method converts complex constraints between traffic flows into equivalent available traffic time slot ranges and dynamically updates the traffic scheduling queue sequence in real time, thereby quickly generating a deterministic traffic scheduling table. This table is then used for network traffic scheduling under the TSN Qbv protocol. When applied to avionics systems, this traffic scheduling method improves the efficiency of traffic scheduling design while ensuring the determinism of the traffic scheduling table.

[0005] When the network topology generated by various aviation devices in an avionics system is used for fast traffic scheduling based on the Time-Sensitive Networking (Qbv) protocol, a deterministic traffic scheduling table can be quickly generated directly through dynamic traffic sorting and boundary equivalence transformations without relying on an external solver. In this invention, the length and period of the same traffic flow under the Qbv protocol are fixed. Traffic flow m i The length is denoted as Flow rate m i The period is denoted as In fast calculation of transmission time When generating the TSN network available gating list (GCL), execute the following: Figure 1 The present invention discloses a flow scheduling method for an avionics system based on the Time-Sensitive Network (Qbv) protocol. The flow scheduling method of the present invention includes the following steps:

[0006] Step 1: Initialize traffic scheduling;

[0007] Step 1-1: Initialize the scheduling state of all scheduled traffic;

[0008] schedulable traffic sets Scheduling status of each traffic item Initialize to the unscheduled state (undone).

[0009] In this invention, This indicates the scheduling status. This includes both unscheduled (undone) and scheduled (done).

[0010] "undone" indicates that all traffic in the TSN network is unscheduled in the initial state, or simply unscheduled.

[0011] "done" indicates that the traffic has been scheduled during the scheduling process.

[0012] Steps 1-2: Initialize the idle time slot range for all links;

[0013] In this invention, the static routing table TAB configured in the TSN network is used. 路由 and link l (node) β ,node χ Supercycle Set up idle time slots Initialize to

[0014] Static routing table

[0015] link Traffic transmitted on the link

[0016] In this invention, the static routing table is a database in the form of a two-column, multi-row table, used to record the correspondence between links and traffic in avionics systems under the Time-Sensitive Network (Qbv) protocol.

[0017] Steps 1-3: Queuing for traffic scheduling;

[0018] schedulable traffic sets Sort the data according to the traffic cycle from smallest to largest to obtain the first sorted set, denoted as MIA.

[0019] The traffic with the same period in the first sorted set MIA is sorted in ascending order of traffic length to obtain the second sorted set, denoted as QM.

[0020] Steps 1-4: Initialize the current scheduled traffic;

[0021] Let the current scheduled traffic be denoted as cur. QM During initialization, cur QM Empty.

[0022] Initialize by selecting the first queuing flow from the second sort set QM and labeling it as m. i and the m i Assigning the current scheduled traffic to cur QM Then there is cur QM = <m i >

[0023] Step 2: Obtain the current scheduled traffic and its transmission path;

[0024] Step 2-1: Obtain the current scheduled traffic;

[0025] Based on the current scheduled traffic cur QM Obtain the traffic to be scheduled, i.e., m i .

[0026] Step 2-2: Obtain the transmission path of the currently scheduled traffic;

[0027] According to the static routing table TAB configured in the TSN network 路由 Get m i transmission path set

[0028] Steps 2-3: Initialize the transmission link number of the current scheduled traffic;

[0029] Let the current link be denoted as cur. QP During initialization, cur QP Empty.

[0030] Initialization, selection The first path link in and the As the current link for the currently scheduled traffic, i.e., cur QP Assigned value

[0031] Steps 2-4: Obtain the transmission links of the currently scheduled traffic;

[0032] According to the current link cur QP Obtain the traffic to be scheduled – the link, i.e.

[0033] Step 3: Calculate the upper and lower bounds of the available time slot range for the current scheduled traffic on the current transmission link;

[0034] Step 3-1: Determine the calculation method for the upper and lower boundaries of the time slot range;

[0035] Traffic to be scheduled m i Traffic awaiting scheduling – Link The available time slot range on is denoted as and for The lower boundary value. for The upper boundary value.

[0036] judge Is it The first link in; if yes The first link in, namely If the source node is an end system node, then proceed to step 3-2; if no If the first link in the chain is selected, then step 3-3 is executed. In this invention, step 3-3 includes four sub-steps.

[0037] Step 3-2: Calculate the upper and lower boundary values ​​of the available time slot range for the current scheduled traffic on the first link;

[0038] Will Assigned to the idle time slot set The left boundary. Calculated according to formula (1). Perform step four. In this invention, step four includes four sub-steps.

[0039]

[0040] The traffic to be scheduled is m i The cycle. The traffic to be scheduled is m i The length.

[0041] Step 3-3: Calculate the upper and lower boundary values ​​of the available time slot range for the current scheduled traffic on non-first links;

[0042] Step 3-3A, search Equivalent Link Set

[0043] Step 3-3B, according to Statistics m i exist Equivalent traffic set of uptransmission

[0044] Step 3-3C, in Searching for m i Transmit to The previous link The target node and The source nodes are the same. Calculate according to formula (1). Calculate according to formula (2)

[0045]

[0046] Step 3 – 3D: Initialize equivalent flow;

[0047] In this invention, equivalent flow sets are utilized. The equivalent flow in the equation is determined and iteratively updated according to formulas (3) and (4). and Then proceed to step four.

[0048]

[0049]

[0050] This represents the traffic volume m to be scheduled. i The number of instances.

[0051] This represents the number of instances of equivalent flow.

[0052] δ represents the clock synchronization accuracy.

[0053] Step 4: Exclude invalid moments of currently scheduled traffic on the current link;

[0054] Step 4-1: Obtain the list of subsequent links for the current link in response to the current scheduled traffic;

[0055] In m i transmission path set Searching for m i In the link subsequent link set

[0056] Step 4-2: Obtain the list of interfering traffic when the currently scheduled traffic is transmitted on the current link;

[0057] according to Construct m i exist The set of interfering traffic

[0058] Step 4-3: Determine the list of invalid times for the currently scheduled traffic on the current link;

[0059] Step 4-3A: Determine the set of interfering traffic. Is it empty? If it is empty, proceed to step five; otherwise, proceed to step 4-3B.

[0060] Step 4-3B, Initialize the set of invalid times Empty;

[0061] Step 4-3C, using The list of invalid scheduling times is updated iteratively according to formula (5);

[0062]

[0063]

[0064] This represents the number of instances of interfering traffic.

[0065] Step 4-4: Exclude the list of invalid times for currently scheduled traffic on the current link;

[0066] Update m i exist Available time slots on And exclude invalid time sets from them.

[0067] Step 5: Calculate the scheduling time of the current scheduled traffic on the current transmission link;

[0068] Step 5-1: Determine whether the currently scheduled traffic is schedulable on the current transmission link;

[0069] according to Preliminary judgment m i exist Is it schedulable? If so... Then m i exist If the upper part is unschedulable, proceed to step six; if Then m i exist The above can be scheduled, and step 5-2 will be executed.

[0070] Step 5-2: Iteratively determine the scheduling time of the current scheduled traffic on the current transmission link;

[0071] Step 5-2A: Initialize the iteratively determined identifier r, and assign r the value... Right now

[0072] Step 5-2B: Calculate the estimated time slots occupied by the scheduling traffic in the current iteration according to formula (7).

[0073]

[0074] Step 5-2C, Determine Does it completely belong to the current link's idle time slot set? If it belongs to this category, then the scheduling bias of the current scheduled traffic on the current transmission link can be assigned a value, that is, it is... m i scheduling status Set to done, update Then proceed to step 5-2D; otherwise, proceed to step 5-2G.

[0075] Step 5-2D: Determine whether the current scheduled traffic has completed scheduling calculations on all transmission links, i.e., determine... If the destination node is an end system, proceed to step 5-2E; otherwise, proceed to step 5-2F.

[0076] Step 5-2E, update cur QM Determine whether all traffic scheduling calculations have been completed. If so, proceed to step seven; otherwise, proceed to step 2-1.

[0077] Step 5-2F, update cur QP Proceed to steps 2-4.

[0078] Step 5-2G, Determine If the condition is true, proceed to step six; otherwise, proceed to step 5-2H.

[0079] Step 5-2H, update the iteration to determine the identifier r as Return to the next available time slot within the current time slot and execute step 5-2B.

[0080] Step 6: Dynamically update the traffic scheduling queue sequence;

[0081] Step 6-1: Identify the blocking traffic that causes the currently scheduled traffic to be unschedulable on the current link;

[0082] Calculate the equivalent flow set according to formula (8) Any equivalent flow m y blocking distance

[0083]

[0084] If m y If the blocking distance is minimized, then m y Identity changed to m i The blocked traffic.

[0085] Step 6-2: Update the idle transmission time slots of the relevant links;

[0086] Find the blocked flow m in the queue sequence QM y And subsequent traffic, compensate for the time slots occupied by this traffic on the corresponding transmission links, and update the idle time slots of the relevant links.

[0087] Step 6-3: Update the queuing sequence for traffic scheduling;

[0088] In QM, the traffic m to be scheduled i Insert blocking flow m y Before that, a new queuing sequence QM is formed. 新 .

[0089] Step 6-4: Update the sort number of the currently scheduled traffic;

[0090] Update cur QM Determine whether the task is completed. If completed, proceed to step 7; otherwise, proceed to step 2-1.

[0091] Step 7: Complete the scheduling design for all traffic.

[0092] Step 7-1: Generate a network scheduling Gantt chart;

[0093] The scheduling times of all traffic on the corresponding links are converted into scheduling times at the output ports of network nodes under the Time-Sensitive Networking (Qbv) protocol, and the scheduling status of each output port is summarized to form a network-wide scheduling Gantt chart.

[0094] Step 7-2: Synthesize the gating list of TSN output ports;

[0095] Based on the actual occupancy of each link in the scheduling Gantt chart, and combined with the time slot length of the GCL (Gate List), an output GCL (Gate List for Output Ports) corresponding to each link is generated.

[0096] The advantages of the flow scheduling method for avionics systems based on the Time-Sensitive Network (Qbv) protocol of this invention are as follows: (1) The flow scheduling method of this invention can complete the flow scheduling planning using only the network topology and flow configuration information generated by each aviation device. It can overcome the inherent dependence of traditional constraint solving methods on external solvers such as Gurobi and CPLEX, as well as the difficulty of selecting parameter configurations in related optimization algorithms by intelligent optimization methods, and achieve a flexible and deterministic scheduling solution. (2) The flow scheduling method of this invention can transform the complex constraints between flows into the available time slot range of flow scheduling bias, which can avoid the problem of long time consumption when directly solving a large number of complex constraints, and can improve the efficiency of flow scheduling solution. (3) The flow scheduling method of this invention can dynamically and adaptively update the flow scheduling sorting sequence, which can avoid the problem that fixed scheduling sorting makes some flows unschedulable, and can increase the scale of schedulable flows. Attached Figure Description

[0097] Figure 1 This is a flowchart of the flow scheduling of an avionics system based on the Time-Sensitive Networking (Qbv) protocol of this invention.

[0098] Figure 2 This is a schematic diagram of a time-sensitive network topology that follows the Qbv protocol.

[0099] Figure 3 It is a scheduling Gantt chart obtained using the traffic scheduling method of the present invention.

[0100] Figure 4 It is the end-to-end delay result of the scheduling plan obtained by using the traffic scheduling method of the present invention. Detailed Implementation

[0101] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments.

[0102] In this invention, ST traffic in a TSN network refers to multiple schedulable traffic streams (i.e., ST traffic) in the TSN network expressed as a set, denoted as the schedulable traffic set MI. i represents the identifier of the schedulable traffic, i∈{1,2,…,I}, where I represents the total number of schedulable traffic entries. m1 represents the first schedulable traffic entry in the TSN network. m2 represents the second schedulable traffic entry in the TSN network. i This represents the i-th schedulable traffic in the TSN network. i-1 This represents the (i-1)th schedulable traffic in the TSN network. i+1 This represents the (i+1)th schedulable traffic in the TSN network. x This represents the x-th schedulable traffic item in the TSN network. y This represents the y-th schedulable traffic item in the TSN network. y-1 This represents the (y-1)th schedulable traffic in the TSN network. y+1 This represents the (y+1)th schedulable traffic in the TSN network. I This represents the last schedulable traffic in the TSN network. For ease of explanation, m i Also known as any schedulable flow, m y Also known as any other schedulable flow, and schedulable flow m i With schedulable flow m y Not the same traffic. When m i When referred to as currently schedulable traffic, m i-1 Called m i The previous schedulable traffic, m i+1 Called m i The next schedulable flow.

[0103] In a TSN network, a logical link refers to the unidirectional transmission of traffic between two nodes. A transmission path refers to the transmission of the same traffic over multiple logical links.

[0104] To explain the flow rate m in detail i A multi-source transmission path from a source node to multiple destination nodes is described below. Firstly, the traffic m... i From node β If data is transmitted to node2, the logical link is denoted as... Flow rate m i From node2 to node χ For transmission, the logical link is denoted as Flow rate m i From node χ If data is transmitted to node4, the logical link is denoted as follows: Flow rate m i If data is transmitted from node4 to node3, the logical link is denoted as . Flow rate m i From node3 to node γ For transmission, the logical link is denoted as Flow rate m i From the source node β to the destination node γ The transmission path is denoted as ,and Secondly, the flow rate m i From node β If data is transmitted to node2, the logical link is denoted as... Flow rate m i If data is transmitted from node2 to node1, the logical link is denoted as follows: Flow rate m i From the source node β The transmission path to the destination node1 is denoted as and Thirdly, the flow rate m i From node β If data is transmitted to node2, the logical link is denoted as... Flow rate m i From node2 to node η For transmission, the logical link is denoted as Flow rate m i From node η To node 10 For transmission, the logical link is denoted as Flow rate m i From the source node β to the destination node 10 The transmission path is denoted as and Then we have: flow rate m i The transmission path from the source node to multiple destination nodes is denoted as traffic m. i transmission path set and

[0105] To explain the flow rate m in detail x The transmission path from the source node to the destination node is described below, with traffic m x From node 10 To node 11 For transmission, the logical link is denoted as Flow rate m x From node11 To node η For transmission, the logical link is denoted as Flow rate m x From node η To node β For transmission, the logical link is denoted as Flow rate m x From the source node 10 to the destination node β The transmission path is denoted as and

[0106] To explain the flow rate m in detail y A multi-source transmission path from a source node to multiple destination nodes is described below. Firstly, the traffic m... y From node β If data is transmitted to node2, the logical link is denoted as... Flow rate m y From node2 to node χ For transmission, the logical link is denoted as Flow rate m y From node χ If the data is transmitted to node1, the logical link is denoted as follows: Flow rate m y From the source node β The transmission path to the destination node1 is denoted as and Secondly, the flow rate m y From node β If data is transmitted to node2, the logical link is denoted as... Flow rate m y From node2 to node γ For transmission, the logical link is denoted as Flow rate m y From the source node β to the destination node γ The transmission path is denoted as and Thirdly, the flow rate m y From node β If data is transmitted to node2, the logical link is denoted as... Flow rate m y From node2 to node η For transmission, the logical link is denoted as Flow rate m y From the source node βto the destination node η The transmission path is denoted as and Then we have: flow rate m y The transmission path from the source node to multiple destination nodes is denoted as traffic m. y transmission path set and

[0107] In this invention, the subsequent link refers to traffic m i transmission path set Midlink There are multiple subsequent links, i.e. The Called flow rate m i In the link The set of subsequent links, denoted as and

[0108] In this invention, an equivalent link refers to a link with flow m. i transmission path set Midlink There are multiple links Links with the same source node2, i.e. The Called flow rate m i In the link The set of equivalent links, denoted as and

[0109] In this invention, interfering traffic refers to traffic whose identity has been converted from scheduled traffic to scheduled traffic. For example, traffic m y Once scheduled, it becomes scheduled traffic. Once traffic m1 has been scheduled, it becomes scheduled traffic.

[0110] In this invention, the flow rate m i In the link Interference traffic on a node refers to the interference traffic on the node. β Link between node2 and node2 Scheduled traffic on Traffic already scheduled and It is the flow rate m i In the link The set of interference traffic on, denoted as and

[0111] In this invention, equivalent flow refers to flow whose identity has been converted from scheduled flow to scheduled flow. For example, flow m y Once scheduled, it becomes scheduled traffic. Once traffic m2 has been scheduled, it becomes scheduled traffic. In this invention, the flow rate m i In the link Equivalent traffic on a set of equivalent links refers to the traffic on a set of equivalent links. Uploaded traffic m i Other scheduled traffic Traffic already scheduled and It is the flow rate m i In the link The set of equivalent flows on is denoted as and

[0112] For ease of explanation, let's start with the flow rate m. i transmission path set Let any link be selected from the list, denoted as . In this invention, the flow rate m i In any link The scheduling time refers to the flow m i In the link The time when the transmission begins is denoted as

[0113] In this invention, time slot s refers to a time period spanning a certain length of time.

[0114] In this invention, node β With node χ A directed transmission link between nodes is denoted as l(node). β ,node χ The link l (node) β ,node χ The idle time slot of l(node) refers to the time slot in l(node) β ,node χ Within the supercycle of a time slot, there is no traffic transmission. For example, time slot s in link l (node β ,node χ Supercycle Within, and within time slot s, no traffic flows through node l. β ,node χ If ), then time slot s is link l (node β ,node χ Idle time slots of link l (node). β ,node χIf there are multiple idle time slots, then an idle time slot set is formed, denoted as .

[0115] In this invention, the flow rate m i In the link Available time slots refer to those available on the time slots. The time slots that can satisfy the traffic scheduling constraints are denoted as . for The lower boundary value. for The upper boundary value.

[0116] In this invention, the flow rate m i In the link Invalid moments refer to moments in time. Internally, this leads to m i Arriving simultaneously with interference flow The scheduling time. When the flow m i In the link If there are multiple invalid moments in the process, then a flow m is formed. i In the link The set of invalid times on, denoted as

[0117] In this invention, the flow rate m i In the link The pre-occupied time slot refers to the time slot reserved on the platform. Internally, based on the timing of traffic scheduling Expected flow m i In the link The time slot occupied by the meeting. When due to traffic m i In the link If there are multiple pre-booked time slots, then a flow rate m is formed. i In the link The set of pre-occupied time slots on the above is denoted as

[0118] In this invention, an end system refers to each piece of aviation equipment in an avionics system. The TSN network consists of several end systems and switches, as well as physical links interconnecting these end systems and switches. The output ports of the end systems and switches have eight FIFO priority queues that can provide transmission channels for messages, forming the TSN network Qbv protocol traffic scheduling model. In this model, the queue with priority 8 is specifically responsible for the transmission of ST traffic, while the remaining seven priority queues are responsible for the transmission of other traffic such as AVB and BE. The TSN network controls the opening status of different priority queue doors at each output port through the GCL at each port. Each element in the GCL list indicates the current time slot and the current door opening status. For example, T00: 1000000 indicates that in time slot T00, the ST queue door is open while the doors of other queues are closed; similarly, T01: 01111111 indicates that in time slot T01, the ST queue door is closed while the doors of other queues are open. Figure 2 In the network topology shown, generated by several end systems and switches, traffic with only one destination node is unicast traffic, and traffic with more than one destination node is multicast traffic.

[0119] Example 1

[0120] This embodiment is based on the PyCharm platform and utilizes... Figure 2 Based on the network topology shown and the ST traffic configuration information shown in Table 1, network scheduling design is performed using the fast traffic scheduling method proposed in this invention. Messages 2 and 3 are multicast messages, meaning they have multiple destination nodes.

[0121] Table 1 ST Traffic Configuration Information

[0122]

[0123] Figure 3 The calculation results of the ST traffic scheduling bias are presented in the form of a Gantt chart. Based on these results, the gated list of the TSN output ports can be synthesized. When the time slot in the gated list is 1, considering that the least common multiple of all traffic cycles in the network is 80, the number of entries in the gated list of each port is 80, i.e., from T00 to T79. The window of the ST queue gate in each port, i.e., the window with a value of 10,000,000, is shown in Table 2.

[0124] Table 2 Gating List of TSN Output Ports

[0125]

[0126] The scheduling plan obtained by the traffic scheduling method of this invention can ensure low end-to-end message latency, such as... Figure 4As shown, the end-to-end delays of messages 1, 2, 3, 4, and 6 are all products of their respective message lengths and the number of hops in the transmission path. This means that under this plan, these messages can be transmitted in the network without waiting. The transmission delays of messages 5 and 7 are only 2 higher than in the case of no-wait transmission, still maintaining high real-time performance. Furthermore, analysis of the end-to-end delay of multicast message 2 on different transmission paths reveals that the end-to-end delay of traffic is closely related to the number of hops in the transmission path.

Claims

1. A flow scheduling method for an avionics system based on the Time-Sensitive Networking (Qbv) protocol, wherein the length and period of the same flow under the Qbv protocol are fixed; flow The length is denoted as ,flow The period is denoted as Its characteristics The traffic scheduling method includes the following steps: Step 1: Initialize traffic scheduling; Step 1-1: Initialize the scheduling state of all scheduled traffic; schedulable traffic sets Scheduling status of each traffic item Initialized to an unscheduled state ; An identifier representing schedulable traffic. , Indicates the total number of schedulable traffic items; Indicates the first in the TSN network Scheduled flow; Indicates the first in the TSN network Scheduled flow; Indicates the scheduling status; the Including those that have not been scheduled and already scheduled ; This indicates that in the initial state, all traffic in the TSN network is unscheduled, or simply unscheduled. This indicates that the traffic has been scheduled during the scheduling process; Steps 1-2: Initialize the idle time slot range for all links; According to the static routing table configured in the TSN network and links supercycle Set up idle time slots Initialize to ; Steps 1-3: Queuing for traffic scheduling; schedulable traffic sets Sort the data according to its flow cycle from smallest to largest to obtain the first sorted set, denoted as . ; First sorted set The flows with the same period are sorted in ascending order of flow length to obtain the second sorted set, denoted as . ; Steps 1-4: Initialize the current scheduled traffic; Let the current scheduled traffic be denoted as During initialization, Empty; Initialize and select the second sorted set. The first queue flow in the data is marked as and the Assigned to the current scheduled traffic. Then there is ; Step 2: Obtain the current scheduled traffic and its transmission path; Step 2-1: Obtain the current scheduled traffic; Based on the current scheduled traffic Obtain the traffic to be scheduled, i.e. ; Step 2-2: Obtain the transmission path of the currently scheduled traffic; According to the static routing table configured in the TSN network , obtain transmission path set ; Steps 2-3: Initialize the transmission link number of the current scheduled traffic; Let the current link be denoted as During initialization, Empty; Initialization, selection The first path link in and the As the current link for the currently scheduled traffic, i.e. Assigned value , ; First path link It refers to flow rate From the source node to the destination node Logical links; Steps 2-4: Obtain the transmission links of the currently scheduled traffic; Based on the current link Obtain the traffic to be scheduled – the link, i.e. ; Step 3: Calculate the upper and lower bounds of the available time slot range for the current scheduled traffic on the current transmission link; Step 3-1: Determine the calculation method for the upper and lower boundaries of the time slot range; Traffic to be scheduled Traffic awaiting scheduling – Link The available time slot range on is denoted as ,and ; for The lower boundary value; for The upper boundary value; judge Is it The first link in; if yes The first link in, namely If the source node is an end system node, then proceed to step 3-2; if no For the first link in the chain, proceed to step 3-3; Step 3-2: Calculate the upper and lower boundary values ​​of the available time slot range for the current scheduled traffic on the first link; Will Assigned to the idle time slot set The left boundary; calculated according to formula (1) Proceed to step four; ; It is the traffic to be scheduled The cycle; It is the traffic to be scheduled Length; Step 3-3: Calculate the upper and lower boundary values ​​of the available time slot range for the current scheduled traffic on non-first links; Step 3-3A, search Equivalent Link Set ; Step 3-3B, according to statistics exist Equivalent traffic set of uptransmission ; Step 3-3C, in Searching for Transmit to The previous link The target node and The source nodes are the same; calculate according to formula (1) Calculate according to formula (2) ; ; Based on traffic scheduling time Expected flow In the link The time slots occupied by the meeting; Step 3 – 3D: Initialize equivalent flow; Using equivalent flow sets The equivalent flow in the equation is determined and iteratively updated according to formulas (3) and (4). and Then proceed to step four; ; ; This represents the traffic to be scheduled. The number of instances; This represents the number of instances of equivalent traffic; For clock synchronization accuracy; Step 4: Exclude invalid moments of currently scheduled traffic on the current link; Step 4-1: Obtain the list of subsequent links for the current link in response to the current scheduled traffic; exist transmission path set Searching for In the link subsequent link set ; Step 4-2: Obtain the list of interfering traffic when the currently scheduled traffic is transmitted on the current link; according to structure exist The set of interfering traffic ; Step 4-3: Determine the list of invalid times for the currently scheduled traffic on the current link; Step 4-3A: Determine the set of interfering traffic. Is it empty? If it is empty, proceed to step five; if it is not empty, proceed to step 4-3B. Step 4-3B, Initialize the set of invalid times Empty; Step 4-3C, using The list of invalid scheduling times is updated iteratively according to formula (5); ; ; This represents the number of instances of interfering traffic; Step 4-4: Exclude the list of invalid times for currently scheduled traffic on the current link; renew exist Available time slots on And exclude invalid time sets from them. ; Step 5: Calculate the scheduling time of the current scheduled traffic on the current transmission link; Step 5-1: Determine whether the currently scheduled traffic is schedulable on the current transmission link; according to Preliminary judgment exist Is it schedulable? If so... ,but exist If the upper part is unschedulable, proceed to step six; if ,but exist The above is schedulable; proceed to step 5-2. Step 5-2: Iteratively determine the scheduling time of the current scheduled traffic on the current transmission link; Step 5-2A: Initialize the iteration to determine the identifier. ,and Assigned value ,Right now ; Step 5-2B: Calculate the estimated time slots occupied by the scheduling traffic in the current iteration according to formula (7). ; ; Step 5-2C, Determine Does it completely belong to the current link's idle time slot set? If it belongs to this category, then the scheduling bias of the current scheduled traffic on the current transmission link can be assigned a value, that is, it is... ,Will scheduling status Adjusted to ,renew And proceed to step 5-2D; Otherwise, proceed to step 5-2G; Step 5-2D: Determine whether the current scheduled traffic has completed scheduling calculations on all transmission links, i.e., determine... If the destination node is an end system, proceed to step 5-2E; otherwise, proceed to step 5-2F. Step 5-2E, Update Determine whether all traffic scheduling calculations have been completed. If yes, proceed to step seven; otherwise, proceed to step 2-1. Step 5-2F, Update Perform steps 2-4; Step 5-2G, Determine If the condition is met, proceed to step six; otherwise, proceed to step 5-2H. Step 5-2H: Update and iterate to determine the identifier. for The next available time slot within the current time slot will be returned to execute step 5-2B. Step 6: Dynamically update the traffic scheduling queue sequence; Step 6-1: Identify the blocking traffic that causes the currently scheduled traffic to be unschedulable on the current link; Calculate the equivalent flow set according to formula (8) Any equivalent flow blocking distance ; ; if The blocking distance is the smallest, then identity change Blocked traffic; Step 6-2: Update the idle transmission time slots of the relevant links; Finding queue sequences Blocked traffic And subsequent traffic, compensate for the time slots occupied by this traffic on the corresponding transmission links, and update the idle time slots of the relevant links. ; Step 6-3: Update the queuing sequence for traffic scheduling; exist Lieutenant General pending dispatch of traffic Insert blocking traffic Before that, a new queuing sequence is formed. ; Step 6-4: Update the sort number of the currently scheduled traffic; renew Determine whether the task is completed. If it is completed, proceed to step 7; otherwise, proceed to step 2-1. Step 7: Complete the scheduling design for all traffic. Step 7-1: Generate a network scheduling Gantt chart; The scheduling times of all traffic on the corresponding links are converted into the scheduling times at the output ports of network nodes under the Time-Sensitive Networking (Qbv) protocol, and the scheduling status of each output port is summarized to form a network-wide scheduling Gantt chart. Step 7-2: Synthesize the gating list of TSN output ports; Based on the actual occupancy of each link in the scheduling Gantt chart, and combined with the time slot length of the GCL (Gate List), an output GCL (Gate List for Output Ports) corresponding to each link is generated.

2. The flow scheduling method for avionics systems based on Time-Sensitive Networking (Qbv) protocol according to claim 1, characterized in that: When running fast traffic scheduling based on the Time-Sensitive Network (Qbv) protocol, it does not rely on an external solver and directly generates a deterministic traffic scheduling table quickly through dynamic traffic sorting and boundary equivalence transformation.

3. The flow scheduling method for avionics systems based on Time-Sensitive Networking (Qbv) protocol according to claim 1, characterized in that: It is applied to the network topology generated by various aviation devices in avionics systems.

Citation Information

Patent Citations

  • Frame output scheduling method supporting Qbv mechanism in time-sensitive network

    CN114205315A

  • Multi-path joint scheduling method in time-sensitive network

    CN115460130A