Scheduling table generation method and system for time-triggered service

By building a business conflict diagram and a huge connected subgraph, dividing sets and groupings, the high time complexity problem of the TTE schedule generation algorithm under large-scale complex topology is solved, and efficient scheduling planning for unicast, multicast and redundant services is realized, reducing the scheduling solution time, and improving scheduling efficiency and flexibility.

CN120342972APending Publication Date: 2025-07-18XIDIAN UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510474221.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-16
Publication Date
2025-07-18

AI Technical Summary

Technical Problem

The existing time-triggered Ethernet (TTE) schedule table generation algorithm has high time complexity in solving under large-scale complex topology, and cannot effectively deal with multicast and redundant business scenarios, resulting in increased scheduling planning complexity and cannot meet the real-time, reliability and certainty requirements in the industrial field.

Method used

Build a TTE scheduling model, build a business conflict graph and obtain a large connected sub-graph, divide the sets and sort them by priority, group them into link-free conflict groups, allocate them to the timeline idle time slots, and resolve unsuccessfully allocated services through backtracking operations to generate a conflict-free scheduling table.

Benefits of technology

It reduces the time complexity of scheduling planning, improves the execution efficiency and flexibility of scheduling, and can be applicable to unicast, multicast, redundant and hybrid business scenarios, ensuring that the links that trigger TT services at time do not conflict, and reducing dependence on mathematical planning solvers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120342972A_ABST
    Figure CN120342972A_ABST
Patent Text Reader

Abstract

The invention discloses a scheduling table generation method and system for a time-triggered service, and mainly solves the problem of high time solving complexity in a large-scale scene in the prior art. According to the implementation scheme, a TTE scheduling model and a service conflict graph are constructed, and a maximum connected subgraph is obtained; independently dividing each sub-graph into sets, dividing services into link-conflict-free groups in sequence in each set, and distributing the groups to free time slots in a time axis; judging whether a group of which the time slot is not successfully distributed exists in the current maximum connected sub-graph; if so, trying to distribute again through backtracking operation; if not, obtaining the sending moment of the service at the source end according to the time slot where the group of the service is located and the intra-group time slot offset of the service; and calculating the sending time and the receiving time of each switch and the receiving time of the destination end according to the sending time of the source end, and generating a conflict-free scheduling table. According to the method, the time complexity of scheduling solution is reduced, and the method can be flexibly applied to scheduling planning in various scenes such as unicast service, multicast service, redundant service and mixed service.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of communication technologies, and particularly relates to a scheduling table generation method and system, which can be used for the scheduling planning of time-triggered services in a time-triggered Ethernet with a large-scale complex topology. Background Art

[0002] With the development of industrial control, automotive networks, aerospace and other industrial fields, the requirements for the real-time performance, determinism, and reliability of network communication in these fields are getting higher and higher. Traditional Ethernet mainly focuses on the reliability and throughput of data transmission, but it has obvious deficiencies in real-time performance, determinism, and delay guarantee, and has gradually been unable to meet the stringent requirements of the industrial field. To address this challenge, Time-Triggered Ethernet (TTE) has emerged. It is designed by combining standard Ethernet technology on the basis of the time-triggered protocol and the time-triggered architecture, introducing a time synchronization mechanism, and scheduling the sending and receiving of data in a time-triggered manner, that is, data transmission is carried out according to a predetermined schedule rather than event triggering. This method reduces the interference of dynamic events in the network, helps to reduce latency and avoid network congestion. By combining the advantages of time-triggering and Ethernet, each node in the network can send and receive data on time and as needed. This advantage makes TTE a research hotspot in the current industrial field.

[0003] The time-triggered (TT) service refers to a communication service that transmits data according to a pre-planned schedule in a time-triggered Ethernet. In the time-triggered Ethernet (TTE) hybrid service traffic, the TT service has the highest priority and needs to strictly perform data sending and receiving within the specified window according to the scheduling table. In this way, the low jitter, fixed latency, and strict time determinism of the TT service are guaranteed. At the same time, the event-triggered (ET) service is transmitted during the time intervals not occupied by the TT service to effectively improve resource utilization.

[0004] One of the core mechanisms of a TTE network is that the TT service strictly performs service sending and receiving according to the planned moments. Therefore, for time-triggered communication, how to design a suitable scheduling planning algorithm according to the characteristics of different network topologies and service types, while meeting the real-time performance, reliability, and determinism requirements of the network and ensuring resource utilization, is an important research direction.

[0005] A method for generating a scheduling table with minimized response delay based on load balancing was proposed by a firm and others. This method adopts a phased scheduling strategy. Based on the preprocessing results after load balancing, taking the receiving and sending times of nodes as optimization variables, and aiming to minimize the sum of response delays of all services in the network, it creates constraint conditions for conflict-free service transmission, correct transmission order, and end-to-end delay, establishes a mixed-integer programming model, and obtains the scheduling time table for TT services. This algorithm ensures the global optimality of the scheduling by establishing a mathematical optimization model. However, as the topology scale increases and the number of services rises, the complexity of its solution also increases significantly. Moreover, this algorithm is only applicable to unicast services and cannot handle multicast and redundant scenarios.

[0006] Chen Chunyan and others proposed a TTE network scheduling planning algorithm based on reinforcement learning. This algorithm is based on Q-learning, transforms the scheduling problem of services on the time axis into a multi-treasure chest search problem in three-dimensional space, and realizes the scheduling of TT services based on reinforcement learning and obtains the scheduling time table. Although this method can allocate network resources more reasonably through the optimization of TTE, it has the deficiency of long time-consuming for solving service scheduling.

[0007] The patent document with the application number CN202210106725.3 discloses an incremental scheduling table generation method with decreasing conflict degree. It first obtains the maximum connected subgraph of the service conflict graph, then divides the TT services into groups to obtain groups with gradually decreasing conflict degrees, and then performs incremental scheduling on each group on this basis. This method uses the idea of conflict decomposition and can reduce the number of constraint conditions for scheduling solution. However, since the scheduling solution for each group still depends on the solver, it results in too high time complexity in large-scale scenario scheduling.

