A network self-sensing method in a delay-sensitive network

By utilizing the redundant data packet processing mechanism in the IEEE 802.1CB protocol, the self-awareness capability of latency-sensitive networks is realized, solving the problems of redundant data packet resource waste and lack of self-awareness, and improving network resource utilization efficiency and reliability.

CN116032408BActive Publication Date: 2026-03-03ZHENGZHOU UNIV +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211658136.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-22
Publication Date
2026-03-03
Estimated Expiration
2042-12-22

AI Technical Summary

Technical Problem

Existing methods for handling redundant data packets in latency-sensitive networks are simplistic, leading to resource waste and a lack of self-awareness. They cannot effectively utilize the network health status reflected by redundant data packets and require the use of third-party tools for network detection.

Method used

The redundant data packet processing mechanism in the IEEE 802.1CB protocol is adopted. By establishing a global clock synchronization and time slot mapping relationship between forwarding devices, and using the sequence generation, encoding, decoding and recovery function modules, the data packet sequence number is monitored to realize the network self-awareness capability, detect path anomalies and perform data packet recovery and elimination.

Benefits of technology

It enables latency-sensitive networks to have self-awareness capabilities, improves network resource utilization efficiency and reliability, makes monitoring more accurate and real-time, and enhances the cost-effectiveness of the network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116032408B_ABST
    Figure CN116032408B_ABST
Patent Text Reader

Abstract

The application provides a network self-perception method in a time-delay sensitive network, which comprises the following steps: connecting a network forwarding device to a centralized controller and constructing a bottom-layer global view; synchronizing the clock of the controller and the forwarding device, and dividing time into equal time slots; determining the time slot correspondence between adjacent forwarding devices, and sending the time slot correspondence to the centralized controller; determining two non-intersecting paths satisfying the time-delay requirement according to the forwarding information of the source forwarding device; selecting the data forwarding device node closest to the source device to copy the flow data packet, and forwarding in the two non-intersecting paths; monitoring the data packets transmitted to the device through different paths, and under normal circumstances, the data packet sequence numbers of the two paths are the same, and other conditions are abnormal phenomena; and analyzing the global bottom-layer topological information, the flow information, the forwarding path information and the real-time reported messages of the bottom-layer device to realize real-time perception of the abnormality in the time-delay sensitive network.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of network measurement technology, and particularly relates to a network self-sensing method in delay-sensitive networks. Background Technology

[0002] Time-Sensitive Networking (TSN) is a valuable technology in Industry 4.0. TSN is a key networking technology for vertical applications such as the Industrial Internet, vehicular networks, and mobile front-ends, providing deterministic low-latency and reliable data transmission services for critical flows. While traditional industrial Ethernet and fieldbus technologies can meet the real-time and high-reliability communication requirements of industrial automation systems, the compatibility of these technologies and standards across different industrial systems has become a pressing issue. The problems considered in traditional Ethernet design differ significantly from current network needs. Traditional Ethernet provides a best-effort service for data transmission, which can no longer meet the stringent Quality of Service (QoS) requirements of emerging services. TSN enhances Ethernet by combining time synchronization, flow scheduling, and seamless reliability to achieve deterministic low-latency and high-reliability streaming services. IEEE 802.1AS is an improved precise timing protocol (IEEE 1588PTP), enabling more accurate time synchronization. Circular queuing and forwarding (IEEE 802.1Qch CQF) utilizes odd and even cycles to ensure deterministic periodic data transmission.

[0003] Circular Queuing and Forwarding (CQF) uses two output buffer queues for deterministic traffic forwarding. Each queue has logic gates on both the inbound and outbound sides, with gates having two states: open and closed. When a gate is open, the queue is allowed to receive or output data frames; otherwise, it is blocked. The output time of the output port is divided into time slots at equal intervals. The two queues alternately perform inbound and outbound operations in time slots. That is, within any time slot, one queue always maintains a state where one queue is open for outbound and closed for inbound, while the other queue is closed for outbound and open for inbound. The time slot mapping relationship for data packets between adjacent nodes is fixed as x→x+1. Specified Periodic Queuing and Forwarding (CSQF) uses multiple output buffer queues for deterministic traffic forwarding. Three queues alternately perform inbound and outbound operations in time slots. That is, within any time interval, one queue always maintains a state where one queue is open for outbound and closed for inbound, while the other two queues are closed for outbound and open for inbound. The time slot mapping relationship for data packets between adjacent nodes is fixed as x→y+n.

[0004] Time-Sensitive Networking (TSN) defines a set of standards for adding deterministic low-latency services to Ethernet. High reliability is also a crucial fundamental characteristic of TSN. IEEE 802.1CB introduced the FRER (Frame Replication and Elimination for Reliability) mechanism for TSN. It transmits duplicate data packets through two disjoint paths, discarding a duplicate packet at the destination node to improve service reliability.

