Routing and scheduling method for complex time-sensitive network and related device

By generating a set of landmark switches in complex time-sensitive networks, using AStar search and Young's algorithm to optimize paths, and combining differential evolution algorithm to calculate time slot schemes, the problem of low routing transmission performance in traditional network topologies is solved, achieving efficient and reliable data transmission.

CN119946844BActive Publication Date: 2025-12-30CHONGQING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411996181.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-31
Publication Date
2025-12-30
Estimated Expiration
2044-12-31

AI Technical Summary

Technical Problem

Traditional network topologies are unable to meet the demands of high-requirement, large-scale networks, and their poor network routing and transmission performance limits network performance, especially when dealing with complex networks.

Method used

This paper provides a routing and scheduling method and related apparatus for complex time-sensitive networks. The method generates a set of landmark switches from the Link Layer Discovery Protocol (LLDP), optimizes the path set by combining the AStar search algorithm and Young's algorithm, and uses the differential evolution algorithm for iterative calculation to optimize the path and time slot scheme.

Benefits of technology

Improve and optimize the accuracy of routing and scheduling algorithms to ensure the determinism and reliability of business data transmission, adapt to complex network conditions, and provide flexibility and adaptability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119946844B_ABST
    Figure CN119946844B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of data processing, and discloses a routing and scheduling method for a complex time-sensitive network and related devices, which comprises the following steps: selecting landmark switches from a complex time-sensitive network topology to obtain a landmark switch set; performing minimum hop matrix calculation on each switch in the switch set to obtain a minimum hop set; performing optimal path calculation on each to-be-scheduled flow in a to-be-scheduled flow set based on the landmark switch set and the minimum hop set to obtain an optimal path set; performing optimal path optimization on the optimal path set through Yang's algorithm to obtain a K-optimal path set; performing iterative calculation on the K-optimal path set by using a differential evolution algorithm to obtain a reference time slot scheme; and performing scheduling judgment on the reference time slot scheme, so that the overall time slot scheme is obtained and the overall time slot scheme is configured under the condition that the reference time slot scheme meets a scheduling end condition, and the accuracy of routing and scheduling can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing technology, and in particular to a routing and scheduling method and related apparatus for complex time-sensitive networks. Background Technology

[0002] With the widespread adoption of the internet, providing high-quality, efficient, secure, and stable network services has become an urgent issue for every operator. The rise of mobile internet, big data, and cloud computing has also brought new prospects and unprecedented challenges to networks. Traditional network topologies struggle to meet the demands of high-requirement, high-quality, and large-scale networks, leading to increasingly complex topologies. This complexity is generally manifested in their intricate structure, massive scale, and diverse inter-node connection methods. Large-scale network infrastructure has made data transmission and information exchange increasingly convenient, greatly promoting increased productivity and optimized allocation of social resources. However, with the expansion of network scale and the inherent heterogeneity, dynamism, and decentralization of networks, problems in information security, address allocation, network awareness, congestion control, path planning, and load balancing are becoming increasingly prominent. Simultaneously, with more and more mobile devices accessing the network, existing network routing protocols are increasingly unable to adapt to network characteristics, resulting in poor network routing and transmission performance and hindering network performance. To ensure the quality of service for data and information during network transmission, selecting appropriate path planning algorithms is crucial. Therefore, improving and optimizing the accuracy of routing and scheduling algorithms has become an urgent problem to be solved. Summary of the Invention

[0003] This invention provides a routing and scheduling method and related apparatus for complex time-sensitive networks, in order to solve the technical problem of how to improve and optimize the accuracy of routing and scheduling algorithms.

[0004] Firstly, a routing and scheduling method for complex time-sensitive networks is provided, including:

[0005] Landmark switches are selected from the complex time-sensitive network topologies generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches.

[0006] For each switch in the set of switches in a complex time-sensitive network topology, the minimum hop count matrix is ​​calculated to obtain the minimum hop count set;

[0007] Based on the set of landmark switches and the set of minimum hop counts, the optimal path is calculated for each flow to be scheduled in the set of flows to be scheduled using the AStar search algorithm, and the optimal path set is obtained.

[0008] Based on the optimal path set, the optimal path is optimized using Young's Yen algorithm to obtain the K-optimal path set;

[0009] Based on the K-optimal path set, the differential evolution algorithm is used for iterative calculation to obtain the reference time slot scheme;

[0010] The reference time slot scheme is used for scheduling determination. If the reference time slot scheme meets the scheduling termination condition, the overall time slot scheme is obtained and configured.

[0011] Secondly, a routing and scheduling device for complex time-sensitive networks is provided, comprising:

[0012] The selection module is used to select landmark switches from the complex time-sensitive network topology generated by the Link Layer Discovery Protocol LLDP, and obtain a set of landmark switches.

[0013] The first processing module is used to perform minimum hop count matrix calculation for each switch in the set of switches in a complex time-sensitive network topology to obtain the minimum hop count set.

[0014] The second processing module is used to calculate the optimal path for each flow to be scheduled in the set of flow to be scheduled based on the set of landmark switches and the set of minimum hop count, and to obtain the optimal path set.

[0015] The third processing module is used to optimize the optimal path based on the optimal path set using Young's Yen algorithm, and obtain the K-optimal path set.

[0016] The fourth processing module is used to perform iterative calculations using the differential evolution algorithm based on the K-optimal path set to obtain the reference time slot scheme;

[0017] The fifth processing module is used to perform scheduling determination on the reference time slot scheme, so as to obtain the overall time slot scheme and configure the overall time slot scheme if the reference time slot scheme meets the scheduling termination condition.

[0018] Thirdly, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the above-described routing and scheduling method for complex time-sensitive networks.

[0019] Fourthly, a computer-readable storage medium is provided, which stores a computer program that, when executed by a processor, implements the steps of the above-described routing and scheduling method for complex time-sensitive networks.

[0020] The aforementioned routing and scheduling method and related apparatus for complex time-sensitive networks (TSNs) implements a scheme by selecting landmark switches from the complex TSN topology generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches. For each switch in the set of switches in the complex TSN topology, a minimum hop count matrix is ​​calculated to obtain a minimum hop count set. Based on the landmark switch set and the minimum hop count set, the optimal path can be calculated for each flow to be scheduled in the set of flows to be scheduled using the A-Star search algorithm to obtain an optimal path set. Based on the optimal path set, the optimal path is optimized using Young's algorithm to obtain a K-optimal path set. Then, based on the K-optimal path set, a differential evolution algorithm is used for iterative calculation to obtain a reference time slot scheme. The reference time slot scheme can then be used for scheduling determination. If the reference time slot scheme meets the scheduling termination condition, the overall time slot scheme is obtained and configured. This effectively improves and optimizes the accuracy of service routing and scheduling algorithms, and helps ensure the determinism and reliability of service data transmission. Attached Figure Description

[0021] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0022] Figure 1 This is a schematic diagram of a TSN network architecture according to an embodiment of the present invention;

[0023] Figure 2 This is a flowchart illustrating a routing and scheduling method for complex time-sensitive networks according to an embodiment of the present invention;

[0024] Figure 3 This is a schematic diagram of a time-slot scheme according to an embodiment of the present invention;

[0025] Figure 4 This is a schematic diagram of a routing and scheduling device for complex time-sensitive networks according to an embodiment of the present invention;

[0026] Figure 5 This is a schematic diagram of the structure of a computer device according to an embodiment of the present invention;

[0027] Figure 6 This is another structural schematic diagram of a computer device according to one embodiment of the present invention. Detailed Implementation

[0028] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0029] The routing and scheduling method for complex time-sensitive networks provided in this invention is applicable to routing and scheduling in complex time-sensitive networking (TSN). The method provided in this application can perform routing and scheduling calculations for complex TSN at a centralized network configuration (CNC), primarily addressing the data flow transmission and scheduling problem at the data layer in the TSN network architecture. The CNC can include a network module capable of executing all algorithms, distributing configuration information, and generating the TSN network topology; this is a prerequisite for all TSN scheduling problems.

