A traffic scheduling method for in-vehicle software-defined time-sensitive networks

By using an in-vehicle software-defined time-sensitive network (TSN) traffic scheduling system, network and time slot allocation are dynamically configured, solving the network congestion and latency problems of TSN when multiple traffic types are mixed and dynamically changing, and achieving efficient data flow scheduling and real-time performance assurance.

CN117880195BActive Publication Date: 2026-07-31NANJING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NANJING UNIV OF POSTS & TELECOMM
Filing Date
2023-12-21
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

Existing time-sensitive networks suffer from network congestion, increased end-to-end latency, and inability to make timely dynamic adjustments when multiple traffic types are mixed and the network is dynamically changing.

Method used

The in-vehicle software-defined time-sensitive network (SDSN) traffic scheduling system generates flow tables and gating lists through the collaboration of data application modules, data control modules, and data transmission modules. It dynamically configures the network and, in conjunction with SDTSN switches, schedules data flows and allocates time slots to achieve the separation and real-time processing of high-priority and low-priority data flows.

Benefits of technology

It improves the quality of service of the network, ensures the real-time performance of high-priority data streams, improves the transmission efficiency and accuracy of mixed data streams, adapts to dynamic network changes, and reduces network congestion and end-to-end latency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117880195B_ABST
    Figure CN117880195B_ABST
Patent Text Reader

Abstract

This invention discloses a traffic scheduling system and method for in-vehicle software-defined time-sensitive networking (SDTSN), belonging to the field of in-vehicle network communication technology. The system includes a data application module, a data control module, and a data transmission module. During operation, the data application module first sends user requests to the data control module. Then, the data control module generates flow tables and gating lists based on these user requests. Finally, the data transmission module controls data flow transmission and scheduling based on the flow tables and gating lists. The system employs the SDTSN traffic scheduling method, dividing the period of a gating list into three time slots. By controlling the opening and closing of each time-sensitive gate, traffic is transmitted in the corresponding time slots. The size of different time slots is calculated and dynamically adjusted to shorten the end-to-end total latency of the data flow. This invention achieves scheduling and dynamic configuration of different types of traffic and ensures end-to-end latency of the data flow in a dynamic network environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of in-vehicle network communication technology, specifically relating to a traffic scheduling system and method for in-vehicle software-defined time-sensitive networks. Background Technology

[0002] As automobiles gradually transform from traditional transportation tools into electric, intelligent, and connected vehicles, higher demands are being placed on in-vehicle communication. In-vehicle communication networks, built upon traditional communication technologies such as CAN and LIN, enable timely and reliable data transmission, processing, and decision-making between in-vehicle sensors, controllers, and actuators (ECUs). The continuous upgrading and iteration of in-vehicle hardware and software has led to increasingly complex and massive communication data, further intensifying the urgent need for high bandwidth and low latency in in-vehicle networks. Time-Sensitive Ethernet (TSN), building upon traditional Ethernet, uses precise clock synchronization to limit transmission latency by ensuring bandwidth, providing a high level of service quality to support various audio and video-based media applications, offering a completely new solution for high-speed in-vehicle networks. TSN allows the integration of multiple traffic types within a single network and supports various queuing and scheduling mechanisms.

[0003] Real-time transmission of in-vehicle network data traffic is crucial for ensuring the reliable and safe operation of vehicles. Mixed transmission of communication flows at different critical levels within the vehicle can lead to excessive consumption of communication resources, severely impacting the performance of latency-sensitive services. While time-aware shapers (TAS) significantly reduce end-to-end latency for time-sensitive traffic, the gating lists used in TAS require offline calculation and cannot be dynamically configured in a timely manner when data flow changes occur in the network. Software-defined networking (SDN), on the other hand, separates the control plane from the data plane of network devices, making network control directly programmable and allowing for runtime reconfiguration. Therefore, SDN-based network architecture design can enhance the flexibility of in-vehicle networks. Integrating TSN and SDN into in-vehicle networks can satisfy both the flexible configuration requirements of the in-vehicle network architecture and the real-time transmission of data flows, ensuring Quality of Service (QoS).

[0004] The existing patent application number CN 202211562311.8 proposes a gating scheduling method and apparatus for time-sensitive networks. It divides key frames and non-key frames into different queues based on the type of network frames. Each queue is equipped with a gating mechanism, and the gating list includes gating switch status parameters and the gating list execution time interval. Based on the gating switch status and the types of network frames in multiple queues, it schedules network frames from multiple queues for transmission, achieving separation of key frames and non-key frames and ensuring the real-time transmission of key frames. However, this patent transmits key frames based on the gating switch status during scheduling, which cannot be dynamically adjusted when the network changes dynamically.

[0005] The existing patent application number CN 202310206255.2 proposes an end-to-end low-latency scheduling method for time-sensitive network (TSN) time-triggered flows. First, it acquires all TT flow information in the switch's TSN and allocates time slots to all links traversed by each TT flow from the source node to the destination node according to priority. Then, it reduces the end-to-end latency of TT flows through local time slot search. Finally, based on the optimized time slot occupancy table, it minimizes the number of time-aware shapers and the number of gate openings, generating a corresponding gating list to further reduce the end-to-end latency of TT flows. However, the time slots in this patent are fixed and cannot be dynamically adjusted when data traffic changes dynamically. Furthermore, it only performs latency scheduling for TT flows within the TSN, and its applicability needs improvement.

[0006] In summary, traffic scheduling in time-sensitive networks still faces some challenges. Therefore, it is necessary to propose a traffic scheduling system and method for in-vehicle software-defined time-sensitive networks. Summary of the Invention