[0005] However, the existing methods for handling redundant data packets have the following main problems: (1) The existing technologies and protocols for handling duplicate data packets are too simplistic, simply discarding them. (2) Redundant data packets occupy network resources during transmission, but their utilization is inefficient, and the internal health status of the network reflected by the redundant data packets is not taken into account. (3) Currently, latency-sensitive networks lack self-awareness capabilities and require the assistance of third-party technologies for network detection. Summary of the Invention

[0006] Objective: To address the above problems, this invention proposes a method for network self-awareness in delay-sensitive networks (TSNs). This method utilizes redundant data packets in the Frame Replication and Elimination for Reliability (IEEE 802.1CB) protocol to achieve awareness of the underlying network state. Currently, in delay-sensitive networks (TSNs), to improve network reliability, source nodes select two disjoint paths for data transmission to destination nodes, such as... Figure 1 As shown in the diagram of the underlying network structure, data packets are copied at node v1 and transmitted through different paths, while data packets are restored at node v4 and duplicate data packets are discarded.

[0007] In delay-sensitive networks, forwarding devices have a globally synchronized clock. These devices divide time into equal-length time slots, and these time slots have a fixed mapping relationship. This ensures that within the same corresponding time slot, once a preceding forwarding device has sent a certain amount of data, a subsequent forwarding device receives that data and forwards it in the next time slot. The delay in the transmission of delay-sensitive data packets is fixed, thus guaranteeing that the data packet and its copy arrive at their destination simultaneously.

[0008] In latency-sensitive networks, the IEEE 802.1CB protocol utilizes the Sequence generation function to generate packet sequence numbers, the Sequence encoding function to encode these sequence numbers into the packets, and the Stream splitting function to copy and distribute the packets. Figure 1 The v1 node in the code uses the Sequence decode function to decode data packets and the Sequencerecovery function to recover and eliminate copies of data packets. Figure 1 The v4 node in the protocol uses the IEEE 802.1CB protocol to sequence delay-sensitive flow packets, and the replicas have the same sequence number. The packet recovery and elimination module monitors the packets to reflect network status information. The packet sequence number is combined with the time slot allocation of the forwarding device. When a network or device malfunctions, monitoring the packets and their replicas allows identification of the path where the anomaly occurred. This invention enables network self-awareness in delay-sensitive networks without relying on third-party network detection tools.

[0009] Technical Solution: To solve the above-mentioned technical problems and achieve the purpose of this invention, this invention proposes a network self-awareness method in delay-sensitive networks, which includes the following steps:

[0010] (1) Connect the network forwarding device to the centralized controller and build the underlying global view;

[0011] (2) Synchronize the controller and the forwarding device according to the IEEE 802.1AS protocol, and divide the time into equal-length time slots with a time slot length of T;

[0012] (3) Determine the time slot correspondence between adjacent forwarding devices and send the time slot correspondence to the centralized controller;

[0013] (4) When the source forwarding device sends information to the target forwarding device, it obtains the forwarding information of the source forwarding device. The centralized controller determines two non-intersecting paths that meet the time delay requirements based on the forwarding information of the source forwarding device.

[0014] (5) Select the data forwarding device node closest to the source device to copy the flow data packets and forward them in two non-intersecting paths;

[0015] (6) The forwarding device at the convergence point of non-intersecting paths performs packet elimination and recovery, monitors packets transmitted to the device through different paths, and if the sequence numbers of packets on the two paths are different, then the data transmission is abnormal and the controller is notified by message.

[0016] (7) The centralized controller analyzes the global underlying topology information, flow information, forwarding path information and messages reported by the underlying devices in real time to detect anomalies in the latency-sensitive network in real time and give prompt warning information.

[0017] Further, the method of step (1) is as follows: Start the centralized controller that configures network resources in the Internet, and configure the underlying TSN network forwarding device, so that the network forwarding device is connected to the controller. The controller obtains the underlying global view G = (V, E) through the LLDP protocol, where V = {v1, v2, ..., v...} n}, E={e1,e2,...e m}, G represents the underlying network global topology, V represents the set of underlying forwarding device nodes, v1 represents the first vertex, v n This represents the nth node, where n is the total number of data forwarding nodes, E represents the set of underlying network links, and e1 represents the first link. m This represents the m-th link, where m is the total number of links.

[0018] Further, the method of step (3) is as follows: The forwarding devices are time-slot aligned to determine the time-slot correspondence with their neighbors, and this is reported to the controller for unified management. The controller stores the time-slot correspondence, and the function F{v, slot} represents the slot-th time-slot of node v. The time-slot correspondence between the underlying device nodes is then expressed as: F{v n-1 ,xT}-->F{v n , (y+z)T}, represents node v n-1 The xth time slot T corresponds to node v n The data packet is forwarded from the node device port in the y-th time slot T, and then forwarded to the next underlying forwarding device of the link after the z-th time slot T.

