Flow scheduling configuration method in time-sensitive network of robot operating system

Through real-time monitoring and dynamic adjustment of flow scheduling configuration, the problem of mismatch between the flow scheduling scheme in a time-sensitive network is solved, and the timeliness and reliability of data flow is achieved, the risk of failure is reduced, and the service quality and flexibility of the network are improved.

CN119676177AActive Publication Date: 2025-03-21HARBIN INST OF TECH
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411849060.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-16
Publication Date
2025-03-21
Estimated Expiration
2044-12-16

AI Technical Summary

Technical Problem

In time-sensitive networks, the original stream scheduling scheme may not match the actual situation due to dynamic changes in the network environment, which affects the timeliness and reliability of data flows. The existing technology lacks effective configuration and deployment correctness checking, judgment and error correction methods.

Method used

The current basic data of the time-sensitive network is obtained through the network controller, the flow scheduling configuration data is generated, and the configuration is performed based on the data. When the terminal device sends a data stream, it calculates the slowdown ratio of the data stream in real time, determines whether it is abnormal, and checks and corrects the flow scheduling configuration data based on the preset threshold and the amount of abnormal information within the time interval.

Benefits of technology

This method can effectively reduce the delay and packet loss in data transmission, ensure timely arrival of data from time-sensitive applications, reduce the risk of failure caused by network congestion or improper configuration, and improve the service quality and flexibility of the network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119676177A_ABST
    Figure CN119676177A_ABST
Patent Text Reader

Abstract

The invention provides a flow scheduling configuration method in a time-sensitive network of a robot operating system, and relates to the technical field of network transmission, the configuration method comprises the following steps: obtaining current basic data of the time-sensitive network, and entering a flow scheduling configuration process: obtaining flow scheduling configuration data according to the current basic data, configuration is carried out according to the flow scheduling configuration data; when the terminal equipment sends the data streams, the slowing-down ratio of each data stream is obtained, judgment is carried out based on each slowing-down ratio according to a preset threshold value, abnormal information is obtained, and a comparison result is obtained based on comparison between the number of the abnormal information in a preset time interval and the number of the preset data streams; checking the flow scheduling configuration data based on a comparison result to obtain a checking result, and correcting the flow scheduling configuration data according to the checking result; through real-time monitoring and dynamic adjustment of flow scheduling configuration, delay and packet loss phenomena in data transmission can be effectively reduced, and timely arrival of data of a time-sensitive application is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network transmission technology, and in particular to a flow scheduling configuration method in a time-sensitive network of a robot operating system. Background Art

[0002] The underlying communication protocols of current robot operating systems are mainly TCP / UDP and DDS. However, in the case of large-scale data transmission (such as 3D lidar data, camera data, etc.), it is still difficult to ensure the deterministic transmission of time-critical data (such as joint control instructions, etc.), which is very unfavorable for the real-time control of robots. Existing research points out that TSN can be used as the de facto standard for real-time communication of robots in the future. And the robot operating system integrated with TSN can ensure the critical communication of time-sensitive data, while providing support for the data link layer provided by real-time communication.

[0003] In time-sensitive networks (TSN), the design and implementation of flow scheduling schemes are crucial to ensure the effectiveness of real-time data transmission. However, the dynamic changes in the network environment may make the original scheduling scheme no longer match the actual situation, thus affecting the timeliness and reliability of data flows.

[0004] Generally speaking, the correctness of the flow scheduling scheme depends on accurate network model parameters. These parameters include link delay, port queue length, data packet processing delay on the switching device, etc. The accuracy of these parameters directly affects the effect of the scheduling algorithm, ensuring that the data packet can pass through the network smoothly within the predetermined time window.

[0005] However, in actual operation, network parameters are affected by many factors, such as fluctuations in network traffic, changes in device performance, and fault recovery. These changes may cause link latency to increase, queue length to change, and even cause changes in the open and closed states of ports. When old scheduling schemes are calculated based on outdated network parameters, packets may arrive at a port at an inappropriate time. For example, a packet that should have arrived when a port queue was open may arrive when the port queue is closed due to increased processing latency at the upstream switch. In this case, the packet may need to wait for the next super cycle to be sent, which will seriously affect the completion time of the periodic data flow.

[0006] Moreover, current research and practice mainly focus on the calculation and optimization of flow scheduling schemes, while the research on the correctness checking, judgment and error correction methods of configuration deployment is relatively limited. This makes it difficult to judge the point where the problem occurs in real time and accuracy in practical applications when configuration errors occur, resulting in network performance degradation and data transmission delays. Summary of the invention

[0007] The problem solved by the present invention is one or more of the above-mentioned problems in the prior art.

[0008] In order to solve the above problems, the present invention provides a flow scheduling configuration method in a time-sensitive network of a robot operating system.

[0009] In a first aspect, the present invention provides a flow scheduling configuration method in a time-sensitive network of a robot operating system, which is applied to a time-sensitive network of a robot operating system, wherein an application device of the time-sensitive network includes a robot control device, a switching device, and a network controller; the flow scheduling configuration method in the time-sensitive network of the robot operating system includes:

[0010] The current basic data of the time-sensitive network is obtained through the network controller, and the flow scheduling configuration process is entered:

[0011] Obtaining flow scheduling configuration data according to the current basic data, and performing configuration according to the flow scheduling configuration data;

[0012] When the terminal device sends a data stream, a mitigation ratio of each data stream is obtained, and based on each mitigation ratio, a judgment is made according to a preset threshold to obtain abnormal information, and a comparison is made based on the number of abnormal information within a preset time interval and the preset number of data streams to obtain a comparison result;

