A time-sensitive network deterministic scheduling method and device

By calculating the cache delay interval of the target data stream and determining the gated list of time-sensitive network nodes, the problem that the existing technology cannot meet the lower bound of on-time service delay is solved, and the determinism of end-to-end delay of data streams and the improvement of service support capabilities is achieved.

CN114928894BActive Publication Date: 2025-04-04BEIJING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210491954.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-07
Publication Date
2025-04-04
Estimated Expiration
2042-05-07

AI Technical Summary

Technical Problem

The time-aware scheduling methods of existing time-sensitive networks cannot meet the latency lower bound requirements of on-time services, affecting the delay certainty of end-to-end transmission of data streams, and cannot effectively support on-time services.

Method used

By obtaining the upper and lower bound requirements of the target data stream, the cache delay interval during end-to-end transmission in a time-sensitive network is calculated, and the gate state and state duration of the queue transmission gate in the gate list of each node are determined using a preset time-aware scheduling algorithm.

Benefits of technology

It effectively ensures the certainty of end-to-end delay of data flow and enhances the support capabilities of time-sensitive networks to be time-sensitive and time-based services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114928894B_ABST
    Figure CN114928894B_ABST
Patent Text Reader

Abstract

The embodiment of the present invention provides a method and device for deterministic scheduling of a time-sensitive network. The scheme is as follows: for each target data stream, obtain the upper and lower bounds of the delay for the end-to-end transmission of the target data stream in the time-sensitive network; obtain the minimum delay for end-to-end transmission; for each data stream to be transmitted, based on the upper and lower bounds of the delay for the data stream to be transmitted, calculate the cache delay interval for the end-to-end transmission of the data stream to be transmitted; based on the cache delay interval for the end-to-end transmission of each data stream to be transmitted in the time-sensitive network, use a preset time-aware scheduling algorithm to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, and the state duration corresponding to each gate state. Through the technical solution provided by the embodiment of the present application, the end-to-end delay of the data stream in the network can be accurately controlled to ensure the certainty of the time when the data stream arrives at the destination node.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of industrial Internet of Things, and in particular to a method and device for deterministic scheduling of a time-sensitive network. Background Art

[0002] Deterministic service is a network service with the characteristics of bounded latency, low latency variation and low packet loss rate. Time Sensitive Networking (TSN) is an effective technology to support deterministic services. Specifically, the gate control list (GCL) of the queue of each node (i.e., TSN node) in TSN is determined by time-aware scheduling (TAS), that is, the gate state of the queue transmission gate of each node, and the corresponding state duration of each gate state, so as to control the opening and closing of the queue transmission gate according to the determined gate control list, thereby ensuring that the target data stream corresponding to the deterministic service can be transmitted with bounded latency.

[0003] Deterministic services can include in-time services and on-time services. Among them, the delay requirement of in-time services is a bounded delay requirement, that is, the upper limit requirement of the delay; the on-time service requires that the delay of completing the transmission is within the time window, that is, the upper and lower limits of the delay for completing the transmission of the data stream are specified. When the sending time is known, the time window requirement of the on-time service can be converted into the upper and lower limits of the delay.

[0004] At present, the time-aware scheduling method of time-sensitive networks in related technologies only considers the upper limit of the delay requirement of timely service delay, and the delay range is wide. As a result, the gate state of the queue transmission gate of each node and the corresponding state duration of each gate state determined based on the upper limit of the delay requirement of timely service delay cannot meet the lower limit of the delay requirement of just-in-time service, thereby affecting the end-to-end transmission process of the data stream, and cannot guarantee the determinism of the delay of the end-to-end transmission of the data stream, nor can it guarantee the TSN's support capability for just-in-time service. Summary of the invention

[0005] The purpose of the embodiments of the present invention is to provide a method and device for deterministic scheduling of a time-sensitive network to ensure the determinism of the end-to-end delay of a data stream and enhance the TSN's support for deterministic services. The specific technical solution is as follows:

[0006] The present application provides a method for deterministic scheduling of a time-sensitive network, the method comprising:

[0007] Acquire a target data stream set, wherein the target data stream set includes at least one target data stream;

[0008] For each target data flow, obtain the upper bound and lower bound requirements of the end-to-end transmission delay of the target data flow in the time-sensitive network;

[0009] Obtaining a minimum delay for end-to-end transmission of the target data stream in the time-sensitive network;

[0010] For each data stream to be transmitted in the target data stream set, based on the upper delay limit requirement and the lower delay limit requirement of the data stream to be transmitted, the cache delay interval of the data stream to be transmitted during end-to-end transmission in the time-sensitive network is calculated; wherein the minimum delay of the data stream to be transmitted is not greater than the upper delay limit requirement of the data stream to be transmitted;

[0011] Based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state.

[0012] Optionally, the step of calculating, for each data flow to be transmitted in the target data flow set, a cache delay interval of the data flow to be transmitted during end-to-end transmission in the time-sensitive network based on the upper delay limit requirement and the lower delay limit requirement of the data flow to be transmitted, includes:

[0013] For each data stream to be transmitted in the target data stream set, if the minimum delay of the data stream to be transmitted is less than the delay lower limit requirement of the data stream to be transmitted, the first difference is used as the left endpoint of the cache delay interval of the data stream to be transmitted when it is transmitted end-to-end in the time-sensitive network, and the sum of the first difference and the second difference is determined as the right endpoint of the cache delay interval of the data stream to be transmitted when it is transmitted end-to-end in the time-sensitive network;

[0014] If the minimum delay of the data stream to be transmitted is not less than the delay lower limit requirement of the data stream to be transmitted, then determine that the left endpoint of the cache delay interval of the data stream to be transmitted in the time-sensitive network when end-to-end is 0, and determine the third difference as the right endpoint of the cache delay interval of the data stream to be transmitted when end-to-end is transmitted in the network;

[0015] Among them, the first difference is the difference between the lower limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted, the second difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the lower limit requirement of the delay of the data stream to be transmitted, and the third difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted.

[0016] Optionally, the step of determining the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network and the state duration corresponding to each gate state based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in the time-sensitive network using a preset time-aware scheduling algorithm includes:

[0017] According to the delay function of each data flow to be transmitted and the cache delay interval of each data flow to be transmitted when end-to-end transmitted in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network under preset constraints, as well as the state duration corresponding to each gate state, wherein the preset constraints are generated based on the opening time of the queue transmission gate on the physical queue of each node in the time-sensitive network, the opening time of the queue transmission gate on each physical queue of the same node, the flow isolation between each data flow to be transmitted in the same physical queue, the cycle period of the gating list, and the upper and lower bound requirements of the delay of each data to be transmitted.

[0018] Optionally, the preset constraint condition includes a first constraint condition, a second constraint condition and a third constraint condition;

[0019] The first constraint is expressed as:

[0020]

[0021] in, is a universal quantifier, F is the set of data streams to be transmitted, path k is the data stream to be transmitted f k The path, v i For path k Nodes on vol k is the data stream to be transmitted f k The flow rate, vol k =max{l k ,gb k ,gc i}, max is the maximum value operation, l k is the data stream to be transmitted f k Stream length, gb k is the data stream to be transmitted f k Guaranteed bandwidth of the transmission link, gc i For node v i The cycle period of the gated list, For node v i The physical queue q m The corresponding link bandwidth, For node v i The physical queue qm Upload the data stream to be transmitted f k The corresponding queue transmission gate opening time;

[0022] The second constraint is expressed as:

[0023]

[0024]

[0025]

[0026] Among them, v i For path k The nodes on Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i+1 Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , For node v i+1 The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, is the data stream to be transmitted f k At node v i To node v i+1 The propagation delay on the physical link between is the data stream to be transmitted f k At node v i+1 The forwarding delay experienced by forwarding through network nodes, is the data stream to be transmitted f k At node v i+1 The left endpoint of the cache delay interval at , U is the union operation, is the data stream to be transmitted f k At node v i+1 The right endpoint of the buffer delay interval at ;

[0027] The third constraint is expressed as:

[0028]

[0029]

[0030]

[0031] Among them, path k is the data stream to be transmitted f k path j is the data stream to be transmitted f j The path, ∩ is the intersection operation, v i For path k and path j At the intersection nodes on the path, Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i Data stream to be transmitted j The physical queue to which the mapping is stored is the physical queue q m ′, gc i For node v i The cycle period of the gated list in the middle, p k is the data stream to be transmitted f k The period, p j is the data stream to be transmitted f j The period, α is the data flow to be transmitted f k The cycle number parameter indicates the data stream to be transmitted f k The (α+1)th cycle, β is the data stream to be transmitted f j The cycle number parameter indicates the data stream to be transmitted f j The (β+1)th period of For node v i The physical queue q m Upstream data stream f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, ∪ is the union operation, For node vi The physical queue q m Upstream data stream f k The length of time the queue transmission gate is open.

[0032] Optionally, the preset time-aware scheduling algorithm is a scheduling algorithm based on a Satisfiability Modulo Theories (SMT) solver;

[0033] The step of determining, according to the delay function of each data stream to be transmitted and the buffer delay interval of each data stream to be transmitted when end-to-end transmitted in the time-sensitive network, the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network under preset constraints and the state duration corresponding to each gate state by using a preset time-aware scheduling algorithm includes:

[0034] For each data stream to be transmitted, obtaining a queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network;

[0035] According to the cache delay interval of the data flow to be transmitted and the queue cache space of each node when the data flow to be transmitted is transmitted end-to-end in the time-sensitive network, according to the preset cache delay allocation strategy, determine the target node where the data flow to be transmitted is stored when waiting for transmission in the time-sensitive network;