[0019] Furthermore, the method for step (4) is as follows: obtain the forwarding information of the source forwarding device, the centralized controller combines the global view G = (V, E) and assigns two disjoint paths that meet the latency requirements, and implements path configuration for the underlying forwarding device. Let the i-th data flow be described as S. i =(src i ,des i period i ,vlan id i ,pcp i ,pnumi delay i ,start i end i ), src i Represents data stream S i The source node, des i Represents data stream S i The destination node, period i Represents data stream S i The sending period, pnum i Represents data stream S i Number of data packets, delay i Represents data stream S i Maximum end-to-end latency requirement, start i Represents data stream S i Start time of sending, end i Represents data stream S i The end time of transmission, VLAN ID i and PCP i Used to identify data stream S i Priority; the request information sent to the controller includes: src i ,des i period i VLAN ID i pcp i pnum i dalay i , start i end i information.

[0020] Furthermore, the method of step (5) is as follows: The controller configures the underlying data forwarding device node closest to the source forwarding device through the NETCONF protocol to copy and distribute the stream data packets. According to the IEEE 802.1CB protocol, different Stream handle field values ​​are assigned to data packets copied and distributed to different paths for differentiation. When the data packet is forwarded, the Stream handle is encoded into the data packet. The centralized controller stores the data and the data stream S i The relationship between them.

[0021] Furthermore, the association is described as follows: PATH(S i )={(path1,stream_handle1),(path2,stream_handle2)}, where PATH(S i ) is represented as flow S i The set of paths, path1 represents the stream Si The first path is assigned, and a Stream handle value of stream_handle1 is assigned to it. path2 represents the stream S. i The second path is assigned, and a Stream handle value of stream_handle2 is assigned to it.

[0022] Furthermore, the method for step (6) is as follows:

[0023] (1) Calculate the total path delay PATH(S) from the nearest streaming packet copying device to the disjoint path aggregation point device. i ) delay =∑T j T j For the data packet at the vth j The dwell time on each transfer device node, PATH(S) i ) delay Data Stream S i Information and PATH(S) i The information is transmitted to the forwarding device node where the non-intersecting path convergence point is located. This node eliminates and restores redundant data packets. Only one data packet from the duplicate data packets transmitted from different paths is used for data recovery and forwarded to the destination node.

[0024] (2) The forwarding device at the convergence point of disjoint paths extracts and buffers the Stream handle and Sequence Num values ​​from the IEEE 802.1CB protocol-defined fields of the data packets transmitted to that node; and for stream S i Three sequence value buffer spaces are allocated: stream_handle1 buffer space, which buffers the Sequence Num value of stream handle as stream_handle1; stream_handle2 buffer space, which buffers the Sequence Num value of stream handle as stream_handle2; and recovery buffer space, which buffers the Sequence Num value of the data packet forwarded to the destination node, where t=αT, α∈Z+, representing the time slot in which the data packet arrives at the node;

[0025] (3) Divide the buffer space for each sequence value into two parts. When the data packet reception time slot is odd, the Sequence Num value is stored in the first part of the buffer space. When the data packet reception time slot is even, the Sequence Num value is stored in the second part of the buffer space. When the data packet arrives in an odd time slot, count the data packet sequence number buffered in the even time slot. When the data packet arrives in an even time slot, count the data packet sequence number buffered in the odd time slot.

[0026] (a) For odd-numbered time slots, the number of Sequence Num entries in the second part of the buffer is counted as follows:

[0027] Count(S i ,stream_handle1)=COUNT(stream_handle1,0),

[0028] Count(S i ,stream_handle2)=COUNT(stream_handle2,0),

[0029] Count(S i ,recovery)=COUNT(recovery,0),

[0030] COUNT(stream_handle1,0) represents the number of sequence numbers stored in the second part of the buffer space corresponding to stream_handle1;

[0031] COUNT(stream_handle2,0) represents the number of sequence numbers stored in the second part of the buffer space corresponding to stream_handle2;

[0032] COUNT(recovery,0) represents the number of sequence numbers used in the previous even-numbered time slot to forward data packets to the destination node;

[0033] After the statistics are completed, the second part of the cache space is cleared;

[0034] (b) For even-numbered time slots, the number of Sequence Num in the first part of the buffer is counted as follows:

[0035] Count(S i ,stream_handle1)=COUNT(stream_handle1,1),

[0036] Count(S i ,stream_handle2)=COUNT(stream_handle2,1),

[0037] Count(S i ,recovery)=COUNT(recovery,1),

[0038] COUNT(stream_handle1,1) represents the number of sequence numbers stored in the first part of the buffer space corresponding to stream_handle1;

[0039] COUNT(stream_handle2,1) represents the number of sequence numbers stored in the first part of the buffer space corresponding to stream_handle2;

[0040] COUNT(recovery,1) represents the number of sequence numbers used in the previous odd-numbered timeslot to forward data packets to the destination node;

[0041] After the statistics are completed, the first part of the cache space is cleared;