[0030] When a TSN sender needs to transmit a data stream to a receiver, the sender uses the user configuration protocol to send a TSN connection request to the Centralized User Configuration (CUC). The CUC discovers and retrieves the capabilities and requirements of the terminal devices. The CNC discovers the network topology and collects information such as the IP addresses and performance of TSN switches in the network. Based on the sender's TSN traffic transmission requirements, the CUC exchanges traffic information with the CNC in text or binary form through the User Network Interface (UNI). After receiving the request, the CNC uses the routing and scheduling algorithms in this method to calculate the optimal transmission path and feasible scheduling table to meet the requirements as a transmission plan.

[0031] Please see Figure 1 As shown, Figure 1 This is a schematic diagram of a TSN network architecture provided by an embodiment of the present invention. It is understood that this application mainly addresses the path planning and traffic scheduling problems of time-triggered flows in complex time-sensitive networks. Given that complex time-sensitive networks are the research object, this method employs the proposed Bidirectional AStar Landmarks Hops (BALH) algorithm and an improved differential evolution algorithm to calculate the optimal transmission path and overall time slot scheme for the flow to be scheduled. This ensures that when the flow to be scheduled uses the scheme calculated by this method, there will be no inter-flow transmission conflicts, i.e., it satisfies the requirement of wait-free transmission.

[0032] If a transmission plan that meets the requirements exists, the CNC can configure TSN characteristics for all TSN switches along each TSN flow transmission path based on the calculated path and scheduling table. The CNC returns the transmission plan and TSN flow configuration status to the CUC, which then configures all devices to send data based on the TSN flow configuration status. The routing and scheduling method for complex time-sensitive networks proposed in this application can be divided into routing planning algorithms and traffic scheduling algorithms, and may specifically include the following research content.

[0033] Please see Figure 2 As shown, Figure 2 A flowchart illustrating a routing and scheduling method for complex time-sensitive networks provided in an embodiment of the present invention includes the following steps:

[0034] S10: Select landmark switches from the complex time-sensitive network topology generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches.

[0035] Based on a fully centralized configuration model, the sending end can use the user configuration protocol to send TSN connection requests to the CUC. The CUC collects information such as the IP addresses of TSN switches in the network according to the Link Layer Discovery Protocol (LLDP) and sends it to the CNC through the UNI. The CNC generates the network topology based on this information. The CUC exchanges traffic information with the CNC through the user network interface according to the sending end's TSN traffic transmission requirements.

[0036] Before calculating the optimal path, the CNC can first perform pre-calculation. That is, the CNC can initialize the adjacency matrix based on the network topology and determine the number of landmark switches. Then, it selects landmark switches according to a greedy search strategy to obtain the set of landmark switches. The specific steps are as follows:

[0037] 1) CNC can transform the network topology into an adjacency matrix α based on the network topology information, and simultaneously obtain the number of devices Num. vex Link count Num arc Assume the number of switches is defined as Num. SW The number of terminal devices is Num ES It can be known that Num SW +Num ES =Num vex Given the above parameters, for any two switches, such as the first switch SW... i Second switch SW j The shortest path is found by traversing the path and gradually trying to find the path in SW. i and SW jAdd intermediate switch SW to the shortest path k If an intermediate switch (SW) is added... k If the path becomes shorter, update the shortest path; otherwise, maintain the original path. Continue this process until all switches have been traversed, resulting in the minimum hop count matrix Dis and the path matrix Path in the network topology. The minimum hop count matrix Dis can be used to record the hops of switches SW. i (Also known as the first switch) to switch SW j The minimum hop count of (i≠j) (also known as the second switch) is represented by element a in the minimum hop count matrix Dis. k (i,j) represents the path matrix Dis, which is used to record intermediate switches SW. k In the path matrix Path, use element b k (i,j) represents the matrix. The formula for calculating each element of the above matrix is ​​shown in formula (1.1):

[0038]

[0039] Among them, a k (i,j) can be used to represent the elements in the minimum hop count matrix Dis, and min(,) can be used to represent taking the minimum value between two elements; a k-1 (i,j) can be used to represent the state in SW. i To SW j The shortest path; a k-1 (i,k)+a k-1 (k,j) can be used to represent the state in SW. i To SW j Add intermediate switch SW to the path k The path after; b k (i,j) can be used to represent elements in the path matrix Path.

[0040] 2) The number of landmark switches (Num) determined by CNC for network topology l Generally, the number of landmark switches in a TSN network accounts for 10% (rounded down) of the total number of devices, as shown in formula (1.2):

[0041]

[0042] Among them, Num l It can be used to represent the number of landmark switches in a network topology; It can be used to represent calculations that are less than and closest to Num. vex An integer equal to 10.

[0043] 3) The CNC selects the landmark switch using a greedy strategy. The specific steps are as follows:

[0044] ① In the first iteration, CNC can randomly select a switch in the network as the landmark switch, such as the first landmark switch L1, and use the Dijkstra algorithm to select the switch with the largest minimum hop value from the current switch as the next landmark switch, such as the second landmark switch L2.

[0045] ② In the i-th iteration, the CNC selects the (i-1)th landmark switch L from the (i-1)th iteration. i-1 Initially, Dijkstra's algorithm is used to select the switch with the largest minimum hop value as the next switch, such as the i-th landmark switch L. i ;

[0046] ③ Iteration total Num l Next, the CNC can ultimately obtain a set of landmark switches, such as...

[0047] S20: Calculate the minimum hop count matrix for each switch in the set of switches in the complex time-sensitive network topology to obtain the minimum hop count set.

[0048] After selecting the landmark switches, the CNC can further preprocess all switches in the network based on these landmark switches. Specifically, the CNC can calculate the set L of landmark switches based on the minimum hop count matrix Dis. all The minimum hop count for each landmark switch in the network and each switch in the set of switches in the complex time-sensitive network topology is used to obtain the minimum hop count set corresponding to each switch, such as...

[0049] S30: Based on the set of landmark switches and the set of minimum hop counts, the optimal path is calculated for each flow to be scheduled in the set of flows to be scheduled using the AStar search algorithm, and the optimal path set is obtained.

[0050] The set of flows to be scheduled may include one or more flows to be scheduled. These flows can be data flows that need to be managed by appropriate routing planning and traffic scheduling algorithms in complex time-sensitive network topologies to meet the requirements of time-sensitive networks.

[0051] For example, this application refers to an ordered sequence of data frames transmitted from the sending end to the receiving end according to certain requirements as a stream. The research object is mainly the periodic time-triggered streams (hereinafter referred to as TT streams or scheduled streams) in complex time-sensitive networks. This application denotes the total number of scheduled streams as N. l The set of flows to be scheduled is denoted as Each flow f m With the src 7-tuplem ,dst m StreamID m ,PRI m ,FRL m ,T m ,td m ) indicates that src m It is a flow f m The sending end, dst m It is a flow f m The receiving end, StreamID m It is a flow f m Stream identifier, PRI m It is a flow f m priority, FRL m It is a flow f m The frame length, T m It is a flow f m The sending period, td m It is a flow f m The maximum end-to-end allowable delay. Assume the link transmission rate is V. F Then the terminal device and the switch send stream f m The time required for one frame can be FRL m / V F .

[0052] After the CNC pre-calculates the set of landmark switches and the minimum hop count set, it can perform an AStar search. After the CNC initializes the parameters required for the AStar search, the AStar search can start simultaneously at both the transmitting and receiving ends until the termination condition is met.

[0053] It's important to understand that the process of calculating the optimal path for each flow in the set of flows to be scheduled in a complex time-sensitive network topology, based on the set of landmark switches and the set of minimum hop counts, using a search algorithm, refers to the AStar search process. Specifically, step S30, which involves calculating the optimal path for each flow in the set of flows to be scheduled in a complex time-sensitive network topology based on the set of landmark switches and the set of minimum hop counts, includes the following steps:

[0054] S31: Obtain the first minimum hop count from each landmark switch in the landmark switch set to the first switch; the first switch is any switch in the switch set;

[0055] S32: Obtain the second minimum hop count from each landmark switch in the landmark switch set to the second switch; the second switch is any switch in the switch set except the first switch.

[0056] S33: Determine the estimated value set based on the first minimum hop count and the second minimum hop count;

[0057] S34: Determine the prediction function based on the predicted value set and the first constraint condition;

[0058] S35: Determine the evaluation function of AStar search based on the estimated cost from the first switch to the second switch and the actual cost from the sender of each scheduled flow in the set of scheduled flows to the first switch.

[0059] S36: Based on the evaluation function, start AStar search from the sender of each scheduled flow in the set of scheduled flows and the receiver of each scheduled flow in the set of scheduled flows to obtain the optimal path set.

[0060] 1) CNC initializes the parameters required for the AStar search step. Assume the current switch traversed during the AStar search process is defined as SW. AStar Let open set β1 be the set of all switches to be traversed during the AStar search process starting from the sender, and open set β2 be the set of all switches to be traversed during the AStar search process starting from the receiver. Let closed set γ1 be the set of all switches already selected during the AStar search process starting from the sender, and closed set γ2 be the set of all switches already selected during the AStar search process starting from the receiver. At the start of the AStar search, the CNC places the sender into open set β1, places the receiver into open set β2, and sets closed sets γ1 and γ2 to empty.

[0061] 2) For any flow to be scheduled in the set of flows to be scheduled, let f be the m-th flow to be scheduled. m The CNC can first determine the first switch SW. i To the second switch sw j The prediction function P(sw) i ,sw j Then determine the evaluation function F(sw) for AStar search. i ,sw j P(sw) i ,sw j ) can represent the set of landmark switches L all The first switch sw was obtained i To the second switch sw j The predicted function can be used to determine the subsequent AStar search evaluation function. Specifically, the predicted function P(sw) i ,sw j The calculation steps for ) can be as follows:

[0062] ① For the first landmark switch L1, the first switch sw is obtained through the above pre-calculation. i Minimum hop count to the first landmark switch L1 and the first landmark switch L1 to the second switch sw j Second minimum number of hops Calculate the first switch sw i Second switch sw j The process estimate P1 for the first landmark switch L1 is calculated using the formula shown in (1.3):

[0063]

[0064] P1 can be used to represent process estimate, such as the first process estimate; It can be used to represent calculations. The absolute value; It can be used to represent the first switch (sw). i The first minimum hop count to the first landmark switch L1; It can be used to represent the connection between the first landmark switch L1 and the second switch sw. j The second minimum number of hops.

[0065] ② For the i-th landmark switch L i Repeat step ① above to obtain the estimated value P. i For example, it is called the estimated value of the i-th process.

[0066] ③ The estimated cost of AStar search, h(sw) i ,sw j When determining the optimal path, the closer the path approximates the actual cost, the better the calculated result. After selecting the first landmark switch L1, considering that all switches in the network can satisfy the formula shown in (1.4), i.e., the first constraint condition:

[0067]

[0068] in, It can be used to represent the first switch (sw). i To the second switch sw j The minimum number of hops; It can be used to represent the first switch (sw). i The first minimum hop count to the first landmark switch L1; It can be used to represent the connection between the first landmark switch L1 and the second switch sw. j The second minimum number of hops.

[0069] In other words, the final calculation of the first switch sw iTo the second switch sw j The prediction function P(sw) i ,sw j The process can be shown in formula (1.5):

[0070] P(sw i ,sw j = max(P1, P2, ..., P i (1.5)

[0071] Among them, P(sw) i ,sw j ) can be used to represent the prediction function; max(P1,P2,...,P i () can be used to represent the calculation of P1, P2, ..., P i The maximum value in the range; P1 can be used to represent the estimated value of the first process; P2 can be used to represent the estimated value of the second process; P i It can be used to represent the estimated value of the i-th process.

[0072] Furthermore, the evaluation function F(sw) of the AStar search i ,sw j The formula for calculating ) is shown in (1.6):

[0073] F(sw i ,sw j ) = g(src m ,sw i )+h(sw i ,sw j (1.6)

[0074] Among them, F(sw) i ,sw j ) can be used to represent an evaluation function; g(src m ,sw i () can be used to represent the actual cost, representing the sender (src) of the stream to be scheduled. m To the first switch sw i The actual cost; h(sw) i ,sw j () can be used to represent the expected cost, representing the first switch sw i To the second switch sw j The expected cost.

[0075] This method considers calculating the path with fewer hops to ensure end-to-end latency of the flow; at the same time, considering the link load, the frame length of the flow transmitted on a single link at the same time should not be too large. Therefore, this method determines the evaluation function of AStar search based on the sum of the number of hops of the flow in the network topology and the frame length of the flow transmitted on the current link, as shown in formulas (1.7) and (1.8):

[0076]

[0077] Among them, g(src m ,sw i () can be used to represent the actual cost, representing the sender (src) of the stream to be scheduled. m To the first switch sw i The actual cost; It can be used to represent the flow f to be scheduled. m From the sender's src m to switch sw i The minimum number of hops; m can be used to represent the index of the stream to be scheduled in the set of streams to be scheduled; ω g1 It can be used to represent the actual cost hop count coefficient; ω g2 It can be used to represent the actual cost load factor; FRL m It can be used to represent the flow f to be scheduled. m Frame length; FRL sum It can be used to represent the sum of frame lengths of all streams currently being transmitted on the link; h(sw) i ,sw j () can be used to represent the expected cost, representing the first switch sw i To the second switch sw j The expected cost; P(sw) i ,sw j ) can be used to represent the prediction function; ω h1 It can be used to represent the expected cost hop count coefficient, ω h2 It can be used to represent the expected cost load factor. Optional, FRL can be obtained from the minimum hop count matrix Dis. m and FRL sum The scheduled stream f can be received by the CNC m The information was obtained.

[0078] Optionally, the above coefficient, i.e., ω g1 ω g2 ω g2 and ω h2 The algorithm can be adjusted for different scenarios to increase its applicability. The coefficients mentioned above satisfy the conditions shown in formula (1.9):

[0079] ω g1 +ω g2 =ω g2 +ω h2 =1(1.9)

[0080] When searching for the first scheduled flow f1 using AStar, link load does not need to be considered; however, when searching for subsequent scheduled flows using AStar, the impact of the load of the already identified scheduled flows in the link should be taken into account. Therefore, the load metric can be used in the calculation of the second scheduled flow f2 and subsequent scheduled flows using AStar.

[0081] 3) CNC from the sending end src m and receiver dst m Simultaneously, the AStar search begins. The specific steps of the AStar search are as follows:

[0082] ①Assume that the switch directly connected to the sending end is defined as the switch SW currently being traversed. SRC The CNC uses the path matrix Path to find the switch SW that is currently being traversed. SRC Switches with interconnected relationships are placed into an open set β1. For each switch in the open set β1, its evaluation function value is calculated, and the switch S with the smallest evaluation function value is selected. 1, Placed in the closed set γ1;

[0083] ②Assume that the switch directly connected to the receiving end is defined as the switch SW currently being traversed. DST The CNC uses the path matrix Path to find the switch SW that is currently being traversed. DST Switches with interconnected relationships are placed into an open set β2. For each switch in the open set β2, its evaluation function value is calculated, and the switch S with the smallest evaluation function value is selected. 2, Placed in the closed set γ2;

[0084] ③ Using switch S 1, The switch SW being traversed currently SRC The CNC repeats step ① to obtain the next switch S to be traversed. 1, and placed in the closed set γ1;

[0085] ④ Using switch S 2, The switch SW being traversed currently DST The CNC repeats step ② to obtain the next switch S to be traversed. 2, and placed in the closed set γ2;

[0086] ⑤ The CNC repeats steps ① to ④ above to determine whether the following conditions are met: either there is a switch in the open set β1 that is in the closed set γ2, or there is a switch in the open set β2 that is in the closed set γ1. If the condition is met, proceed to step ⑥; otherwise, proceed to step ⑦.

[0087] ⑥ The CNC obtains the optimal path set Best by arranging the switches in the open set β1 and open set β2 in order. m AStar search has ended;

[0088] ⑦ CNC determines whether the condition is met: all switches in the current network have been traversed. If the condition is not met, jump back to step ①; if the condition is met, continue to step ⑧.

[0089] ⑧CNC output path planning failed, the overall solution ends.

[0090] S40: Based on the optimal path set, optimize the optimal path using Young's Yen algorithm to obtain the K-optimal path set.

[0091] The optimal path set obtained through AStar search represents a set of optimized transmission paths for the scheduled flow in a complex, time-sensitive network. These paths consider various factors such as latency, bandwidth, and link reliability, ensuring data is transmitted from the sender to the receiver at minimal cost. The K-optimal path set, obtained using the Yen algorithm based on this optimal path set, provides even more alternative paths. The value of K can be adjusted according to actual needs; a larger K value means more suboptimal paths are available. During traffic scheduling, if the initial optimal path fails to meet requirements, or if network failures or congestion occur, the K-optimal path set provides a backup plan to ensure timely and reliable data transmission. It also increases network flexibility and adaptability, enabling better handling of various complex network conditions.

[0092] It's important to understand that obtaining the K-optimal path set by optimizing the optimal path set using Young's Yen algorithm refers to the iterative process of using Yen's algorithm. Specifically, step S40, which involves optimizing the optimal path set using Young's Yen algorithm to obtain the K-optimal path set, includes the following steps:

[0093] S41: The optimal path obtained by iterating over the set of optimal paths is recorded as the first K optimal iteration path;

[0094] S42: Determine the switches passed through by each optimal iterative path in the optimal path set as the target switches, and obtain the target switch set;

[0095] S43: Calculate the optimal path between every two target switches in the target switch set using AStar search to obtain the target optimal iterative path set;

[0096] S44: Compare the target optimal iteration paths in the target optimal iteration path set, select the optimal path with the best AStar search evaluation function, and record it as the second K optimal iteration path;

[0097] S45: The optimal path obtained by iterating over the first K optimal iteration path and the second K optimal iteration path is recorded as the third K optimal iteration path.

[0098] S46: Based on the first K-optimal iteration path, the second K-optimal iteration path, and the second K-optimal iteration path, obtain the set of K-optimal paths.

[0099] CNC uses the Yen algorithm to optimize the above-obtained set of best paths. m The final K-optimal path set KBest is obtained through calculation. m The specific steps are as follows:

[0100] 1) CNC sets the best path set. m As the iteration object, it is recorded as the K-optimal iteration path. That is, the first K-th optimal iteration path mentioned above, and its total number of hops is defined as J, and the switches traversed by the optimal iteration path are σ1, σ2, ..., σ J+1 ;

[0101] 2) In the first iteration, the CNC sets the path length between the first target switch σ2 and the second target switch σ2 in the target switch set to positive infinity (+∞), and performs the above AStar search to obtain the optimal iterative path in one calculation, which is recorded as follows. For example, this is called the second K-optimal iterative path 1; in the second iteration, the CNC sets the path length between the second target switch σ2 and the third target switch σ3 in the target switch set to +∞, and uses AStar search to perform one calculation to obtain the optimal iterative path, which is recorded as... This is called the second K-optimal iterative path 2; until the J-th iteration, the CNC will select the J-th target switch σ from the target switch set. J and the (J+1)th target switch σ J+1 The path length between them is set to +∞. An AStar search is used to perform one calculation to obtain the optimal iterative path, which is recorded as follows: For example, it is called the second K-optimal iterative path J;