[0013] Based on the comparison result, the flow scheduling configuration data is checked to obtain a check result, and the flow scheduling configuration data is modified according to the check result.

[0014] Optionally, the obtaining of the mitigation ratio of each of the data flows, and judging based on each of the mitigation ratios according to a preset threshold to obtain the abnormal information includes:

[0015] Obtaining a preset number, and obtaining temporary data based on the preset number and the corresponding mitigation ratio;

[0016] When the temporary data exceeds the preset threshold, the abnormal information is obtained and sent to the network controller.

[0017] Optionally, the checking the flow scheduling configuration data based on the comparison result to obtain the checking result includes:

[0018] When the number of the abnormal information exceeds the preset number of data streams, sorting the mitigation ratios of the data streams corresponding to the abnormal information to obtain a first set to be checked, and determining a target data stream corresponding to the maximum mitigation ratio in the first set to be checked;

[0019] The switching devices corresponding to the target data flow are sorted according to the port queue length to obtain a second set to be checked, and the switching devices in the second set to be checked are checked based on a preset indicator to obtain the checking result.

[0020] Optionally, the checking each of the switching devices in the second set to be checked based on a preset indicator and obtaining the result of the checking comprises:

[0021] When any of the switching devices has an abnormality, the corresponding abnormal data is corrected, and the current basic data of the time-sensitive network after correction is obtained, and the flow scheduling configuration process is re-executed until all the switching devices in the second set to be checked are completed.

[0022] Optionally, the stream scheduling configuration data includes super cycles of all the data streams, startup data of the data streams and gating list data.

[0023] Optionally, the gating list data includes a gating period; and the flow scheduling configuration method in a time-sensitive network of the robot operating system further includes:

[0024] Dividing the gate control period to obtain a plurality of time slots;

[0025] A preset priority is obtained, and each of the time slots is allocated based on the preset priority.

[0026] Optionally, before configuring according to the stream scheduling configuration data, the method further includes:

[0027] The synchronization message sending period of the master clock in the time-sensitive network is shortened.

[0028] Optionally, the preset indicator includes a gating list, and the inspection result includes abnormal data in the gating list; and the inspection of each switching device in the second set to be checked based on the preset indicator to obtain the inspection result includes:

[0029] Acquire a gating list of a target switching device; the target switching device is any switching device in the second set to be checked;

[0030] The current gating list is compared with the gating list data in the flow scheduling configuration data to obtain corresponding gating list abnormal data.

[0031] Optionally, the preset indicator further includes synchronization data, and the inspection result further includes synchronization abnormality data; and the inspection of each switching device in the second set to be checked based on the preset indicator, and obtaining the inspection result further includes:

[0032] Acquire synchronization data of the target switching device;

[0033] The current synchronization data is compared with the synchronization data in the time-sensitive network to obtain corresponding synchronization exception data.

[0034] Optionally, the preset indicator further includes link data, and the inspection result further includes link abnormality data; and the inspection of each switching device in the second set to be checked based on the preset indicator, and obtaining the inspection result further includes:

[0035] Acquire link data of the target switching device;

[0036] The link data is compared with the link data in the current basic data to obtain corresponding link abnormality data.

[0037] The beneficial effects of the flow scheduling configuration method in the time-sensitive network of the robot operating system of the present invention are:

[0038] First, the network configuration module in the network controller collects real-time network status information, including basic data such as topology information, link delay, port queue length, etc., to provide a basis for subsequent scheduling. According to the basic data obtained, a flow scheduling strategy is formulated to determine the sending time, priority, and bandwidth allocation of each flow. And adjust the settings of network devices according to the generated flow scheduling configuration data to ensure the on-time transmission of the flow. The network controller includes a centralized network configuration module (CNC, Centralized Network Controller) and a centralized user configuration module (CUC, Centralized Unit Controller).

[0039] In the process of sending data streams by terminal devices, the slowdown ratio (slowdown) of each stream is calculated in real time, that is, the ratio of the actual completion time to the ideal completion time. And based on the preset threshold, it is judged whether the slowdown ratio is abnormal. If the slowdown ratio exceeds the threshold, the abnormal information is recorded. Then, within the preset time interval, the number of abnormal information is counted through the user configuration module (CUC) and compared with the preset number of data streams to evaluate the overall performance of the network. Finally, based on the comparison results, it is judged whether the flow scheduling configuration is reasonable and whether it needs to be adjusted. If the configuration is found to be unreasonable, the flow scheduling configuration data is corrected based on the inspection results to optimize network performance.

[0040] In summary, the method of the present invention can effectively reduce the delay and packet loss in data transmission by real-time monitoring and dynamic adjustment of the flow scheduling configuration, and ensure that the data of time-sensitive applications (such as industrial automation, audio and video transmission, etc.) arrives in time. And through the abnormal detection mechanism, problems in the network can be discovered and adjusted in time, reducing the risk of failure caused by network congestion or improper configuration. Through the real-time corrected flow scheduling configuration, the network bandwidth can be used more efficiently, resource waste can be avoided, and the service quality of the overall network can be improved. At the same time, the method can dynamically adjust the configuration according to the change of network status, and also avoids the cumbersomeness of manual configuration and error detection, adapts to different network loads and application requirements, and improves the flexibility and adaptability of the network. And with the expansion of the network scale or the access of new equipment, the method can still maintain effective flow scheduling and abnormal monitoring, and support large-scale time-sensitive network environments. Therefore, the flow scheduling configuration method has important application value in time-sensitive networks, and can effectively improve the real-time performance and reliability of the network. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] Figure 1 A schematic flow chart of a method for configuring flow scheduling in a time-sensitive network of a robot operating system according to an embodiment of the present invention;