[0042] (4) Calculate During(S) i ) = [start i +PATH(S i ) delay end i +PATH(S i ) delay Time interval, use Count(S) in each time slot i The values ​​of recovery and count(S) are respectively i ,stream_handle1),Count(S i The values ​​of `stream_handle2` are compared, and different messages are sent to the centralized controller based on the different transmission conditions of different paths.

[0043] When Count(S) i ,recovery)=Count(S i ,stream_handle1)=Count(S i If stream_handle2)>0, the underlying network does not need to report messages to the controller if there is no link break and no packet loss.

[0044] When Count(S) i ,recovery)=Count(S i ,stream_handle1)=Count(S i When `stream_handle2` = 0, it means that no data packets have arrived on either path, indicating that both paths are broken. In this case, a `Stream handle off(S...)` message is sent to the controller. i )information;

[0045] When Count(S)i ,recovery)=Count(S i ,stream_handle2)>Count(S i When `stream_handle1` is called, it indicates that packet loss has occurred on path 1. In this case, a `Sequence num lose(S)` message is sent to the controller. i ,stream_handle1) message;

[0046] When Count(S) i ,recovery)=Count(S i ,stream_handle1)>Count(S i When `stream_handle2` is called, it indicates that packet loss has occurred on path 2. In this case, a `Sequence num lose(S)` message is sent to the controller. i ,stream_handle2) message;

[0047] When Count(S) i ,recovery)>Count(S i ,stream_handle1)>0,Count(S i ,recovery)>Count(S i ,stream_handle2)>0, and Count(S i ,stream_handle1)≠Count(S i When `stream_handle2` is called, it indicates that packet loss has occurred on both paths `path1` and `path2`. In this case, a `Stream handlelose(S)` message is sent to the controller. i )information.

[0048] Furthermore, the method for step (7) is as follows:

[0049] When the centralized controller receives Stream handle off(S) i Message: This message indicates that a service error has occurred, and the data packet stream S... i All allocated transmission paths have experienced circuit breakage, and warning messages for path1 and path2 are displayed.