[0008] In summary, many existing TT service scheduling table generation algorithms rely on mathematical programming solvers or reinforcement learning models for solution, and there are problems of too high time complexity in large-scale scenarios. At the same time, the existing algorithms do not consider multicast services and redundant scenarios, resulting in certain limitations in the application of the algorithms. These problems increase the complexity of scheduling planning and cannot meet the requirements of efficiently scheduling TT services in complex TTE network environments. Summary of the Invention

[0009] The purpose of the present invention is to propose a method and system for generating a scheduling table for time-triggered services in view of the deficiencies of the above-mentioned existing technologies, so as to reduce the time complexity of scheduling time-triggered services in large-scale complex topologies, reduce the time of TT service scheduling planning, and enhance the scalability and flexibility of scheduling.

[0010] To achieve the above purpose, the technical solution of the present invention includes:

[0011] 1. A method for generating a schedule table for time-triggered services, characterized by comprising:

[0012] Construct a TTE scheduling model, divide the time axis into equal-length time slots, construct a service conflict graph based on whether there is a link conflict between time-triggered TT services, and obtain the maximum connected subgraph of the conflict graph;

[0013] Independently partition sets for each subgraph, partition services with the same period into one set, and sort them according to service priorities within the set;

[0014] Sequentially divide services into link-conflict-free groups in each set, and record the group number and the time slot offset within the group;

[0015] Allocate the groups to idle time slots on the time axis, and record the time slots where the groups are located;

[0016] Determine whether there are groups for which time slots have not been successfully allocated in the current maximum connected subgraph:

[0017] If so, perform a backtracking operation to try allocation again;

[0018] If not, obtain the transmission time E of the service at the source end according to the time slot where the service group is located and the time slot offset within the group of the service, send calculate the transmission S of each level of switch according to the transmission time at the source end, send the receiving time S, recv and the receiving time E at the destination end, recv and generate a conflict-free schedule table.

[0019] 2. A system for generating a schedule table for time-triggered services, characterized by comprising:

[0020] A preprocessing module, configured to read network parameters and TT service information, determine the time slot size according to the network parameters, construct a service conflict graph, and obtain the maximum connected subgraph of the conflict graph;

[0021] A set partitioning module, configured to independently partition the maximum connected subgraph into multiple sets and sort the sets according to the period;

[0022] A grouping module, configured to assign priorities to services in each set and sequentially divide the services into groups;

[0023] A scheduling module, configured to allocate the groups to idle time slots on the time axis;

[0024] A backtracking module, configured to perform a backtracking operation on services that have not been successfully scheduled and try to allocate time slots again;

[0025] A scheduling table generation module, which is used to calculate the sending time of the source system of the service, the receiving and sending times of each level of switches, and the receiving time of the destination system according to the group where the service is located, the slot offset within the group, and the slot where the group is located.

[0026] Compared with the prior art, the present invention has the following advantages:

[0027] First, by dividing sets and groups, the present invention ensures that the scheduling slots of time-triggered TT services with link conflicts do not conflict, realizes time isolation, ensures that the physical links of time-triggered TT services transmitted in the same slot do not conflict, ensures spatial isolation, does not rely on a mathematical programming solver or a reinforcement learning model, and avoids the problem that the time complexity of scheduling solution increases significantly with the increase of the topology scale and the number of services, effectively reducing the time complexity of scheduling planning solution;

[0028] Second, the present invention uses an undirected graph to construct a service conflict graph according to whether there is a link conflict between time-triggered TT services, and then obtains the maximum connected subgraph of the service conflict graph to obtain a set of time-triggered TT services that are completely non-conflicting with each other, so as to independently execute set division, grouping, and scheduling for them, overcoming the problem that the existing technology takes longer to generate a scheduling table when scheduling all time-triggered TT services at the same time, and effectively improving the execution efficiency of scheduling;

[0029] Third, since the present invention considers the link of each hop transmission of time-triggered TT services when grouping and allocating scheduling slots, it can be applied to time-triggered TT services of any transmission type, that is, it can realize scheduling planning and solution for time-triggered services in multiple scenarios such as unicast services, multicast services, redundant services, and hybrid services. Description of the Drawings

[0030] Figure 1 It is a flowchart for implementing the scheduling table generation method of the time-triggered service provided in the first embodiment of the present invention;

[0031] Figure 2 It is the time-triggered Ethernet TTE network topology diagram constructed in the method of the present invention;

[0032] Figure 3 It is the service conflict graph constructed in the method of the present invention;

[0033] Figure 4 It is the maximum connected subgraph generated in the method of the present invention;

[0034] Figure 5 It is the block diagram of the scheduling table generation system of the time-triggered service provided in the second embodiment of the present invention. Detailed Embodiments

[0035] To enable those skilled in the art to better understand the solution of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0036] Embodiment 1: Method for Generating Scheduling Table for Time-Triggered Services

[0037] Refer to Figure 1 , and the implementation steps of this example are as follows:

[0038] Step 1, construct a TTE scheduling model.

[0039] Define the network topology as a directed graph, number all the nodes and links in the network, and obtain the routing parameters of all TT services to be scheduled, thus constituting a TTE scheduling model.

[0040] The network topology of this example is a hybrid network topology structure composed of three star structures and a ring backbone network structure. Among them, the star structure is composed of end devices and switches, and the ring backbone network structure is composed of three switches, as Figure 2 (a) shown; describe the nodes and links in the network topology by constructing a directed graph, that is, abstract the end systems and switches in the network topology as nodes in the directed graph, numbered VID = 1-9 respectively, and abstract the bidirectional links in the network topology as edges in the directed graph, numbered EID = 1-18 respectively, as Figure 2 (b) shown.

[0041] There are a total of 11 time-triggered TT services in this example, numbered TTID = 1-11 respectively, as shown in Table 1:

[0042] Table 1 TT Service Parameters

[0043] Service ID Frame Length (Byte) Period (ms) Source System Number Destination System Number Transmission Path 1 256 1 1 5 1-11-13-7 2 1518 4 2 6 3-11-13-9 3 256 4 8 9 15-18 4 1518 2 5 6 8-9 5 1024 1 6 2 10-6-4 6 128 2 6 2 10-6-4 7 256 4 8 9 15-18 8 1024 2 1 5 1-5-7 9 128 1 6 5 10-7 10 512 1 6 1 10-6-2 11 512 2 1 5 1-5-7