[0036] According to the delay function of each data stream to be transmitted and the target node where each data stream to be transmitted is stored when waiting for transmission in the time-sensitive network, a scheduling algorithm based on the SMT solver is used to calculate the distribution value of the cache delay of each node in the time-sensitive network under preset constraints;

[0037] According to the allocated value of the buffer delay of each node in the time-sensitive network, the gate state of the queue transmission gate in the gate control list of each node and the state duration corresponding to each gate state are generated.

[0038] Optionally, the step of obtaining, for each data stream to be transmitted, a queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network includes:

[0039] For each data stream to be transmitted, the queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network is obtained by means of network testing.

[0040] Optionally, the step of obtaining the minimum delay of end-to-end transmission of the target data stream in the time-sensitive network includes:

[0041] By means of network testing, the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network is obtained.

[0042] The embodiment of the present application also provides a time-sensitive network deterministic scheduling device, the device comprising:

[0043] A first acquisition module, configured to acquire a target data stream set, wherein the target data stream set includes at least one target data stream;

[0044] A second acquisition module is used to obtain, for each target data stream, an upper bound requirement and a lower bound requirement of the delay of the end-to-end transmission of the target data stream in the time-sensitive network;

[0045] A third acquisition module is used to obtain the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network;

[0046] A calculation module, for calculating, for each data stream to be transmitted in the target data stream set, a cache delay interval of the data stream to be transmitted when the data stream is transmitted end-to-end in the time-sensitive network based on the upper delay requirement and the lower delay requirement of the data stream to be transmitted; wherein the minimum delay of the data stream to be transmitted is not greater than the upper delay requirement of the data stream to be transmitted;

[0047] A determination module is used to determine the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network and the state duration corresponding to each gate state based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in the time-sensitive network, using a preset time-aware scheduling algorithm.

[0048] The embodiment of the present application also provides an electronic device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus;

[0049] Memory, used to store computer programs;

[0050] The processor is used to implement any of the above-mentioned time-sensitive network deterministic scheduling method steps when executing the program stored in the memory.

[0051] A computer-readable storage medium provided in an embodiment of the present application is characterized in that a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, any of the above-mentioned time-sensitive network deterministic scheduling method steps is implemented.

[0052] An embodiment of the present invention further provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute any of the above-mentioned time-sensitive network deterministic scheduling methods.

[0053] Beneficial effects of the embodiments of the present invention:

[0054] The technical solution provided by the embodiment of the present invention, after obtaining the target data flow set, obtains the upper and lower bound requirements of the delay of each target data flow in the target data flow set in the end-to-end transmission of the target data flow in the time-sensitive network, so as to calculate the cache delay interval of the data flow to be transmitted in the time-sensitive network based on the upper and lower bound requirements of the delay for each data flow to be transmitted in the target data flow set, that is, for each target data flow in the target data flow set whose minimum delay is not greater than its upper bound requirement of the delay, and based on the cache delay interval of each data flow to be transmitted in the end-to-end transmission in the time-sensitive network, determine the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network and the state duration corresponding to each gate state by using a preset time-aware scheduling algorithm.

[0055] Compared with the related art, the cache delay interval of each data stream to be transmitted in the time-sensitive network is calculated based on the upper and lower bounds of the delay of each data stream to be transmitted. Therefore, the cache delay interval of each data stream to be transmitted in the time-sensitive network can meet the upper and lower bounds of the delay of each data stream to be transmitted. On this basis, the gate list determined based on the cache delay interval of each data stream to be transmitted in the time-sensitive network, that is, the gate state of the queue transmission gate in the gate list of each node of the time-sensitive network, and the state duration corresponding to each gate state, can effectively ensure that the delay of each data stream to be transmitted in the time-sensitive network meets its corresponding upper and lower bounds, thereby ensuring the support capability of TSN for on-time and timely services. Therefore, through the technical solution provided by the application embodiment, the determinism of the end-to-end delay of the data stream is effectively guaranteed, and the support capability of TSN for deterministic services is enhanced.

[0056] Of course, it is not necessary to achieve all of the advantages described above at the same time to implement any product or method of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0057] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present invention. For ordinary technicians in this field, other embodiments can also be obtained based on these drawings.

[0058] Figure 1 A structural diagram of a TSN node in the related art;

[0059] Figure 2 A schematic diagram of a first flow chart of a time-sensitive network deterministic scheduling method provided in an embodiment of the present application;

[0060] Figure 3 A schematic diagram of a topological structure of a time-sensitive network provided in an embodiment of the present application;

[0061] Figure 4 A second flow chart of a time-sensitive network deterministic scheduling method provided in an embodiment of the present application;

[0062] Figure 5 A third flow chart of the time-sensitive network deterministic scheduling method provided in an embodiment of the present application;

[0063] Figure 6 A fourth flow chart of a time-sensitive network deterministic scheduling method provided in an embodiment of the present application;

[0064] Figure 7-a A first schematic diagram of a CDF curve provided in an embodiment of the present application;

[0065] Figure 7-b A second schematic diagram of a CDF curve provided in an embodiment of the present application;

[0066] Figure 7-c A third schematic diagram of a CDF curve provided in an embodiment of the present application;

[0067] Figure 8 A schematic diagram of a structure of a time-sensitive network deterministic scheduling device provided in an embodiment of the present application;

[0068] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0069] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field based on this application belong to the scope of protection of the present invention.

[0070] In the related art, TSN may include multiple TSN nodes (hereinafter referred to as nodes), where the nodes include terminal nodes and network element nodes. Here, the nodes in TSN are not specifically limited. Figure 1 To explain, Figure 1 A structural diagram of a TSN node in the related technology.

[0071] exist Figure 1 In the nodes shown, each node includes multiple physical queues, such as Figure 1 The physical queues 1 to 4 are shown. Each physical queue has a corresponding queue transmission gate, namely Figure 1 The queue transmission gates S1-S4 are shown.

[0072] When the data stream to be transmitted is transmitted in TSN, each node maps the received data stream to be transmitted and stores it in the physical queue after receiving the data stream to be transmitted, so that when the node controls the queue transmission gate on each physical queue to open according to the gating list, the data stream to be transmitted stored in each physical queue is transmitted to the next node.

[0073] For deterministic services, since each data stream to be transmitted has a corresponding delay requirement, currently when the data stream to be transmitted is transmitted in TSN, the gating list is calculated only according to the delay upper limit requirement corresponding to each data stream to be transmitted, so as to ensure that the end-to-end delay of the data stream to be transmitted in TSN is less than or equal to the delay upper limit requirement corresponding to the data stream to be transmitted. That is, the gating list determined by TAS in the relevant technology can only ensure that the delay of the data stream to be transmitted is less than or equal to the delay upper limit requirement corresponding to the data stream to be transmitted, and it does not necessarily guarantee the delay lower limit requirement corresponding to the on-time service, which seriously affects the accuracy of the gating mechanism for delay control, and further affects the accuracy of data stream transmission based on the gating list.

[0074] In order to solve the problems in the related art, the embodiment of the present application provides a time-sensitive network deterministic scheduling method. The method can be applied to any electronic device, for example, the electronic device can be an electronic device other than each node in TSN, or a centralized configuration entity, and the electronic device is not specifically limited here.

[0075] like Figure 2 As shown, Figure 2 A first flow chart of a method for deterministic scheduling of a time-sensitive network provided in an embodiment of the present application. The method comprises the following steps.

[0076] Step S201: Acquire a target data stream set, where the target data stream set includes at least one target data stream.

[0077] Step S202: for each target data flow, an upper bound requirement and a lower bound requirement of the delay of the target data flow in end-to-end transmission in a time-sensitive network are obtained.

[0078] Step S203: obtaining a minimum delay of end-to-end transmission of the target data stream in the time-sensitive network.

[0079] Step S204, for each data flow to be transmitted in the target data flow set, based on the delay upper limit requirement and the delay lower limit requirement of the data flow to be transmitted, calculate the cache delay interval of the data flow to be transmitted during end-to-end transmission in the time-sensitive network; wherein the minimum delay of the data flow to be transmitted is not greater than the delay upper limit requirement of the data flow to be transmitted.

[0080] Step S205, based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state.

[0081] use Figure 2 The method shown, after obtaining the target data flow set, obtains the upper and lower bound requirements of the delay of the target data flow in the end-to-end transmission in the time-sensitive network for each target data flow in the target data flow set, so as to calculate the cache delay interval of the data flow to be transmitted in the time-sensitive network based on the upper and lower bound requirements of the delay for each data flow to be transmitted in the target data flow set, that is, for each target data flow in the target data flow set whose minimum delay is not greater than its upper bound requirement of the delay, and based on the cache delay interval of each data flow to be transmitted in the time-sensitive network, determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network and the state duration corresponding to each gate state by using a preset time-aware scheduling algorithm.

[0082] Compared with the related art, the cache delay interval of each data stream to be transmitted in the time-sensitive network is calculated based on the upper and lower bounds of the delay of each data stream to be transmitted. Therefore, the cache delay interval of each data stream to be transmitted in the time-sensitive network can meet the upper and lower bounds of the delay of each data stream to be transmitted. On this basis, the gate list determined based on the cache delay interval of each data stream to be transmitted in the time-sensitive network, that is, the gate state of the queue transmission gate in the gate list of each node of the time-sensitive network, and the state duration corresponding to each gate state, can effectively ensure that the delay of each data stream to be transmitted in the time-sensitive network meets its corresponding upper and lower bounds, thereby ensuring the support capability of TSN for on-time and timely services. Therefore, through the technical solution provided by the application embodiment, the determinism of the end-to-end delay of the data stream is effectively guaranteed, and the support capability of TSN for deterministic services is enhanced.