[0007] Purpose of the invention: In order to overcome the shortcomings of the existing technology, such as network congestion caused by mixed transmission of multiple traffic types and changes in the period, increased end-to-end latency of time-sensitive traffic, and inability to respond in a timely manner when the network changes dynamically, the present invention provides a traffic scheduling system and method for in-vehicle software-defined time-sensitive networks.

[0008] Technical solution: To solve the above technical problems, the present invention provides a traffic scheduling system for in-vehicle software-defined time-sensitive networking, the system comprising: a data application module, a data control module, and a data transmission module; The data application module includes a real-time vehicle control application, which determines the real-time communication requirements and sends the user's requirements to the data control module. The data control module is used to receive the above-mentioned user requirements and control the generation of flow tables and gate lists according to the user requirements. The flow tables and gate lists are used to control the transmission of data streams in the data transmission module. The data transmission module is used to receive the flow table and gating list mentioned above, and to control the transmission and scheduling of the data flow according to the flow table and gating list; When the system is working, the data application module first sends user requests to the data control module, then the data control module generates flow tables and gating lists based on the user requests, and finally the data transmission module controls the transmission and scheduling of data streams based on the flow tables and gating lists.

[0009] Furthermore, the data control module includes a scheduling management submodule, which is used to generate flow tables and gating lists.

[0010] Furthermore, the data transmission module includes an SDTSN switch, which includes a flow filtering and monitoring submodule, a queue management submodule, and an egress scheduling control submodule. The egress scheduling control submodule performs scheduling operations on the data flow according to the flow table and the gating list.

[0011] Furthermore, the data stream includes CDT stream, AVB stream, and BE stream.

[0012] A traffic scheduling method for in-vehicle software-defined time-sensitive networking (V2V) is provided, based on a traffic scheduling system for V2V based on software-defined time-sensitive networking, the method comprising the following steps: S1. First, the user sends their request to the data control module through the data application module. S2. Then the data control module receives the above user requirements and controls the generation of flow tables and gating lists according to the user requirements; S3. Next, the data transmission module receives the above flow table and gate list, and controls the transmission of the data stream according to the flow table and gate list; S4. Next, the data control module calculates the transmission delay of the data stream and determines whether the transmission delay is greater than the delay threshold. If the transmission delay is greater than the delay threshold, proceed to S5; otherwise, return to S3. S5. Reconfigure the gating list and return to S3; S6. Finally, the transmission delay system is shut down, completing the scheduling of data traffic.

[0013] Further, S2 includes the following steps: S21. First, the data control module receives the above user request. S22. Then initialize the data control module; S23. Next, the scheduling management submodule generates an initial gating list, which is used to control the transmission of data streams. The period of an initial gating list corresponds to the period of a time slot window, and the time slot window includes a CDT transmission window, a low-priority stream transmission window, and a guard band. Let the period of a time slot window be... The size of the protection band time slot is The size of the CDT transmission window time slot is The size of the low-priority stream transmission window time slot is ,Right now:

[0014] In the above formula (1), It is a fixed value;

[0015] In the above formula (2), Indicates the maximum Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the inter-frame interval; In the initial gating list and Equal, that is:

[0016] S24. Finally, the scheduling and management submodule sends the above initial gating list to the data transmission module.

[0017] Further, S3 includes the following steps: S31. First, the data stream passes through the basic equipment of the data transmission module and arrives at the SDTSN switch. S32. Then, the data streams are classified by the stream filtering and supervision submodule. The data streams include CDT streams, AVB streams, and BE streams. S33. Next, the classified data streams pass through the queue management submodule, which allocates different types of data streams to the corresponding queues according to the classification results. S34. Next, the exit scheduling control submodule performs scheduling operations on the data stream in the queue according to the issued gating list; S35. Finally, the statistics and monitoring submodule monitors the status information of each stream in real time. This status information includes the time when the data stream is sent from the data source and the time when the data stream arrives at the data target. The status information is then fed back to the data control module.

[0018] Further, S4 includes the following steps: S41. First, the scheduling management submodule in the data control module receives the status information; S42. Then, the scheduling and management submodule calculates the delay of the CDT flow reaching the SDTSN switch egress queue after one hop based on the received status information. , The calculation formula is:

[0019] In the above formula (4), Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's ingress. Indicates the propagation delay of the link; S43. Next, calculate the delay when the CDT stream successfully reaches the receiving end after being forwarded by the SDTSN switch. , The calculation formula is:

[0020] In the above formula (5), Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the propagation delay of the link. This indicates the processing latency from data entering the queue to data leaving the queue within the switch; S44. Next, calculate the maximum enqueue to dequeue waiting time of the CDT stream. , The calculation formula is:

[0021] In the above formula (6), This indicates taking the maximum value. Indicates the size of the guard band time slot period. This indicates the size of the time slot period of the low-priority stream transmission window. Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the transmission period of the CDT stream. This represents a value greater than 0 and less than 0. Positive numbers, Indicates rounding down; S45. Next, calculate the maximum end-to-end transmission delay of the CDT stream through a single hop. , The calculation formula is:

[0022] In the above formula (7), Calculated using formula (4), Calculated by formula (5), Calculated using formula (6); S46. Finally, determine the above transmission delay. If the transmission delay exceeds the delay threshold, proceed to step S5; otherwise, return to step S3.

[0023] Further, S5 includes the following steps: First, let the delay threshold be... The constraints for normal CDT stream transmission are: The end-to-end delay is less than the set upper bound and reaches its minimum value, that is:

[0024] Formula (8) In the above formula (8), The maximum end-to-end transmission delay of a CDT stream through a single hop. Calculated using formula (7); Next, the CDT transmission window that satisfies the above constraints is calculated. and low-priority streaming window slots The size of, in the above formula (8) The result is obtained by formula (6); From the above formula (6), we can see that Only in China Using variables, solving formula (6) yields the following results. The value; From the above formula (1), we can see that: Formula (9) Finally, based on the calculations... and Adjust the CDT transmission window and the low-priority stream transmission window to obtain a new gating list, and send the new gating list to the data transmission module, then return to S3 to keep the system running.

[0025] Furthermore, the delay threshold is the upper bound of the maximum end-to-end delay of the CDT stream after one hop, which is used to ensure that the CDT stream transmission meets the user requirements issued by the data application module.

[0026] Beneficial effects: Compared with the prior art, the advantages of this invention are: 1. The data application module of this invention collaborates across modules with the data control module and the data transmission module. By deploying flow tables and gating lists to the data control module and distributing them to the devices of the data transmission module, it controls the scheduling of different types of data flows in the network, realizes dynamic network configuration, and improves the quality of service of the network.

[0027] 2. In the case of mixed transmission of multiple traffic flows, this invention controls the transmission of data streams with different priorities through an exit scheduling control submodule and a gating list, thereby separating high-priority data streams from low-priority data streams and improving the real-time performance of high-priority data stream transmission.

[0028] 3. This invention uses a software-defined time-sensitive networking (SDTSN) method to process the dynamic changes in data traffic transmission in real time, thereby enabling the scheduling of mixed data streams and improving the efficiency of data stream transmission.

[0029] 4. This invention divides one transmission cycle of the gating list into three time slots, each storing a different data stream, so that the different data streams can be controlled and adjusted later, thereby improving the transmission accuracy and efficiency of the mixed data streams.

[0030] 5. To address network congestion caused by periodic changes, this invention employs a time slot allocation algorithm based on a gated list. It schedules the transmission of mixed data streams through three time slots, controls the opening and closing of each time-aware gate to transmit traffic in the corresponding time slot, and improves network transmission quality by using a frameless preemption first-in-first-out mechanism.

[0031] 6. This invention addresses the increased end-to-end latency of time-sensitive traffic by transforming time slots in the gating list into dynamic time slots. This solves the queuing latency of different types of traffic in the in-vehicle network and enables dynamic network configuration when the network changes dynamically. It also ensures end-to-end latency of data flow in dynamic network environments, thus improving applicability in dynamic network environments. Attached Figure Description

[0032] Figure 1 This is a schematic diagram of the traffic scheduling system structure.

[0033] Figure 2 This is a schematic diagram of the data control module structure.

[0034] Figure 3(a) is a schematic diagram of the data transmission module structure.

[0035] Figure 3(b) is a schematic diagram of the SDTSN switch structure.

[0036] Figure 4 This is a schematic diagram of the internal structure of an SDTSN switch.

[0037] Figure 5 This is a schematic diagram of a time slot window based on a gating list.

[0038] Figure 6 This is a flowchart of the traffic scheduling method. Detailed Implementation

[0039] The present invention will be further described below with reference to the accompanying drawings and specific embodiments.

[0040] Example 1 This invention provides an in-vehicle software-defined time-sensitive networking (SDTSN) traffic scheduling system. Based on SDTSN, it integrates the fully centralized architecture of IEEE 802.1Qcc standard-defined time-sensitive networking (TSN) with the three-layer architecture of software-defined networking (SDN). The integrated SDTSN separates data control and data transmission in the fully centralized TSN architecture, and realizes centralized network management and control. It can respond promptly when the network changes dynamically, while retaining the time synchronization and real-time scheduling functions of TSN. This ensures the real-time requirements of the network and improves the manageability of the network.

[0041] refer to Figure 1 The aforementioned traffic scheduling system includes a data application module, a data control module, and a data transmission module. The data application module includes a real-time vehicle control application, which determines real-time communication requirements and sends user requests to the data control module. The data control module receives the user requests and generates flow tables and gating lists based on them. These flow tables and gating lists control the transmission of data streams in the data transmission module. The data transmission module receives the flow tables and gating lists and controls the transmission of data streams based on them. When this traffic scheduling system is working, the data application module first sends user requests to the data control module. Then, the data control module generates flow tables and gating lists based on the user requests. Finally, the data transmission module controls data flow transmission and scheduling based on the flow tables and gating lists.

[0042] In this embodiment, the data application module collaborates with the data transmission module across modules through the data control module. By deploying flow tables and gating lists to the data control module and distributing them to the devices in the data transmission module, the module controls the scheduling of different types of data flows in the network, enabling dynamic network configuration and improving network service quality.

[0043] Example 2 The present invention provides a traffic scheduling system for in-vehicle software-defined time-sensitive networks. Based on embodiment 1, after the data control module receives the user request issued by the application in the data application module, it controls the generation of corresponding flow tables and gating lists according to the user request, and controls the transmission of data traffic in the data transmission module through the flow tables and gating lists.

