Time-Sensitive Network Traffic Scheduling Method and System Based on Survival of the Fittest Mechanism
By adopting a traffic scheduling method based on the survival of the fittest mechanism in time-sensitive networks, the problems of large scheduling delay, low reliability and load imbalance in the prior art are solved, and higher scheduling speed and reliability are achieved, which is suitable for the time-sensitive needs of modern networks.
Patent Information
- Application Number
- CN202310303388.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-27
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2043-03-27
AI Technical Summary
When implementing time-sensitive network traffic scheduling, the prior art has problems such as large scheduling delay, low reliability and unbalanced scheduling, which is difficult to meet the needs of low latency, zero jitter and efficient bandwidth allocation in modern networks.
The time-sensitive network traffic scheduling method based on the survival of the fittest mechanism is adopted, and traffic and network information are collected centrally, and the encoding and population initialization are combined with the characteristics of time-sensitive network transmission problems. The cross-mutation method of routing load optimization is used to perform near-optimal solution search, optimize end-to-end delay and output the gating list.
It improves the speed and reliability of time-sensitive network traffic scheduling, can adaptively adjust parameters and weights in different network environments, meets the scheduling needs of mobile scenarios such as the Internet of Things and on-board networks, reduces scheduling delays and improves scheduling performance.
Smart Images