[0083] The embodiments of the present application are described below through specific examples.

[0084] With respect to the above step S201, that is, obtaining a target data stream set, the target data stream set includes at least one target data stream.

[0085] In the embodiment of the present application, the time-sensitive network may include multiple nodes. Figure 3 Take this as an example to illustrate. Figure 3 A schematic diagram of the topological structure of a time-sensitive network provided in an embodiment of the present application.

[0086] exist Figure 3 The time-sensitive network shown includes six nodes, namely node 1 to node 6, each of which can be connected to one or more IO (Input / Output) devices or controllers. Figure 3 The intermediate node 6 is connected to the controller and the IO device 6 .

[0087] exist Figure 3 In the example, each IO device and controller can be used as the sender of the target data stream or as the receiver of the target data stream. Taking IO device 2 as an example, IO device 2 can send the target data stream to IO device 4 through the TSN network. IO device 2 can also receive the target data stream sent by IO device 5.

[0088] Since each node in the TSN network device can be connected to multiple IO devices or controllers, there are multiple target data streams in the network at each moment. The electronic device can obtain the target data streams received by each node in the TSN at the current moment to obtain a target data stream set.

[0089] The target data stream set may include one or more target data streams. Here, the number of target data streams included in the target data stream set is not specifically limited.

[0090] In the embodiment of the present application, the target data stream may be a data stream corresponding to the deterministic service, that is, the target data stream may be a data stream corresponding to the timely service or a data stream corresponding to the punctual service. Here, the target data stream is not specifically limited.

[0091] In the embodiment of the present application, at least one data stream can be represented as a data stream set F, such as the target data stream set mentioned above. Any data stream in the data stream set F can be recorded as data stream f k , f k ∈F. In addition, according to the different service types of the above-mentioned deterministic services, the above-mentioned target data flow set (ie, set F) may include two subsets, namely, a subset IF corresponding to the timely service and a subset OF corresponding to the on-time service.

[0092] The above time-sensitive network can be represented as a directed graph G = (V, E). Where V is the set of all nodes in the time-sensitive network, E is the set of all physical links in the time-sensitive network, and the links in E [v i ,v j ]Connect source node v i and destination node v j . Take node v i For example, node v i The physical queue set corresponding to the output port is Q i , which can be specifically expressed as:

[0093] In an optional embodiment, for each target data stream in the above target data stream set, the target data stream has corresponding five-tuple information, and the five-tuple information includes the source node and the destination node of the target data stream. The electronic device can calculate the transmission path of the target data stream based on the source node and the destination node included in the five-tuple information of each target data stream, and the topological structure of the time-sensitive network. That is, each node that the target data stream passes through when it is transmitted from the source node to the destination node, and the order between each node passed through are calculated.

[0094] For ease of understanding, the above Figure 3 Assume that the source node in the five-tuple information of a target data flow is node 1 and the destination node is node 4. Figure 3 In the topology of the time-sensitive network shown, the electronic device can determine that the transmission path of the target data stream is: node 1-node 2-node 3-node 4.

[0095] In the embodiment of the present application, each target data stream f in the above target data stream set k It can be composed of five-tuple information (src k ,dst k ,p k ,l k ,sr k ) indicates that. Among them, src k The target data stream f k The source node, dst k The target data stream f k The destination node, p k The target data stream f k The cycle, l k The target data stream f k The flow length, sr k For service requirements.

[0096] The above target data flow f k The flow length l k Defined as the target data flow fk In each cycle (i.e. p k ) the size of the flow rate, the l k The unit is byte (Byte, denoted as B).

[0097] In addition, the above services require sr k Each target data flow f is represented by k The corresponding delay requirement. According to the different service types corresponding to each target data flow, the above service requirements sr k There are also some differences.

[0098] For example, when the target data stream f k When the service type is timely service, that is, f k ∈IF, the target data flow f k Service requirements k It can be expressed as [0,ubd k ]. Where 0 is the target data stream f k The delay lower bound requirement in the delay requirement, the above ubd k For the target data flow f k The upper bound requirement on the delay in the delay requirement.

[0099] For another example, when the target data stream f k When the service type is on-time service, that is, f k ∈OF, the target data flow f k Service requirements k It can be expressed as [lbd k ,ubd k ]. Among them, the above lbd k For the target data flow f k The delay lower bound requirement in the delay requirement, the above ubd k For the target data flow f k The upper bound requirement on the delay in the delay requirement.

[0100] The above [0,ubd k ] and [lbd k ,ubd k ] can be respectively expressed as a certain duration, such as 5 minutes. According to the different service types corresponding to each target data flow, the time window of each target data flow is also different. k and ubd k No specific limitation is given.

[0101] When the above sr k For the above [0,ubd k ], indicating the target data stream f kThe transmission time in the above time-sensitive network must be less than or equal to ubd k When the above sr k for [lbd k ,ubd k ], indicating the target data stream f k The transmission time in a time-sensitive network must be greater than or equal to lbd k , and less than or equal to ubd k .

[0102] In an optional embodiment, in order to maintain generality, all parameters in the quintuple information of each target data stream are positive integers.

[0103] In an optional embodiment, each of the above target data streams f k The transmission path in the above time-sensitive network k Can be expressed as: path k ={(src k ,v1),(v1,v2),…,(v i-1 ,v i ),(v i ,dst k )}.

[0104] With respect to the above step S202, that is, with respect to each target data flow, an upper bound requirement and a lower bound requirement of the delay for end-to-end transmission of the target data flow in the time-sensitive network are obtained.

[0105] In this step, for each target data flow in the target data flow set, the target data flow has a corresponding timeliness requirement or punctuality requirement, which is specifically identified as sr in the five-tuple information of the target data flow. k The electronic device can use the sr k , obtain the upper and lower bound requirements of the delay for end-to-end transmission of the target data stream in the time-sensitive network.

[0106] In an optional embodiment, when the target data stream is the data stream corresponding to the timely service, that is, the sr k For the above [0,ubd k ]. At this time, the electronic device can determine that the lower limit requirement of the target data stream is 0, and the upper limit requirement of the target data stream is ubd k .

[0107] In another optional embodiment, when the target data stream is the data stream corresponding to the on-time service, that is, the sr k For the above [lbd k,ubd k ]. At this time, the electronic device can determine that the lower limit requirement of the delay corresponding to the target data stream is lbd k The upper limit of the delay corresponding to the target data flow is ubd k .

[0108] In an embodiment of the present application, based on the topological structure of the above-mentioned time-sensitive network, the transmission path of the target data stream in the time-sensitive network, and the flow length of the target data stream, the upper bound requirement and the lower bound requirement of the delay corresponding to each of the above-mentioned target data streams will be different. Here, the upper bound requirement and the lower bound requirement of the delay of the above-mentioned target data stream are not specifically limited.

[0109] With respect to the above step S203, the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network is obtained.

[0110] In this step, for each target data stream, the electronic device can calculate the delay of the target data stream when it is transmitted in the time-sensitive network without waiting for transmission, and obtain the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network.

[0111] In an optional embodiment, the above step S203, obtaining the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network, can be specifically expressed as:

[0112] Through network testing, the minimum delay of end-to-end transmission of the target data stream in the time-sensitive network is obtained.

[0113] For example, the electronic device can calculate the transmission path of each target data stream based on the topological structure of the above-mentioned time-sensitive network, and thus, for each target data stream, test the delay of the target data stream from the source node to the destination node on the same transmission path through network testing, which serves as the minimum delay for end-to-end transmission of the target data stream in the time-sensitive network.

[0114] In the embodiment of the present application, since the network test is performed for each target data stream in the target data stream set, the target data stream will complete the end-to-end transmission process according to the same transmission path during the test, and no waiting phenomenon occurs in any node during the process. Therefore, the minimum delay of the target data stream in the time-sensitive network can be accurately determined by the network test, effectively ensuring the accuracy of the minimum delay obtained.

[0115] In another optional embodiment, when obtaining the minimum delay of each target data stream, the electronic device can use the delay function of each target data stream to calculate the end-to-end delay of the target data stream when the queuing delay is 0, and obtain the minimum delay of the target data stream. The delay function of the target data stream can refer to the delay function of the data stream to be transmitted below, and no specific description is given here.

[0116] In the embodiment of the present application, the minimum delay of end-to-end transmission of each target data stream in the time-sensitive network is different according to the flow length and transmission path of each target data stream. Here, the minimum delay of each target data stream is not specifically limited.

[0117] In the above embodiment, the above step S202 is performed before step S203. In addition, the above step S203 can also be performed before step S202, or simultaneously with step S202. Here, the execution order of the above step S202 and step S203 is not specifically limited.

[0118] For the above-mentioned step S204, that is, for each data flow to be transmitted in the target data flow set, based on the delay upper limit requirement and the delay lower limit requirement of the data flow to be transmitted, the cache delay interval of the data flow to be transmitted during end-to-end transmission in the time-sensitive network is calculated; wherein the minimum delay of the data flow to be transmitted is not greater than the delay upper limit requirement of the data flow to be transmitted.

[0119] In an embodiment of the present application, after determining the end-to-end minimum delay of each target data stream in the above-mentioned time-sensitive network, the electronic device may compare the minimum delay of the target data stream with the upper limit requirement of the delay of the target data stream for each target data stream. When the minimum delay of the target data stream is not greater than the upper limit requirement of the delay of the target data stream, the electronic device may determine the target data stream as the data stream to be transmitted. All the data streams to be transmitted in the target data stream set together constitute a set of data streams to be transmitted.