[0044] refer to Figure 2 The data control module includes a northbound API interface, a clock synchronization submodule, a topology management submodule, a scheduling management submodule, a statistics and monitoring submodule, and a southbound API interface. Specifically: The northbound API interface uses the NETCONF protocol to connect the data application module and the data control module, providing an interface for the upper-layer data application module. Through this northbound API interface, user requirements from the data application module can be sent to the data control module. The clock synchronization submodule uses the IEEE 802.1AS standard to control and realize the clock synchronization of all devices in the data transmission module, ensuring that all network devices can work together according to a unified time base; The topology management submodule is responsible for discovering the network topology, understanding the information of each device and link in the network, in order to build a network topology map and help understand the current state of the network. The scheduling management submodule is used to calculate and configure flow tables and gating lists according to user needs. Flow tables are used to record and manage different data flows in the network, and gating lists are used to ensure that different data flows are transmitted in the network in a predictable manner to meet time sensitivity and flow control requirements, which is crucial for networks that support real-time and time-sensitive applications. Preferably, the gating list in this embodiment uses 8 bits. The gating list controls the data transmission of eight queues at the SDTSN switch egress point, and each bit corresponds to the opening or closing of the gate of a queue. The statistical monitoring submodule is used to monitor network traffic, performance and status information in real time to ensure timely response when the network changes dynamically; The southbound API interface uses the OpenFlow protocol to connect the data transmission module and the data control module, providing an interface for the lower-level data transmission module. Through this southbound API interface, network status information can be obtained and flow table distribution can be performed. In this embodiment, the data control module sends instructions to the data transmission module's device through the southbound API interface to configure, manage, and control device behavior, thus realizing centralized control functionality; the user communicates with the data control module through the northbound API to formulate the application's real-time requirements, thus realizing programmable functionality; the scheduling management, statistical monitoring sub-modules, and traffic scheduling algorithm together realize intelligent decision-making functionality.

[0045] In this embodiment, the data control module is the core component of the traffic scheduling system. Through this data control module, the centralized control function, programmable function, and intelligent decision-making function of the entire system are realized. The data control module can monitor the network status in real time and readjust the configuration of the data transmission module as needed, thereby improving the real-time performance of the network.

[0046] Example 3 The present invention provides a traffic scheduling system for in-vehicle software-defined time-sensitive networks. Based on embodiment 2, the data control module generates corresponding flow tables and gating lists according to user requirements, and then sends the flow tables and gating lists to the data transmission module through the southbound API interface. The data transmission module controls data traffic transmission according to the received flow tables and gating lists.

[0047] Referring to Figures 3(a) and 3(b), the data transmission module includes basic equipment and an SDTSN switch. The basic equipment includes routers, middleware devices, etc. The SDTSN switch includes a transmission ingress module, a flow filtering and policing submodule, a queue management submodule, an egress scheduling and control submodule, and a transmission egress. Specifically: The transmission inlet is used to transmit data traffic to the SDTSN switch; The stream filtering and monitoring submodules are used to classify data streams; The queue management submodule is used to allocate data streams to the corresponding queues based on the classification results of the data streams; The outbound scheduling control submodule performs scheduling operations on the data stream based on the received flow table and gating list; The transmission exit is used to transmit the scheduled data stream from the SDTSN switch and continue forward according to its destination address, which includes the next hop switch and the data destination terminal. When a data stream arrives at the transmission inlet of the SDTSN switch, it first passes through the flow filtering and censoring submodule, which classifies the incoming data stream. Then, the classified data stream passes through the queue management submodule, which allocates the data stream to the appropriate queue based on the classification results. Next, the egress scheduling and control submodule performs scheduling operations on the data streams in the queues based on the received flow table and gating list. Finally, the transmission egress is used to transmit the scheduled data stream from the SDTSN switch, completing the data stream scheduling operation.

[0048] Preferably, refer to Figure 4The data streams in this embodiment include CDT streams, AVB streams, and BE streams. These three streams can cover various application scenarios of in-vehicle networks. For example, control data streams can be used to transmit control information for vehicle operation; AVB streams can be used to transmit audio and video content; and BE streams can be used to transmit general data without special time-sensitive requirements. The queue management submodule allocates the classified data streams to corresponding queues for queuing based on the data stream classification results. Since the SDTSN switch egress queue in this embodiment has 8 columns, the corresponding gating list uses 8 bits. The 8 queues are: queue Q0, queue Q1, queue Q2, queue Q3, queue Q4, queue Q5, queue Q6, and queue Q7. Queue Q0 corresponds to the first position in the gating list, queue Q1 corresponds to the second position, queue Q2 corresponds to the third position, and queue Q3 corresponds to the fourth position. The fourth position of the gate list corresponds to the fifth position of the gate list, the sixth position of the gate list corresponds to the sixth position of the gate list, the seventh position of the gate list corresponds to the seventh position of the gate list, and the eighth position of the gate list corresponds to the eighth position of the gate list. Three of these queues are designated to store the corresponding traffic. In this embodiment, queue Q7 is designated to store CDT streams, queue Q5 to store AVB streams, and queue Q3 to store BE streams. The egress scheduling submodule performs scheduling operations on the queued data streams according to the received gate list and transmits the scheduled data streams out of the SDTSN switch through the transmission egress.

[0049] Preferably, refer to Figure 5 A gating list corresponds to a time slot window. A time slot window based on the gating list includes three time slots: a guard band, a CDT transmission window, and a low-priority stream transmission window. Each of these three time slots corresponds to a gating list item. Furthermore, different sub-time slots correspond to different values ​​in the gating list. The gating list controls the transmission of data streams. Specifically, it controls the opening and closing of queue doors. When a queue door is open, the corresponding queue's stream can be transmitted; when the queue door is closed, the corresponding queue's stream cannot be transmitted temporarily. Sub-time slots control the duration of door opening or closing. The opening order of these sub-time slots is: guard band - CDT window - low-priority window. Therefore, the guard band, CDT window, and low-priority window are different time periods and do not affect each other.