[0102] 3) The CNC will use the optimal iterative path calculated above. By comparing the results, the record with the optimal AStar search evaluation function is selected as the K-optimal iteration path. That is, the second K-th optimal iteration path mentioned above;

[0103] 4) CNC will determine the optimal iteration path for K. Using the first K-optimal iteration path and the second K-optimal iteration path mentioned above as the iteration objects, repeat steps 2) to 3) to obtain the K-optimal iteration path. That is, the third K-optimal iteration path mentioned above, until the K-optimal iteration path. The paths included are the same as those already obtained. If there is an intersection, then we obtain the K-optimal path set KBest. m , The algorithm has ended.

[0104] S50: Based on the K-optimal path set, the differential evolution algorithm is used for iterative calculation to obtain the reference time slot scheme.

[0105] The CNC uses the K-optimal path set KBest obtained above. m Given the constraints, the first frame transmission time τ for each optimal path can be further determined using the differential evolution algorithm. m This allows for the determination of the reference time slot scheme.

[0106] It is important to understand that obtaining the reference time slot scheme through iterative calculation using the differential evolution algorithm based on the K-optimal path set refers to the process of obtaining the reference time slot scheme. Specifically, step S50, which involves iterative calculation using the differential evolution algorithm based on the K-optimal path set to obtain the reference time slot scheme, includes the following steps:

[0107] S51: Take each K-optimal path in the set of K-optimal paths as the iteration object to obtain the hyperperiodic set;

[0108] S52: Determine the initial transmission time of each flow to be scheduled in the set of flows to be scheduled according to the second constraint condition, and obtain the set of initial transmission times;

[0109] S53: Determine the initial total time slot set based on the super-period set and the initial transmission time set;

[0110] S54: Using the initial total time slot set as input, a reference time slot scheme is generated iteratively using the differential evolution algorithm.

[0111] CNC can determine the flow to be scheduled f m Initial total time slot SA m When initializing the initial solution of the time slot scheme, the K-optimal paths in the K-optimal path set obtained above are used, such as... As the iterative object, the supercycle can first be calculated. Assume we define a K-optimal path The total number of hops is J, and the switches traversed by the path are defined as: θ0, θ1, ..., θ J For the i-th (i = 0, 1, ..., J-1) link on the K-optimal path, assume that the link (θ) is defined as... i ,θ i+1 The set of streams on f is i,i+1 Stream set f i,i+1 The total number of streams contained is N i,i+1 Define supercycle For the stream set f i,i+1 The least common multiple of the periods of each of the included flows can be calculated using the formula shown in (1.10):

[0112]

[0113] in, It can be used to represent hyperperiodic sets; It can be used to represent the calculation of T1, T2, ... The least common multiple of; T1 can be used to represent the period of the first flow to be scheduled; T2 can be used to represent the period of the second flow to be scheduled; It can be used to represent the Nth i,i+1 The cycle of the stream to be scheduled.

[0114] Then, the CNC can calculate the start time τ of the first frame of the stream to be scheduled. m For the stream set f i,i+1 Each flow f in m Its source node can be defined as src. m The destination node is defined as dst m The frame length is defined as FRL. m The period is defined as T m The maximum tolerable delay is td m According to the traffic model, the link transmission rate is V. F Then the terminal device and the switch send stream f m The time required for one frame is FRL m / V F Define the switch processing latency as δ. Under the latency requirement, the flow f m The first frame start transmission time τ m It should be less than f m Period T m The constraint can be shown in (1.11):