[0044] The parameters of each time-triggered TT service in Table 1 include: TTID, frame length, period, source node number, destination node number, and routing. Among them, the routing information sequentially gives the link numbers passed by this TT service from the source node to the destination node.

[0045] Step 2, divide the time axis into equal-length time slots.

[0046] (2.1) According to the periods of the TT services in Table 1, calculate the basic period BC and the matrix period MC of this example:

[0047] The basic cycle BC is the greatest common divisor GCD of all TT service cycles, which is expressed as follows:

[0048] BC = GCD(1ms, 4ms, 4ms, 2ms,..., 1ms, 2ms) = 1ms

[0049] The matrix cycle MC is the least common multiple LCM of all TT service cycles, which is expressed as follows:

[0050] MC = LCM(1ms, 4ms, 4ms, 2ms,..., 1ms, 2ms) = 4ms

[0051] (2.2) According to the above calculation results, a matrix cycle MC contains 4 basic cycles BC in total. Each basic cycle BC is numbered BCID = 1 - 4 respectively;

[0052] (2.3) Determine the time slot size N through the following three inequalities according to the network parameters:

[0053]

[0054] where Esd max is the maximum transmission delay of the largest end system in the network, Ssd max is the maximum transmission delay of the largest switch in the network, Ls max is the maximum link propagation delay in the network, Srd max is the maximum reception delay of the largest switch in the network, Erd max is the maximum reception delay of the largest end system in the network; represents the reception window length of the TT service, len is the frame length of the TT service, bw is the link bandwidth, and sy is the synchronization accuracy in the TTE network.

[0055] In the example of the present invention, the values of each network parameter are shown in Table 3. Through the above formula, the calculated time slot size N ≥ 14.04us, and here N = 20us is taken.

[0056] Table 2 Network Parameter Table

[0057] Parameter Name Parameter Value Synchronization Precision 200 ns End System Transmission Delay 400 ns End System Reception Delay 400 ns Minimum Link Propagation Delay 32 ns Maximum Link Propagation Delay 40 ns Switch Reception Delay 1000 ns Switch Transmission Delay 1000 ns Link Bandwidth 1000 Mbps

[0058] (2.4) Divide each basic cycle BC into consecutive time slots of length N as the basic unit of scheduling.

[0059] Step 3, construct a service conflict graph.

[0060] Refer to Figure 3 and the implementation of this step is as follows:

[0061] Construct a service conflict graph through an undirected graph. A vertex in the undirected graph represents a time-triggered (TT) service in the time-triggered network. If there is a link conflict between two services, there is an edge between the corresponding two vertices in the undirected graph; otherwise, there is no edge between the corresponding two vertices in the undirected graph.

[0062] There is a link conflict between the two time-triggered (TT) services mentioned above means that if there is the same physical link on the transmission paths of the two time-triggered (TT) services, then these two time-triggered (TT) services are determined to have a conflict.

[0063] According to the TT service parameters in Table 1, determine whether there are overlapping links on the transmission paths of any two time-triggered (TT) services, obtain the conflict relationships of any two time-triggered (TT) services, and form a TT service conflict relationship table as shown in Table 3. The row and column numbers in the table correspond to the IDs of the 1 - 11 TT services in Table 1, and the value of each cell indicates whether there is a conflict between the two TT services corresponding to the row and column.

[0064] Table 3 TT Service Conflict Judgment Table

[0065]

[0066] Step 4, generate the strongly connected components of the service conflict graph.

[0067] To generate the strongly connected components of the service conflict graph, it is necessary to first determine whether the service conflict graph is a connected graph:

[0068] If so, generate a strongly connected component of the service conflict graph and execute Step 5.

[0069] Otherwise, after generating multiple strongly connected components of the service conflict graph using the strongly connected component algorithm, execute Step 5.

[0070] The strongly connected component algorithm mentioned above refers to any one of the breadth-first search algorithm, depth-first search algorithm, and union-find algorithm.

[0071] According to the definition of a connected graph in graph theory: If there is a path between any two vertices, then the graph is a connected graph. The service conflict graph generated in Step 3 of the embodiment of the present invention is not a connected graph, so it is necessary to use the depth-first search algorithm to obtain the two strongly connected components as shown in Figure 4 where: Figure 4 (a) is the first strongly connected component, Figure 4 (b) is the second strongly connected component.

[0072] Since Figure 4 any vertex in Figure 4 (a) and Figure 4(a)'s time-triggered TT service will not conflict with Figure 4 (b)'s time-triggered service TT, so Figure 4 (a) and Figure 4 (b)'s time-triggered TT service can independently perform subsequent operations.

[0073] Step 5, select the maximum connected subgraph and partition the set.

[0074] (5.1) Select an unselected maximum connected subgraph from multiple maximum connected subgraphs;

[0075] (5.2) Partition the TT services with the same transmission period within the maximum connected subgraph into the same service set, and sort the service sets in ascending order of the transmission period.

[0076] According to the service period information in Table 1, in this example, for the first maximum connected subgraph, the services with a period of 1 are {Service 1, Service 5, Service 9, Service 10}, the services with a period of 2 are {Service 4, Service 5, Service 8, Service 11}, and the service with a period of 4 is {Service 2}. Number them in ascending order of the service period, and the result of the set partition is:

[0077] Table 4 Set table of the first maximum connected subgraph

[0078] Set Number Set Period Service ID 1 1 1、5、9、10 2 2 4、6、8、11 3 4 2

[0079] In this example, for the second maximum connected subgraph, the services with a period of 4 are {Service 3, Service 7}, and the result of the set partition is:

[0080] Table 5 Set table of the second maximum connected subgraph

[0081] Set Number Set Period Service ID 1 4 3、7

[0082] Step 6, group the services in the set.

[0083] (6.1) Sequentially select an ungrouped set from all the sets of the current maximum connected subgraph;

[0084] (6.2) For each TT service in the currently selected ungrouped set, count the number of conflicting services that conflict with other TT services within its set, and according to the principle that the higher the hop count of the service, the higher the priority, and the larger the number of conflicting services of services with the same hop count, the higher the priority, assign grouping priorities to the TT services within the set;