[0050] The CDT transmission window mentioned above is used to transmit CDT streams. The low-priority stream transmission window is used to transmit both AVB and BE streams. The guard band does not transmit any data streams. When the gate list of the CDT transmission window is set to "00000001", only the gate of queue Q7 is opened among the eight queues Q0 to Q7. Queue Q7 stores CDT streams and transmits CDT traffic at this time. Set the gate list of the low-priority stream transmission window to "00010100", and open the gates of queues Q3 and Q5 in the corresponding 8 queues Q0 to Q7. Queue Q3 stores the BE stream, and queue Q5 stores the AVB stream. At this time, both AVB stream and BE stream can be transmitted. The gate list of the guard band is set to "00000000", and the gates of all queues Q0 to Q7 in the corresponding 8 queues are closed. This means that no data stream is transmitted at this time. The purpose is to ensure that no stream is being transmitted when the CDT transmission window is open and will affect it. In this embodiment, for mixed traffic transmission scenarios, the data transmission module controls the transmission of data traffic on the SDTSN switch based on the received flow table and gating list. By using the egress scheduling control submodule and the gating list to control the transmission of data streams with different priorities, the separation of high-priority data streams and low-priority data streams is achieved, thereby improving the real-time performance of high-priority data stream transmission.

[0051] Example 4 This invention provides a traffic scheduling method for in-vehicle software-defined time-sensitive networking (SDTSN), which is mainly designed for situations where multiple data traffic types are transmitted in a mixed manner, and where network congestion and increased end-to-end latency of time-sensitive traffic occur due to changes in the transmission cycle of data streams. The method uses a time-sensitive networking (SDTSN) traffic scheduling method to process the dynamic changes in data traffic transmission in real time.

[0052] refer to Figure 6 This traffic scheduling method includes the following steps: S1. First, the user sends their request to the data control module through the data application module. S2. Then the data control module receives the above user requirements and controls the generation of flow tables and gating lists according to the user requirements; S3. Next, the data transmission module receives the above-mentioned flow table and gating list, and controls the data flow transmission according to the flow table and gating list; S4. Next, the data control module calculates the transmission delay of the data stream and determines whether the transmission delay is greater than the delay threshold. If the transmission delay is greater than the delay threshold, proceed to S5; otherwise, return to S3. S5. Reconfigure the gating list and return to S3; S6. Finally, the system shuts down, completing traffic scheduling.

[0053] The Time-Sensitive Networking (SDTSN) traffic scheduling method in this embodiment combines Time-Sensitive Networking (TSN) and Software-Defined Networking (SDN) and applies it to the in-vehicle network. It uses a gating list to dynamically allocate data streams within the network, thereby achieving the scheduling of mixed data streams and improving the efficiency of data stream transmission.

[0054] Example 5 This invention provides a traffic scheduling method for in-vehicle software-defined time-sensitive networking (SDTSN). Based on Embodiment 4, the SDTSN traffic scheduling method mainly targets data streams with different priorities and end-to-end latency requirements. It designs a dynamic time slot allocation algorithm based on a gating list, which is deployed in the data control module. When the data control module receives user requests, it enters step S2 to control the generation of a flow table and a gating list according to the user requests. This generated gating list is the initial gating list. Step S2 specifically includes the following steps: S21. First, the data control module receives the above user request. S22. Then, the data control module is initialized. This initialization includes the topology management submodule discovering the information of each device and link in the network and obtaining a global network view; the clock synchronization submodule synchronizing the clocks of all nodes in the network to ensure that each node works collaboratively according to a unified time base; and the statistics and monitoring submodule obtaining the traffic, performance and status information of all nodes in the network. S23. Next, the scheduling management submodule generates an initial gating list, which is used to control the transmission of data streams. The period of an initial gating list corresponds to the period of a time slot window. A time slot window includes a CDT transmission window, a low-priority stream transmission window, and a guard band. The CDT transmission window transmits CDT streams, the low-priority stream transmission window transmits AVB streams and BE streams, and the guard band does not transmit any data streams. Let the period of a time slot window be... Let the size of the guard band time slot be... Let the size of the CDT transmission window time slot be... Let the size of the low-priority stream transmission window slot be... ,Right now:

[0055] In the above formula (1), It is a fixed value;

[0056] In the above formula (2), Indicates the maximum Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the inter-frame interval; In the initial gating list and Equal, that is:

[0057] S24. Finally, the scheduling and management submodule sends the above initial gating list to the data transmission module, that is, it sends the above initial gating list to the data transmission module through the southbound API interface, and the initial gating list is simultaneously sent to all SDTSN switches in advance.

[0058] The dynamic time slot allocation algorithm based on a gated list in the data control module of this embodiment is based on the time-aware shaper technology and gated list mechanism in IEEE 802.1Qbv. The gated list is generated by the scheduling management submodule and distributed to the SDTSN switch in the form of flow tables and gated lists through the southbound API interface, thereby controlling the scheduling of different types of traffic in the network. The transmission cycle of the gated list is divided into three time slots, and the three time slots store different data streams respectively, so as to facilitate subsequent control and adjustment of different data streams, thereby improving the transmission accuracy and efficiency of mixed data streams.

[0059] Example 6 This invention provides a traffic scheduling method for in-vehicle software-defined time-sensitive networks (SDSNs). Based on embodiment 5, after the data control module generates a gating list, it sends the gating list to the data transmission module via the southbound API interface. At this time, the data flow arrives at the data transmission module. After passing through the basic equipment of the data transmission module, the data flow enters the SDTSN switch through the transmission entry point. The data flow transmission is controlled according to the flow table and the gating list. Each SDTSN switch is directly controlled by the control module. The initial gating list is simultaneously sent to all SDTSN switches in advance. During system operation, the control module monitors the status information of the data flow on each switch in real time. Specifically, S3 includes the following steps: S31. First, the data stream passes through the basic equipment of the data transmission module and arrives at the SDTSN switch. S32. Then, the data streams are classified by the stream filtering and supervision submodule. The data streams include CDT streams, AVB streams, and BE streams. S33. Next, the classified data streams pass through the queue management submodule, which allocates different types of data streams to the corresponding queues according to the classification results. S34. Immediately afterwards, the egress scheduling control sub-module performs a scheduling operation on the data stream in the queue according to the issued gating list; S35. Finally, the statistics and monitoring sub-module monitors the status information of each flow in real time. The status information includes the time when the data stream is sent from the data source and the time when the data stream arrives at the data destination, and feeds back the status information to the data control module.