[0042] Figure 2 A schematic diagram of a framework of a flow scheduling configuration method in a time-sensitive network of a robot operating system according to an embodiment of the present invention;

[0043] Figure 3 A schematic diagram of the structure of a robot operating system according to an embodiment of the present invention;

[0044] Figure 4 is the super period T of the time-sensitive network downstream of the embodiment of the present invention. hyper Schematic diagram of

[0045] Figure 5 A schematic diagram of TSN node gating switch time configuration for time-sensitive network downstream scheduling according to an embodiment of the present invention;

[0046] Figure 6 This is a schematic diagram showing that the time-sensitive network downstream scheduling solution according to an embodiment of the present invention does not match the actual situation. DETAILED DESCRIPTION

[0047] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the specific embodiments of the present invention are described in detail below in conjunction with the accompanying drawings. Although certain embodiments of the present invention are shown in the accompanying drawings, it should be understood that the present invention can be implemented in various forms and should not be interpreted as being limited to the embodiments described herein. On the contrary, these embodiments are provided to provide a more thorough and complete understanding of the present invention. It should be understood that the drawings and embodiments of the present invention are only for exemplary purposes and are not intended to limit the scope of protection of the present invention.

[0048] It should be understood that the various steps described in the method embodiments of the present invention may be performed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present invention is not limited in this respect.

[0049] The term "including" and its variations used in this document are open inclusions, that is, "including but not limited to"; the term "based on" means "based at least in part on"; the term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one other embodiment"; the term "some embodiments" means "at least some embodiments"; the term "optionally" means "optional embodiments". The relevant definitions of other terms will be given in the following description. It should be noted that the concepts of "first", "second", etc. mentioned in the present invention are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0050] It should be noted that the modifications of "one" and "plurality" mentioned in the present invention are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise clearly indicated in the context, it should be understood as "one or more".

[0051] The names of the messages or information exchanged between multiple devices in the embodiments of the present invention are only used for illustrative purposes, and are not used to limit the scope of these messages or information.

[0052] In the existing technology, although the current robot operating system can generally ensure low network communication delay, it is difficult to ensure the deterministic transmission of time-critical data (such as joint control instructions, etc.) during the transmission process, which is very unfavorable for the real-time control of the robot. For high-critical applications that require hard real-time, such as field devices such as sensors and actuators, some manufacturers have developed vendor-specific protocols based on improved Ethernet technology (such as EtherCAT, SERCOS III, PROFINET IRT, etc.). These protocols are specifically used for certain specific tasks, and their use depends largely on the application. However, in robotics, the lack of a truly standard protocol has brought a burden to component integration or communication between robots.

[0053] Time-Sensitive Network (TSN) is a set of IEEE standards, one of whose main goals is to provide a unified data link layer for real-time communications, thereby achieving compatibility between different vendors and allowing the integration of traffic and real-time communications. In time-sensitive networks, the IEEE 802.1Qbv standard introduces the time-aware shaper (TAS). On switches that support the Qbv protocol, traffic is divided into multiple priority categories according to actual functional requirements, and the switch's export message queue is opened or closed according to the pre-configured gate control list (GCL), thereby providing deterministic delay guarantees for important data in periodic robot control.

[0054] And the Time-Sensitive Network (TSN) has real-time functions such as time synchronization and delay guarantee. In a network running the TSN time synchronization protocol, there is only one TSN device as the master clock. The master clock periodically broadcasts Sync packets to the slave clocks in the network, carrying its own local time. The slave clock adjusts its local clock to be consistent with the master clock to achieve time synchronization. The clock error between nodes in the TSN network is at the microsecond level, and the clocks can be approximately considered to be synchronized, which provides a hardware foundation for accurate flow scheduling configuration solutions.

[0055] Based on this, Figure 1 As shown, an embodiment of the present invention provides a flow scheduling configuration method in a time-sensitive network of a robot operating system, which is applied to a time-sensitive network of a robot operating system, wherein the application device of the time-sensitive network includes a robot control device, a switching device, and a network controller; the flow scheduling configuration method in the time-sensitive network of the robot operating system includes:

[0056] S100, obtaining the current basic data of the time-sensitive network through the network controller, and entering the flow scheduling configuration process:

[0057] Specifically, Figure 2 As shown in the figure, a framework diagram of the flow scheduling configuration method in the time-sensitive network of the robot operating system is shown, wherein the black arrow box is a switching device (such as a physical switch), and the computer-style icon is a terminal device (robot controller). The network controller includes a centralized network configuration module (centralized network configuration CNC) and a centralized user configuration module (centralized user configuration CUC). Through the CNC module in the network controller, basic data is periodically collected from network devices using protocols such as SNMP (Simple Network Management Protocol). These data include network topology, link delay, port queue length, processing delay of switching equipment, etc. These data provide a basis for subsequent scheduling. Figure 3 As shown, in Figure 2 The terminals shown (such as two computer terminals and the computer of the network controller) can be equipped with the robot operating system, which includes a basic operating system layer and a robot middleware layer, wherein the robot middleware includes the underlying communication middleware and the upper robot component communication / control framework. The communication middleware part includes the previous basic communication protocols (such as TCP / UDP, DDS, etc.), and is also integrated with TSN to form a real-time communication middleware to ensure real-time control of the robot.

