WO2023116126A1 - Time-triggered scheduling method, node, electronic device, and storage medium - Google Patents

Time-triggered scheduling method, node, electronic device, and storage medium Download PDF

Info

Publication number
WO2023116126A1
WO2023116126A1 PCT/CN2022/124184 CN2022124184W WO2023116126A1 WO 2023116126 A1 WO2023116126 A1 WO 2023116126A1 CN 2022124184 W CN2022124184 W CN 2022124184W WO 2023116126 A1 WO2023116126 A1 WO 2023116126A1
Authority
WO
WIPO (PCT)
Prior art keywords
service flow
node
directed graph
time
service
Prior art date
Application number
PCT/CN2022/124184
Other languages
French (fr)
Chinese (zh)
Inventor
喻敬海
李宗辉
段威
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2023116126A1 publication Critical patent/WO2023116126A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types

Definitions

  • the present application relates to but not limited to the technical field of communication, and in particular relates to a time-triggered scheduling method, node, electronic device and storage medium.
  • Time-Sensitive Networking was proposed and standardized by IEEE 802.1TSN International Organization. It has been widely supported and recognized by industry, academia and many international organizations (including IEC, IETF, 3GPP, etc.), and it is expected to break the information network. (Information Technology, IT) and control network (Operational Technology, OT) barriers, to achieve the integration of IT and OT, has a wide range of application prospects.
  • TSN introduces a time-triggered transmission mechanism and standardizes it as 802.1Qbv, which supports time-sensitive service flows to be sent at precise time points.
  • Time-triggered scheduling is to schedule the sending time of each service flow in the device. It is related to factors such as network topology, routing, and end-to-end delay requirements of service flows. It is a typical set of non-deterministic polynomials (Non-deterministic Polynomial, NP ) completely problematic.
  • the typical way to solve the time-triggered scheduling problem is to construct constraints such as end-to-end delay, non-conflict between service flows, and cache limitations, and then use a satisfiability solver to solve the problem.
  • this scheduling method can traverse the entire scheduling space to It can be concluded whether it can be scheduled, but the scheduling time increases exponentially, which cannot adapt to the dynamic changes of time-sensitive business or dynamic configuration or application scenarios with strict requirements on scheduling time; Different feasible solutions may appear in each scheduling, and it is impossible to precisely control the sending time of each service flow to obtain high-quality scheduling results.
  • Embodiments of the present application provide a time-triggered scheduling method, a node, an electronic device, and a storage medium.
  • the embodiment of the present application provides a time-triggered scheduling method, which is applied to the central controller, and the method includes: obtaining the characteristics of each service flow in the preset service flow set, the path of the service flow and The characteristics of each preset node on the path of the service flow; a directed graph is constructed according to the path of the service flow, wherein the vertices of the directed graph are formed by two adjacent nodes on the path of the service flow determine the node; determine the urgency of the service flow according to the directed graph, the characteristics of the service flow, and the characteristics of the node; determine the urgency of the service flow according to the directed graph and the urgency of the service flow The sending time of the service flow; sending the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time.
  • the present application also provides a time-triggered scheduling method applied to nodes, the method comprising: receiving the sending time from the central controller, wherein the sending time is determined by the directed graph and the urgency of the service flow It is determined that the directed graph is constructed by the path of the service flow, and the urgency of the service flow is determined by the characteristics of each service flow in the preset service flow set acquired by the central controller, the service flow The path of the flow and the characteristics of each node on the path of the service flow are determined; and the corresponding service flow in the set of service flows is transmitted according to the sending time.
  • the present application also provides a node, including: a memory, a processor, and a computer program stored on the memory and operable on the processor, and the processor implements the second aspect above when executing the computer program The time-triggered scheduling method described above.
  • the present application also provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and operable on the processor, when the processor executes the computer program, the above first The time-triggered scheduling method described in the aspect.
  • the present application also provides a computer-readable storage medium, where the computer-readable storage medium stores a computer-executable program, and the computer-executable program is used to make the computer perform the above-mentioned first aspect.
  • FIG. 1 is a flowchart of a time-triggered scheduling method provided by an embodiment of the present application
  • FIG. 2 is a flow chart of a method for determining the urgency of a service flow provided by another embodiment of the present application
  • FIG. 3 is a flow chart of a method for determining the sending time of a service flow provided by another embodiment of the present application.
  • FIG. 4 is a flow chart of a method for determining the sending time from the total topology sequence provided by another embodiment of the present application.
  • FIG. 5 is a flow chart of a method for determining the sending time from the total topology sequence provided by another embodiment of the present application.
  • FIG. 6 is a flow chart of a method for determining the sending time of a conflicting service flow provided by another embodiment of the present application.
  • Fig. 7 is a schematic diagram of the time delay of each part required for calculating the urgency of the business flow provided by another embodiment of the present application.
  • Fig. 8 is a schematic diagram of a node connection diagram provided by another embodiment of the present application.
  • Fig. 9 is a schematic diagram of a directed graph provided by another embodiment of the present application.
  • Fig. 10 is a schematic diagram of the remaining directed graph provided by another embodiment of the present application.
  • Fig. 11 is a schematic diagram of a dering directed graph provided by another embodiment of the present application.
  • FIG. 12 is a flowchart of another method for determining the sending time of a service flow provided by another embodiment of the present application.
  • FIG. 13 is a flow chart of a method for initialization based on time slots provided by another embodiment of the present application.
  • FIG. 14 is a flowchart of a method for connecting a virtual terminal provided by another embodiment of the present application.
  • FIG. 15 is a schematic diagram of a sending terminal connected to a virtual terminal provided by another embodiment of the present application.
  • FIG. 16 is a flowchart of a time-triggered scheduling method provided by another embodiment of the present application.
  • Fig. 17 is a schematic diagram of implementation in 802.1Qcc provided by another embodiment of the present application.
  • Fig. 18 is a structural diagram of a node provided by another embodiment of the present application.
  • Fig. 19 is a structural diagram of an electronic device provided by another embodiment of the present application.
  • Time-Sensitive Networking was proposed and standardized by IEEE 802.1TSN International Organization. It has been widely supported and recognized by industry, academia and many international organizations (including IEC, IETF, 3GPP, etc.), and it is expected to break the information network. The barriers between IT and control network OT, and the integration of IT and OT, have broad application prospects.
  • TSN introduces a time-triggered transmission mechanism and standardizes it as 802.1Qbv, which supports time-sensitive service flows to be sent at precise time points. Since the sending time point of the time-sensitive service flow in each device along the route is definite, the end-to-end delay of the time-sensitive service flow is also definite. Time-triggered scheduling is to schedule the sending time of each service flow in the device. It is related to factors such as network topology, routing, and end-to-end delay requirements of service flows. It is a typical NP-complete problem.
  • the typical way to solve the time-triggered scheduling problem is to construct constraints such as end-to-end delay, non-conflict between service flows, and cache limitations, and then use a satisfiability solver to solve the problem.
  • this scheduling method can traverse the entire scheduling space to It can be concluded whether it can be scheduled, but the scheduling time increases exponentially, which cannot adapt to the dynamic changes of time-sensitive business or dynamic configuration or application scenarios with strict requirements on scheduling time; Different feasible solutions may appear in each scheduling, and it is impossible to precisely control the sending time of each service flow to obtain high-quality scheduling results.
  • the application provides a time-triggered scheduling method, node, electronic device and storage medium, the method includes: obtaining each The characteristics of the business flow, the path of the business flow, and the characteristics of each preset node on the path of the business flow; construct a directed graph according to the path of the business flow, wherein the vertices of the directed graph are composed of two adjacent nodes on the path of the business flow Determine the urgency of the service flow according to the directed graph, the characteristics of the service flow, and the characteristics of the nodes; determine the sending time of the service flow according to the urgency of the directed graph and the service flow; send the sending time to the node, So that the node transmits the corresponding service flow in the service flow set according to the sending time.
  • the directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined.
  • the directed graph and the business The urgency of the flow determines the sending time of the service flow, which can reduce the time complexity, effectively speed up the scheduling of the service flow, provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network, and can precisely control the sending of the service flow Time provides the possibility of precise control for exploring better business flow scheduling results with better service quality.
  • Routing refers to the network-wide process of determining the end-to-end path of a packet as it travels from source to destination.
  • a directed graph refers to an ordered triple (V(D), A(D), ⁇ D), where ⁇ D is an association function, which makes each element in A(D) (called a directed edge or arc ) corresponds to an ordered pair of elements (called vertices or points) in V(D).
  • In-degree refers to the sum of the number of times a point in a directed graph is the end point of an edge in the graph.
  • LCM Least Common Multiple
  • FIG. 1 is a flowchart of a time-triggered scheduling method provided by an embodiment of the present application.
  • the time-triggered scheduling method can be applied to the central controller, and the time-triggered scheduling method includes but not limited to the following steps:
  • Step 110 acquiring the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow;
  • Step 120 constructing a directed graph according to the path of the service flow, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the service flow;
  • Step 130 determine the urgency of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the nodes;
  • Step 140 determine the sending time of the service flow according to the urgency of the directed graph and the service flow;
  • Step 150 sending the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time.
  • the period of the service flow, the length of the packet, the end-to-end delay and the minimum forwarding delay of the service flow in the node can be obtained.
  • Two nodes form an edge of the path of the business flow, as the vertex of the directed graph, and the two adjacent edges on the path of the business flow determine a directed edge of the directed graph, and then schedule the business according to the path of the directed graph flow, and schedule the business flow corresponding to each vertex in turn.
  • the in-degree of the vertex of the directed graph is greater than 1, it is determined that the business flow corresponding to the vertex conflicts, and the conflict resolution mechanism is used to calculate the conflict of each business flow.
  • Urgency and then sort the conflicting service flows according to the urgency, and make the sending time of the service flow with low urgency greater than the urgency under the premise of ensuring that the sending time of the later scheduled service flow is longer than that of the first scheduled service flow High service flow sending time; after the scheduling of the service flow is completed, it can ensure that any two service flows in the service flow set meet the non-conflict judgment criterion; based on this, a directed graph can be constructed through the path of the service flow to determine the service flow
  • the urgency of the flow compared with the satisfiability solver solution method with exponential time complexity, determines the sending time of the business flow through the directed graph and the urgency of the business flow, which can reduce the time complexity and effectively speed up the scheduling of the business flow. It provides an effective guarantee for a series of functions such as online scheduling and dynamic configuration of time-sensitive networks, and can accurately control the sending time of business flows, providing the possibility of precise control for exploring better and better service quality business flow scheduling results.
  • a node includes, but is not limited to, a sending terminal, a receiving terminal, and a switch.
  • the sending terminal needs to be initialized, as follows: when the service flow f i is sent at the sending terminal v 0 , [v 0 , v x ] represents the link connecting the sending terminal, there exists a sending time In the initialization process, the send time is set to zero, i.e. Therefore, when any service flow in the service flow set does not conflict with other service flows, the sending time of the service flow is 0. When the service flow conflicts with other service flows, the sending time of the service flow needs to be adjusted according to the scheduling result .
  • a and b are integers, respectively representing the order of service flow f i and f j appearing in the macro-period LCM (f i.period , f j .period), f i.period is the sending period of f i , f j .period is the sending period of f j ; the above inequality guarantees that there will be no conflict when the service flows f i and f j appear in the macro-period LCM (f i .period, f j .period);
  • Step S11 sort the n conflicting business flows according to the urgency: f 1 .urgency>,...,f i .urgency>,...,f n .urgency; the time complexity of sorting is O(n*log(n ));
  • Step S12 For each flow f i , the time when the service flow arrives at node v k as the benchmark, plus the minimum forwarding delay of the service flow on v k
  • the initial sending time as a service flow on v k to v j Right now: The time complexity of this step is O(n);
  • Step S13 Starting from the service flow with the highest urgency, for each service flow f i , use the initial sending time in step S12 As a starting point, judge whether the business flow whose urgency is higher than f i , that is, the business flow whose subscript is smaller than i, conflicts with f i according to the non-conflict judgment criterion;
  • Step S15 If there is a conflict, the sending time of the high-urgency service flow remains unchanged, and the sending time of the low-urgency service flow fi is:
  • T w is the time window, and the time window is determined by the packet size and bandwidth of the service flow, for example, the time window is equal to the packet size of the service flow divided by the bandwidth; the sending time of the service flow fi Update to original sending time Add a T w ; in addition, if the entire time axis is divided into several time slots time_slot, the time slot is the smallest time unit for scheduling allocation, when a conflict occurs, the sending time of the business flow Update to original sending time Increment by 1, where, It is determined that the sending time of the service flow f i is greater than the sending time of the service flow with a higher degree of urgency, so as to avoid conflicts, and return to step S13;
  • Step S13, step S14, and step S15 are a multiple cycle. For each service flow fi, it is necessary to judge whether it conflicts with a service flow with a higher degree of urgency. The scope of conflict judgment is the entire macrocycle of all n service flows. Therefore, the time complexity of multiple loops composed of steps S13, S14, and S15 is
  • step S15 conforms to the terminal sending time adjustment theorem, which means that at least one conflict of the service flow can be resolved by adjusting the sending time of the service flow at the sending terminal.
  • the description of the terminal sending time adjustment theorem is as follows:
  • the characteristics of each service flow in the service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow can be obtained from the information sent by the node, or through the user on the central controller Obtained from the setting information of .
  • step 130 in the embodiment shown in FIG. 1 includes but is not limited to the following steps:
  • Step 210 based on the directed graph, determine the service flow, current node, and subsequent node corresponding to each vertex in the directed graph, wherein the current node is the previous one of the two adjacent nodes on the path of the service flow, and the subsequent node The node is the latter of the two adjacent nodes on the path of the service flow;
  • Step 220 determine the end-to-end delay of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the nodes;
  • Step 230 according to the characteristics of the current node, the subsequent node and the node, determine the minimum forwarding delay of the service flow
  • Step 240 according to the characteristics of the directed graph and the service flow, determine the cumulative transmission delay of the service flow corresponding to the current node;
  • Step 250 determine the minimum transmission delay of the service flow corresponding to the current node
  • Step 260 Determine the urgency of the service flow according to the end-to-end delay of the service flow, the minimum forwarding delay of the service flow, the cumulative transmission delay of the service flow, and the minimum transmission delay of the service flow.
  • the current node of the business flow f i be v k
  • the subsequent node of the next hop is v j
  • determine the end-to-end delay f i .delay endtoend of the business flow f i according to The characteristics of the current node, the subsequent node and the node, determine the minimum forwarding delay of the service flow f i forwarded from the current node v k to the subsequent node v j
  • f i .delay endtoend is the end-to-end delay of the service flow, is the minimum forwarding delay of the service flow, is the cumulative transmission delay of the service flow, is the minimum transmission delay of the service flow.
  • the degree of urgency reflects the time margin that the business flow can be used for scheduling, The smaller the value is, the more urgent it is, when , if f i has not reached the terminal, it means that the service flow cannot be scheduled.
  • step 140 in the embodiment shown in FIG. 1 includes but is not limited to the following steps:
  • Step 310 topologically sort the directed graph to obtain a first topological sequence
  • Step 320 when it is determined that the number of sequence points of the first topological sequence is less than the number of vertices of the directed graph, determining the remaining directed graph according to the first topological sequence and the directed graph;
  • Step 330 taking the service flow with the lowest degree of urgency among the service flows corresponding to each vertex in the remaining directed graph as the loop-free service flow;
  • Step 340 determine the de-looped directed graph according to the de-looped service flow and the remaining directed graph;
  • Step 350 perform topological sorting on the dering directed graph to obtain a second topological sequence
  • Step 360 based on the characteristics of the service flow and the characteristics of the node, determine the sending time of the service flow according to the first topology sequence, the second topology sequence and the de-looped service flow.
  • the steps of topologically sorting a directed graph are as follows: Assume that L is a list for storing results; (1) first find a vertex with zero in-degree in the directed graph, and put the above-mentioned vertex into L; ( 2) Then delete the above-mentioned vertex and the directed edge with the above-mentioned vertex as the starting point in the directed graph; repeat (1) (2) until there is no vertex whose in-degree is zero in the directed graph; then, use L as the first A topological sequence, when the number of elements in L is the same as the total number of vertices in the directed graph, it means that there is no cycle in the directed graph, otherwise there is a cycle; if there is a cycle in the directed graph, delete the first one in the directed graph vertices in a topological sequence to obtain the remaining directed graph.
  • both the first topology sequence and the second topology sequence reflect the sequence relationship between data links, so as to determine the sequence of scheduling service flows, and use the first topology sequence to determine whether there is a loop in the directed graph.
  • the directed graph has no loops, and the business flow scheduling can be completed only by using the first topological sequence; Then, under the joint action of the first topology sequence, the second topology sequence and the ring-free service flow, the service flow is scheduled to avoid conflicts of the service flow during transmission.
  • the loop breaking process is as follows:
  • Step S31 Calculate the urgency of the service flow associated with the loop in the directed graph G'(V', E'), and use the service flow with the least urgency as the de-loop service flow, for example, f i ;
  • Step S32 Record the path of f i on the loop, and the starting point on the path is denoted as Decrease the in-degree of nodes on the path by 1;
  • Step S33 Continue to output the topological sequence in the broken loop G'(V', E'), when the output is to the starting point of the selected service flow when the broken loop is broken, such as the node of fi When , restore the in-degree of the node on the path f i , that is, add 1 to the in-degree of the node, so as to schedule the sending time of nodes along the path of f i ;
  • Step S34 Since the de-loop service flow f i is used for loop breaking processing, when scheduling the sending time of f i in the node, the sending time of part of the service flow has been determined, so the sending time of f i in the node will not Change the sending time point of the scheduled service flow, and only determine the sending time point with the unscheduled service flow according to the conflict resolution mechanism, and at the same time, the selected sending time point cannot conflict with the scheduled service flow;
  • step S31 the maximum number of processed business flows is
  • step S32 at most all business flows are traversed, and the in-degree minus 1 operation is performed on the path, so the time complexity is O(
  • step S33 it is still topological sorting, so the time complexity is O(
  • step S34 scheduling is performed along the topological sequence, the length of the topological sequence is at most
  • step 360 in the embodiment shown in FIG. 3 includes but is not limited to the following steps:
  • Step 410 determining the total topology sequence according to the first topology sequence, the second topology sequence and the de-looped service flow;
  • Step 420 traverse each sequence point in the total topology sequence according to the order of the total topology sequence, and perform scheduling processing on the service flow corresponding to the sequence point, so as to determine the sending time of the service flow.
  • the first topological sequence, the second topological sequence and the vertices corresponding to the de-looped business flow on the remaining directed graph are connected in sequence to obtain the total topological sequence , which can effectively schedule business flows.
  • step 420 in the embodiment shown in FIG. 4 includes but is not limited to the following steps:
  • Step 510 based on the directed graph, determine the conflicting business flow and the non-conflicting business flow from the business flow set, wherein the conflicting business flow is the business flow corresponding to the vertex whose indegree is greater than one in the directed graph, and the non-conflicting business flow is Service flows other than conflicting service flows in the set of service flows;
  • Step 520 traverse each sequence point in the total topology sequence according to the order of the total topology sequence, and when it is determined that the service flow corresponding to the sequence point in the total topology sequence is a conflicting service flow, based on the urgency of the service flow, the directed graph, and the service flow characteristics and node characteristics, determine the sending time of the conflicting service flow; and, when it is determined that the service flow corresponding to the sequence point in the total topology sequence is a non-conflicting service flow, set the sending time of the non-conflicting service flow to the preset initial value.
  • each service flow is a conflicting service flow or a non-conflicting service flow; when scheduling a non-conflicting service flow, the The sending time of the non-conflicting service flow is set to the initial value; when the conflicting service flow is scheduled, the sending time of the conflicting service flow is adjusted according to the urgency of the service flow, the characteristics of the service flow and the characteristics of the node, so as to ensure the effective scheduling process .
  • the step of determining the sending time of the conflicting service flow based on the urgency of the service flow, the characteristics of the service flow, and the characteristics of the node in the embodiment shown in FIG. 5 includes but is not limited to The following steps:
  • Step 610 sort the conflicting service flows based on the urgency of the service flows
  • Step 620 according to the conflicting service flow, the directed graph and the characteristics of the service flow, determine the cumulative transmission delay of the conflicting service flow in each node corresponding to the conflicting service flow;
  • Step 630 according to the conflicting service flow, the directed graph and the characteristics of the nodes, determine the minimum forwarding delay of the conflicting service flow in each node corresponding to the conflicting service flow;
  • Step 640 according to the cumulative transmission delay of the conflicting service flow and the minimum forwarding delay of the conflicting service flow, determine the initial sending time of the conflicting service flow in each node corresponding to the conflicting service flow;
  • Step 650 determine the time window according to the characteristics of the service flow and the characteristics of the nodes
  • Step 660 based on the sorting of the conflicting service flows, determine the sending time of the conflicting service flows according to the initial sending time and the time window of the conflicting service flows.
  • FIG. 7 is a schematic diagram of time delays required for calculating the urgency of service flows according to another embodiment of the present application.
  • Figure 8 is a schematic diagram of a node connection graph provided by another embodiment of the present application
  • Figure 9 is a schematic diagram of a directed graph provided by another embodiment of the present application
  • Figure 10 is another embodiment of the present application
  • a schematic diagram of the remaining directed graph is provided
  • FIG. 11 is a schematic diagram of a de-ringed directed graph provided by another embodiment of the present application.
  • the number of vertices in the directed graph G'(V', E') is O(
  • ), the time complexity of topological sorting on the directed graph G'(V', E') is O(V'+E') O(
  • the sorted output sequence is the topological sequence, which reflects the scheduling relationship between data links.
  • step 310 in the embodiment shown in FIG. 3 it also includes but is not limited to the following steps:
  • Step 1210 when it is determined that the number of sequence points in the first topology sequence is equal to the number of vertices in the directed graph, based on the characteristics of the service flow and the characteristics of the nodes, determine the sending time of the service flow according to the first topology sequence.
  • the sending time of the service flow can be determined.
  • step 110 in the embodiment shown in FIG. 1 it also includes but is not limited to the following steps:
  • Step 1310 obtain the time slot set by the user
  • Step 1320 based on the time slot, initialize the characteristics of the service flow and the characteristics of the node, wherein the characteristics of the service flow include at least the period of the service flow, the length of the message and the end-to-end delay, and the characteristics of the node include at least the service in the node
  • the minimum forwarding delay of the flow is initialized to convert the period of the service flow, the length of the packet, the end-to-end delay and the minimum forwarding delay into integer multiples of the time slot.
  • the period of business flow for example, 1ms, which can be divided into 1000 time_slots;
  • End-to-end delay of business flow set to delat end_to_end , the number of time_slots it occupies is in, rounded down;
  • the minimum forwarding delay of the service flow in the node refers to the minimum forwarding delay required for the service flow to be forwarded from the current node to the subsequent node.
  • the calculation is as follows:
  • step S15 if there is a conflict in the delivery of the service flows, the sending time of the service flow with a lower urgency is updated, and the formula for calculating the sending time of the service flow fi with a lower urgency is modified for:
  • time slots are to simplify scheduling, because when resolving conflicts, if the business flow falls in different time slots, there will be no conflicts; if time slots are not considered, the packet needs to be considered when resolving conflicts length, the scheduling is more complex, because any overlap when sending service flow packets will cause conflicts.
  • step 110 in the embodiment shown in FIG. 1 it also includes but is not limited to the following steps:
  • Step 1410 based on the characteristics of the service flow set and the path of the service flow, use the node at the starting point of the path as the sending terminal, and determine the number of service flows corresponding to the sending terminal;
  • Step 1420 connecting the sending terminal to the virtual terminal, wherein the number of virtual terminals is equal to the number of service flows corresponding to the sending terminal, and the link length between the virtual terminal and the sending terminal is zero;
  • Step 1430 setting the sending time of the virtual terminal to a preset initial value.
  • FIG. 15 is a schematic diagram of a sending terminal connected to a virtual terminal provided by another embodiment of the present application.
  • connection to the virtual terminal is to deal with the situation that the sending terminal has multiple service flows, and the sending time of each service flow can be set to zero; if the virtual terminal is not connected, when the sending terminal sends multiple service flows, the sending If the time is set to zero, a conflict will be sent, and the conflict resolution mechanism can be applied for processing.
  • the steps of the time-triggered scheduling method are as follows:
  • Step S151 set the size time_slot of the time slot
  • Step S152 according to the size of the time_slot, convert the period of the service flow, the length of the message and the minimum forwarding delay into an integer multiple of the time_slot;
  • Step S153 Connect the sending terminal to the virtual terminal, and adjust the initial node of the service flow
  • Two adjacent edges [v k , v l ] and [v l , v m ] correspond to two vertices in G′(V′,E′) and There is a directed edge between them
  • Step S155 topologically sort the directed graph G'(V', E'), and output the topological sequence
  • Step S156 Set the sending time of the service flow sending terminal to 0, then traverse the service flow on each edge along the topological sequence, and resolve the conflict according to the above-mentioned conflict resolution mechanism.
  • the topological sequence ensures that when the service flow on the current edge is scheduled, these The preceding edges of the service flow have been scheduled;
  • Step S157 After executing step S156, if there are still unscheduled business flows, it means that there is a loop in the directed graph G'(V', E'), and the directed graph G'(V', E') needs to be broken ring processing;
  • Step S158 Adjust the sending time of the service flow in the sending terminal according to the terminal sending time adjustment theorem
  • Steps S151 and S152 initialize algorithm parameters, and the time complexity is constant
  • Step S153 introduces a sending terminal for each service flow through the virtual terminal, and the time complexity is O(
  • Step S154 constructs a directed graph G'(V', E'), with a time complexity of O(
  • Step S156 performs business flow scheduling along the topology sequence, and the time complexity is
  • step S157 breaking the loop scheduling is
  • Step S158 adjusts each service flow along the route at most, so the time complexity is O(
  • the time complexity of the time-triggered scheduling method is It is a polynomial time complexity. Compared with the satisfiability solver solution method with exponential time complexity, the time-triggered scheduling method in the embodiment of the present application has a lower time complexity, which effectively speeds up the scheduling of service flows.
  • FIG. 16 is a flowchart of a time-triggered scheduling method provided by another embodiment of the present application.
  • the time-triggered scheduling method can be applied to nodes, and the time-triggered scheduling method includes but not limited to the following steps:
  • Step 1610 receiving the sending time from the central controller, wherein the sending time is determined by the directed graph and the urgency of the business flow, the directed graph is constructed by the path of the business flow, and the urgency of the business flow is obtained by the central controller determined by the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each node on the path of the service flow;
  • Step 1620 transmit the corresponding service flow in the service flow set according to the sending time.
  • the node will monitor the configuration information of the central controller.
  • the node interprets and executes these configurations, and sends the service flow at a precise time point; based on this, the service flow can be passed Construct a directed graph based on the path of the business flow, and then determine the urgency of the business flow.
  • the sending time of the business flow can be determined through the directed graph and the urgency of the business flow, which can reduce the Time complexity, effectively speeding up the scheduling of business flows, providing an effective guarantee for a series of functions such as online scheduling and dynamic configuration of time-sensitive networks, and being able to precisely control the sending time of business flows, providing a basis for exploring better services with better service quality Stream scheduling results provide the possibility of precise regulation.
  • FIG. 17 is a schematic diagram of implementation in 802.1Qcc provided by another embodiment of the present application.
  • nodes include but are not limited to sending terminals, receiving terminals, and switches; after the central controller determines the sending time of each service flow, it needs to post-process the sending time and convert it into node configuration information, through YANG/ The NETCONF protocol is configured in the node, and the node interprets and executes these configurations, and sends the service flow at a precise time point to realize the deterministic transmission of the time-sensitive network.
  • an embodiment of the present application also provides a node.
  • the node includes: one or more processors and memories, and one processor and memories are taken as an example in FIG. 18 .
  • the processor and the memory may be connected through a bus or in other ways, and connection through a bus is taken as an example in FIG. 18 .
  • the memory can be used to store non-transitory software programs and non-transitory computer-executable programs, such as the time-triggered scheduling method applied to nodes in the above embodiments of the present application.
  • the processor implements the time-triggered scheduling method applied to the nodes in the above embodiments of the present application by running the non-transitory software program and the program stored in the memory.
  • the memory may include a program storage area and a data storage area, where the program storage area may store the operating system and at least one application required by the function; the data storage area may store and execute the time-triggered scheduling method applied to the node in the above-mentioned embodiments of the present application required data etc.
  • the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state storage devices.
  • the memory may include memory located remotely from the processor, and these remote memories may be connected to the node through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • the non-transient software programs and programs required to implement the time-triggered scheduling method applied to nodes in the above-mentioned embodiments of the present application are stored in the memory.
  • the time-triggered scheduling method of a node executes steps 1610 to 1620 of the method in FIG. Determined, the directed graph is constructed by the path of the business flow, and the urgency of the business flow is determined by the characteristics of each business flow in the preset business flow set obtained by the central controller, the path of the business flow, and each It is determined by the characteristics of the node; the corresponding service flow in the service flow set is transmitted according to the sending time.
  • a directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined.
  • the business can be determined through the directed graph and the urgency of the business flow.
  • the sending time of the flow can reduce the time complexity, effectively speed up the scheduling of the business flow, and provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network.
  • Service flow scheduling results with better service quality provide the possibility of precise regulation.
  • an embodiment of the present application also provides an electronic device.
  • the electronic device includes: one or more processors and memories, and one processor and memories are taken as an example in FIG. 19 .
  • the processor and the memory may be connected through a bus or in other ways. In FIG. 19, connection through a bus is taken as an example.
  • the memory can be used to store non-transitory software programs and non-transitory computer-executable programs, such as the time-triggered scheduling method applied to the central controller in the above embodiments of the present application.
  • the processor implements the time-triggered scheduling method applied to the central controller in the above embodiments of the present application by running the non-transitory software program and the program stored in the memory.
  • the memory can include a program storage area and a data storage area, wherein the program storage area can store the operating system and at least one application program required by the function; the data storage area can store the time triggers applied to the central controller in the above-mentioned embodiments of the present application.
  • the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state storage devices.
  • the memory may include memory located remotely from the processor, and these remote memories may be connected to the electronic device via a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • the non-transient software programs and programs required to implement the time-triggered scheduling method applied to the central controller in the above-mentioned embodiments of the present application are stored in the memory, and when executed by one or more processors, the above-mentioned embodiments of the present application are executed.
  • the time-triggered scheduling method applied to the central controller for example, executes method steps 110 to 150 in Fig. 1 described above, method steps 210 to 260 in Fig. 2 , method steps 310 to 360 in Fig. 3 , Method step 410 to step 420 in Fig. 4, method step 510 to step 520 in Fig. 5, method step 610 to step 660 in Fig. 6, method step 1210 in Fig. 12, method step 1310 to step in Fig.
  • the central controller obtains the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow ; Construct a directed graph according to the path of the business flow, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the business flow; according to the directed graph, the characteristics of the business flow and the characteristics of the nodes, determine the Urgency; determine the sending time of the service flow according to the urgency of the directed graph and the service flow; send the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time.
  • a directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined.
  • the business can be determined through the directed graph and the urgency of the business flow.
  • the sending time of the flow can reduce the time complexity, effectively speed up the scheduling of the business flow, and provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network.
  • Service flow scheduling results with better service quality provide the possibility of precise regulation.
  • an embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are executed by a processor or a controller, for example, by the above-mentioned Execution by a processor in the embodiment of the electronic device can cause the above-mentioned processor to execute the time-triggered scheduling method applied to the central controller in the above-mentioned embodiment, for example, execute the method steps 110 to 150 in FIG. 1 described above, and FIG. Method step 210 to step 260 in 2, method step 310 to step 360 in Fig. 3, method step 410 to step 420 in Fig. 4, method step 510 to step 520 in Fig. 5, method step 610 in Fig.
  • step 660 method step 1210 in FIG. 12, method step 1310 to step 1320 in FIG. 13, method step 1410 to step 1430 in FIG.
  • a directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined.
  • the business can be determined through the directed graph and the urgency of the business flow.
  • the sending time of the flow can reduce the time complexity, effectively speed up the scheduling of the business flow, and provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network.
  • Service flow scheduling results with better service quality provide the possibility of precise regulation.
  • the embodiment of the present application includes: obtaining the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow; according to the characteristics of the service flow
  • a path constructs a directed graph, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the service flow; according to the directed graph, the characteristics of the service flow and the nodes characteristics, determine the urgency of the service flow; determine the sending time of the service flow according to the directed graph and the urgency of the service flow; send the sending time to the node, so that the The node transmits the corresponding service flow in the service flow set according to the sending time.
  • the directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined.
  • the directed graph and the business The urgency of the flow determines the sending time of the service flow, which can reduce the time complexity, effectively speed up the scheduling of the service flow, provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network, and can precisely control the sending of the service flow Time provides the possibility of precise control for exploring better business flow scheduling results with better service quality.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, tape, magnetic disk storage or other magnetic storage devices, or can Any other medium used to store desired information and which can be accessed by a computer.
  • communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Provided in the present application are a time-triggered scheduling method, a node, an electronic device, and a storage medium. The method comprises: acquiring the characteristics of each service flow in a preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow (110); constructing a directed graph according to the path of the service flow (120); determining the degree of urgency of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the node (130); determining a sending time of the service flow according to the directed graph and the degree of urgency of the service flow (140); and sending the sending time to the node (150).

Description

时间触发调度方法、节点、电子设备和存储介质Time-triggered scheduling method, node, electronic device and storage medium
相关申请的交叉引用Cross References to Related Applications
本申请基于申请号为202111579523.2、申请日为2021年12月22日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。This application is based on a Chinese patent application with application number 202111579523.2 and a filing date of December 22, 2021, and claims the priority of this Chinese patent application. The entire content of this Chinese patent application is hereby incorporated by reference into this application.
技术领域technical field
本申请涉及但不限于通信技术领域,尤其涉及一种时间触发调度方法、节点、电子设备和存储介质。The present application relates to but not limited to the technical field of communication, and in particular relates to a time-triggered scheduling method, node, electronic device and storage medium.
背景技术Background technique
时间敏感网络(Time-Sensitive Networking,TSN)由IEEE 802.1TSN国际组织提出并标准化,受到工业界、学术界以及众多国际组织(包括IEC、IETF、3GPP等)的广泛支持和认可,有望打破信息网络(Information Technology,IT)与控制网络(Operational Technology,OT)的壁垒,实现IT与OT的融合,具有广泛的应用前景。TSN引入时间触发的传输机制并标准化为802.1Qbv,支持时敏业务流在精准的时间点上进行发送。由于时敏业务流沿路由在每台设备中的发送时间点都是确定的,于是时敏业务流的端到端时延也是确定的。时间触发的调度就是调度每条业务流在设备中的发送时间点,与网络拓扑、路由、业务流端到端时延需求等因素相关,是典型的非决定性多项式集合(Non-deterministic Polynomial,NP)完全问题。Time-Sensitive Networking (Time-Sensitive Networking, TSN) was proposed and standardized by IEEE 802.1TSN International Organization. It has been widely supported and recognized by industry, academia and many international organizations (including IEC, IETF, 3GPP, etc.), and it is expected to break the information network. (Information Technology, IT) and control network (Operational Technology, OT) barriers, to achieve the integration of IT and OT, has a wide range of application prospects. TSN introduces a time-triggered transmission mechanism and standardizes it as 802.1Qbv, which supports time-sensitive service flows to be sent at precise time points. Since the sending time point of the time-sensitive service flow in each device along the route is definite, the end-to-end delay of the time-sensitive service flow is also definite. Time-triggered scheduling is to schedule the sending time of each service flow in the device. It is related to factors such as network topology, routing, and end-to-end delay requirements of service flows. It is a typical set of non-deterministic polynomials (Non-deterministic Polynomial, NP ) completely problematic.
目前,解决时间触发调度问题的典型思路是构建端到端时延、业务流间无冲突、缓存限制等约束,然后通过可满足性求解器进行求解,这种调度方式虽然能遍历整个调度空间给出是否可调度的结论,但是调度时间呈指数增长,无法适应时敏业务的动态变化或者动态配置或者对调度时间有严格要求的应用场景;另外,可满足性求解器在相同输入的情况下,每次调度都可能出现不同的可行解,无法精准调控每条业务流的发送时间,以获得高质量的调度结果。At present, the typical way to solve the time-triggered scheduling problem is to construct constraints such as end-to-end delay, non-conflict between service flows, and cache limitations, and then use a satisfiability solver to solve the problem. Although this scheduling method can traverse the entire scheduling space to It can be concluded whether it can be scheduled, but the scheduling time increases exponentially, which cannot adapt to the dynamic changes of time-sensitive business or dynamic configuration or application scenarios with strict requirements on scheduling time; Different feasible solutions may appear in each scheduling, and it is impossible to precisely control the sending time of each service flow to obtain high-quality scheduling results.
发明内容Contents of the invention
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。The following is an overview of the topics described in detail in this article. This summary is not intended to limit the scope of the claims.
本申请实施例提供了一种时间触发调度方法、节点、电子设备和存储介质。Embodiments of the present application provide a time-triggered scheduling method, a node, an electronic device, and a storage medium.
第一方面,本申请实施例提供了一种时间触发调度方法,应用于中心控制器,所述方法包括:获取预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个预设的节点的特性;根据所述业务流的路径构建有向图,其中,所述有向图的顶点由所述业务流的路径上相邻两个所述节点而确定;根据所述有向图、所述业务流的特性和所述节点的特性,确定所述业务流的紧急程度;根据所述有向图和所述业务流的紧急程度确定所述业务流的发送时间;将所述发送时间发送至所述节点,以使所述节点按照所述发送时间传输所述业务流集合中对应的业务流。In the first aspect, the embodiment of the present application provides a time-triggered scheduling method, which is applied to the central controller, and the method includes: obtaining the characteristics of each service flow in the preset service flow set, the path of the service flow and The characteristics of each preset node on the path of the service flow; a directed graph is constructed according to the path of the service flow, wherein the vertices of the directed graph are formed by two adjacent nodes on the path of the service flow determine the node; determine the urgency of the service flow according to the directed graph, the characteristics of the service flow, and the characteristics of the node; determine the urgency of the service flow according to the directed graph and the urgency of the service flow The sending time of the service flow; sending the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time.
第二方面,本申请还提供了一种时间触发调度方法,应用于节点,所述方法包括:接收来自中心控制器的发送时间,其中,所述发送时间由有向图和业务流的紧急程度而确定,所述有向图由所述业务流的路径而构建,所述业务流的紧急程度由所述中心控制器获取的预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个所述节点的特性而确定;按照所述发送时间传输所述业务流集合中对应的业务流。In the second aspect, the present application also provides a time-triggered scheduling method applied to nodes, the method comprising: receiving the sending time from the central controller, wherein the sending time is determined by the directed graph and the urgency of the service flow It is determined that the directed graph is constructed by the path of the service flow, and the urgency of the service flow is determined by the characteristics of each service flow in the preset service flow set acquired by the central controller, the service flow The path of the flow and the characteristics of each node on the path of the service flow are determined; and the corresponding service flow in the set of service flows is transmitted according to the sending time.
第三方面,本申请还提供了一种节点,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上第二方面所述的时间触发调度方法。In a third aspect, the present application also provides a node, including: a memory, a processor, and a computer program stored on the memory and operable on the processor, and the processor implements the second aspect above when executing the computer program The time-triggered scheduling method described above.
第四方面,本申请还提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上第一方面所述的时间触发调度方法。In a fourth aspect, the present application also provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and operable on the processor, when the processor executes the computer program, the above first The time-triggered scheduling method described in the aspect.
第五方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行如上第一方面所述的时间触发调度方法,或者如上第二方面所述的时间触发调度方法。In the fifth aspect, the present application also provides a computer-readable storage medium, where the computer-readable storage medium stores a computer-executable program, and the computer-executable program is used to make the computer perform the above-mentioned first aspect. A trigger scheduling method, or a time-triggered scheduling method as described in the second aspect above.
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。Additional features and advantages of the application will be set forth in the description which follows, and, in part, will be obvious from the description, or may be learned by practice of the application. The objectives and other advantages of the application will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
附图说明Description of drawings
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。The accompanying drawings are used to provide a further understanding of the technical solution of the present application, and constitute a part of the specification, and are used together with the embodiments of the present application to explain the technical solution of the present application, and do not constitute a limitation to the technical solution of the present application.
图1是本申请一个实施例提供的时间触发调度方法的流程图;FIG. 1 is a flowchart of a time-triggered scheduling method provided by an embodiment of the present application;
图2是本申请另一个实施例提供的一种确定业务流的紧急程度的方法的流程图;FIG. 2 is a flow chart of a method for determining the urgency of a service flow provided by another embodiment of the present application;
图3是本申请另一个实施例提供的一种确定业务流的发送时间的方法的流程图;FIG. 3 is a flow chart of a method for determining the sending time of a service flow provided by another embodiment of the present application;
图4是本申请另一个实施例提供的一种由总拓扑序列确定发送时间的方法的流程图;FIG. 4 is a flow chart of a method for determining the sending time from the total topology sequence provided by another embodiment of the present application;
图5是本申请另一个实施例提供的一种由总拓扑序列确定发送时间的方法的流程图;FIG. 5 is a flow chart of a method for determining the sending time from the total topology sequence provided by another embodiment of the present application;
图6是本申请另一个实施例提供的一种确定冲突业务流的发送时间的方法的流程图;FIG. 6 is a flow chart of a method for determining the sending time of a conflicting service flow provided by another embodiment of the present application;
图7是本申请另一个实施例提供的业务流计算紧急程度所需各部分时延的示意图;Fig. 7 is a schematic diagram of the time delay of each part required for calculating the urgency of the business flow provided by another embodiment of the present application;
图8是本申请另一个实施例提供的节点连接图的示意图;Fig. 8 is a schematic diagram of a node connection diagram provided by another embodiment of the present application;
图9是本申请另一个实施例提供的有向图的示意图;Fig. 9 is a schematic diagram of a directed graph provided by another embodiment of the present application;
图10是本申请另一个实施例提供的剩余有向图的示意图;Fig. 10 is a schematic diagram of the remaining directed graph provided by another embodiment of the present application;
图11是本申请另一个实施例提供的去环有向图的示意图;Fig. 11 is a schematic diagram of a dering directed graph provided by another embodiment of the present application;
图12是本申请另一个实施例提供的另一种确定业务流的发送时间的方法的流程图;FIG. 12 is a flowchart of another method for determining the sending time of a service flow provided by another embodiment of the present application;
图13是本申请另一个实施例提供的一种基于时间槽进行初始化的方法的流程图;FIG. 13 is a flow chart of a method for initialization based on time slots provided by another embodiment of the present application;
图14是本申请另一个实施例提供的一种连接虚拟终端的方法的流程图;FIG. 14 is a flowchart of a method for connecting a virtual terminal provided by another embodiment of the present application;
图15是本申请另一个实施例提供的发送终端连接虚拟终端的示意图;FIG. 15 is a schematic diagram of a sending terminal connected to a virtual terminal provided by another embodiment of the present application;
图16是本申请另一个实施例提供的时间触发调度方法的流程图;FIG. 16 is a flowchart of a time-triggered scheduling method provided by another embodiment of the present application;
图17是本申请另一个实施例提供的在802.1Qcc中的实施示意图;Fig. 17 is a schematic diagram of implementation in 802.1Qcc provided by another embodiment of the present application;
图18是本申请另一个实施例提供的节点的结构图;Fig. 18 is a structural diagram of a node provided by another embodiment of the present application;
图19是本申请另一个实施例提供的电子设备的结构图。Fig. 19 is a structural diagram of an electronic device provided by another embodiment of the present application.
具体实施方式Detailed ways
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的实施例仅用以解释本申请,并不用于限定本申请。In order to make the purpose, technical solution and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the embodiments described here are only used to explain the present application, not to limit the present application.
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书、权利要求书或上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。It should be noted that although the functional modules are divided in the schematic diagram of the device, and the logical sequence is shown in the flowchart, in some cases, it can be executed in a different order than the module division in the device or the flowchart in the flowchart. steps shown or described. The terms "first", "second" and the like in the specification, claims or the above-mentioned drawings are used to distinguish similar objects, and not necessarily used to describe a specific order or sequential order.
时间敏感网络(Time-Sensitive Networking,TSN)由IEEE 802.1TSN国际组织提出并标准化,受到工业界、学术界以及众多国际组织(包括IEC、IETF、3GPP等)的广泛支持和认可,有望打破信息网络IT与控制网络OT的壁垒,实现IT与OT的融合,具有广泛的应用前景。TSN引入时间触发的传输机制并标准化为802.1Qbv,支持时敏业务流在精准的时间点上进行发送。由于时敏业务流沿路由在每台设备中的发送时间点都是确定的,于是时敏业务流的端到端时延也是确定的。时间触发的调度就是调度每条业务流在设备中的发送时间点,与网络拓扑、路由、业务流端到端时延需求等因素相关,是典型的NP完全问题。Time-Sensitive Networking (Time-Sensitive Networking, TSN) was proposed and standardized by IEEE 802.1TSN International Organization. It has been widely supported and recognized by industry, academia and many international organizations (including IEC, IETF, 3GPP, etc.), and it is expected to break the information network. The barriers between IT and control network OT, and the integration of IT and OT, have broad application prospects. TSN introduces a time-triggered transmission mechanism and standardizes it as 802.1Qbv, which supports time-sensitive service flows to be sent at precise time points. Since the sending time point of the time-sensitive service flow in each device along the route is definite, the end-to-end delay of the time-sensitive service flow is also definite. Time-triggered scheduling is to schedule the sending time of each service flow in the device. It is related to factors such as network topology, routing, and end-to-end delay requirements of service flows. It is a typical NP-complete problem.
目前,解决时间触发调度问题的典型思路是构建端到端时延、业务流间无冲突、缓存限制等约束,然后通过可满足性求解器进行求解,这种调度方式虽然能遍历整个调度空间给出是否可调度的结论,但是调度时间呈指数增长,无法适应时敏业务的动态变化或者动态配置或者对调度时间有严格要求的应用场景;另外,可满足性求解器在相同输入的情况下,每次调度都可能出现不同的可行解,无法精准调控每条业务流的发送时间,以获得高质量的调度结果。At present, the typical way to solve the time-triggered scheduling problem is to construct constraints such as end-to-end delay, non-conflict between service flows, and cache limitations, and then use a satisfiability solver to solve the problem. Although this scheduling method can traverse the entire scheduling space to It can be concluded whether it can be scheduled, but the scheduling time increases exponentially, which cannot adapt to the dynamic changes of time-sensitive business or dynamic configuration or application scenarios with strict requirements on scheduling time; Different feasible solutions may appear in each scheduling, and it is impossible to precisely control the sending time of each service flow to obtain high-quality scheduling results.
针对业务流调度慢且业务流的发送时间无法精准调控的问题,本申请提供了一种时间触发调度方法、节点、电子设备和存储介质,该方法包括:获取预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个预设的节点的特性;根据业务流的路径构建有向图,其中,有向图的顶点由业务流的路径上相邻两个节点而确定;根据有向图、业务流的特性和节点的特性,确定业务流的紧急程度;根据有向图和业务流的紧急程度确定业务流的发送时间;将发送时间发送至节点,以使节点按照发送时间传输业务流集合中对应的业务流。根据本申请实施例提供的方案,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。Aiming at the problem that the business flow scheduling is slow and the sending time of the service flow cannot be precisely regulated, the application provides a time-triggered scheduling method, node, electronic device and storage medium, the method includes: obtaining each The characteristics of the business flow, the path of the business flow, and the characteristics of each preset node on the path of the business flow; construct a directed graph according to the path of the business flow, wherein the vertices of the directed graph are composed of two adjacent nodes on the path of the business flow Determine the urgency of the service flow according to the directed graph, the characteristics of the service flow, and the characteristics of the nodes; determine the sending time of the service flow according to the urgency of the directed graph and the service flow; send the sending time to the node, So that the node transmits the corresponding service flow in the service flow set according to the sending time. According to the solution provided by the embodiment of the present application, the directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined. Compared with the solution method of the satisfiability solver with exponential time complexity, the directed graph and the business The urgency of the flow determines the sending time of the service flow, which can reduce the time complexity, effectively speed up the scheduling of the service flow, provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network, and can precisely control the sending of the service flow Time provides the possibility of precise control for exploring better business flow scheduling results with better service quality.
首先,对本申请中涉及的若干名词进行解析:First, analyze some nouns involved in this application:
路由,是指分组从源到目的地时,决定端到端路径的网络范围的进程。Routing refers to the network-wide process of determining the end-to-end path of a packet as it travels from source to destination.
有向图,指一个有序三元组(V(D),A(D),ψD),其中ψD为关联函数,它使A(D)中的每一个元素(称为有向边或弧)对应于V(D)中的一个有序元素(称为顶点或点)对。A directed graph refers to an ordered triple (V(D), A(D), ψD), where ψD is an association function, which makes each element in A(D) (called a directed edge or arc ) corresponds to an ordered pair of elements (called vertices or points) in V(D).
入度,指有向图中某点作为图中边的终点的次数之和。In-degree refers to the sum of the number of times a point in a directed graph is the end point of an edge in the graph.
最小公倍数(Least Common Multiple,LCM),若干个整数公有的倍数中最小的正整数称为它们的最小公倍数。Least Common Multiple (LCM), the smallest positive integer among the common multiples of several integers is called their least common multiple.
下面结合附图,对本申请实施例作进一步阐述。The embodiments of the present application will be further described below in conjunction with the accompanying drawings.
如图1所示,图1是本申请一个实施例提供的一种时间触发调度方法的流程图。该时间触发调度方法可以应用于中心控制器,该时间触发调度方法包括但不限于如下步骤:As shown in FIG. 1 , FIG. 1 is a flowchart of a time-triggered scheduling method provided by an embodiment of the present application. The time-triggered scheduling method can be applied to the central controller, and the time-triggered scheduling method includes but not limited to the following steps:
步骤110,获取预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个预设的节点的特性; Step 110, acquiring the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow;
步骤120,根据业务流的路径构建有向图,其中,有向图的顶点由业务流的路径上相邻两个节点而确定; Step 120, constructing a directed graph according to the path of the service flow, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the service flow;
步骤130,根据有向图、业务流的特性和节点的特性,确定业务流的紧急程度; Step 130, determine the urgency of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the nodes;
步骤140,根据有向图和业务流的紧急程度确定业务流的发送时间; Step 140, determine the sending time of the service flow according to the urgency of the directed graph and the service flow;
步骤150,将发送时间发送至节点,以使节点按照发送时间传输业务流集合中对应的业务流。 Step 150, sending the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time.
可以理解的是,根据业务流的特性和节点的特性,能得到业务流的周期、报文长度、端到端时延和节点中业务流的最小转发时延,业务流的路径上每相邻两个节点组成业务流的路径的一条边,作为有向图的顶点,业务流的路径上相邻的两条边确定了有向图的一条有向边,然后按照有向图的路径调度业务流,依次对每个顶点对应的业务流进行调度,当有向图的顶点的入度大于1,确定该顶点对应的业务流发生冲突,利用冲突解决机制,计算发生冲突的每条业务流的紧急程度,然后按照紧急程度,对发生冲突的业务流进行排序,在保证后调度的业务流的发送时间大于先调度的业务流的前提下,使得紧急程度低的业务流的发送时间大于紧急程度高的业务流的发送时间;业务流的调度完成后,能够保证业务流集合中任意两个业务流满足无冲突判定准则;基于此,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。It can be understood that, according to the characteristics of the service flow and the characteristics of the nodes, the period of the service flow, the length of the packet, the end-to-end delay and the minimum forwarding delay of the service flow in the node can be obtained. Two nodes form an edge of the path of the business flow, as the vertex of the directed graph, and the two adjacent edges on the path of the business flow determine a directed edge of the directed graph, and then schedule the business according to the path of the directed graph flow, and schedule the business flow corresponding to each vertex in turn. When the in-degree of the vertex of the directed graph is greater than 1, it is determined that the business flow corresponding to the vertex conflicts, and the conflict resolution mechanism is used to calculate the conflict of each business flow. Urgency, and then sort the conflicting service flows according to the urgency, and make the sending time of the service flow with low urgency greater than the urgency under the premise of ensuring that the sending time of the later scheduled service flow is longer than that of the first scheduled service flow High service flow sending time; after the scheduling of the service flow is completed, it can ensure that any two service flows in the service flow set meet the non-conflict judgment criterion; based on this, a directed graph can be constructed through the path of the service flow to determine the service flow The urgency of the flow, compared with the satisfiability solver solution method with exponential time complexity, determines the sending time of the business flow through the directed graph and the urgency of the business flow, which can reduce the time complexity and effectively speed up the scheduling of the business flow. It provides an effective guarantee for a series of functions such as online scheduling and dynamic configuration of time-sensitive networks, and can accurately control the sending time of business flows, providing the possibility of precise control for exploring better and better service quality business flow scheduling results.
需要说明的是,节点包括但不限于发送终端、接收终端和交换机。It should be noted that a node includes, but is not limited to, a sending terminal, a receiving terminal, and a switch.
值得注意的是,在调度业务流之前,需要对发送终端进行初始化处理,如下:当业务流f i在发送终端v 0发送时,[v 0,v x]表示连接发送终端的链路,存在一个发送时间
Figure PCTCN2022124184-appb-000001
在初始化处理中,发送时间设置为零,即
Figure PCTCN2022124184-appb-000002
因此,当业务流集合中任意一个业务流与其他业务流都不发生冲突,该业务流发送时间为0,当该业务流与其他业务流发生冲突,需要根据调度结果调节该业务流的发送时间。
It is worth noting that before scheduling the service flow, the sending terminal needs to be initialized, as follows: when the service flow f i is sent at the sending terminal v 0 , [v 0 , v x ] represents the link connecting the sending terminal, there exists a sending time
Figure PCTCN2022124184-appb-000001
In the initialization process, the send time is set to zero, i.e.
Figure PCTCN2022124184-appb-000002
Therefore, when any service flow in the service flow set does not conflict with other service flows, the sending time of the service flow is 0. When the service flow conflicts with other service flows, the sending time of the service flow needs to be adjusted according to the scheduling result .
需要说明的是,(1)无冲突判断准则如下:It should be noted that (1) the non-conflict judgment criteria are as follows:
两条业务流f i和f j在边[v k,v j]上无冲突等价于: Two business flows f i and f j have no conflict on the edge [v k , v j ], which is equivalent to:
Figure PCTCN2022124184-appb-000003
Figure PCTCN2022124184-appb-000003
都有
Figure PCTCN2022124184-appb-000004
成立,
have
Figure PCTCN2022124184-appb-000004
set up,
其中,a、b是整数,分别表示业务流f i,f j在宏周期LCM(f i.period,f j.period)内出现的次序,f i.period为f i的发送周期,f j.period为f j的发送周期;上述不等式保证了业务流f i、f j在宏周期LCM(f i.period,f j.period)内出现时均不会发生冲突; Among them, a and b are integers, respectively representing the order of service flow f i and f j appearing in the macro-period LCM (f i.period , f j .period), f i.period is the sending period of f i , f j .period is the sending period of f j ; the above inequality guarantees that there will be no conflict when the service flows f i and f j appear in the macro-period LCM (f i .period, f j .period);
(2)冲突解决机制如下:(2) The conflict resolution mechanism is as follows:
步骤S11:将n条发生冲突的业务流按照紧急程度排序:f 1.urgency>,…,f i.urgency>,…,f n.urgency;排序的时间复杂度为O(n*log(n)); Step S11: sort the n conflicting business flows according to the urgency: f 1 .urgency>,...,f i .urgency>,...,f n .urgency; the time complexity of sorting is O(n*log(n ));
步骤S12:对于每一条流f i,以业务流到达节点v k的时间
Figure PCTCN2022124184-appb-000005
为基准,加上业务流在v k上的最小转发时延
Figure PCTCN2022124184-appb-000006
作为业务流在v k上发往v j的初始发送时间
Figure PCTCN2022124184-appb-000007
即:
Figure PCTCN2022124184-appb-000008
Figure PCTCN2022124184-appb-000009
该步骤的时间复杂度为O(n);
Step S12: For each flow f i , the time when the service flow arrives at node v k
Figure PCTCN2022124184-appb-000005
as the benchmark, plus the minimum forwarding delay of the service flow on v k
Figure PCTCN2022124184-appb-000006
The initial sending time as a service flow on v k to v j
Figure PCTCN2022124184-appb-000007
Right now:
Figure PCTCN2022124184-appb-000008
Figure PCTCN2022124184-appb-000009
The time complexity of this step is O(n);
步骤S13:从紧急程度最高的业务流开始,对于每一条业务流f i,以步骤S12中的初始发送时间
Figure PCTCN2022124184-appb-000010
作为起点,根据无冲突判断准则判断紧急程度比f i高的业务流即下标小于i的业务流是否与f i冲突;
Step S13: Starting from the service flow with the highest urgency, for each service flow f i , use the initial sending time in step S12
Figure PCTCN2022124184-appb-000010
As a starting point, judge whether the business flow whose urgency is higher than f i , that is, the business flow whose subscript is smaller than i, conflicts with f i according to the non-conflict judgment criterion;
步骤S14:若均无冲突,则i=i+1,然后返回执行步骤S13;Step S14: If there is no conflict, then i=i+1, and then return to step S13;
步骤S15:若有冲突,紧急程度高的业务流的发送时间不变,紧急程度低的业务流f i的发送时间为: Step S15: If there is a conflict, the sending time of the high-urgency service flow remains unchanged, and the sending time of the low-urgency service flow fi is:
Figure PCTCN2022124184-appb-000011
Figure PCTCN2022124184-appb-000011
其中,T w为时间窗口,时间窗口由业务流的报文大小和带宽而确定,例如时间窗口等于业务流的报文大小除以带宽;业务流f i的发送时间
Figure PCTCN2022124184-appb-000012
更新为原来的发送时间
Figure PCTCN2022124184-appb-000013
加上一个T w;另外,若将整个时间轴划分为若干个时间槽time_slot,时间槽是调度分配的最小时间单位,发生冲突时,业务 流的发送时间
Figure PCTCN2022124184-appb-000014
更新为原来的发送时间
Figure PCTCN2022124184-appb-000015
自加1,其中,
Figure PCTCN2022124184-appb-000016
Figure PCTCN2022124184-appb-000017
确定业务流f i的发送时间大于紧急程度较高的业务流的发送时间,避免发生冲突,返回步骤S13;
Among them, T w is the time window, and the time window is determined by the packet size and bandwidth of the service flow, for example, the time window is equal to the packet size of the service flow divided by the bandwidth; the sending time of the service flow fi
Figure PCTCN2022124184-appb-000012
Update to original sending time
Figure PCTCN2022124184-appb-000013
Add a T w ; in addition, if the entire time axis is divided into several time slots time_slot, the time slot is the smallest time unit for scheduling allocation, when a conflict occurs, the sending time of the business flow
Figure PCTCN2022124184-appb-000014
Update to original sending time
Figure PCTCN2022124184-appb-000015
Increment by 1, where,
Figure PCTCN2022124184-appb-000016
Figure PCTCN2022124184-appb-000017
It is determined that the sending time of the service flow f i is greater than the sending time of the service flow with a higher degree of urgency, so as to avoid conflicts, and return to step S13;
另外,在步骤S15中,采用时间窗口时,当
Figure PCTCN2022124184-appb-000018
搜索完所有的时间窗口后,记录该业务流不可调度;采用时间槽时,当
Figure PCTCN2022124184-appb-000019
搜索完
Figure PCTCN2022124184-appb-000020
Figure PCTCN2022124184-appb-000021
中的所有时间槽后,记录该业务流不可调度,开始调度下一条业务流,即i=i+1并回到步骤S13,或者i==n,代表已调度完所有业务流,则跳出循环;
In addition, in step S15, when using the time window, when
Figure PCTCN2022124184-appb-000018
After searching all the time windows, it is recorded that the business flow cannot be scheduled; when time slots are used, when
Figure PCTCN2022124184-appb-000019
search finished
Figure PCTCN2022124184-appb-000020
Figure PCTCN2022124184-appb-000021
After all the time slots in , record that the service flow is unschedulable, start to schedule the next service flow, that is, i=i+1 and return to step S13, or i==n, which means that all service flows have been scheduled, then jump out of the loop ;
步骤S13、步骤S14、步骤S15是一个多重循环,对于每条业务流f i均需判断与紧急程度更高的业务流是否发生冲突,冲突判断的范围为所有n个业务流的整个宏周期,因此步骤S13、步骤S14、步骤S15构成的多重循环的时间复杂度为
Figure PCTCN2022124184-appb-000022
Step S13, step S14, and step S15 are a multiple cycle. For each service flow fi, it is necessary to judge whether it conflicts with a service flow with a higher degree of urgency. The scope of conflict judgment is the entire macrocycle of all n service flows. Therefore, the time complexity of multiple loops composed of steps S13, S14, and S15 is
Figure PCTCN2022124184-appb-000022
可以理解的是,步骤S15符合终端发送时间调节定理,终端发送时间调节定理是指通过调节业务流在发送终端的发送时间至少可以解决业务流的一次冲突,终端发送时间调节定理的说明如下:It can be understood that step S15 conforms to the terminal sending time adjustment theorem, which means that at least one conflict of the service flow can be resolved by adjusting the sending time of the service flow at the sending terminal. The description of the terminal sending time adjustment theorem is as follows:
假设业务流f 1与f 2在边[v 2,v 3]上发生冲突,通过调度,将f 1与f 2在节点v 2上的发送时间分别设置为
Figure PCTCN2022124184-appb-000023
就可避免发生冲突,f 1与f 2在发送终端上的发送时间调节如下:
Figure PCTCN2022124184-appb-000024
Figure PCTCN2022124184-appb-000025
Assuming that business flows f 1 and f 2 collide on edge [v 2 , v 3 ], through scheduling, set the sending time of f 1 and f 2 on node v 2 as
Figure PCTCN2022124184-appb-000023
conflicts can be avoided, and the sending time of f 1 and f 2 on the sending terminal is adjusted as follows:
Figure PCTCN2022124184-appb-000024
Figure PCTCN2022124184-appb-000025
其中,
Figure PCTCN2022124184-appb-000026
表示报文从节点v i转发到v j的最小转发时延,
Figure PCTCN2022124184-appb-000027
表示报文从节点v 0发往v j的链路时延。
in,
Figure PCTCN2022124184-appb-000026
Indicates the minimum forwarding delay for a message to be forwarded from node v i to v j ,
Figure PCTCN2022124184-appb-000027
Indicates the link delay for packets sent from node v 0 to v j .
在实践中,业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个预设的节点的特性可通过节点发送的信息中获取,或者通过用户在中心控制器上的设定信息中获取。In practice, the characteristics of each service flow in the service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow can be obtained from the information sent by the node, or through the user on the central controller Obtained from the setting information of .
另外,参照图2,在一实施例中,图1所示实施例中的步骤130,包括但不限于有以下步骤:In addition, referring to FIG. 2, in one embodiment, step 130 in the embodiment shown in FIG. 1 includes but is not limited to the following steps:
步骤210,基于有向图,确定有向图中每个顶点对应的业务流、当前节点和后序节点,其中,当前节点为业务流的路径上相邻两个节点中的前一个,后序节点为业务流的路径上相邻两个节点中的后一个; Step 210, based on the directed graph, determine the service flow, current node, and subsequent node corresponding to each vertex in the directed graph, wherein the current node is the previous one of the two adjacent nodes on the path of the service flow, and the subsequent node The node is the latter of the two adjacent nodes on the path of the service flow;
步骤220,根据有向图、业务流的特性和节点的特性,确定业务流的端到端时延; Step 220, determine the end-to-end delay of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the nodes;
步骤230,根据当前节点、后序节点和节点的特性,确定业务流的最小转发时延; Step 230, according to the characteristics of the current node, the subsequent node and the node, determine the minimum forwarding delay of the service flow;
步骤240,根据有向图和业务流的特性,确定当前节点对应的业务流的累积传输时延; Step 240, according to the characteristics of the directed graph and the service flow, determine the cumulative transmission delay of the service flow corresponding to the current node;
步骤250,根据有向图和最小转发时延,确定当前节点对应的业务流的最小传输时延; Step 250, according to the directed graph and the minimum forwarding delay, determine the minimum transmission delay of the service flow corresponding to the current node;
步骤260,根据业务流的端到端时延、业务流的最小转发时延、业务流的累积传输时延和业务流的最小传输时延,确定业务流的紧急程度。Step 260: Determine the urgency of the service flow according to the end-to-end delay of the service flow, the minimum forwarding delay of the service flow, the cumulative transmission delay of the service flow, and the minimum transmission delay of the service flow.
需要说明的是,业务流的紧急程度的计算过程如下:It should be noted that the calculation process of the urgency of the business flow is as follows:
设业务流f i当前节点为v k,下一跳的后序节点为v j;根据有向图和业务流的特性,确定业务流f i的端到端时延f i.delay endtoend;根据当前节点、后序节点和节点的特性,确定业务流f i在当前节点v k转发到后序节点v j的最小转发时延
Figure PCTCN2022124184-appb-000028
根据有向图和业务流的特性,确定业务流f i从发送终端到达当前节点v k的累积传输时延为
Figure PCTCN2022124184-appb-000029
根据有向图和最小转发时延,确定业务流f i的最小传输时延
Figure PCTCN2022124184-appb-000030
是指根据业务流f i的路径,业务流f i在当前节点v k,如果之后每一跳均按照最小转发时延计算,所需的最小传输时延,
Figure PCTCN2022124184-appb-000031
可通过业务流f i的路由逐跳减少一个最小转发时延计算,在发送终端时的初始值为“每一跳均按照最小转发时延计算所需的端到端时延”;最后,计算业务流f i在边[v k,v j]上的紧急程度,计算公式为:
Let the current node of the business flow f i be v k , and the subsequent node of the next hop is v j ; according to the characteristics of the directed graph and the business flow, determine the end-to-end delay f i .delay endtoend of the business flow f i ; according to The characteristics of the current node, the subsequent node and the node, determine the minimum forwarding delay of the service flow f i forwarded from the current node v k to the subsequent node v j
Figure PCTCN2022124184-appb-000028
According to the characteristics of the directed graph and the service flow, determine the cumulative transmission delay of the service flow f i from the sending terminal to the current node v k as
Figure PCTCN2022124184-appb-000029
According to the directed graph and the minimum forwarding delay, determine the minimum transmission delay of the service flow f i
Figure PCTCN2022124184-appb-000030
Refers to the path of the service flow f i , if the service flow f i is at the current node v k , if each subsequent hop is calculated according to the minimum forwarding delay, the required minimum transmission delay,
Figure PCTCN2022124184-appb-000031
The minimum forwarding delay calculation can be reduced hop by hop through the route of the service flow f i , and the initial value when sending the terminal is "each hop calculates the required end-to-end delay according to the minimum forwarding delay"; finally, calculate The urgency of business flow f i on edge [v k , v j ], the calculation formula is:
Figure PCTCN2022124184-appb-000032
Figure PCTCN2022124184-appb-000032
其中,
Figure PCTCN2022124184-appb-000033
为业务流的紧急程度,f i.delay endtoend为业务流的端到端时延,
Figure PCTCN2022124184-appb-000034
为业务流的最小转发时延,
Figure PCTCN2022124184-appb-000035
为业务流的累积传输时延,
Figure PCTCN2022124184-appb-000036
为业务流的最小传输时延。
in,
Figure PCTCN2022124184-appb-000033
is the urgency of the service flow, f i .delay endtoend is the end-to-end delay of the service flow,
Figure PCTCN2022124184-appb-000034
is the minimum forwarding delay of the service flow,
Figure PCTCN2022124184-appb-000035
is the cumulative transmission delay of the service flow,
Figure PCTCN2022124184-appb-000036
is the minimum transmission delay of the service flow.
可以理解的是,紧急程度反映了业务流可用于调度的时间余量,
Figure PCTCN2022124184-appb-000037
的数值越小越紧急,当
Figure PCTCN2022124184-appb-000038
时,如果f i还未到达终端,说明该业务流不可调度。
It can be understood that the degree of urgency reflects the time margin that the business flow can be used for scheduling,
Figure PCTCN2022124184-appb-000037
The smaller the value is, the more urgent it is, when
Figure PCTCN2022124184-appb-000038
, if f i has not reached the terminal, it means that the service flow cannot be scheduled.
另外,参照图3,在一实施例中,图1所示实施例中的步骤140,包括但不限于有以下步骤:In addition, referring to FIG. 3, in one embodiment, step 140 in the embodiment shown in FIG. 1 includes but is not limited to the following steps:
步骤310,对有向图进行拓扑排序,得到第一拓扑序列; Step 310, topologically sort the directed graph to obtain a first topological sequence;
步骤320,当确定第一拓扑序列的序列点的数量小于有向图的顶点的数量,根据第一拓扑序列和有向图确定剩余有向图; Step 320, when it is determined that the number of sequence points of the first topological sequence is less than the number of vertices of the directed graph, determining the remaining directed graph according to the first topological sequence and the directed graph;
步骤330,将剩余有向图中各个顶点对应的业务流中紧急程度最低的业务流作为去环业务流; Step 330, taking the service flow with the lowest degree of urgency among the service flows corresponding to each vertex in the remaining directed graph as the loop-free service flow;
步骤340,根据去环业务流和剩余有向图确定去环有向图; Step 340, determine the de-looped directed graph according to the de-looped service flow and the remaining directed graph;
步骤350,对去环有向图进行拓扑排序,得到第二拓扑序列; Step 350, perform topological sorting on the dering directed graph to obtain a second topological sequence;
步骤360,基于业务流的特性和节点的特性,根据第一拓扑序列、第二拓扑序列和去环业务流确定业务流的发送时间。 Step 360, based on the characteristics of the service flow and the characteristics of the node, determine the sending time of the service flow according to the first topology sequence, the second topology sequence and the de-looped service flow.
需要说明的是,对有向图进行拓扑排序的步骤是如下:假设L是存放结果的列表;(1)先找到有向图中入度为零的顶点,将上述顶点放到L中;(2)然后在有向图中删除上述顶点以及以上述顶点作为起点的有向边;重复(1)(2),直至有向图中不存在入度为零的顶点;然后,将L作为第一拓扑序列,当L中的元素个数和有向图的顶点总数相同时,说明有向图不存在环路,否则存在环路;若有向图存在环路,在有向图中删除第一拓扑序列中的顶点,得到剩余有向图。It should be noted that the steps of topologically sorting a directed graph are as follows: Assume that L is a list for storing results; (1) first find a vertex with zero in-degree in the directed graph, and put the above-mentioned vertex into L; ( 2) Then delete the above-mentioned vertex and the directed edge with the above-mentioned vertex as the starting point in the directed graph; repeat (1) (2) until there is no vertex whose in-degree is zero in the directed graph; then, use L as the first A topological sequence, when the number of elements in L is the same as the total number of vertices in the directed graph, it means that there is no cycle in the directed graph, otherwise there is a cycle; if there is a cycle in the directed graph, delete the first one in the directed graph vertices in a topological sequence to obtain the remaining directed graph.
可以理解的是,第一拓扑序列和第二拓扑序列都反映了数据链路间的先后关系,从而确定调度业务流的先后顺序,利用第一拓扑序列能够确定有向图是否存在环路,若有向图无环路,仅利用第一拓扑序列就能完成业务流的调度;若有向图存在环路,就需要先利用去环业务流对有向图进行破环处理,得到去环有向图,然后在第一拓扑序列、第二拓扑序列和去环业务流共同作用下,对业务流进行调度,避免业务流在传输过程中发生冲突,破环处理如下:It can be understood that both the first topology sequence and the second topology sequence reflect the sequence relationship between data links, so as to determine the sequence of scheduling service flows, and use the first topology sequence to determine whether there is a loop in the directed graph. The directed graph has no loops, and the business flow scheduling can be completed only by using the first topological sequence; Then, under the joint action of the first topology sequence, the second topology sequence and the ring-free service flow, the service flow is scheduled to avoid conflicts of the service flow during transmission. The loop breaking process is as follows:
步骤S31:计算有向图G′(V′,E′)中环路所关联的业务流的紧急程度,将紧急程度最小的业务流作为去环业务流,例如为f iStep S31: Calculate the urgency of the service flow associated with the loop in the directed graph G'(V', E'), and use the service flow with the least urgency as the de-loop service flow, for example, f i ;
步骤S32:记录f i在环路上的路径,路径上的起点记为
Figure PCTCN2022124184-appb-000039
将路径上节点的入度减1;
Step S32: Record the path of f i on the loop, and the starting point on the path is denoted as
Figure PCTCN2022124184-appb-000039
Decrease the in-degree of nodes on the path by 1;
重复步骤S31和步骤S32直到环路上出现入度为0的节点,这时环已破;Repeat steps S31 and S32 until a node with an in-degree of 0 appears on the ring, at this moment the ring has been broken;
步骤S33:在已破环的G′(V′,E′)中继续输出拓扑序列,当输出到破环时所选业务流的起点,比如f i的节点
Figure PCTCN2022124184-appb-000040
时,恢复f i路径上节点的入度即节点的入度加1,以便调度f i沿路径节点的发送时间;
Step S33: Continue to output the topological sequence in the broken loop G'(V', E'), when the output is to the starting point of the selected service flow when the broken loop is broken, such as the node of fi
Figure PCTCN2022124184-appb-000040
When , restore the in-degree of the node on the path f i , that is, add 1 to the in-degree of the node, so as to schedule the sending time of nodes along the path of f i ;
步骤S34:由于去环业务流f i被用于破环处理,因此当调度f i在节点中的发送时间时,部分业务流的发送时间已经确定,故f i在节点中的发送时间不会改变已经调度的业务流的发送时间点,仅与未调度的业务流按照冲突解决机制确定发送时间点,同时所选发送时间点也不能与已经调度的业务流发生冲突; Step S34: Since the de-loop service flow f i is used for loop breaking processing, when scheduling the sending time of f i in the node, the sending time of part of the service flow has been determined, so the sending time of f i in the node will not Change the sending time point of the scheduled service flow, and only determine the sending time point with the unscheduled service flow according to the conflict resolution mechanism, and at the same time, the selected sending time point cannot conflict with the scheduled service flow;
步骤S31中,处理的业务流数最多为|F|,排序所需的时间为O(|F|*log(|F|));In step S31, the maximum number of processed business flows is |F|, and the time required for sorting is O(|F|*log(|F|));
步骤S32中,最多遍历所有的业务流,并在其路径上做入度减1操作,故时间复杂度为O(|F|*|E|);In step S32, at most all business flows are traversed, and the in-degree minus 1 operation is performed on the path, so the time complexity is O(|F|*|E|);
步骤S33中,仍然是拓扑排序,故时间复杂度为O(|F|*|E|);In step S33, it is still topological sorting, so the time complexity is O(|F|*|E|);
步骤S34中,沿拓扑序列进行调度,拓扑序列的长度最多为|E|,每个节点上解决冲突的时间复杂度为
Figure PCTCN2022124184-appb-000041
故步骤S34的时间复杂度为
Figure PCTCN2022124184-appb-000042
Figure PCTCN2022124184-appb-000043
In step S34, scheduling is performed along the topological sequence, the length of the topological sequence is at most |E|, and the time complexity of resolving conflicts on each node is
Figure PCTCN2022124184-appb-000041
Therefore, the time complexity of step S34 is
Figure PCTCN2022124184-appb-000042
Figure PCTCN2022124184-appb-000043
因此,破环处理的时间复杂度为
Figure PCTCN2022124184-appb-000044
Therefore, the time complexity of breaking the loop is
Figure PCTCN2022124184-appb-000044
另外,参照图4,在一实施例中,图3所示实施例中的步骤360,包括但不限于有以下步骤:In addition, referring to FIG. 4, in one embodiment, step 360 in the embodiment shown in FIG. 3 includes but is not limited to the following steps:
步骤410,根据第一拓扑序列、第二拓扑序列和去环业务流确定总拓扑序列; Step 410, determining the total topology sequence according to the first topology sequence, the second topology sequence and the de-looped service flow;
步骤420,按照总拓扑序列的顺序遍历总拓扑序列中每个序列点,对序列点对应的业务流进行调度处理,以确定业务流的发送时间。 Step 420, traverse each sequence point in the total topology sequence according to the order of the total topology sequence, and perform scheduling processing on the service flow corresponding to the sequence point, so as to determine the sending time of the service flow.
可以理解的是,根据数据链路间的先后关系及业务流的紧急程度,将第一拓扑序列、第二拓扑序列和在剩余有向图上去环业务流对应的顶点依次连接,得到总拓扑序列,能够对业务流进行有效的调度。It can be understood that, according to the sequence relationship between the data links and the urgency of the business flow, the first topological sequence, the second topological sequence and the vertices corresponding to the de-looped business flow on the remaining directed graph are connected in sequence to obtain the total topological sequence , which can effectively schedule business flows.
另外,参照图5,在一实施例中,图4所示实施例中的步骤420,包括但不限于有以下步骤:In addition, referring to FIG. 5, in one embodiment, step 420 in the embodiment shown in FIG. 4 includes but is not limited to the following steps:
步骤510,基于有向图,从业务流集合中确定冲突业务流和非冲突业务流,其中,冲突业务流为有向图中入度大于一的顶点所对应的业务流,非冲突业务流为业务流集合中除冲突业务流之外的业务流;Step 510, based on the directed graph, determine the conflicting business flow and the non-conflicting business flow from the business flow set, wherein the conflicting business flow is the business flow corresponding to the vertex whose indegree is greater than one in the directed graph, and the non-conflicting business flow is Service flows other than conflicting service flows in the set of service flows;
步骤520,按照总拓扑序列的顺序遍历总拓扑序列中每个序列点,当确定总拓扑序列中的序列点对应的业务流为冲突业务流,基于业务流的紧急程度、有向图、业务流的特性和节点的特性,确定冲突业务流的发送时间;以及,当确定总拓扑序列中的序列点对应的业务流为非冲突业务流,将非冲突业务流的发送时间设置为预设的初始值。 Step 520, traverse each sequence point in the total topology sequence according to the order of the total topology sequence, and when it is determined that the service flow corresponding to the sequence point in the total topology sequence is a conflicting service flow, based on the urgency of the service flow, the directed graph, and the service flow characteristics and node characteristics, determine the sending time of the conflicting service flow; and, when it is determined that the service flow corresponding to the sequence point in the total topology sequence is a non-conflicting service flow, set the sending time of the non-conflicting service flow to the preset initial value.
可以理解的是,按照总拓扑序列的顺序遍历总拓扑序列中每个序列点的步骤之前,需要判断每个业务流为冲突业务流还是非冲突业务流;当调度至非冲突业务流时,将非冲突业务流的发送时间设置为初始值;当调度至冲突业务流时,根据业务流的紧急程度、业务流的特性和节点的特性调节冲突业务流的发送时间,从而保证调度处理的有效进行。It can be understood that before traversing each sequence point in the total topology sequence in the order of the total topology sequence, it is necessary to determine whether each service flow is a conflicting service flow or a non-conflicting service flow; when scheduling a non-conflicting service flow, the The sending time of the non-conflicting service flow is set to the initial value; when the conflicting service flow is scheduled, the sending time of the conflicting service flow is adjusted according to the urgency of the service flow, the characteristics of the service flow and the characteristics of the node, so as to ensure the effective scheduling process .
另外,参照图6,在一实施例中,图5所示实施例中基于业务流的紧急程度、业务流的特性和节点的特性,确定冲突业务流的发送时间的步骤,包括但不限于有以下步骤:In addition, referring to FIG. 6, in one embodiment, the step of determining the sending time of the conflicting service flow based on the urgency of the service flow, the characteristics of the service flow, and the characteristics of the node in the embodiment shown in FIG. 5 includes but is not limited to The following steps:
步骤610,基于业务流的紧急程度,对冲突业务流进行排序; Step 610, sort the conflicting service flows based on the urgency of the service flows;
步骤620,根据冲突业务流、有向图和业务流的特性,确定冲突业务流对应的每个节点中冲突业务流的累积传输时延; Step 620, according to the conflicting service flow, the directed graph and the characteristics of the service flow, determine the cumulative transmission delay of the conflicting service flow in each node corresponding to the conflicting service flow;
步骤630,根据冲突业务流、有向图和节点的特性,确定冲突业务流对应的每个节点中冲突业务流的最小转发时延; Step 630, according to the conflicting service flow, the directed graph and the characteristics of the nodes, determine the minimum forwarding delay of the conflicting service flow in each node corresponding to the conflicting service flow;
步骤640,根据冲突业务流的累积传输时延和冲突业务流的最小转发时延,确定冲突业务流对应的每个节点中冲突业务流的初始发送时间; Step 640, according to the cumulative transmission delay of the conflicting service flow and the minimum forwarding delay of the conflicting service flow, determine the initial sending time of the conflicting service flow in each node corresponding to the conflicting service flow;
步骤650,根据业务流的特性和节点的特性,确定时间窗口; Step 650, determine the time window according to the characteristics of the service flow and the characteristics of the nodes;
步骤660,基于冲突业务流的排序,根据冲突业务流的初始发送时间和时间窗口,确定冲突业务流的发送时间。 Step 660, based on the sorting of the conflicting service flows, determine the sending time of the conflicting service flows according to the initial sending time and the time window of the conflicting service flows.
可以理解的是,当调度至冲突业务流时,利用上述的冲突解决机制进行调度处理,假设有n条冲突业务流,先按照业务流的紧急程度对n条冲突业务流进行排序:It can be understood that, when scheduling conflicting service flows, the above conflict resolution mechanism is used for scheduling processing. Assuming that there are n conflicting service flows, the n conflicting service flows are first sorted according to the urgency of the service flows:
f 1.urgency>,…,f i.urgency>,…,f n.urgency; f 1 .urgency >,...,f i .urgency >,...,f n .urgency;
然后,确定冲突业务流的累积传输时延
Figure PCTCN2022124184-appb-000045
接着确定冲突业务流的最小转发时延
Figure PCTCN2022124184-appb-000046
进而确定冲突业务流的初始发送时间
Figure PCTCN2022124184-appb-000047
即步骤S15中的原来的发送时间,计算公式如下:
Then, determine the cumulative transmission delay of the conflicting traffic flow
Figure PCTCN2022124184-appb-000045
Then determine the minimum forwarding delay of the conflicting traffic flow
Figure PCTCN2022124184-appb-000046
Then determine the initial sending time of the conflicting traffic flow
Figure PCTCN2022124184-appb-000047
That is, the original sending time in step S15, the calculation formula is as follows:
Figure PCTCN2022124184-appb-000048
Figure PCTCN2022124184-appb-000048
然后,根据业务流的特性确定业务流的报文大小,根据节点的特性确定带宽,业务流的报文大小除以带宽得到时间窗口T wThen, determine the message size of the service flow according to the characteristics of the service flow, determine the bandwidth according to the characteristics of the node, divide the message size of the service flow by the bandwidth to obtain the time window T w ;
最后,基于冲突业务流的排序,确定冲突业务流的发送时间,公式如下:Finally, based on the sorting of the conflicting business flows, determine the sending time of the conflicting business flows, the formula is as follows:
Figure PCTCN2022124184-appb-000049
Figure PCTCN2022124184-appb-000049
在冲突业务流的排序中,若待处理的冲突业务流之前存在紧急程度较高的冲突业务流,将待处理的冲突业务流的初始发送时间
Figure PCTCN2022124184-appb-000050
加一个时间窗口T w,更新待处理的冲突业务流的发送时间。
In the sorting of conflicting service flows, if there is a conflicting service flow with a high degree of urgency before the conflicting service flow to be processed, the initial sending time of the conflicting service flow to be processed
Figure PCTCN2022124184-appb-000050
A time window T w is added to update the sending time of the conflicting service flow to be processed.
参照图7,图7是本申请另一个实施例提供的业务流计算紧急程度所需各部分时延的示意图。Referring to FIG. 7 , FIG. 7 is a schematic diagram of time delays required for calculating the urgency of service flows according to another embodiment of the present application.
参照图8至图11,图8是本申请另一个实施例提供的节点连接图的示意图,图9是本申请另一个实施例提供的有向图的示意图,图10是本申请另一个实施例提供的剩余有向图的示意图,图11是本申请另一个实施例提供的去环有向图的示意图。Referring to Figures 8 to 11, Figure 8 is a schematic diagram of a node connection graph provided by another embodiment of the present application, Figure 9 is a schematic diagram of a directed graph provided by another embodiment of the present application, and Figure 10 is another embodiment of the present application A schematic diagram of the remaining directed graph is provided, and FIG. 11 is a schematic diagram of a de-ringed directed graph provided by another embodiment of the present application.
需要说明的是,基于业务流集合F构建有向图G′(V′,E′)的步骤如下:It should be noted that the steps of constructing a directed graph G'(V', E') based on a business flow set F are as follows:
对于每条业务流f i∈F,设路由为f i.path=[[v 0,v 1],…,[v k,v l],[v l,v m],…,[v j-1,v j]], For each service flow f i ∈ F, set the route as f i .path=[[v 0 ,v 1 ],…,[v k ,v l ],[v l ,v m ],…,[v j -1 , v j ]],
(1)将f i.path中的每一条边作为G′(V′)中的顶点,例如将[v k,v l]作为顶点
Figure PCTCN2022124184-appb-000051
(1) Take each edge in f i .path as a vertex in G′(V′), for example, take [v k , v l ] as a vertex
Figure PCTCN2022124184-appb-000051
(2)相邻两条边,例如[v k,v l]和[v l,v m],它们在G′(V′)中的两个顶点
Figure PCTCN2022124184-appb-000052
Figure PCTCN2022124184-appb-000053
有一条有向边
Figure PCTCN2022124184-appb-000054
(2) Two adjacent edges, such as [v k , v l ] and [v l , v m ], their two vertices in G′(V′)
Figure PCTCN2022124184-appb-000052
and
Figure PCTCN2022124184-appb-000053
has a directed edge
Figure PCTCN2022124184-appb-000054
有向图G′(V′,E′)中顶点的个数是O(|E|);由于每条业务流的相邻两条边在G′有一条边,因而有向图G′(V′,E′)中边的数量为O(|F|*|E|);因此,遍历每一条业务流构建有向图G′(V′,E′)的时间复杂度为O(|F|*|E|),有向图G′(V′,E′)上进行拓扑排序的时间复杂度为O(V′+E′)=O(|F|*|E|),拓扑排序的输出序列就是拓扑序列,该序列反映了数据链路间调度的先后关系,例如f i中相邻的两条链路[v k,v l]和[v l,v m],在有向图G′(V′,E′)中有一条有向边
Figure PCTCN2022124184-appb-000055
Figure PCTCN2022124184-appb-000056
Figure PCTCN2022124184-appb-000057
因此在拓扑排序中
Figure PCTCN2022124184-appb-000058
Figure PCTCN2022124184-appb-000059
的前面,调度时就先调度顶点
Figure PCTCN2022124184-appb-000060
再调度顶点
Figure PCTCN2022124184-appb-000061
The number of vertices in the directed graph G'(V', E') is O(|E|); since the two adjacent edges of each business flow have one edge in G', the directed graph G'( The number of edges in V′, E′) is O(|F|*|E|); therefore, the time complexity of traversing each business flow to construct a directed graph G′(V′, E′) is O(| F|*|E|), the time complexity of topological sorting on the directed graph G'(V', E') is O(V'+E')=O(|F|*|E|), the topology The sorted output sequence is the topological sequence, which reflects the scheduling relationship between data links. For example, two adjacent links [v k , v l ] and [v l , v m ] in f i have There is a directed edge in the directed graph G'(V', E')
Figure PCTCN2022124184-appb-000055
from
Figure PCTCN2022124184-appb-000056
arrive
Figure PCTCN2022124184-appb-000057
So in topological sort
Figure PCTCN2022124184-appb-000058
exist
Figure PCTCN2022124184-appb-000059
In front of , when scheduling, schedule the vertices first
Figure PCTCN2022124184-appb-000060
reschedule vertices
Figure PCTCN2022124184-appb-000061
可以理解的是,设在如图8所示的节点连接图中有6条业务流,分别为:It can be understood that there are 6 service flows in the node connection diagram shown in Figure 8, which are:
f 1=[[v 7,v 1],[v 1,v 2],[v 2,v 3],[v 3,v 9]], f 1 =[[v 7 ,v 1 ],[v 1 ,v 2 ],[v 2 ,v 3 ],[v 3 ,v 9 ]],
f 2=[[v 8,v 2],[v 2,v 3],[v 3,v 4],[v 4,v 10]], f 2 =[[v 8 ,v 2 ],[v 2 ,v 3 ],[v 3 ,v 4 ],[v 4 ,v 10 ]],
f 3=[[v 9,v 3],[v 3,v 4],[v 4,v 5],[v 5,v 11]], f 3 =[[v 9 ,v 3 ],[v 3 ,v 4 ],[v 4 ,v 5 ],[v 5 ,v 11 ]],
f 4=[[v 10,v 4],[v 4,v 5],[v 5,v 6],[v 6,v 12]], f 4 =[[v 10 ,v 4 ],[v 4 ,v 5 ],[v 5 ,v 6 ],[v 6 ,v 12 ]],
f 5=[[v 11,v 5],[v 5,v 6],[v 6,v 1],[v 1,v 7]], f 5 =[[v 11 ,v 5 ],[v 5 ,v 6 ],[v 6 ,v 1 ],[v 1 ,v 7 ]],
f 6=[[v 12,v 6],[v 6,v 1],[v 1,v 2],[v 2,v 8]], f 6 =[[v 12 ,v 6 ],[v 6 ,v 1 ],[v 1 ,v 2 ],[v 2 ,v 8 ]],
由业务流的路径构建出如图9所示的有向图G′(V′,E′),对有向图G′(V′,E′)进行拓扑排序,得到第一拓扑序列
Figure PCTCN2022124184-appb-000062
有向图G′(V′,E′)输出第一拓扑序列后,得到如图10所示的剩余有向图,计算剩余有向图中环路关联的6条业务流的紧急程度,将紧急程度最小的业务流作为去环业务流,例如为f 1,利用去环业务流f 1对剩余有向图进行破环处理,得到如图11所示的去环有向图,对去环有向图进行拓扑排序,得到第二拓扑序列
Figure PCTCN2022124184-appb-000063
在剩余有向图上去环业务流对应的顶点为
Figure PCTCN2022124184-appb-000064
将第一拓扑序列、第二拓扑序列、去环业务流对应的顶点依次连接,进而确定出总拓扑序列
Figure PCTCN2022124184-appb-000065
按照总拓扑序列的顺序遍历总拓扑序列中每个序列点,对序列点对应的业务流进行调度处理,以确定业务流的发送时间。
Construct the directed graph G'(V',E') shown in Figure 9 from the path of the business flow, and perform topological sorting on the directed graph G'(V',E') to obtain the first topological sequence
Figure PCTCN2022124184-appb-000062
After the directed graph G′(V′,E′) outputs the first topology sequence, the remaining directed graph shown in Figure 10 is obtained, and the urgency of the six service flows associated with the loops in the remaining directed graph is calculated, and the urgent The service flow with the smallest degree is used as the de-ring service flow, for example, f 1 , use the de-ring service flow f 1 to perform ring-breaking processing on the remaining directed graph, and obtain the de-ring directed graph as shown in Figure 11, which is useful for de-ring Perform topological sorting on the graph to obtain the second topological sequence
Figure PCTCN2022124184-appb-000063
The vertex corresponding to the ring-free traffic flow on the remaining directed graph is
Figure PCTCN2022124184-appb-000064
Connect the vertices corresponding to the first topological sequence, the second topological sequence, and the de-looped service flow in sequence, and then determine the total topological sequence
Figure PCTCN2022124184-appb-000065
Each sequence point in the total topology sequence is traversed according to the order of the total topology sequence, and the service flow corresponding to the sequence point is scheduled and processed to determine the sending time of the service flow.
值得注意的是,以第二拓扑序列的
Figure PCTCN2022124184-appb-000066
Figure PCTCN2022124184-appb-000067
为例,由于
Figure PCTCN2022124184-appb-000068
Figure PCTCN2022124184-appb-000069
在节点
Figure PCTCN2022124184-appb-000070
输出后入度均为0,因此,
Figure PCTCN2022124184-appb-000071
Figure PCTCN2022124184-appb-000072
没有调度上的先后关系,
Figure PCTCN2022124184-appb-000073
也是可以的。
It is worth noting that with the second topological sequence of
Figure PCTCN2022124184-appb-000066
and
Figure PCTCN2022124184-appb-000067
For example, since
Figure PCTCN2022124184-appb-000068
and
Figure PCTCN2022124184-appb-000069
at node
Figure PCTCN2022124184-appb-000070
The backward in-degree of the output is 0, therefore,
Figure PCTCN2022124184-appb-000071
and
Figure PCTCN2022124184-appb-000072
There is no scheduling relationship,
Figure PCTCN2022124184-appb-000073
it is also fine.
另外,参照图12,在一实施例中,图3所示实施例中的步骤310之后,还包括但不限于有以下步骤:In addition, referring to FIG. 12 , in one embodiment, after step 310 in the embodiment shown in FIG. 3 , it also includes but is not limited to the following steps:
步骤1210,当确定第一拓扑序列的序列点的数量等于有向图的顶点的数量,基于业务流的特性和节点的特性,根据第一拓扑序列确定业务流的发送时间。Step 1210, when it is determined that the number of sequence points in the first topology sequence is equal to the number of vertices in the directed graph, based on the characteristics of the service flow and the characteristics of the nodes, determine the sending time of the service flow according to the first topology sequence.
可以理解的是,当确定第一拓扑序列的序列点的数量等于有向图的顶点的数量,相当于有向图无环路,此时,第一拓扑序列相当于步骤420中的总拓扑序列,采用步骤420的调度方法,就能确定业务流的发送时间。It can be understood that, when it is determined that the number of sequence points of the first topological sequence is equal to the number of vertices of the directed graph, which is equivalent to the directed graph without loops, at this moment, the first topological sequence is equivalent to the total topological sequence in step 420 , using the scheduling method in step 420, the sending time of the service flow can be determined.
另外,参照图13,在一实施例中,图1所示实施例中的步骤110之后,还包括但不限于有以下步骤:In addition, referring to FIG. 13 , in one embodiment, after step 110 in the embodiment shown in FIG. 1 , it also includes but is not limited to the following steps:
步骤1310,获取用户设定的时间槽; Step 1310, obtain the time slot set by the user;
步骤1320,基于时间槽,对业务流的特性和节点的特性进行初始化,其中,业务流的特性至少包括业务流的周期、报文长度和端到端时延,节点的特性至少包括节点中业务流的最小转发时延,初始化用于将业务流的周期、报文长度、端到端时延和最小转发时延转化为时间槽的整数倍。 Step 1320, based on the time slot, initialize the characteristics of the service flow and the characteristics of the node, wherein the characteristics of the service flow include at least the period of the service flow, the length of the message and the end-to-end delay, and the characteristics of the node include at least the service in the node The minimum forwarding delay of the flow is initialized to convert the period of the service flow, the length of the packet, the end-to-end delay and the minimum forwarding delay into integer multiples of the time slot.
可以理解的是,时间槽是调度分配的最小时间单位,比如时间槽的大小设置为1us,即time_slot=1us;然后将业务流的周期、报文长度、端到端时延和最小转发时延转化为time_slot的整数倍:It can be understood that the time slot is the minimum time unit for scheduling allocation, for example, the size of the time slot is set to 1us, that is, time_slot=1us; Converted to an integer multiple of time_slot:
(1)业务流的周期:比如1ms,可以划分为1000个time_slot;(1) The period of business flow: for example, 1ms, which can be divided into 1000 time_slots;
(2)报文的长度:设为L,加上4字节的CRC+12字节的最小帧间间隔+7字节的前导码+1字节的帧起始符,实际长度为L+24字节;如果在端口速度为1Gbps情况下,它所占用的time_slot个数为
Figure PCTCN2022124184-appb-000074
其中,
Figure PCTCN2022124184-appb-000075
为上取整;
(2) The length of the message: set to L, plus 4 bytes of CRC+12 bytes of minimum inter-frame space+7 bytes of preamble+1 byte of frame start character, the actual length is L+ 24 bytes; if the port speed is 1Gbps, the number of time_slots it occupies is
Figure PCTCN2022124184-appb-000074
in,
Figure PCTCN2022124184-appb-000075
round up;
(3)业务流的端到端时延:设为delat end_to_end,它所占用的time_slot个数为
Figure PCTCN2022124184-appb-000076
其中,
Figure PCTCN2022124184-appb-000077
为下取整;
(3) End-to-end delay of business flow: set to delat end_to_end , the number of time_slots it occupies is
Figure PCTCN2022124184-appb-000076
in,
Figure PCTCN2022124184-appb-000077
rounded down;
(4)节点中业务流的最小转发时延:是指业务流由当前节点转发到后序节点所需的最小转发时延,计算如下:存储时延sdelay表示报文自第一比特被交换机接收到整个报文被存储到交换机缓存中的时间,转发延时fdelay表示自发送时间开始到交换机把报文的第一比特发送到链路上的时间,链路延时ldelay表示由于链路长度引起的时延,故节点中业务流的最小转发时延=sdelay+fdelay+ldelay,所占用的time_slot个数为
Figure PCTCN2022124184-appb-000078
其中,
Figure PCTCN2022124184-appb-000079
为上取整。
(4) The minimum forwarding delay of the service flow in the node: refers to the minimum forwarding delay required for the service flow to be forwarded from the current node to the subsequent node. The calculation is as follows: The storage delay sdelay indicates that the message is received by the switch from the first bit The time until the entire packet is stored in the switch cache, the forwarding delay fdelay represents the time from the sending time to the time when the switch sends the first bit of the packet to the link, and the link delay ldelay represents the time caused by the length of the link delay, so the minimum forwarding delay of the service flow in the node = sdelay+fdelay+ldelay, the number of time_slots occupied is
Figure PCTCN2022124184-appb-000078
in,
Figure PCTCN2022124184-appb-000079
Round up.
需要说明的是,设定时间槽后,在步骤S15中,若业务流发送冲突时,更新紧急程度较低的业务流的发送时间,计算紧急程度低的业务流f i的发送时间的公式修改为: It should be noted that after the time slot is set, in step S15, if there is a conflict in the delivery of the service flows, the sending time of the service flow with a lower urgency is updated, and the formula for calculating the sending time of the service flow fi with a lower urgency is modified for:
Figure PCTCN2022124184-appb-000080
Figure PCTCN2022124184-appb-000080
其中,
Figure PCTCN2022124184-appb-000081
in,
Figure PCTCN2022124184-appb-000081
由于时间槽是调度分配的最小时间单位,业务流的发送时间
Figure PCTCN2022124184-appb-000082
更新为原来的发送时间
Figure PCTCN2022124184-appb-000083
自加1。
Since the time slot is the smallest time unit for scheduling allocation, the sending time of the business flow
Figure PCTCN2022124184-appb-000082
Update to original sending time
Figure PCTCN2022124184-appb-000083
Increment by 1.
值得注意的是,时间槽的引入是为了简化调度,因为,解决冲突时,使业务流落在不同的时间槽,就不会发生冲突;如果不考虑时间槽,在解决冲突时就需要考虑报文的长度,调度更加复杂,因为业务流报文发送时的任何交叠都会引发冲突。It is worth noting that the introduction of time slots is to simplify scheduling, because when resolving conflicts, if the business flow falls in different time slots, there will be no conflicts; if time slots are not considered, the packet needs to be considered when resolving conflicts length, the scheduling is more complex, because any overlap when sending service flow packets will cause conflicts.
另外,参照图14,在一实施例中,图1所示实施例中的步骤110之后,还包括但不限于有以下步骤:In addition, referring to FIG. 14 , in one embodiment, after step 110 in the embodiment shown in FIG. 1 , it also includes but is not limited to the following steps:
步骤1410,基于业务流集合的特性和业务流的路径,将位于路径起点的节点作为发送终端,并确定发送终端对应的业务流的数量; Step 1410, based on the characteristics of the service flow set and the path of the service flow, use the node at the starting point of the path as the sending terminal, and determine the number of service flows corresponding to the sending terminal;
步骤1420,将发送终端与虚拟终端连接,其中,虚拟终端的数量等于发送终端对应的业务流的数量,虚拟终端与发送终端的链路长度为零; Step 1420, connecting the sending terminal to the virtual terminal, wherein the number of virtual terminals is equal to the number of service flows corresponding to the sending terminal, and the link length between the virtual terminal and the sending terminal is zero;
步骤1430,将虚拟终端的发送时间设置为预设的初始值。 Step 1430, setting the sending time of the virtual terminal to a preset initial value.
以及,参照图15,图15是本申请另一个实施例提供的发送终端连接虚拟终端的示意图。And, referring to FIG. 15 , FIG. 15 is a schematic diagram of a sending terminal connected to a virtual terminal provided by another embodiment of the present application.
需要说明的是,连接虚拟终端是为了处理发送终端有多条业务流的情况,能够将每条业务流的发送时间设置为零;如果不连接虚拟终端,当发送终端发送多条业务流,发送时间均设置为零,就会发送冲突,这时可以应用冲突解决机制进行处理。It should be noted that the connection to the virtual terminal is to deal with the situation that the sending terminal has multiple service flows, and the sending time of each service flow can be set to zero; if the virtual terminal is not connected, when the sending terminal sends multiple service flows, the sending If the time is set to zero, a conflict will be sent, and the conflict resolution mechanism can be applied for processing.
可以理解的是,基于本申请上述的实施例,时间触发调度方法的步骤如下:It can be understood that, based on the above-mentioned embodiments of the present application, the steps of the time-triggered scheduling method are as follows:
步骤S151:设置时间槽的大小time_slot;Step S151: set the size time_slot of the time slot;
步骤S152:根据time_slot的大小,将业务流的周期、报文长度和最小转发时延转化为time_slot的整数倍;Step S152: according to the size of the time_slot, convert the period of the service flow, the length of the message and the minimum forwarding delay into an integer multiple of the time_slot;
步骤S153:将发送终端连接虚拟终端,调整业务流的初始节点;Step S153: Connect the sending terminal to the virtual terminal, and adjust the initial node of the service flow;
步骤S154:遍历每一条业务流的路由,从发送终端到接收终端,构建如图9所示的有向图G′(V′,E′):比如路由f i.path=[[v 0,v 1],……,[v k,v l],[v l,v m],…,[v j-1,v j]],边[v k,v l]作为顶点
Figure PCTCN2022124184-appb-000084
相邻两条边[v k,v l]和[v l,v m]对应G′(V′,E′)中两个顶点
Figure PCTCN2022124184-appb-000085
Figure PCTCN2022124184-appb-000086
它们之间有一条有向边
Figure PCTCN2022124184-appb-000087
Step S154: traverse the route of each service flow, from the sending terminal to the receiving terminal, construct a directed graph G'(V',E') as shown in Figure 9: for example, route f i .path=[[v 0 , v 1 ],...,[v k ,v l ],[v l ,v m ],...,[v j-1 ,v j ]], edge [v k ,v l ] as a vertex
Figure PCTCN2022124184-appb-000084
Two adjacent edges [v k , v l ] and [v l , v m ] correspond to two vertices in G′(V′,E′)
Figure PCTCN2022124184-appb-000085
and
Figure PCTCN2022124184-appb-000086
There is a directed edge between them
Figure PCTCN2022124184-appb-000087
步骤S155:对有向图G′(V′,E′)进行拓扑排序,输出拓扑序列;Step S155: topologically sort the directed graph G'(V', E'), and output the topological sequence;
步骤S156:设置业务流发送终端的发送时间均为0,然后沿拓扑序列遍历每一条边上的业务流,按照上述的冲突解决机制解决冲突,拓扑序列保证了调度当前边上业务流时,这些业务流的前序边均已经被调度;Step S156: Set the sending time of the service flow sending terminal to 0, then traverse the service flow on each edge along the topological sequence, and resolve the conflict according to the above-mentioned conflict resolution mechanism. The topological sequence ensures that when the service flow on the current edge is scheduled, these The preceding edges of the service flow have been scheduled;
步骤S157:执行完步骤S156如果还有业务流未调度完成,说明有向图G′(V′,E′)中出现环路,需要对有向图G′(V′,E′)进行破环处理;Step S157: After executing step S156, if there are still unscheduled business flows, it means that there is a loop in the directed graph G'(V', E'), and the directed graph G'(V', E') needs to be broken ring processing;
步骤S158:根据终端发送时间调节定理,调整发送终端中业务流的发送时间;Step S158: Adjust the sending time of the service flow in the sending terminal according to the terminal sending time adjustment theorem;
可以理解的是,本申请上述实施例的时间触发调度方法的时间复杂度的计算如下:It can be understood that the calculation of the time complexity of the time-triggered scheduling method in the above embodiments of the present application is as follows:
步骤S151、步骤S152进行算法参数的初始化,时间复杂度为常数;Steps S151 and S152 initialize algorithm parameters, and the time complexity is constant;
步骤S153通过虚拟终端为每一条业务流引入一个发送终端,时间复杂度为O(|F|);Step S153 introduces a sending terminal for each service flow through the virtual terminal, and the time complexity is O(|F|);
步骤S154构造有向图G′(V′,E′),时间复杂度为O(|F|*|E|);Step S154 constructs a directed graph G'(V', E'), with a time complexity of O(|F|*|E|);
步骤S155在G′(V′,E′)上进行拓扑排序,时间复杂度为O(V′+E′)=O(|F|*|E|);Step S155 performs topological sorting on G'(V', E'), and the time complexity is O(V'+E')=O(|F|*|E|);
步骤S156沿拓扑序列进行业务流调度,时间复杂度为
Figure PCTCN2022124184-appb-000088
Figure PCTCN2022124184-appb-000089
Step S156 performs business flow scheduling along the topology sequence, and the time complexity is
Figure PCTCN2022124184-appb-000088
Figure PCTCN2022124184-appb-000089
步骤S157破环调度的时间复杂度为
Figure PCTCN2022124184-appb-000090
The time complexity of step S157 breaking the loop scheduling is
Figure PCTCN2022124184-appb-000090
步骤S158最多对每条业务流沿路由都调整一遍,故时间复杂度为O(|F|*|E|);Step S158 adjusts each service flow along the route at most, so the time complexity is O(|F|*|E|);
因此,时间触发调度方法的时间复杂度为
Figure PCTCN2022124184-appb-000091
是多项式时间复杂度,相对于指数时间复杂度的可满足性求解器求解方法,本申请实施例的时间触发调度方法的时间复杂度较低,有效加快业务流的调度。
Therefore, the time complexity of the time-triggered scheduling method is
Figure PCTCN2022124184-appb-000091
It is a polynomial time complexity. Compared with the satisfiability solver solution method with exponential time complexity, the time-triggered scheduling method in the embodiment of the present application has a lower time complexity, which effectively speeds up the scheduling of service flows.
如图16所示,图16是本申请另一个实施例提供的一种时间触发调度方法的流程图。该时间触发调度方法可以应用于节点,该时间触发调度方法包括但不限于如下步骤:As shown in FIG. 16 , FIG. 16 is a flowchart of a time-triggered scheduling method provided by another embodiment of the present application. The time-triggered scheduling method can be applied to nodes, and the time-triggered scheduling method includes but not limited to the following steps:
步骤1610,接收来自中心控制器的发送时间,其中,发送时间由有向图和业务流的紧急程度而确定,有向图由业务流的路径而构建,业务流的紧急程度由中心控制器获取的预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个节点的特性而确定; Step 1610, receiving the sending time from the central controller, wherein the sending time is determined by the directed graph and the urgency of the business flow, the directed graph is constructed by the path of the business flow, and the urgency of the business flow is obtained by the central controller determined by the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each node on the path of the service flow;
步骤1620,按照发送时间传输业务流集合中对应的业务流。 Step 1620, transmit the corresponding service flow in the service flow set according to the sending time.
可以理解的是,节点会监听中心控制器的配置信息,当节点接收到包含发送时间的配置信息后,节点解释执行这些配置,在精确的时间点上发送业务流;基于此,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。It is understandable that the node will monitor the configuration information of the central controller. When the node receives the configuration information including the sending time, the node interprets and executes these configurations, and sends the service flow at a precise time point; based on this, the service flow can be passed Construct a directed graph based on the path of the business flow, and then determine the urgency of the business flow. Compared with the solution method of the satisfiability solver with exponential time complexity, the sending time of the business flow can be determined through the directed graph and the urgency of the business flow, which can reduce the Time complexity, effectively speeding up the scheduling of business flows, providing an effective guarantee for a series of functions such as online scheduling and dynamic configuration of time-sensitive networks, and being able to precisely control the sending time of business flows, providing a basis for exploring better services with better service quality Stream scheduling results provide the possibility of precise regulation.
参照图17,图17是本申请另一个实施例提供的在802.1Qcc中的实施示意图。Referring to FIG. 17 , FIG. 17 is a schematic diagram of implementation in 802.1Qcc provided by another embodiment of the present application.
可以理解的是,节点包括但不限于发送终端、接收终端和交换机;中心控制器在确定每个业务流的发送时间后,需要先将发送时间进行后处理转化为节点的配置信息,通过YANG/NETCONF协议配置到节点中,节点解释执行这些配置,在精确的时间点上发送业务流,实现时间敏感网络的确定性传输。It can be understood that nodes include but are not limited to sending terminals, receiving terminals, and switches; after the central controller determines the sending time of each service flow, it needs to post-process the sending time and convert it into node configuration information, through YANG/ The NETCONF protocol is configured in the node, and the node interprets and executes these configurations, and sends the service flow at a precise time point to realize the deterministic transmission of the time-sensitive network.
另外,参照图18,本申请的一个实施例还提供了一种节点。In addition, referring to FIG. 18 , an embodiment of the present application also provides a node.
该节点包括:一个或多个处理器和存储器,图18中以一个处理器及存储器为例。处理器和存储器可以通过总线或者其他方式连接,图18中以通过总线连接为例。The node includes: one or more processors and memories, and one processor and memories are taken as an example in FIG. 18 . The processor and the memory may be connected through a bus or in other ways, and connection through a bus is taken as an example in FIG. 18 .
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如上述本申请实施例中应用于节点的时间触发调度方法。处理器通过运行存储在存储器中的非暂态软件程序以及程序,从而实现上述本申请实施例中应用于节点的时间触发调度方法。As a non-transitory computer-readable storage medium, the memory can be used to store non-transitory software programs and non-transitory computer-executable programs, such as the time-triggered scheduling method applied to nodes in the above embodiments of the present application. The processor implements the time-triggered scheduling method applied to the nodes in the above embodiments of the present application by running the non-transitory software program and the program stored in the memory.
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述本申请实施例中应用于节点的时间触发调度方法所需的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该节点。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。The memory may include a program storage area and a data storage area, where the program storage area may store the operating system and at least one application required by the function; the data storage area may store and execute the time-triggered scheduling method applied to the node in the above-mentioned embodiments of the present application required data etc. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory may include memory located remotely from the processor, and these remote memories may be connected to the node through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
实现上述本申请实施例中应用于节点的时间触发调度方法所需的非暂态软件程序以及程序存储在存储器中,当被一个或者多个处理器执行时,执行上述本申请实施例中应用于节点的时间触发调度方法,例如,执行以上描述的图16中的方法步骤1610至步骤1620,节点通过接收来自中心控制器的发送时间,其中,发送时间由有向图和业务流的紧急程度而确定,有向图由业务流的路径而构建,业务流的紧急程度由中心控制器获取的预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个节点的特性而确定;按照发送时间传输业务流集合中对应的业务流。基于此,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。The non-transient software programs and programs required to implement the time-triggered scheduling method applied to nodes in the above-mentioned embodiments of the present application are stored in the memory. When executed by one or more processors, the implementation of the above-mentioned embodiments of the present application used The time-triggered scheduling method of a node, for example, executes steps 1610 to 1620 of the method in FIG. Determined, the directed graph is constructed by the path of the business flow, and the urgency of the business flow is determined by the characteristics of each business flow in the preset business flow set obtained by the central controller, the path of the business flow, and each It is determined by the characteristics of the node; the corresponding service flow in the service flow set is transmitted according to the sending time. Based on this, a directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined. Compared with the solution method of the satisfiability solver with exponential time complexity, the business can be determined through the directed graph and the urgency of the business flow. The sending time of the flow can reduce the time complexity, effectively speed up the scheduling of the business flow, and provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network. , Service flow scheduling results with better service quality provide the possibility of precise regulation.
另外,参照图19,本申请的一个实施例还提供了一种电子设备。In addition, referring to FIG. 19 , an embodiment of the present application also provides an electronic device.
该电子设备包括:一个或多个处理器和存储器,图19中以一个处理器及存储器为例。处理器和存储器可以通过总线或者其他方式连接,图19中以通过总线连接为例。The electronic device includes: one or more processors and memories, and one processor and memories are taken as an example in FIG. 19 . The processor and the memory may be connected through a bus or in other ways. In FIG. 19, connection through a bus is taken as an example.
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如上述本申请实施例中应用于中心控制器的时间触发调度方法。处理器通过运行存储在存储器中的非暂态软件程序以及程序,从而实现上述本申请实施例中应用于中心控制器的时间触发调度方法。As a non-transitory computer-readable storage medium, the memory can be used to store non-transitory software programs and non-transitory computer-executable programs, such as the time-triggered scheduling method applied to the central controller in the above embodiments of the present application. The processor implements the time-triggered scheduling method applied to the central controller in the above embodiments of the present application by running the non-transitory software program and the program stored in the memory.
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述本申请实施例中应用于中心控制器的时间触发调度方法所需的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。The memory can include a program storage area and a data storage area, wherein the program storage area can store the operating system and at least one application program required by the function; the data storage area can store the time triggers applied to the central controller in the above-mentioned embodiments of the present application. The data required by the dispatch method, etc. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory may include memory located remotely from the processor, and these remote memories may be connected to the electronic device via a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
实现上述本申请实施例中应用于中心控制器的时间触发调度方法所需的非暂态软件程序以及程序存储在存储器中,当被一个或者多个处理器执行时,执行上述本申请实施例中应用于中心控制器的时间触发调度方法,例如,执行以上描述的图1中的方法步骤110至步骤150、图2中的方法步骤210至步骤260、图3中的方法步骤310至步骤360、图4中的方法步骤410至步骤420、图5中的方法步骤510至步骤520、图6中的方法步骤610至步骤660、图12中的方法步骤1210、图13中的方法步骤1310至步骤1320、图14中的方法步骤1410至步骤1430,中心控制器通过获取预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个预设的节点的特性;根据业务流的路径构建有向图,其中,有向图的顶点由业务流的路径上相邻两个节点而确定;根据有向图、业务流的特性和节点的特性,确定业务流的紧急程度;根据有向图和业务流的紧急程度确定业务流的发送时间;将发送时间发送至节点,以使节点按照发送时间传输业务流集合中对应的业务流。基于此,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。The non-transient software programs and programs required to implement the time-triggered scheduling method applied to the central controller in the above-mentioned embodiments of the present application are stored in the memory, and when executed by one or more processors, the above-mentioned embodiments of the present application are executed. The time-triggered scheduling method applied to the central controller, for example, executes method steps 110 to 150 in Fig. 1 described above, method steps 210 to 260 in Fig. 2 , method steps 310 to 360 in Fig. 3 , Method step 410 to step 420 in Fig. 4, method step 510 to step 520 in Fig. 5, method step 610 to step 660 in Fig. 6, method step 1210 in Fig. 12, method step 1310 to step in Fig. 13 1320, step 1410 to step 1430 of the method in FIG. 14 , the central controller obtains the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow ; Construct a directed graph according to the path of the business flow, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the business flow; according to the directed graph, the characteristics of the business flow and the characteristics of the nodes, determine the Urgency; determine the sending time of the service flow according to the urgency of the directed graph and the service flow; send the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time. Based on this, a directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined. Compared with the solution method of the satisfiability solver with exponential time complexity, the business can be determined through the directed graph and the urgency of the business flow. The sending time of the flow can reduce the time complexity, effectively speed up the scheduling of the business flow, and provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network. , Service flow scheduling results with better service quality provide the possibility of precise regulation.
此外,本申请的一个实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个处理器或控制器执行,例如,被上述电子设备实施例中的一个处理器执行,可使得上述处理器执行上述实施例中应用于中心控制器的时间触发调度方法,例如,执行以上描述的图1中的方法步骤110至步骤150、图2中的方法步骤210至步骤260、图3中的方法步骤310至步骤360、图4中的方法步骤410至步骤420、图5中的方法步骤510至步骤520、图6中的方法步骤610至步骤660、图12中的方法步骤1210、图13中的方法步骤1310至步骤1320、图14中的方法步骤1410至步骤1430,中心控制器通过获取预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个预设的节点的特性;根据业务流的路径构建有向图,其中,有向图的顶点由业务流的路径上相邻两个节点而确定;根据有向图、业务流的特性和节点的特性,确定业务流的紧急程度;根据有向图和业务流的紧急程度确定业务流的发送时间;将发送时间发送至节点,以使节点按照发送时间传输业务流集合中对应的业务流;或者执行上述实施例中应用于节点的时间触发调度方法,例如,执行以上描述的图16中的方法步骤1610至步骤1620,节点通过接收来自中心控制器的发送时间,其中,发送时间由有向图和业务流的紧急程度而确定,有向图由业务流的路径而构建,业务流的紧急程度由中心控制器获取的预设的业务流集合中每个业务流的特性、业务流的路径和业务流的路径上每个节点的特性而确定;按照发送时间传输业务流集合中对应的业务流。基于此,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。In addition, an embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are executed by a processor or a controller, for example, by the above-mentioned Execution by a processor in the embodiment of the electronic device can cause the above-mentioned processor to execute the time-triggered scheduling method applied to the central controller in the above-mentioned embodiment, for example, execute the method steps 110 to 150 in FIG. 1 described above, and FIG. Method step 210 to step 260 in 2, method step 310 to step 360 in Fig. 3, method step 410 to step 420 in Fig. 4, method step 510 to step 520 in Fig. 5, method step 610 in Fig. 6 To step 660, method step 1210 in FIG. 12, method step 1310 to step 1320 in FIG. 13, method step 1410 to step 1430 in FIG. The characteristics of the business flow, the path of the business flow, and the characteristics of each preset node on the path of the business flow; construct a directed graph according to the path of the business flow, where the vertices of the directed graph are composed of two adjacent nodes on the path of the business flow and determine; according to the directed graph, the characteristics of the service flow and the characteristics of the nodes, determine the urgency of the service flow; determine the sending time of the service flow according to the urgency of the directed graph and the service flow; send the sending time to the node, so that The node transmits the corresponding service flow in the service flow set according to the sending time; or executes the time-triggered scheduling method applied to the node in the above embodiment, for example, executes steps 1610 to 1620 of the method in Figure 16 described above, and the node receives the information from The sending time of the central controller, where the sending time is determined by the directed graph and the urgency of the business flow, the directed graph is constructed by the path of the business flow, and the urgency of the business flow is determined by the preset service obtained by the central controller The characteristics of each service flow in the flow set, the path of the service flow and the characteristics of each node on the path of the service flow are determined; the corresponding service flow in the service flow set is transmitted according to the sending time. Based on this, a directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined. Compared with the solution method of the satisfiability solver with exponential time complexity, the business can be determined through the directed graph and the urgency of the business flow. The sending time of the flow can reduce the time complexity, effectively speed up the scheduling of the business flow, and provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network. , Service flow scheduling results with better service quality provide the possibility of precise regulation.
本申请实施例包括:获取预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个预设的节点的特性;根据所述业务流的路径构建有向图,其中,所述有向图的顶点由所述业务流的路径上相邻两个所述节点而确定;根据所述有向图、所述业务流的特性和所述节点的特性,确定所述业务流的紧急程度;根据所述有向图和所述业务流的紧急程度确定所述业务流的发送时间;将所述发送时间发送至所述节点,以使所述节点按照所述发送时间传输所述业务流集合中对应的业务流。根据本申请实施例提供的方案,能够通过业务流的路径构建有向图,进而确定出业务流的紧急程度,相对于指数时间复杂度的可满足性求解器求解方法,通过有向图和业务流的紧急程度确定业务流的发送时间,能够降低时间复杂度,有效加快业务流的调度,为时间敏感网络的在线调度、动态配置等系列功能提供了有效保障,而且能够精准调控业务流的发送时间,为探索更优、服务质量更好的业务流调度结果提供了精准调控的可能性。The embodiment of the present application includes: obtaining the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow; according to the characteristics of the service flow A path constructs a directed graph, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the service flow; according to the directed graph, the characteristics of the service flow and the nodes characteristics, determine the urgency of the service flow; determine the sending time of the service flow according to the directed graph and the urgency of the service flow; send the sending time to the node, so that the The node transmits the corresponding service flow in the service flow set according to the sending time. According to the solution provided by the embodiment of the present application, the directed graph can be constructed through the path of the business flow, and then the urgency of the business flow can be determined. Compared with the solution method of the satisfiability solver with exponential time complexity, the directed graph and the business The urgency of the flow determines the sending time of the service flow, which can reduce the time complexity, effectively speed up the scheduling of the service flow, provide an effective guarantee for a series of functions such as online scheduling and dynamic configuration of the time-sensitive network, and can precisely control the sending of the service flow Time provides the possibility of precise control for exploring better business flow scheduling results with better service quality.
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。Those skilled in the art can understand that all or some of the steps and systems in the methods disclosed above can be implemented as software, firmware, hardware and an appropriate combination thereof. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit . Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As known to those of ordinary skill in the art, the term computer storage media includes both volatile and nonvolatile media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. permanent, removable and non-removable media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, tape, magnetic disk storage or other magnetic storage devices, or can Any other medium used to store desired information and which can be accessed by a computer. In addition, as is well known to those of ordinary skill in the art, communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media .
以上是对本申请的若干实施方式进行了说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。The above is a description of several embodiments of the present application, but the present application is not limited to the above-mentioned embodiments. Those skilled in the art can also make various equivalent deformations or replacements without violating the spirit of the present application. Any modification or substitution is included within the scope defined by the claims of the present application.

Claims (13)

  1. 一种时间触发调度方法,应用于中心控制器,所述方法包括:A time-triggered scheduling method applied to a central controller, the method comprising:
    获取预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个预设的节点的特性;Acquire the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow;
    根据所述业务流的路径构建有向图,其中,所述有向图的顶点由所述业务流的路径上相邻两个所述节点而确定;Constructing a directed graph according to the path of the service flow, wherein the vertices of the directed graph are determined by two adjacent nodes on the path of the service flow;
    根据所述有向图、所述业务流的特性和所述节点的特性,确定所述业务流的紧急程度;determining the urgency of the service flow according to the directed graph, the characteristics of the service flow, and the characteristics of the node;
    根据所述有向图和所述业务流的紧急程度确定所述业务流的发送时间;determining the sending time of the service flow according to the directed graph and the urgency of the service flow;
    将所述发送时间发送至所述节点,以使所述节点按照所述发送时间传输所述业务流集合中对应的业务流。Sending the sending time to the node, so that the node transmits the corresponding service flow in the service flow set according to the sending time.
  2. 根据权利要求1所述的方法,其中,所述根据所述有向图、所述业务流的特性和所述节点的特性,确定所述业务流的紧急程度,包括:The method according to claim 1, wherein the determining the urgency of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the node comprises:
    基于所述有向图,确定所述有向图中每个顶点对应的所述业务流、当前节点和后序节点,其中,所述当前节点为所述业务流的路径上相邻两个所述节点中的前一个,所述后序节点为所述业务流的路径上相邻两个所述节点中的后一个;Based on the directed graph, determine the service flow, current node, and subsequent node corresponding to each vertex in the directed graph, where the current node is two adjacent nodes on the path of the service flow the previous node, and the subsequent node is the latter of the two adjacent nodes on the path of the service flow;
    根据所述有向图、所述业务流的特性和所述节点的特性,确定所述业务流的端到端时延;determining the end-to-end delay of the service flow according to the directed graph, the characteristics of the service flow and the characteristics of the node;
    根据所述当前节点、所述后序节点和所述节点的特性,确定所述业务流的最小转发时延;determining the minimum forwarding delay of the service flow according to the characteristics of the current node, the subsequent node, and the node;
    根据所述有向图和所述业务流的特性,确定所述当前节点对应的所述业务流的累积传输时延;determining the cumulative transmission delay of the service flow corresponding to the current node according to the directed graph and the characteristics of the service flow;
    根据所述有向图和所述最小转发时延,确定所述当前节点对应的所述业务流的最小传输时延;Determine the minimum transmission delay of the service flow corresponding to the current node according to the directed graph and the minimum forwarding delay;
    根据所述业务流的端到端时延、所述业务流的最小转发时延、所述业务流的累积传输时延和所述业务流的最小传输时延,确定业务流的紧急程度。The urgency of the service flow is determined according to the end-to-end delay of the service flow, the minimum forwarding delay of the service flow, the cumulative transmission delay of the service flow, and the minimum transmission delay of the service flow.
  3. 根据权利要求1所述的方法,其中,所述根据所述有向图和所述业务流的紧急程度确定所述业务流的发送时间,包括:The method according to claim 1, wherein the determining the sending time of the service flow according to the directed graph and the urgency of the service flow comprises:
    对所述有向图进行拓扑排序,得到第一拓扑序列;performing topological sorting on the directed graph to obtain a first topological sequence;
    当确定第一拓扑序列的序列点的数量小于所述有向图的顶点的数量,根据所述第一拓扑序列和所述有向图确定剩余有向图;When it is determined that the number of sequence points of the first topological sequence is less than the number of vertices of the directed graph, determining the remaining directed graph according to the first topological sequence and the directed graph;
    将所述剩余有向图中各个顶点对应的业务流中紧急程度最低的业务流作为去环业务流;Taking the service flow with the lowest degree of urgency among the service flows corresponding to each vertex in the remaining directed graph as the de-loop service flow;
    根据所述去环业务流和所述剩余有向图确定去环有向图;determining a de-looped directed graph according to the de-looped service flow and the remaining directed graph;
    对所述去环有向图进行拓扑排序,得到第二拓扑序列;performing topological sorting on the de-ringed directed graph to obtain a second topological sequence;
    基于所述业务流的特性和所述节点的特性,根据所述第一拓扑序列、所述第二拓扑序列和所述去环业务流确定所述业务流的发送时间。Based on the characteristics of the service flow and the characteristics of the node, determine the sending time of the service flow according to the first topology sequence, the second topology sequence and the de-looped service flow.
  4. 根据权利要求3所述的方法,其中,所述基于所述业务流的特性和所述节点的特性,根据所述第一拓扑序列、所述第二拓扑序列和所述去环业务流确定所述业务流的发送时间,包括:The method according to claim 3, wherein, based on the characteristics of the service flow and the characteristics of the node, the determined according to the first topology sequence, the second topology sequence and the de-looped service flow The sending time of the above business flow, including:
    根据所述第一拓扑序列、所述第二拓扑序列和所述去环业务流确定总拓扑序列;determining a total topology sequence according to the first topology sequence, the second topology sequence and the de-looped service flow;
    按照所述总拓扑序列的顺序遍历所述总拓扑序列中每个序列点,对所述序列点对应的业务流进行调度处理,以确定所述业务流的发送时间。Traverse each sequence point in the total topology sequence according to the order of the total topology sequence, and perform scheduling processing on the service flow corresponding to the sequence point, so as to determine the sending time of the service flow.
  5. 根据权利要求4所述的方法,其中,所述按照所述总拓扑序列的顺序遍历所述总拓扑序列中每个序列点,对所述序列点对应的业务流进行调度处理,以确定所述业务流的发送时间,包括:The method according to claim 4, wherein, traversing each sequence point in the total topology sequence according to the order of the total topology sequence, and performing scheduling processing on the service flow corresponding to the sequence point, so as to determine the The sending time of the business flow, including:
    基于所述有向图,从业务流集合中确定冲突业务流和非冲突业务流,其中,所述冲突业务流为所述有向图中入度大于一的顶点所对应的业务流,所述非冲突业务流为业务流集合中除所述冲突业务流之外的业务流;Based on the directed graph, determine a conflicting service flow and a non-conflicting service flow from a set of service flows, wherein the conflicting service flow is a service flow corresponding to a vertex with an in-degree greater than one in the directed graph, and the The non-conflicting service flow is a service flow in the service flow set except the conflicting service flow;
    按照所述总拓扑序列的顺序遍历所述总拓扑序列中每个序列点,当确定所述总拓扑序列中的序列点对应的业务流为冲突业务流,基于所述业务流的紧急程度、所述有向图、所述业务流的特性和所述节点的特性,确定所述冲突业务流的发送时间;以及,当确定所述总拓扑序列中的序列点对应的业务流为非冲突业务流,将所述非冲突业务流的发送时间设置为预设的初始值。Traverse each sequence point in the total topology sequence according to the order of the total topology sequence, and when it is determined that the service flow corresponding to the sequence point in the total topology sequence is a conflicting service flow, based on the urgency of the service flow, the According to the directed graph, the characteristics of the service flow and the characteristics of the node, determine the sending time of the conflicting service flow; and, when it is determined that the service flow corresponding to the sequence point in the total topology sequence is a non-conflicting service flow , setting the sending time of the non-conflicting service flow to a preset initial value.
  6. 根据权利要求5所述的方法,其中,所述基于所述业务流的紧急程度、所述有向图、所述业务流的特性和所述节点的特性,确定所述冲突业务流的发送时间,包括:The method according to claim 5, wherein the sending time of the conflicting service flow is determined based on the urgency of the service flow, the directed graph, the characteristics of the service flow and the characteristics of the node ,include:
    基于所述业务流的紧急程度,对所述冲突业务流进行排序;sorting the conflicting service flows based on the urgency of the service flows;
    根据所述冲突业务流、所述有向图和所述业务流的特性,确定所述冲突业务流对应的每个所述节点中所述冲突业务流的累积传输时延;determining the cumulative transmission delay of the conflicting service flow in each node corresponding to the conflicting service flow according to the conflicting service flow, the directed graph, and the characteristics of the service flow;
    根据所述冲突业务流、所述有向图和所述节点的特性,确定所述冲突业务流对应的每个所述节点中所述冲突业务流的最小转发时延;determining the minimum forwarding delay of the conflicting service flow in each node corresponding to the conflicting service flow according to the conflicting service flow, the directed graph, and the characteristics of the node;
    根据所述冲突业务流的累积传输时延和所述冲突业务流的最小转发时延,确定所述冲突业务流对应的每个所述节点中所述冲突业务流的初始发送时间;determining the initial sending time of the conflicting service flow in each node corresponding to the conflicting service flow according to the accumulated transmission delay of the conflicting service flow and the minimum forwarding delay of the conflicting service flow;
    根据所述业务流的特性和所述节点的特性,确定时间窗口;determining a time window according to the characteristics of the service flow and the characteristics of the node;
    基于所述冲突业务流的排序,根据所述冲突业务流的初始发送时间和所述时间窗口,确定所述冲突业务流的发送时间。Based on the ranking of the conflicting service flows, the sending time of the conflicting service flows is determined according to the initial sending time of the conflicting service flows and the time window.
  7. 根据权利要求3所述的方法,其中,所述对所述有向图进行拓扑排序,得到第一拓扑序列的步骤之后,还包括:The method according to claim 3, wherein, after the step of performing topological sorting on the directed graph to obtain the first topological sequence, further comprising:
    当确定第一拓扑序列的序列点的数量等于所述有向图的顶点的数量,基于所述业务流的特性和所述节点的特性,根据所述第一拓扑序列确定所述业务流的发送时间。When it is determined that the number of sequence points of the first topology sequence is equal to the number of vertices of the directed graph, based on the characteristics of the service flow and the characteristics of the node, determine the sending of the service flow according to the first topology sequence time.
  8. 根据权利要求1所述的方法,其中,所述获取预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个预设的节点的特性的步骤之后,还包括:The method according to claim 1, wherein said obtaining the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow After the steps, also include:
    获取用户设定的时间槽;Get the time slot set by the user;
    基于所述时间槽,对所述业务流的特性和所述节点的特性进行初始化,其中,所述业务流的特性至少包括业务流的周期、报文长度和端到端时延,所述节点的特性至少包括所述节点中所述业务流的最小转发时延,所述初始化用于将所述业务流的周期、报文长度、端到端时延和最小转发时延转化为所述时间槽的整数倍。Based on the time slot, initialize the characteristics of the service flow and the characteristics of the node, wherein the characteristics of the service flow include at least the period of the service flow, the length of the message and the end-to-end delay, and the node The characteristics include at least the minimum forwarding delay of the service flow in the node, and the initialization is used to convert the cycle of the service flow, packet length, end-to-end delay and minimum forwarding delay into the time Integer multiple of slots.
  9. 根据权利要求1所述的方法,其中,所述获取预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个预设的节点的特性的步骤之后,还包括:The method according to claim 1, wherein said obtaining the characteristics of each service flow in the preset service flow set, the path of the service flow, and the characteristics of each preset node on the path of the service flow After the steps, also include:
    基于所述业务流集合的特性和所述业务流的路径,将位于所述路径起点的节点作为发送终端,并确定所述发送终端对应的所述业务流的数量;Based on the characteristics of the service flow set and the path of the service flow, using the node at the starting point of the path as a sending terminal, and determining the number of the service flows corresponding to the sending terminal;
    将所述发送终端与虚拟终端连接,其中,所述虚拟终端的数量等于所述发送终端对应的所述业务流的数量,所述虚拟终端与所述发送终端的链路长度为零;Connecting the sending terminal to a virtual terminal, wherein the number of virtual terminals is equal to the number of service flows corresponding to the sending terminal, and the link length between the virtual terminal and the sending terminal is zero;
    将所述虚拟终端的发送时间设置为预设的初始值。Set the sending time of the virtual terminal to a preset initial value.
  10. 一种时间触发调度方法,应用于节点,所述方法包括:A time-triggered scheduling method applied to a node, the method comprising:
    接收来自中心控制器的发送时间,其中,所述发送时间由有向图和业务流的紧急程度而确定,所述有向图由所述业务流的路径而构建,所述业务流的紧急程度由所述中心控制器获取的预设的业务流集合中每个业务流的特性、所述业务流的路径和所述业务流的路径上每个所述节点的特性而确定;receiving the sending time from the central controller, wherein the sending time is determined by a directed graph and the urgency of the service flow, the directed graph is constructed by the path of the service flow, and the urgency of the service flow Determined by the characteristics of each service flow in the preset service flow set obtained by the central controller, the path of the service flow, and the characteristics of each node on the path of the service flow;
    按照所述发送时间传输所述业务流集合中对应的业务流。Transmit the corresponding service flow in the service flow set according to the sending time.
  11. 一种节点,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如权利要求10所述的时间触发调度方法。A node, comprising: a memory, a processor, and a computer program stored on the memory and operable on the processor, wherein the time-triggered scheduling method according to claim 10 is implemented when the processor executes the computer program .
  12. 一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如权利要求1至9中任意一项所述的时间触发调度方法。An electronic device, comprising: a memory, a processor, and a computer program stored on the memory and operable on the processor, wherein, when the processor executes the computer program, any one of claims 1 to 9 is realized The time-triggered scheduling method described above.
  13. 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行如权利要求1至9任意一项所述的时间触发调度方法,或者如权利要求10所述的时间触发调度方法。A computer-readable storage medium, wherein the computer-readable storage medium stores a computer-executable program, and the computer-executable program is used to make a computer execute the time-triggered scheduling according to any one of claims 1 to 9 method, or the time-triggered scheduling method as claimed in claim 10.
PCT/CN2022/124184 2021-12-22 2022-10-09 Time-triggered scheduling method, node, electronic device, and storage medium WO2023116126A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111579523.2A CN116346627A (en) 2021-12-22 2021-12-22 Time trigger scheduling method, node, electronic equipment and storage medium
CN202111579523.2 2021-12-22

Publications (1)

Publication Number Publication Date
WO2023116126A1 true WO2023116126A1 (en) 2023-06-29

Family

ID=86874760

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/124184 WO2023116126A1 (en) 2021-12-22 2022-10-09 Time-triggered scheduling method, node, electronic device, and storage medium

Country Status (2)

Country Link
CN (1) CN116346627A (en)
WO (1) WO2023116126A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160021017A1 (en) * 2014-07-18 2016-01-21 Cisco Technology, Inc. Distributed rescheduling of bounded flows in a time sensitive network
CN112291161A (en) * 2020-10-10 2021-01-29 燕山大学 Time-sensitive network mixed flow scheduling method
CN113285872A (en) * 2021-03-09 2021-08-20 清华大学 Time-sensitive network communication flow scheduling method based on deep reinforcement learning

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160021017A1 (en) * 2014-07-18 2016-01-21 Cisco Technology, Inc. Distributed rescheduling of bounded flows in a time sensitive network
CN112291161A (en) * 2020-10-10 2021-01-29 燕山大学 Time-sensitive network mixed flow scheduling method
CN113285872A (en) * 2021-03-09 2021-08-20 清华大学 Time-sensitive network communication flow scheduling method based on deep reinforcement learning

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FARZANEH MORTEZA HASHEMI; KNOLL ALOIS: "Time-sensitive networking (TSN): An experimental setup", 2017 IEEE VEHICULAR NETWORKING CONFERENCE (VNC), 27 November 2017 (2017-11-27), pages 23 - 26, XP033310859, DOI: 10.1109/VNC.2017.8275648 *
HUAZHEN SONG: "Summary on Time Sensitive Network Technology", ROCESS AUTOMATION INSTRUMENTATION, vol. 41, no. 2, 19 February 2020 (2020-02-19), Shanghai , pages 1 - 9, XP093074017, ISSN: 1000-0380, DOI: 10.16086/j.cnki.issn1000-0380.2019110024 *

Also Published As

Publication number Publication date
CN116346627A (en) 2023-06-27

Similar Documents

Publication Publication Date Title
US11700322B2 (en) Service process control method and network device
US10432427B2 (en) Border gateway protocol for communication among software defined network controllers
US11722407B2 (en) Packet processing method and apparatus
US10148573B2 (en) Packet processing method, node, and system
US7466655B1 (en) Ant-based method for discovering a network path that satisfies a quality of service equipment
US20200153728A1 (en) Multicast Forwarding Method and Related Device
WO2013082819A1 (en) Layer 2 network loop processing method, apparatus and network device
WO2021227947A1 (en) Network control method and device
CN113630893B (en) 5G and TSN joint scheduling method based on wireless channel information
CN110890994A (en) Method, device and system for determining message forwarding path
JP2022538809A (en) Packet transfer method and device, and computer readable storage medium
US11956146B2 (en) Controller, network system, and flow management method
WO2023116126A1 (en) Time-triggered scheduling method, node, electronic device, and storage medium
CN115037399A (en) Message forwarding method, electronic device and storage medium
US11245635B2 (en) Feedback loop for frame maximization
EP3068075B1 (en) Trace feature across the network (depth & breadth)-wise
CN110881006A (en) Method for sending message, network equipment and computer storage medium
WO2023206395A1 (en) Network path calculation method and network device
US11968125B2 (en) Data transmission method and apparatus
CN108337181B (en) Method and device for managing congestion of switching network
JP4838739B2 (en) Router buffer management method and router using the management method
CN114500163A (en) Communication scheduling method, device and storage medium
JP2001203739A (en) Method and device for controlling communication path
WO2023087844A1 (en) Routing method, routing apparatus, storage medium and program product
WO2023098703A1 (en) Path notification method, topology algorithm combination generation method, path calculation method, data transmission method, electronic device, and computer-readable storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22909444

Country of ref document: EP

Kind code of ref document: A1