[0115] τ m ∈[0,Tm (1.11)

[0116] Where, τ m It can be used to represent a stream f m The start time of the first frame transmission; T m It can be used to represent a stream f m The cycle.

[0117] At the same time, flow f m The first frame start transmission time τ m The maximum tolerable delay td must also be satisfied. m The constraint condition can be as shown in (1.12):

[0118] τ m ∈[0,td m -(J+1)×FRL m / V F -J×δ) (1.12)

[0119] Where, τ m It can be used to represent a stream f m The start time of the first frame transmission; td m It can be used to represent a stream f m The maximum tolerable delay; J can be used to represent the K-optimal path. Total number of hops; FRL m / V F It can be used to represent the stream f sent by terminal devices and switches. m Time required for one frame; FRL m flow f m Frame length; V F It can be used to represent the link transmission rate; δ can be used to represent the switch processing delay.

[0120] Therefore, flow f m The first frame start transmission time τ m The constraint (1.13) can be satisfied:

[0121] τ m ∈[0,min(T m ,td m -(J+1)×FRL m / V F -J×δ)] (1.13)

[0122] Where, τ m It can be used to represent a stream f m The start time of the first frame transmission; T m It can be used to represent a stream f m The period; td mIt can be used to represent a stream f m The maximum tolerable delay; J can be used to represent the K-optimal path. Total number of hops; FRL m / V F It can be used to represent the stream f sent by terminal devices and switches. m Time required for one frame; FRL m flow f m Frame length; V F It can be used to represent the link transmission rate; δ can be used to represent the switch processing delay.

[0123] The constraints (1.11) to (1.13) above can be understood as the second constraint. The CNC randomly initializes the flow f within constraint (1.13). m The start time of the first frame transmission is defined as For flow f m In the optimal iteration path On the first link segment (θ0, θ1), the time slot reserved by the CNC for the first frame is... Based on the periodicity of the stream, the transmission time of the second frame on the link (θ0, θ1) can be determined as follows. The time slot reserved by the CNC for the second frame on link 9(θ0, θ1) is: From the above, we can see that the flow f m A total of 10 ... Frames can be used to obtain the CNC-reserved flow f. m The total time slots on the link (θ0, θ1) are flow f m Total Sending Each frame. Note that if decimal places are generated during the calculation of the maximum and minimum values ​​in the time slot interval, the maximum or minimum value must be rounded up before subsequent calculations; if the maximum value of the time slot interval exceeds the time-period, the time-period remainder must be taken.

[0124] Based on the optimal iteration path It can be seen that the flow f m The first frame is from θ0 in Sending begins at [time], Once the transmission is complete and all data arrives at θ1, after processing and a delay δ at θ1, θ1... Start sending stream f at time m The first frame. Therefore, the flow f m The first frame was transmitted on link (θ1, θ2) at the time specified in the original text. flow f m The total time slots on link (θ1, θ2) are

[0125] In summary, flow f can be obtained for all flows to be scheduled. m The hop link (θ) at the i-th (i = 0, 1, ..., J-1) i ,θ i+1 The initial total time slot set SA on ) m for An exemplary time-slot scheme can be found in Figure 3 As shown.

[0126] It is important to understand that using the initial total time slot set as input and iteratively generating the reference time slot scheme using the differential evolution algorithm refers to the process of iterative calculation using the differential evolution algorithm. Specifically, step S54, which involves using the initial total time slot set as input and iteratively generating the reference time slot scheme using the differential evolution algorithm, includes the following steps:

[0127] S541: Initialize the population by taking the first frame transmission time of each stream to be scheduled in the set of streams to be scheduled on the initial total time slot to obtain the initial population set.

[0128] S542: Determine the differential evolution evaluation function based on the conflict degree of any two flows to be scheduled in the link;

[0129] S543: Perform mutation operations on each initial population in the initial population set to obtain a set of intermediate mutants;

[0130] S544: Perform a crossover operation on each of the mutant intermediates in the set of mutant intermediates to obtain the next generation population set;

[0131] S545: The differential evolution evaluation function is used to compare each initial population in the initial population set with each next generation population in the corresponding next generation population set, and the optimal solution is selected as the reference time slot scheme.

[0132] First, CNC can initialize the parameters of the differential evolution algorithm. The initial population X for differential evolution... M,D (G) has two parameters: dimension and population size, set to M and D respectively, where M = Num. l D is a constant that is set. The current population has G generations, and the upper limit of iterations is set to X. max The lower bound for iteration is set to X. min The mutation factor is set to F. i The cross factor is set to C. r The maximum number of iterations is set to K.

[0133] Secondly, the CNC uses a differential evolution algorithm to iteratively generate the optimal time slot scheme. The CNC iterates through the scheduler flow f... m First frame transmission time Iterating over the input can be mainly divided into the following steps:

[0134] 1) Initialize the population using CNC to obtain the initial population set X. M,D (0). The flow to be scheduled, f m First frame transmission time Initial solution SA of the time slot scheme m Initialize M×D populations on the initial total time slot set (i.e., the above initial total time slot set), and the specific formula for each initialization can be shown in (1.14):

[0135] X M,D (0) = X min (0)+(X max (0)-X min (0))×rand(0,1) (1.14)

[0136] Among them, X M,D (0) can be used to initialize the population set; X max It can be a stream f m Initial total time slot SA m The upper limit of the transmission interval on the first link segment; X min It can be a stream f m Initial total time slot SA m The lower limit of the transmission interval on the first link segment; rand(0,1) can be used to represent a random number in the interval (0,1).

[0137] 2) CNC calculation of differential evolution evaluation function F de (G). Evaluation function F de (G) can be used to evaluate the superiority or inferiority among populations. In the TSN scheduling problem, it is defined as the total time slot conflict degree of all streams to be scheduled in all links of the reference time slot scheme, for transmission links (θ). i ,θ i+1 ), there are N i,i+1 A flow passes through this link, defining a flow set f. i,i+1 Any two streams f to be scheduled x and f y In link (θ) i ,θ i+1 The transmission time period is and Calculation yields f x and f y In link (θ) i ,θ i+1 ) degree of conflict This allows us to obtain the total time slot conflict degree of all scheduled flows in all links of the reference time slot scheme. The calculation formula is shown in (1.15):

[0138]

[0139] Among them, F de (G) can be a differential evolution evaluation function; This can be the total time slot conflict degree of all scheduled flows in all links of the reference time slot scheme; Num arc It can be the number of links; z can be the index of the number of links; N i, The number of flows to be scheduled can be specified. There can be any two flows f to be scheduled x and f y In link (θ) i ,θ i+1 The degree of conflict.

[0140] 3) CNC performs the mutation operation. Using the population X of generation G... M,D Taking (G) as an example, three individuals are randomly selected for mutation operations, defined as follows: and Where r1, r2, and r3 are defined constants, and the intermediate mutation produced by the mutation operation is defined as V. M,D (G+1). The specific formula for each mutation can be shown in (1.16) below:

[0141]

[0142] Among them, V M,i (G+1) can be a set of intermediate mutants; F i It is the scaling factor of the population during the current traversal, and can be a random decimal between 0 and 1; F i-1 It is the scaling factor of the population during the last traversal, and can be a random decimal between 0 and 1; For the population X of generation G M,D An individual in (G), such as the first individual; For the population X of generation G M,D One of the individuals in (G), such as the second individual; For the population X of generation G M,D An individual in (G) is called the third individual.

[0143] 4) CNC performs crossover. To produce diverse offspring, a crossover operation is required after the mutation operation. Given V... M,D (G+1) and X M,D Under the premise of (G), the next generation population is defined as U.M,D (G+1), for the G-th generation population X M,D (G) and the variant intermediate V M,D (G+1), the process of performing the crossover operation can be shown as follows (1.17):

[0144]

[0145] Among them, U M,i (G+1) can be the next generation population set; V M,i (G+1) can be a set of intermediate mutations; C r It is the crossover probability, which can be a random decimal between 0 and 1; X M,i (G) can be the population of generation G.

[0146] 5) The CNC performs the selection operation. For the generated next-generation population, it is necessary to determine whether the solution is optimal. This is achieved through the U obtained above. M,i (G+1) and X M,D (G), using the evolutionary evaluation function F de (G) compares the solutions and selects the best one as the final solution X of the time slot scheme for this iteration. best The specific formula for the selection operation is shown in (1.18):

