Combined clock synchronization method based on weighting condition adjustment improvement
By employing synchronous bidirectional ranging and a weighted conditional adjustment model to correct clock offset errors in sensor networks, the clock error estimation problem of closed links in sensor networks is solved, thereby improving synchronization accuracy and performance.
Patent Information
- Application Number
- CN202610022656.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-08
- Publication Date
- 2026-05-22
AI Technical Summary
Existing technologies in sensor networks have failed to effectively address the problem of non-zero closure residuals generated by clock error estimation between closed links, which leads to reduced synchronization performance.
A pseudorange information model is constructed using a synchronous two-way ranging mechanism. Initial observation estimation is performed using the least squares method. Clock offset error is corrected by combining a weighted conditional adjustment model. The Lagrange multiplier method is used to optimize the observation values and compensate for the link-independent estimation error.
It significantly improves the time synchronization accuracy of sensor networks, effectively compensates for the error accumulation caused by link-independent estimation, and improves the overall synchronization performance of the network.
Smart Images

Figure CN122073513A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication technology, and in particular to a joint clock synchronization method based on weighted conditional adjustment improvement. Background Technology
[0002] With the rapid development of micro-electro-mechanical systems (MEMS) and wireless communication technologies, low-cost, low-power, and multifunctional wireless sensing devices are constantly emerging. Numerous sensors and control devices need to operate collaboratively to monitor complex processes, with typical applications spanning critical areas such as medical systems, industrial automation, military missions, environmental monitoring, and intelligent transportation. In these applications, maintaining a unified time scale is crucial for ensuring the reliability of data fusion, the accuracy of event sequencing, and the synchronization of control operations.
[0003] To address the time synchronization problem in sensor networks, researchers have proposed using information exchange mechanisms between network nodes to maintain synchronization with reference nodes. While this mechanism solves the synchronization problem to some extent, it still has limitations. In time-sensitive sensor networks, closed-loop networks are common. Because link measurements are independent during clock parameter estimation, the clock difference estimation between closed links is not strictly closed-loop. Specifically, when summing the clock offsets of nodes along the closed loop, non-zero closure residuals inevitably occur. These residuals persist and continuously weaken synchronization performance.
[0004] A search of existing technical literature revealed a patent application with application number 202111067979.0, entitled "A Joint Time Synchronization and Positioning Method Between Anchor-Free Nodes." This patent includes data collection; constructing an observation matrix; selecting a reference node; determining the optimal approximation; deriving frequency offset and phase deviation, and node... Local time is The actual time and nodes The local clock correction coefficient, the coefficient matrix with respect to local time, and the signal transmission speed in space are used to determine the node position, thus completing the positioning operation for the anchorless node. However, this patent has problems such as not considering the non-zero closure residuals caused by the clock difference estimation between closed links, which leads to a decrease in synchronization performance. Summary of the Invention
[0005] Therefore, it is necessary to provide a joint clock synchronization method based on weighted conditional adjustment improvement to address the above-mentioned technical problems and achieve high-precision time synchronization in large-scale sensor node network scenarios.
[0006] To solve the above-mentioned technical problems, the present invention provides the following technical solution: This invention provides a joint clock synchronization method based on weighted conditional adjustment improvement, the method comprising: S1: A synchronous bidirectional ranging mechanism is used to perform bidirectional ranging on nodes in the sensor node network that communicate bidirectionally, so as to obtain a pseudorange information model between nodes. S2: Based on the pseudorange information model, the observation equation is constructed, and the least squares method is used to estimate and solve the observation equation to obtain the initial observation estimate; S3: Calculate the clock offset error estimate between nodes based on the pseudorange information model and the initial observation estimate, and construct the weighted conditional adjustment model based on the clock offset error estimate; S4: Correct the pseudorange observations in the pseudorange information model according to the weighted conditional adjustment model to obtain denoised observations; S5: Construct a new observation equation based on the denoised observation values, and use the least squares method to estimate and solve the new observation equation to obtain the optimized observation estimate.
[0007] Preferably, the pseudorange information model calculation expression between the nodes is as follows:
[0008]
[0009]
[0010] in, and Representing nodes respectively and nodes Clock skew parameters, and Let be scalars, representing the first digit, and respectively. Round-robin communication time slot node To the node Transmitted pseudorange observations and the first Round-robin communication time slot node To the node Transmitted pseudorange observations Represents the speed of light. and Represents a node and nodes Flight time for information transmission between them , Indicates the first Round-robin communication time slot node and nodes Clock offset error between As a scalar, it represents the first... Local transmission time between communication time slot nodes and Let be scalars, representing the first digit, and respectively. Round-robin communication time slot node To the node Transmitted Gaussian noise and the first Round-robin communication time slot node To the node Transmitted Gaussian noise, and Representing nodes respectively and nodes The initial clock offset parameter.
[0011] Preferably, the calculation expression of the observation equation is as follows:
[0012]
[0013]
[0014]
[0015]
[0016]
[0017] in, Let be a vector, representing the first... Local transmission time between communication time slot nodes Let be a vector, representing the first... Round-robin communication time slot node To the node Transmitted pseudorange observation information This represents the coefficient matrix representing all local transmission time and pseudorange observation information in the sensor node network. Indicates parameters The relevant coefficient matrix, This represents the set of all clock skew parameters in the sensor node network. Indicates parameters The relevant coefficient matrix, This represents the set of flight times for information transmission between all nodes in a sensor node network. This represents a column vector composed of all pseudorange observations in the sensor node network. Let be a vector, representing the first... Round-robin communication time slot node To the node Transmitted Gaussian noise, This represents a column vector consisting of all Gaussian noise in the sensor node network. This indicates the matrix transpose.
[0018] Preferably, the initial observation estimate calculation expression is as follows:
[0019]
[0020] in, Yes The estimate represents the initial observation estimate.
[0021] Preferably, the clock offset error estimation calculation expression is as follows:
[0022] in, Yes The estimate represents the clock offset error estimate. Yes The estimate, Yes The estimate represents the initial observation estimate. Clock skew parameter estimation in the process.
[0023] Preferably, the sensor node network is a closed-loop sensor node network.
[0024] Preferably, the clock offset error estimation includes the actual clock offset error and the estimated error. A weighted conditional adjustment model is constructed based on the clock offset error estimation, including: The closed link of the closed loop sensor node network is determined based on the connection status of the nodes in the closed loop sensor node network; The clock offset error estimation is measured for each closed link, and the first conditional equation is constructed accordingly. Based on the closure characteristic that the sum of all real clock offset errors in the closed link is zero, the first correction equation corresponding to the first condition equation is obtained. The clock offset error estimate is decomposed to obtain a two-way clock offset correlation vector composed of pseudorange observations and clock skew parameter estimates. The first conditional equation is then recombined based on the two-way clock offset correlation vector to obtain the second conditional equation. Based on the bidirectional clock bias correlation vector and the first correction equation, the second correction equation corresponding to the second condition equation is obtained; The weighted conditional adjustment model is constructed based on the second condition equation and the second correction equation.
[0025] Preferably, the weighted conditional adjustment model is calculated as follows:
[0026] in, This represents the coefficient matrix of the second condition equation. The bidirectional clock skew correlation vector is represented by the following form: , This indicates the estimation of clock skew parameters. Represents pseudorange observations. Indicates the first Round communication time slot, Represents the speed of light. express Correction items, This represents the non-zero closed residual, which is the sum of all estimation errors.
[0027] Preferably, the pseudorange observations in the pseudorange information model are corrected according to the weighted conditional adjustment model, including: The weighted conditional adjustment model is solved using the Lagrange multiplier method to obtain the optimal correction term; The bidirectional clock bias correlation vector is corrected according to the optimal correction term to obtain the corrected bidirectional clock bias correlation vector; The modified bidirectional clock bias correlation vector is subjected to parameter removal that is independent of the pseudorange observations to obtain denoised observations.
[0028] Preferably, after step S5, the method further includes: performing TOA ranging on the sensor node network based on the optimized observation estimate.
[0029] Compared with the prior art, the beneficial effects of the present invention are: This invention provides a joint clock synchronization method based on weighted conditional adjustment. It employs synchronous bidirectional ranging technology to transmit and exchange observation information between nodes in a sensor network. After obtaining multiple sets of observations, it uses the least squares method to jointly estimate clock phase deviation, frequency deviation, and signal propagation distance, making it suitable for time synchronization of all network nodes in a fixed baseline scenario. Furthermore, by combining weighted conditional adjustment, it corrects the clock deviation at each moment of the initial estimate for each link in the sensor network and introduces the loop closure equation as redundant observation into the network. By applying constraints to the initial estimation results using weighted conditional adjustment, it effectively compensates for the error accumulation caused by independent link estimation, thereby significantly improving the overall synchronization accuracy of the network. Attached Figure Description
[0030] Figure 1 This is a schematic diagram of a joint clock synchronization method based on weighted conditional adjustment improvement in one embodiment; Figure 2 This is a schematic diagram of the synchronization principle and timing relationship of the joint clock synchronization method based on weighted conditional adjustment improvement in one embodiment. Detailed Implementation
[0031] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0032] Example 1 This embodiment proposes a joint clock synchronization method based on weighted conditional adjustment improvement, the method comprising: S1: A synchronous bidirectional ranging mechanism is used to perform bidirectional ranging on nodes in the sensor node network that communicate bidirectionally, so as to obtain a pseudorange information model between nodes. The specific implementation of this step is as follows. This embodiment considers an asynchronous sensor network where each sensor node is equipped with an independent clock. Due to factors such as oscillator instability or clock aging, the local clocks of each node may have varying degrees of time deviation. Over a short time range, the clock of each sensor can be approximated as a linear model, which can typically be described by a first-order Taylor expansion relative to a reference clock. Let... This is the local time of the subordinate node. For global reference time, a node with clock skew The clock model can be expressed by the following formula:
[0033] in, and Representing nodes respectively In an asynchronous sensor network, clock skew and initial clock offset can be addressed by selecting one or more time-stable nodes as reference clocks, with corresponding clock parameter values of [values to be filled in]. and Within a short measurement period, and They are all considered stable and unchanging constants.
[0034] In the ranging model, a synchronous two-way ranging (STWR) mechanism is used to achieve bidirectional synchronous ranging, normalizing the relative clock difference estimates to the same time. The principle is as follows: Figure 2 As shown. In the presence of clock errors, each sensor node exchanges information based on a assumed local time synchronization. (Settings...) and Representing nodes respectively and nodes Local sending time, and These represent the local reception times of the two nodes. Due to clock differences between nodes, they typically have a relative clock offset at the same local transmission time. .node With nodes Pseudorange information exchange is possible, thus enabling the direct use of these local pseudorange observations. Time synchronization is achieved through modeling. The bidirectional ranging synchronization relationship between two nodes can be represented by the following pseudorange information model:
[0035] in, and Representing nodes respectively and nodes Clock skew parameters, and Representing nodes respectively and nodes The initial clock offset parameter, i.e. and Corresponding node Clock-related parameters, and Corresponding node Clock-related parameters, and Let be scalars, representing the first digit, and respectively. Round-robin communication time slot node To the node Transmitted pseudorange observations and the first Round-robin communication time slot node To the node Transmitted pseudorange observations Represents the speed of light. and Represents a node and nodes The flight time for information transmission between them is determined by and Received, among which This represents the Euclidean distance between two nodes. Since the node network under consideration is stationary, therefore... , Indicates the first Round-robin communication time slot node and nodes Clock offset error between As a scalar, it represents the first... Local transmission time between communication time slot nodes and Let be scalars, representing the first digit, and respectively. Round-robin communication time slot node To the node Transmitted Gaussian noise and the first Round-robin communication time slot node To the node The transmitted Gaussian noise originates from the uncertainty of the clock hardware and the influence of the external environment during the information transmission process.
[0036] S2: Based on the pseudorange information model, the observation equation is constructed, and the least squares method is used to estimate and solve the observation equation to obtain the initial observation estimate; The specific implementation of this step is as follows: the bidirectional synchronous ranging model between pairs of nodes is extended to the global network; assuming that the network already has If there are nodes, then there are There are several information links, considering that When considering the number of rounds of information transmission, the observation equation is obtained by generalizing equations (2) and (3) to network synchronous ranging, and is expressed as:
[0037] in, Let be a vector, representing the first... Local transmission time between communication time slot nodes Let be a vector, representing the first... Round-robin communication time slot node To the node Transmitted pseudorange observation information, This represents the coefficient matrix representing all local transmission times and two-way pseudorange observation information in the sensor node network. Indicates parameters The relevant coefficient matrix, This represents the set of all clock skew parameters in the sensor node network. Indicates parameters The relevant coefficient matrix, This represents the set of flight times for information transmission between all nodes in a sensor node network. This represents a column vector composed of all pseudorange observations in the sensor node network. Let be a vector, representing the first... Round-robin communication time slot node To the node Transmitted Gaussian noise, This represents a column vector consisting of all Gaussian noise in the sensor node network. To represent the matrix transpose, equation (5) can be solved using the least squares method:
[0038] in, Yes The estimate, representing the initial observation estimate, is obtained through calculation. This allows for the joint estimation of clock parameters and transmission delays within the network, thereby enabling network synchronization.
[0039] Example 2 This embodiment further illustrates the joint clock synchronization method based on weighted conditional adjustment improvement proposed in Embodiment 1.
[0040] When the sensor node network is a closed-loop sensor node network, this embodiment considers that the non-zero closure residuals generated by the clock offset error estimation between closed links in the node network lead to a decrease in synchronization performance. Therefore, it is necessary to optimize the initial observation estimate obtained in the above embodiment. The joint clock synchronization method based on weighted conditional adjustment improvement is as follows: Figure 1 As shown.
[0041] S3: Calculate the clock offset error estimate between nodes based on the pseudorange information model and the initial observation estimate, and construct the weighted conditional adjustment model based on the clock offset error estimate; The specific implementation of this step is as follows: After jointly estimating the clock phase deviation, frequency deviation, and signal propagation distance using the least squares method, this embodiment combines weighted conditional adjustment to correct the clock deviation at each moment of the initial estimate for each link in the sensor network. The loop closure equation is introduced into the network as redundant observations. By applying constraints to the initial estimation results using weighted conditional adjustment, the error accumulation caused by independent link estimation is effectively compensated. That is, in a closed-loop node network, the closed-loop residual is denoted as... The paired clock offset is denoted as Therefore, for a closed-loop network, the closed-loop equation can be obtained as follows:
[0042] because Since the value is non-zero, conditional adjustment can be applied to eliminate the initial closed-loop residual. Because the transmission delay is symmetrical and the local time during each round of switching is normalized to the same moment, the clock offset error estimate between each pair of nodes can be calculated using equations (2) and (3), i.e.:
[0043] in, Yes The estimate represents the clock offset error estimate. Yes The estimate, Yes The estimate represents the initial observation estimate. The clock skew parameter estimation in the process includes the actual clock skew error and the estimated error, since... This is the estimation error; the estimated value usually deviates from the true value, and it is expressed as:
[0044] in, Indicates at time Time node With nodes The actual clock offset deviation between them This represents the corresponding estimation error. The sum of each estimation error in the closed loop is the closed-loop residual. Since the measurement process of each link is independent, its closed-loop residual is not zero.
[0045] A weighted conditional adjustment model is constructed based on the clock offset error estimation, including: The closed links of the closed loop sensor node network are determined based on the connection status of the nodes in the closed loop sensor node network. In this embodiment, the sensor node network adopts a four-node fully connected form, that is, there are three closed links. By measuring the clock offset error estimation for each closed link, the first conditional equation is constructed:
[0046] This represents the closed-loop residual for each closed-loop condition equation. Due to the closed-loop property that the true values of the closed loop add up to zero, substituting the true clock offset deviations and the estimation error into the equation yields the result. Correction items The relationship, i.e., the first correction equation:
[0047] From equation (13), we can see that, From the estimated value With pseudorange observations Composition, and its direct adjustment Instead, it's better to adjust its corresponding constituent variables. It is split into two parts, namely pseudorange observations. And clock skew parameter estimation The resulting bidirectional clock bias correlation vector and By recombining equation (15), we can obtain the second conditional equation:
[0048] Consider the second conditional equation (17), and the bidirectional clock bias correlation vector Considering the first correction equation (16) as a whole and correcting it, we can obtain the second correction equation:
[0049] Based on the above analysis, a weighted conditional adjustment model can be constructed by combining the second conditional equation (17) and the second correction equation (18) with conditional adjustment:
[0050] in, The coefficient matrix of the second condition equation is constructed in a manner similar to that of reference equation (17), i.e., by... The components are extracted and combined to form the final product. The bidirectional clock skew correlation vector is represented by the following form: , This indicates the estimation of clock skew parameters. Represents pseudorange observations. Indicates the first Round communication time slot, Represents the speed of light. express Correction items, Let the non-zero closed residual be the sum of all estimation errors, satisfying the following condition: .
[0051] S4: Correct the pseudorange observations in the pseudorange information model according to the weighted conditional adjustment model to obtain denoised observations; The specific implementation of this step is as follows: The pseudorange observations in the pseudorange information model are corrected according to the weighted conditional adjustment model, including: The weighted conditional adjustment model was solved using the Lagrange multiplier method to obtain the optimal correction term. , and All quantities are known; this embodiment uses the Lagrange multiplier method for solution. Let be the objective function, with Given the condition equation, solve for the optimal correction term. , The loss function can be improved by introducing Lagrange multipliers. And consider the weighted matrix get:
[0052] in It consists of the noise variance transmitted between nodes in the network. Since the measurements between links are independent, the covariance between links is 0.
[0053] in It can be modeled from the noise generated during the transmission process by equations (2) and (3), that is:
[0054] Analyze equation (20) and... about Taking the first derivative and setting it to zero, we get:
[0055] Solving equation (23) yields the error estimate equation:
[0056] at this time As the unknown term, substituting equation (24) into equation (19) yields:
[0057] get Then, the optimal correction term can be obtained. ; The bidirectional clock skew correlation vector is corrected based on the optimal correction term to obtain the corrected bidirectional clock skew correlation vector. Can utilize The following formula should be corrected:
[0058] The corrected bidirectional clock bias correlation vector is obtained. Afterwards, Perform parameter removal that is irrelevant to pseudorange observations, using Obtain denoised observations .
[0059] Example 3 This embodiment further illustrates the joint clock synchronization method based on weighted conditional adjustment improvement proposed in Embodiments 1 and 2.
[0060] S5: Construct a new observation equation based on the denoised observation values, and use the least squares method to estimate and solve the new observation equation to obtain the optimized observation estimate.
[0061] The specific implementation of this step is as follows: Since equation (17) is an additional observation equation, it can be stacked into the established observation model, i.e., the denoised observation values. Construct a new matrix and Then, the second condition equation (i.e., equation (17)) is used to observe the equation. With observation vector Augmentation, forming a new observation matrix With observation vector This constitutes a new observation equation. Using the least squares method, the clock parameters and propagation delay of the new observation equation are estimated, yielding:
[0062] It is an optimized observation estimate that estimates denoised observations.
[0063] After step S5, the method further includes: performing TOA ranging on the sensor node network based on the optimized observation estimate.
Claims
1. A joint clock synchronization method based on weighted conditional adjustment, characterized in that, include: S1: A synchronous bidirectional ranging mechanism is used to perform bidirectional ranging on nodes in the sensor node network that communicate bidirectionally, so as to obtain a pseudorange information model between nodes. S2: Based on the pseudorange information model, the observation equation is constructed, and the least squares method is used to estimate and solve the observation equation to obtain the initial observation estimate; S3: Calculate the clock offset error estimate between nodes based on the pseudorange information model and the initial observation estimate, and construct the weighted conditional adjustment model based on the clock offset error estimate; S4: Correct the pseudorange observations in the pseudorange information model according to the weighted conditional adjustment model to obtain denoised observations; S5: Construct a new observation equation based on the denoised observation values, and use the least squares method to estimate and solve the new observation equation to obtain the optimized observation estimate.
2. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 1, characterized in that, The pseudorange information model calculation expression between the nodes is as follows: in, and Representing nodes respectively and nodes Clock skew parameters, and Let be scalars, representing the first _____. Round-robin communication time slot node To the node Transmitted pseudorange observations and the first Round-robin communication time slot node To the node Transmitted pseudorange observations Represents the speed of light. and Represents a node and nodes Flight time for information transmission between them , Indicates the first Round-robin communication time slot node and nodes Clock offset error between As a scalar, it represents the first... Local transmission time between communication time slot nodes and Let be scalars, representing the first digit, and respectively. Round-robin communication time slot node To the node Transmitted Gaussian noise and the first Round-robin communication time slot node To the node Transmitted Gaussian noise, and Representing nodes respectively and nodes The initial clock offset parameter.
3. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 2, characterized in that, The calculation expression for the observation equation is as follows: in, Let be a vector, representing the first... Local transmission time between communication time slot nodes Let be a vector, representing the first... Round-robin communication time slot node To the node Transmitted pseudorange observation information This represents the coefficient matrix representing all local transmission time and pseudorange observation information in the sensor node network. Indicates parameters The relevant coefficient matrix, This represents the set of all clock skew parameters in the sensor node network. Indicates parameters The relevant coefficient matrix, This represents the set of flight times for information transmission between all nodes in a sensor node network. This represents a column vector composed of all pseudorange observations in the sensor node network. Let be a vector, representing the first... Round-robin communication time slot node To the node Transmitted Gaussian noise, This represents a column vector consisting of all Gaussian noise in the sensor node network. This indicates the matrix transpose.
4. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 3, characterized in that, The initial observation estimate calculation expression is as follows: in, Yes The estimate represents the initial observation estimate.
5. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 4, characterized in that, The clock offset error estimation calculation expression is as follows: in, Yes The estimate represents the clock offset error estimate. Yes The estimate, Yes The estimate represents the initial observation estimate. Clock skew parameter estimation in the process.
6. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 1, characterized in that, The sensor node network is a closed-loop sensor node network.
7. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 6, characterized in that, The clock offset error estimation includes the actual clock offset error and the estimated error. A weighted conditional adjustment model is constructed based on the clock offset error estimation, including: The closed link of the closed loop sensor node network is determined based on the connection status of the nodes in the closed loop sensor node network; The clock offset error estimation is measured for each closed link, and the first conditional equation is constructed accordingly. Based on the closure characteristic that the sum of all real clock offset errors in the closed link is zero, the first correction equation corresponding to the first condition equation is obtained. The clock offset error estimate is decomposed to obtain a two-way clock offset correlation vector composed of pseudorange observations and clock skew parameter estimates. The first conditional equation is then recombined based on the two-way clock offset correlation vector to obtain the second conditional equation. Based on the bidirectional clock bias correlation vector and the first correction equation, the second correction equation corresponding to the second condition equation is obtained; The weighted conditional adjustment model is constructed based on the second condition equation and the second correction equation.
8. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 7, characterized in that, The weighted conditional adjustment model is calculated as follows: in, This represents the coefficient matrix of the second condition equation. The bidirectional clock skew correlation vector is represented by the following form: , This indicates the estimation of clock skew parameters. Represents pseudorange observations. Indicates the first Round communication time slot, Represents the speed of light. express Correction items, This represents the non-zero closed residual, which is the sum of all estimation errors.
9. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 8, characterized in that, The pseudorange observations in the pseudorange information model are corrected according to the weighted conditional adjustment model, including: The weighted conditional adjustment model is solved using the Lagrange multiplier method to obtain the optimal correction term; The bidirectional clock bias correlation vector is corrected according to the optimal correction term to obtain the corrected bidirectional clock bias correlation vector; The modified bidirectional clock bias correlation vector is subjected to parameter removal that is independent of the pseudorange observations to obtain denoised observations.
10. The joint clock synchronization method based on weighted conditional adjustment improvement according to claim 1, characterized in that, After step S5, the method further includes: performing TOA ranging on the sensor node network based on the optimized observation estimate.
Citation Information
Patent Citations
A method for joint time synchronization and positioning between anchorless nodes
CN113938237B