[0058] S200, obtaining flow scheduling configuration data according to the current basic data, and performing configuration according to the flow scheduling configuration data;

[0059] Specifically, the CUC module in the network controller analyzes and processes the current basic data obtained by the CNC module to obtain the flow scheduling configuration data, and uses this data as the input for calculating the scheduling configuration scheme. For example, when a flow in the network leaves or a new flow arrives, a new scheduling scheme will be calculated, which often includes: the super period T of all flows (data flows) in the network hyper (See Figure 4 ), gate list data (such as the opening and closing time of GCL gate (see Figure 5 As shown, a schematic diagram of TSN node gating switch time configuration for flow scheduling in a time-sensitive network), and flow startup data, etc.

[0060] Once the flow scheduling configuration data is generated, the CUC module sends these configurations to each network device through the corresponding configuration protocol (such as NETCONF, RESTCONF or other communication protocols).

[0061] After receiving the new configuration, the device makes corresponding adjustments to ensure that the data packets are processed according to the new policy (flow scheduling configuration data).

[0062] S300, when the terminal device sends a data stream, obtain a mitigation ratio of each data stream, and make a judgment based on each mitigation ratio according to a preset threshold to obtain abnormal information, and compare the number of abnormal information within a preset time interval with the preset number of data streams to obtain a comparison result;

[0063] Specifically, before the sender in the terminal device sends the data stream, the ideal completion time of the stream, that is, the expected time, can be calculated according to the stream scheduling configuration data. The terminal device starts to send the data stream to the network. Each data stream may have different characteristics, including data packet size, transmission frequency, and destination. During the data stream transmission process, the difference between the actual completion time and the expected time of each data stream is monitored. The slowdown ratio can be defined as: the ratio of the actual completion time of the stream to the corresponding expected time, and this value is greater than or equal to 1. That is, through real-time monitoring, the slowdown ratio of each data stream can be calculated to evaluate its transmission performance.

[0064] According to the preset slowdown ratio threshold, determine whether the data flow is abnormal. If the slowdown ratio exceeds the threshold, the data flow is considered abnormal and relevant information is recorded. For example, if the preset threshold is 2, the flow with a slowdown ratio greater than 2 will be marked as abnormal. The abnormal value of the current flow is reported to the CUC module.

[0065] During the preset time interval, the CUC module continuously collects abnormal information and records the number and related characteristics of all data flows marked as abnormal. The number of abnormal information recorded during the preset time interval is compared with the preset number of data flows. This comparison can help determine the overall health of the network. Based on the comparison results, an abnormality report is generated and it is considered that the current flow scheduling configuration data has errors and needs further investigation. If the comparison result is normal, it means that the current flow scheduling configuration data does not need to be adjusted.

[0066] Through real-time monitoring and mitigation ratio calculation, abnormal situations in the data flow transmission process can be discovered in time to avoid potential network failures. At the same time, through monitoring and abnormal judgment of data flow, intervention can be made before the problem expands, improving the overall reliability and stability of the network. And taking corresponding measures after identifying abnormal flows can effectively optimize the utilization of network resources and reduce resource waste caused by abnormal traffic. And by quickly responding to abnormal situations, it can reduce the delays and packet loss encountered by users during use, thereby improving user experience.

[0067] By collecting and analyzing abnormal information, more accurate decisions can be made based on the data to optimize network configuration and management strategies.

[0068] In summary, this process not only improves the network monitoring capability by monitoring the slowdown ratio of data flow and judging anomalies, but also provides strong support for subsequent network optimization and troubleshooting.

[0069] S400, based on the comparison result, check the flow scheduling configuration data to obtain a check result, and modify the flow scheduling configuration data according to the check result.

[0070] Specifically, in this step, based on the previously detected abnormal situation and the comparison result (such as the number of abnormal flows and the preset number of flows), the network control system will generate a specific comparison result.

[0071] Based on the comparison results, the existing flow scheduling configuration data is checked in detail. This includes verifying whether the flow scheduling policy meets the network performance requirements. For example, the inspection content may include: whether the current configuration is reasonable and whether it can support the characteristics and requirements of the current traffic. Check whether the thresholds, priorities, bandwidth allocations, etc. set in the flow scheduling policy are appropriate. And consider the impact of changes in the network environment (such as traffic patterns, traffic fluctuations, etc.) on the existing configuration.

[0072] Based on the inspection results, if the flow scheduling configuration is found to be unreasonable or insufficient, it should be corrected in time. For example, the flow scheduling algorithm can be updated: according to the new network conditions, the flow scheduling strategy or algorithm can be adjusted, such as using a more suitable scheduling method (such as fair queue, priority scheduling, etc.). The corrected configuration needs to be redeployed to the network device to ensure that the new strategy takes effect.

[0073] Restart the flow scheduling and monitor the operation of the new scheduling configuration under actual traffic. Collect data again to verify whether the revised flow scheduling configuration effectively improves network performance and reduces the occurrence of abnormal flows.

[0074] By checking and correcting the flow scheduling configuration, we can ensure that the network can better adapt to the changing traffic patterns and demands, thereby improving overall performance. This process allows the network to respond to potential abnormal situations in a timely manner, so that the flow scheduling configuration can flexibly adapt to the new traffic environment and reduce the risk of network failure. At the same time, the checked and corrected flow scheduling configuration can use network resources more effectively, avoid unnecessary resource waste, and improve network utilization. And through timely inspection and correction, network fluctuations caused by improper configuration are reduced, and the stability and reliability of the network are enhanced.

[0075] By implementing this process, it is possible to ensure that the flow scheduling configuration can adapt to changing network conditions, thereby improving service quality and user experience.

[0076] In this embodiment, first, the real-time status information of the network is collected through the network configuration module in the network controller, including basic data such as topology information, link delay, port queue length, etc., to provide a basis for subsequent scheduling. According to the basic data obtained, a flow scheduling strategy is formulated to determine the sending time, priority and bandwidth allocation of each flow. And the settings of the network equipment are adjusted according to the generated flow scheduling configuration data to ensure the timely transmission of the flow. The network controller includes a centralized network configuration module (CNC module, Centralized Network Controller) and a centralized user configuration module (CUC module, Centralized Unit Controller).

[0077] In the process of sending data streams by terminal devices, the slowdown ratio (slowdown) of each stream is calculated in real time, that is, the ratio of the actual completion time to the ideal completion time. And based on the preset threshold, it is judged whether the slowdown ratio is abnormal. If the slowdown ratio exceeds the threshold, the abnormal information is recorded. Then, within the preset time interval, the number of abnormal information is counted through the user configuration module (CUC) and compared with the preset number of data streams to evaluate the overall performance of the network. Finally, based on the comparison results, it is judged whether the flow scheduling configuration is reasonable and whether it needs to be adjusted. If the configuration is found to be unreasonable, the flow scheduling configuration data is corrected based on the inspection results to optimize network performance.

[0078] In summary, the method of this embodiment can effectively reduce the delay and packet loss in data transmission by real-time monitoring and dynamically adjusting the flow scheduling configuration, and ensure that the data of time-sensitive applications (such as industrial automation, audio and video transmission, etc.) arrives in time. And through the anomaly detection mechanism, problems in the network can be discovered and adjusted in time, reducing the risk of failure caused by network congestion or improper configuration. Through the real-time corrected flow scheduling configuration, the network bandwidth can be used more efficiently, resource waste can be avoided, and the service quality of the overall network can be improved. At the same time, the method can dynamically adjust the configuration according to the changes in the network state, adapt to different network loads and application requirements, and improve the flexibility and adaptability of the network. And with the expansion of the network scale or the access of new equipment, the method can still maintain effective flow scheduling and anomaly monitoring, and support large-scale time-sensitive network environments. Therefore, the flow scheduling configuration method has important application value in time-sensitive networks and can effectively improve the real-time performance and reliability of the network.

[0079] Optionally, the obtaining of the mitigation ratio of each of the data flows, and judging based on each of the mitigation ratios according to a preset threshold to obtain the abnormal information includes:

[0080] Obtaining a preset number, and obtaining temporary data based on the preset number and the corresponding mitigation ratio;

[0081] When the temporary data exceeds the preset threshold, the abnormal information is obtained and sent to the network controller (CUC module).

[0082] Specifically, the sender of the flow calculates the corresponding slowdown ratio after each flow is completed, and sets a preset number (such as the number of recently detected flows) based on the performance requirements and characteristics of the network for subsequent temporary data calculations. The preset number can be adjusted based on historical traffic patterns and current network conditions;

[0083] Based on the obtained mitigation ratio, statistics are collected for a preset number of data flows. These mitigation ratios are collected together to form a temporary data set. A suitable aggregation method (such as averaging, taking the maximum value, etc.) is used to calculate the temporary data. For example, according to the preset number, for example, the preset number is selected as n, and the average value of the mitigation ratios of n flows is calculated, that is, the temporary data.

[0084] Set a preset threshold and compare the relationship between the temporary data and the threshold. If the temporary data exceeds the preset threshold, the network is judged to be abnormal and the abnormal information is recorded. For example, if the preset threshold is 2, if the average value of the mitigation ratio of n flows exceeds 2, the network is judged to be abnormal, the abnormal information is recorded and the abnormal value of the current flow is reported to the CUC module.

[0085] In some embodiments, this step of the process is distributedly executed by the starting nodes of all flows in the network. First, the sender calculates the ideal flow completion time based on the configuration information previously sent by the controller. After the actual transmission of the flow is completed, the sender can obtain the actual completion time of the flow, and compare the actual value with the ideal value (expected time) to obtain the slowdown of the flow. If the slowdown is greater than 2, the flow is regarded as an abnormal flow, and the abnormal slowdown value of the current flow is reported to the CUC module of the network controller.

[0086] The reasons for abnormal values ​​can be found in Figure 4 and Figure 6 For example, the processing delay of the switch (switching device) is actually higher than the reported value in step S100 (the processing delay of the switching device for the data packet in the current basic data), which may lead to Figure 4The time window t2-t3 in is not enough to forward two data packets. Data packet 2.2, which was originally scheduled to be sent in this time period, has to be delayed until time t4. Therefore, during the time period t3-t4, data packet 2.2 will be piled up in queue q2. This will introduce additional flow completion time for other flows (currently only one flow error is given as an example, but in fact there may be hundreds or thousands of flows that have errors here, causing more serious impacts). Therefore, the main problems that may be caused by the process of outliers include delays, queue backlogs, network congestion, resource waste, failure of abnormal flow detection, degraded service quality, complex troubleshooting, and reduced user satisfaction. These problems are interrelated and may lead to further deterioration of network performance.

[0087] Optionally, the checking the flow scheduling configuration data based on the comparison result to obtain the checking result includes:

[0088] When the number of the abnormal information exceeds the preset number of data streams, sorting the mitigation ratios of the data streams corresponding to the abnormal information to obtain a first set W to be checked, and determining a target data stream corresponding to the maximum mitigation ratio in the first set W to be checked;

[0089] The switching devices corresponding to the target data flow are sorted according to the port queue length to obtain a second set P to be checked, and the switching devices in the second set to be checked are checked based on a preset indicator to obtain the result of the check.

[0090] Optionally, the checking each of the switching devices in the second set to be checked based on a preset indicator and obtaining the result of the checking comprises:

[0091] When any of the switching devices has an abnormality, the corresponding abnormal data is corrected, and the current basic data of the time-sensitive network after correction is obtained, and the flow scheduling configuration process is re-executed until all the switching devices in the second set to be checked are completed.

[0092] Specifically, this process involves checking and correcting the flow scheduling configuration data to ensure the performance and stability of the time-sensitive network. Specific process description: Based on the comparison results of the flow scheduling configuration data, that is, when the number of abnormal information exceeds the preset number of data flows, such as: through the CUC module in n*T hyper If the number of abnormal information received within the (preset time interval), that is, the number of abnormal flows, exceeds the preset number of data flows (such as 10% of the total number of flows), it means that there is a problem with the current flow scheduling configuration data, and the fault point needs to be gradually identified.

[0093] First, the CUC module will find the switch that is most likely to have problems and correct it. Since changes to a switch will affect the slowdown ratio of all flows passing through the switch, each time a switch is corrected, the slowdown ratio needs to be recollected and checked. That is, if the issued network configuration (the current flow scheduling configuration data) does not match the actual network situation, the data packets will be accumulated in the queue, causing the queue to become longer. Obviously, the more mismatched the place is, the longer the queue length will be, resulting in a larger slowdown ratio for the flow. Therefore, starting to check from the switch with the longest queue length can make it easier to find problems early and end the troubleshooting cycle.

[0094] That is, the CUC module sorts the collected abnormal flows from high to low according to the slowdown ratio, establishes the first set W to be checked (the purpose of this step is to identify which data flows are most seriously affected), and selects the target data flow with the largest slowdown ratio (this data flow is the flow that needs the most attention and optimization in the current network). Then, the switching devices it passes through are sorted from high to low according to the port queue length to establish the second set P to be checked, and the switch p with the largest port queue length is selected. Among them, the queue length usually reflects the load and processing capacity of the device, and a long queue may mean delay and performance bottleneck.

[0095] Based on the preset performance indicators (such as the super period T of the data flow hyper , data flow startup data and gating list data, etc.), and checks each switching device in the second set P to be checked. This step is intended to evaluate the performance status of these devices and identify potential anomalies.

[0096] Once any switching device is found to be abnormal, the system will correct the abnormal data of the device and then re-acquire the current basic data to ensure that the performance indicators of all switching devices are within the normal range. After ensuring that all switching devices are normal, the flow scheduling configuration process will be re-executed. This process will continue until all switching devices to be checked have been checked and corrected to ensure that the network is in the best state at all times.

[0097] Through continuous monitoring and maintenance of switching equipment, the frequency of network failures can be reduced, and the stability and reliability of the network can be enhanced. After re-executing the flow scheduling configuration, network resources can be used more effectively, ensuring the reasonable allocation of bandwidth and processing power, and reducing resource waste. At the same time, through the automated inspection and correction process, the need for manual intervention can be reduced, thereby reducing operation and maintenance costs and time, and improving operation and maintenance efficiency.

[0098] The cyclical inspection mechanism of this process provides a basis for continuous improvement of network management, enabling the network to adapt to the ever-changing traffic demand and technological development. And by giving priority to the target data flow with the largest slowdown ratio, the delay of key flows can be effectively reduced, ensuring the timely transmission of important data.

[0099] Optionally, a searched set Q is constructed, and the initial searched set Q is an empty set. The switch p with the largest port queue length is selected to start the search, and if the switch p is in Q, the next switch 0 is postponed.

[0100] Optionally, the stream scheduling configuration data includes the super period T of all the data streams. hyper , data stream startup data and gate list data (GCL gate opening and closing time).

[0101] In some embodiments, the CUC (centralized user configuration) module of the centralized network controller calculates the flow scheduling scheme (current flow scheduling configuration data) based on the network parameters (current basic data) collected by S100. The scheduling scheme mainly includes the following information: the super period T of all flows in the network hyper , stream start time (data stream start data) and GCL gate opening and closing time (gate list data). Figure 4 and Figure 5 Take the example to illustrate how the scheduling scheme works.

[0102] like Figure 4 and Figure 5 As shown, Figure 5 In the figure, S1, S2 and S3 in the black arrow box are switches, and H1 is a terminal device. There are two flows in the current network, with the first-hop switch of the flow as the flow identifier, recorded as flow S1 and flow S2 respectively. Flow S1 starts every 50 microseconds and sends 1 packet each time; flow S2 starts every 75 microseconds and sends 2 packets each time. When the cycles of flows in the network are different, the lowest common multiple of all flows is taken as the basic cycle of scheduling, also known as the super cycle T hyper ( Figure 4 ). In this example, the super period is 150 microseconds.

[0103] Next, the GCL gate opening and closing time is calculated for each port on the switch using the super cycle as the basic time unit, that is, Figure 5 In the table, q18 represents different priority queues (usually 8, and the tables of S1 and S2 omit other priority queues), and t07 represents the time when the queue is enabled to send packets. The numbers "1.1" and "1.2" in the small squares in the figure represent the first and second data packets sent by flow S1 respectively (because the flow only sends one packet at a time, so 1.2 actually belongs to the second round of data packets sent), and the others are similar.

[0104] Will Figure 4 and Figure 5 By contrast, at time t0, queue q1 at port S1-S3 and queue q2 at port S2-S3 are enabled. Packets 1.1, 2.1, and 2.2 arrive at port S3-H1 at time t1, when only queue q1 is enabled. Therefore, packet 1.1 with priority q1 is forwarded first, and packets 2.1 and 2.2 are cached in the queue until time t2. When the second round of packets 2.3 and 2.4 of flow S2 arrive at port S3-H1, since the open window of queue q2 is not enough to send packet 2.4, packet 2.4 is cached until time t6 and forwarded together with packet 1.3 of the third round of flow S1.

[0105] Optionally, the gating list data includes a gating period; and the flow scheduling configuration method in a time-sensitive network of the robot operating system further includes:

[0106] Dividing the gate control period to obtain a plurality of time slots;

[0107] A preset priority is obtained, and each of the time slots is allocated based on the preset priority.

[0108] Specifically, first, we define the gating period, which refers to the time period during which a switch port is allowed to send data packets within a specific time in a time-sensitive network. The gating period can be fixed or dynamically adjusted according to the needs of the flow.

[0109] The gating cycle is divided into multiple time slots. Each time slot represents a small unit of time and is used to schedule the transmission of different flows. The division method can be optimized based on factors such as network traffic characteristics, latency requirements, and priorities.

[0110] In a time-sensitive network, different data flows may have different priorities. For example, a real-time video stream may have a higher priority than a normal data stream.

[0111] Get the preset priorities of these flows, usually configured through a network management system or application layer protocol. These priorities can be static (pre-defined) or dynamic (adjusted in real time based on network status).

[0112] Based on the preset priorities, each time slot is allocated. High-priority flows can get more time slots or get longer sending time in the time slot to ensure that their data packets can be transmitted in time.

[0113] For example, a gating cycle is divided into three time slots, where time slot 1 is allocated to high-priority traffic (such as real-time control signals), time slot 2 is allocated to medium-priority traffic (such as status monitoring data), and time slot 3 is allocated to low-priority traffic (such as log information or debugging data). Each time slot forms a virtual communication channel in the corresponding specific time period, for example, time slot 1 is 0ms to 5ms, time slot 2 is 5ms to 10ms, and time slot 3 is 10ms to 15ms. In each time slot, only the traffic queue of the corresponding priority is allowed to pass, and traffic of other priorities is strictly prohibited to ensure efficient allocation of network resources and real-time requirements.

[0114] By dividing the time slots and allocating them based on priority, network resources can be used more efficiently, avoiding low-priority flows occupying too much bandwidth and causing delays in high-priority flows. And through clear gating cycles and time slot allocation mechanisms, the behavior of the network is more predictable, which facilitates network management and monitoring. This helps network administrators perform traffic analysis and troubleshooting. This method can adjust the allocation of time slots according to the dynamic changes in network traffic, ensuring that good service quality can be maintained under different network conditions.

[0115] In summary, by dividing the gating cycle and allocating the priority of time slots, the performance and reliability of time-sensitive networks can be significantly improved. This scheduling configuration method not only meets the needs of different flows, but also enhances the overall efficiency and stability of the network.

[0116] Optionally, there is a guard band within the GCL cycle. For example, a guard band (e.g., from 14.5ms to 15ms) is set at the end of time slot 3 (low priority traffic) to prevent low priority traffic from failing to complete transmission in time and affecting the resource allocation of subsequent high priority time slots (time slot 1). During the guard band, if the frame of low priority traffic has started to be transmitted, it is allowed to continue to transmit until it is completed; but if there are new low priority frames that have not yet started to be transmitted, they must stop and wait for time slot 3 of the next cycle. This mechanism effectively prevents low priority traffic from occupying the resources of high priority time slots, reduces the delay of high priority data transmission, and ensures the real-time performance of high priority tasks.

[0117] Optionally, before configuring according to the stream scheduling configuration data, the method further includes:

[0118] The synchronization message sending period of the master clock in the time-sensitive network is shortened.

[0119] Specifically, in order to minimize the interference introduced by configuration mismatch caused by time synchronization errors (that is, the premise for calculating the current flow scheduling configuration data is that t0~t7 are globally consistent on all devices in the network), the CNC module notifies the master clock in the network through the NETCONF protocol to reduce the synchronization message sending period before issuing the configuration, so that the clock of the entire network is at a higher accuracy during the configuration stage.

[0120] Optionally, the preset indicator includes a gating list, and the inspection result includes abnormal data in the gating list; and the inspection of each switching device in the second set to be checked based on the preset indicator to obtain the inspection result includes:

[0121] Acquire a gating list of a target switching device; the target switching device is any switching device in the second set to be checked;

[0122] The current gating list is compared with the gating list data in the flow scheduling configuration data to obtain corresponding gating list abnormal data.

[0123] Optionally, the preset indicator further includes synchronization data, and the inspection result further includes synchronization abnormality data; and the inspection of each switching device in the second set to be checked based on the preset indicator, and obtaining the inspection result further includes:

[0124] Acquire synchronization data of the target switching device;

[0125] The current synchronization data is compared with the synchronization data in the time-sensitive network to obtain corresponding synchronization exception data.

[0126] Optionally, the preset indicator further includes link data, and the inspection result further includes link abnormality data; and the inspection of each switching device in the second set to be checked based on the preset indicator, and obtaining the inspection result further includes:

[0127] Acquire link data of the target switching device;

[0128] The link data is compared with the link data in the current basic data to obtain corresponding link abnormality data.

[0129] Specifically, check the possible problems of switch P one by one. The general troubleshooting process includes:

[0130] 1. Check whether the GCL gate opening and closing time configuration is consistent with the one issued;

[0131] 2. Is the clock synchronization normal?

[0132] 3. Whether the adjacent link delay is consistent with that used in step 2 and other abnormal conditions.

[0133] If there is no problem, then remove switch P from set P, add it to the checked set Q, and continue to check set P. If a problem is found, correct it and return to step S100 to re-execute the process. If there is still no abnormality after checking set P, select the slowdown with the second largest flow from set W to continue checking.

[0134] After troubleshooting and correction, the synchronization message sending period of the master clock in the time-sensitive network is restored to normal.

[0135] Although the present invention is disclosed as above, the protection scope of the present invention is not limited thereto. Those skilled in the art may make various changes and modifications without departing from the spirit and scope of the present invention, and these changes and modifications will fall within the protection scope of the present invention.

Claims

1. A flow scheduling configuration method in a time-sensitive network of a robot operating system, characterized in that: A time-sensitive network applied to a robot operating system, wherein the application device of the time-sensitive network includes a robot control device, a switching device, and a network controller; and a flow scheduling configuration method in the time-sensitive network of the robot operating system includes: The current basic data of the time-sensitive network is obtained through the network controller, and the flow scheduling configuration process is entered: Obtaining flow scheduling configuration data according to the current basic data, and performing configuration according to the flow scheduling configuration data; When the terminal device sends a data stream, a mitigation ratio of each data stream is obtained, and based on each mitigation ratio, a judgment is made according to a preset threshold to obtain abnormal information, and a comparison is made based on the number of abnormal information within a preset time interval and the preset number of data streams to obtain a comparison result; Based on the comparison result, the flow scheduling configuration data is checked to obtain a check result, and the flow scheduling configuration data is modified according to the check result.

2. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 1, characterized in that: The obtaining of the mitigation ratio of each of the data flows, and judging based on each of the mitigation ratios according to a preset threshold to obtain abnormal information, includes: Obtaining a preset number, and obtaining temporary data based on the preset number and the corresponding mitigation ratio; When the temporary data exceeds the preset threshold, the abnormal information is obtained and sent to the network controller.

3. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 1, characterized in that: The step of checking the flow scheduling configuration data based on the comparison result to obtain a check result includes: When the number of the abnormal information exceeds the preset number of data streams, sorting the mitigation ratios of the data streams corresponding to the abnormal information to obtain a first set to be checked, and determining a target data stream corresponding to the maximum mitigation ratio in the first set to be checked; The switching devices corresponding to the target data flow are sorted according to the port queue length to obtain a second set to be checked, and the switching devices in the second set to be checked are checked based on a preset indicator to obtain the checking result.

4. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 3, characterized in that: The step of checking each of the switching devices in the second set to be checked based on the preset indicator and obtaining the result of the checking comprises: When any of the switching devices has an abnormality, the corresponding abnormal data is corrected, and the current basic data of the time-sensitive network after correction is obtained, and the flow scheduling configuration process is re-executed until all the switching devices in the second set to be checked are completed.

5. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 1, characterized in that: The stream scheduling configuration data includes super periods of all the data streams, start data of the data streams and gating list data.

6. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 5, characterized in that: The gating list data includes a gating period; the flow scheduling configuration method in a time-sensitive network of the robot operating system also includes: Dividing the gate control period to obtain a plurality of time slots; A preset priority is obtained, and each of the time slots is allocated based on the preset priority.

7. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 1, characterized in that: Before configuring according to the stream scheduling configuration data, the method further includes: The synchronization message sending period of the master clock in the time-sensitive network is shortened.

8. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 3, characterized in that: The preset indicators include a gating list, and the inspection result includes abnormal data of the gating list; The checking of each of the switching devices in the second set to be checked based on the preset indicator to obtain the result of the checking includes: Acquire a gating list of a target switching device; the target switching device is any switching device in the second set to be checked; The current gating list is compared with the gating list data in the flow scheduling configuration data to obtain corresponding gating list abnormal data.

9. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 8, characterized in that: The preset indicator further includes synchronization data, and the inspection result further includes synchronization abnormality data; the inspection of each switching device in the second set to be checked based on the preset indicator, and obtaining the inspection result further includes: Acquire synchronization data of the target switching device; The current synchronization data is compared with the synchronization data in the time-sensitive network to obtain corresponding synchronization exception data.

10. The method for configuring flow scheduling in a time-sensitive network of a robot operating system according to claim 9, characterized in that: The preset indicator also includes link data, and the inspection result also includes link abnormality data; the inspection of each switching device in the second set to be checked based on the preset indicator, and obtaining the inspection result also includes: Acquire link data of the target switching device; The link data is compared with the link data in the current basic data to obtain corresponding link abnormality data.

Citation Information

Patent Citations

  • Joint optimization method for path selection and gating scheduling in time-sensitive network

    CN114172843A

  • Configuration system and method based on time-sensitive network gating list

    CN117201424A

  • Flow scheduling system and method for in-vehicle software defined time sensitive network

    CN117880195A

  • Time-sensitive network abnormal traffic filtering method based on traffic identification

    CN117955700A

  • Distributed rescheduling of bounded flows in a time sensitive network

    US20160021017A1