[0120] For each data stream to be described in the above target data stream set, the electronic device can calculate the cache delay interval of the data stream to be transmitted when it is transmitted end-to-end in the time-sensitive network according to the upper limit requirement and the lower limit requirement of the delay corresponding to the data stream to be transmitted. The minimum value of the cache delay interval is the minimum queuing delay of the corresponding data stream to be transmitted in the end-to-end transmission process in the time-sensitive network, and the maximum value of the cache delay interval is the maximum queuing delay of the corresponding data stream to be transmitted in the end-to-end transmission process in the time-sensitive network.

[0121] The calculation of the above cache delay interval can be found in the description below and will not be explained in detail here.

[0122] In an optional embodiment, for each target data stream in the above-mentioned target data stream set, when the minimum delay of the target data stream is greater than the upper limit requirement of the delay of the target data stream, the electronic device can determine that the delay of the target data stream when no waiting phenomenon occurs during the end-to-end transmission process in the above-mentioned time-sensitive network is still greater than the upper limit requirement of the delay of the target data stream. At this time, the electronic device can discard the target data stream. In addition, the electronic device can also update the upper limit requirement of the delay of the target data stream. Here, when the minimum delay of the target data stream is greater than the upper limit requirement of the delay of the target data stream, the electronic device does not specifically limit the processing method of the target data stream.

[0123] For the above step S205, that is, based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state.

[0124] In this step, after determining the cache delay interval of each data stream to be transmitted during end-to-end transmission in the above-mentioned time-sensitive network, the electronic device can calculate the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network based on the cache delay interval of each data stream to be transmitted and the state duration corresponding to each gate state by using a preset time-aware algorithm to obtain the gating list of the time-sensitive network.

[0125] Each node in the above-mentioned time-sensitive network may be the above-mentioned terminal node or the above-mentioned network element node. Here, no specific limitation is made to each node in the above-mentioned time-sensitive network.

[0126] In an optional embodiment, after determining the gating list of the above-mentioned time-sensitive network, the electronic device can send the gating list to each node in the time-sensitive network, so that each node can open / close the queue transmission gate on the physical queue of each node according to the gate state in the gating list and the state duration corresponding to the gate state, thereby completing the end-to-end transmission process of the above-mentioned data stream to be transmitted.

[0127] In an optional embodiment, according to the above Figure 2 The method shown in the embodiment of the present application also provides a time-sensitive network deterministic scheduling method. Figure 4 As shown, Figure 4 A second flow chart of a time-sensitive network deterministic scheduling method provided in an embodiment of the present application. Figure 4 In the method shown, the above step S204 is refined into the following steps, namely step S2041-step S2042.

[0128] Step S2041, for each data stream to be transmitted in the target data stream set, if the minimum delay of the data stream to be transmitted is less than the delay lower limit requirement of the data stream to be transmitted, then the first difference is used as the left endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the time-sensitive network, and the sum of the first difference and the second difference is determined as the right endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the time-sensitive network.

[0129] In the embodiment of the present application, for each data stream to be transmitted in the target data stream set, the electronic device may compare the minimum delay of the data stream to be transmitted with the delay lower bound requirement of the data stream to be transmitted.

[0130] For each data stream to be transmitted, when the minimum delay of the data stream to be transmitted is less than the lower limit of the delay of the data stream to be transmitted, that is, the delay of the data stream to be transmitted when there is no waiting phenomenon in the time-sensitive network is less than the lower limit of the delay of the data stream to be transmitted, at this time, the electronic device can determine that the data stream to be transmitted must go through a waiting period when it is transmitted end-to-end in the time-sensitive network, that is, the above-mentioned queuing delay. The value range of the queuing delay is the cache delay interval of the data stream to be transmitted.

[0131] In an embodiment of the present application, when the minimum delay of the data stream to be transmitted is less than the lower limit requirement of the delay of the data stream to be transmitted, the electronic device can respectively calculate the difference between the lower limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted (recorded as the first difference), and the difference between the upper limit requirement of the delay of the data stream to be transmitted and the lower limit requirement of the delay of the data stream to be transmitted (recorded as the second difference). The electronic device can determine the first difference as the left endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the time-sensitive network, and determine the sum of the first difference and the second difference as the right endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the time-sensitive network.

[0132] Step S2042, if the minimum delay of the data stream to be transmitted is not less than the lower limit requirement of the delay of the data stream to be transmitted, then determine that the left endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end in the time-sensitive network is 0, and determine the third difference as the right endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the network.

[0133] In an embodiment of the present application, for each data stream to be transmitted, when the minimum delay of the data stream to be transmitted is not less than the lower limit requirement of the delay of the data stream to be transmitted, the electronic device can determine that the delay of the data stream to be transmitted when there is no waiting phenomenon in the time-sensitive network is greater than or equal to the lower limit requirement of the delay of the data stream to be transmitted. Therefore, when the time-sensitive network transmits the data stream to be transmitted, a waiting phenomenon may occur, that is, a queuing delay is generated; or no waiting phenomenon may occur, that is, no queuing delay is generated or the queuing delay is 0. Among them, the value range of the queuing delay is the cache delay interval of the data stream to be transmitted.

[0134] When the minimum delay of the data stream to be transmitted is not less than the lower limit requirement of the delay of the data stream to be transmitted, the electronic device can calculate the difference between the upper limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted (recorded as the third difference). The electronic device can determine 0 as the left endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end in the time-sensitive network, and determine the third difference as the right endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the network.

[0135] Through the above steps S2041 and S2042, the electronic device can respectively determine the cache delay interval of each data stream to be transmitted in the above set of data streams to be transmitted, effectively ensuring the accuracy of the determined cache delay interval, thereby providing a guarantee for the subsequent calculation of the gating list.

[0136] In an optional embodiment, according to the above Figure 2 The method shown in the embodiment of the present application also provides a time-sensitive network deterministic scheduling method. Figure 5 As shown, Figure 5 A third flow chart of a method for deterministic scheduling of a time-sensitive network provided in an embodiment of the present application. The method comprises the following steps.

[0137] Step S501: Acquire a target data stream set, where the target data stream set includes at least one target data stream.

[0138] Step S502: for each target data flow, an upper bound requirement and a lower bound requirement of the delay of the target data flow in end-to-end transmission in a time-sensitive network are obtained.

[0139] Step S503: obtaining a minimum delay of end-to-end transmission of the target data stream in the time-sensitive network.

[0140] Step S504, for each data flow to be transmitted in the target data flow set, based on the delay upper limit requirement and the delay lower limit requirement of the data flow to be transmitted, calculate the cache delay interval of the data flow to be transmitted during end-to-end transmission in the time-sensitive network; wherein the minimum delay of the data flow to be transmitted is not greater than the delay upper limit requirement of the data flow to be transmitted.

[0141] The above steps S501 to S504 are the same as the above steps S201 to S204.

[0142] Step S505, according to the delay function of each data flow to be transmitted, and the cache delay interval of each data flow to be transmitted when end-to-end transmitted in the time-sensitive network, using a preset time-aware scheduling algorithm, determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network under preset constraints, and the state duration corresponding to each gate state, wherein the preset constraints are generated based on the opening time of the queue transmission gate on the physical queue of each node in the time-sensitive network, the opening time of the queue transmission gate on each physical queue of the same node, the flow isolation between each data flow to be transmitted in the same physical queue, the cycle period of the gating list, and the delay upper bound requirement and the delay lower bound requirement of each data to be transmitted.

[0143] In an optional embodiment, the delay function of each of the above-mentioned data streams to be transmitted can be expressed as:

[0144] ct k =st k +ed k

[0145] Among them, ct k is the data stream to be transmitted f k Time to complete the transfer, st k is the data stream to be transmitted f k The time from the source node to start transmission, ed k is the data stream to be transmitted f k Along the transmission path k The end-to-end delay of the transmission.

[0146] In an optional embodiment, the data stream to be transmitted is k Along the transmission path k The end-to-end delay of transmission, ed k It can be expressed as:

[0147]

[0148] Among them, v i-1 is the data stream to be transmitted f k The transmission path kNode v on i-1 , v i is the data stream to be transmitted f k The transmission path k Node v on i ,[v i-1 ,v i ] indicates that the slave node v i-1 Transmit to node v i , is the data stream to be transmitted f k In the source node src k The serialization delay at From the source node src k and the propagation delay to node v1, For slave node v last Transmit to the destination node dst k The propagation delay, V k ′ is the transmission path k The set of all nodes except the source node and the destination node, is the data stream to be transmitted f k From Node v i-1 Transmit to node v i The propagation delay is the data stream to be transmitted f k At node v i The serialization delay at For node v i Treat the transmission data stream f k The forwarding delay, is the data stream to be transmitted f k At node v i The queue delay on .

[0149] In the embodiment of the present application, the above ed k is based on the data stream to be transmitted f k The propagation delay, forwarding delay, serialization delay and queuing delay between each two nodes on the corresponding transmission path are calculated. That is, the data flow to be transmitted f k The delay function corresponding to the end-to-end delay of the transmission process from the source node to the target node.

[0150] The above propagation delay (i.e. ) is represented as the data stream to be transmitted f k At node v i-1 To node v i The time it takes to propagate on the physical link between ) is the data stream to be transmitted f kThe time it takes to perform serialization and deserialization on the corresponding node. ) is represented as the data stream to be transmitted f k At node v i The forwarding time experienced by the time-sensitive network. ) is represented as the data stream to be transmitted f k At node v i The queuing time when waiting to be transmitted to the next node.