[0060] Preferably, when the queue management sub-module in S33 above distributes the flows to the corresponding queues for queuing according to the classification result, the CDT flows, AVB flows and BE flows in the data stream are respectively distributed to the corresponding queues. There are 8 queues, and the 8 queues are: queue Q0, queue Q1, queue Q2, queue Q3, queue Q4, queue Q5, queue Q6 and queue Q7. Among them, queue Q0 corresponds to the 1st bit of the gating list, queue Q1 corresponds to the 2nd bit of the gating list, queue Q2 corresponds to the 3rd bit of the gating list, queue Q3 corresponds to the 4th bit of the gating list, queue Q4 corresponds to the 5th bit of the gating list, queue Q5 corresponds to the 6th bit of the gating list, queue Q6 corresponds to the 7th bit of the gating list, and queue Q7 corresponds to the 8th bit of the gating list; and 3 of the queues are specified to store the corresponding traffic volumes, where the CDT flows are stored in queue Q7, the AVB flows are stored in queue Q5, and the BE flows are stored in queue Q3.

[0061] Preferably, the egress scheduling control sub-module in S34 above performs a scheduling operation on the data streams in different queues according to the issued gating list, that is, by controlling the opening and closing of each time slot window to achieve the transmission of the corresponding data traffic volume in the corresponding time slot. When the time slot window corresponding to the queue is opened, the data streams queuing in this queue are transmitted one by one according to the FIFO principle (that is, first in first out); if the time slot window corresponding to the queue is closed, wait for the next time slot window to open. The FIFO principle is a scheduling method for the data streams queuing in the same queue. The specific scheduling operation is as follows: Let the gating list of the CDT transmission window be "00000001", let the gating list of the low-priority flow transmission window be "00010100", and let the gating list of the guard band be "00000000"; When the gating list received by the egress scheduling control sub-module is "00000001", only the door of queue Q7 is opened among the corresponding 8 queues Q0~Q7. Queue Q7 stores the CDT flows, and at this time, the CDT traffic volume is transmitted; in queue Q7, a CDT_01 arrives at time t1 and a CDT_02 arrives at time t2, and t1 < t2. Then, according to the FIFO principle, CDT_01 is transmitted first, and CDT_02 will be transmitted only after CDT_01 is transmitted; When the gating list received by the egress scheduling control sub-module is "00010100", the gates of queue Q3 and queue Q5 in the corresponding 8 queues Q0 - Q7 are opened. Queue Q3 stores BE traffic, and queue Q5 stores AVB traffic. At this time, both AVB traffic and BE traffic can be transmitted. When transmitting BE traffic, in queue Q3, a BE_01 arrives at time b1 and a BE_02 arrives at time b2, and b1 < b2. Then, according to the FIFO principle, BE_01 is transmitted first, and BE_02 will be transmitted after BE_01 is transmitted. When transmitting AVB traffic, in queue Q5, an AVB_01 arrives at time b1 and an AVB_02 arrives at time b2, and b1 < b2. Then, according to the FIFO principle, AVB_01 is transmitted first, and AVB_02 will be transmitted after AVB_01 is transmitted. When the gating list received by the egress scheduling control sub-module is "00000000", the gates of all 8 queues Q0 - Q7 are closed, that is, no data stream is transmitted at this time.

[0062] In this embodiment, when the data transmission module transmits the data stream, due to the periodic change leading to network congestion, a time slot allocation algorithm based on the gating list is adopted. The mixed data stream is scheduled and transmitted through three time slots. The opening and closing of each time-aware gate are controlled to transmit traffic in the corresponding time slots, and a non-frame-preemptive first-in-first-out mechanism is adopted to improve the network transmission quality. At the same time, the statistics and monitoring module monitors the network traffic, performance, and status information in real time to ensure timely response when the network dynamically changes.

[0063] Embodiment 7 A traffic scheduling method for an in-vehicle software-defined time-sensitive network provided by the present invention is based on Embodiment 6. When the data transmission module transmits the data stream, a transmission delay will occur. The data control module calculates the transmission delay of the data stream. The data stream includes CDT traffic, AVB traffic, and BE traffic. The control module monitors in real time whether the delay of the data stream on each switch is greater than the delay threshold. If it is greater, the control layer reconfigures the gating list of the corresponding switch according to the algorithm. In this embodiment, the end-to-end delay of the CDT flow through one-hop forwarding is calculated. If the actual end-to-end transmission delay of the CDT flow is not greater than the upper bound of the end-to-end transmission delay, the time slot window of the CDT flow remains unchanged, and the CDT flow continues to be transmitted. If the actual end-to-end transmission delay of the CDT flow is greater than the upper bound of the end-to-end transmission delay, the corresponding time slot window is adjusted according to the minimum end-to-end delay scheme.

[0064] The transmission delay is obtained by calculating S4. S4 specifically includes the following steps: S41. First, the scheduling management sub-module in the data control module receives the status information of each flow. S42. Then, the scheduling and management submodule calculates the delay of the CDT flow reaching the SDTSN switch egress queue after one hop based on the received status information. , The calculation formula is:

[0065] In the above formula (4), Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's ingress. Indicates the propagation delay of the link; S43. Next, calculate the delay when the CDT stream successfully reaches the receiving end after being forwarded by the switch. , The calculation formula is:

[0066] In the above formula (5), Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the propagation delay of the link. This indicates the processing latency from data entering the queue to data leaving the queue within the switch; S44. Next, calculate the maximum enqueue to dequeue waiting time of the CDT stream. , The calculation formula is:

[0067] In the above formula (6), This indicates taking the maximum value. Indicates the size of the guard band time slot period. This indicates the size of the time slot period of the low-priority stream transmission window. Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the transmission period of the CDT stream. This represents a value greater than 0 and less than 0. Positive numbers, Indicates rounding down; When a CDT window cannot transmit a complete Ethernet frame, it means that when a CDT stream arrives at the SDTSN switch and is enqueued within the CDT transmission window, but the remaining time of the window is insufficient to transmit the frame completely, then the frame needs to wait for the next time window to open before it can be transmitted. Among them, when waiting for the CDT window to open before the stream is dequeued, it means that the CDT stream that arrives when the CDT transmission window is closed needs to wait for the window to open and according to the FIFO rule of the same queue stream transmission, that is, wait for the CDT stream that was first enqueued when the CDT window is closed to be transmitted out. The last enqueued frame needs to wait for all the frames before it to be transmitted before it can start transmitting. S45. Next, calculate the maximum end-to-end transmission delay of the CDT stream through a single hop. , The calculation formula is:

[0068] In the above formula (7), Calculated using formula (4), Calculated by formula (5), Calculated using formula (6); S46. Finally, determine the above transmission delay. If the transmission delay exceeds the delay threshold, proceed to step S5; otherwise, return to step S3.

[0069] Preferably, the maximum end-to-end transmission delay when the CDT stream flows through a single hop transmission. When the delay is not greater than the set upper limit (i.e., the delay threshold), the time slot window setting of the gating list is always kept unchanged, and traffic is transmitted in this way.

[0070] This embodiment calculates and judges the transmission delay of the data stream through the data control module, and makes timely corresponding dynamic configurations when the data stream transmission in the network changes, thereby improving the flexibility of network configuration. Example 8 This invention provides a traffic scheduling method for in-vehicle software-defined time-sensitive networks (CDT). Based on embodiment 7, when the actual transmission delay of the CDT stream exceeds the set delay threshold, the data control module needs to reconfigure the gating list. This involves calculating and dynamically adjusting the time slot sizes of the CDT transmission window and the low-priority stream transmission window to shorten the total end-to-end delay of the data traffic. The reconfigured time slot size is calculated via step S5. This gating list satisfies the constraints for normal CDT stream transmission and adjusts the corresponding time slot windows according to the minimum end-to-end delay scheme. Step S5 specifically includes the following steps: First, let the delay threshold be... The constraints for normal CDT stream transmission are: The end-to-end delay is less than the set upper bound and reaches its minimum value, that is:

[0071] Formula (8) In the above formula (8), The maximum end-to-end transmission delay of a CDT stream through a single hop. Calculated using formula (7); Next, the CDT transmission window that satisfies the above constraints is calculated. and low-priority streaming window slots Size, In the above formula (8) The result is obtained by formula (6), and it can be seen from the above formula (6) that... Only in China Using variables, solving formula (6) yields the following results. The value; From the above formula (1), we can see that: Formula (9) Finally, based on the calculations... and Adjust the CDT transmission window and the low-priority stream transmission window to obtain a new gating list, and send the new gating list to the data transmission module, then return to S3 to keep the system running.

[0072] Preferably, the time delay threshold This is the upper bound of the maximum end-to-end delay of the CDT stream after one hop, used to ensure that the CDT stream transmission meets the user requirements issued by the data application module.

[0073] In this embodiment, to address the increased end-to-end latency of time-sensitive traffic, the time slot size is adjusted based on the latency of various types of traffic calculated by the control layer and the gating list optimization. The size of the guard band remains unchanged, while the CDT transmission window and the low-priority stream transmission window can be dynamically adjusted according to the CDT stream latency. When the status information of the data stream changes or the end-to-end latency of the traffic exceeds the maximum latency limit (i.e., the latency threshold), the control plane calculates and dynamically adjusts the size of the three time slots based on the obtained specific data to shorten the total end-to-end latency of the data traffic.

[0074] This embodiment addresses the increased end-to-end latency of time-sensitive traffic by improving the time slots in the gating list. By transforming the time slots in the gating list into dynamic time slots, it resolves the queuing latency of different types of traffic in the in-vehicle network, enabling dynamic network configuration. This ensures end-to-end latency of data flow even in dynamic network environments, thus improving applicability in dynamic network environments.

