Method for asymmetric delay compensation
By establishing virtual paths in the communication network, monitoring data flow characteristics and link properties, and using delay correction factors to compensate for time errors, the dynamic asymmetric delay problem is solved, achieving high-precision time synchronization independent of GNSS.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NET INSIGHT
- Filing Date
- 2021-06-18
- Publication Date
- 2026-05-19
AI Technical Summary
In existing communication networks, two-way time transfer protocols struggle to handle dynamic and asymmetric link delays, especially in the absence of GPS/GNSS, leading to a decrease in time synchronization accuracy.
By establishing virtual paths, monitoring data flow characteristics and link path properties, using delay correction factors for time error compensation, and independently of GNSS, calibration and synchronization are performed using trusted sources such as calibrated virtual paths or local clocks.
It effectively compensates for asymmetric delay, improves the time synchronization accuracy between nodes in the communication network, and ensures the reliability of time synchronization in the absence of GNSS.
Smart Images

Figure CN115769519B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication network systems for node-to-node data transmission using bidirectional time transfer time synchronization, and more specifically to a GNSS-independent method for compensating for asymmetric delay errors to minimize time difference deviations when bidirectional time transfer is used in a communication network. Background Technology
[0002] In many industries, including media, finance, automation, power grids, and mobile networks, as well as many other sectors, there is a growing need for accurate time and frequency synchronization in communication networks. A common way to provide this accurate time and frequency synchronization is by obtaining an accurate clock directly input into nodes within the communication network from Global Positioning System (GPS) and other Global Navigation Satellite System (GNSS) systems. However, many other protocols exist for providing time synchronization over terrestrial optical, microwave links, Ethernet, MPLS, and IP networks using protocols such as Network Time Protocol (NTP), IEEE 1588 (PTP), and other proprietary time transfer solutions.
[0003] These ground protocols are based on so-called two-way time transfer methods, which measure the individual link delays using local clocks and round-trip time (RTT) to calibrate the local clocks link-by-link. However, most of these protocols assume that the link delay equals RTT / 2 and struggle to handle asymmetric delays—that is, delays from node A to node B that differ from delays from node B to node A. If this delay is static, it can be calibrated and addressed thereafter. However, asymmetry can also arise dynamically during operation and, to some extent, break many two-way time transfer protocols, thus requiring at least improved capabilities to handle such delay asymmetry without the use of GPS / GNSS. With increasing interference and spoofing of GPS / GNSS systems, this will fulfill the long-standing need for GNSS-independent solutions. Summary of the Invention
[0004] Advantageously, a method, at least improved and reliable, for handling dynamic changes and asymmetric link delays in bidirectional time-transfer-based communication systems, which is independent of GNSS during normal operation, is provided. This objective is achieved by the method according to the invention as defined in independent claim 1.
[0005] Therefore, in a first aspect of the present invention, a GNSS-independent method is provided for asymmetric delay error compensation to minimize time difference deviation when bidirectional time transfer is used in a communication network, the GNSS-independent method comprising establishing at least one bidirectional virtual path including at least one link path on the network for communication between a first node and a second node.
[0006] The method includes: transmitting a bidirectional data stream through the at least one virtual path and at least one of the first node and the second node; monitoring at least one data stream characteristic and / or using at least one link path property of the received data stream. If it is determined that at least one of these monitored data stream characteristics or link path properties matches a predetermined link profile, a delay correction factor for the predetermined link profile is obtained; otherwise, a new delay correction factor for the VP is calculated using an estimated time error on the VP using bidirectional time transfer and a calibration time difference of a trusted source. The delay correction factor is then used to compensate for the estimated time error between the first node and the second node on the virtual path.
[0007] According to an embodiment, the trusted source is one of the following: a calibrated virtual path from a node in a calibration state, a local clock in hold mode (e.g., a stable local clock in hold mode directly entered from the calibration state), and a directly connected calibrated clock source.
[0008] Estimated time errors can be compensated advantageously independently of GNSS by using a delay correction factor retrieved from a matching link profile or by using a new delay correction factor calculated from a calibrated trusted source (such as another trusted calibrated virtual path with a known link profile connected to the node or a stable local clock in hold mode).
[0009] According to an embodiment, the trusted source is one of the following: a calibrated virtual path from a node in calibration state, a local clock in hold mode, or a directly connected clock source. The hold mode can refer to the local clock being in phase-only hold or phase and frequency hold mode.
[0010] According to an embodiment, the method further includes transmitting the calibration status of the first node and the second node to adjacent nodes, which is advantageous when using this information.
[0011] According to an embodiment, the method further includes storing a new link profile based on at least one data stream characteristic and / or at least one link path property of the received data stream and the new delay correction factor.
[0012] According to an embodiment, the method further includes setting the calibration status of the at least one virtual path and / or the link profile of the at least one virtual path to calibrated if it is determined that the first node and the second node are in a calibrated state.
[0013] According to an embodiment, the at least one virtual path is calibrated by self-assignment.
[0014] According to an embodiment, the method further includes adjusting a stored predetermined link profile or creating a copy of the stored link profile based on at least one monitored data flow characteristic and / or at least one link path property.
[0015] According to an embodiment, the method further includes, upon detecting a change in at least one selected monitored data stream characteristic, or upon detecting a change in time data during the monitoring of at least one data stream characteristic: comparing the current value of the selected monitored data stream characteristic with the corresponding data in the stored link profile, and if a match is found, using the delay correction factor of the best-fit link profile; otherwise, maintaining the current value.
[0016] According to an embodiment, the time data change is detected relative to a local clock, an external clock, or time data relative to other virtual paths.
[0017] According to an embodiment, the detected change is a change in the properties of the link path, such as at least one of the following: link type, link hop count, RTT, PDV, packet loss rate, estimated one-way delay, and estimated time error.
[0018] According to an embodiment, the method further includes comparing time with respect to the first node and the second node, wherein the time comparison is used to guide the second node, which acts as a slave node, to the first node, which acts as a master node.
[0019] According to an embodiment of the method, if it is determined that the monitored data flow characteristics or link path properties do not match a predetermined link profile, then: the method further includes determining an additional new link profile based on the at least one data flow characteristic and / or link path property. With both the first node and the second node having calibration times, the new link profile can now be used to calibrate the virtual link path, and the new link profile can be used to compensate for time errors in the virtual path. The created link profile may be associated with at least one virtual path or at least one of at least one link path of a virtual path.
[0020] According to an embodiment of the method, the local time in the second node is calibrated based on the time difference associated with a trusted source in order to synchronize the second node with the first node.
[0021] As used herein, the term "trusted source" can refer to one of the following: a local clock or a node reachable in the network via a link path with or without known link delay asymmetry, a clock time received in a data stream via at least one virtual path, or some other trusted time source, such as a well-known and established time source, such as the time scale of any National Metrology Institute (NMI). A trusted source can be further defined as a time source such as a global time standard (e.g., Coordinated Universal Time (UTC)) for which the network is designed to allocate time. Therefore, actions are performed to calibrate the local time in a node or the virtual path in the network to provide consistency with, for example, UTC.
[0022] It would also be possible to use GPS / GNSS at nodes to calibrate the time offset of the new path, but this is a well-known technique and would allow systems that rely on GPS / GNSS to function properly, which is contrary to the concept of this invention.
[0023] Preferably, local time calibration is performed before applying a stored or newly identified calibration profile (which may also be referred to as a link profile) to calibrate the virtual path. However, advantageously, the local time of the second node is calibrated / adjusted continuously, periodically, or based on predetermined conditions, such as when connected to a good, trusted source. That is, the second node is synchronized to the source clock when available, thereby providing calibration or restoring the calibration state of the second node.
[0024] According to an embodiment of the method, it further includes: calibrating the at least one virtual path after calibrating the first node and the second node (or determining that the first node and the second node are calibrated).
[0025] According to an embodiment of the method, it further includes: adjusting a stored link profile or creating a copy of a stored link profile based on at least one detected data flow characteristic and / or the at least one link path property under predetermined conditions. The link profile of the virtual path may include profile data including at least one of the following: expected round-trip time (RTT), packet loss, packet delay variation (PDV), drift, quality indicator (for determining the degree of trustworthiness of the link), link path delay in one or both directions between the first node and the second node, and link path delay difference in multiple directions between the first node and the second node B, average delay between the first node and the second node, a calibration factor indicating the amount of asymmetry in the link path delay in the corresponding opposite direction of the virtual path, and a time correction factor representing the correction factor required to compensate for delays on the link path and thus more accurately referred to as a delay correction factor. To obtain optimal accuracy in asymmetry change detection, using multiple data flow characteristics is preferred. For example, using only RTT would be insufficient, as different LPs can have the same RTT value but very different asymmetries.
[0026] The at least one data flow characteristic or link property may include at least one of the following: (visible) nodes in the link path, round-trip time (RTT), packet loss, packet delay variation (PDV), drift, minimum link path delay in one or both directions between the first node and the second node, maximum link path delay in one or both directions between the first node and the second node, average link path delay between the first node and the second node, a calibration factor indicating the asymmetry in the link path delay in the corresponding opposite direction of the virtual path, and link path delay difference in multiple directions between the first node and the second node.
[0027] According to an embodiment of the method, at least one or optionally multiple received data streams are monitored with respect to at least one data stream characteristic, and upon detecting a change in at least one selected monitored data stream characteristic, or upon detecting a change in time data during the monitoring of at least one data stream characteristic, the current value of the selected monitored data stream characteristic is compared with the corresponding data in the stored link profile.
[0028] If a match is found, this is used to switch to the stored known or best-fit link profile, or to the delay correction factor of the best-fit link profile; or if no match is found, an error is signaled and the process is paused.
[0029] Changes in data stream characteristics or time data can be monitored within a predetermined ratio. Time data can refer to, for example, the detection of a new RTT, a new value on PDV, or a change in packet loss rate.
[0030] Changes in time data (optionally abrupt) can be detected relative to a stable local clock, an external clock, or other time data relative to other virtual paths. Detected changes can also be deviations in time of one of the following: RTT, PDV, and packet loss rate.
[0031] According to an embodiment of the method, it further includes comparing the time associated with the first node and the second node. This time comparison can be used to guide the second node, acting as a slave node, to the first node, acting as a master node, over a period of time.
[0032] According to an embodiment of the method, the step of establishing the at least one virtual path between the first node and the second node includes providing a configuration using initial (or first) configuration data between the first node and the second node. The method further includes: for a selected virtual path among the at least one virtual path: probing the selected virtual path using a probing function that applies a plurality of predetermined probing configuration data (which may be a probing configuration dataset) to the selected virtual path; monitoring (which may include storing and / or analyzing) the performance on the selected virtual path for each of the plurality of probing configuration data; and determining optimized configuration data for the configuration between the first node and the second node based on the monitored performance.
[0033] According to an embodiment of the method, the selected virtual path is parallel to the virtual path that sends the bidirectional data stream.
[0034] The probe capability may further include performing tracing routes for each probe configuration data. This probe configuration data includes at least one of the following settings: Differential Service Code Point (DSCP) / Ethernet priority, bit rate, and Maximum Transmission Unit (MTU), and can be applied incrementally.
[0035] According to an embodiment of the method, the optimized configuration data is determined in order to achieve the lowest jitter performance.
[0036] According to a second aspect of the invention, a node is provided in a communication system arranged for node-to-node communication, the node including means for performing a method according to the invention. The node may further include means for transmitting outgoing data streams, such as a transmitter. The node may include a memory storing computer-readable instructions; and a processor configured to execute those computer-readable instructions for the method according to any of the preceding claims.
[0037] In a communication system deployed for node-to-node communication, the node includes a memory storing computer-readable instructions, and
[0038] A processor configured to execute computer-readable instructions according to the method of the present invention. Further, according to a third aspect of the present invention, a non-transitory computer-readable storage medium is provided for storing computer-readable instructions executable by a processor to cause the processor to perform the method proposed herein.
[0039] Embodiments of the method of the present invention are preferably implemented in a distribution, media content provider, or communication system by means of software modules for signaling and providing data transmission in software form, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), or other suitable devices or programmable units (not shown in the figures) suitable for performing the method of the present invention, in cloud services, or in virtual machines. The software modules and / or data transmission modules can be integrated into a node including suitable processing and memory devices, or implemented in an external device including suitable processing and memory devices and arranged for interconnection with existing nodes. The node can be located at an edge node, for example, communicating with a streaming edge server, or integrated into or constituting a streaming edge server.
[0040] Further objectives, features, and advantages of the invention will become clear upon studying the following detailed disclosure, drawings, and appended claims. Those skilled in the art will recognize that different features of the invention can be combined to produce embodiments other than those described below. Attached Figure Description
[0041] The foregoing description will be better understood through the following illustrative and non-limiting detailed description of preferred embodiments of the invention with reference to the accompanying drawings, in which the same reference numerals will be used for similar elements, and in the drawings:
[0042] Figure 1 This is a schematic block diagram illustrating a node-to-node communication network, which is used to explain various aspects and embodiments of the invention; and
[0043] Figures 2 to 4 This is a schematic flowchart illustrating an embodiment of a method based on the concept of the present invention.
[0044] All accompanying drawings are schematic and not necessarily drawn to scale, and generally only show components necessary to illustrate the invention, wherein other components may be omitted or merely suggested. Detailed Implementation
[0045] Now for reference Figure 1This figure is a block diagram schematically illustrating an IP-type communication network system 100, for example, used for the live distribution of media content, and various aspects of the inventive concept will be described accordingly. However, it should be noted that other types of networks using protocols such as Network Time Protocol (NTP), IEEE 1588 (PTP), and other proprietary time transfer solutions (e.g., terrestrial optical, microwave links, Ethernet, MPLS, and IP networks) are also applicable within the scope of this inventive concept.
[0046] This invention is particularly useful when time is transmitted between two (synchronous) nodes via paths traversing numerous underlying network nodes (e.g., routers, switches, radio link systems, or optical transmission nodes) that lack time synchronization awareness. These intermediate, unsynchronized nodes add static and dynamic delays, often causing asymmetric delays as described above. In this invention, we refer to the end-to-end path between synchronized nodes as a Virtual Path (VP), and the different paths through intermediate nodes as Link Paths (LPs). Different LPs will typically generate different asymmetries, which will create a time offset from the correct time in a normal bidirectional time transmission solution.
[0047] Define virtual path
[0048] Continue to refer to Figure 1 In network 100, the first node (node A (N1)) and the second node (node B (N6)) have established a bidirectional virtual path VP. AB Virtual paths are used for communication between node A and node B in a subnetwork formed by nodes N1 to N6. A virtual path is typically a collection of virtual channel connections formed through a communication network; these virtual channel connections are also referred to below as link paths (LPs). Figure 1 The virtual path VP between the first node A and the second node B in the [database / database] AB And its various link paths LP1, LP2, LP3, and LP4 can be permanently established or dynamically established within a specific timeframe required for information transmission over the network. For example, it can be obtained from... Figure 1 It is deduced, at least theoretically, that the virtual path VP AB This can include many different physical paths as shown in Table 1. In the example embodiments described herein, we refer to the corresponding link paths as follows: LP1, LP2, LP3, and LP4. Figure 1 LP4 in the PTP path refers to a PTP path that can be used as a trusted source / calibrated virtual path with a known link profile.
[0049] Table 1
[0050]
[0051]
[0052] Calibration Node B and Virtual Path
[0053] According to an embodiment of the present invention, initially, when establishing a virtual path VP... AB Next, node B is calibrated using a trusted source that provides reliable time information. The trusted source can be a local clock or time received from node A when time information is transmitted via network 100 in a known asymmetric or preferably non-asymmetric manner (wherein the delays in both directions of the link path are exactly RTT / 2 each). This calibration of node B results in node B's time having a nominal zero offset or a known offset relative to the trusted source, which can be used to compensate for offsets in the received time information in the data stream. With node B calibrated, and assuming node A is calibrated, the link path between node B and node A can be calibrated. When node A is calibrated and the virtual path is calibrated, node B can then restore its calibration state at the required time.
[0054] For cases where multiple link paths can exist between node A and node B (such as in the reference...) Figure 1 In the example embodiments described, each of these link paths will require calibration, and therefore requires calibration for the same virtual path V. AB Multiple calibrations are supported, with one calibration performed for each LP. This invention illustrates how a node automatically performs this calibration for each new LP and stores the calibrated time offset along with a corresponding link profile consisting of one or more data flow characteristics of that LP. When the system detects a change in data flow characteristics, the node enters hold mode for its local clock and searches the stored link profiles. If the node finds a match with an existing profile having the same data flow characteristics, it applies the stored link time offset and begins using the new LP / VP link to provide local time (phase and frequency) for the node clock. If the node does not find a match, it checks if there are any other incoming LP / VPs that are in a calibrated state. If so, the node begins using the link time offset of that LP / VP and begins using that link to provide local time (node clock). In the case where the node cannot find any matching profile for any incoming LP / VP, it uses its local clock in hold mode as a trusted source and creates and stores a new link profile with data flow characteristics and a corresponding link time offset, applies this new link profile to the new LP / VP, and uses the now calibrated link to provide the node clock.
[0055] According to an embodiment, the method includes: determining whether a node is in a calibrated state; and transmitting its calibration state to neighboring nodes. A node is in a calibrated state when it is connected to a calibrated virtual path from a calibrated synchronization node or connected to a local trusted source. All virtual paths between two nodes in a calibrated state can be calibrated in this state by calculating the time offset of each virtual path based on the corresponding calibration time offset of the node and information from each corresponding path.
[0056] Calibration factor
[0057] In the bidirectional time-transfer method, the local clock is calibrated link-by-link using the individual link delays measured based on the local clock and round-trip time (RTT). As previously mentioned, the bidirectional transfer protocol is known to assume that the link delay equals RTT / 2. Further, if we define the round-trip time in the link path as the sum of the receiver-to-sender node delay (also referred to herein as Local-to-Remote Delay LRD) multiplied by a first calibration factor and the sender-to-receive node delay (Remote-to-Local Delay RDL) multiplied by a second calibration factor, and if it is determined that there is no asymmetry in the link path, then LRD equals RLD, and the calibration factor in each direction is determined to be 0.5, such that LRD = RLD = RTT / 2. Conversely, if it is determined that there is asymmetry in the link path, then the corresponding calibration factors c for LRD and RLD in the corresponding direction are... LRD and c RLD The fraction that can be described as RTT makes LRD*c LRD +RLD*c RLD =RTT. As is known to those skilled in the art, other forms of calibration factors can be implemented to achieve the same or similar effect.
[0058] Analyzing the link path
[0059] Continue to refer to it now Figure 2 As mentioned above, the first step is to establish a virtual path (VP). AB (S100) and then via virtual path VP AB A bidirectional data stream DS is sent from A to B. Due to different physical paths and other conditions of the link paths, such as service conditions, different buffering schemes in the network, or multiple changes in the link paths due to rerouting in the network, each link path will experience different static or dynamic link delays in the data stream. Furthermore, these link delays are often asymmetrical in different transmission directions.
[0060] According to the present invention, node B (and / or node A) is arranged to monitor the corresponding received data stream DSR (S101) with respect to predetermined data stream characteristics and analyze the monitored data stream characteristics to profile the characteristics of the link path of the received data stream DSR, i.e., to determine the link path nature. The monitored data stream characteristics and / or link path nature of the monitored link path are analyzed to determine whether the monitored data matches a predetermined (i.e., previously determined and stored) link path profile (LP profile). <match>(S102). This is performed to provide information about which link profiles should be used for a specific link path of the received data stream. Therefore, the characteristics of a specific link path are observed on the link path and preferably stored as part of the calibration, so that when the link path reappears, the correct calibration factor can be selected and used. These link path characteristics may include RTT, time error, tracing the route path, etc. In the final step (S103), the LP profile can be used to perform time compensation for node A and / or node B based on the (matching / selected) LP profile.
[0061] According to an embodiment, when there is no match for a previously stored LP profile (S104), an additional / new link profile is created based on the determined link path properties provided by analyzing the monitored data flow characteristics of the received data flow, and then the new link profile is added to the set of available LP profiles (S105).
[0062] The LP profile may include at least one of the following: measured round-trip time (RTT), packet delay variation (PDV), link path performance, packet loss, drift, quality indicator (for determining the degree of trustworthiness of the link), link delay in one or both directions between the sender and receiver nodes, average delay between the sender and receiver nodes, a calibration factor indicating the asymmetry in link path delay in the corresponding opposite direction of the virtual path, a path indicator, a tracing route or other path indicator, and a delay correction factor. Preferably, metrics based on multiple link flow characteristics among the above-mentioned link flow characteristics are used.
[0063] According to the present invention, if it is determined that at least one monitored data stream characteristic and / or at least one link path property of the received data stream matches an existing link profile, a delay correction factor for obtaining a predetermined link profile is performed, as in step S103. However, when no such match can be found, a new delay correction factor for the VP is calculated using the estimated time error ΔTE calculated on the VP using bidirectional time transfer and the calibration time difference of a trusted source (i.e., the time difference between the local time in the node and the time received from a calibrated virtual path from a node in calibration state, a local clock in hold mode, or a directly connected clock source). The estimated time error ΔTE between the first node A and the second node B on the virtual path can then be compensated using the new delay correction factor.
[0064] Match the stored link configuration file
[0065] Node B can continuously monitor and analyze at least one predetermined data stream characteristic of the received data stream DSR, and when it is determined that the data stream characteristics and / or link path properties of the incoming link match the previously stored LP profile, Node B switches to or continues to use at least selected data (e.g., calibration factors, such as stored delay correction factors) of the stored LP profile to calibrate or time-compensate the virtual path or Node B's local clock (S103).
[0066] Static calibration, (multiple) symmetric links
[0067] Now, suppose we consider node B to be the local node and node A to be the remote node. In the first scenario, the round-trip time (RTT) on one of the link paths (e.g., LP1) or multiple link paths and devices (e.g., LP1, LP2, and LP3) forming network 100 is the sum of the link delays in both directions (Local Remote Delay (LRD) and Remote Local Delay (RLD)), i.e., RTT = LRD + RLD. Further, assuming a symmetrical distribution, between the two nodes (node A and node B), LRD = RTT / 2 and then RLD = RTT / 2. Therefore, nodes A and B may not be aware of the underlying infrastructure at all, and from the perspective of nodes A and B, the link may consist of multiple different underlying link and node hops. Therefore, VP can be performed based on monitoring data flow characteristics / using link path properties, measuring the RTT on the virtual path (i.e., the active link path LP1 in this case), and optionally matching the measured RTT to a previously stored LP profile. AB Static calibration (S102).
[0068] Static calibration, known (multiple) asymmetric links
[0069] Now suppose we consider node B to be the local node and node A to be the remote node. In this second scenario, the round-trip time (RTT) on the link path (e.g., LP1) or multiple link paths and devices (e.g., LP1, LP2, and LP3) forming network 100 is assumed to be the sum of the local remote delay (LRD) and the remote local delay (RLD), i.e., RTT = LRD + RLD. However, the distribution is now asymmetric. Applying corresponding weighted calibration factors a and b to the delay values, such that between the two nodes, LRD = RTT * b and then RLD = RTT * a. Nodes A and B may not be aware of the underlying infrastructure at all, and from the perspective of nodes A and B, the link may consist of multiple different underlying links and node hops. Therefore, VP can be performed based on the measured round-trip time (RTT) and / or RLD, as well as LRD. AB Static calibration can be performed on the link path by assuming that LRD and RLD are multiplied by calibration factors but the calibration factors for each LP are opposite to each other (e.g., LRD*1 / 4 + RLD*3 / 4 = RTT). Therefore, VP can be performed based on monitored data flow characteristics / using link path properties, measured RTT and delay on the virtual path (i.e., the active link path LP1 in this case), and optionally matching the measured RTT to a previously stored LP profile. AB Static calibration (S102).
[0070] Multiple link configuration files for the link path
[0071] This invention utilizes the concept that different causes of varying delays along a link path can result in different delay characteristics and link properties. Therefore, multiple different link profiles can be determined for the same link path depending on the conditions along the link path, and these link profiles can be used to handle and adapt to changes in the underlying infrastructure to maintain accurate clocking, as illustrated in this invention.
[0072] Storage Link Configuration File
[0073] Because link path delays can vary due to external factors and asymmetry can also change, the different link profiles created are stored in the storage area. The combination of asymmetric / symmetric calibration factors for RLD and LRD, along with RTT, is stored in each LP profile. Furthermore, for each LP profile, other knowledge and statistics can be stored; for example, the PDV value and performance data of this profile can indicate the reliability and trustworthiness of the data within that LP profile, providing a metric for whether this LP profile should be selected at a certain point.
[0074] Synchronization strategy
[0075] The synchronization strategy conceived according to the present invention relates to the use of synchronization strategies for first and second nodes (e.g., ... Figure 1 Different strategies for calibrating nodes A and B (and virtual paths) and the virtual path include symmetric static calibration and asymmetric static calibration. Therefore, the inventive concept allows for consideration of how synchronization routing can be performed after calibration, regardless of the degree of freedom in the synchronization path. Redundancy in routing can advantageously aid in network calibration and troubleshooting startup problems.
[0076] Monitor data stream characteristics and link path properties
[0077] According to an embodiment of the invention, when device node B is calibrated, node B's local clock can be considered sufficient for at least some hold-up time. That is, in the event that the link path properties of the currently monitored link path change and therefore the local remote or remote local link delays (LRD and DRL) change asymmetrically, after a certain period of time, node B can determine the clock offset received from the link path and compensate for the received clock offset relative to the local clock previously locked to a trusted link path source.
[0078] If the properties of the monitored link path change, for example if the virtual path VP changes... AB When switching from LP1 to LP2 or to a new link path, if the monitored link path characteristics / data flow features of the new link path match the stored profile, Node B may choose to use the already stored link profile. Alternatively, the device may store a new profile for immediate or later use (S104).
[0079] In the case where the first link path (e.g., LP1) has switched to the second link path (e.g., LP2), while the second link path is adding delay, it is sufficient to monitor the round-trip time (RTT) characteristics to identify which of the set of link paths it has switched to by comparing the measured RTT with the stored link profile to determine which link profile matches the current link path.
[0080] By identifying changing RTTs, link profiles can be verified if a device is activated from an unknown state (such as being powered on) or when it has been "off-grid" for a period of time and reconnects to the network on any previous or current LP.
[0081] If node B is uncalibrated or the correct link profile is not readily apparent, the link path will remain uncalibrated. In such cases, it is conceivable to wait for conditions that allow this choice to be made.
[0082] According to an embodiment, if the RTT value is below a predetermined limit that may optionally be configurable, and the length of the cable used to provide the link path is considered short enough that any asymmetry can be considered negligible, the link path is calibrated by self-assignment. The device can connect to multiple link paths, and connecting to each LP of one or more sources will improve the accuracy of the output time generated by the device.
[0083] Adjust local clock and link configuration files
[0084] refer to Figure 3 Consider Figure 1 Virtual path V AB Initially, a virtual path V was established. AB (S200) Then it is determined whether Node B (and / or Node A) is calibrated. If Node B is not calibrated and a trusted source exists, then Node B is calibrated (S202). Node B (and / or Node A) now monitors the received data stream DSR with respect to predetermined data stream characteristics (S203) and analyzes the monitored data stream characteristics to determine the monitored LP profile (LPX) (S204). If the monitored data does not match the predetermined (i.e., previously determined and stored) LP profile (LPP), then the LPX is stored as a new LP profile (S206). Thus, the characteristics of a specific link path are observed and these characteristics are stored as part of the calibration to allow the use of the correct calibration factor. In the final step (S207), the LP profile can be used to perform time compensation on the virtual path VP based on the stored LP profile LPX. After a certain period of time, multiple changes to the active link path may have occurred within the virtual path. These link path changes may have impaired the accuracy of the actual time output offset of Node B due to timing filters and algorithms.
[0085] According to an embodiment of the invention, the node's device is configured to check its own clock accuracy and adjust it under given conditions.
[0086] An example of a condition under which Node B's device should consider adjusting its clock is when the node is connected to a known accurate source in which the RTT calibration factor is known, for example, when a trusted source is detected (S208).
[0087] - Connect to and identify reliable local clocks
[0088] - A reliable clock is connected and is remote, like a GNSS trusted clock.
[0089] - A known link RTT was detected and this RTT is referred to as RTT / 2 = RLD = LRD
[0090] - Given that LPs can now be composed of very few actual links and hops within the network, the known link RTT is detected during the monitoring of the data flow DSR and this RTT is referred to as RTT / x = RLD*x = LRD*y (where x and y are), and the asymmetric calibration factor is highly reliable.
[0091] - A known link RTT has been detected and this RTT has been stored, matching a profile with very good PDV and / or performance data.
[0092] - Connect to another trusted link with known calibration factors and properties, and detect other links with mismatched skew offsets or slightly shifted calibration factors in this profile.
[0093] Optionally, the priority of the above items can be selected to trim the device of node B, or the trimming can be performed automatically by selecting what algorithm is best for the device.
[0094] At this stage, Node B's device can not only trim / update the clock, but also optionally trim / update the previously stored LP profile (S210) after determining whether the trimming condition (S209) is met. The stored LP profile may have been created after Node B's first calibration or when a local trusted source is connected. It can be assumed that these automatically created LP profiles were slightly compromised at creation time, meaning they were not locked to a good trusted link profile during creation. When it is determined in step (S205) that the detected DSR corresponds to a previously stored LP profile and the trimming condition (S209) is met, the stored LP profile is updated with a fresh LP profile LPX.
[0095] Now for reference Figure 4 According to the embodiment, by using hold mechanisms, timers, and filters, Node B's device can wait until the link path has stabilized before changing to a link profile or AUTO CAL and storing the new link profile. After the DSR monitoring step (S303), Node B's (and / or Node A's) device should locally check other well-known trusted sources, such as another link path or the clock of the connection, when a link path change is determined (S304). If no trusted source is found, it should wait for its unique clock source (link path) to stabilize (S309) and then lock onto the link and store the new link profile (S307) after the link is considered stable, using the new link profile to perform time compensation for the virtual path VP (S308). In this case, the aforementioned "damage" risk arises, as the latter can be "cleaned" once a known trusted link profile is selected.
[0096] The link path may be deemed untrustworthy if at least one of the following conditions is detected when monitoring the received data stream: frame loss, duplicate frame pattern, unacceptably high PDV value for duplicate packets, lost packets, excessive packet loss, and other ongoing measures.
[0097] The device is configured to automatically handle the aforementioned situations of static asymmetry, dynamic asymmetry caused by PDV, and pseudo-static asymmetry to ensure that the absolute optimal time output is always guaranteed, and to automatically correct itself through trimming when possible.
[0098] When a change in at least one selected monitored data stream characteristic is detected, or when a change in time data is detected during the monitoring of at least one data stream characteristic (S304), the node can compare the current value of the selected monitored data stream characteristic with the corresponding data in the stored link profile (S306), and if a match is found, switch to the stored known or best-fit link profile (S307), or at least switch to the delay correction factor of the best-fit link profile, and use the best-fit link profile to perform time compensation for the virtual path VP (S308). Changes in data stream characteristics or time data can be monitored within a predetermined ratio. Time data can refer to, for example, the detection of a new RTT, a new value on PDV, or a change in packet loss rate. Changes in time data (optionally sudden) can be detected relative to a stable local clock, an external clock, or other time data of other virtual paths. The detected change can also be a deviation in time of one of RTT, PDV, and packet loss rate. If no matching LP profile is found, the node can signal an error and hold.
[0099] Detection
[0100] According to an embodiment of the present invention, the step of establishing at least one virtual path between a first node and a second node includes providing a configuration utilizing initial (or first) configuration data between the first node and the second node. The method further includes: for a selected virtual path among the at least one virtual path: probing the selected virtual path using a probing function that applies a plurality of predetermined probing configuration data (which may be a probing configuration dataset) to the selected virtual path; monitoring (which may include storing and / or analyzing) the performance on the selected virtual path for each of the plurality of probing configuration data; and determining optimized configuration data for the configuration between the first node and the second node based on the monitored performance.
[0101] According to an embodiment of the method, the selected virtual path is parallel to the virtual path that sends the bidirectional data stream.
[0102] This probe capability can further include performing tracing routes for each probe configuration data. The probe configuration data includes at least one of the following settings: DSCP, Ethernet priority, bit rate, and MTU, and can be applied incrementally.
[0103] According to an embodiment of the method, optimized configuration data is determined regarding the minimum jitter performance, such as an estimate represented by jitter in the 0th and 1st percentiles.< / match>
Claims
1. A GNSS-independent method for compensating for asymmetric delay errors to minimize time difference bias when using bidirectional time transfer in a communication network, the method comprising: At least one virtual path, including at least one link path, is established on the network to communicate between a first node and a second node, wherein the at least one virtual path is bidirectional; Send bidirectional data streams through at least one virtual path and at least one of the first and second nodes: Monitor at least one data stream characteristic and / or at least one link path characteristic of the received data stream; and If it is determined that at least one of these monitored data flow characteristics or link path properties matches a predetermined link profile, then: Obtain the delay correction factor of the predetermined link configuration file; otherwise A new delay correction factor for the virtual path is calculated using the estimated time error on the virtual path using bidirectional time transfer and the calibration time difference from a trusted source; and The estimated time error between the first node and the second node on the virtual path is compensated using the delay correction factor or the new delay correction factor.
2. The method according to claim 1, wherein, The trusted source is one of the following: a calibrated virtual path from a node in a calibrated state, a local clock in hold mode, or a directly connected clock source.
3. The method according to claim 1 or 2, further comprising transmitting the calibration status of the first node and the second node to adjacent nodes.
4. The method according to claim 1 or 2, further comprising storing a new link profile based on the at least one data stream characteristic of the received data stream and / or the at least one link path property and the new delay correction factor.
5. The method according to claim 1 or 2, further comprising setting the calibration status of the at least one virtual path and / or the link profile of the at least one virtual path to calibrated if the first node and the second node are in a calibrated state.
6. The method according to claim 1 or 2, wherein, The at least one virtual path is calibrated by self-assignment.
7. The method according to claim 1 or 2, further comprising adjusting the stored predetermined link profile or creating a copy of the stored link profile based on the at least one monitored data flow characteristic and / or the at least one link path property.
8. The method of claim 1 or 2, further comprising, upon detecting a change in at least one selected monitored data stream characteristic or link path property, or upon detecting a change in time data during monitoring at least one data stream characteristic: The current values of these selected monitored data flow characteristics are compared with the corresponding data in the stored link profile, and if a match is found, the latency correction factor of the best-fit link profile is used; otherwise, it is left as is.
9. The method according to claim 8, wherein, The time data changes are detected relative to a local clock, an external clock, or time data relative to other virtual paths.
10. The method of claim 1 or 2, further comprising comparing time relating to the first node and the second node, wherein, The time comparison is used to guide the second node, which acts as a slave node, to the first node, which acts as a master node, at the time specified.
11. The method according to claim 1 or 2, wherein, The establishment step includes providing a configuration using initial configuration data between the first node and the second node, and the method further includes: For the selected virtual path in the at least one virtual path: The selected virtual path is probed using a probe function that applies multiple predetermined probe configuration data to the selected virtual path. For each of the plurality of probe configuration data, monitor the performance on the selected virtual path; and Based on the monitored performance, optimized configuration data for the configuration between the first node and the second node is determined.
12. The method according to claim 11, wherein, The selected virtual path is parallel to the virtual path that sends the bidirectional data stream.
13. The method according to claim 11, wherein, The detection function further includes performing route tracing for each detection configuration data.
14. A node arranged in a communication system for node-to-node communication, the node comprising: Memory that stores computer-readable instructions; And a processor configured to execute these computer-readable instructions according to the method described in any of the preceding claims.
15. A non-transitory computer-readable storage medium storing computer-readable instructions that can be executed by a processor to cause the processor to perform the method according to any one of claims 1 to 13.