[0151] For ease of understanding, the above data stream to be transmitted f k In its corresponding transmission path path k On the node v i-1 Transmit to node v i Take this as an example to illustrate.

[0152] Data stream to be transmitted f k On the slave node v i-1 Transmit to node v i When, at node v i-1 At, treat the transmission data stream f k Serialization is performed, which will generate serialization delay, denoted as After serialization, through node v i-1 With node v i The physical link between the serialized data streams to be transmitted k Propagate to node v i , this process will produce a propagation delay, recorded as At node v i At the node v i-1 The serialized data stream to be transmitted f k At this time, the received data stream to be transmitted is serialized, and this process will produce a serialization delay, which is recorded as After serialization, the data stream to be transmitted is k The mapped storage physical queue is waiting to be transmitted to the next node through the queue transmission gate on the physical queue. In this process, due to the data flow to be transmitted f k There may be other data streams waiting to be transmitted in the physical queue mapped to it, so this process will generate a queuing delay, which is recorded as Node v i When forwarding the data stream to be transmitted, a forwarding delay will be generated, which is recorded as

[0153] In the embodiment of the present application, the above ct k and ed kEach data stream in the corresponding calculation formula may be each data stream to be transmitted in the above-mentioned set of data streams to be transmitted.

[0154] In the embodiment of the present application, according to different categories of the data streams to be transmitted, the physical queues to which each data stream to be transmitted is mapped in each node of the time-sensitive network are also different.

[0155] For ease of understanding, the above Figure 1 Take this as an example for explanation. Now assume that physical queue 1 is used to store time synchronization data streams, physical queue 2 and physical queue 3 are used to store audio or video data streams, and physical queue 4 is used to store alarm data streams. Figure 1 After receiving the data stream to be transmitted, the node shown in FIG. 1 maps and stores each data stream to be transmitted to the corresponding physical queue according to the category of each data stream to be transmitted. For example, when the data stream to be transmitted is a video data stream, the data stream to be transmitted will be mapped and stored to Figure 1 In physical queue 2 or physical queue 3 shown.

[0156] In an optional embodiment, the above-mentioned preset constraint conditions may include a first constraint condition C1, a second constraint condition C2 and a third constraint condition C3.

[0157] In an optional embodiment, the first constraint condition C1 (i.e., the open window constraint) can be determined based on the open time of the queue transmission gate on the physical queue of each node in the time-sensitive network. The first constraint condition C1 can be expressed as:

[0158]

[0159] in, is a universal quantifier, F is the set of data streams to be transmitted, path k is the data stream to be transmitted f k The path, v i For path k Nodes on vol k is the data stream to be transmitted f k The flow rate, vol k =max{l k ,gb k ,gc i}, max is the maximum value operation, l k is the data stream to be transmitted f k Stream length, gb k is the data stream to be transmitted f k Guaranteed bandwidth of the transmission link, gc i For node v i The cycle period of the gated list, For node v i The physical queue q m The corresponding link bandwidth, For node v i The physical queue q m Upload the data stream to be transmitted f k The corresponding queue transmission gate open time.

[0160] The flow rate of each data stream to be transmitted is determined according to the flow length of the data stream to be transmitted, the guaranteed bandwidth of the transmission link, and the cycle of the gating list of the queue transmission gate corresponding to each node in the transmission path. Specifically expressed as: vol k =max{l k ,gb k ,gc i}.

[0161] In an optional embodiment, according to different actual application scenarios, the guaranteed bandwidth (i.e., gb k ) to set. For example, the above gb k The bandwidth value can be preset. k = 0, it means that the guaranteed bandwidth of the transmission link is not set at this time. k The size is not specifically limited.

[0162] In the embodiment of the present application, if a data stream to be transmitted cannot be completely transmitted during an open period of the queue transmission gate on the physical queue where it is stored, the data stream to be transmitted will wait until the next opening of the queue transmission gate, or even the next cycle of the queue transmission gate, thereby causing an interruption in the transmission process of the data stream to be transmitted, which will cause the delay of the data stream to be transmitted to jitter. Therefore, through the restriction of the above-mentioned first constraint condition, it can be ensured that each data stream to be transmitted can be completely transmitted during an open period of the queue transmission gate on the stored physical queue, thereby reducing the impact of the incomplete transmission of the data stream to be transmitted during an open period of the queue transmission gate on the delay, avoiding the occurrence of transmission interruption of the data stream to be transmitted, which effectively reduces the delay jitter, thereby improving the accuracy of the end-to-end transmission delay.

[0163] In an optional embodiment, the second constraint condition C2 (i.e., the constraint on the opening time of the queue transmission gate on the physical queue) can be determined according to the opening time of the queue transmission gate on each physical queue of the same node. The second constraint condition C2 can be expressed as:

[0164]

[0165]

[0166]

[0167] Among them, v i For path k The nodes on Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i+1 Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , For node v i+1 The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, is the data stream to be transmitted f k At node v i To node v i+1 The propagation delay on the physical link between is the data stream to be transmitted f k At node v i+1 The forwarding delay experienced by forwarding through network nodes, is the data stream to be transmitted f k At node v i+1 The left endpoint of the cache delay interval at , U is the union operation, is the data stream to be transmitted f k At node v i+1 The right endpoint of the buffer delay interval at .

[0168] In an embodiment of the present application, the above-mentioned second constraint condition can ensure that the queue transmission gate is not opened before the queuing delay of the data flow to be transmitted when it is cached in the physical queue reaches the lower limit of the cache delay interval of the data flow, and is opened before the queuing delay of the data flow to be transmitted when it is cached in the physical queue increases to the upper limit of the cache delay interval, so as to ensure that the queuing delay of the data flow to be transmitted in the time-sensitive network is within the cache delay interval. While ensuring that each data flow to be transmitted is transmitted normally in the time-sensitive network, it effectively ensures that the end-to-end transmission delay of each data flow to be transmitted meets the delay requirement of the data flow to be transmitted.

[0169] In an optional embodiment, the third constraint condition C3 (i.e., the constraint between physical queues) can be determined based on the flow isolation between the data flows to be transmitted in the same physical queue. The third constraint condition C3 can be expressed as:

[0170]

[0171]

[0172]

[0173] Among them, path k is the data stream to be transmitted f k path j is the data stream to be transmitted f j The path, ∩ is the intersection operation, v i For path k and path j At the intersection nodes on the path, Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i Data stream to be transmitted j The physical queue to which the mapping is stored is the physical queue q m′ , gc i For node v i The cycle period of the gated list in the middle, p k is the data stream to be transmitted f k The period, p j is the data stream to be transmitted f j The period, α is the data flow to be transmitted f k The cycle number parameter indicates the data stream to be transmitted f k The (α+1)th cycle, β is the data stream to be transmitted f j The cycle number parameter indicates the data stream to be transmitted f jThe (β+1)th period of For node v i The physical queue q m Upstream data stream f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, ∪ is the union operation, For node v i The physical queue q m Upstream data stream f k The length of time the queue transmission gate is open.

[0174] In an optional embodiment, the cycle period of the above-mentioned gating list (ie, gc i ) can be all data flow cycles (i.e. p k ) is the least common multiple of .

[0175] In the embodiment of the present application, in order to avoid interference between target data streams in different physical queues in the same node during transmission, queue transmission gates on multiple physical queues in each node are not allowed to overlap in time domain during the open time, that is, there is only one queue transmission gate opened each time in each node, and there is only one data to be transmitted transmitted through the queue transmission gate, thereby achieving flow isolation between multiple target data streams in different physical queues. Therefore, the third constraint condition can ensure that the queue transmission gates on multiple physical queues of the same node will not overlap in time domain during the open period, avoid conflicts generated during the transmission of multiple data streams to be transmitted, effectively ensure the flow isolation of data streams to be transmitted in different physical queues during transmission, ensure the orderliness of target data stream transmission in different physical queues of the same node, and improve the accuracy of the gated list calculated later.

[0176] In the embodiment of the present application, the data streams in the formulas corresponding to the first constraint condition, the second constraint condition and the third constraint condition are the data streams to be transmitted in the set of data streams to be transmitted.

[0177] In an optional embodiment, when the above-mentioned preset time-aware scheduling algorithm is a scheduling algorithm based on an SMT solver, according to Figure 5 The method shown in the embodiment of the present application also provides a time-sensitive network deterministic scheduling method. Figure 6 As shown, Figure 6A fourth flow chart of a time-sensitive network deterministic scheduling method provided in an embodiment of the present application. Figure 6 In the method shown, the above step S505 is refined into the following steps, namely step S5051 to step S5054.

[0178] Step S5051: for each data stream to be transmitted, obtain the queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network.

[0179] In an optional embodiment, the above step S5051, for each data stream to be transmitted, obtains the queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network, which can be specifically expressed as:

[0180] For each data stream to be transmitted, the available cache space of the queue of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network is determined by network testing; based on the available cache space of the queue of each node, the cache space of the queue of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network is obtained.

[0181] In this step, for each data stream to be transmitted, the electronic device can determine the available queue cache space corresponding to each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network by means of network testing. The available queue cache space corresponding to each node can be expressed as: the remaining queue cache space of the node when the data stream to be transmitted is transmitted to the node. For each node, when the available queue cache space of the node is greater than or equal to the data volume of the data stream to be transmitted, the electronic device can directly obtain the queue cache space corresponding to the data stream to be transmitted from the queue cache space of the node, and obtain the queue cache space of the node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network.