[0147]

[0148] Among them, X best This can be the final solution of the time slot scheme in this iteration, i.e., the reference time slot scheme; X M,D (G+1) can be the population of generation G+1; U M,i (G+1) can be the next generation population set; F de ( ) can be used to perform operations using the differential evolution evaluation function; X M,D (G) can be the population of generation G.

[0149] S60: Perform scheduling determination on the reference time slot scheme, and obtain and configure the overall time slot scheme if the reference time slot scheme meets the scheduling termination condition.

[0150] Optionally, the CNC can calculate the initial transmission time corresponding to each flow in the set of flows to be scheduled based on the reference time slot scheme, thus obtaining a reference transmission time set; calculate the total time slot conflict degree of the reference time slot scheme based on the reference transmission time set; if the total time slot conflict degree is zero, determine the reference time slot scheme as the overall time slot scheme and configure the overall time slot scheme; if the total time slot conflict degree is not zero, determine whether the differential evolution algorithm has reached the maximum number of iterations; if the differential evolution algorithm has not reached the maximum number of iterations, use the reference time slot scheme as the next generation population to iterate the differential evolution algorithm, and repeat the process of "calculating the initial transmission time corresponding to each flow in the set of flows to be scheduled based on the reference time slot scheme". The steps are as follows: First, obtain the reference transmission time set. If the differential evolution algorithm reaches its maximum iteration count, determine if there is an unused optimal path for each flow in the set of flows to be scheduled. If any unused optimal path exists for any flow to be scheduled, use the sequential selection of candidate paths to take the next optimal path from the K-optimal path set as the optimal iteration path input, and repeat the steps: "Calculate the initial transmission time corresponding to each flow in the set of flows to be scheduled according to the reference time slot scheme, and obtain the reference transmission time set." If no unused optimal path exists for any flow in the set of flows to be scheduled, output the result of traffic scheduling failure.

[0151] In other words, when the condition of no waiting transmission is met, the reference time slot scheme can be determined as the overall time slot scheme and the overall time slot scheme can be configured; when the condition of no waiting transmission is not met, it can be determined whether the differential evolution algorithm has reached the maximum number of iterations; if it has not reached the maximum number of iterations, the next iteration is performed; if the maximum number of iterations is reached, the method of sequentially selecting alternative paths is adopted, and the next optimal path in the K-optimal path set is used as input to continue iterating, and the above steps are repeated until the scheduling termination condition (i.e., the condition of no waiting transmission is met) is met.

[0152] Optionally, the CNC can further perform scheduling determination. The specific steps for scheduling determination can be as follows:

[0153] ①Based on the final solution X of the population best That is, the above reference time slot scheme is used to calculate the initial transmission time corresponding to all streams to be scheduled.

[0154] ② Determine the final solution X best Does the scheduling termination condition meet? Calculate the final solution X based on the initial transmission times of all pending flows. best The total time slot conflict rate. If the total time slot conflict rate is 0, that is... Then output the final solution X. best If yes, skip to step ⑤; otherwise, continue to step ③.

[0155] ③ The CNC determines whether the differential evolution algorithm has reached the maximum number of iterations K. If it has not reached the maximum number of iterations K, then the final solution X is used. best For the next generation population, perform differential evolution algorithm iterations, repeating steps 1) to 6); otherwise, continue to step 4.

[0156] ④ The CNC determines whether there are any unused optimal iteration paths for the streams to be scheduled. If there are any unused optimal iteration paths for any stream to be scheduled, then the method of sequentially selecting candidate paths is adopted: for streams f1, f2, ..., f m First, the next optimal iteration path from the K-optimal path set of flow f1 is adopted, i.e., KBest1. As the input for the optimal iterative path, repeat steps 1) to 6) of the differential evolution algorithm; if the scheduling termination condition is not met, then the second alternative path of flow f2, i.e., the one in KBest2, is adopted. As the input for the optimal iterative path, repeat steps 1) to 6) of the differential evolution algorithm; repeat the above steps, if using flow f m If the last alternative path is used as the input for the optimal iterative path and the scheduling termination condition is still not met, then the scheduling failure is output and the algorithm ends.

[0157] ⑤ Based on the final solution X output best The CNC calculates the initial transmission times for all scheduled flows and then calculates the time slot schemes for all terminal devices and switches in the network. Finally, the CNC sends the configuration information of the terminal devices to the CUC and configures the terminal devices; the CNC also configures the TSN switches, and the overall process is complete.

[0158] As can be seen, in the above scheme, by selecting landmark switches from the complex time-sensitive network topology generated by the Link Layer Discovery Protocol (LLDP), a set of landmark switches is obtained. For each switch in the set of switches in the complex time-sensitive network topology, a minimum hop count matrix is ​​calculated to obtain a minimum hop count set. Based on the set of landmark switches and the minimum hop count set, the optimal path can be calculated for each flow to be scheduled in the set of flows to be scheduled using the AStar search algorithm, resulting in an optimal path set. Based on the optimal path set, the optimal path is optimized using Young's algorithm to obtain a K-optimal path set. Then, based on the K-optimal path set, a differential evolution algorithm is used for iterative calculation to obtain a reference time slot scheme. The reference time slot scheme can then be used for scheduling determination. If the reference time slot scheme meets the scheduling termination condition, the overall time slot scheme is obtained and configured. This effectively improves and optimizes the accuracy of service routing and scheduling algorithms, and helps ensure the determinism and reliability of service data transmission.

[0159] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0160] In one embodiment, a routing and scheduling apparatus for complex time-sensitive networks is provided, which corresponds one-to-one with the routing and scheduling methods for complex time-sensitive networks described in the above embodiments. For example... Figure 3 As shown, the routing and scheduling device for complex time-sensitive networks includes a selection module 101, a first processing module 102, a second processing module 103, a third processing module 104, a fourth processing module 105, and a fifth processing module 106. Detailed descriptions of each functional module are as follows:

[0161] Module 101 is used to select landmark switches from the complex time-sensitive network topology generated by the Link Layer Discovery Protocol LLDP, and obtain a set of landmark switches.

[0162] The first processing module 102 is used to perform minimum hop count matrix calculation for each switch in the set of switches in a complex time-sensitive network topology to obtain a minimum hop count set.

[0163] The second processing module 103 is used to calculate the optimal path for each flow to be scheduled in the set of flow to be scheduled based on the set of landmark switches and the set of minimum hop count, and to obtain the optimal path set.

[0164] The third processing module 104 is used to optimize the optimal path according to the optimal path set using Young's Yen algorithm to obtain the K-optimal path set;

[0165] The fourth processing module 105 is used to perform iterative calculations using the differential evolution algorithm based on the K-optimal path set to obtain the reference time slot scheme;

[0166] The fifth processing module 106 is used to perform scheduling determination on the reference time slot scheme, so as to obtain the overall time slot scheme and configure the overall time slot scheme when the reference time slot scheme meets the scheduling termination condition.

[0167] In one embodiment, the second processing module is used to calculate the optimal path for each flow to be scheduled in the set of flows to be scheduled based on the set of landmark switches and the set of minimum hop counts, using the AStar search algorithm, to obtain the optimal path set. Specifically, it is used for:

[0168] Get the first minimum hop count from each landmark switch in the landmark switch set to the first switch; the first switch is any switch in the switch set;

[0169] Get the second minimum hop count from each landmark switch in the landmark switch set to the second switch; the second switch is any switch in the switch set except the first switch.

[0170] The estimated value set is determined based on the first minimum hop count and the second minimum hop count;

[0171] Based on the set of predicted values ​​and the first constraint, determine the prediction function;

[0172] The evaluation function for AStar search is determined based on the estimated cost from the first switch to the second switch and the actual cost from the sender of each scheduled flow in the set of scheduled flows to the first switch.