[0085] In the embodiment of the present invention, when this step is traversed for the first time, the first set in the first maximally connected subgraph contains 4 TT services, namely Service 1, Service 5, Service 9, and Service 10. According to the transmission paths in Table 1, the hop counts of each service are obtained as: 3, 2, 1, 2; the number of services conflicting with Service 1 within the set is 1, i.e., {Service 9}, the number of services conflicting with Service 5 within the set is 2, i.e., {Service 9, Service 10}, the number of services conflicting with Service 9 within the set is 3, i.e., {Service 1, Service 5, Service 10}, and the number of services conflicting with Service 10 within the set is 2, i.e., {Service 5, Service 9}; according to the priority assignment principle, the priorities of the TT services are obtained, and the priorities from high to low are: Service 1, Service 5, Service 10, Service 9;

[0086] When this step is traversed for the second time, the second set in the first maximally connected subgraph contains 4 TT services, namely Service 4, Service 6, Service 8, and Service 11. The hop counts of each service are respectively: 1, 2, 2, 2; the number of conflicting services within the set of each service is respectively: 0, 0, 1, 1. According to the priority assignment principle, the priorities of the TT services are obtained, and the priorities from high to low are: Service 8, Service 11, Service 4, Service 6;

[0087] When this step is traversed for the third time, the third set in the first maximally connected subgraph contains 1 TT service: Service 2. The service priority is: Service 2;

[0088] When this step is traversed for the fourth time, the first set in the second maximally connected subgraph contains 2 TT services, namely Service 3 and Service 7. The hop counts of each service are respectively: 1, 1; the number of conflicting services within the set of each service is respectively: 1, 1. According to the priority assignment principle, the priorities of the TT services are obtained, and the priorities from high to low are: Service 3, Service 7;

[0089] (6.3) Select the ungrouped TT service with the highest priority as the current service to be grouped;

[0090] (6.4) Perform different operations according to the number of existing groups in the current set:

[0091] If the number of existing groups in the current set is 0, then execute step (6.5)

[0092] Otherwise, execute step (6.6);

[0093] (6.5) Create a new group, number it Gi, and set the time slot number SN of this group iSet it to Nhop + 1, where Nhop is the hop count of the current TT service; then add the current TT service to this group, set the in-group time slot offset offset of the current service to 0, and execute step (6.11);

[0094] (6.6) Determine whether the current TT service has attempted to join all the groups in the set:

[0095] If so, execute step (6.5);

[0096] Otherwise, select a group G that has not been attempted to join, set the in-group time slot offset offset of this TT service to 0, and execute step (6.7);

[0097] (6.7) Calculate the time slots occupied by each link during the service transmission according to the in-group time slot offset offset of the current TT service:

[0098] offset k = offset + k, k ∈ [0, l)

[0099] where offset k is the time slot occupied by the k-th link of this service, and l is the total number of links passed through during the transmission of this service;

[0100] (6.8) Check whether the time slot offset l-1 occupied by the last link of the current TT service is less than the time slot quantity SN of this group:

[0101] If so, execute step (6.9),

[0102] Otherwise, return to step (6.6);

[0103] (6.9) Statistically calculate the link set L occupied by each time slot of this service according to the type of the current TT service i :

[0104] If the current TT service is a unicast service, add the link on which this service is transmitted in the i-th time slot to the set L i ;

[0105] If the current TT service is a multicast service or a redundant service, add all the link sets on which this service is transmitted in the i-th time slot to the set L i ;

[0106] (6.10) Traverse the time slots occupied by each link of the current TT service, statistically calculate the link set S occupied by other services in the same time slot in this group i , and determine whether there is a conflict between the transmission link set L i of the current time slot of this TT service and the link set S i :

[0107] If the link set S of any time slot i conflicts with the link set L for transmitting the current TT service in this time slot i then update the intra-group time slot offset offset = offset + 1 of this service, and return to step (6.7);

[0108] If the link sets of all time slots do not conflict with the links for transmitting the current TT service in this time slot, record the group where the service is located as the current group G, record the intra-group time slot offset of the service as offset, and execute step (6.11);

[0109] (6.11) Determine whether all services in the current set have been grouped:

[0110] If so, end the grouping operation of the services in the current set and execute step 8;

[0111] Otherwise, return to step (6.3).

[0112] In the embodiment of the present invention, all services are unicast services. Group the first set of the first maximally connected subgraph. According to the service priorities obtained in step (6.2), first select service 1 with the highest priority as the service to be grouped. At this time, the number of existing groups in the set is 0. Create a new group and number it G1. The hop count Nhop of the current service to be grouped is 3. Therefore, set the number of time slots of this group to SN1 = 4. Add TT1 to this group, and set the intra-group time slot offset offset of TT1 to 0;

[0113] Select service 5 with the highest priority and not yet grouped as the current service to be grouped. At this time, the number of existing groups in the set is 1. Select group G1, and set the intra-group time slot offset offset of this service 5 to 0. The time slots occupied by each link during the transmission of service 5 are: 0, 1, 2. The time slot occupied by the last link of this service is 2, which is less than the number of time slots of this group, satisfying condition (6.8). Further, count the link conflict situations of each time slot: the link set occupied by time slot 0 is {1}, the link set occupied by time slot 1 is {11}, the link set occupied by time slot 2 is {13}. The links occupied by the current service 5 at time slots 0, 1, 2, and 3 are: 10, 6, 4, respectively, and there are no conflicts with the link sets of the corresponding time slots, satisfying the condition. Therefore, record the group where service 5 is located as G1, and the intra-group time slot offset offset is 0;

[0114] Select the service 10 with the highest priority and not yet grouped as the current service to be grouped. At this time, the number of existing groups in the set is 1, and group G1 is selected. Set the intra-group time slot offset offset of this service 10 to 0. The time slots occupied by each link during the transmission of service 10 are: 0, 1, 2. The time slot occupied by the last link of this service is 2, which is less than the number of time slots in this group, satisfying condition (6.8). Further, count the link conflict situation for each time slot: the set of links occupied by time slot 0 is {1, 10}, the set of links occupied by time slot 1 is {11, 6}, the set of links occupied by time slot 2 is {13, 4}. The links occupied by the current service 5 at time slots 0, 1, 2, 3 are: 10, 6, 2, respectively, which conflicts with the link set of time slot 1 and does not satisfy condition (6.10). Update the intra-group time slot offset offset of service 10 to 1. The time slots occupied by each link during the transmission of service 10 are: 1, 2, 3. The time slot occupied by the last link of this service is 3, which is less than the number of time slots in this group, satisfying condition (6.8). Further, count the link conflict situation for each time slot: the set of links occupied by time slot 1 is {11, 6}, the set of links occupied by time slot 2 is {13, 4}, the set of links occupied by time slot 3 is {7}, and there are no conflicts with the link sets of the corresponding time slots, satisfying condition (6.10). Therefore, record that the group where service 10 is located is G1, and the intra-group time slot offset offset is 1;

