Scheduling method and system for time-sensitive network
By using edge access switches, node switches and edge output switches in a time-sensitive network, the time-triggered stream is scheduled based on the zero-jitter shaping model, which solves the transmission delay jitter problem and achieves a stable traffic transmission effect.
Patent Information
- Application Number
- CN202510050824.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-13
- Publication Date
- 2025-04-25
AI Technical Summary
The scheduling method of time-sensitive networks is difficult to effectively eliminate the problem of transmission delay jitter, especially in the case of serious differentiation of terminal devices, which leads to difficulties in actual deployment.
The time trigger flow sent by the transmission terminal is received through the edge access switch, and the time trigger flow is calculated based on the zero jitter shaping model, and the time trigger flow is scheduled in turn according to the priority and the time slot. At the same time, cache and schedule through the node switch and the edge output switch to ensure that the receiving terminal receives various time trigger streams.
It eliminates the problem of transmission delay inconsistency caused by the unsequential data frames and the switch's inherent system jitter, ensuring the consistency of the critical time-triggered streaming delays sent by the same terminal, eliminating the delay jitter, and achieving a stable traffic transmission effect.
Smart Images

Figure CN119892743A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of switches, and in particular to a scheduling method and system for a time-sensitive network. Background Art
[0002] Time-sensitive networking is an upgrade of traditional Ethernet. It realizes the integration of IT (Information Technology) and OT network (Operational Technology Network) through high-precision clock synchronization mechanism, deterministic traffic scheduling mechanism and high-reliability transmission guarantee mechanism. However, the configuration of the gate list with fine granularity setting frame by frame in the gate control mechanism of deterministic scheduling TAS (Time-Aware Shaper) is a difficult problem. There are currently two main technical methods. One is to use a complex solver combined with constraints to obtain the gate list according to the set transmission delay boundary requirements. The other is a direct forwarding technology without queuing delay. By controlling the terminal's transmission offset and reasonable opening and closing gate time slots, queuing delays are avoided during the transmission process, and the data frame is quickly forwarded with the minimum delay. However, the scheduling method of time-sensitive networks often requires the terminal to cooperate with the network switching equipment to achieve joint scheduling. In actual deployment, due to the serious differentiation of terminal equipment, actual deployment is more difficult, and the goal of related scheduling is usually to meet the requirements of end-to-end transmission delay, and the transmission delay jitter problem cannot be eliminated. Summary of the invention
[0003] In view of this, an embodiment of the present application provides a scheduling method and system for a time-sensitive network, which can effectively solve the problem of transmission delay jitter in a time-sensitive network.
[0004] In a first aspect, an embodiment of the present application provides a scheduling method for a time-sensitive network, including:
[0005] Receive different time-triggered streams sent by the sending terminal through the edge access switch;
[0006] Calculate the occupied time slot of each of the time-triggered flows in the edge access switch based on a zero-jitter shaping model;
[0007] After caching each of the time-triggered flows in the edge access switch, scheduling each of the time-triggered flows in sequence according to the priority and occupied time slot of each time-triggered flow;
[0008] According to the transmission path of the time-triggered flow in the node switch and the edge output switch, calculate the occupied time slots of each time-triggered flow to be scheduled in the node switch and the edge output switch in turn;
[0009] The time-triggered flows scheduled by the edge access switch are sequentially cached and scheduled by the node switch and the edge output switch, so that a receiving terminal receives each of the time-triggered flows.
[0010] In a first possible embodiment of the first aspect, the scheduling method of the time-sensitive network further includes:
[0011] Detecting whether the occupied time slot of the time-triggered flow currently scheduled in the switch overlaps with the occupied time slot of the scheduled time-triggered flow;
[0012] If it is detected that the occupied time slots overlap, the occupied time slot of the currently scheduled time-triggered flow is selected, which is larger than the occupied time slot of the currently scheduled time-triggered flow and has the shortest adjacent time slot interval to the currently scheduled time-triggered flow to calculate the time slot compensation value of the currently scheduled time-triggered flow;
[0013] The gate opening time slot and gate closing time slot of the currently scheduled time-triggered flow are revised according to the time slot compensation value.
[0014] In a second possible embodiment of the first aspect, the scheduling method of the time-sensitive network further includes:
[0015] Determine whether to continue scheduling the time-triggered flow according to a judgment result of whether the total occupied time slots of the time-triggered flow after scheduling in the node switch meet the gating same-cycle constraint condition;
[0016] If it is determined to continue scheduling the time-triggered flow, the time-triggered flow is cached and scheduled in each of the node switches in turn through the multiple node switches according to the detection result of whether there are multiple node switches in the transmission path of the time-triggered flow.
[0017] In a third possible embodiment of the first aspect, the scheduling method of the time-sensitive network further includes:
[0018] Comparing the transmission delay of each of the time-triggered flows by the edge output switch with a preset delay;
[0019] When the transmission delay is less than or equal to the preset delay, it is determined to cache and schedule the time-triggered flow through the edge output switch.
[0020] In a fourth possible embodiment of the first aspect, the scheduling method of the time-sensitive network further includes:
[0021] Detecting whether there is an unscheduled time-triggered flow according to the scheduling sequence of each of the time-triggered flows;
[0022] If there are any unscheduled time-triggered flows, rescheduling each of the time-triggered flows through the edge access switch;
[0023] The time-triggered flows of each switch are mapped into the same period, and a switch scheduling time slot table after the mapping into the same period is output.
[0024] In a fifth possible embodiment of the first aspect, the occupied time slot of the time-triggered flow is equal to the difference between the closing time slot and the opening time slot of the time-triggered flow, and the calculating the occupied time slot of each time-triggered flow in the edge access switch based on the zero-jitter shaping model includes:
[0025] Calculating the maximum jitter error value of the forwarding delay of each of the time-triggered flows by the edge access switch;
[0026] Calculating the minimum sending time of each of the time-triggered flows in the store-and-forward queue of the edge access switch;
[0027] Calculate the gate opening time slot of each of the time-triggered flows in the edge access switch based on the maximum jitter error value and the minimum sending time;
[0028] Based on the door opening time slot of each of the time-triggered flows and the transmission delay at the edge access switch, the door closing time slot of each of the time-triggered flows at the edge access switch is calculated.
[0029] In a sixth possible embodiment of the first aspect, the calculating the occupied time slot of each of the time-triggered flows in the edge access switch based on the zero-jitter shaping model further includes:
[0030] Calculate the maximum jitter error value of the forwarding delay of each time-triggered flow scheduled by the edge access switch according to the delay deviation of each time-triggered flow and the jitter value of network clock synchronization;
[0031] Determining the time for the edge access switch to receive each of the time-triggered flows according to the sending delay of the sending terminal for each of the time-triggered flows;
[0032] Based on the time when each time-triggered flow is received by the edge access switch and the minimum residence time of each time-triggered flow in the edge access switch, the minimum sending time of each time-triggered flow in the storage and forwarding queue of the edge access switch is determined.
[0033] In a seventh possible embodiment of the first aspect, the calculating of the occupied time slots for scheduling each of the time-triggered flows in sequence in the node switch and the edge output switch includes:
[0034] According to the closing time slot of each time-triggered flow in the current switch and the minimum residence time in the next adjacent switch, and the maximum jitter error value of the forwarding delay of each time-triggered flow by the next adjacent switch, the opening time slot for scheduling each time-triggered flow in the node switch and the edge output switch is calculated in sequence;
[0035] According to the gate opening time slot and the sending delay of each time-triggered flow scheduled at the node switch and the edge output switch, the gate closing time slot of each time-triggered flow scheduled at the node switch and the edge output switch is calculated respectively.
[0036] In an eighth possible embodiment of the first aspect, the scheduling of each of the time-triggered flows in sequence according to the priority and occupied time slot of each of the time-triggered flows includes:
[0037] Scheduling each of the time-triggered flows in order of priority from high to low in the respectively determined occupied time slots;
[0038] If there are at least two time-triggered flows with the same priority, the time-triggered flows with the same priority are scheduled in the order of the gate opening time slots from small to large in the respectively determined occupied time slots.
[0039] In a second aspect, an embodiment of the present application provides a scheduling system for a time-sensitive network, including:
[0040] The edge access switch is used to receive different time-triggered flows sent by the sending terminal, and calculate the occupied time slots of each of the time-triggered flows based on the zero-jitter shaping model;
[0041] The edge access switch is further used to sequentially schedule each of the time-triggered flows according to the priority and occupied time slot of each time-triggered flow after each of the time-triggered flows is cached in the edge access switch;
[0042] The node switch is used to calculate the occupied time slot for scheduling each of the time-triggered flows according to the transmission path of the time-triggered flows, and cache and schedule the time-triggered flows scheduled by the edge access switch;
[0043] The edge output switch is used to calculate the occupied time slot for scheduling each of the time-triggered flows, cache and schedule the time-triggered flows scheduled by the node switch, so that the receiving terminal receives each of the time-triggered flows.
[0044] The embodiments of the present application have the following beneficial effects:
[0045] A scheduling method for a time-sensitive network of this embodiment includes: receiving different time-triggered streams sent by a sending terminal through an edge access switch; calculating the occupied time slots of each time-triggered stream in the edge access switch based on a zero-jitter shaping model; caching each time-triggered stream in the edge access switch, and scheduling each time-triggered stream in turn according to the priority and occupied time slot of each time-triggered stream; calculating the occupied time slots of each time-triggered stream scheduled in the node switch and the edge output switch in turn according to the transmission path of the time-triggered stream in the node switch and the edge output switch; caching and scheduling the time-triggered streams scheduled by the edge access switch in turn through the node switch and the edge output switch, so that the receiving terminal receives each time-triggered stream. The scheduling method for a time-sensitive network can eliminate the transmission delay inconsistency problem caused by uncertain factors such as disorder conflicts between data frames and inherent system jitter of the switch, and realize fine-grained shaping transmission frame by frame. Ensure that the transmission delay of each critical time-triggered stream sent by the same terminal remains consistent, eliminate delay jitter, and obtain a stable traffic transmission effect. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0047] Figure 1 A schematic diagram of the structure of a scheduling system for a time-sensitive network according to an embodiment of the present application is shown;
[0048] Figure 2 A first flow chart of a scheduling method for a time-sensitive network according to an embodiment of the present application is shown;
[0049] Figure 3 A second flow chart of the scheduling method of a time-sensitive network according to an embodiment of the present application is shown;
[0050] Figure 4 A third flow chart of the scheduling method of a time-sensitive network according to an embodiment of the present application is shown;
[0051] Figure 5 A fourth flow chart of the scheduling method of a time-sensitive network according to an embodiment of the present application is shown;
[0052] Figure 6 A schematic diagram of a gated cycle period in an embodiment of the present application is shown.
[0053] Description of main component symbols:
[0054] 100 - a scheduling system for a time-sensitive network; 110 - an edge access switch; 120 - a node switch; 130 - an edge output switch. DETAILED DESCRIPTION
[0055] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments.
[0056] The components of the embodiments of the present application generally described and shown in the drawings herein may be arranged and designed in various configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the application claimed for protection, but merely represents the selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present application.
[0057] Hereinafter, the terms "including", "having" and their cognates that can be used in various embodiments of the present application are intended only to indicate specific features, numbers, steps, operations, elements, components or a combination of the foregoing items, and should not be understood as first excluding the existence of one or more other features, numbers, steps, operations, elements, components or a combination of the foregoing items or increasing the possibility of one or more features, numbers, steps, operations, elements, components or a combination of the foregoing items. In addition, the terms "first", "second", "third" and the like are only used to distinguish descriptions and cannot be understood as indicating or implying relative importance.
[0058] Unless otherwise defined, all terms (including technical terms and scientific terms) used herein have the same meanings as those generally understood by those skilled in the art to which the various embodiments of the present application belong. The terms (such as those defined in generally used dictionaries) will be interpreted as having the same meanings as the contextual meanings in the relevant technical field and will not be interpreted as having idealized meanings or overly formal meanings unless clearly defined in the various embodiments of the present application.
[0059] In conjunction with the accompanying drawings, some embodiments of the present application are described in detail below. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.
[0060] The time-sensitive network has the following goals: the message delay for the switching network is guaranteed; time-triggered flow (TT flow) and non-time-triggered flow can be mixed and transmitted, and the transmission of non-time-triggered flow will not affect the transmission delay of time-triggered flow; multiple high-level protocols can share network infrastructure, that is, the load of multiple protocols can be transmitted in the network at the same time; network errors can be quickly diagnosed and repaired by obtaining accurate information at the source. Time-triggered flow (TT flow) refers to a data flow that is periodically sent according to a predetermined schedule in a time-sensitive network. In view of the transmission delay jitter problem in the scheduling method of the time-sensitive network, the present application proposes a scheduling method for a time-sensitive network, based on the sending period of each time-triggered flow by the sending terminal, combined with a zero-jitter shaping model to add uncertain jitter delay, calculate the occupied time slot of zero-jitter shaping of each time-triggered flow to eliminate the transmission delay jitter, and schedule each time-triggered flow in the gating mechanism of the time-aware shaper of multiple switches to achieve deterministic transmission with low delay jitter.
[0061] Before describing the scheduling method of the time-sensitive network of the present application, the structure of the scheduling system of the time-sensitive network is first introduced accordingly.
[0062] Figure 1 The schematic diagram of the structure of a scheduling system 100 for a time-sensitive network proposed in an embodiment of the present application is shown. Exemplarily, the scheduling system 100 for a time-sensitive network includes an edge access switch 110, a node switch 120, and an edge output switch 130. The scheduling system 100 for a time-sensitive network can achieve accurate control and optimization of data traffic in a time-sensitive network through the coordinated work of the edge access switch 110, the node switch 120, and the edge output switch 130.
[0063] In the embodiment of the present application, the edge access switch 110 is located at the edge of the network and is responsible for receiving the time-triggered stream from the sending terminal device and forwarding it. The edge access switch 110 is used to receive different time-triggered streams sent by the sending terminal and calculate the occupied time slots of each time-triggered stream based on the zero-jitter shaping model. The edge access switch 110 is also used to schedule each time-triggered stream in sequence according to the priority and occupied time slot of each time-triggered stream after caching each time-triggered stream in the edge access switch.
[0064] In one embodiment, the node switch 120 is located at the core of the network and is responsible for forwarding time-triggered flows between different network nodes. The node switch 120 is used to calculate the occupied time slots for scheduling each time-triggered flow according to the transmission path of the time-triggered flow, and cache and schedule the time-triggered flow scheduled by the edge access switch 110. The edge output switch 130 is located at the exit of the network and is responsible for sending the processed data traffic to the destination. The edge output switch 130 is used to calculate the occupied time slots for scheduling each time-triggered flow, and cache and schedule the time-triggered flow scheduled by the node switch 120, so that the receiving terminal receives each time-triggered flow.
[0065] The scheduling method of the time-sensitive network is described below in conjunction with some specific embodiments.
[0066] Figure 2 A flow chart of a method for scheduling a time-sensitive network according to an embodiment of the present application is shown. Exemplarily, the method for scheduling a time-sensitive network includes the following steps:
[0067] S210 , receiving different time-triggered flows sent by a sending terminal through the edge access switch 110 .
[0068] S220 , calculating the occupied time slots of each time-triggered flow in the edge access switch 110 based on the zero-jitter shaping model.
[0069] In one embodiment, the occupied time slot of the time-triggered flow is equal to the difference between the closing time slot and the opening time slot of the time-triggered flow, such as Figure 3 As shown, the calculation of the occupied time slots of each time-triggered flow in the edge access switch 110 includes the following steps:
[0070] S221 , calculating the maximum jitter error value of the forwarding delay of each time-triggered flow by the edge access switch 110 .
[0071] In one embodiment, the present application calculates the maximum jitter error value of the forwarding delay of each time-triggered flow by the edge access switch 110 according to the delay deviation of the edge access switch 110 for scheduling each time-triggered flow and the jitter value of the network clock synchronization. Among them, the delay deviation of the edge access switch 110 is equal to the difference between the maximum delay and the minimum delay of the edge access switch 110 transmitting the time-triggered flow, and the maximum jitter value of the network clock synchronization refers to the maximum change in the phase or frequency of the clock signal when clock synchronization is performed in the network. The maximum jitter error value calculation formula of the time-triggered flow is:
[0072]
[0073] Wherein, v0 represents the edge access switch 110, represents the maximum jitter error value of the forwarding delay of the edge access switch 110 for the nth time-triggered flow, represents the maximum delay of the edge access switch 110 transmitting the nth time-triggered flow, It indicates the minimum delay of the edge access switch 110 in transmitting the nth time-triggered flow, and T_jitter_max indicates the maximum jitter value of the network clock synchronization.
[0074] S222 , calculating the minimum sending time of each time-triggered flow in the store-and-forward queue of the edge access switch 110 .
[0075] In one embodiment, the present application determines the time when the edge access switch 110 receives each time-triggered stream based on the sending delay of the sending terminal for each time-triggered stream. The sending delay of the sending terminal for the time-triggered stream refers to the time required for the time-triggered stream to completely enter the transmission medium from the time when the sending terminal enters the edge access switch 110 to the time when the time-triggered stream completely enters the transmission medium. Since there is a deviation between the clocks of the sending terminal and the edge access switch 110, clock synchronization is required to ensure that all nodes work on the same time reference. Assume that the sending moment of the current sending terminal sending the time-triggered stream is converted into the sum of nanoseconds for the reference time as GetNonetime(), according to the sending period T of the sending terminal n Perform modulo calculation to find the deviation T_offset between the sending time of the time-triggered stream and the reference time of the sending terminal n , where T_offset n =GetNonetime(t n )%T n , t n The sending time of the time trigger flow sent by the sending terminal.
[0076] The present application performs clock synchronization on the sending terminal's sending delay for each time-triggered stream, and can determine the time when the edge access switch 110 receives each time-triggered stream. The sending terminal's sending delay for the time-triggered stream refers to the time required for the time-triggered stream to completely enter the transmission medium from the time when the sending terminal enters the edge access switch 110. The calculation formula for the time when the edge access switch 110 receives each time-triggered stream is:
[0077]
[0078] In the formula, represents the time when the edge access switch 110 receives the nth time-triggered flow, t x Indicates the sending terminal, Indicates the sending delay of the sending terminal for the nth time-triggered stream, T_offset nIndicates the deviation between the sending time of the nth time-triggered stream and the reference time.
[0079] In another embodiment, the present application determines the minimum sending time of each time-triggered flow in the storage and forwarding queue of the edge access switch 110 based on the time when the edge access switch 110 receives each time-triggered flow and the minimum residence time of each time-triggered flow in the edge access switch 110. The minimum residence time of the time-triggered flow in the edge access switch 110 refers to the shortest time that the time-triggered flow waits for processing in the switch, and the calculation formula for the minimum residence time of the time-triggered flow in the edge access switch 110 is:
[0080]
[0081] In the formula, represents the minimum residence time of the nth time-triggered flow in the edge access switch 110, The transmission delay of the edge access switch 110 for the nth time-triggered flow is determined by the port rate R0 of the edge access switch 110 and the transmission data frame f_size n The size of is determined by
[0082] The calculation formula for the minimum sending time of each time-triggered flow in the store-and-forward queue of the edge access switch 110 is:
[0083]
[0084] In the formula, Indicates the minimum sending time of the nth time-triggered flow in the storage-and-forward queue of the edge access switch 110 .
[0085] S223 , based on the maximum jitter error value and the minimum sending time, calculate the gate opening time slot of each time-triggered flow in the edge access switch 110 .
[0086] In one embodiment, the calculation formula for the gate opening time slot of each time-triggered flow in the edge access switch 110 is:
[0087]
[0088] In the formula, It represents the gate opening time slot of the nth time-triggered flow in the edge access switch 110 .
[0089] S224 , based on the gate opening time slot of each time-triggered flow and the transmission delay at the edge access switch 110 , calculate the gate closing time slot of each time-triggered flow at the edge access switch 110 .
[0090] In one embodiment, the calculation formula for the closing time slot of each time-triggered flow in the edge access switch 110 is:
[0091]
[0092] In the formula, represents the closing time slot of the nth time-triggered flow in the edge access switch 110, It represents the sending delay of the nth time-triggered flow in the edge access switch 110.
[0093] S230 , after caching each time-triggered flow in the edge access switch 110 , schedule each time-triggered flow in sequence according to the priority and occupied time slot of each time-triggered flow.
[0094] In one embodiment, the present application allows the switch to temporarily store the time-triggered flow when it arrives, rather than forwarding it immediately, through a store-and-forward delay model, to avoid multiple time-triggered flows competing for the same output port at the same time, thereby reducing the possibility of queuing delays and packet loss.
[0095] In another embodiment, the scheduling process of each time-triggered flow in the switch includes: scheduling each time-triggered flow in the order of priority from high to low in their respective determined occupied time slots; if there are at least two time-triggered flows with the same priority, then scheduling the time-triggered flows with the same priority in the order of opening time slots from small to large in their respective determined occupied time slots.
[0096] Specifically, to achieve deterministic transmission with low latency and jitter, when the switch gating mechanism transmits the time-triggered stream of the current priority queue, the transmission channel of the time-triggered stream of other queues should be closed, and the interference between the time-triggered streams should be avoided by gating 0 / 1 switching. Since the gated opening and closing time slot is an instantaneous operation at a certain moment, and the transmission time-triggered stream is a continuous time period operation, after the gate switching operation, in order to realize that the port resources of the switch can immediately transmit the specified time-triggered stream according to the time slot allocation of the configured gating list, it should be ensured that the time-triggered stream of the transmission channel of the queue that was originally closed has been sent and no longer occupies the port resources.
[0097] In one embodiment, if Figure 4 As shown, the scheduling method of the time-sensitive network also includes:
[0098] S231, detecting whether the occupied time slot of the time-triggered flow currently scheduled in the switch overlaps with the occupied time slot of the scheduled time-triggered flow.
[0099] S232, if it is detected that the occupied time slots overlap, then select an occupied time slot that is larger than the currently scheduled time-triggered flow and the shortest adjacent time slot interval to calculate the time slot compensation value of the currently scheduled time-triggered flow.
[0100] In one embodiment, adjacent time slot intervals refer to time slot intervals between adjacent time-triggered streams. If the occupied time slot of the currently scheduled time-triggered stream overlaps with the occupied time slot of the already scheduled time-triggered stream, the adjacent time slot intervals between the already scheduled time-triggered streams can be called as the occupied time slot of the currently scheduled time-triggered stream. The adjacent time slot intervals need to meet the requirement of being greater than the sending delay of the switch.
[0101] S233, revising the gate opening time slot and gate closing time slot of the currently scheduled time-triggered flow according to the time slot compensation value.
[0102] In one implementation, the time slot compensation value may be expressed as:
[0103]
[0104] in, Indicates the gate opening time slot of the m+1th scheduled time-triggered flow in the occupied time slot that is greater than the currently scheduled time-triggered flow. Indicates the closing time slot of the mth scheduled time-triggered flow in the occupied time slot of the currently scheduled time-triggered flow, represents the adjacent time slot interval between the m+1th scheduled time-triggered flow and the mth scheduled time-triggered flow, represents the sending delay of the i-th switch to the n-th time-triggered flow, Indicates the time slot compensation value of the currently scheduled nth time-triggered flow. The gate opening time slot of the currently scheduled nth time-triggered flow is The closing time slot of the nth time-triggered flow currently scheduled is The size of these two time slots plus the time slot compensation value The opening and closing time slots of the flow are triggered for the revised current scheduled time.
[0105] S240 , according to the transmission path of the time-triggered flow in the node switch 120 and the edge output switch 130 , calculate the occupied time slots of each time-triggered flow to be scheduled in the node switch 120 and the edge output switch 130 in sequence.
[0106] In one embodiment, the present application sequentially calculates the gate opening time slots for scheduling each time-triggered flow in the node switch 120 and the edge output switch 130 according to the gate closing time slots of each time-triggered flow in the current switch and the minimum residence time in the next adjacent switch, as well as the maximum jitter error value of the forwarding delay of each time-triggered flow by the next adjacent switch. And according to the gate opening time slots and transmission delays for scheduling each time-triggered flow in the node switch 120 and the edge output switch 130, the gate closing time slots for scheduling each time-triggered flow in the node switch 120 and the edge output switch 130 are calculated respectively.
[0107] In one implementation, the calculation formula for the gate opening time slot of each time-triggered flow scheduled in each switch is:
[0108]
[0109] In the formula, It indicates the gate opening time slot of the nth time-triggered flow scheduled at the i+1th switch. Indicates that the nth time-triggered flow is in the closing time slot of the i-th switch, represents the minimum residence time of the nth time-triggered flow in the i+1th switch, Indicates the maximum jitter error value of the forwarding delay of the nth time-triggered flow by the i+1th switch.
[0110] The calculation formula for the gate-off time slot of each time-triggered flow scheduled at each switch is:
[0111]
[0112] In the formula, It indicates the closing time slot of the nth time-triggered flow scheduled at the i+1th switch. It represents the sending delay of the i+1th switch to the nth time-triggered flow.
[0113] In one embodiment, the present application is based on the opening time slot and closing time slot of the time-triggered flow in the edge access switch 110. According to the calculation formula of the opening time slot and closing time slot scheduled by each time-triggered flow in each switch, the opening time slot and closing time slot of the node switch 120 adjacent to the edge access switch 110 can be calculated. Similarly, based on the opening time slot and closing time slot of the current switch, the opening time slot and closing time slot of the next switch can be calculated according to the formula, and the opening time slot and closing time slot of each node switch 120 and the edge output switch 130 can be obtained in turn.
[0114] S250 , the time-triggered flows scheduled by the edge access switch 110 are sequentially cached and scheduled through the node switch 120 and the edge output switch 130 , so that the receiving terminal receives each time-triggered flow.
[0115] Exemplarily, the present application calculates the door opening time slot and door closing time slot of each time trigger flow scheduled in each node switch 120 and edge output switch 130 according to the transmission path of the time trigger flow in each switch. Each time trigger flow is cached in turn through each switch, and each time trigger flow is scheduled according to the priority of each time trigger flow and the door opening time slot and door closing time slot of each switch.
[0116] In one embodiment, the present application determines whether to continue scheduling the time-triggered flow according to the judgment result of whether the total occupied time slot of the time-triggered flow after scheduling in the node switch 120 meets the gated same-cycle constraint condition. If it is determined to continue scheduling the time-triggered flow, the time-triggered flow is cached and scheduled in each node switch 120 in turn according to the detection result of whether there are multiple node switches 120 in the transmission path of the time-triggered flow.
[0117] Exemplarily, the present application determines the gating cycle period for the switch to schedule all time-triggered flows according to the sending period of each time-triggered flow by the sending terminal. The total occupied time slots of the time-triggered flow are compared with the gating cycle period to determine to continue scheduling the time-triggered flow when the total occupied time slots are less than or equal to the gating cycle period.
[0118] In one embodiment, the present application determines the gating cycle period according to the least common multiple of the transmission periods of each time-triggered stream of the transmitting terminal, and the gating cycle period T tas =LCM(T1,T2,…,T n ). The switch's gating mechanism performs gating cycles based on the reference time, ensuring that the calculated switch's gate opening deviation and the terminal's sending time deviation are based on the same reference time. Calculate the total occupied time slots of the scheduled time-triggered flow Whether the available time slot boundary requirements are met. Let the starting boundary of the available scheduling resources be the gate opening time slot of the first time-triggered flow in the scheduling sequence. The end boundary of available scheduling resources is The starting and ending boundaries of available scheduling resources are separated by a gating cycle period T. tas After scheduling, the time slot boundaries of all time-triggered flows should satisfy the gated same-period constraint condition that is less than or equal to the start boundary and end boundary of the available scheduling resources, otherwise the scheduling is terminated.
[0119] In another embodiment, the present application sets the transmission delay Delay_scheme of each time-triggered flow by the edge output switch 130 according to the occupied time slot of each time-triggered flow in the edge output switch 130. n and preset delay Delay_req n For comparison, Delay_sche n ≤Delay_req n ;v f represents an edge output switch 130, Indicates the gate time slot for scheduling the nth time-triggered flow in the edge output switch 130. When the transmission delay is less than or equal to the preset delay, it is determined that the time-triggered flow is cached and scheduled through the edge output switch 130, otherwise, the scheduling of each time-triggered flow is terminated.
[0120] In one embodiment, if Figure 5 As shown, the scheduling method of the time-sensitive network also includes:
[0121] S251, detecting whether there is an unscheduled time-triggered flow according to the scheduling sequence of each time-triggered flow.
[0122] S252 : If there are unscheduled time-triggered flows, reschedule each time-triggered flow through the edge access switch 110 .
[0123] S253, mapping each time-triggered flow of each switch to the same period, and outputting the switch scheduling time slot table after the same period mapping.
[0124] In one embodiment, if Figure 6 As shown, if there are scheduled opening time slots for each time-triggered flow and closing time slots Greater than the gate cycle period T tas The boundary time slot of the time trigger flow is mapped to the same periodicity as the opening time slot and closing time slot of the time trigger flow:
[0125]
[0126] In the above formula, It is the gate time slot of the time-triggered stream after the same period mapping. It is the gate time slot of the time-triggered stream after mapping with the same period, so that all the time-triggered streams are converted to the same gating cycle period.
[0127] In an optional embodiment, when the sending terminal sends a non-time-triggered flow f p When sending each non-time triggered flow f pBefore, you should set the current switch v i The port rate R i And the size of the data frame to be sent f_size p Calculate the required transmission slots for non-time-triggered flows According to the comparison result of whether the remaining time slot in the gating cycle is greater than or equal to the transmission time slot of the non-time-triggered flow, it is determined whether to transmit the non-time-triggered flow. If the remaining time slot is greater than or equal to the transmission time slot, the non-time-triggered flow f p If the remaining time slot is less than the transmission time slot, the non-time-triggered flow f is not sent. p , to prevent the randomly sent non-time-triggered stream from interfering with the time-triggered stream transmission time slot.
[0128] In several embodiments provided in the present application, it should be understood that the disclosed apparatus and method can also be implemented in other ways. The apparatus embodiments described above are merely schematic, for example, the flowcharts and structure diagrams in the accompanying drawings show the possible architecture, functions and operations of the apparatus, method and computer program product according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and a module, a program segment or a part of a code contains one or more executable instructions for implementing a specified logical function. It should also be noted that in an alternative implementation, the functions marked in the box can also occur in a different order from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the structure diagram and / or the flow diagram, and the combination of boxes in the structure diagram and / or the flow diagram, can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.
[0129] In addition, the functional modules or units in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
[0130] If the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a smart phone, a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods of each embodiment of the present application.
[0131] The above are only specific implementation methods of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be covered by the protection scope of the present application.
Claims
1. A scheduling method for a time-sensitive network, characterized in that: include: Receive different time-triggered streams sent by the sending terminal through the edge access switch; Calculate the occupied time slot of each of the time-triggered flows in the edge access switch based on a zero-jitter shaping model; After caching each of the time-triggered flows in the edge access switch, scheduling each of the time-triggered flows in sequence according to the priority and occupied time slot of each time-triggered flow; According to the transmission path of the time-triggered flow in the node switch and the edge output switch, calculate the occupied time slots of each time-triggered flow to be scheduled in the node switch and the edge output switch in turn; The time-triggered flows scheduled by the edge access switch are sequentially cached and scheduled by the node switch and the edge output switch, so that a receiving terminal receives each of the time-triggered flows.
2. The time-sensitive network scheduling method according to claim 1, characterized in that: Also includes: Detecting whether the occupied time slot of the time-triggered flow currently scheduled in the switch overlaps with the occupied time slot of the scheduled time-triggered flow; If it is detected that the occupied time slots overlap, the occupied time slot of the currently scheduled time-triggered flow is selected, which is larger than the occupied time slot of the currently scheduled time-triggered flow and has the shortest adjacent time slot interval to the currently scheduled time-triggered flow to calculate the time slot compensation value of the currently scheduled time-triggered flow; The gate opening time slot and gate closing time slot of the currently scheduled time-triggered flow are revised according to the time slot compensation value.
3. The scheduling method for a time-sensitive network according to claim 1, characterized in that: Also includes: Determine whether to continue scheduling the time-triggered flow according to a judgment result of whether the total occupied time slots of the time-triggered flow after scheduling in the node switch meet the gating same-cycle constraint condition; If it is determined to continue scheduling the time-triggered flow, the time-triggered flow is cached and scheduled in each of the node switches in turn through the multiple node switches according to the detection result of whether there are multiple node switches in the transmission path of the time-triggered flow.
4. The scheduling method for a time-sensitive network according to claim 1, characterized in that: Also includes: Comparing the transmission delay of each of the time-triggered flows by the edge output switch with a preset delay; When the transmission delay is less than or equal to the preset delay, it is determined to cache and schedule the time-triggered flow through the edge output switch.
5. The method for scheduling a time-sensitive network according to claim 1, characterized in that: Also includes: Detecting whether there is an unscheduled time-triggered flow according to the scheduling sequence of each of the time-triggered flows; If there are any unscheduled time-triggered flows, rescheduling each of the time-triggered flows through the edge access switch; The time-triggered flows of each switch are mapped into the same period, and a switch scheduling time slot table after the mapping into the same period is output.
6. The method for scheduling a time-sensitive network according to claim 1, characterized in that: The occupied time slot of the time-triggered flow is equal to the difference between the closing time slot and the opening time slot of the time-triggered flow, and the zero-jitter shaping model is used to calculate the occupied time slot of each time-triggered flow in the edge access switch, including: Calculating the maximum jitter error value of the forwarding delay of each of the time-triggered flows by the edge access switch; Calculating the minimum sending time of each of the time-triggered flows in the store-and-forward queue of the edge access switch; Calculate the gate opening time slot of each of the time-triggered flows in the edge access switch based on the maximum jitter error value and the minimum sending time; Based on the opening time slot of each of the time-triggered flows and the sending delay at the edge access switch, the closing time slot of each of the time-triggered flows at the edge access switch is calculated.
7. The method for scheduling a time-sensitive network according to claim 6, characterized in that: The method of calculating the occupied time slots of each of the time-triggered flows in the edge access switch based on the zero-jitter shaping model further includes: Calculate the maximum jitter error value of the forwarding delay of each time-triggered flow scheduled by the edge access switch according to the delay deviation of each time-triggered flow and the jitter value of network clock synchronization; Determining the time for the edge access switch to receive each of the time-triggered flows according to the sending delay of the sending terminal for each of the time-triggered flows; Based on the time when each time-triggered flow is received by the edge access switch and the minimum residence time of each time-triggered flow in the edge access switch, the minimum sending time of each time-triggered flow in the storage and forwarding queue of the edge access switch is determined.
8. The method for scheduling a time-sensitive network according to claim 6, characterized in that: The calculating of the occupied time slots of each of the time-triggered flows for scheduling in the node switch and the edge output switch in sequence comprises: According to the closing time slot of each time-triggered flow in the current switch and the minimum residence time in the next adjacent switch, and the maximum jitter error value of the forwarding delay of each time-triggered flow by the next adjacent switch, the opening time slot for scheduling each time-triggered flow in the node switch and the edge output switch is calculated in sequence; According to the gate opening time slot and the sending delay of each time-triggered flow scheduled at the node switch and the edge output switch, the gate closing time slot of each time-triggered flow scheduled at the node switch and the edge output switch is calculated respectively.
9. The method for scheduling a time-sensitive network according to claim 6, characterized in that: The step of sequentially scheduling each of the time-triggered flows according to the priority and occupied time slot of each time-triggered flow comprises: Scheduling each of the time-triggered flows in order of priority from high to low in the respectively determined occupied time slots; If there are at least two time-triggered flows with the same priority, the time-triggered flows with the same priority are scheduled in the order of the gate opening time slots from small to large in the respectively determined occupied time slots.
10. A scheduling system for a time-sensitive network, characterized in that: include: The edge access switch is used to receive different time-triggered flows sent by the sending terminal, and calculate the occupied time slots of each of the time-triggered flows based on the zero-jitter shaping model; The edge access switch is further used to sequentially schedule each of the time-triggered flows according to the priority and occupied time slot of each time-triggered flow after each of the time-triggered flows is cached in the edge access switch; The node switch is used to calculate the occupied time slot for scheduling each of the time-triggered flows according to the transmission path of the time-triggered flows, and cache and schedule the time-triggered flows scheduled by the edge access switch; The edge output switch is used to calculate the occupied time slot for scheduling each of the time-triggered flows, cache and schedule the time-triggered flows scheduled by the node switch, so that the receiving terminal receives each of the time-triggered flows.