[0050] When the controller receives Sequence num lose(S i The `stream_handle1` message indicates that the service is normal, but the stream is not in operation. iThe allocated stream_handle1 transmission path path1 experienced a packet loss exception, and a packet loss warning message for path1 was displayed;

[0051] When the controller receives Sequence num lose(S i The `stream_handle2` message indicates that the service is normal, but the stream is not in operation. i The allocated stream_handle2 transmission path path2 experienced packet loss, and a packet loss warning message for path2 was displayed.

[0052] When the controller receives the Stream handle lose(S) i Message: This message is described as a stream S. i Packet loss anomalies occurred on both the assigned transmission paths path1 and path2, and warning messages about packet loss were displayed for paths path1 and path2.

[0053] Beneficial effects: Compared with the prior art, the present invention, by adopting the above technical solution, has the following beneficial technical effects:

[0054] (1) This invention addresses the time synchronization and data packet serialization characteristics of latency-sensitive networks by adding a monitoring function to the redundant data packet recovery and elimination module. By monitoring the information contained in the redundant data packets, it is possible to deduce which path has experienced an anomaly. This invention enables latency-sensitive networks to possess network self-awareness capabilities.

[0055] (2) This invention makes reasonable use of redundant data packets in delay-sensitive networks, rather than simply discarding them. The redundant data packets have already consumed the corresponding network resources, so their utilization value is improved, thereby improving the cost-effectiveness of the entire network and further enhancing the reliability of the network.

[0056] (3) The network self-awareness capability of the present invention is achieved by combining real-time application data packets, making the monitoring more accurate and real-time. The present invention has a wide range of applications and can be applied in latency-sensitive networks. Attached Figure Description

[0057] Figure 1 Diagram of the underlying network structure;

[0058] Figure 2 Schematic diagram of data packet sequence value cache space. Detailed Implementation

[0059] The technical solution of the present invention will be further described in detail below with reference to the accompanying drawings:

[0060] This invention proposes a network self-awareness method in delay-sensitive networks, which includes the following steps:

[0061] (1) Connect the network forwarding device to the centralized controller and build the underlying global view;

[0062] (2) Synchronize the controller and the forwarding device according to the IEEE 802.1AS protocol, and divide the time into equal-length time slots with a time slot length of T;

[0063] (3) Determine the time slot correspondence between adjacent forwarding devices and send the time slot correspondence to the centralized controller;

[0064] (4) When the source forwarding device sends information to the target forwarding device, it obtains the forwarding information of the source forwarding device. The centralized controller determines two non-intersecting paths that meet the time delay requirements based on the forwarding information of the source forwarding device.

[0065] (5) Select the data forwarding device node closest to the source device to copy the flow data packets and forward them in two non-intersecting paths;

[0066] (6) The forwarding device at the convergence point of non-intersecting paths performs packet elimination and recovery, monitors packets transmitted to the device through different paths, and if the sequence numbers of packets on the two paths are different, then the data transmission is abnormal and the controller is notified by message.

[0067] (7) The centralized controller analyzes the global underlying topology information, flow information, forwarding path information and messages reported by the underlying devices in real time to detect anomalies in the latency-sensitive network in real time and give prompt warning information.

[0068] Further, the method for step (1) is as follows: Start the centralized controller that configures network resources in the Internet, and configure the underlying TSN network forwarding device, connecting the network forwarding device to the controller, such as... Figure 1 As shown, the controller obtains the underlying global view G = (V, E) through the LLDP protocol, where V = {v1, v2, ..., v...} n}, E={e1,e2,...e m}, G represents the underlying network global topology, V represents the set of underlying forwarding device nodes, v1 represents the first vertex, v n This represents the nth node, where n is the total number of data forwarding nodes, E represents the set of underlying network links, and e1 represents the first link. m This represents the m-th link, where m is the total number of links.

[0069] Further, the method of step (3) is as follows: The forwarding devices are time-slot aligned to determine the time-slot correspondence with their neighbors, and this is reported to the controller for unified management. The controller stores the time-slot correspondence, and the function F{v, slot} represents the slot-th time-slot of node v. The time-slot correspondence between the underlying device nodes is then expressed as: F{v n-1 ,xT}-->F{v n , (y+z)T}, represents node v n-1 The xth time slot T corresponds to node v n The data packet is forwarded from the node device port in the y-th time slot T, and then forwarded to the next underlying forwarding device of the link after the z-th time slot T.

[0070] Furthermore, the method for step (4) is as follows: obtain the forwarding information of the source forwarding device, the centralized controller combines the global view G = (V, E) and assigns two disjoint paths that meet the latency requirements, and implements path configuration for the underlying forwarding device. Let the i-th data flow be described as S. i =(src i ,des i period i ,vlan id i ,pcp i ,pnum i delay i ,start i end i ), src i Represents data stream S i The source node, des i Represents data stream S i The destination node, period i Represents data stream S i The sending period, pnum i Represents data stream S i Number of data packets, delay i Represents data stream S i Maximum end-to-end latency requirement, start i Represents data stream S i Start time of sending, end i Represents data stream S i The end time of transmission, VLAN ID i and PCP i Used to identify data stream S i Priority; the request information sent to the controller includes: src i ,des i period iVLAN ID i pcp i pnum i dalay i , start i end i information.

[0071] Furthermore, the method of step (5) is as follows: The controller configures the underlying data forwarding device node closest to the source forwarding device through the NETCONF protocol to copy and distribute the stream data packets. According to the IEEE 802.1CB protocol, different Stream handle field values ​​are assigned to data packets copied and distributed to different paths for differentiation. When the data packet is forwarded, the Stream handle is encoded into the data packet. The centralized controller stores the data and the data stream S i The relationship between them.

[0072] Furthermore, the association is described as follows: PATH(S i )={(path1,stream_handle1),(path2,stream_handle2)}, where PATH(S i ) is represented as flow S i The set of paths, path1 represents the stream S i The first path assigned, such as Figure 1 In the stream S, path 1 is assigned a Stream handle value of stream_handle1, and path 2 is represented as stream S. i The second path assigned, such as Figure 1 Path 2 in the stream is assigned a Stream handle value of stream_handle2.

[0073] Furthermore, the method for step (6) is as follows:

[0074] (1) Calculate the total path delay PATH(S) from the nearest streaming packet copying device to the disjoint path aggregation point device. i ) delay =∑T j T j For the data packet at the vth j The dwell time on each transfer device node, PATH(S) i ) delay Data Stream S i Information and PATH(S) iThe information is transmitted to the forwarding device node where the non-intersecting path convergence point is located. This node eliminates and restores redundant data packets. Only one data packet from the duplicate data packets transmitted from different paths is used for data recovery and forwarded to the destination node.

[0075] (2) The forwarding device at the convergence point of disjoint paths extracts and buffers the Stream handle and Sequence Num values ​​from the IEEE 802.1CB protocol-defined fields of the data packets transmitted to that node; and for stream S i Allocate three sequence value buffer spaces, such as Figure 2 The diagram of the packet sequence value buffer space is shown, including: stream_handle1 buffer space, which buffers the Sequence Num value of stream handle as stream_handle1; stream_handle2 buffer space, which buffers the Sequence Num value of stream handle as stream_handle2; and recovery buffer space, which buffers the Sequence Num value in the packets forwarded to the destination node, where t=αT, α∈Z+, representing the time slot in which the packet arrives at the node;

[0076] (3) Divide the buffer space for each sequence value into two parts. When the data packet reception time slot is odd, the Sequence Num value is stored in the first part of the buffer space. When the data packet reception time slot is even, the Sequence Num value is stored in the second part of the buffer space. When the data packet arrives in an odd time slot, count the data packet sequence number buffered in the even time slot. When the data packet arrives in an even time slot, count the data packet sequence number buffered in the odd time slot.