[0173] Based on the evaluation function, an AStar search is performed starting from the sender and receiver of each scheduled flow in the set of scheduled flows to obtain the optimal path set.

[0174] In one embodiment, the third processing module is used to optimize the optimal path based on the optimal path set using Young's Yen algorithm to obtain a K-optimal path set, specifically for:

[0175] The optimal path obtained by iterating through the set of optimal paths is recorded as the first K optimal iteration path.

[0176] The switches traversed by each optimal iterative path in the optimal path set are identified as target switches, thus obtaining the target switch set;

[0177] The optimal path between each pair of target switches in the target switch set is calculated using AStar search, resulting in the target optimal iterative path set.

[0178] Compare the target optimal iteration paths in the target optimal iteration path set, select the optimal path with the best AStar search evaluation function, and record it as the second K optimal iteration path;

[0179] The optimal path obtained by iterating through the first K-optimal iteration path and the second K-optimal iteration path is recorded as the third K-optimal iteration path.

[0180] Based on the first K-optimal iteration path, the second K-optimal iteration path, and the second K-optimal iteration path, we obtain the K-optimal path set.

[0181] In one embodiment, the fourth processing module is used to perform iterative calculations using a differential evolution algorithm based on the K-optimal path set to obtain a reference time slot scheme, specifically for:

[0182] Each K-optimal path in the K-optimal path set is used as an iteration object to obtain the hyperperiodic set;

[0183] The initial transmission time of each flow to be scheduled in the set of flows to be scheduled is determined according to the second constraint condition, thus obtaining the set of initial transmission times;

[0184] The initial total time slot set is determined based on the super-period set and the initial transmission time set;

[0185] The initial total time slot set is used as input, and the reference time slot scheme is generated iteratively using the differential evolution algorithm.

[0186] In one embodiment, the fourth processing module is used to take the initial total time slot set as input and iteratively generate a reference time slot scheme using a differential evolution algorithm, specifically for:

[0187] The first frame transmission time of each stream to be scheduled in the set of streams to be scheduled is used to initialize the population on the initial total time slot to obtain the initial population set.

[0188] The differential evolution evaluation function is determined based on the degree of conflict between any two flows to be scheduled in the link.

[0189] Each initial population in the initial population set is mutated to obtain a set of intermediate mutated populations;

[0190] Perform a crossover operation on each of the mutant intermediates in the set of mutant intermediates to obtain the next generation population set;

[0191] The differential evolution evaluation function is used to compare each initial population in the initial population set with each next generation population in the corresponding next generation population set, and select the optimal solution as the reference time slot scheme.

[0192] This invention provides a routing and scheduling device for complex time-sensitive networks. It selects landmark switches from the complex time-sensitive network topology generated by the Link Layer Discovery Protocol (LLDP) to obtain a landmark switch set. For each switch in the complex time-sensitive network topology switch set, a minimum hop count matrix is ​​calculated to obtain a minimum hop count set. Based on the landmark switch set and the minimum hop count set, the optimal path is calculated for each flow to be scheduled in the set of flows to be scheduled using the A-Star search algorithm to obtain an optimal path set. Based on the optimal path set, the optimal path is optimized using Young's algorithm to obtain a K-optimal path set. Then, based on the K-optimal path set, a differential evolution algorithm is used for iterative calculation to obtain a reference time slot scheme. The scheduling determination is then performed on the reference time slot scheme. If the reference time slot scheme meets the scheduling termination condition, the overall time slot scheme is obtained and configured. This effectively improves and optimizes the accuracy of service routing and scheduling algorithms, helping to ensure the determinism and reliability of service data transmission.

[0193] Specific limitations regarding routing and scheduling devices for complex time-sensitive networks can be found in the limitations of routing and scheduling methods for complex time-sensitive networks described above, and will not be repeated here. Each module in the aforementioned routing and scheduling device for complex time-sensitive networks can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the corresponding operations of each module.

[0194] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 4 As shown, the computer device includes a processor, memory, network interface, and database connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile and / or volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and database. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The network interface is used to communicate with external clients via a network connection. When the computer program is executed by the processor, it implements the server-side functions or steps of a routing and scheduling method for complex time-sensitive networks.

[0195] In one embodiment, a computer device is provided, which may be a client, and its internal structure diagram may be as follows: Figure 5As shown, the computer device includes a processor, memory, network interface, display screen, and input devices connected via a system bus. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The network interface is used to communicate with an external server via a network connection. When the computer program is executed by the processor, it implements client-side functions or steps of a routing and scheduling method for complex time-sensitive networks.

[0196] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to perform the following steps:

[0197] Landmark switches are selected from the complex time-sensitive network topologies generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches.

[0198] For each switch in the set of switches in a complex time-sensitive network topology, the minimum hop count matrix is ​​calculated to obtain the minimum hop count set;

[0199] Based on the set of landmark switches and the set of minimum hop counts, the optimal path is calculated for each flow to be scheduled in the set of flows to be scheduled using the AStar search algorithm, and the optimal path set is obtained.

[0200] Based on the optimal path set, the optimal path is optimized using Young's Yen algorithm to obtain the K-optimal path set;

[0201] Based on the K-optimal path set, the differential evolution algorithm is used for iterative calculation to obtain the reference time slot scheme;

[0202] The reference time slot scheme is used for scheduling determination. If the reference time slot scheme meets the scheduling termination condition, the overall time slot scheme is obtained and configured.

[0203] This invention provides a computer device that selects landmark switches from a complex time-sensitive network topology generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches. For each switch in the set of switches in the complex time-sensitive network topology, a minimum hop count matrix is ​​calculated to obtain a minimum hop count set. Based on the set of landmark switches and the minimum hop count set, the optimal path is calculated for each flow to be scheduled in the set of flows to be scheduled using the A-Star search algorithm to obtain an optimal path set. Based on the optimal path set, the optimal path is optimized using Young's algorithm to obtain a K-optimal path set. Then, based on the K-optimal path set, a differential evolution algorithm is used for iterative calculation to obtain a reference time slot scheme. The scheduling determination is then performed on the reference time slot scheme. If the reference time slot scheme meets the scheduling termination condition, an overall time slot scheme is obtained and configured. This effectively improves and optimizes the accuracy of service routing and scheduling algorithms, and helps ensure the determinism and reliability of service data transmission.

[0204] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:

[0205] Landmark switches are selected from the complex time-sensitive network topologies generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches.

[0206] For each switch in the set of switches in a complex time-sensitive network topology, the minimum hop count matrix is ​​calculated to obtain the minimum hop count set;

[0207] Based on the set of landmark switches and the set of minimum hop counts, the optimal path is calculated for each flow to be scheduled in the set of flows to be scheduled using the AStar search algorithm, and the optimal path set is obtained.

[0208] Based on the optimal path set, the optimal path is optimized using Young's Yen algorithm to obtain the K-optimal path set;

[0209] Based on the K-optimal path set, the differential evolution algorithm is used for iterative calculation to obtain the reference time slot scheme;

[0210] The reference time slot scheme is used for scheduling determination. If the reference time slot scheme meets the scheduling termination condition, the overall time slot scheme is obtained and configured.

[0211] This invention provides a computer-readable storage medium that selects landmark switches from a complex time-sensitive network topology generated by the Link Layer Discovery Protocol (LLDP) to obtain a set of landmark switches. For each switch in the set of switches in the complex time-sensitive network topology, a minimum hop count matrix is ​​calculated to obtain a minimum hop count set. Based on the set of landmark switches and the minimum hop count set, the optimal path can be calculated for each flow to be scheduled in the set of flows to be scheduled using the A-Star search algorithm to obtain an optimal path set. Based on the optimal path set, the optimal path is optimized using Young's algorithm to obtain a K-optimal path set. Then, based on the K-optimal path set, a differential evolution algorithm is used for iterative calculation to obtain a reference time slot scheme. The reference time slot scheme can then be used for scheduling determination. If the reference time slot scheme meets the scheduling termination condition, an overall time slot scheme is obtained and configured. This effectively improves and optimizes the accuracy of service routing and scheduling algorithms, and helps ensure the determinism and reliability of service data transmission.