[0115] Select the service 9 with the highest priority and not grouped as the current service to be grouped. At this time, the number of existing groups in the set is 1. Select group G1, set the intra-group time slot offset offset of this service 9 to 0. The time slots occupied by each link during the transmission of service 10 are: 0, 1. The time slot occupied by the last link of this service is 1, which is less than the number of time slots in this group; the set of links occupied by time slot 0 is {1, 10}, the set of links occupied by time slot 1 is {11, 6, 10}, the set of links occupied by time slot 2 is {13, 4, 6}, the set of links occupied by time slot 3 is {2, 7}. The links occupied by the current service 9 in time slots 0 and 1 are: 10, 7, which conflicts with the set of links in time slot 0 and does not meet condition (6.10). Update the intra-group time slot offset offset of service 9 = 1; the time slot occupied by the last link of service 9 is less than the number of time slots in this group, meeting condition (6.10). The links occupied by service 9 in time slots 1 and 2 are: 10, 7, which conflicts with the links occupied by time slot 1. Update the intra-group time slot offset offset of service 10 = 2; the time slot occupied by the last link of service 9 is less than the number of time slots in this group. The links occupied by service 9 in time slots 2 and 3 are: 10, 7, which conflicts with the links occupied by time slot 3 and does not meet condition (6.10). Update the intra-group time slot offset offset of service 9 = 3; the time slots occupied by each link during the transmission of service 9 are: 3, 4. The time slot occupied by the last link of this service is 4, which is equal to the number of time slots in this group and does not meet condition (6.8). Return to step (6.6). Since service 9 has tried to join all the groups in the set, a new group is created and numbered G2. The hop count Nhop of the current service to be grouped is 1. Therefore, set the number of time slots in this group to SN1 = 2, add TT1 to this group, and set the intra-group time slot offset offset of TT1 to 0. All services in this set have been added to groups;

[0116] Repeat step 6 to obtain the service grouping results of all sets in each maximally connected subgraph in this example, as shown in Table 6:

[0117] Table 6 Grouping result table

[0118]

[0119] Step 7, allocate the groups to the idle time slots on the time axis.

[0120] (7.1) According to the service cycle cycle of the services in the set where the current group is located and the matrix cycle MC, calculate the number of transmissions Ntrans of the current service set within one matrix cycle:

[0121]

[0122] In the embodiment of the present invention, when this step is traversed for the first time, according to the above formula, the number of transmissions of the set 1 of the first maximum connected subgraph within one matrix period is calculated to be 4 times; when this step is traversed for the second time, according to the above formula, the number of transmissions of the set 2 of the first maximum connected subgraph within one matrix period is calculated to be 2 times; when this step is traversed for the third time, according to the above formula, the number of transmissions of the set 1 of the second maximum connected subgraph within one matrix period is calculated to be 1 time;

[0123] (7.2) Select a packet that has not been assigned a scheduling time from all the groups in the current set;

[0124] (7.3) Starting from the starting time slot of the first basic period, search sequentially from front to back to determine whether there is a time slot slot that satisfies the following conditions k :

[0125] Condition 1, starting from slot k , the consecutive SN time slots are all in an idle state, where SN is the number of time slots of the packet;

[0126] Condition 2, the time corresponding to the last idle time slot slot k+SN-1 is less than the transmission period of the service in the current packet:

[0127] bc i ×BC + slot k+SN-1 ×N < cycle

[0128] where bc i is the basic period number where slot k+SN-1 is located, and N is the time slot size;

[0129] Condition 3, the consecutive SN time slots corresponding to the Ntrans transmissions of the packet in the matrix period are all in an idle state;

[0130] If there is a time slot that simultaneously satisfies the above three conditions, record the basic period number bc i , record the time slot number slot k , and set all the time slots occupied by the service in the matrix period to an occupied state, add all the services in the packet to the successfully scheduled service set, and execute step (7.4);

[0131] Otherwise, add all the services in the packet to the unsuccessfully scheduled service set and execute step (7.4);

[0132] In the embodiment of the present invention, for the first set in the first maximally connected subgraph, when traversing to this step for the first time, group 1 is selected, and it is searched that the first time slot slot0 of the first basic cycle bc0 simultaneously satisfies the above three conditions. Group 1 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot0 are recorded; when traversing to this step for the second time, group 2 is selected, and it is searched that the 5th time slot slot4 of the 1st basic cycle bc0 simultaneously satisfies the above three conditions. Group 2 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot4 are recorded;

[0133] For the second set in the first maximally connected subgraph, when traversing to this step for the first time, group 1 is selected, and it is searched that the 7th time slot slot6 of the 1st basic cycle bc0 simultaneously satisfies the above three conditions. Group 1 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot6 are recorded; when traversing to this step for the second time, group 2 is selected, and it is searched that the 10th time slot slot10 of the 1st basic cycle bc0 simultaneously satisfies the above three conditions. Group 2 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot10 are recorded;

[0134] For the third set in the first maximally connected subgraph, when traversing to this step for the first time, group 1 is selected, and it is searched that the 13th time slot slot12 of the 1st basic cycle bc0 simultaneously satisfies the above three conditions. Group 1 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot12 are recorded;

[0135] For the first set in the second maximally connected subgraph, when traversing to this step for the first time, group 1 is selected, and it is searched that the first time slot slot0 of the 1st basic cycle bc0 simultaneously satisfies the above three conditions. Group 1 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot0 are recorded; when traversing to this step for the second time, group 2 is selected, and it is searched that the 3rd time slot slot2 of the 1st basic cycle bc0 simultaneously satisfies the above three conditions. Group 2 is allocated to this time slot, and the basic cycle number bc0 and the time slot number slot2 are recorded;

[0136] (7.4) Determine whether all groups have been allocated time slots:

