Clock synchronization for network measurements with clock resets
First Claim
1. A method for correcting delay measurement data with clock resets, comprising:
- examining possible clock reset combinations;
for each possible clock reset combination, dividing the delay measurement data into a predetermined number of segments, calculating a convex hull, and calculating a skew slope;
identifying a best skew slope for all possible clock reset combinations;
identifying clock reset times associated with the best skew slope; and
removing the effect of identified clock resets from the delay measurement data.
1 Assignment
0 Petitions
Accused Products
Abstract
Several algorithms are provided to estimate and remove relative clock skews from delay measurements based on the computation of convex hulls. The algorithms are linear in the number of measurement points for the case with no clock resets. For the more challenging case with clock resets, i.e., the clocks are reset to some reference times during the measurement period, linear algorithms are provided to identify the clock resets and derive the best clock skew lines. The algorithms are also extended to environments in which at least one of the clocks is controlled by Network Time Protocol. These algorithms can also be extended for active clock synchronization to replace or further improve Network Time Protocol.
-
Citations
38 Claims
-
1. A method for correcting delay measurement data with clock resets, comprising:
-
examining possible clock reset combinations;
for each possible clock reset combination, dividing the delay measurement data into a predetermined number of segments, calculating a convex hull, and calculating a skew slope;
identifying a best skew slope for all possible clock reset combinations;
identifying clock reset times associated with the best skew slope; and
removing the effect of identified clock resets from the delay measurement data. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for correcting delay measurement data with clock resets, comprising:
-
dividing the delay measurement data into a predetermined number of segments;
determining a skew slope for each segment;
marking segments that are candidates for having a clock reset;
identifying marked segments with exactly one clock reset;
identifying the best clock reset for each marked segment with exactly one clock reset; and
removing the effect of identified clock resets from the delay measurement data. - View Dependent Claims (8, 9, 10, 11, 12, 14, 15, 16, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29)
-
-
13. A method for correcting delay measurement data with clock resets, comprising:
-
for each data point in the delay measurement data, calculating a best skew line for a current section, determining whether the data point is a turning point, identifying a clock reset time and the best skew line for the current section and starting a new section if the data point is a turning point; and
removing the effect of identified clock resets from the delay measurement data.
-
-
17. A method for online clock synchronization, comprising:
-
collecting delay measurement data between a time reference and local machine;
determining a relative clock speed;
adjusting the speed of the local clock according to the relative clock speed; and
setting a future time for the next possible clock adjustment.
-
-
18. A computer program product, in a computer readable medium, for correcting delay measurement data with clock resets, comprising:
-
instructions for examining possible clock reset combinations;
instructions for dividing the delay measurement data into a predetermined number of segments, calculating a convex hull, and calculating a skew slope, for each possible clock reset combination;
instructions for identifying a best skew slope for all possible clock reset combinations;
instructions for identifying clock reset times associated with the best skew slope; and
instructions for removing the effect of identified clock resets from the delay measurement data.
-
-
24. A computer program product, in a computer readable medium, for correcting delay measurement data with clock resets, comprising:
-
instructions for dividing the delay measurement data into a predetermined number of segments;
instructions for determining a skew slope for each segment;
instructions for marking segments that are candidates for having a clock reset;
instructions for identifying marked segments with exactly one clock reset;
instructions for identifying the best clock reset for each marked segment with exactly one clock reset; and
instructions for removing the effect of identified clock resets from the delay measurement data.
-
-
30. A computer program product, in a computer readable medium for correcting delay measurement data with clock resets, comprising:
-
instructions for calculating a best skew line for a current section, determining whether the data point is a turning point, identifying a clock reset time and the best skew line for the current section and starting a new section if the data point is a turning point, for each data point in the delay measurement data; and
instructions for removing the effect of identified clock resets from the delay measurement data. - View Dependent Claims (31, 32, 33)
-
-
34. A computer program product, in a computer readable medium, for online clock synchronization, comprising:
-
instructions for collecting delay measurement data between a time reference and local machine;
instructions for determining a relative clock speed;
instructions for adjusting the speed of the local clock according to the relative clock speed; and
instructions for setting a future time for the next possible clock adjustment.
-
-
35. An apparatus for correcting delay measurement data with clock resets, comprising:
-
a processor; and
a memory electrically connected to said processor, the memory having stored therein a program to be executed on said processor for performing the following steps;
examining possible clock reset combinations;
for each possible clock reset combination, dividing the delay measurement data into a predetermined number of segments, calculating a convex hull, and calculating a skew slope;
identifying a best skew slope for all possible clock reset combinations;
identifying clock reset times associated with the best skew slope; and
removing the effect of identified clock resets from the delay measurement data.
-
-
36. An apparatus for correcting delay measurement data with clock resets, comprising:
-
a processor; and
a memory electrically connected to said processor, the memory having stored therein a program to be executed on said processor for performing the following steps;
dividing the delay measurement data into a predetermined number of segments;
determining a skew slope for each segment;
marking segments that are candidates for having a clock reset;
identifying marked segments with exactly one clock reset;
identifying the best clock reset for each marked segment with exactly one clock reset; and
removing the effect of identified clock resets from the delay measurement data.
-
-
37. An apparatus for correcting delay measurement data with clock resets, comprising:
-
a processor; and
a memory electrically connected to said processor, the memory having stored therein a program to be executed on said processor for performing the following steps;
for each data point in the delay measurement data, calculating a best skew line for a current section, determining whether the data point is a turning point, identifying a clock reset time and the best skew line for the current section and starting a new section if the data point is a turning point; and
removing the effect of identified clock resets from the delay measurement data.
-
-
38. An apparatus for online clock synchronization, comprising:
-
a processor; and
a memory electrically connected to said processor, the memory having stored therein a program to be executed on said processor for performing the following steps;
collecting delay measurement data between a time reference and local machine;
determining a relative clock speed;
adjusting the speed of the local clock according to the relative clock speed; and
setting a future time for the next possible clock adjustment.
-
Specification