[0077] (a) For odd-numbered time slots, the number of Sequence Num entries in the second part of the buffer is counted as follows:

[0078] Count(S i ,stream_handle1)=COUNT(stream_handle1,0),

[0079] Count(S i ,stream_handle2)=COUNT(stream_handle2,0),

[0080] Count(S i ,recovery)=COUNT(recovery,0),

[0081] COUNT(stream_handle1,0) represents the number of sequence numbers stored in the second part of the buffer space corresponding to stream_handle1;

[0082] COUNT(stream_handle2,0) represents the number of sequence numbers stored in the second part of the buffer space corresponding to stream_handle2;

[0083] COUNT(recovery,0) represents the number of sequence numbers used in the previous even-numbered time slot to forward data packets to the destination node;

[0084] After the statistics are completed, the second part of the cache space is cleared;

[0085] (b) For even-numbered time slots, the number of Sequence Num in the first part of the buffer is counted as follows:

[0086] Count(S i ,stream_handle1)=COUNT(stream_handle1,1),

[0087] Count(S i ,stream_handle2)=COUNT(stream_handle2,1),

[0088] Count(S i ,recovery)=COUNT(recovery,1),

[0089] COUNT(stream_handle1,1) represents the number of sequence numbers stored in the first part of the buffer space corresponding to stream_handle1;

[0090] COUNT(stream_handle2,1) represents the number of sequence numbers stored in the first part of the buffer space corresponding to stream_handle2;

[0091] COUNT(recovery,1) represents the number of sequence numbers used in the previous odd-numbered timeslot to forward data packets to the destination node;

[0092] After the statistics are completed, the first part of the cache space is cleared;

[0093] (4) Calculate During(S) i ) = [start i +PATH(S i ) delay end i+PATH(S i ) delay Time interval, use Count(S) in each time slot i The values ​​of recovery and count(S) are respectively i ,stream_handle1),Count(S i The values ​​of `stream_handle2` are compared, and different messages are sent to the centralized controller based on the different transmission conditions of different paths.

[0094] When Count(S) i ,recovery)=Count(S i ,stream_handle1)=Count(S i If stream_handle2)>0, the underlying network does not need to report messages to the controller if there is no link break and no packet loss.

[0095] When Count(S) i ,recovery)=Count(S i ,stream_handle1)=Count(S i When `stream_handle2` = 0, it means that no data packets have arrived on either path, indicating that both paths are broken. In this case, a `Stream handle off(S...)` message is sent to the controller. i )information;

[0096] When Count(S) i ,recovery)=Count(S i ,stream_handle2)>Count(S i When `stream_handle1` is called, it indicates that packet loss has occurred on path 1. In this case, a `Sequence num lose(S)` message is sent to the controller. i ,stream_handle1) message;

[0097] When Count(S) i ,recovery)=Count(S i ,stream_handle1)>Count(S i When `stream_handle2` is called, it indicates that packet loss has occurred on path 2. In this case, a `Sequence num lose(S)` message is sent to the controller. i ,stream_handle2) message;

[0098] When Count(S) i ,recovery)>Count(S i ,stream_handle1)>0,Count(S i ,recovery)>Count(S i ,stream_handle2)>0, and Count(S i ,stream_handle1)≠Count(S i When `stream_handle2` is called, it indicates that packet loss has occurred on both paths `path1` and `path2`. In this case, a `Stream handlelose(S)` message is sent to the controller. i )information.

[0099] Furthermore, the method for step (7) is as follows:

[0100] When the centralized controller receives Stream handle off(S) i Message: This message indicates that a service error has occurred, and the data packet stream S... i All allocated transmission paths have experienced circuit breakage, and warning messages for path1 and path2 are displayed.