[0137] If so, the allocation of the scheduling time of the groups in this set is completed;

[0138] Otherwise, return to step (7.2).

[0139] Step 8, perform a backtracking operation on the groups that have not been successfully allocated time slots.

[0140] (8.1) Select a TT service that has not been backtracked from the set of services that have never been successfully scheduled;

[0141] (8.2) Initialize the basic period bc0 of the first transmission of this TT service to 0, and initialize the time slot offset backslot0 to 0;

[0142] (8.3) Calculate the time slots occupied by each link during the transmission of this TT service:

[0143] backslot k = backslot + k, k ∈ [0, l)

[0144] where l is the total number of links passed by this service during transmission;

[0145] (8.4) Determine whether the moment corresponding to the time slot backslot l-1 occupied by the last link of this service is less than the transmission period of this service:

[0146] If so, execute step (8.5);

[0147] Otherwise, mark the scheduling of this TT service as failed and execute step (8.8);

[0148] (8.5) Calculate the set of time slots occupied by each transmission of this TT service in the matrix period:

[0149]

[0150] where, TS m is the set of time slots occupied by the m-th transmission, backslot0 is the time slot offset of the first transmission of this service in the matrix period, l is the total number of links passed by this service during transmission, and cycle is the transmission period of this service;

[0151] (8.6) For the set of time slots TS m occupied by each transmission, traverse each time slot t in it and set the following link conflict-free condition:

[0152]

[0153] where, L occ (t) is the set of links already occupied by time slot t, and L can (t) is the link occupied by the current TT service at time slot t;

[0154] (8.7) Determine whether each time slot t in the time slot set TS m satisfies the link conflict-free condition:

[0155] If any time slot does not meet the link conflict - free condition, update backslot0 = backslot0 + 1, and return to step (8.3);

[0156] If all time slots meet the link conflict - free condition, calculate the scheduling time of this service according to the basic cycle number bc0 and time - slot offset backslot0 of this packet: E send = bc0×BC + backslot0×N, where

[0157] BC is the basic cycle length, N is the time - slot length, and execute step (8.8);

[0158] (8.8) Determine whether all TT services in the unsuccessfully scheduled set have been traversed:

[0159] If so, all services in this sub - graph complete the back - tracking operation, and execute step 9;

[0160] Otherwise, return to step (8.1).

[0161] Step 9, generate the scheduling time table.

[0162] (9.1) Traverse all TT services and calculate the transmission time E at the source end for the service send :

[0163] E send = bc i ×BC + slot k ×N

[0164] where bc i is the basic cycle number assigned to the packet where the service is located, BC is the basic cycle length, slot k is the time - slot offset assigned to the packet where the service is located, and N is the time - slot size;

[0165] (9.2) Calculate the transmission and reception times of each - level switch and the reception time at the destination end according to the transmission time E at the source end. The formulas are as follows: send The transmission time S

[0166] of each - level switch (i): send (i):

[0167] S send (i)= E send + i×N

[0168] The reception time S recv (i) of each - level switch:

[0169]

[0170] The reception time E of the destination - end systemrecv :

[0171] E recv = S send (Nhop) + Ssd + Ls + Erd

[0172] Wherein, i is the i-th level switch, N is the time slot size, Esd is the transmission delay of the end system, Ls is the link propagation delay, Srd is the switch reception delay, Ssd is the switch transmission delay, Nhop is the number of hops of the service, and Erd is the reception delay of the destination end system;

[0173] (9.3) Classify the transmission times of each level switch and the destination end system of each time-triggered TT service according to their corresponding node numbers to obtain the transmission tables of each switch and each end system.

[0174] In the embodiment of the present invention, the transmission time tables of each node are generated as shown in the sub-tables in Table 7.

[0175] Table 7-1 Transmission Table of End System 1

[0176] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 1 0 256 1 8 120000 1024 2 11 180000 512 2

[0177] Table 7-2 Transmission Table of End System 5

[0178] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 4 120000 1518 2

[0179] Table 7-3 Transmission Table of End System 6

[0180] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 5 0 1024 1 10 20000 512 1 9 80000 128 1 6 120000 128 2

[0181] Table 7-4 Transmission Table of Switch 3

[0182] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 1 20000 256 1 5 40000 1024 1 10 60000 512 1 8 140000 1024 2 6 160000 128 2 11 200000 512 1 2 260000 1518 2

[0183] Table 7-5 Transmission Table of End System 8

[0184] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 3 0 256 4 7 40000 256 4

[0185] Table 7-6 Transmission Table of End System 2

[0186] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 2 240000 1518 4

[0187] Table 7-7 Transmission Table of Switch 4

[0188] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 5 20000 1024 1 10 40000 512 1 1 60000 256 1 9 100000 128 1 6 140000 128 2 4 140000 1518 2 8 160000 1024 2 11 220000 512 2 2 300000 1518 4

[0189] Table 7-8 Transmission Table of Switch 7

[0190] Service ID Transmission Time (ns) Frame Length (byte) Period (ms) 1 40000 256 1 3 20000 256 1 7 60000 256 1 2 280000 1518 1

[0191] It should be noted that step 8 is a backtracking operation for the services in the packets that have not been successfully allocated scheduling time slots in step 7. If all packets have been successfully allocated scheduling time slots after step 7, step 8 does not need to be executed, and step 9 is directly executed. In this example, all packets have been successfully allocated time slots, and the set of unsuccessfully scheduled services is empty, so no backtracking operation is required.

[0192] Embodiment 2: Scheduling Table Generation System for Time-Triggered Services

[0193] Refer to Figure 5 , this example includes a preprocessing module 1, a set partitioning module 2, a packetizing module 3, a scheduling module 4, and a backtracking module 5. Among them:

[0194] The preprocessing module 1 is used to read network parameters and TT service information, determine the time slot size according to the network parameters, construct a service conflict graph, obtain the maximum connected subgraph of the conflict graph, and transmit it to the set partitioning module;

[0195] The set partitioning module 2 is used to independently partition the maximum connected subgraph into multiple sets, sort the sets according to the period, and transmit the set partitioning and sorting results to the packetizing module;

[0196] The packetizing module 3 is used to assign priorities to services in each set, sequentially divide the services into packets without link conflicts, and transmit the packetizing results to the scheduling module;