[0212] It should be noted that the functions or steps that can be implemented by the computer-readable storage medium or computer device described above can be referred to the relevant descriptions on the server side and client side in the foregoing method embodiments. To avoid repetition, they will not be described one by one here.

[0213] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.

[0214] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is used as an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above.

[0215] The above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be included within the protection scope of the present invention.

Claims

1. A routing and scheduling method for complex time-sensitive networks, characterized in that, The method comprises: selecting a landmark switch from a complex time-sensitive network topology generated by a link layer discovery protocol (LLDP) to obtain a landmark switch set; performing minimum hop matrix calculation on each switch in the switch set of the complex time-sensitive network topology to obtain a minimum hop set; performing optimal path calculation on each flow to be scheduled in a flow to be scheduled set by an AStar search algorithm based on the landmark switch set and the minimum hop set to obtain an optimal path set; performing optimal path optimization by a Yen algorithm according to the optimal path set to obtain a K-optimal path set; performing iterative calculation by a differential evolution algorithm according to the K-optimal path set to obtain a reference time slot scheme; performing scheduling judgment on the reference time slot scheme to obtain an overall time slot scheme and configure the overall time slot scheme if the reference time slot scheme meets a scheduling end condition.

2. The method of claim 1, wherein, The optimal path calculation on each flow to be scheduled in the flow to be scheduled set of the complex time-sensitive network topology by the search algorithm based on the landmark switch set and the minimum hop set to obtain the optimal path set comprises: obtaining a first minimum hop from each landmark switch in the landmark switch set to a first switch; the first switch is any switch in the switch set; obtaining a second minimum hop from each landmark switch in the landmark switch set to a second switch; the second switch is any switch in the switch set except the first switch; determining a predicted value set according to the first minimum hop and the second minimum hop; determining a predicted function according to the predicted value set and a first constraint condition; determining an evaluation function of AStar search according to a predicted cost from the first switch to the second switch and an actual cost from a sending end of each flow to be scheduled in the flow to be scheduled set to the first switch; starting AStar search from the sending end of each flow to be scheduled in the flow to be scheduled set and a receiving end of each flow to be scheduled in the flow to be scheduled set based on the evaluation function to obtain the optimal path set.

3. The method of claim 2, wherein, The optimal path optimization by the Yen algorithm according to the optimal path set to obtain the K-optimal path set comprises: recording a first K-optimal iterative path obtained by iteration of the optimal path set as an iteration object; determining a target switch set by taking each optimal iterative path in the optimal path set as an iteration object; obtaining a target optimal iterative path set by taking each two target switches in the target switch set as an iteration object; selecting an optimal path with an optimal AStar search evaluation function from the target optimal iterative path set and recording the optimal path as a second K-optimal iterative path; recording a third K-optimal iterative path obtained by iteration of the first K-optimal iterative path and the second K-optimal iterative path as iteration objects. According to the first K-optimal iteration path, the second K-optimal iteration path and the second K-optimal iteration path, a K-optimal path set is obtained.

4. The method of claim 3, wherein, According to the K-optimal path set, a differential evolution algorithm is used for iteration calculation to obtain a reference time slot scheme, including: Each K-optimal path in the K-optimal path set is taken as an iteration object to obtain a super cycle set; According to a second constraint condition, an initial sending time of each to-be-scheduled stream in the to-be-scheduled stream set is determined to obtain an initial sending time set; According to the super cycle set and the initial sending time set, an initial total time slot set is determined; The initial total time slot set is taken as input, and a differential evolution algorithm is used for iteration to generate a reference time slot scheme.

5. The method of claim 4, wherein, The initial total time slot set is taken as input, and a differential evolution algorithm is used for iteration to generate a reference time slot scheme, including: The first frame sending time of each to-be-scheduled stream in the to-be-scheduled stream set is initialized on the initial total time slot to obtain an initialization population set; According to the conflict degree of any two to-be-scheduled streams in the link, a differential evolution evaluation function is determined; Each initialization population in the initialization population set is subjected to a mutation operation to obtain a mutation intermediate set; Each mutation intermediate in the mutation intermediate set is subjected to a crossover operation to obtain a next generation population set; The differential evolution evaluation function is used to compare each initialization population in the initialization population set with each next generation population in the corresponding next generation population set, and the optimal solution is selected as the reference time slot scheme.

6. A routing and scheduling apparatus for complex time-sensitive networks, characterized in that, The routing and scheduling device for the complex time-sensitive network includes: A selection module is configured to select landmark switches from a complex time-sensitive network topology generated by a link layer discovery protocol (LLDP) to obtain a landmark switch set. A first processing module is configured to perform minimum hop matrix calculation on each switch in a switch set of the complex time-sensitive network topology to obtain a minimum hop set. A second processing module is configured to perform optimal path calculation on each to-be-scheduled stream in a to-be-scheduled stream set based on the landmark switch set and the minimum hop set by using an A-star (AStar) search algorithm to obtain an optimal path set. A third processing module is configured to perform optimal path optimization on the optimal path set by using a Yang's (Yen) algorithm to obtain a K-optimal path set. A fourth processing module is configured to perform iteration calculation on the K-optimal path set by using a differential evolution algorithm to obtain a reference time slot scheme. A fifth processing module is configured to perform scheduling judgment on the reference time slot scheme to obtain an overall time slot scheme and configure the overall time slot scheme if the reference time slot scheme meets a scheduling end condition.

7. The routing and scheduling apparatus for complex time-sensitive networking according to claim 6, wherein, The second processing module is configured to perform optimal path calculation on each to-be-scheduled stream in the to-be-scheduled stream set based on the landmark switch set and the minimum hop set by using the AStar search algorithm to obtain the optimal path set, and specifically configured to: obtaining a first minimum hop number of each landmark switch in the landmark switch set to a first switch; the first switch being any switch in the switch set; obtaining a second minimum hop number of each landmark switch in the landmark switch set to a second switch; the second switch being any switch in the switch set except the first switch; determining an estimated value set according to the first minimum hop number and the second minimum hop number; determining an estimated function according to the estimated value set and a first constraint condition; determining an evaluation function of AStar search according to a predicted cost of the first switch to the second switch and an actual cost of a sending end of each flow in the flow set to the first switch; starting AStar search from the sending end of each flow in the flow set and a receiving end of each flow in the flow set based on the evaluation function to obtain an optimal path set.

8. The routing and scheduling apparatus for complex time-sensitive networking according to claim 7, wherein, The third processing module is configured to perform optimal path optimization on the optimal path set by using the Yang's Yen algorithm to obtain a K-optimal path set, and specifically configured to: record an optimal path obtained by iterating the optimal path set as a first K-optimal iteration path; determine target switches in the optimal path set as a target switch set; obtain a target optimal iteration path set by performing AStar search on each two target switches in the target switch set; select an optimal path with an optimal AStar search evaluation function from the target optimal iteration path set and record the optimal path as a second K-optimal iteration path; record an optimal path obtained by iterating the first K-optimal iteration path and the second K-optimal iteration path as a third K-optimal iteration path; obtain a K-optimal path set according to the first K-optimal iteration path, the second K-optimal iteration path and the third K-optimal iteration path.

9. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, The processor executes the computer program to implement the routing and scheduling method for a complex time-sensitive network according to any one of claims 1 to 5.

10. A computer-readable storage medium storing a computer program, the computer-readable storage medium comprising: The computer program is executed by the processor to implement the routing and scheduling method for a complex time-sensitive network according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • DDQN-based TSN routing method

    CN116132353A

  • Time-sensitive network routing and scheduling joint optimization method

    CN117914769A