[0101] When the controller receives Sequence num lose(S i The `stream_handle1` message indicates that the service is normal, but the stream is not in operation. i The allocated stream_handle1 transmission path path1 experienced a packet loss exception, and a packet loss warning message for path1 was displayed;

[0102] When the controller receives Sequence num lose(S i The `stream_handle2` message indicates that the service is normal, but the stream is not in operation. i The allocated stream_handle2 transmission path path2 experienced packet loss, and a packet loss warning message for path2 was displayed.

[0103] When the controller receives the Stream handle lose(S) i Message: This message is described as a stream S. i Packet loss anomalies occurred on both the assigned transmission paths path1 and path2, and warning messages about packet loss were displayed for paths path1 and path2.

[0104] The above is one embodiment of the present invention. Those skilled in the art can make various modifications and variations without departing from the technical concept of the present invention, and such modifications and variations all fall within the technical scope defined by the appended claims.

Claims

1. A method for network self-awareness in a latency sensitive network, characterized in that, The method comprises the following steps: (1) connecting a network forwarding device to a centralized controller and constructing a bottom global view; (2) synchronizing clocks of the controller and the forwarding device according to the IEEE 802.1AS protocol, dividing time into equal-length time slots, and the time slot length being T; (3) determining a time slot correspondence between adjacent forwarding devices and sending the time slot correspondence to the centralized controller; (4) when a source forwarding device sends information to a target forwarding device, obtaining forwarding information of the source forwarding device, and the centralized controller determining two non-intersecting paths meeting the delay requirement according to the forwarding information of the source forwarding device; (5) selecting a data forwarding device node closest to the source forwarding device to copy a flow data packet and forwarding the flow data packet in the two non-intersecting paths; (6) eliminating and recovering the data packet at a forwarding device where a non-intersecting path converges, monitoring data packets transmitted to the device through different paths, and if the sequence numbers of the data packets of the two paths are different, data transmission is abnormal, and the controller is notified through a message; (7) the centralized controller analyzes the global bottom topology information, data flow information, forwarding path information and real-time reported messages of the bottom device to realize real-time sensing of an abnormality in the delay-sensitive network and gives a prompt warning information.

2. The method of claim 1, wherein, The method of step (1) is as follows: start the centralized controller configured with network resources in the Internet, and configure the underlying TSN network forwarding device, so that the network forwarding device is connected to the controller, and the controller obtains the underlying global view G=(V, E) through the LLDP protocol, wherein V={v1, v2,..., v n}, E={e1, e2,...e m}, G represents the global topology of the underlying network, V represents the node set of the underlying forwarding device, v1 represents the first node, v n n represents the nth node, n is the total number of data forwarding nodes, E represents the link set of the underlying network, e1 represents the first link, e m m represents the mth link, and m is the total number of links.

3. The method of claim 1, wherein, The method of step (3) is as follows: the forwarding device is time-slot aligned, the time-slot correspondence with the neighbor is determined, and the controller is reported, the controller is uniformly managed, and the time-slot correspondence is stored, the function F{v, slot} is used to represent the slot of the node v, and the time-slot correspondence between the bottom-layer device nodes is represented as: F{v n-1 , xT}-->F{v n , (y+z)T}, which represents that the xth time slot T of the node v n-1 corresponds to the yth time slot T of the node v n , and the data packet is forwarded from the node device port after z time slots T, and is transmitted to the next bottom-layer forwarding device of the link.

4. The method of claim 1, wherein, The method of step (4) is as follows: obtaining the forwarding information of the source forwarding device, the centralized controller combines the global view G=(V, E), and assigns two disjoint paths satisfying the delay requirement to it, and configures the path of the bottom layer forwarding device, and records the i-th data flow description as S i =(src i ,des i ,period i ,vlan id i ,pcp i ,pnum i ,delay i ,start i ,end i ), src i represents the source node of the data flow S i , des i represents the destination node of the data flow S i , period i represents the sending period of the data flow S i , pnum i represents the data packet number of the data flow S i , delay i represents the maximum end-to-end delay requirement time of the data flow S i , start i represents the start sending time of the data flow S i , end i represents the end sending time of the data flow S i , vlan id i and pcp i are used to identify the priority of the data flow S i ; The request information sent to the controller includes: src i , des i , period i , vlan id i , pcp i , pnum i , dalay i , start i , and end i information.

5. The method of claim 3, wherein the network self-awareness in a latency sensitive network is characterized by, The method of step (5) is as follows: the controller configures the distance source forwarding device nearest to the underlying data forwarding device node through the NETCONF protocol, the forwarding device node replicates and distributes the flow data packet, and according to the IEEE 802.1CB protocol, the data packet distributed to different paths is distinguished by assigning different Stream handle field values, the Stream handle is encoded into the data packet when the data packet is transmitted, and the centralized controller stores the association relationship with the data stream S i .

6. The method of claim 5, wherein, The association relationship is described as follows: PATH(S i ) = {(path1, stream_handle1), (path2, stream_handle2)}, wherein PATH(S i ) represents a path set of the data stream S i , path1 represents a first path allocated to the data stream S i , and a Stream handle value allocated thereto is stream_handle1, and path2 represents a second path allocated to the data stream S i , and a Stream handle value allocated thereto is stream_handle2.

7. The method of claim 6, wherein, The method of step (6) is as follows: (1) calculating the total time delay of the path from the nearest stream data packet replication device to the disjoint path converging point device PATH(S i ) delay =∑T j , T j is the residence time of the data stream at the v j th forwarding device node, PATH(S i ) delay , the data stream S i information and the PATH(S i ) information are delivered to the forwarding device node where the disjoint path converging point is located, the node eliminates and recovers the redundant data packets, and only one data packet of the repeated data packets transmitted from different paths is used for data recovery and forwarded to the destination node; (2) the forwarding device where the non-intersecting path converges extracts the Stream handle value and the Sequence Num value of the IEEE 802.1CB protocol defined field from the data packet transmitted to the node and buffers them; And assign 3 sequence value cache space for data S i The 3 sequence value cache space includes: stream_handle1 cache space, which caches SequenceNum of Stream handle stream_handle1; stream_handle2 cache space, which caches SequenceNum of Stream handle stream_handle2; and recovery cache space, which caches SequenceNum in data packet forwarded to the destination node, wherein t=αT, α∈Z+, which indicates the time slot when the data stream arrives at the node. (3) each sequence value buffer space is divided into two parts, the Sequence Num value is stored in the first part of the buffer space when the data stream receiving time slot is odd, and the Sequence Num value is stored in the second part of the buffer space when the data stream receiving time slot is even; when the data packet arrives at the time slot which is odd, the sequence numbers of the data packets buffered in the even time slot are counted, and when the data packet arrives at the time slot which is even, the sequence numbers of the data packets buffered in the odd time slot are counted; (a) for the odd time slot, the number of Sequence Num in the second part of the buffer space is counted as follows: Count(S i ,stream_handle1) = COUNT(stream_handle1, 0), Count(S i ,stream_handle2) = COUNT(stream_handle2, 0), Count(S i ,recovery) = COUNT(recovery, 0), COUNT(stream_handle1,0) represents the number of sequence numbers stored in the second part of the buffer space corresponding to stream_handle1; COUNT(stream_handle2,0) represents the number of sequence numbers stored in the second part of the buffer space corresponding to stream_handle2; COUNT(recovery,0) represents the number of sequence numbers of the data stream used for forwarding to the destination node in the last even time slot; After the counting is completed, the second part of the buffer space is emptied; (b) for the even time slot, the number of Sequence Num in the first part of the buffer space is counted as follows: Count(S i ,stream_handle1) = COUNT(stream_handle1, 1), Count(S i ,stream_handle2) = COUNT(stream_handle2, 1), Count(S i recovery) = COUNT(recovery, 1), COUNT(stream_handle1,1) represents the number of sequence numbers stored in the first part of the buffer space corresponding to stream_handle1; COUNT(stream_handle2, 1) represents the number of sequence numbers stored in the first part of the buffer space corresponding to stream_handle2; COUNT(recovery, 1) represents the number of sequence numbers of the data stream forwarded to the destination node in the last odd time slot; After the statistics is completed, the first part of the buffer space is emptied; (4) Calculate During(S i ) i + PATH(S i ) delay , end i + PATH(S i ) delay ] time interval, compare the value of Count(S i , recovery) with Count(S i , stream_handle1) and Count(S i , stream_handle2) respectively in each time slot, and send different messages to the centralized controller according to the different transmission conditions of different paths: When Count(S i , recovery) = Count(S i , stream_handle1) = Count(S i , stream_handle2) > 0, the underlying network is in a situation without link outage and packet loss, in which case there is no need to report messages to the controller. When Count(S i , recovery) = Count(S i , stream_handle1) = Count(S i , stream_handle2) = 0, it means that no data packet arrives in both paths, which means that both paths have a circuit break. In this case, a Stream handle off(S i ) message is sent to the controller. When Count(S i , recovery) = Count(S i , stream_handle2) > Count(S i , stream_handle1), it means that packet loss occurs in path 1, in which case a Sequence num lose(S i , stream_handle1) message is sent to the controller. When Count(S i ,recovery) = Count(S i ,stream_handle1) > Count(S i ,stream_handle2), it means that packet loss occurs in path2, in which case a Sequence num lose(S i ,stream_handle2) message is sent to the controller. When Count(S i , recovery) > Count(S i , stream_handle1) > 0, Count(S i , recovery) > Count(S i , stream_handle2) > 0, and Count(S i , stream_handle1) ≠ Count(S i , stream_handle2), it means that both path1 and path2 have packet loss, in which case a Stream handle lose(S i ) message is sent to the controller.

8. The method of claim 7, wherein, The method of step (7) is as follows: When the centralized controller receives the Stream handle off (S i ) message: the message indicates that the service is abnormal, the data packet stream S i assigned transmission path has a circuit breaking abnormality, and the path path1 and path2 path circuit breaking abnormality warning information is prompted. When the controller receives the Sequence num lose (S i , stream_handle1) message: This message indicates that the service is normal, but there is a packet loss exception in the stream_handle1 transmission path path1 assigned for the stream S i , prompting a packet loss warning information for path1. When the controller receives the Sequence num lose (S i , stream_handle2) message: This message indicates that the service is normal, but there is a packet loss exception in the transmission path path2 of the stream_handle2 allocated for the stream S i , prompting a packet loss warning information for path2. When the controller receives a Stream handle lose (S i ) message: This message indicates that packet loss exceptions have occurred in both the transmission paths path1 and path2 allocated for the stream S i , prompting path1 and path2 packet loss warning information.

Citation Information

Patent Citations

  • System and method for establishing reliable time-sensitive networks

    US20200136894A1

  • Active network tap supporting time sensitive network (TSN) standards

    US20200244382A1