[0197] The scheduling module 4 is used to allocate packets to idle time slots on the time axis, transmit the set of unsuccessfully scheduled services to the backtracking module, and transmit the successfully packetized services to the scheduling table generation module;

[0198] The backtracking module 5 is used to perform a backtracking operation on the unsuccessfully scheduled services, attempt to allocate time slots again, and transmit the services that succeed in backtracking to the scheduling table generation module;

[0199] The scheduling table generation module 6 is used to calculate the source-end system sending time, the receiving and sending times of each level of switch, and the destination-end system receiving time of the service according to the packet where the service is located, the time slot offset within the group, and the time slot where the packet is located.

[0200] The effects of the present invention can be further illustrated by the following simulation experiments:

[0201] 1. Simulation conditions:

[0202] Set the time-triggered Ethernet network topology as Figure 2 shown, add 11 TT services, and the service parameters are shown in Table 1.

[0203] 2. Simulation content:

[0204] Using the present invention and an existing method for generating an incremental scheduling table with decreasing conflict degree (application number: CN202210106725.3) to perform scheduling planning on the above 11 TT services respectively, generate the transmission timetables of each end system and switch, and count the time required for scheduling planning by the two methods. The transmission timetables of end system 1 and the overall solution time generated by the two methods respectively are shown in Table 8;

[0205] Table 8 Comparison of Transmission Timetables of End System 1

[0206]

[0207] As can be seen from Table 8, the time consumption of scheduling and solving using the present invention is significantly lower than that of using the existing method for scheduling and solving, indicating that using the present invention can effectively reduce the time complexity of scheduling planning and solving.

[0208] It should be noted that the step numbers in the specification and claims of the present invention are only for a clear description of the implementation embodiments of the present invention for easy understanding, and their sequence numbers are not limited.

Claims

1. A method for generating a scheduling table for time-triggered services, characterized in that, including: Construct a TTE scheduling model, divide the time axis into equal-length time slots, construct a service conflict graph according to whether there is a link conflict between time-triggered TT services, and obtain the maximum connected subgraph of the conflict graph; Independently partition sets for each subgraph, partition services with the same period into one set, and sort them according to service priorities within the set; Sequentially divide services into link-conflict-free groups in each set, and record the group numbers and slot offsets within the groups; Allocate the groups to the idle time slots on the time axis and record the time slots where the groups are located; Judge whether there are groups in the current maximum connected subgraph for which the time slots have not been successfully allocated: If so, try to allocate again through backtracking operations; Otherwise, based on the time slot where the service group is located and the intra-group time slot offset of the service, obtain the transmission time E of the service at the source end send , calculate the transmission time S of each level of switch according to the transmission time at the source end send , the reception time S recv and the reception time E at the destination end recv , and generate a conflict-free scheduling table.

2. The method according to claim 1, wherein The implementation of dividing the time axis into equal-length time slots includes the following: 2a) Obtain the period parameters of TT services, calculate the greatest common divisor of the periods of all TT services, denoted as the basic period BC; calculate the least common multiple of the periods of all TT services, denoted as the matrix period MC; number each basic period within one matrix period; 2b) Divide the basic period into several consecutive time slots of length N as the basic unit of scheduling. The size of time slot N needs to satisfy: Among them, Esd max is the maximum end-system transmission delay in the network, Ssd max is the maximum switch transmission delay in the network, Ls max is the maximum link propagation delay in the network, Srd max is the maximum switch reception delay in the network, Erd max is the maximum end-system reception delay in the network; Indicates the receiving window length of the TT service, len is the frame length of the TT service, bw is the link bandwidth, and sy is the synchronization accuracy in the TTE network.

3. The method according to claim 1, characterized in that, The construction of the service conflict graph according to whether there is a link conflict between time-triggered TT services is carried out through an undirected graph, and its implementation includes the following: 3a) Use a vertex in the undirected graph to correspond to a TT service in time-triggered Ethernet; 3b) Use whether there is an edge between two vertices in the undirected graph to represent the link conflict situation between two TT services: If there is a link conflict between two TT services, there is an edge between the corresponding two vertices in the undirected graph; If there is no link conflict between two TT services, there is no edge between the corresponding two vertices in the undirected graph; 3c) Judge whether the service conflict graph is a connected graph: If so, generate a maximum connected subgraph of the service conflict graph; If not, use the maximum connected subgraph algorithm to decompose the service conflict graph into multiple maximum connected subgraphs.

4. The method according to claim 1, wherein The independent partitioning of sets for each maximum connected subgraph is to partition TT services with the same transmission period within the maximum connected subgraph into the same service set, and sort the service sets in ascending order of transmission period.

5. The method according to claim 1, characterized in that, The implementation of sequentially dividing services into link-conflict-free groups in each set includes the following: 5a) For each TT service in the current set, count the number of conflicting services whose transmission paths have the same physical link as the transmission paths of other TT services in the set; 5b) According to the principle that the higher the hop count of the service, the higher the priority, and the larger the number of conflicting services of services with the same hop count, the higher the priority, allocate grouping priorities to the TT services in the set; 5c) Select the ungrouped TT service with the highest priority as the current service to be grouped; 5d) Perform different operations according to the number of existing groups in the current set: If the number of existing groups in the current set is 0, then execute step 5e) Otherwise, execute step 5f); 5e) Create a new group, number it, set the number of time slots SN of this group to Nhop + 1, where Nhop is the number of hops of the current TT service; then add the current TT service to this group, set the in-group time slot offset offset of the current service to 0, and execute step 5k); 5f) Determine whether the current TT service has attempted to join all groups in the set: If so, execute step 5e); Otherwise, select a group G that has not been attempted to join, set the in-group time slot offset offset of this TT service to 0, and execute step 5g); 5g) Calculate the time slots occupied by each link during the service transmission according to the in-group time slot offset offset of the current TT service: offset k = offset + k, where k ∈ [0, l) where offset k is the time slot occupied by the k-th link of this service, and l is the total number of links passed through during the transmission of this service; 5h) Check whether the time slot offset occupied by the last link of the current TT service l-1 is less than the time slot quantity SN of this packet If so, execute step 5i), Otherwise, return to step 5f); 5i) Statistically analyze the link set L occupied by each time slot of the service according to the type of the current TT service i : If the current TT service is a unicast service, add the link for transmitting this service in the i-th time slot to the set L i ; If the current TT service is a multicast service or a redundant service, add all link sets transmitted by the service in the i-th time slot to set L i ; 5j) Traverse the time slots occupied by each link of the current TT service, and count the set of links S occupied by other services in the same time slots in this group i , and determine the set of transmission links L of the current time slot of this TT service i and the set of links S i whether there is a conflict: If the link set S of any time slot i conflicts with the link set L for transmitting the current TT service in this time slot i then update the intra-group time slot offset offset = offset + 1 for this service, and return to step 5g); If there is no conflict between the link sets of all time slots and the links through which the current TT service is transmitted at this time slot, record the group where the service is located as the current group G, record the in-group time slot offset of the service as offset, and execute step 5k); 5k) Determine whether all services in the current set have joined the group: If so, end; Otherwise, return to step 5c).