[0182] In an optional embodiment, for each node, when the available cache space of the queue of the node is less than the data volume of the data stream to be transmitted, the electronic device can obtain the queue cache space of the node when the data stream to be transmitted is end-to-end transmitted in the time-sensitive network when the available cache space of the queue of the node is greater than or equal to the data volume of the data stream to be transmitted. That is, when the data stream cached in the node is transmitted to the next node, and the available cache space of the queue at the current moment is greater than or equal to the data volume of the data stream to be transmitted, the queue cache space of the node when the data stream to be transmitted is end-to-end transmitted in the time-sensitive network is obtained.

[0183] The process of obtaining the queue buffer space through the network test can refer to the process of obtaining the minimum delay through the network test, which is not described in detail here.

[0184] Step S5052, according to the cache delay interval of the data stream to be transmitted, and the queue cache space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network, according to the preset cache delay allocation strategy, determine the target node where the data stream to be transmitted is stored when waiting for transmission in the time-sensitive network.

[0185] For each data stream to be transmitted, the target node stored when the data stream to be transmitted is waiting for transmission in the time-sensitive network can be any one or more nodes in the transmission path corresponding to the data stream to be transmitted. The above-mentioned target nodes and the number of target nodes are not specifically limited here.

[0186] In the embodiment of the present application, the above-mentioned preset cache delay allocation strategy can be set according to specific application scenarios and user needs, etc. For example, the preset cache delay allocation strategy can be to determine the node with the largest queue cache space on the transmission path corresponding to the data stream to be transmitted as the target node, etc. Here, the above-mentioned preset cache delay allocation strategy is not specifically limited.

[0187] In an optional embodiment, when determining the target node, for each data stream to be transmitted, if the queue cache space of the source node or the destination node in the transmission path corresponding to the data stream to be transmitted is greater than the flow length of the data stream to be transmitted, the electronic device can determine the source node or the destination node as the target node stored when the data stream to be transmitted is waiting for transmission in the time-sensitive network.

[0188] In an embodiment of the present application, considering that when a data stream waits at nodes other than the source node and the destination node in a time-sensitive network, it may affect the subsequent transmission of other data streams, therefore, in order to reduce the difficulty and complexity of determining the gating list of the time-sensitive network, by determining the source node and the destination node on the transmission path of the data stream to be transmitted as the target node, the impact of determining other nodes on the transmission path as the target node can be effectively reduced.

[0189] Step S5053, according to the delay function of each data stream to be transmitted, and the target node stored when each data stream to be transmitted is waiting for transmission in the time-sensitive network, the scheduling algorithm based on the SMT solver is used to calculate the distribution value of the cache delay of each node in the time-sensitive network under preset constraints.

[0190] In this step, the electronic device can convert the node cache delay distribution form into a satisfiability problem under the first-order linear theory according to the delay function of each data stream to be transmitted and the target node where each data stream to be transmitted is stored when waiting for transmission in the time-sensitive network, and use the SMT solver to solve the cache delay of each node in the time-sensitive network under the preset constraints to obtain the distribution value of the cache delay of each node in the time-sensitive network. The calculation process of the SMT solver can refer to the calculation process in the relevant technology, which will not be described in detail here.

[0191] In an optional embodiment, the electronic device may use the following formula to calculate the distribution value of the cache delay of each node in the time-sensitive network under the preset constraint condition:

[0192] min(sum{ct k |f k ∈F})

[0193]

[0194]

[0195]

[0196]

[0197]

[0198]

[0199]

[0200] Among them, min is the minimum operation, sum is the sum operation, and st represents the constraint condition.

[0201] Step S5054: Generate the gate state of the queue transmission gate in the gate control list of each node and the state duration corresponding to each gate state according to the allocated value of the buffer delay of each node in the time-sensitive network.

[0202] In an optional embodiment, the electronic device can determine whether the queue transmission gate in each node's gating list is in an open state or a closed state, as well as the length of time the queue transmission gate is in an open state (i.e., state duration) and the length of time the queue transmission gate is in a closed state based on the allocated value of the cache delay of each node in the time-sensitive network.

[0203] Through the above steps S5051 to S5054, the electronic device can accurately determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state, thereby ensuring the determinism of the data flow delay, enhancing the TSN's support capabilities for deterministic services, and improving the orderliness of data flow transmission based on gate status and state duration.

[0204] In the embodiment of the present application, the above-mentioned preset time-aware scheduling algorithm can be a scheduling algorithm based on the optimization modulus theory (OMT), a scheduling algorithm based on the integer linear programming (ILP) solver, or a scheduling algorithm based on a heuristic algorithm in addition to the above-mentioned scheduling algorithm based on the SMT solver. Here, the above-mentioned preset time-aware scheduling algorithm is not specifically limited.

[0205] Through the method provided in the embodiment of the present application, the determinism of the end-to-end delay of the data stream is effectively guaranteed, and the TSN's support capability for deterministic services is enhanced.

[0206] For example, in the above-mentioned time-sensitive network, the bandwidth is set to 1 Gbps. Now assume that the number of flows that need to be scheduled in the time-sensitive network is 50, the flow period is 1000 microseconds (microsecond, us), and the flow length is set to 64 bytes, 256 bytes, and 1518 bytes respectively. Under different upper and lower bounds of delay requirements and different flow lengths, the cumulative distribution function (CDF) curve of the end-to-end time obtained by statistics is as follows: Figure 7-a , Figure 7-b and Figure 7-c shown.

[0207] Figure 7-a In the first schematic diagram of the CDF curve provided in the embodiment of the present application, the upper limit of the delay is required to be 1000us, and the lower limit of the delay is required to be 0. Figure 7-b In the second schematic diagram of the CDF curve provided in the embodiment of the present application, the upper limit of the delay is required to be 1000us, and the lower limit of the delay is required to be 500us. Figure 7-c The third schematic diagram of the CDF curve provided in the embodiment of the present application has an upper limit requirement of 1000us and a lower limit requirement of 900us.

[0208] exist Figure 7-a , Figure 7-b and Figure 7-cIn the figure, curve 701, curve 704 and curve 707 are CDF curves corresponding to a data stream with a stream length of 64 bytes, curve 702, curve 705 and curve 708 are CDF curves corresponding to a data stream with a stream length of 256 bytes, and curve 703, curve 706 and curve 709 are CDF curves corresponding to a data stream with a stream length of 1518 bytes.

[0209] exist Figure 7-a , Figure 7-b and Figure 7-c In the figure, the end-to-end delay of each data stream is compared with the end-to-end delay of each curve. The end-to-end delay of each data stream meets the corresponding upper and lower bounds of the delay. Figure 7-b Take curve 704-curve 706 as an example. The minimum delay corresponding to curve 704-curve 706 is 500us (i.e., the minimum delay corresponding to curve 704-curve 706), and the maximum delay is 1000us (i.e., the maximum delay corresponding to curve 706), which meets the lower limit requirement of 500us and the upper limit requirement of 1000us. Therefore, the delay of the end-to-end transmission process of the data stream corresponding to curve 701-curve 709 meets the corresponding upper and lower limits of the delay, effectively ensuring the determinism of the end-to-end delay of the data stream and enhancing TSN's support for deterministic services.

[0210] Based on the same inventive concept, according to the time-sensitive network deterministic scheduling method provided by the above-mentioned embodiment of the present application, the embodiment of the present application also provides a time-sensitive network deterministic scheduling device. Figure 8 As shown, Figure 8 A schematic diagram of a structure of a time-sensitive network deterministic scheduling device provided in an embodiment of the present application. The device includes the following modules.

[0211] The first acquisition module 801 is used to acquire a target data stream set, where the target data stream set includes at least one target data stream.

[0212] A second acquisition module 802 is used to acquire, for each target data stream, an upper bound requirement and a lower bound requirement of the end-to-end transmission of the target data stream in the time-sensitive network;

[0213] The third acquisition module 803 is used to obtain the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network;

[0214] The calculation module 804 is used to calculate the cache delay interval of each data flow to be transmitted in the target data flow set during end-to-end transmission of the data flow to be transmitted in the time-sensitive network based on the upper delay limit requirement and the lower delay limit requirement of the data flow to be transmitted; wherein the minimum delay of the data flow to be transmitted is not greater than the upper delay limit requirement of the data flow to be transmitted;

[0215] The determination module 805 is used to determine the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network and the state duration corresponding to each gate state based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in the time-sensitive network, using a preset time-aware scheduling algorithm.

[0216] Optionally, the calculation module 804 may include:

[0217] A first determination submodule is used for, for each data stream to be transmitted in the target data stream set, if the minimum delay of the data stream to be transmitted is less than the delay lower limit requirement of the data stream to be transmitted, using the first difference as the left endpoint of the cache delay interval of the data stream to be transmitted when end-to-end transmission in the time-sensitive network, and determining the sum of the first difference and the second difference as the right endpoint of the cache delay interval of the data stream to be transmitted when end-to-end transmission in the time-sensitive network;

[0218] The second determination submodule is used to determine that the left endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end in the time-sensitive network is 0 if the minimum delay of the data stream to be transmitted is not less than the delay lower limit requirement of the data stream to be transmitted, and determine the third difference as the right endpoint of the cache delay interval of the data stream to be transmitted when it is end-to-end transmitted in the network;

[0219] Among them, the first difference is the difference between the lower limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted, the second difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the lower limit requirement of the delay of the data stream to be transmitted, and the third difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted.