Figure CN116347520B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of time-sensitive network traffic scheduling, and in particular to a time-sensitive network traffic scheduling method and system based on the survival of the fittest mechanism. Background Art
[0002] With the rapid development of modern networks, such as scenarios like intelligent driving vehicle networks, industrial Internet, and 5G / 6G communications, an increasing number of data collection nodes and computing nodes have led to the complication of network design and a large amount of data load on communication links. At present, although Ethernet meets the requirements of high bandwidth and seamless connection of various dedicated devices, it does not provide real-time time-sensitive functions, namely functions such as low jitter, low network latency, and efficient bandwidth allocation. And the real-time deterministic transmission function with low latency is essential for network physical systems. Moreover, the existing industrial and vehicle networks cannot communicate with each other, increasing the complexity of the network structure. The Time-Sensitive Networking (TSN) standard protocol developed by the IEEE802.1 working group, as a real-time extension of Ethernet, hopes to solve the strict time limit problem of critical task applications in modern networks with a unified network structure.
[0003] Traffic scheduling in computer networks is one of the key technologies to ensure network performance and resource utilization. In practical applications, traffic scheduling must consider time sensitivity to ensure real-time performance and reliability. In addition to ensuring contention-free data transmission, traffic scheduling also needs to achieve low-latency and zero-jitter transmission of critical traffic and comply with the scheduling constraints of time-sensitive networks. Currently, most methods ignore the load imbalance caused by multiple flows choosing the same path, and it is extremely difficult to consider various paths of the flows to determine an optimized scheduling scheme. Therefore, a low-complexity mechanism is of great importance to it.
[0004] Due to problems such as large scheduling delay and low reliability existing in traditional software-implemented traffic schedulers, there is an urgent need for a technology that can effectively reduce the latency in real-time networks and improve the speed and reliability of time-sensitive network traffic scheduling. Summary of the Invention
[0005] In order to overcome the defects and deficiencies of the prior art, the present invention provides a time-sensitive network traffic scheduling method and system based on the survival of the fittest mechanism. The present invention has higher scheduling speed and reliability, and can adaptively adjust parameters and weights in different network environments to meet the scheduling requirements of mobile scenarios such as the Internet of Things and vehicle networks.
[0006] To achieve the above object, the present invention adopts the following technical solutions:
[0007] The present invention provides a time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism, including the following steps:
[0008] Centrally collect the traffic information and network information of all time-sensitive network applications that initiate transmission requests, encode the survival-of-the-fittest mechanism and initialize the population in combination with the characteristics of the time-sensitive network transmission problem. Each gene of the survival-of-the-fittest mechanism corresponds to the node position where each time-sensitive task flow is currently located. According to the scheduling constraint requirements, each individual calculates a fitness value describing the individual's quality, and this fitness value is reflected as the end-to-end delay;
[0009] Taking the minimum end-to-end delay as the optimization goal, jointly considering the time-sensitive network traffic scheduling constraints and routing, use the cross-mutation method with optimized routing load to search for a near-optimal solution, and replace the low-fitness population in the population according to the fitness value;
[0010] Decode the near-optimal solution after iterative search and output it in the form of a gating list.
[0011] As a preferred technical solution, the encoding of the survival-of-the-fittest mechanism in combination with the characteristics of the time-sensitive network transmission problem specifically includes the following steps:
[0012] For all time-sensitive applications that initiate transmission requests, traverse all their optional routes according to the link conditions provided by the network information;
[0013] Randomly select a feasible route for each time-sensitive flow, and the route selection follows two principles: link load balancing and routing maximum length limit;
[0014] According to the selected route combinations between different flows, randomly generate the step sequence combinations of each hop of all flows;
[0015] Generate the encoded genes according to the generated flow step sequence combinations;
[0016] Verify whether the encoded genes meet the constraints of the time-sensitive network traffic scheduling, and output the finally verified genes.
[0017] As a preferred technical solution, for all time-sensitive applications that initiate transmission requests, information is collected, the time-sensitive flow information is collected, and a quadruple <J i , DL i , T i , L i > is defined, where J i , DL i , T i , L i respectively represent the maximum tolerable jitter delay, the maximum end-to-end delay, the period, and the amount of data sent per period;
[0018] Collect network information and define it using a triple <W ab , v ab , p ab >, where w ab , v ab , p ab represent link bandwidth, propagation rate, and the number of output port queues respectively.
[0019] As a preferred technical solution, according to the selected routing combinations between different flows, randomly generate the step sequence combinations for each hop of all flows. The array elements for recording are defined by a triple <fid, src i , dst i >, where fid, src i , dst i represent the id corresponding to the flow, the starting node of the current hop, and the destination node respectively.
[0020] As a preferred technical solution, generate the encoded gene according to the generated flow step sequence combination, encode the time-sensitive network transmission problem in array form, and use the node positions of each flow in each step sequence as genes;
[0021] The abscissa t i of the array is the step sequence, and the ordinate of the array is the flow number f i , and the elements on the two-dimensional array represent the node position where the f i flow is located at the t j -th step among the total number of steps of all flows, denoted as s i,j .
[0022] As a preferred technical solution, the population initialization specifically includes the following steps:
[0023] Traverse all feasible routes according to the sending-end system and receiving-end system nodes of each flow;
[0024] Calculate the Cartesian product of the selected routes of each flow, that is, the permutation and combination of the routes selected by each flow, and select the number of the population required for the survival-of-the-fittest mechanism from them;
[0025] According to the permutation and combination of the routes selected by the flows, perform random initialization and link load balancing optimization initialization simultaneously at a set ratio. The link load balancing optimization initialization accumulates the load data volume in each link, selects the link load value with the largest load volume and performs a weighted sum with the total length of the route, and filters out the individual with the smallest fitness as the initialization member of the population of the survival-of-the-fittest mechanism;
[0026] Verify whether the generated individual meets the constraints. If it meets the constraints, generate the corresponding individual gene; otherwise, discard it. When the population size reaches the pre-set population size, the initialization is completed.
[0027] As a preferred technical solution, the survival-of-the-fittest mechanism cross-search for time-sensitive network problem characteristics specifically includes the following steps:
[0028] Judge whether the corresponding individual undergoes crossover according to the pre-set crossover probability;
[0029] When crossover occurs, the crossover mechanism compares two parent individuals, finds the intersection of the genes in the two parent individuals, and randomly selects one segment of the genes as the reference gene for crossover;
[0030] Cross-exchange all the genes before and after this gene as the boundary in the parent individuals;
[0031] Judge whether the routing of the offspring gene after crossover increases the maximum data transmission load of the link and the routing length. If it increases, discard the corresponding offspring; otherwise, retain the offspring and add it to the population;
[0032] After the exchange operation, judge whether the individual genes appear repeatedly and whether they meet the TSN traffic scheduling constraints.
[0033] As a preferred technical solution, the survival-of-the-fittest mechanism mutation search for time-sensitive network problem characteristics includes the following steps:
[0034] Judge whether the individual undergoes gene mutation according to the pre-set mutation probability;
[0035] When mutation occurs, randomly select the mutation start and mutation end gene segments in the mutated individual;
[0036] According to the mutation start node and mutation end node of each flow in the gene segment, randomly select a corresponding routing for replacement to generate a new individual;
[0037] Judge whether the routing of the offspring gene after mutation increases the maximum data transmission load of the link and the routing length. If it increases, discard the corresponding offspring; otherwise, retain the offspring and add it to the population;
[0038] Judge whether the individual genes appear repeatedly and whether they meet the TSN traffic scheduling constraints.
[0039] As a preferred technical solution, the decoding of the near-optimal solution after iterative search specifically includes the following steps:
[0040] Successively delimit the feasible time window of the current flow under the time-sensitive network scheduling constraints in chronological order;
[0041] Whenever the time window available for the current flow is delimited, a greedy mechanism is adopted to retrieve the earliest available time window for the current flow to fill in the time window, and the transmission time period of the current flow is added to the total time window;
[0042] Iterate in a loop until all flows are filled into the time window. When it is impossible to add all flows to the current time window, mark the current individual gene as unschedulable and discard it;
[0043] When calculating the fitness function, gradually calculate the corresponding available time window that meets the TSN scheduling constraints according to the individual gene, and use the greedy mechanism to calculate the earliest start transmission time.
[0044] The present invention also provides a time-sensitive network traffic scheduling system based on the survival-of-the-fittest mechanism, including: an FPGA chip, a network interface, a random number generation module, and a memory module;
[0045] The FPGA chip is connected to the network interface. The network interface includes a receiving unit and a parsing unit. The receiving unit is used to receive time-sensitive application information and network device information, and the parsing unit is used to parse the time-sensitive network information to obtain the parameters required for scheduling calculation;
[0046] The random number generation module is used to generate a plurality of random numbers;
[0047] The memory module includes a first storage unit and a second storage unit. The first storage unit is used to store individual gene coding data, and the second storage unit is used to store individual gene fitness;
[0048] The FPGA chip includes a population initialization module, an encoding module, a crossover module, a mutation module, a decoding module, a fitness calculation module, a first judgment unit, a second judgment unit, an output unit, and an update unit;
[0049] The population initialization module is used to perform population initialization. The encoding module is used to encode the survival-of-the-fittest mechanism in combination with the characteristics of the time-sensitive network transmission problem. Each gene of the survival-of-the-fittest mechanism corresponds to the node position where each time-sensitive task flow is currently located. The crossover module is used to perform crossover operations, and the mutation module is used to perform mutation operations. The decoding module is used to decode the individual gene, decode the near-optimal solution after iterative search, and output it in the form of a gating list. The fitness calculation module is used to calculate the fitness of the decoded individual gene. According to the scheduling constraint requirements, each individual calculates a fitness value describing the individual quality, and this fitness value is reflected as the end-to-end delay;
[0050] The first judgment unit is used to judge whether the individual gene meets the time-sensitive network traffic scheduling constraints; the second judgment unit is used to judge whether the calculation result converges during the calculation of the scheduling algorithm, the output unit is used to output the gating list of the scheduling result, and the update unit is used to update and store the population individual data in the memory module with the newly generated valid individual gene. Taking the minimum end-to-end delay as the optimization goal, combining the time-sensitive network traffic scheduling constraints and routing, using the crossover and mutation method optimized by routing load to search for near-optimal solutions, and replacing the low-fitness population in the population according to the fitness value.
[0051] Compared with the prior art, the present invention has the following advantages and beneficial effects:
[0052] (1) The invention provides a survival-of-the-fittest mechanism encoding and decoding method for the characteristics of time-sensitive network transmission problems. An individual is recorded through a two-dimensional array, and the node positions where each flow is located at each moment are used as genes. In this way, the joint scheduling scheme of individual routing and flow constraints can be fully recorded, and the time complexity of the fitness calculation function can be reduced. This encoding method has less constraint in the core steps of the survival-of-the-fittest mechanism, namely crossover and mutation, is easy to operate, reduces the time complexity of crossover and mutation, and compared with the existing similar scheduling methods in the time-sensitive network field, it can be not affected by the routing length, that is, individual genes of different lengths can still be conveniently crossed and mutated.
[0053] (2) The present invention initializes the population based on link load balancing optimization, calculates the permutations and combinations of the routes selected by each flow, accumulates the load data volume in each link, selects the maximum load value of the link load and performs a weighted sum with the total routing length, and selects the smallest individual as the initialization member of the population. The population initialization generated by optimizing link load balancing is generated under the condition of meeting the requirements of time-sensitive network scheduling constraints. In this way, the diversity and legality of the initial population can be guaranteed, and this initialization method ensures that individuals with better fitness in the population are used as the reference direction for convergence, reducing the probability of invalid search and greatly improving the iteration efficiency of the survival-of-the-fittest mechanism.
[0054] (3) The present invention conducts a cross-search of the survival-of-the-fittest mechanism for the characteristics of time-sensitive network problems. First, it determines whether the corresponding individual undergoes crossover according to the preset crossover probability; when crossover occurs, the crossover mechanism compares the two parent individuals, finds the intersection of the genes in the two parent individuals, and randomly selects one segment of the genes as the reference gene for crossover; then it cross-swaps all the genes before and after this gene in the parent individuals; finally, it determines whether the routing of the genes in the offspring after crossover increases the maximum data transmission load of the link, increases the routing length, determines whether there are repeated occurrences, and whether it meets the TSN traffic scheduling constraints. In the present invention, the destination-one coding method can perform crossover on any gene that meets the conditions without additional processing of genes with different lengths, improving the efficiency of the crossover mechanism. The operation based on link load balancing optimization does not rely on a third-party crossover operator library, which not only ensures that the solution space searched by the crossover mechanism is effective but also solves the problem of high crossover mechanism complexity caused by different gene lengths in the field of TSN traffic scheduling. After crossover, it can ensure the feasibility of the individual and also improve the search efficiency of the crossover mechanism.
[0055] (4) The present invention conducts a mutation search of the survival-of-the-fittest mechanism for the characteristics of time-sensitive network problems. First, it determines whether the corresponding individual undergoes mutation according to the preset mutation probability; when mutation occurs, it randomly selects the starting and ending gene segments for mutation in the individual undergoing mutation; then it replaces them with a corresponding randomly selected routing according to the starting and ending nodes of each flow in the gene segment to generate a new individual; finally, it determines whether the routing of the genes after mutation increases the maximum data transmission load of the link, increases the routing length, determines whether there are repeated occurrences, and whether it meets the TSN traffic scheduling constraints. In the present invention, the destination-one coding method can perform crossover on any gene that meets the conditions without additional processing of genes with different lengths, improving the efficiency of the mutation mechanism. The operation based on link load optimization does not rely on a third-party mutation operator library, which not only ensures that the mutation mechanism can effectively jump out of the local optimal solution but also constrains the direction of mutation, reduces the probability of invalid search, and improves the evolution rate of the survival-of-the-fittest mechanism. The mutation operation in this process introduces a randomly sized change in the chromosome, which can produce a large gene segment mutation or only cause a mutation of the minimum three-gene length.
[0056] (5) The present invention improves the scheduling performance by iteratively optimizing the parameters and weights of the scheduling method multiple times. Compared with the traditional software-based traffic scheduler, the present invention can provide a higher real-time computing effect in the case of a large network scale, can greatly improve the scheduling speed, reduce the scheduling delay, can adaptively adjust to different network environments, improve the scheduling reliability, and can optimize for specific scheduling problems to improve the scheduling performance. Description of the Drawings
[0057] Figure 1 This is a schematic flow chart of the time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism of the present invention;
[0058] Figure 2 This is a schematic diagram of the encoding method of the present invention;
[0059] Figure 3 This is a schematic diagram of the centralized management mechanism of the present invention;
[0060] Figure 4 This is a schematic diagram of the population initialization process of the present invention;
[0061] Figure 5 This is a schematic diagram of the crossover operation of the present invention;
[0062] Figure 6 This is a schematic diagram of the mutation operation of the present invention;
[0063] Figure 7 This is a schematic diagram of the framework structure of the time-sensitive network traffic scheduling system based on the survival-of-the-fittest mechanism of the present invention. Detailed implementation manners
[0064] In order to make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0065] Embodiment 1
[0066] As Figure 1 shown, this embodiment provides a time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism, including the following steps:
[0067] According to the characteristics of the time-sensitive network scheduling problem, corresponding encoding, population initialization, crossover, and mutation processes are constructed.
[0068] Step 1: First, set the parameters of the survival-of-the-fittest mechanism, including the population size, crossover probability, mutation probability, and maximum number of iterations; in addition, set the minimum end-to-end delay as the optimization objective, and find an approximate optimal solution while observing the routing and scheduling constraints in the time-sensitive network.
[0069] Step 2: Perform population initialization and randomly generate an initial population.
[0070] The gene individuals of the survival-of-the-fittest mechanism represent a scheduling scheme, which can also be embodied as a gating table within a supercycle. And this individual is composed of a series of genes, where each gene corresponds to the node position that each time-sensitive task flow is currently at. According to the scheduling constraint requirements, each individual can calculate a fitness value that describes the quality of the individual, and this fitness value is embodied as the end-to-end delay.
[0071] Step 3: Then perform mutation and crossover operations on the population, and replace the low-fitness population in the population according to the fitness value. To create new individuals, the survival-of-the-fittest mechanism constructed in this embodiment provides crossover and mutation methods that do not rely on third-party libraries to pair and evolve the individuals in the population. And to optimize the population, a fitness-based evaluation and replacement method is adopted, so that the individuals with better fitness in the offspring replace the inferior individuals in the parent generation.
[0072] Step 4: When after a certain number of iterations, judge whether the number of generations of the iteration has reached the preset value. If the requirement has been met, output the individual scheduling scheme with the lowest fitness, that is, the required optimal scheduling scheme for the proximal end-to-end delay.
[0073] In this embodiment, the basic parameters of the survival-of-the-fittest mechanism can be appropriately adjusted according to the scheduling scale and the requirements of the solution time to obtain the most ideal solution. The present invention has the advantages of low complexity, high performance, and high flexibility.
[0074] Such as Figure 2 shown, the encoding steps of the survival-of-the-fittest mechanism for the characteristics of the time-sensitive network transmission problem in this embodiment include the following steps:
[0075] (1) Collect information for time-sensitive applications and the network, such as Figure 3 shown, specifically as follows: To configure complex time-sensitive functions to ensure the expected quality of service (QoS), adopt the centralized management mechanism support provided by IEEE 802.1Qcc, in a manner similar to software-defined network (SDN). For time-sensitive applications that initiate transmission requests, collect flow information such as the period, length, and maximum tolerable delay of the flow and network topology information of the application;
[0076] Such as Figure 3 shown, this embodiment adopts a centralized management framework. The centralized user configuration (CUC) is responsible for providing registration services for time-sensitive flows to key application programs, collecting information such as the period, length, sending and receiving nodes, and maximum delay of the flow, and exchanging information for new device registration with the CNC through the UNI. Collect time-sensitive flow information, which is represented by a quadruple <J i ,DLi , T i , L i are defined by >, which represent the maximum tolerable jitter delay, the maximum end-to-end delay, the period, and the amount of data sent per period, respectively;
[0077] Centralized Network Configuration (CNC) is responsible for calculating and configuring the gating list. When performing dynamic scheduling in a large-scale network model, it is required that the core scheduling scheme calculation method has a low time complexity to meet strict real-time requirements. Collect network information and use a triple <w ab , v ab , p ab > is defined, which represent the link bandwidth, the propagation rate, and the number of out-port queues, respectively.
[0078] (2) Encode the time-sensitive network transmission problem into an array form to obtain the encoded gene for recording the scheduling scheme. Specifically:
[0079] After collecting the required information for deterministic transmission, for each time-sensitive flow to be transmitted, perform route selection based on the principle of routing load balancing to generate a routing selection combination for different flows. According to the routing combination selected by the flow, randomly generate the step sequence for each hop and convert it into the corresponding gene encoding form;
[0080] Step 1: For all time-sensitive applications that initiate transmission requests, traverse all their available routes according to the link conditions provided by the network information;
[0081] Step 2: Randomly select a feasible route for each time-sensitive flow. The route selection follows two principles: link load balancing and routing maximum length limit. Link load balancing requires reducing the probability of different flows selecting the same path and reducing the maximum data transmission load on the link. The routing maximum length limit requires that the selected route length cannot exceed the average length in the set of available routes for the corresponding flow;
[0082] Step 3: According to the routing combinations selected among different flows, randomly generate the step sequence combinations for each hop of all flows. The array elements used for recording are defined by a triple <fid, src i , dst i >, which represent the id corresponding to the flow, the starting node of the current hop, and the destination node, respectively;
[0083] Step 4: Generate the encoded gene according to the generated flow step sequence combination. This gene specifically represents the positions of all time-sensitive flows at each moment. Define the encoding of the TSN time schedule in the chromosome as a two-dimensional array.
[0084] In this embodiment, the abscissa t of the array i is the step order, and its function is to record the order of the single-step advancement of the flow. For example, when t j reaches t j+1 , f 0 ~f m changes the position of only one of the flows, representing that a certain step of one of the flows advances one step. The ordinate of the array is the flow number, denoted as f i . And the elements on the two-dimensional array represent f i The node position where the flow is located at the t j th step in the total number of steps of all flows is denoted as s i,j .
[0085] By recording individuals through such a two-dimensional array and taking the node positions where each flow is located in each step order as genes, the joint scheduling scheme of individual routing and flow constraints can be fully recorded, and the time complexity of the fitness calculation function can also be reduced.
[0086] In this embodiment, the time-sensitive network scheduling constraint verification is performed on the encoded genes as follows:
[0087] Frame constraint: For each link segment [n a , n b , ensure that for each frame must be transmitted within its corresponding period , that is The latest start transmission time within a period is less than The period of minus The transmission duration required for the corresponding link
[0088] Link constraint: For any two frames a , n b that need to pass through the same link segment [n and are required to have no overlap in the time domain of the super period T hyper , that is, the transmission of the frame needs to provide the time for its exclusive link;
[0089] Flow transmission constraint: When the same frame passes through different link segments on its path, it needs to be transmitted in sequence according to the physical connection order of the link segments. That is, the time when frame f ij starts to be transmitted on the link segment [n x , n b is required to be greater than the time when f ij ends the transmission on the previous link segment [n a , n x ;
[0090] An end-to-end constraint, which means that for each flow F i the maximum end-to-end delay is less than its maximum tolerable end-to-end delay DL i , that is, the time difference between the arrival of the last frame of the flow at the receiving end and the start of transmission of the first frame is less than DL i ;
[0091] Frame isolation constraint. Frame interleaving occurs when frames in the same queue arrive at the switch node simultaneously, or when frame loss during transmission causes a deviation in the scheduled time slots. Since TSN scheduling needs to introduce a frame isolation constraint to avoid the above situation, frame isolation requires that only one flow's frame can be stored in the same queue at the same time, that is, when one frame leaves the queue, another frame can enter the queue. However, if the two frames are in different queues, there is no such constraint;
[0092] Jitter constraint. The total delay difference between the actual and ideal state of transmission and processing cannot be greater than the maximum tolerable delay.
[0093] Step 5: Verify whether the encoded gene meets the constraints of time-sensitive network traffic scheduling, and output the finally verified gene.
[0094] In this embodiment, it is only assumed that each flow has a receiving end. However, in the case of multicast flows, only the flow needs to be split into multiple flows with the same starting node but different ending nodes and encoded separately for each gene.
[0095] In this embodiment, the survival-of-the-fittest mechanism decoding step for the characteristics of time-sensitive network transmission problems specifically includes:
[0096] Step 1: When calculating the time window of the specific scheduling scheme, the encoding scheme does not record the specific sending time of each hop of the specific flow. According to the time order, that is, the abscissa of the encoded two-dimensional array, the feasible time window of the current flow under the time-sensitive network scheduling constraint is delimited one by one from left to right.
[0097] Step 2: Whenever the time window that can be filled by the current flow is delimited, the greedy mechanism is used to retrieve the earliest time window that can be filled by the current flow in the feasible time window, and the sending time period of the current flow is added to the total time window.
[0098] Step 3: On this basis, loop and iterate until all flows are filled into the time window. When all flows cannot be added to the current time window, mark the current individual gene as unschedulable and discard it.
[0099] When calculating the fitness function, it is only necessary to gradually calculate the corresponding feasible time window that meets the TSN scheduling constraints according to the individual genes, and use the greedy mechanism to calculate the earliest start transmission time.
[0100] Assuming that the time complexity of constraint calculation is the same as that of existing research and can be ignored, the time complexity of the present invention using the greedy mechanism to calculate the filling time window is O(n).
[0101] As Figure 4 shown, the population initialization step based on link load balancing optimization includes the following steps:
[0102] Step 1: Traverse all feasible routes according to the sending-end system and receiving-end system nodes of each flow.
[0103] Step 2: Calculate the Cartesian product of the selected routes of each flow, that is, the permutation and combination of the routes selected by each flow, and verify whether the generated individuals meet the constraints. If they meet, generate the corresponding individual genes; otherwise, discard them. Just select the number of populations required for the survival-of-the-fittest mechanism from them, and there is no need to fully traverse the Cartesian product.
[0104] Step 3: According to the permutation and combination of the routes selected by the flow, perform random initialization and link load balancing optimization initialization simultaneously at a set ratio.
[0105] The link load balancing optimization initialization comprehensively considers the link load balancing and the route length, accumulates the load data volume in each link, selects the maximum load value of the link load and performs a weighted sum with the total route length, and screens out the individual with the smallest fitness as the initialization member of the population of the survival-of-the-fittest mechanism.
[0106] Step 4: Verify whether the generated individuals meet the constraints. If they meet, generate the corresponding individual genes; otherwise, discard them. When the population size reaches the pre-set population size, the initialization is completed.
[0107] The initialization of the population in this embodiment adopts a method of jointly generating by random and route optimization, and is generated under the condition of meeting the requirements of time-sensitive network traffic scheduling constraints, which can ensure the diversity and legality of the initial population;
[0108] As Figure 5 shown, the survival-of-the-fittest mechanism cross-search step for the characteristics of time-sensitive network problems includes the following steps:
[0109] Step 1: Judge whether the corresponding individuals cross according to the pre-set crossover probability.
[0110] Step 2: When crossing occurs, the crossing mechanism will compare the two parent individuals, find the intersection of the genes in the two parent individuals and randomly select one segment of the genes as the reference gene for crossing. AsFigure 5 As shown, assume a ij , b ij are the gene elements of parents A and B respectively. When crossover starts, the same gene segments in the parents will be searched. As shown by the dashed box in Figure 5 , a ij =b ij =s ij . This gene represents a moment when the parents are exactly the same. At this moment, the positions of all time-sensitive flows of the parent individuals corresponding to their respective nodes are the same;
[0111] Step 3: Cross-exchange all the genes before and after this gene as the boundary in the parent individuals. As shown in the exchange example in Figure 5 , all the genes before and after this gene as the boundary in the parent individuals can be cross-exchanged;
[0112] Step 4: Determine whether the routing of the offspring genes after crossover increases the maximum data transmission load of the link and the routing length. If it increases, the corresponding offspring is discarded; otherwise, the offspring is retained and added to the population;
[0113] Step 5: After the exchange operation, determine whether the individual genes appear repeatedly and whether they meet the TSN traffic scheduling constraints.
[0114] As shown in Figure 6 , the survival-of-the-fittest mechanism mutation search steps for the characteristics of the time-sensitive network problem include the following steps:
[0115] Step 1: According to the preset mutation probability, determine whether an individual undergoes gene mutation;
[0116] Step 2: When mutation occurs, randomly select the mutation start and mutation end gene segments in the mutated individual. As shown by the dashed box in Figure 6 , select the mutation start gene and mutation end gene of each flow in the gene segment;
[0117] Step 3: Randomly select a corresponding route for replacement according to the mutation start node and mutation end node of each flow in the gene segment to generate a new individual; As shown by the dashed box in Figure 6 , randomly select a corresponding route for replacement according to the mutation start node and mutation end node of each flow in the gene segment to generate a new individual. As shown in Figure 6 , the dashed box and the genes between them in the mutated gene replace the original gene segment;
[0118] Step 4: Determine whether the routing of the offspring genes after mutation increases the maximum data transmission load of the link and the routing length. If it increases, the corresponding offspring is discarded; otherwise, the offspring is retained and added to the population;
[0119] Step 5: Determine whether the individual genes appear repeatedly and whether they meet the TSN traffic scheduling constraints.
[0120] Embodiment 2
[0121] As Figure 7 shown, this embodiment provides a time-sensitive network traffic scheduling system based on the survival-of-the-fittest mechanism, including: an FPGA chip, a network interface, a random number generation module, and a memory module;
[0122] In this embodiment, the FPGA hardware acceleration framework based on the survival-of-the-fittest mechanism is applied to Figure 2 the centralized network configuration (CNC) to play the role of the scheduling core mechanism;
[0123] In this embodiment, the FPGA chip is connected to the network interface and is used to receive and send data streams from the end system and the switch;
[0124] In this embodiment, the network interface includes: a receiving unit for receiving time-sensitive application information and network device information; a parsing unit for parsing the time-sensitive network information to obtain parameters required for scheduling calculation, such as network topology, link propagation rate, period, and the amount of data sent per period, etc.
[0125] In this embodiment, the random number generation module cooperates with the population initialization module, the encoding module, the crossover and mutation module, and the decoding module to calculate the scheduling scheme for the data stream, and the storage module stores and records the generated population individuals;
[0126] In this embodiment, the random number generation module uses a linear feedback shift register (LFSR) to generate multiple random numbers, which are respectively provided to the population initialization module, the crossover and mutation module, and are used for route selection and generating the step sequence of flow transmission for the flow model individuals.
[0127] In this embodiment, the FPGA chip includes a population initialization module, an encoding module, a crossover module, a mutation module, a decoding module, a fitness calculation module, a first judgment unit, a second judgment unit, an output unit, and an update unit;
[0128] The population initialization module is used for population initialization, and the encoding module is used for encoding the survival-of-the-fittest mechanism in combination with the characteristics of the time-sensitive network transmission problem;
[0129] The crossover module is used for performing crossover operations, the mutation module is used for performing mutation operations, the decoding module is used for decoding individual genes, the fitness calculation module is used for calculating the fitness of the decoded individual genes, the first judgment unit is used for judging whether the individual genes conform to the time-sensitive network traffic scheduling constraints; the second judgment unit is used for judging whether the calculation result converges during the calculation of the scheduling algorithm, the output unit is used for outputting the gating list of the scheduling result, and the update unit is used for updating and storing the population individual data of the newly generated valid individual genes in the memory module;
[0130] In this embodiment, the memory module includes a first storage unit for storing individual gene coding data and a second storage unit for storing individual gene fitness;
[0131] In this embodiment, the parallel computing initialization and crossover mutation functions are implemented through high-level synthesis optimization written in vitis HLS. The FPGA chip adopts a fully pipelined design to achieve simultaneous read and write operations on the memory module, and uses the parallel computing characteristics to execute the accelerated calculation of the survival of the fittest mechanism, including encoding, decoding, crossover, mutation, and population initialization calculation. The specific implementation process includes the following steps:
[0132] Step 1: Collect the flow information and network information required for scheduling calculation through the network interface;
[0133] Step 2: Call the random number generator to generate random numbers, support the population initialization module, encoding module, crossover module, mutation module, decoding module, and fitness calculation module to calculate the scheduling scheme, and store the individuals generated during the iterative search process in the memory module;
[0134] Step 3: Control the FPGA chip to read the genes of the optimal fitness individuals from the memory module and convert them into the corresponding gating list to output the corresponding scheduling scheme;
[0135] This embodiment designs an FPGA chip hardware acceleration architecture, which can reduce the consumption of system resources during the operation of the time-sensitive network scheduling mechanism and improve the execution speed of the entire system in an environment with a relatively complex network environment and a large amount of calculation, providing a solution with higher real-time performance for the time-sensitive network system traffic scheduling.
[0136] Embodiment 3
[0137] This embodiment provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the time-sensitive network traffic scheduling method based on the survival of the fittest mechanism in Embodiment 1 above;
[0138] This embodiment also provides a readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism in the above-mentioned Embodiment 1 are implemented.
[0139] Through the description of the above embodiments, those skilled in the art can clearly understand that the present invention can be implemented by means of software plus a necessary hardware platform. Of course, it can also be implemented entirely by hardware. However, in many cases, the latter is a better implementation method. Therefore, the present invention can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD ROMs, optical memories, etc.) containing computer-usable program codes. The solutions in the embodiments of the present invention can be implemented in various computer languages. For example, the hardware kernel high-level synthesis design language vitis HLS and the hardware description language Verilog, etc.
[0140] The present invention is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present invention. It should be understood that each flow and / or block in the flowchart and / or block diagram can be implemented by computer program instructions, and the combination of the flows and / or blocks in the flowchart and / or block diagram can also be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in one Figure 1 flow or multiple flows and / or blocks Figure 1 block or multiple blocks.
[0141] These computer program instructions can also be loaded onto a computer or other programmable data processing devices, so that a series of operation steps are executed on the computer or other programmable devices to generate a computer-implemented process. Thus, the instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one Figure 1 flow or multiple flows and / or blocks Figure 1 block or multiple blocks.
[0142] The above embodiments are preferred embodiments of the present invention, but the embodiments of the present invention are not limited to the above embodiments. Any other changes, modifications, substitutions, combinations, and simplifications made without departing from the spirit and principle of the present invention shall be equivalent replacement methods and are all included in the protection scope of the present invention.
Claims
1. A time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism, characterized in that, it includes the following steps: Centrally collect the traffic information and network information of all time-sensitive network applications that initiate transmission requests, encode the survival-of-the-fittest mechanism and initialize the population in combination with the characteristics of the time-sensitive network transmission problem. Each gene of the survival-of-the-fittest mechanism corresponds to the node position where each time-sensitive task flow is currently located. According to the scheduling constraint requirements, each individual calculates a fitness value that describes the individual's quality, and this fitness value is reflected as the end-to-end delay; The encoding of the survival-of-the-fittest mechanism in combination with the characteristics of the time-sensitive network transmission problem specifically includes the following steps: For all time-sensitive applications that initiate transmission requests, traverse all its optional routes according to the link conditions provided by the network information; Randomly select a feasible route for each time-sensitive flow, and the route selection follows two principles: link load balancing and maximum route length limit; According to the selected route combinations between different flows, randomly generate the step sequence combinations of each hop of all flows; Generate the encoded gene according to the generated flow step sequence combination; Verify whether the encoded gene meets the constraints of the time-sensitive network traffic scheduling, and output the finally verified gene; The generation of the encoded gene according to the generated flow step sequence combination encodes the time-sensitive network transmission problem in the form of an array, and takes the node positions of each flow in each step sequence as genes; The abscissa t of the array i is the step order, and the ordinate of the array is the flow number f i , and the elements on the two-dimensional array represent f i The node position where the flow is at the t j -th step in the total number of steps of all flows is denoted as s i,j ; Taking the minimum end-to-end delay as the optimization goal, jointly considering the time-sensitive network traffic scheduling constraints and routing, use the cross-mutation method of route load optimization to search for a near-optimal solution, and replace the low-fitness population in the population according to the fitness value; Decode the near-optimal solution after iterative search and output it in the form of a gating list.
2. The time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism according to claim 1, characterized in that, For all time-sensitive applications that initiate transmission requests, information is collected, and time-sensitive flow information is collected. A quadruple <J i , DL i , T i , L i > is defined, where J i , DL i , T i , L i represent the maximum tolerable jitter delay, the maximum end-to-end delay, the period, and the amount of data sent per period, respectively; Collect network information and use a triple <w ab , v ab , p ab > for definition. Among them, w ab , v ab , p ab represent link bandwidth, propagation rate, and the number of outgoing port queues respectively.
3. The time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism according to claim 1, characterized in that, According to the selected routing combinations between different flows, randomly generate the step order combinations for each hop of all flows. The array elements for recording are defined by a triple <fid,src i ,dst i >, where fid, src i , dst i represent the id corresponding to the flow, the starting node of the current hop, and the destination node, respectively.
4. The time-sensitive network traffic scheduling method based on the survival-of-the-fittest mechanism according to claim 1, characterized in that, The population initialization specifically includes the following steps: Traverse all feasible routes according to the sending-end system and receiving-end system nodes of each flow; Calculate the Cartesian product of the selected routes of each flow, that is, the permutation and combination of the routes selected by each flow, and select the number of populations required for initialization of the survival-of-the-fittest mechanism from them; According to the permutation and combination of the routes selected by the flow, perform random initialization and link load balancing optimization initialization at a set ratio. The link load balancing optimization initialization accumulates the load data volume in each link, selects the maximum load value of the link load and performs a weighted sum with the total route length, and filters out the individual with the minimum fitness as the initialization member of the population of the survival-of-the-fittest mechanism; Verify whether the generated individuals meet the constraints. If they meet, generate the corresponding individual genes, otherwise discard them. When the population size reaches the pre-set population size, the initialization is completed.
5. The time-sensitive network traffic scheduling method based on the survival of the fittest mechanism according to claim 1, characterized in that, the cross-search of the survival of the fittest mechanism for the characteristics of time-sensitive network problems specifically includes the following steps: judge whether the corresponding individual undergoes crossover according to the preset crossover probability; when crossover occurs, the crossover mechanism compares two individuals of the parent generation, finds the intersection of the genes in the two parent individuals and randomly selects a segment of the genes as the reference gene for crossover; cross-exchange all the genes before and after this gene as the boundary in the parent individuals; judge whether the routing of the genes of the offspring after crossover increases the maximum data transmission load of the link and the routing length. If it increases, discard the corresponding offspring. Otherwise, retain the offspring and add it to the population; after the exchange operation, judge whether the individual genes appear repeatedly and whether they meet the TSN traffic scheduling constraints.
6. The time-sensitive network traffic scheduling method based on the survival of the fittest mechanism according to claim 1, characterized in that, the mutation search of the survival of the fittest mechanism for the characteristics of time-sensitive network problems includes the following steps: judge whether an individual undergoes gene mutation according to the preset mutation probability; when mutation occurs, randomly select the starting and ending gene segments of the mutation in the individual where the mutation occurs; randomly select a corresponding routing for replacement according to the starting mutation node and the ending mutation node of each flow in the gene segment to generate a new individual; judge whether the routing of the genes of the offspring after mutation increases the maximum data transmission load of the link and the routing length. If it increases, discard the corresponding offspring. Otherwise, retain the offspring and add it to the population; judge whether the individual genes appear repeatedly and whether they meet the TSN traffic scheduling constraints.
7. The time-sensitive network traffic scheduling method based on the survival of the fittest mechanism according to claim 1, characterized in that, the decoding of the near-optimal solution after iterative search specifically includes the following steps: delimit the feasible time window of the current flow under the time-sensitive network scheduling constraints one by one in chronological order; whenever the time window that the current flow can be filled in is delimited, use the greedy mechanism to retrieve the earliest time window in the feasible time window to fill the current flow time window, and add the sending time period of the current flow to the total time window; iterate in a loop until all flows are filled into the time window. When all flows cannot be added to the current time window, mark the current individual gene as unschedulable and discard it; when calculating the fitness function, calculate the feasible time window corresponding to the individual gene that meets the TSN scheduling constraints step by step, and use the greedy mechanism to calculate the earliest start transmission time.
8. A time-sensitive network traffic scheduling system based on the survival of the fittest mechanism, characterized in that, it includes: FPGA chip, network interface, random number generation module and memory module; the FPGA chip is connected to the network interface. The network interface includes a receiving unit and an analysis unit. The receiving unit is used to receive time-sensitive application information and network device information, and the analysis unit is used to analyze the time-sensitive network information to obtain the parameters required for scheduling calculation; the random number generation module is used to generate multiple random numbers; The memory module includes a first storage unit and a second storage unit. The first storage unit is used to store individual gene coding data, and the second storage unit is used to store individual gene fitness; The FPGA chip includes a population initialization module, an encoding module, a crossover module, a mutation module, a decoding module, a fitness calculation module, a first judgment unit, a second judgment unit, an output unit, and an update unit; The population initialization module is used to perform population initialization. The encoding module is used to encode the survival-of-the-fittest mechanism in combination with the characteristics of the time-sensitive network transmission problem. Each gene of the survival-of-the-fittest mechanism corresponds to the node position where each time-sensitive task flow is currently located. The crossover module is used to perform crossover operations. The mutation module is used to perform mutation operations. The decoding module is used to decode individual genes, decode the near-optimal solution after iterative search, and output it in the form of a gating list. The fitness calculation module is used to calculate the fitness of the decoded individual genes. According to the scheduling constraint requirements, each individual calculates a fitness value describing the individual's quality, and this fitness value is reflected as the end-to-end delay; The encoding module is used to encode the survival-of-the-fittest mechanism in combination with the characteristics of the time-sensitive network transmission problem, specifically including: For all time-sensitive applications that initiate transmission requests, traverse all their optional routes according to the link conditions provided by the network information; Randomly select a feasible route for each time-sensitive flow. The route selection follows two principles: link load balancing and maximum route length limit; According to the selected route combinations between different flows, randomly generate the step sequence combinations of each hop of all flows; According to the generated flow step sequence combinations, generate the encoded genes; Verify whether the encoded genes meet the constraints of time-sensitive network traffic scheduling, and output the finally verified genes; According to the generated flow step sequence combinations, generate the encoded genes, encode the time-sensitive network transmission problem in the form of an array, and use the node positions of each flow in each step sequence as genes; The abscissa t of the array i is the step order, and the ordinate of the array is the flow number f i , and the elements on the two-dimensional array represent f i The position of the node where the flow is at the t j -th step in the total number of steps of all flows is denoted as s i,j ; The first judgment unit is used to judge whether the individual genes meet the time-sensitive network traffic scheduling constraints; the second judgment unit is used to judge whether the calculation results converge during the calculation of the scheduling algorithm. The output unit is used to output the gating list of the scheduling results. The update unit is used to update and store the population individual data in the memory module with the newly generated valid individual genes. Taking the minimum end-to-end delay as the optimization goal, combining the time-sensitive network traffic scheduling constraints and routing, using the crossover and mutation method of route load optimization to search for the near-optimal solution, and replacing the low-fitness groups in the population according to the fitness values.
Citation Information
Patent Citations
Route planning and scheduling method and device for traffic frames in time-sensitive network
CN112953830A
Multi-path joint scheduling method in time-sensitive network
CN115460130A