6. The method according to claim 1, characterized in that, The allocation of the group to the idle time slots in the time axis is implemented as follows: 6a) Calculate the number of transmissions Ntrans of the current service set within one matrix period according to the cycle cycle of the current set of services and the matrix cycle MC: 6b) Select a group from all groups in the current set that has not been assigned a scheduling time; 6c) Starting from the starting time slot of the first basic cycle, search sequentially from front to back to determine whether there is a time slot slot that meets the following conditions k : Condition 1, starting from slot k and the consecutive SN time slots are all in the idle state, where SN is the number of time slots of the packet; Condition 2, the last idle time slot k+SN-1 The corresponding moment is less than the transmission period of the service in the current packet: bc i ×BC + slot k+SN-1 ×N < cycle where bc i is the basic cycle number where the slot k+SN-1 is located, and N is the time slot size; Condition 3, the continuous SN time slots corresponding to the Ntrans transmissions of this group in the matrix period are all in the idle state; If there is a time slot that simultaneously satisfies the above three conditions, record the basic cycle number bc of the packet i , record the time slot number slot k , set all time slots occupied by this service in the matrix cycle to the occupied state, add all services in this packet to the successfully scheduled service set, and execute step 6d); Otherwise, add all services in this group to the set of services that have not been successfully scheduled, and execute step 6d); 6d) Determine whether all groups have been assigned time slots: If so, complete the allocation of the scheduling times of the groups in this set; Otherwise, return to step 6b).

7. The method according to claim 1, characterized in that, The re-attempted allocation of the groups that have not been successfully assigned time slots in the subgraph through the backtracking operation is implemented as follows: 7a) Select a TT service from the set of services that have not been successfully scheduled and has not undergone a backtracking operation; 7b) Initialize the basic cycle bc0 of the first transmission of this TT service to 0, and initialize the time slot offset backslot0 to 0; 7c) Calculate the time slots occupied by each link during the TT service transmission: backslot k = backslot + k, k ∈ [0, l), where l is the total number of links through which the service is transmitted; 7d) Determine whether the time slot backslot occupied by the last link of the service l-1 at the corresponding moment is less than the transmission period of the service: If so, execute step 7e); Otherwise, mark the scheduling of this TT service as failed, and execute step 7h); 7e) Calculate the set of time slots occupied by each transmission of this TT service in the matrix period: Among them, TS m is the set of time slots occupied by the m-th transmission, backslot0 is the time slot offset of the first transmission of this service within the matrix period, l is the total number of links passed by the transmission of this service, and cycle is the transmission cycle of this service; 7f) For the set of time slots TS occupied by each transmission m , traverse each time slot t therein, and set the following link conflict-free condition as: Among them, L occ (t) is the set of links occupied in time slot t, and L can (t) is the link occupied by the current TT service in time slot t; 7g) Determine whether each time slot t in the time slot set TS m satisfies the link conflict-free condition: If any one of the time slots does not meet the link conflict-free condition, update backslot0 = backslot0 + 1, and return to step 7c); If all time slots satisfy the link conflict-free condition, calculate the scheduling time of this service according to the basic cycle number bc0 and time slot offset backslot0 of this packet: E send = bc0 × BC + backslot0 × N, where BC is the basic cycle length and N is the time slot length, and perform step 7h); 7h) Determine whether all TT services in the set of services that have not been successfully scheduled have been traversed: If so, all services in this subgraph have completed the backtracking operation; Otherwise, return to step 7a).

8. The method according to claim 1, characterized in that, The sending time E of the said service at the source end send is obtained through formula calculation: E send = bc i × BC + slot k × N Among them, bc i is the basic cycle number assigned to the group where the service is located, BC is the basic cycle length, and slot k is the time slot offset assigned to the group where the service is located, and N is the time slot size.

9. The method according to claim 1, characterized in that, The transmission time E of the source end mentioned above send Calculate the transmission and reception times of each level of switch and the reception time of the destination end, and their formulas are as follows respectively: The transmission time S of each level of switch send (i): S send (i) = E send + i × N The receiving moment S of each level of switch recv (i): Receiving time E of the destination system recv : E recv = S send (Nhop)+Ssd+Ls+Erd Where i is the i-th level switch, N is the time slot size, Esd is the end system transmission delay, Ls is the link propagation delay, Srd is the switch reception delay, Ssd is the switch transmission delay, Nhop is the number of hops of this service, and Erd is the destination end system reception delay.

10. A scheduling table generation system for time-triggered services, characterized in that, Including: A preprocessing module, which is used to read network parameters and TT service information, determine the time slot size according to the network parameters, construct a service conflict graph, and obtain the maximum connected subgraph of the conflict graph; A set partitioning module, which is used to independently partition the maximum connected subgraph into multiple sets and sort the sets according to the period; A grouping module, which is used to assign priorities to services in each set and sequentially divide the services into groups without link conflicts; A scheduling module, which is used to allocate the groups to the idle time slots in the time axis; A backtracking module, which is used to perform backtracking operations on the services that have not been successfully scheduled and try to allocate time slots again; A scheduling table generation module, which is used to calculate the sending time of the source end system of the service, the receiving and sending times of each level of switch, and the receiving time of the destination end system according to the group where the service is located, the time slot offset within the group, and the time slot where the group is located.

Citation Information

Patent Citations

  • An incremental scheduling table generation method with decreasing conflict level

    CN114531444B