[0220] Optionally, the above-mentioned determination module 805 can be specifically used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network under preset constraints, and the state duration corresponding to each gate state, based on the delay function of each data flow to be transmitted and the cache delay interval of each data flow to be transmitted during end-to-end transmission in the time-sensitive network, using a preset time-aware scheduling algorithm, wherein the preset constraints are generated based on the opening time of the queue transmission gate on the physical queue of each node in the time-sensitive network, the opening time of the queue transmission gate on each physical queue of the same node, the flow isolation between each data flow to be transmitted in the same physical queue, the cycle period of the gating list, and the upper and lower bound requirements of the delay for each data to be transmitted.

[0221] Optionally, the above-mentioned preset constraint conditions may include a first constraint condition, a second constraint condition and a third constraint condition;

[0222] The first constraint condition is expressed as:

[0223]

[0224] in, is a universal quantifier, F is the set of data streams to be transmitted, path k is the data stream to be transmitted f k The path, v i For path k Nodes on vol k is the data stream to be transmitted f k The flow rate, vol k =nax{l k ,gb k ,gc i}, max is the maximum value operation, l k is the data stream to be transmitted f k Stream length, gb k is the data stream to be transmitted f k Guaranteed bandwidth of the transmission link, gc i For node v i The cycle period of the gated list, For node v i The physical queue q m The corresponding link bandwidth, For node v i The physical queue q m Upload the data stream to be transmitted f k The corresponding queue transmission gate opening time;

[0225] The second constraint condition is expressed as:

[0226]

[0227]

[0228]

[0229] Among them, v i For path k The nodes on Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i+1 Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , For node v i+1 The physical queue qm Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, is the data stream to be transmitted f k At node v i To node v i+1 The propagation delay on the physical link between is the data stream to be transmitted f k At node v i+1 The forwarding delay experienced by forwarding through network nodes, is the data stream to be transmitted f k At node v i+1 The left endpoint of the cache delay interval at , U is the union operation, is the data stream to be transmitted f k At node v i+1 The right endpoint of the buffer delay interval at ;

[0230] The third constraint condition is expressed as:

[0231]

[0232]

[0233]

[0234] Among them, path k is the data stream to be transmitted f k path j is the data stream to be transmitted f j The path, ∩ is the intersection operation, v i For path k and path j At the intersection nodes on the path, Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i Data stream to be transmitted j The physical queue to which the mapping is stored is the physical queue q m′, gc i For node v i The cycle period of the gated list in the middle, p k is the data stream to be transmitted f k The period, p j is the data stream to be transmitted f j The period, α is the data flow to be transmitted f k The cycle number parameter indicates the data stream to be transmitted f k The (α+1)th cycle, β is the data stream to be transmitted f j The cycle number parameter indicates the data stream to be transmitted f j The (β+1)th period of For node v i The physical queue q m Upstream data stream f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, ∪ is the union operation, For node v i The physical queue q m Upstream data stream f k The length of time the queue transmission gate is open.

[0235] Optionally, the preset time-aware scheduling algorithm may be a scheduling algorithm based on an SMT solver;

[0236] The above-mentioned determination module 805 can be specifically used to determine, for each data stream to be transmitted, by means of network testing, the queue available buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network; based on the queue available buffer space of each node, obtain the queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network;

[0237] According to the cache delay interval of the data flow to be transmitted and the queue cache space of each node when the data flow to be transmitted is transmitted end-to-end in the time-sensitive network, according to the preset cache delay allocation strategy, determine the target node where the data flow to be transmitted is stored when waiting for transmission in the time-sensitive network;

[0238] According to the delay function of each data stream to be transmitted and the target node where each data stream to be transmitted is stored when waiting for transmission in the time-sensitive network, a scheduling algorithm based on the SMT solver is used to calculate the distribution value of the cache delay of each node in the time-sensitive network under preset constraints;

[0239] According to the allocated value of the buffer delay of each node in the time-sensitive network, the gate state of the queue transmission gate in the gate control list of each node and the state duration corresponding to each gate state are generated.

[0240] Optionally, the determination module 805 may be specifically configured to obtain, for each data stream to be transmitted, by means of network testing, the queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network.

[0241] Optionally, the third acquisition module 803 may be specifically configured to acquire, by means of network testing, a minimum delay of end-to-end transmission of the target data stream in a time-sensitive network.

[0242] By using the device provided in the embodiment of the present application, after obtaining a target data flow set, for each target data flow in the target data flow set, the upper delay requirement and the lower delay requirement of the target data flow in end-to-end transmission in the time-sensitive network are obtained, so that for each data flow to be transmitted in the target data flow set, that is, for each target data flow in the target data flow set whose minimum delay is not greater than its upper delay requirement, based on the upper delay requirement and the lower delay requirement of the data flow to be transmitted, the cache delay interval of the data flow to be transmitted during end-to-end transmission in the time-sensitive network is calculated, and based on the cache delay interval of each data flow to be transmitted in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state.

[0243] Compared with the related art, the cache delay interval of each data stream to be transmitted in the time-sensitive network is calculated based on the upper and lower bounds of the delay of each data stream to be transmitted. Therefore, the cache delay interval of each data stream to be transmitted in the time-sensitive network can meet the upper and lower bounds of the delay of each data stream to be transmitted. On this basis, the gate list determined based on the cache delay interval of each data stream to be transmitted in the time-sensitive network, that is, the gate state of the queue transmission gate in the gate list of each node of the time-sensitive network, and the state duration corresponding to each gate state, can effectively ensure that the delay of each data stream to be transmitted in the time-sensitive network meets its corresponding upper and lower bounds, thereby ensuring the support capability of TSN for on-time and timely services. Therefore, through the technical solution provided by the application embodiment, the determinism of the end-to-end delay of the data stream is effectively guaranteed, and the support capability of TSN for deterministic services is enhanced.

[0244] Based on the same inventive concept, according to the time-sensitive network deterministic scheduling method provided by the above-mentioned embodiment of the present application, the embodiment of the present application also provides an electronic device, such as Fig. 9 As shown, it includes a processor 901, a communication interface 902, a memory 903 and a communication bus 904, wherein the processor 901, the communication interface 902, and the memory 903 communicate with each other through the communication bus 904.

[0245] Memory 903, used for storing computer programs;

[0246] The processor 901 is used to execute the program stored in the memory 903 to implement the following steps:

[0247] Acquire a target data stream set, where the target data stream set includes at least one target data stream;

[0248] For each target data flow, obtain the upper bound and lower bound requirements of the end-to-end transmission delay of the target data flow in the time-sensitive network;

[0249] Obtaining the minimum end-to-end delay of the target data stream in the time-sensitive network;

[0250] For each data stream to be transmitted in the target data stream set, based on the upper and lower bounds of the delay of the data stream to be transmitted, the cache delay interval of the data stream to be transmitted during end-to-end transmission in the time-sensitive network is calculated; wherein the minimum delay of the data stream to be transmitted is not greater than the upper bound of the delay of the data stream to be transmitted;

[0251] Based on the cache delay interval of each data stream to be transmitted during end-to-end transmission in a time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state.

[0252] By using the electronic device provided by the embodiment of the present application, after obtaining a target data stream set, for each target data stream in the target data stream set, an upper delay requirement and a lower delay requirement of the target data stream in end-to-end transmission in a time-sensitive network are obtained, so that for each data stream to be transmitted in the target data stream set, that is, for each target data stream in the target data stream set whose minimum delay is not greater than its upper delay requirement, based on the upper delay requirement and the lower delay requirement of the data stream to be transmitted, a cache delay interval of the data stream to be transmitted during end-to-end transmission in the time-sensitive network is calculated, and based on the cache delay interval of each data stream to be transmitted in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node in the time-sensitive network, as well as the state duration corresponding to each gate state.

[0253] Compared with the related art, the cache delay interval of each data stream to be transmitted in the time-sensitive network is calculated based on the upper and lower bounds of the delay of each data stream to be transmitted. Therefore, the cache delay interval of each data stream to be transmitted in the time-sensitive network can meet the upper and lower bounds of the delay of each data stream to be transmitted. On this basis, the gate list determined based on the cache delay interval of each data stream to be transmitted in the time-sensitive network, that is, the gate state of the queue transmission gate in the gate list of each node of the time-sensitive network, and the state duration corresponding to each gate state, can effectively ensure that the delay of each data stream to be transmitted in the time-sensitive network meets its corresponding upper and lower bounds, thereby ensuring the support capability of TSN for on-time and timely services. Therefore, through the technical solution provided by the application embodiment, the determinism of the end-to-end delay of the data stream is effectively guaranteed, and the support capability of TSN for deterministic services is enhanced.

[0254] The communication bus mentioned in the above electronic device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.

[0255] The communication interface is used for communication between the above electronic device and other devices.

[0256] The memory may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.

[0257] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0258] Based on the same inventive concept, according to the time-sensitive network deterministic scheduling method provided in the above-mentioned embodiments of the present application, the embodiments of the present application also provide a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps of any of the above-mentioned time-sensitive network deterministic scheduling methods are implemented.

[0259] Based on the same inventive concept, according to the time-sensitive network deterministic scheduling method provided in the above-mentioned embodiments of the present application, the embodiments of the present application also provide a computer program product containing instructions, which, when executed on a computer, enables the computer to execute any time-sensitive network deterministic scheduling method in the above-mentioned embodiments.

[0260] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented by software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk (SSD)), etc.

[0261] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0262] Each embodiment in this specification is described in a related manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for embodiments such as devices, electronic devices, computer-readable storage media, and computer program products, since they are basically similar to method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments.

[0263] The above description is only a preferred embodiment of the present invention and is not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention are included in the protection scope of the present invention.

Claims

