Miroslav Lichvar
2c033989b6
Update comments referencing RFC 1305
2014-10-14 16:52:22 +02:00
Miroslav Lichvar
a0d5abef88
sourcestats: remove tracking of skew change
...
This is not used since commit 7a6ee1d
.
2014-09-19 10:07:03 +02:00
Miroslav Lichvar
75efa5174c
Convert disabled log messages to debug or remove them
2014-06-27 10:17:35 +02:00
Miroslav Lichvar
cb74f3e7ad
Update copyright years
2014-06-05 18:06:56 +02:00
Miroslav Lichvar
13d734c8d2
sourcestats: reset SST instance thoroughly when dropping samples
2014-06-02 16:46:53 +02:00
Miroslav Lichvar
be3439fef1
sourcestats: assert dump file is loaded with no accumulated samples
2014-04-29 12:07:38 +02:00
Miroslav Lichvar
0b71504ee9
sourcestats: fix signedness in scanf format
2014-03-21 13:20:24 +01:00
Miroslav Lichvar
1c3aff37de
Convert TRACEON LOG messages to DEBUG_LOG
2013-11-27 14:35:41 +01:00
Miroslav Lichvar
922e2fe23b
Fix Clang static analyzer warnings about never read values
2013-10-07 17:50:27 +02:00
Miroslav Lichvar
f8d609fee5
Add minimum skew limit to sourcestats
2013-06-19 10:22:49 +02:00
Miroslav Lichvar
6d2fb9f782
Add minsamples and maxsamples directives
...
Allow configuration of the maximum and minimum number of samples per
source.
2013-06-13 16:23:32 +02:00
Miroslav Lichvar
22e5ed44c2
Modify SST_GetSelectionData to return only necessary data
2013-06-12 16:06:33 +02:00
Miroslav Lichvar
ff8e04f9ba
Fix fabs use on delay
2013-06-12 15:30:28 +02:00
Miroslav Lichvar
3eff836b2e
Set stratum from last sample instead of best
2013-06-03 18:57:54 +02:00
Miroslav Lichvar
2b9fe764d5
Drop unused SST_GetReferenceData()
2013-06-03 16:03:07 +02:00
Miroslav Lichvar
359d444343
Remove unncessary return statements
2013-05-21 15:08:34 +02:00
Miroslav Lichvar
0c738d84af
Update copyright years
2012-02-28 13:11:56 +01:00
Miroslav Lichvar
b088b70f82
Check sample ordering on accumulation
...
If the newly accumulated sample is not newer than than the last one,
discard the source history and start from scratch. This can happen after
loading an invalid dump or when the system clock was stepped.
2011-08-31 18:36:10 +02:00
Miroslav Lichvar
e0c9ed44f9
Limit skew used in NTP test4
...
With iburst and very jittery sources the source skew can reach very high
values which makes the NTP test4 fail even with relatively small delays.
Limit the skew to 2000 ppm to avoid getting state where a source is unable
to accept more than first three iburst samples.
2011-08-12 15:37:58 +02:00
Miroslav Lichvar
91279a0f28
Store reference IDs in uint32_t
2011-06-13 15:34:16 +02:00
Miroslav Lichvar
da2c8d9076
Use config.h
2011-05-24 18:07:06 +02:00
Miroslav Lichvar
bb40f4aff4
Modify weight calculation again
...
Dividing the weights by variance or unweighted variance seems to have a
significant negative impact on response with normally distributed
network delays.
Divide by the difference between the mean and minimum distance instead.
It should be stable as there is no loop and the response seems to be a
good compromise between the original minimum distance weighting which
works well with normally distributed delays and the variance weighting
which works well with exponentially distributed delays.
2011-04-29 13:29:56 +02:00
Miroslav Lichvar
66c7ac4d24
Revert using unweighted variance in weight calculation
...
This reverts commit 165e6805ab
.
2011-04-29 13:29:24 +02:00
Miroslav Lichvar
165e6805ab
In weight calculation use unweighted variance from last regression
...
This fixes a positive feedback where weights could reach inf.
Also change the SD_TO_DIST_RATIO constant to get close to the original
response.
2011-04-13 18:43:25 +02:00
Miroslav Lichvar
c5587b60b2
Set reference time to last sample instead of time on update
...
This is done mainly to fix reported root dispersion to include max clock
error after selecting another source without new sample.
2011-04-11 17:52:04 +02:00
Miroslav Lichvar
faec23f6bd
Don't update empty sourcestats on clock update
2011-04-05 16:32:50 +02:00
Miroslav Lichvar
896dad9224
Fix warnings produced by latest gcc
2011-02-15 18:55:34 +01:00
Miroslav Lichvar
e8c5d15690
Remove CVS headers
2011-01-28 12:56:09 +01:00
Miroslav Lichvar
e63cba05b2
Update copyright
2011-01-27 13:05:26 +01:00
Miroslav Lichvar
98f79404d6
Allow selecting source only when last regression was successful
2010-12-15 17:48:30 +01:00
Miroslav Lichvar
c88801065f
Divide regression weights by stddev instead of minimum distance
...
This improves accuracy with large but stable network delays.
2010-12-14 17:00:53 +01:00
Miroslav Lichvar
b977c95be4
Add test for ratio of increase in delay to stddev
...
Require that the ratio of the increase in delay from the minimum one in
the stats data register to the standard deviation of the offsets in the
register is less than maxdelaydevratio or the difference between
measured offset and predicted offset is larger than the increase in
delay. In the allowed delay increase is included also skew and maximum
clock frequency error.
maxdelaydevratio is 10.0 by default.
2010-12-07 16:47:57 +01:00
Miroslav Lichvar
feb8811f37
Cache minimum peer delay in sourcestats
2010-12-03 17:25:50 +01:00
Miroslav Lichvar
0de82a70a6
Keep only absolute values of peer delays in sourcestats
...
This saves some fabs() calls.
2010-12-03 13:17:09 +01:00
Miroslav Lichvar
7a6ee1d729
Base poll adjustment on number of sourcestats samples
...
Instead of following skew changes, adjust polling interval so that the
number of measurements used in the regression algorithm remains close to
a target value. It can be configured with a new polltarget option
(6 by default).
2010-10-13 16:49:28 +02:00
Miroslav Lichvar
061d497df0
Fix crash when reloading history with zero samples
2010-08-25 18:32:40 +02:00
Miroslav Lichvar
e591e3622b
Extend runs test
...
Double the number of samples that are used in the runs test. E.g. with 64
samples in regression the runs test will be tried over the 64 samples and
up to 64 previous samples. The minimum number of samples in now 4.
This improves the response with low-mid jitters by about 50%.
2010-08-17 16:40:25 +02:00
Miroslav Lichvar
eeb73b3670
Fix updating of best_single_sample
2010-08-16 16:44:49 +02:00
Miroslav Lichvar
a3d47ffc81
Store sourcestats samples in circular buffer
...
The samples now don't have to be moved when pruning the register.
2010-08-10 16:39:52 +02:00
Miroslav Lichvar
d841c86a6e
Cleanup sourcestats code a bit
2010-08-10 15:35:17 +02:00
Miroslav Lichvar
7ba6b617a1
Remove weights from sourcestats record
...
Weights are calculated before each regression call, no need to store them.
2010-08-06 14:39:09 +02:00
Miroslav Lichvar
100f732e20
Remove SST_DoUpdateRegression
...
The function is not used anywhere and it requires weights to be stored
sourcestats.
2010-08-06 14:36:56 +02:00
Miroslav Lichvar
40d82675bd
Make use of UTI_AdjustTimeval in slew handlers
2010-05-07 18:52:05 +02:00
Miroslav Lichvar
e78e65ef22
Refactor file logging
2010-04-13 15:16:41 +02:00
Miroslav Lichvar
0f70959d8e
Add dispersion notification handlers
2010-02-16 18:51:37 +01:00
Miroslav Lichvar
b32432c232
Move estimated offset and error to sourcestats report
...
And print the estimated offset in sourcestats output.
2009-12-14 10:34:33 +01:00
Miroslav Lichvar
2dd9f3373b
Replace integer microseconds in reports with floating-point values
2009-12-13 15:00:10 +01:00
Miroslav Lichvar
5b1a8705cf
Remove resid_freq and resid_skew from source report
...
They were not printed and they are also in sourcestats report.
2009-12-13 11:07:45 +01:00
Miroslav Lichvar
0f9892fe7a
Fix printing refclocks and IPv6 sources in statistics log
2009-11-30 17:18:28 +01:00
Miroslav Lichvar
8e23110aec
Update COPYING and FSF address
2009-10-28 17:53:33 +01:00