[0075] The above description is only a preferred embodiment of the present invention. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A method for traffic scheduling of in-vehicle software-defined time-sensitive networks, characterized in that, A traffic scheduling system based on in-vehicle software-defined time-sensitive networking, the system includes: a data application module, a data control module, and a data transmission module; The data application module includes a real-time vehicle control application, which determines the real-time communication requirements and sends user requests to the data control module. The data control module is used to receive the above-mentioned user requirements and control the generation of flow tables and gate lists according to the user requirements. The flow tables and gate lists are used to control the transmission of data streams in the data transmission module. The data transmission module is used to receive the flow table and gating list mentioned above, and to control the transmission and scheduling of the data flow according to the flow table and gating list; When the system is working, the data application module first sends user requests to the data control module, then the data control module generates flow tables and gate lists according to the user requests, and finally the data transmission module controls the transmission and scheduling of data streams according to the flow tables and gate lists. The method includes the following steps: S1. First, the user sends their request to the data control module through the data application module. S2. Then the data control module receives the above user requirements and controls the generation of flow tables and gating lists according to the user requirements; S3. Next, the data transmission module receives the above flow table and gate list, and controls the transmission of the data stream according to the flow table and gate list; S4. Next, the data control module calculates the transmission delay of the data stream and determines whether the transmission delay is greater than the delay threshold. If the transmission delay is greater than the delay threshold, proceed to S5; otherwise, return to S3. S5. Reconfigure the gating list and return to S3; S6. Finally, the transmission delay system is shut down, and the data flow scheduling is completed; S2 includes the following steps: S21. First, the data control module receives the above user request. S22. Then initialize the data control module; S23. Next, the scheduling management submodule generates an initial gating list, which is used to control the transmission of data streams. The period of an initial gating list corresponds to the period of a time slot window, and the time slot window includes a CDT transmission window, a low-priority stream transmission window, and a guard band. Let a time slot window period be , the size of the guard band time slot be , the size of the CDT transmission window time slot be , the size of the low priority stream transmission window time slot be , that is: In the above formula (1), It is a fixed value; In the above formula (2), Indicates the maximum Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the inter-frame interval; In the initial gating list and Equal, that is: S24. Finally, the scheduling and management submodule sends the above initial gating list to the data transmission module.

2. The traffic scheduling method for in-vehicle software-defined time-sensitive networking according to claim 1, characterized in that, The data control module includes a scheduling management submodule, which is used to generate flow tables and gating lists.

3. The traffic scheduling method for in-vehicle software-defined time-sensitive networks according to claim 2, characterized in that, The data transmission module includes an SDTSN switch, which includes a flow filtering and monitoring submodule, a queue management submodule, and an egress scheduling control submodule. The egress scheduling control submodule performs scheduling operations on the data flow according to the flow table and the gating list.

4. The traffic scheduling method for in-vehicle software-defined time-sensitive networking according to claim 3, characterized in that, The data streams include CDT streams, AVB streams, and BE streams.

5. The traffic scheduling method for in-vehicle software-defined time-sensitive networks according to claim 4, characterized in that, S3 includes the following steps: S31. First, the data stream passes through the basic equipment of the data transmission module and arrives at the SDTSN switch. S32. Then, the data streams are classified by the stream filtering and supervision submodule. The data streams include CDT streams, AVB streams, and BE streams. S33. Next, the classified data streams pass through the queue management submodule, which allocates different types of data streams to the corresponding queues according to the classification results. S34. Next, the exit scheduling control submodule performs scheduling operations on the data stream in the queue according to the issued gating list; S35. Finally, the statistics and monitoring submodule monitors the status information of each stream in real time. This status information includes the time when the data stream is sent from the data source and the time when the data stream arrives at the data target. The status information is then fed back to the data control module.

6. The traffic scheduling method for in-vehicle software-defined time-sensitive networking according to claim 5, characterized in that, S4 includes the following steps: S41. First, the scheduling management submodule in the data control module receives the status information; S42. Then, the scheduling and management submodule calculates the delay of the CDT flow reaching the SDTSN switch egress queue after one hop based on the received status information. , The calculation formula is: In the above formula (4), Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's ingress. Indicates the propagation delay of the link; S43. Next, calculate the delay when the CDT stream successfully reaches the receiving end after being forwarded by the SDTSN switch. , The calculation formula is: In the above formula (5), Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the propagation delay of the link. This indicates the processing latency from data entering the queue to data leaving the queue within the switch; S44. Next, calculate the maximum enqueue to dequeue waiting time of the CDT stream. , The calculation formula is: In the above formula (6), This indicates taking the maximum value. Indicates the size of the guard band time slot period. This indicates the size of the time slot period of the low-priority stream transmission window. Indicates the Ethernet frame length. This indicates the bandwidth allocated to the switch's egress. Indicates the transmission period of the CDT stream. This represents a value greater than 0 and less than 0. Positive numbers, Indicates rounding down; S45. Next, calculate the maximum end-to-end transmission delay of the CDT stream through a single hop. , The calculation formula is: In the above formula (7), Calculated using formula (4), Calculated by formula (5), Calculated using formula (6); S46. Finally, determine the above transmission delay. If the transmission delay exceeds the delay threshold, proceed to step S5; otherwise, return to step S3.

7. The traffic scheduling method for in-vehicle software-defined time-sensitive networking according to claim 6, characterized in that, S5 includes the following steps: First, let the delay threshold be... The constraints for normal CDT stream transmission are: The end-to-end delay is less than the set upper bound and reaches its minimum value, that is: Official (8) In the above formula (8), The maximum end-to-end transmission delay of a CDT stream through a single hop. Calculated using formula (7); Next, the CDT transmission window that satisfies the above constraints is calculated. and low-priority streaming window slots The size of, in the above formula (8) The result is obtained by formula (6); From the above formula (6), we can see that Only in China Using the variable as the variable, solving the above formula (6) yields the following result. The value; From the above formula (1), we can see that: Official (9) Finally, based on the calculations... and Adjust the CDT transmission window and the low-priority stream transmission window to obtain a new gating list, and send the new gating list to the data transmission module, then return to S3 to keep the system running.

8. The traffic scheduling method for in-vehicle software-defined time-sensitive networking according to claim 7, characterized in that, The delay threshold This is the upper bound of the maximum end-to-end delay of the CDT stream after one hop, used to ensure that the CDT stream transmission meets the user requirements issued by the data application module.