1. A time-sensitive network deterministic scheduling method, characterized in that: The method comprises: Acquire a target data stream set, wherein the target data stream set includes at least one target data stream; For each target data flow, obtain the upper bound and lower bound requirements of the end-to-end transmission delay of the target data flow in the time-sensitive network; Obtaining a minimum delay for end-to-end transmission of the target data stream in the time-sensitive network; For each data stream to be transmitted in the target data stream set, based on the upper delay limit requirement and the lower delay limit requirement of the data stream to be transmitted, the cache delay interval of the data stream to be transmitted during end-to-end transmission in the time-sensitive network is calculated; wherein the minimum delay of the data stream to be transmitted is not greater than the upper delay limit requirement of the data stream to be transmitted; Based on the buffer delay interval of each data stream to be transmitted when end-to-end transmitted in the time-sensitive network, using a preset time-aware scheduling algorithm, determine the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network, and the state duration corresponding to each gate state; The step of calculating, for each data stream to be transmitted in the target data stream set, a buffer delay interval of the data stream to be transmitted during end-to-end transmission in the time-sensitive network based on the upper delay limit requirement and the lower delay limit requirement of the data stream to be transmitted, comprises: For each data stream to be transmitted in the target data stream set, if the minimum delay of the data stream to be transmitted is less than the delay lower limit requirement of the data stream to be transmitted, the first difference is used as the left endpoint of the cache delay interval of the data stream to be transmitted when it is transmitted end-to-end in the time-sensitive network, and the sum of the first difference and the second difference is determined as the right endpoint of the cache delay interval of the data stream to be transmitted when it is transmitted end-to-end in the time-sensitive network; If the minimum delay of the data stream to be transmitted is not less than the delay lower limit requirement of the data stream to be transmitted, then determine that the left endpoint of the cache delay interval of the data stream to be transmitted in the time-sensitive network when end-to-end is 0, and determine the third difference as the right endpoint of the cache delay interval of the data stream to be transmitted when end-to-end is transmitted in the network; Among them, the first difference is the difference between the lower limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted, the second difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the lower limit requirement of the delay of the data stream to be transmitted, and the third difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted.

2. The method according to claim 1, characterized in that The step of determining the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network and the state duration corresponding to each gate state based on the buffer delay interval of each data stream to be transmitted when end-to-end transmitted in the time-sensitive network using a preset time-aware scheduling algorithm includes: According to the delay function of each data flow to be transmitted and the cache delay interval of each data flow to be transmitted when end-to-end transmitted in the time-sensitive network, a preset time-aware scheduling algorithm is used to determine the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network under preset constraints, as well as the state duration corresponding to each gate state, wherein the preset constraints are generated based on the opening time of the queue transmission gate on the physical queue of each node in the time-sensitive network, the opening time of the queue transmission gate on each physical queue of the same node, the flow isolation between each data flow to be transmitted in the same physical queue, the cycle period of the gating list, and the upper and lower bound requirements of the delay of each data to be transmitted.

3. The method according to claim 2, characterized in that The preset constraint conditions include a first constraint condition, a second constraint condition and a third constraint condition; The first constraint is expressed as: in, is a universal quantifier, F is the set of data streams to be transmitted, path k is the data stream to be transmitted f k The path, v i For path k Nodes on vol k is the data stream to be transmitted f k The flow rate, vol k =max{l k , gb k , gc i }, max is the maximum value operation, l k is the data stream to be transmitted f k Stream length, gb k is the data stream to be transmitted f k Guaranteed bandwidth of the transmission link, gc i For node v i The cycle period of the gated list, For node v i The physical queue q m The corresponding link bandwidth, For node v i The physical queue q m Upload the data stream to be transmitted f k The corresponding queue transmission gate opening time; The second constraint is expressed as: Among them, v i For path k The nodes on Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i+1 Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , For node v i+1 The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q m Upload the data stream to be transmitted f k The opening time of the corresponding queue transmission gate, is the data stream to be transmitted f k At node v i To node v i+1 The propagation delay on the physical link between is the data stream to be transmitted f k At node v i+1 The forwarding delay experienced by forwarding through network nodes, is the data stream to be transmitted f k At node v i+1 The left endpoint of the cache delay interval at , U is the union operation, is the data stream to be transmitted f k At node v i+1 The right endpoint of the buffer delay interval at ; The third constraint is expressed as: Among them, path k is the data stream to be transmitted f k path j is the data stream to be transmitted f j The path, ∩ is the intersection operation, v i For path k and path j At the intersection nodes on the path, Indicates that at node v i Data stream to be transmitted k The physical queue to which the mapping is stored is the physical queue q m , Indicates that at node v i Data stream to be transmitted j The physical queue to which the mapping is stored is the physical queue q m′ , gc i For node v i The cycle period of the gated list in the middle, p k is the data stream to be transmitted f k The period, p j is the data stream to be transmitted f j The period, α is the data flow to be transmitted f k The cycle number parameter indicates the data stream to be transmitted f k The (α+1)th cycle, β is the data stream to be transmitted f j The cycle number parameter indicates the data stream to be transmitted f j The (β+1)th period of For node v i The physical queue q m Upstream data stream f k The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, For node v i The physical queue q′ m Upstream data stream f j The opening time of the corresponding queue transmission gate, ∪ is the union operation, For node v i The physical queue q m Upstream data stream f k The length of time that the queue transmission gate is open.

4. The method according to claim 2 or 3, characterized in that: The preset time-aware scheduling algorithm is a scheduling algorithm based on the satisfiability modulo theory SMT solver; The step of determining, according to the delay function of each data stream to be transmitted and the buffer delay interval of each data stream to be transmitted when end-to-end transmitted in the time-sensitive network, the gate state of the queue transmission gate in the gating list of each node of the time-sensitive network under preset constraints and the state duration corresponding to each gate state by using a preset time-aware scheduling algorithm includes: For each data stream to be transmitted, obtaining a queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network; According to the cache delay interval of the data flow to be transmitted and the queue cache space of each node when the data flow to be transmitted is transmitted end-to-end in the time-sensitive network, according to the preset cache delay allocation strategy, determine the target node where the data flow to be transmitted is stored when waiting for transmission in the time-sensitive network; According to the delay function of each data stream to be transmitted and the target node where each data stream to be transmitted is stored when waiting for transmission in the time-sensitive network, a scheduling algorithm based on an sMT solver is used to calculate the distribution value of the cache delay of each node in the time-sensitive network under preset constraints; According to the allocated value of the buffer delay of each node in the time-sensitive network, the gate state of the queue transmission gate in the gate control list of each node and the state duration corresponding to each gate state are generated.

5. The method according to claim 4, characterized in that The step of obtaining, for each data stream to be transmitted, the queue buffer space of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network, comprises: For each data stream to be transmitted, determining, by means of network testing, the available buffer space of the queues of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network; Based on the available buffer space of the queue of each node, the buffer space of the queue of each node when the data stream to be transmitted is transmitted end-to-end in the time-sensitive network is obtained.

6. The method according to claim 1, characterized in that The step of obtaining the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network includes: By means of network testing, the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network is obtained.

7. A time-sensitive network deterministic scheduling device, characterized in that: The device comprises: A first acquisition module, configured to acquire a target data stream set, wherein the target data stream set includes at least one target data stream; A second acquisition module is used to obtain, for each target data stream, an upper bound requirement and a lower bound requirement of the delay of the end-to-end transmission of the target data stream in the time-sensitive network; A third acquisition module is used to obtain the minimum delay of the end-to-end transmission of the target data stream in the time-sensitive network; A calculation module, for calculating, for each data stream to be transmitted in the target data stream set, a cache delay interval of the data stream to be transmitted when the data stream is transmitted end-to-end in the time-sensitive network based on the upper delay requirement and the lower delay requirement of the data stream to be transmitted; wherein the minimum delay of the data stream to be transmitted is not greater than the upper delay requirement of the data stream to be transmitted; A determination module, configured to determine, based on a cache delay interval of each data stream to be transmitted when end-to-end transmitted in the time-sensitive network, a gate state of a queue transmission gate in a gate control list of each node of the time-sensitive network and a state duration corresponding to each gate state by using a preset time-aware scheduling algorithm; The computing module comprises: A first determination submodule is used for, for each data stream to be transmitted in the target data stream set, if the minimum delay of the data stream to be transmitted is less than the delay lower limit requirement of the data stream to be transmitted, using the first difference as the left endpoint of the cache delay interval of the data stream to be transmitted when end-to-end transmission occurs in the time-sensitive network, and determining the sum of the first difference and the second difference as the right endpoint of the cache delay interval of the data stream to be transmitted when end-to-end transmission occurs in the time-sensitive network; A second determination submodule is used to determine that the left endpoint of the cache delay interval of the data stream to be transmitted in the time-sensitive network when it is end-to-end is 0 if the minimum delay of the data stream to be transmitted is not less than the delay lower limit requirement of the data stream to be transmitted, and determine the third difference as the right endpoint of the cache delay interval of the data stream to be transmitted when it is transmitted end-to-end in the network; Among them, the first difference is the difference between the lower limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted, the second difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the lower limit requirement of the delay of the data stream to be transmitted, and the third difference is the difference between the upper limit requirement of the delay of the data stream to be transmitted and the minimum delay of the data stream to be transmitted.

8. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; Memory, used to store computer programs; A processor, for implementing the method steps described in any one of claims 1 to 6 when executing a program stored in a memory.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method steps described in any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Multi-strategy industrial TSN shaper modeling method based on deterministic network calculation

    CN112733303A

  • Data stream transmission method and device for time-sensitive network

    CN113271264A