TSN redundant transmission time triggering scheduling method based on frame order preserving
By introducing frame order-keeping constraints in the time-triggered scheduling planning of TSN, the problem of frame disorder in redundant transmission is solved, and higher network reliability and orderliness of data transmission are achieved.
Patent Information
- Application Number
- CN202510048644.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-13
- Publication Date
- 2025-04-29
AI Technical Summary
The existing time-triggered scheduling planning fails to effectively ensure the end-to-end transmission order of data frames.
A time-triggered scheduling method based on frame order preservation is proposed. By introducing frame order preservation constraints in the scheduling planning, it is ensured that all replica streams of the previous data frame have reached the redundant elimination node through all redundant paths before the current data frame continues to be transmitted.
It effectively avoids the problem of frame disorder during redundant transmission of TSN, enhances the reliability of the network, and ensures reliable data transmission in the case of partial data frame loss.
Smart Images

Figure CN119906673A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to time-triggered scheduling of a time-sensitive network (TSN), and more particularly, to a time-triggered scheduling method suitable for TSN to overcome the problem of data frame disorder during redundant transmission. The method is used to avoid the problem of frame disorder caused by data frame loss during frame replication and elimination during redundant transmission of TSN. Background Art
[0002] In the design process of modern avionics systems, various electronic systems and functions of aircraft are effectively integrated through avionics integration technology. Specifically, avionics integration technology integrates key functions such as detection, communication, navigation, identification, electronic warfare, mission management, flight control and fire control in the physical structure space of the aircraft, and uses advanced technologies such as airborne networks to coordinate various electronic equipment to form a highly coordinated whole (such as Figure 1 This not only enables the sharing of system resources, but also significantly improves overall performance, ensuring a balance between system performance, availability, and lifecycle costs.
[0003] To address the deficiencies of traditional Ethernet in terms of determinism and real-time performance, TSN implements deterministic traffic scheduling, precise time synchronization, and resource reservation through a series of protocols (such as IEEE 802.1Qbv, IEEE 802.1Qcc, and IEEE 802.1CB). It uses time triggering and redundant link transmission to provide strict delay control and high data transmission reliability for avionics systems.
[0004] The flow control mechanism of TSN is the key to ensure the real-time performance of TSN network. The current flow control mechanisms of TSN mainly include Credit Based Shaping (CBS), Time Aware Shaping (TAS), and Cyclic Queuing Forwarding (CQF). Among them, TAS adopts a time-triggered scheduling mechanism to ensure the certainty of key traffic transmission in avionics systems, which has been standardized in IEEE 802.1Qbv. The TAS shaper defined in IEEE 802.1Qbv is essentially a gating mechanism. This mechanism pre-provides a time window for end-to-end transmission of traffic through a cyclic time schedule predefined by the gate control list (GCL), dynamically controls the transmission of egress queue frames, realizes priority control of key traffic and transmission certainty guarantee, and significantly improves the certainty and real-time capability of Ethernet networks.
[0005] There are currently two main methods for scheduling constraints and solutions for the TAS mechanism, one is Satisfiability Modulo Theories (SMT), and the other is Mixed Linear Programming (MIP). Through SMT or MIP, the TAS time-triggered scheduling design can be converted into a biased solution plan under resource and dependency constraints to generate GCL. Therefore, the logical order of scheduling constraints and solutions for TAS is to construct constraints based on the time-triggered scheduling content, where the quantity to be solved is the time window bias information of the traffic. Each constraint is used as the input content of the SMT or MIP solver, and then the solution operation is performed to finally obtain a feasible solution that satisfies all constraints.
[0006] When using TSN for avionics networking, the reliability requirements of the network must also be considered. The redundant transmission process of TSN is based on TSN technology, and further enhances the reliability and fault tolerance of the network by introducing redundant paths and the frame replication and elimination (Frame Replication and Elimination for Reliability, FRER) technology defined in IEEE 802.1CB. FRER provides path redundancy for traffic transmission, and sequence numbers and replicates each data frame of the traffic in the source node or path overlapping relay node, and eliminates these copies in the destination node or other path overlapping relay nodes. Even in the event of a network failure, reliable data transmission can be ensured through FRER, thereby meeting the requirements of high reliability and real-time communication.
[0007] However, after the introduction of FRER technology, when frames are copied and eliminated in non-isochronous cyclic traffic, if frame loss occurs on a redundant link, the final transmission result may result in frame out-of-order errors. In particular, non-isochronous cyclic traffic refers to a type of traffic in which data frame transmission is periodic in a communication network or system, but the start time of data frame transmission in each period is not completely equal (refer to IEEE 802.1Qcc-2018, 46.2.3.5.1 for the definition of non-isochronous cyclic traffic). The current time-triggered scheduling planning mainly performs scheduling constraints and solutions from the perspective of real-time guarantee. The frame order preservation content under redundant links has not been considered, and the orderliness of data frames during end-to-end transmission cannot be guaranteed.
[0008] In order to solve the above problems, the present invention considers the frame order preservation constraint content and proposes a scheduling method suitable for TSN to overcome the data frame disorder problem in the redundant transmission process. Summary of the invention
[0009] In order to solve the problem of frame disorder caused by the possible loss of data frames in a certain link when TSN traffic is transmitted through different redundant links, the present invention is aimed at the time-triggered scheduling task under TSN redundant link transmission. By converting the time-triggered traffic scheduling task transmitted through redundant links into multiple constraints, where the quantity to be solved is the time window offset information in the traffic transmission path, the solution output GCL based on SMT or MIP can be realized. Specifically, the present invention adds a frame order-preserving constraint condition to the basic scheduling constraints such as traffic cycle constraints, bounded forwarding constraints, end-to-end delay constraints, link non-overlapping constraints, and frame independence constraints to generate GCL. In addition, for the processing of data frame disorder problem, the frame order-preserving constraint condition proposed by the present invention ensures that before the current data frame continues to be arranged to send a copy stream to the redundant elimination node, all the copy streams of the previous data frame have reached the redundant elimination node through all redundant paths, thereby avoiding the frame disorder problem caused by the loss of data frames when TSN performs non-isochronous cyclic traffic frame replication and elimination during redundant transmission. By using the method of the present invention, the reliability of the TSN network using the FRER technology in the case of partial data frame loss can be enhanced, thereby ensuring reliable data transmission.
[0010] In order to solve the problem of frame disorder caused by data frame loss during TSN redundant transmission, the present invention proposes a TSN redundant transmission time-triggered scheduling method based on frame sequence preservation, which includes the following scheduling steps:
[0011] Step 1: Obtain the avionics network topology;
[0012] Step 101, obtaining the current avionics network topology and each node in the network;
[0013] The network topology structure in the avionics network is recorded as networkTop=<NODE,MES> , where NODE represents a node set, and MES represents an edge set; the MES refers to directed edges between two nodes;
[0014] Step 102, obtaining the traffic transmitted in the network;
[0015] The network traffic transmitted in a time-sensitive network can be viewed as a network topology structure networkTop=<NODE,MES> The information flow formed when data is transmitted between communication links, which follows the network protocol for transmission and interaction;
[0016] When the network topology networkTop =<NODE,MES> When there are multiple paths in the flow, the information flow will be transmitted in the form of a copy flow cs_flow;
[0017] In the network topology networkTop=<NODE,MES> The network flow set in is recorded as FLOW, and FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow F};
[0018] Network flow i The traffic characteristic information is recorded as and
[0019] Step 103, obtaining the transmission path of the traffic;
[0020] According to FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow F}In the network topology networkTop=<NODE,MES> Get the transmission path set PATH corresponding to all traffic in the transmission FLOW ; Among them belongs to flow i The set of optional paths is
[0021] Step 104, setting the node type in the path;
[0022] Get the node type corresponding to each node from the path; the node type includes the source node node 源端 、Destination node 目的 , path relay node NODE 中继 , redundant start node NODE 冗开 , redundancy elimination node NODE 冗消 ;
[0023] Step 2: Set up the replica stream;
[0024] When traffic is transmitted on a redundant link, the traffic flow is copied in the redundant path as a copy flow cs_flow at the redundant start node;
[0025] Step 201, find redundant nodes and set up replica flows;
[0026] Obtaining a redundant start node, a redundant elimination node, and a redundant path set;
[0027] Step 202, converting the path into directed edges of the nodes;
[0028] Step 203, based on the node type in the path, frame replication is completed at the redundant start node, and frame elimination is completed at the redundant fire fighting node;
[0029] Step 3: Constraints on traffic transmission;
[0030] Step 301, flow cycle constraint condition;
[0031] flow i The data frame Along the optional path During transmission, the link The starting bias on and Non-negative, The transmission time window should be completely contained in the traffic generation frame period Within, that is, comply with the flow cycle constraints;
[0032] Step 302, bounded forwarding constraints;
[0033] flow i The data frame In the optional path Any two adjacent links and The transmission on the link is not only affected by the time length of the transmission frame, but also by the common node node of the two links. 公共 Forwarding delay of NT_node 公共 and the maximum clock synchronization delay δ, i.e., subject to the bounded forwarding constraint;
[0034] Step 303, end-to-end delay constraint;
[0035] flow i In the optional path The upstream transmission should not exceed the flow i Scheduled deadline That is, the end-to-end delay constraint is followed;
[0036] Step 304: Links have no overlapping constraints;
[0037] Two different flow i and flow j Along the same path 公共 During transmission, on the link f _path 公共 Data frames of the above two flows and the dataframe There is no overlap in time, that is The transmission must be The transmission of is completed before the start of transmission, and vice versa, that is, the link no overlap constraint is followed;
[0038] Step 305, frame independence constraint;
[0039] Two different flow i and flow j Along the path and When transmitting, if you want to pass through the same node 重叠 Forward, in node 重叠 Data frames of the above two flows and the dataframe There is no overlap in time, that is and Cannot be node 重叠 Processing, that is Only in From the node 重叠 It can be processed only after it is transferred out, and vice versa, that is, it follows the frame independence constraint;
[0040] Step 306, frame order preservation constraint condition;
[0041] cs s _flow i Start from the redundant node NODE where it is located 冗开 Sent to the redundancy elimination node NODE where it is located 冗消 , NODE 冗开 to NODE 冗消 The redundant path is
[0042] Copy stream cs s _flow i Copy frame In its corresponding redundant path The last link When transmitting on the Before the previous frame is scheduled to be sent to the redundancy elimination node All replicated frames have reached the redundancy elimination node through all redundant paths, that is, they comply with the frame order preservation constraint;
[0043] Step 4: Input the constraints into the solver for scheduling and obtaining the maximum delay of each flow;
[0044] The set constraints of each flow transmission are stored in the scheduler. The purpose of the scheduler is to instantiate variables under the flow transmission constraints and generate the final gate array table GCL;
[0045] The flow constraints are used as input to the SMT or MIP solver, and then the solver is run to ensure that all constraints are satisfied; the final result will include any flow that satisfies the flow constraints. i All data frames In different links Starting bias on
[0046] The traffic finally received at the destination node is called destination-traffic, denoted by
[0047] Said The maximum value of the frame delay statistics of all frames in the flow is the flow i The maximum delay is denoted by
[0048] Then the set of maximum delay statistics of each flow of avionics network flow FLOW is delay_FLOW, and
[0049] The technical effect achieved by the method of the present invention is:
[0050] ① Aiming at the problem of data frame disorder in the redundant transmission process of TSN, the present invention proposes a frame order preservation constraint condition to ensure that before the current data frame continues to be arranged to send a copy stream to the redundant elimination node, all copy streams of the previous data frame have reached the redundant elimination node through all redundant paths, thereby overcoming the problem of data frame disorder in the redundant transmission process of TSN and ensuring reliable data transmission.
[0051] ② The time-triggered scheduling planning design of the present invention adds a frame order-preserving constraint to the basic scheduling constraints such as traffic cycle constraints, bounded forwarding constraints, end-to-end delay constraints, link non-overlapping constraints, and frame independence constraints to generate the final GCL. The frame order-preserving constraint has good compatibility with other basic scheduling constraints and will not conflict with the previous constraint scheduling solution method. In other words, after considering the frame order-preserving constraint of the present invention, the result obtained is a subset of all previous scheduling feasible solutions.
[0052] ③ Since the time-triggered scheduling conditions and the solution process generally need to be combined with routing information to achieve joint scheduling solution and optimization, after having the frame order preservation constraint conditions of the present invention, by comparing the differences in frame order preservation performance under different redundant link setting schemes, it is possible to provide guidance strategies for redundant link schemes and optimize routing strategies. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] Figure 1 is a schematic diagram of the architecture of a modern avionics system.
[0054] Figure 2 It is a flow chart of TSN redundant transmission time trigger scheduling based on frame sequence preservation of the present invention.
[0055] Figure 3 is a schematic diagram of a replica stream set consisting of four replica streams.
[0056] Figure 4 This is a schematic diagram of the frame out-of-sequence problem from end system ES1 to switch SW5.
[0057] Figure 5 It is a schematic diagram of solving the frame disorder problem from the end system ES1 to the switch SW5 by applying the method of the present invention. DETAILED DESCRIPTION
[0058] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. The various parameter demonstrations listed are only preferred embodiments of the present invention. It should be noted that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention, and these improvements and modifications should also be considered as the protection scope of the present invention.
[0059] In the present invention, the network topology structure in the avionics network is recorded as networkTop, and the network topology structure networkTop includes a node set NODE and an edge set MES, that is, networkTop=<NODE,MES> .
[0060] NODE={node1,node2,…,node ζ ,…,node ξ}, the subscript ζ represents the identification number of the node in the network topology, and the subscript ξ represents the total number of nodes in the network topology, where:
[0061] node1 indicates the first node.
[0062] node2 indicates the second node.
[0063] node ζ represents the ζth node.
[0064] node ξ Indicates the last node.
[0065] For the sake of convenience, node ζ Also called any node. ζ The forwarding delay on ζ .
[0066] The edge set MES refers to the directed edges between two nodes.
[0067] The network flow set in the network topology networkTop is recorded as FLOW, and FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow J}, the subscript i represents the identification number of the flow, and the subscript J represents the total number of flows.
[0068] flow1 indicates the first network flow.
[0069] flow2 indicates the second network flow.
[0070] flow i Represents the i-th network flow.
[0071] flow j Represents the jth network flow.
[0072] flow J Indicates the last network flow.
[0073] For the sake of convenience, flow i Also called any network flow. j Also known as another arbitrary network flow. i with flow j Not the same network traffic.
[0074] Traffic characteristics information
[0075] Network flow i The traffic characteristic information is recorded as and
[0076] Indicates that it belongs to flow i A set of replica streams. Any replica stream is denoted as cs s _flow i ,
[0077] Indicates that it belongs to flow i A collection of data frames. i Any data frame is recorded as
[0078] Represents a data frame Length.
[0079] Indicates flow iThe generated frame period.
[0080] Indicates that it belongs to flow i A collection of optional paths. i Any optional path of
[0081] Indicates an optional path The set of links connected to the upper edge node. Belongs to the optional path Any link on
[0082] Indicates that it belongs to flow i The data frame In the link The initial paranoia that appeared above.
[0083] Indicates flow i The end-to-end transmission deadline.
[0084] Similarly, network traffic flow j The traffic characteristic information is recorded as and
[0085] Indicates that it belongs to flow j A set of replica streams. Any replica stream is denoted as cs s′ _flow j ,
[0086] Indicates that it belongs to flow j A collection of data frames. j Any data frame is recorded as
[0087] Represents a data frame Length.
[0088] Indicates flow j The generated frame period.
[0089] Indicates that it belongs to flow j A collection of optional paths. j Any optional path of
[0090] Indicates an optional path The set of links connected to the upper edge node. Belongs to the optional path Any link on
[0091] Indicates that it belongs to flow j The data frame In the link The initial paranoia that appeared above.
[0092] Indicates flow j The end-to-end transmission deadline.
[0093] Frame out-of-sequence problem during redundant transmission
[0094] Here we take an example to explain the frame out-of-order problem in the TSN redundant transmission process. The redundant transmission process is to copy the traffic into multiple replica streams on the redundant path for transmission. If a replica frame is lost on a redundant path, the final transmission result may have a frame out-of-order error. Therefore, it is necessary to implement the traffic transmission constraint conditions of the present invention. Figure 3 , Figure 4 As shown in the figure, the circles represent the end systems (i.e., end system ES1 and end system ES2) in a certain avionics system, and the squares represent the switches (i.e., switch SW1, switch SW2, switch SW3, and switch SW4) in a certain avionics system. i The first flow is sent from end system ES1 to end system ES2. j This is the second flow sent from end system ES1 to end system ES2. i The redundant paths that exist are denoted as flow j The redundant paths that exist are denoted as For example, the flow i Replicate into multiple replica streams (i.e., replica stream collections ) transmission, if a redundant path ( Indicates flow i If a duplicate frame is lost on the rth redundant path of the transmission path, the final transmission result may result in a frame out-of-sequence error.
[0095] In the present invention, traffic redundant link transmission is considered, and the traffic is copied into a replica flow during the transmission process. i All replica flows of a are called replica flow sets and The subscript s indicates flow. i The identification number of the replica flow. The subscript S indicates that it belongs to the flow i The total number of replica streams.
[0096] cs1_flow i Indicates that it belongs to flow i The 1st copy stream.
[0097] cs2_flow i Indicates that it belongs to flow i The 2nd copy stream.
[0098] cs s _flow i Indicates that it belongs to flow i The sth copy stream.
[0099] cs t _flow i Indicates that it belongs to flow i The tth replica stream of .
[0100] cs S _flow i Indicates that it belongs to flow i The last replica stream of .
[0101] For the sake of convenience, cs s _flow i Also known as flow i Any copy stream of . Copy stream cs s _flow i With copy stream cs t _flow i Not the same replica stream.
[0102] Similarly, it belongs to flow j All replica flows of a are called replica flow sets and The subscript s′ indicates flow j The identification number of the replica flow, the subscript S′ indicates that it belongs to the flow j The total number of replica streams.
[0103] cs1_flow j Indicates that it belongs to flow j The 1st copy stream.
[0104] cs2_flow j Indicates that it belongs to flow j The 2nd copy stream.
[0105] cs s′ _flow j Indicates that it belongs to flow j The s′th copy stream.
[0106] cs t′ _flow j Indicates that it belongs to flow j The t′th replica stream.
[0107] cs S′ _flow j Indicates that it belongs to flow j The last replica stream of .
[0108] For the sake of convenience, cs s′ _flow j Also known as flow j Any copy stream of . Copy stream cs s′ _flow j With copy stream cs t′ _flow j Not the same replica stream.
[0109] For example Figure 4 In the case of cs1_flow i Duplicate frames appear during TSN redundant transmission If lost, the flow is split at the redundancy elimination node SW5, and the new copy flow after processing is compared with flow i A data frame out-of-sequence problem occurred.
[0110] Indicates that it belongs to the copy stream cs s _flow i A set of replicated frames, any replicated frame is recorded as Indicates that it belongs to flow i A set of data frames, any data frame is recorded as in, and The frame numbers are the same.
[0111] DataFrame Collection The subscript k indicates that it belongs to flow i The identification number of the data frame, the subscript K indicates that it belongs to flow i The total number of data frames. However, the traffic super period HP is divided by the traffic generation frame period It’s the flow i The total number of data frames K, that is
[0112] Represents flow i The first data frame.
[0113] Represents flow i The second data frame.
[0114] Represents flow i The kth data frame.
[0115] Represents flow i The last data frame.
[0116] For the sake of convenience, Also called flow i Any data frame.
[0117] Similarly, it belongs to flow j A collection of data frames The subscript k′ indicates that it belongs to flow j The identification number of the data frame, the subscript K′ indicates that it belongs to flow j The total number of data frames. However, the traffic super period HP is divided by the traffic generation frame period It’s the flow j The total number of data frames K′, that is
[0118] Represents flow j The first data frame.
[0119] Represents flow j The second data frame.
[0120] Represents flow j The k'th data frame.
[0121] Represents flow j The last data frame.
[0122] For the sake of convenience, Also called flow j Any data frame.
[0123] In the present invention, the set of optional paths belonging to the flow is recorded as PATH, the flow is transmitted on the PATH, and the fork nodes between the nodes on the PATH are recorded as NODE 分叉The NODE 分叉 Remove node 源端 and node 目的 Nodes other than NODE are called relay nodes 中继 The node 源端 With the NODE 中继 A redundant start node NODE is formed 冗开 , the node 目的 With the NODE 中继 A redundant elimination node NODE is formed 冗消 . The replica stream is in the NODE 冗消 Eliminate on.
[0124] For example Figure 3 In the flow i The optional path set is recorded as and According to flow i The records of the nodes (end systems and switches are all network nodes) passed in sequence are:
[0125] Belongs to flow i The first optional path
[0126] Belongs to flow i The second optional path
[0127] Belongs to flow i The third optional path
[0128] Belongs to flow i The fourth optional path
[0129] For example Figure 3 In the flow j The optional path set is recorded as and According to flow j The records of the nodes (end systems and switches are all network nodes) passed in sequence are:
[0130] Belongs to flow j The first optional path
[0131] Belongs to flow j The second optional path
[0132] Belongs to flow jThe third optional path
[0133] Belongs to flow j The fourth optional path
[0134] From this we can know the flow i and flow j The set of optional paths is the same.
[0135] For example Figure 3 in In the node 源端 =[ES1], node 目的 =[ES2], NODE 分叉 ={ES1,SW2,SW5,ES2},NODE 中继 ={SW2,SW5}. 源端 =[ES1] and the NODE 中继 ={SW2, SW5} forms a redundant start node NODE 冗开 , NODE 冗开 ={ES1, SW2, SW5}. 目的 =[ES2] and the NODE 中继 ={SW2, SW5} forms a redundancy elimination node NODE 冗消 , NODE 冗消 ={ES2,SW2,SW5}.
[0136] For example Figure 3 in In the node 源端 =[ES1], node 目的 =[ES2], NODE 分叉 ={ES1,SW2,SW5,ES2},NODE 中继 ={SW2,SW5}. 源端 =[ES1] and the NODE 中继 ={SW2, SW5} forms a redundant start node NODE 冗开 , NODE 冗开 ={ES1, SW2, SW5}. 目的 =[ES2] and the NODE 中继 ={SW2, SW5} forms a redundancy elimination node NODE 冗消 , NODE 冗消 ={ES2,SW2,SW5}.
[0137] Each data frame of the traffic is serially numbered and replicated to form a new copy that flows to different redundant paths. 冗消 Eliminate these duplicate streams.
[0138] For example Figure 3 An example of a replica flow set consisting of four replica flows is shown. In this example, the source node ES1 generates and encodes a sequence number parameter for each data frame of the current flow through flow sequence number generation and sequence encoding. By splitting the flow, the data frame is copied during transmission to form two copies of the flow cs1_flow i and cs2_flow i , and then transmits it in the form of duplicate frames, and each duplicate frame is transmitted independently through the corresponding redundant path. The relay nodes SW2 and SW5 use flow identification to identify the first received duplicate frame of each sequence number frame. Record and merge as received traffic, and the flow sequence number recovery function is used to eliminate the duplicate frames. And the received traffic is copied to new copy flows cs4_flow at SW2 and SW5 respectively. i and cs3_flow i , forwarded to the corresponding redundant path through flow splitting (the frame sequence number remains unchanged). The final two copies of the flow cs4_flow i and cs3_flow i The destination node ES2 on the right uses stream identification and sequence decoding to convert the first received copy of each sequence number frame into It is recorded and merged as received traffic, and the duplicate frames are eliminated again through the flow sequence number recovery function.
[0139] Among them and For example, the redundant parts [ES1→SW1→SW2→SW5] and [ES1→SW4→SW5] in Figure 3 and Figure 4 As shown in the figure, ES1 is the redundant start node, SW5 is the redundant elimination node, and SW1, SW2 and SW4 are all redundant process nodes. Then the redundant path is recorded as exist The copy flow cs1_flow is transmitted i ,exist The copy flow cs2_flow is transmitted i Under normal circumstances, the redundancy elimination node SW5 will first receive the duplicate frame of each sequence number frame. and Record it as the received traffic.i Data frames are lost during transmission (For example, 1.1, the number on the left of the decimal point is the original flow frame sequence number, and the number on the right of the decimal point is the replica flow identification number). Finally, the first replica frame of each sequence number frame received at the redundancy elimination node SW5 is recorded as and Merge as the traffic received at SW5 and finally transferred out at SW5 as a copy of the flow cs3_flow i Compared with the original flow i An out-of-sequence frame error occurred.
[0140] In the present invention, the technical processing of flow identification and frame replication refers to "Time-Sensitive Network Technology and Development Trends" published by Beijing People's Posts and Telecommunications Press, July 2022, pages 144-158, author Sun Lei et al.
[0141] The present invention adds a frame order-preserving constraint condition to the basic scheduling constraint condition based on SMT to generate the final GCL, so as to solve the problem of data frame disorder in the TSN redundant transmission process. Through the frame order-preserving constraint condition, it is ensured that before the current data frame is arranged to send the copy flow to the redundant elimination node, all the copy flows of the previous data frame have reached the redundant elimination node through all redundant paths, thereby overcoming the problem of data frame disorder in the TSN redundant transmission process. Specifically, see Figure 2 , Figure 3 , Figure 4 As shown, the method for time-triggered scheduling of frame sequence preservation constraints of TSN redundant transmission includes the following scheduling steps:
[0142] Step 1: Obtain the avionics network topology;
[0143] Step 101, obtaining the current avionics network topology and each node in the network;
[0144] In the present invention, the network topology structure in the avionics network is recorded as networkTop=<NODE,MES> , where NODE represents a node set and MES represents an edge set. The MES refers to directed edges between two nodes.
[0145] In the present invention, the network topology networkTop=<NODE,MES> It contains the node set NODE information and the edge set MES information. The nodes in the avionics network are abstracted into end systems ES and switches SW, and the nodes are numbered with consecutive numbers. In the network topology structure, a directed connection matrix is used to represent the directed edges, which are recorded as [ES, SW]. The value of [ES, SW] is 1 if there is a directed edge, and 0 if there is no edge. The assignment of [ES, SW] indicates whether there is a directed edge between two nodes (end system ES to switch SW).
[0146] For example Figure 3 In the figure, 8 nodes form the current avionics network topology networkTop=<NODE,MES> , and the nodes contained in the node set NODE are expressed in set form as NODE = {ES1, ES2, SW1, SW2, SW3, SW4, SW5, SW6}; the directed edges contained in the edge set MES are expressed in set form as The current avionics network topology is also expressed as
[0147] Step 102, obtaining the traffic transmitted in the network;
[0148] The network traffic transmitted in the time-sensitive network (TSN) can be viewed as a network topology structure networkTop=<NODE,MES> The information flow formed when data is transmitted between communication links follows the network protocol for transmission and interaction.
[0149] When the network topology networkTop =<NODE,MES> When there are multiple paths in the flow, the information flow will be transmitted in the form of a copy flow cs_flow.
[0150] The network flow set in the network topology networkTop=<NODE,MES> is denoted as FLOW, and FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow F}, the subscript i represents the identification number of the flow, and the subscript F represents the total number of flows.
[0151] flow1 indicates the first network flow.
[0152] flow2 indicates the second network flow.
[0153] flow i Represents the i-th network flow.
[0154] flowj Represents the jth network flow.
[0155] flow F Indicates the last network flow.
[0156] For the sake of convenience, flow i Also called any network flow. i with flow j Not the same network traffic.
[0157] For example Figure 3 The current avionics network topology consists of 8 nodes. In the example, a transmission flow is recorded as flow i The flow i The traffic characteristic information carried is Copy stream cs s _flow i The traffic characteristics information carried are the same.
[0158] Step 103, obtaining the transmission path of the traffic;
[0159] In the present invention, according to FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow F}In the network topology networkTop=<NODE,MES> The transmission in obtains the transmission path set corresponding to all flows, recorded as PATH FLOW .
[0160] For example Figure 3 According to the flow i There are four optional paths for transmission in the network, namely
[0161] Optional Path 1 The first link is included (i.e. [ES1→SW1]), link 2 (i.e. [SW1→SW2]), link 3 (i.e. [SW2→SW3]), Link 4 (i.e. [SW3→ES2]).
[0162] Optional Path 2 The first link is included (i.e. [ES1→SW1]), link 2 (i.e. [SW1→SW2]), link 3 (i.e. [SW2→SW5]), Link 4 (i.e. [SW5→SW6]), Link 5 (i.e. [SW6→ES2]).
[0163] Optional Path 3 The first link is included (i.e. [ES1→SW4]), link 2 (i.e. [SW4→SW5]), link 3 (i.e. [SW5→SW6]), Link 4 (i.e. [SW6→ES2]).
[0164] Optional Path 4 The first link is included (i.e. [ES1→SW4]), link 2 (i.e. [SW4→SW5]), link 3 (i.e. [SW5→SW2]), Link 4 (i.e. [SW2→SW3]), Link 5 (i.e. [SW3→ES2]).
[0165] For the sake of convenience, the flow i Any optional path of Said Any link on
[0166] Step 104, setting the node type in the path;
[0167] In the present invention, the node type corresponding to each node is obtained from the path. The node type includes the source node node 源端 、Destination node 目的 , path relay node NODE 中继 , redundant start node NODE 冗开 , redundancy elimination node NODE 冗消 .
[0168] For example Figure 3 In the source node 源端 =ES1, destination node 目的 =ES2, path relay node NODE 中继 ={SW2,SW5}, redundant start node NODE 冗开 ={ES1,SW2,SW5}, redundancy elimination node NODE 冗消={ES2,SW2,SW5}.
[0169] if If there are more than one path in the flow, it is called flow i There is a redundant path, denoted as For example Figure 3 In the example, let node ES1 be the flow i The redundant start node, let node SW5 be the flow flow i The redundant elimination node, then the redundant path set Redundant Path 1 Second redundant path
[0170] Step 2: Set up the replica stream;
[0171] Analyze the transmission of traffic on the path in TSN. When the traffic is transmitted on a redundant link, the traffic flow is copied in the redundant path as a copy flow cs_flow at the redundant start node. The cs_flow is also called the network traffic in the redundant path.
[0172] On the redundant start node NODE 冗开 A new copy flow is formed in the redundancy elimination node NODE. 冗消 The first received duplicate frame of each sequence number frame is recorded and merged as the received current traffic, and the duplicate frames located after the sequence number frame (referred to as the rear duplicate frames) are eliminated. In detail, the rear duplicate frames refer to the duplicate frames other than the first received duplicate frame of each sequence number frame.
[0173] Step 201, find redundant nodes and set up replica flows;
[0174] Get the redundant start node, redundant elimination node and redundant path set.
[0175] For example Figure 3 In the example, let the source node ES1 be the flow i The redundant start node, let node SW5 be the flow flow i The redundant elimination node, then the redundant path set The source node ES1 is the flow i Each data frame generates and encodes a sequence of replicated frames Copy traffic flow i Two copy flows are formed, namely the first copy flow cs1_flow i , the second copy flow cs2_flow i . The cs1_flow i exist The cs2_flow i exist Up transmission.
[0176] If the flow i In NODE 中继 = {SW2, SW5}, the link connecting the two nodes is transmitted without resetting the replica flow. The replica flow cs1_flow i or cs2_flow i Direct transfer.
[0177] Step 202, converting the path into directed edges of the nodes;
[0178] For example Figure 3 In the flow i Optional path
[0179] Step 203, based on the node type in the path, frame replication is completed at the redundant start node, and frame elimination is completed at the redundant fire fighting node;
[0180] In the present invention, for example Figure 3 In any flow i Optional path In the example, the source node that generates the traffic is ES1, the destination node that receives the traffic is ES2, and the relay nodes are SW2 and SW5, that is, NODE 中继 ={SW2,SW5}.
[0181] Redundancy start node NODE 冗开 Including the source node ES1 and the path relay node NODE 中继 , redundancy elimination node NODE 冗消 Including the destination node ES2 and the path relay node NODE 中继 .
[0182] On the redundant start node NODE 冗开 A new copy flow is formed in the redundancy elimination node NODE. 冗消 The first received duplicate frame of each sequence number frame is recorded and merged as the current traffic received, and the duplicate frames after the queue are eliminated. Different duplicate flows are transmitted on the redundant path from the redundant start node to the redundant elimination node. In particular, when the path relay node is used as the redundant start node, if it is a link connecting two path relay nodes, there is no need to reset the duplicate flow, and the original duplicate flow can be directly transmitted on the link, and the path to the redundant elimination node where the link is located is no longer used as a redundant path. For example Figure 3 In the example, let the path relay node SW5 be the flowi The redundant starting node, let node ES2 be the flow flow i If the redundant nodes are eliminated, the redundant path does not include [SW5→SW2→SW3→ES2], but only includes [SW5→SW6→ES2].
[0183] First, on the redundant start node NODE 冗开 In node ES1, the traffic flow i Each data frame is serially numbered and replicated to form a replica flow cs1_flow i and cs2_flow i Transmission. For the path relay node NODE 中继 SW5 in the example is used as a redundancy elimination node, and the redundant path set The cs1_flow i exist On transmission, the cs2_flow i exist Similarly, for the path relay node NODE 中继 SW2 in the example is used as a redundancy elimination node, and the redundant path set The cs1_flow i exist On transmission, the cs2_flow i exist Up transmission.
[0184] Then, in node SW5, the first received duplicate frame of the duplicate stream is recorded through stream identification (the frame sequence number remains unchanged), and the first received duplicate frame of each sequence number frame is recorded. Record and merge as the current traffic received and eliminate SW5 copies the received traffic to form a new copy flow cs3_flow i Transmission, at this time SW5 as the redundant start node, and cs3_flow i Transmit to redundancy elimination node NODE 冗消 Node ES2 in the destination node, redundant path set The cs3_flow i exist Similarly, a new copy flow cs4_flow is formed in SW2. i Transmission, at this time SW2 is used as the redundant start node and cs4_flow i Transmit to redundancy elimination node NODE 冗消 Node ES2 in the destination node, redundant path set The cs4_flow i exist Up transmission.
[0185] Finally, the first received duplicate frames of each sequence number frame are recorded in order in the destination node ES2 and merged as the received current traffic, and the rear duplicate frames are eliminated again.
[0186] Step 3: Set constraints for traffic transmission;
[0187] Through SMT or MIP theory, the TAS scheduling design can be converted into a starting bias solution plan under resource and dependency constraints. The traffic hypercycle HP is the frame period for all traffic generation on the avionics network. The least common multiple (lcm), Each constraint condition must consider the occurrence of all data frames in the super period HP. The constraints designed by the present invention include: flow period constraint condition, bounded forwarding constraint condition, end-to-end delay constraint condition, link non-overlap constraint condition, frame independence constraint condition and frame order preservation constraint condition.
[0188] Copy stream cs s _flow i The traffic characteristics information carried are the same. The copy frame and Therefore, the present invention is aimed at flow i The constraint condition is also cs s _flow i constraints.
[0189] Copy stream cs s _flow j The traffic characteristics information carried are the same. The copy frame and Therefore, the present invention is aimed at flow j The constraint condition is also cs s _flow j constraints.
[0190] Step 301, flow cycle constraint condition;
[0191] flow i The data frame Along the optional path During transmission, the link The starting bias on and Non-negative, The transmission time window should be completely contained in the traffic generation frame period Therefore, the flow cycle constraint condition includes formula (1) to formula (3).
[0192]
[0193] k represents flow i The data frame sequence number.
[0194] K represents flow i The total number of data frames
[0195] Indicates the frame period of traffic generation.
[0196] Represents a data frame Length.
[0197] C represents the link bandwidth of the avionics network.
[0198] Step 302, bounded forwarding constraints;
[0199] flow i The data frame In the optional path Any two adjacent links and The transmission on the link is not only affected by the time length of the transmission frame, but also by the common node of the two links. 公共 Forwarding delay of NT_node 公共 and the maximum clock synchronization delay δ, i.e., obeying the bounded forwarding constraint.
[0200] For example Figure 3 In the first optional path The first link With the second link The common node is SW 1.
[0201] Therefore, the bounded forwarding constraint condition includes formula (3) and formula (4).
[0202]
[0203] Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on .
[0204] Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on .
[0205] Indicates that the link The propagation time on .
[0206] NT_node 公共 Represents the common node of the two links 公共 forwarding delay.
[0207] δ represents the maximum clock synchronization delay.
[0208] Step 303, end-to-end delay constraint;
[0209] flow i In the optional path The upstream transmission should not exceed the flow i Scheduled deadline That is, the end-to-end delay constraint is followed.
[0210] Therefore, the end-to-end delay constraint condition includes formula (3) and formula (5).
[0211]
[0212] Indicates flow i The data frame Along the optional path During transmission, on the first link The starting bias on .
[0213] Indicates flow i The data frame Along the optional path During transmission, at the last link The starting bias on .
[0214] Indicates that the path The last link The propagation time on .
[0215] Represents a data frame Length.
[0216] C represents the link bandwidth of the avionics network.
[0217] Step 304: Links have no overlapping constraints;
[0218] Two different flow i and flowj Along the same path 公共 During transmission, on the link f _path 公共 Data frames of the above two flows and the dataframe There is no overlap in time, that is The transmission must be The transmission of is completed before the transmission of starts, and vice versa, that is, the link no overlap constraint is followed.
[0219] Said The transmission time window should be completely contained in the flow i Generate frame period Inside.
[0220] Said The transmission time window should be completely contained in the flow j Generate frame period Inside.
[0221] For example Figure 3 In the first flow i The optional path set is recorded as and According to flow i The records of the nodes (end systems and switches are all network nodes) passed in sequence are:
[0222] Belongs to flow i The first optional path
[0223] Belongs to flow i The second optional path
[0224] Belongs to flow i The third optional path
[0225] Belongs to flow i The fourth optional path
[0226] For example, in Figure 3 Middle: Second flow j The optional path set is recorded as and According to flow j The records of the nodes (end systems and switches are all network nodes) passed in sequence are:
[0227] Belongs to flow j The first optional path
[0228] Belongs to flow j The second optional path
[0229] Belongs to flow j The third optional path
[0230] Belongs to flow j The fourth optional path
[0231] From this we can know that the first flow i With the second flow j The public path is
[0232] Therefore, the link non-overlap constraint condition includes formula (3), formula (6) and formula (7).
[0233]
[0234] Indicates flow i The data frame Along the same path 公共 During transmission, on the link f _path 公共 The starting bias on .
[0235] Indicates flow j The data frame Along the same path 公共 During transmission, on the link f _path 公共 The starting bias on .
[0236] k′ represents the flow j The data frame sequence number.
[0237] Represents a data frame Length.
[0238] Represents a data frame Length.
[0239] Step 305, frame independence constraint;
[0240] Two different flow i and flow j Along the path and When transmitting, if you want to pass through the same node 重叠 Forward, in node 重叠 Data frames of the above two flows and the dataframe There is no overlap in time, that is and Cannot be node 重叠 Processing, that is Only in From the node 重叠 It can be processed only after it is transferred out, and vice versa, that is, it follows the frame independence constraint.
[0241] For example Figure 2 In the first flow i along Transmission, second flow j along Transmission needs to pass through the same node 重叠 Forward, and node 重叠 =[ES1,SW1,SW2].
[0242] Therefore, the frame-independent constraint condition includes formula (3), formula (6) and formula (8).
[0243]
[0244] Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on .
[0245] Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on .
[0246] Indicates flow j The data frame Along the optional path During transmission, the link The starting bias on .
[0247] Indicates flow j The data frame Along the optional path During transmission, the link The starting bias on .
[0248] Indicates flow j Any optional path is recorded.
[0249] and For path Two adjacent links on.
[0250] and For path Two adjacent links on.
[0251] Step 306, frame order preservation constraint condition;
[0252] cs s _flow i Start from the redundant node NODE where it is located 冗开 Sent to the redundancy elimination node NODE where it is located 冗消 , NODE 冗开 to NODE 冗消 The redundant path is
[0253] Copy stream cs s _flow i Copy frame In its corresponding redundant path The last link When transmitting on the Before the previous frame is scheduled to be sent to the redundancy elimination node All replicated frames have reached the redundancy elimination node through all redundant paths, that is, they comply with the frame order preservation constraint.
[0254] The sequence numbers of the copy frame and the original data frame remain unchanged and are still represented by the original sequence numbers.
[0255] by Figure 2 and Figure 5 For example, and The redundant part [ES1→SW1→SW2→SW5] and
[0256] Take the transmission [ES1→SW4→SW5] as an example. ES1 is the redundant start node, SW5 is the redundant elimination node, and SW1, SW2, and SW4 are all redundant process nodes. Then the redundant path is recorded as exist The copy flow cs1_flow is transmitted i ,exist The copy flow cs2_flow is transmitted i . It is necessary to ensure that the second frame of all replica streams When transmission starts, the first frame of all replica streams The last link on all redundant paths is and All of them have reached the redundancy elimination node SW5. Finally, the copy flow cs3_flow that is transferred out from SW5 i Compared with the original flow i No out-of-sequence frame errors will occur.
[0257] Therefore, the frame order preservation constraint condition includes formula (3) and formula (9).
[0258]
[0259] Indicates flow i A copy of the stream cs s _flow i Copy frame Along redundant paths During transmission, at the last link The starting bias on .
[0260] Indicates flow i A copy of the stream cs s _flow i Copy frame Along redundant paths During transmission, at the last link The starting bias on .
[0261] Step 4: Input the constraints into the solver for scheduling and obtaining the maximum delay of each flow;
[0262] Copy stream cs s _flow i The traffic characteristics information carried are the same. The copy frame and The data frame information is the same.
[0263] Copy stream cs s _flow j The traffic characteristics information carried are the same. The copy frame and The data frame information is the same.
[0264] The constraints of each flow transmission set in step three of the present invention are stored in the scheduler. The purpose of the scheduler is to instantiate variables under the flow transmission constraints, that is, to find the starting offset of each data frame of any flow that meets all the flow transmission constraints in step three, and generate the final gate array table GCL.
[0265] The flow transmission constraints in step 3 are used as the input of the SMT or MIP solver, and then the solution operation is performed to gradually select a solution that satisfies the transmission constraints of all network flows (including their replica flows). In this solution, the starting offset of each data frame of any flow is accurately calculated to ensure that all constraints are met. The final result will include any flow that satisfies the flow transmission constraints. i All data frames (including their copy streams) (include All copied frames ) in different links Starting bias on These offset values can be used for further scheduling, resource allocation or system performance optimization to ensure efficient operation and optimal performance of the overall system.
[0266] In the present invention, the traffic finally received at the destination node is called destination-traffic, denoted as
[0267] If the flow i There are redundant paths, destination-traffic The kth data frame The source is the first received The incoming copy frame Copy stream cs s _flow i Start from the redundant node NODE where it is located 冗开 Sent to the redundancy elimination node NODE where it is located 冗消 , NODE 冗开 to NODE 冗消 The redundant path is and
[0268] If the flow i There is no redundant path, destination-traffic The kth data frame Source: Along Incoming data frame
[0269] Said Each sequence data frame The delay statistics are recorded as Said It also transmits data frames time, and satisfy formula (3) and formula (10).
[0270]
[0271] Represents the copy stream cs s _flow i The kth replicated frame In redundant path Last link The starting bias on .
[0272] Represents the copy stream cs s _flow i The kth replicated frame In redundant path First link The starting bias on .
[0273] Indicates flow i The kth data frame On the path Last link The starting bias on .
[0274] Indicates flow i The kth data frame On the path First link The starting bias on .
[0275] In the present invention, the The maximum value of the frame delay statistics of all frames in the flow is the flow i The maximum delay is denoted by
[0276] Then the set of maximum delay statistics of each flow of avionics network flow FLOW is delay_FLOW, and
[0277] In the present invention, the processing process of the SMT or MIP solver refers to the "Journal of Aeronautics and Astronautics in the Past 2021" No. 7, P414-436, "Design Optimization and Evaluation Method of Airborne Network Time-Triggered Communication Scheduling", author He Feng et al.
[0278] Example 1
[0279] against Figure 3 Medium flow i Optional path and The redundant part [ES1→SW1→SW2→SW5 or ES1→SW4→SW5] is transmitted, ES1 is the redundant start node, SW5 is the redundant elimination node, and SW1, SW2 and SW4 are all redundant process nodes. The redundant path is exist The copy flow cs1_flow is transmitted i ,exist The copy flow cs2_flow is transmitted i ES1 is the source node and SW5 is the destination node.
[0280] flow i The length of any frame It is 512 bits.
[0281] The link bandwidth C of the avionics network is 100Mbps.
[0282] flow i Generate frame period is 1000μs.
[0283] The flow super period HP is 2000μs, then the flow i Two frames are transmitted in a hypercycle HP.
[0284] The maximum clock synchronization delay δ is 0.1μs.
[0285] The forwarding delays at nodes ES1, SW1, SW2, SW4, and SW5 are all 1 μs, that is, NT_ES1=NT_SW1=NT_SW2=NT_SW4=NT_SW5=1 μs.
[0286] exist The propagation time of each link on the RF is 1.5μs and 0.5μs respectively.
[0287] exist The propagation time of each link on the network is 0.5μs, 0.5μs, and 1μs respectively.
[0288] According to the TSN redundant transmission time-triggered scheduling method based on frame order preservation of the present invention (i.e., executing steps 1 to 4), the traffic flow i The feasible solutions for the starting offsets of each data frame on different links are accurately calculated.
[0289] Copy flow cs1_flow i The first copy frame In redundant path Link 1 Starting bias on
[0290] Copy flow cs1_flow i The first copy frame On the redundant path rp1flowi link 2 Starting bias on
[0291] Copy flow cs2_flow i The first copy frame In redundant path Link 1 Starting bias on
[0292] Copy flow cs2_flow i The first copy frame In redundant path Link 2 Starting bias on
[0293] Copy flow cs2_flow i The first copy frame In redundant path Link 3 Starting bias on
[0294] Copy flow cs1_flow i The second copy frame In redundant path Link 1 Starting bias on
[0295] Copy flow cs1_flow i The second copy frame On the redundant path rp1flowi link 2 Starting bias on
[0296] Copy flow cs2_flow i The second copy frame In redundant path Link 1 Starting bias on
[0297] Copy flow cs2_flow i The second copy frame In redundant path Link 2 Starting bias on
[0298] Copy flow cs2_flow i The second copy frame In redundant path Link 3 Starting bias on
[0299] But due to the copy flow cs1_flow i During the transmission, the data frame 1.1 is lost. The number on the left of the decimal point is the original flow frame sequence number, and the number on the right of the decimal point is the identification number of the replica flow. Finally, the redundancy elimination node SW5 cannot receive frame 1.1. The time corresponding to receiving frame 1.2 is 40.88μs, the time corresponding to receiving frame 2.1 is 46.24μs, and the time corresponding to receiving frame 2.2 is 54.24μs. The frames do not overlap. When SW5 performs frame elimination, the earliest received replica frames 1.2 and 2.1 are retained and merged to form flow i SW5 Compared with the original flow i The frame order is consistent, that is, the data flow finally received at the destination node SW5 is compared with the original flow i The frame order remains the same, such as Figure 5 shown.
[0300] In Example 1, the flow i The maximum delay is
[0301]
Claims
1. A time-triggered scheduling method for TSN redundant transmission based on frame order preservation, wherein the TSN redundant transmission process is to copy the traffic into multiple replica streams for transmission on a redundant path; The scheduling steps include: Step 1: Obtain the avionics network topology; Step 101, obtaining the current avionics network topology and each node in the network; The network topology structure in the avionics network is recorded as networkTop=<NODE,MES> , where NODE represents a node set, and MES represents an edge set; the MES refers to directed edges between two nodes; NODE={node1,node2,…,node ζ ,…,node ξ }, the subscript ζ represents the identification number of the node in the network topology, and the subscript ξ represents the total number of nodes in the network topology, where: node1 represents the first node; node2 represents the second node; node ζ represents the ζth node; node ξ Indicates the last node; Step 102, obtaining the traffic transmitted in the network; The network traffic transmitted in a time-sensitive network can be viewed as a network topology structure networkTop=<NODE,MES> The information flow formed when data is transmitted between communication links, which follows the network protocol for transmission and interaction; When the network topology networkTop =<NODE,MES> When there are multiple paths in the flow, the information flow will be transmitted in the form of a copy flow cs_flow; In the network topology networkTop=<NODE,MES> The network flow set in is recorded as FLOW, and FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow F }, the subscript i represents the identification number of the flow, and the subscript F represents the total number of flows; flow1 represents the first network flow; flow2 represents the second network flow; flow i represents the i-th network traffic; flow j represents the jth network traffic; flow F Indicates the last network traffic; Network flow i The traffic characteristic information is recorded as and Indicates that it belongs to flow i A set of replica streams; any replica stream is denoted as cs s _flow i , Indicates that it belongs to flow i A collection of data frames; flow i Any data frame is recorded as Represents a data frame Length; Indicates flow i Generation frame period; Indicates that it belongs to flow i A set of optional paths; flow i Any optional path of Indicates an optional path The set of links connected to the upper edge node; it belongs to the optional path Any link on Indicates that it belongs to flow i The data frame In the link The initial paranoia that appeared on Indicates flow i end-to-end transmission deadline; Replica stream collection The subscript s indicates flow. i The identification number of the replica flow. The subscript S indicates that it belongs to the flow i The total number of replica streams; cs1_flow i Indicates that it belongs to flow i The 1st copy stream; cs2_flow i Indicates that it belongs to flow i The 2nd copy stream; cs s _flow i Indicates that it belongs to flow i The sth copy stream; cs t _flow i Indicates that it belongs to flow i The tth replica stream of cs S _flow i Indicates that it belongs to flow i The last copy stream of ; DataFrame Collection The subscript k indicates that it belongs to flow i The identification number of the data frame, the subscript K indicates that it belongs to flow i The total number of data frames; however, the traffic super period HP is divided by the traffic generation frame period It’s the flow i The total number of data frames K, that is Represents flow i The first data frame; Represents flow i The second data frame; Represents flow i The kth data frame; Represents flow i The last data frame of ; Step 103, obtaining the transmission path of the traffic; According to FLOW={flow1,flow2,…,flow i ,…,flow j ,…,flow F }In the network topology networkTop=<NODE,MES> Get the transmission path set PATH corresponding to all traffic in the transmission FLOW ; Among them belongs to flow i The set of optional paths is Step 104, setting the node type in the path; Get the node type corresponding to each node from the path; the node type includes the source node node 源端 、Destination node 目的 , path relay node NODE 中继 , redundant start node NODE 冗开 , redundancy elimination node NODE 冗消 ; Step 2: Set up the replica stream; When traffic is transmitted on a redundant link, the traffic flow is copied in the redundant path as a copy flow cs_flow at the redundant start node; Step 201, find redundant nodes and set up replica flows; Obtaining a redundant start node, a redundant elimination node, and a redundant path set; Let the source node ES1 be the flow flow i The redundant start node, let node SW5 be the flow flow i The redundant elimination node, then the redundant path set The source node ES1 is the traffic flow i Each data frame generates and encodes a sequence of replicated frames Copy traffic flow i Two copy flows are formed, namely the first copy flow cs1_flow i , the second copy flow cs2_flow i ; the cs1_flow i exist Up transmission; the cs2_flow i exist Up transmission; If the flow i In NODE 中继 = {SW2, SW5}, the link connecting the two nodes is transmitted without resetting the replica flow. The replica flow cs1_flow i or cs2_flow i Direct transmission; Step 202, converting the path into directed edges of the nodes; flow i Optional path Step 203, based on the node type in the path, frame replication is completed at the redundant start node, and frame elimination is completed at the redundant fire fighting node; flow i Optional path In the example, the source node that generates the traffic is ES1, the destination node that receives the traffic is ES2, and the relay nodes are SW2 and SW5, that is, NODE 中继 ={SW2,SW5}; Let the path relay node SW5 be the traffic flow i The redundant starting node, let node ES2 be the flow flow i If the redundant nodes are eliminated, the redundant path does not include [SW5→SW2→SW3→ES2], but only includes [SW5→SW6→ES2]; First, on the redundant start node NODE 冗开 In node ES1, the traffic flow i Each data frame is serially numbered and replicated to form a replica flow cs1_flow i and cs2_flow i Transmission; for path relay node NODE 中继 SW5 in the example is used as a redundancy elimination node, and the redundant path set The cs1_flow i exist On transmission, the cs2_flow i exist Transmission; Similarly, for the path relay node NODE 中继 SW2 in the example is used as a redundancy elimination node, and the redundant path set The cs1_flow i exist On transmission, the cs2_flow i exist Up transmission; Then, in node SW5, the first received copy frame of the duplicate stream is recorded through stream identification, and the first received copy frame of each sequence number frame is recorded. Record and merge as the current traffic received and eliminate SW5 copies the received traffic to form a new copy flow cs3_flow i Transmission, at this time SW5 as the redundant start node, and cs3_flow i Transmit to redundancy elimination node NODE 冗消 Node ES2 in the destination node, redundant path set The cs3_flow i exist Similarly, a new copy flow cs4_flow is formed in SW2 i Transmission, at this time SW2 is used as the redundant start node and cs4_flow i Transmit to redundancy elimination node NODE 冗消 Node ES2 in the destination node, redundant path set The cs4_flow i exist Up transmission; Finally, the first received duplicate frames of each sequence number frame are recorded in order in the destination node ES2 and merged as the received current traffic, and the rear duplicate frames are eliminated again; Step 3: Set constraints for traffic transmission; Step 301, flow cycle constraint condition; flow i The data frame Along the optional path During transmission, the link The starting bias on and Non-negative, The transmission time window should be completely contained in the traffic generation frame period Within, that is, comply with the flow cycle constraint condition; therefore, the flow cycle constraint condition includes formula (1) to formula (3); k represents flow i The data frame sequence number; K represents flow i The total number of data frames Indicates the traffic generation frame period; Represents a data frame Length; C represents the link bandwidth of the avionics network; Step 302, bounded forwarding constraints; flow i The data frame In the optional path Any two adjacent links and The transmission on the link is not only affected by the time length of the transmission frame, but also by the common node node of the two links. 公共 Forwarding delay of NT_node 公共 and the maximum clock synchronization delay δ, i.e., subject to the bounded forwarding constraint; Optional Path 1 The first link With the second link The common node is SW 1; Therefore, the bounded forwarding constraint condition includes formula (3) and formula (4); Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on ; Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on ; Indicates that the link The propagation time on NT_node 公共 Represents the common node of the two links 公共 Forwarding delay; δ represents the maximum clock synchronization delay; Step 303, end-to-end delay constraint; flow i In the optional path The upstream transmission should not exceed the flow i Scheduled deadline That is, the end-to-end delay constraint is followed; Therefore, the end-to-end delay constraint includes formula (3) and formula (5); Indicates flow i The data frame Along the optional path During transmission, on the first link The starting bias on ; Indicates flow i The data frame Along the optional path During transmission, at the last link The starting bias on ; Indicates that the path The last link The propagation time on Represents a data frame Length; C represents the link bandwidth of the avionics network; Step 304: Links have no overlapping constraints; Two different flow i and flow j Along the same path 公共 During transmission, on the link f _path 公共 Data frames of the above two flows and the dataframe There is no overlap in time, that is The transmission must be The transmission of is completed before the start of transmission, and vice versa, that is, the link no overlap constraint is followed; Said The transmission time window should be completely contained in the flow i Generate frame period Inside; Said The transmission time window should be completely contained in the flow j Generate frame period Inside; The first flow i The optional path set is recorded as and According to flow i The records of the nodes (end systems and switches are all network nodes) passed in sequence are: Belongs to flow i The first optional path Belongs to flow i The second optional path Belongs to flow i The third optional path Belongs to flow i The fourth optional path Second flow j The optional path set is recorded as and According to flow j The records of the nodes (end systems and switches are all network nodes) passed in sequence are: Belongs to flow j The first optional path Belongs to flow j The second optional path Belongs to flow j The third optional path Belongs to flow j The fourth optional path From this we can know that the first flow i With the second flow j The public path is Therefore, the link non-overlap constraint condition includes formula (3), formula (6) and formula (7); Indicates flow i The data frame Along the same path 公共 During transmission, on the link f _path 公共 The starting bias on ; Indicates flow j The data frame Along the same path 公共 During transmission, on the link f _path 公共 The starting bias on ; k′ represents the flow j The data frame sequence number; Represents a data frame Length; Represents a data frame Length; Step 305, frame independence constraint; Two different flow i and flow j Along the path and When transmitting, if you want to pass through the same node 重叠 Forward, in node 重叠 Data frames of the above two flows and the dataframe There is no overlap in time, that is and Cannot be node 重叠 Processing, that is Only in From the node 重叠 It can be processed only after it is transferred out, and vice versa, that is, it follows the frame independence constraint; The first flow i along Transmission, second flow j along Transmission needs to pass through the same node 重叠 Forward, and node 重叠 =[ES1,SW1,SW2]; Therefore, the frame-independent constraint condition includes formula (3), formula (6) and formula (8); Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on ; Indicates flow i The data frame Along the optional path During transmission, the link The starting bias on ; Indicates flow j The data frame Along the optional path During transmission, the link The starting bias on ; Indicates flow j The data frame Along the optional path During transmission, the link The starting bias on ; Indicates flow j Any optional path of and For path Two adjacent links on and For path Two adjacent links on Step 306, frame order preservation constraint condition; cs s _flow i Start from the redundant node NODE where it is located 冗开 Sent to the redundancy elimination node NODE where it is located 冗消 , NODE 冗开 to NODE 冗消 The redundant path is Copy stream cs s _flow i Copy frame In its corresponding redundant path The last link When transmitting on the Before the previous frame is scheduled to be sent to the redundancy elimination node All replicated frames have reached the redundancy elimination node through all redundant paths, that is, they comply with the frame order preservation constraint; The serial numbers of the replica frame and the original data frame are defined to remain unchanged and are still represented by the original serial numbers; Among them and Take the redundant parts [ES1→SW1→SW2→SW5] and [ES1→SW4→SW5] in the transmission as an example; ES1 is the redundant start node, SW5 is the redundant elimination node, and SW1, SW2 and SW4 are all redundant process nodes; then the redundant path is recorded as exist The copy flow cs1_flow is transmitted i ,exist The copy flow cs2_flow is transmitted i ; The second frame of all replica streams needs to be guaranteed When transmission starts, the first frame of all replica streams The last link on all redundant paths is and All of them have reached the redundancy elimination node SW5; finally, the copy flow cs3_flow that is transferred out from SW5 i Compared with the original flow i No frame out-of-sequence errors will occur; Therefore, the frame order preservation constraint condition includes formula (3) and formula (9); Indicates flow i A copy of the stream cs s _flow i Copy frame Along redundant paths During transmission, at the last link The starting bias on ; Indicates flow i A copy of the stream cs s _flow i Copy frame Along redundant paths During transmission, at the last link The starting bias on ; Step 4: Input the constraints into the solver for scheduling and obtaining the maximum delay of each flow; Copy stream cs s _flow i The traffic characteristics information carried are the same; The copy frame and The data frame information is the same; Copy stream cs s _flow j The traffic characteristics information carried are the same; The copy frame and The data frame information is the same; The set constraints of each flow transmission are stored in the scheduler. The purpose of the scheduler is to instantiate variables under the flow transmission constraints and generate the final gate array table GCL; The flow constraints are used as input to the SMT or MIP solver, and then the solver is run to ensure that all constraints are satisfied; the final result will include any flow that satisfies the flow constraints. i All data frames In different links Starting bias on The traffic finally received at the destination node is called destination-traffic, denoted by If the flow i There are redundant paths, destination-traffic The kth data frame The source is the first received The incoming copy frame Copy stream cs s _flow i Start from the redundant node NODE where it is located 冗开 Sent to the redundancy elimination node NODE where it is located 冗消 , NODE 冗开 to NODE 冗消 The redundant path is and If the flow i There is no redundant path, destination-traffic The kth data frame Source: Along Incoming data frame Said Each sequence data frame The delay statistics are recorded as Said It also transmits data frames time, and satisfy formula (3) and formula (10); Represents the copy stream cs s _flow i The kth replicated frame In redundant path Last link The starting bias on ; Represents the copy stream cs s _flow i The kth replicated frame In redundant path First link The starting bias on ; Indicates flow i The kth data frame On the path Last link The starting bias on ; Indicates flow i The kth data frame On the path First link The starting bias on ; Said The maximum value of the frame delay statistics of all frames in the flow is the flow i The maximum delay is denoted by Then the set of maximum delay statistics of each flow of avionics network flow FLOW is delay_FLOW, and