![Page 1: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/1.jpg)
RemoteServers
Server 1
Server 2
Peer/Poll1
Server 3
Peer/Poll2
Peer/Poll3
Selectionand
ClusteringAlgorithms
CombiningAlgorithm
Loop Filter
VFO
Clock Discipline Process
SystemProcess
Peer/PollProcesses
Clock Adjust Process
Figure 1. Implementation Model
![Page 2: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/2.jpg)
Timestamp Fraction
NTP Timestamp Format
0 31 32 63
Timestamp Fraction
NTP Date Format
0 63 64 127
Era
31 32
Figure 2. NTP Time Formats
Seconds Fraction
NTP Short Format
0 15 16 31
![Page 3: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/3.jpg)
0
0.
0
0
t2 = clock
t3
t4
t5.t1
t5
t6
t7
org
rec
t3
t4
T3 ≠ t3?
t8
t5
t6
T3 ≠ t1?
t6
org
rec
t1
t2
t1
t2
t4
t3.
t2 t6
t5.
t1
0
0 t1
t2
t3.
T3 ≠ 0?
t4
t4
t3t2
t1 t5
t6
t8
t7
t4
t2 t3 t6 t7
t8
t6 = clock
t1= clock t5 = clock
t4 = clock t8 = clock
t3 = clock t7 = clock
t1
t5
PacketVariables
Peer B
StateVariables
PacketVariables
Peer A
StateVariables
T1
T3
T2
T4
T1
T3
T2
T4
t7T1 = t3?xmt t30
t1xmt t5 T1 = t5?T1 = t1?
Figure 3. On-Wire Protocol
![Page 4: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/4.jpg)
mode = 3? yes client_packet
Figure 4. Receive Processing
yes
yes
auth OK?
format OK?
access OK?
receive()
no access deny
no format error
match_assoc
no auth erroryes
no
![Page 5: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/5.jpg)
Packet Variable Variablex.leap ← s.leapx.version ← r.versionx.mode ← 4x.stratum ← s.stratumx.poll ← r.pollx.precision ← s.precisionx.rootdelay ← s.rootdelay
x.rootdisp ← s.rootdisp x.refid ← s.refidx.reftime ← s.reftimex.org ← r.xmt x.rec ← r.dstx.xmt ← clockx.keyid ← r.keyidx.digest ← md5 digest
Figure 5. Client Packet Processing
client_packet
copy header
MD5 digest
fast_xmit()
xmt = T3
copy T1,T2
T3 = clock
auth OK?
NAK digest
yes no
return
![Page 6: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/6.jpg)
yesT3 = xmt?no
duplicate
T1 = 0? orT2 = 0?
T1 = xmt?
yes
no
mode = 5?
packet
T3 = 0? yes format error
no
auth error
yes
no
yes
yes
noauth = NAK?
org = T3
rec = T4
match_assoc
no
return
org = T3
rec = T4
Figure 6. Timestamp Processing
![Page 7: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/7.jpg)
Peer PacketVariables Variablesp.leap ← r.leapp.mode ← r.modep.stratum ← r.stratump.ppoll ← r.ppoll p.rootdelay ← r.rootdelayp.rootdisp ← r.rootdispp.refid ← r.refidp.reftime ← r.reftime
Figure 7. Packet Processing
okheader?
packet
bad header error
)]()[(θ 431221 TTTT
)()(δ 2314 TTTT
4 1ε ρ ρ ( )R T T
clock_filter
poll_update()
copy header
reach |= 1
![Page 8: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/8.jpg)
no
Copy filter to a temporary list. Sort the list by increasing Let i, i, i, ti
be the ith entry on the sorted list.
Shift sample t into filter shift register
clock_filter
1 20
i
(θ θ )7 i
1
εε2
i
ii
0δ δ0θ θ
yest0 > t
clock_select()
Figure 8. Clock Filter Algorithm
0t t
return
![Page 9: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/9.jpg)
no
clock_select()
find majority clique
clustering algorithm
accept()?scan
candidatesyes
add peer
return(SYNC)
n < CMIN?
survivors?no
yes
nos.p = v0.p
return(UNSYNC)
yes
s.p = NULL
Figure 9. clock_select() Routine
selection algorthm
![Page 10: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/10.jpg)
no
Set the number of midpoints d = 0. Set c = 0. Scan from lowest endpoint to highest. Add one to c for every lowpoint, subtract one for every highpoint, add one to d for every midpoint. If c ≥ m f, stop; set l = current lowpoint
Set c = 0. Scan from highest endpoint to lowest. Add one to c for every highpoint, subtract one for every lowpoint, add one to d for every midpoint.
If c ≥ m f, stop; set u = current highpoint.
Add one to f. Is f < m / 2?
Select the lowpoint, midpoint and highpoint of these intervals. Sort these values in a list from lowest to highest. Set the number of falsetickers f = 0.
Failure; a majority clique could not be found..
Success; the intersection interval is [l, u].
yes
For each of m acceptable associations construct a correctness interval [ – , + ]
If d ≤ f and l < u?
no
yes
Figure 10. Selection Algorithm
![Page 11: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/11.jpg)
no
all no
noreturn(NO)
accept()
reach = 0?
yesrefid = addr?
leap = 11?stratum >=
MAXSTRAT?
yes
any yes server not synchronized
root distance exceeded
server/client sync loop
root_dist() >= MAXDIST?
Figure 11. accept() Routine
no
return(YES)
yes server not reachable
![Page 12: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/12.jpg)
For each candidate s, compute the selection jitter s (RMS peer offset differences between s and all other candidates).
Select max as the candidate with maximum s.
Delete the outlyer candidate with max; reduce n by one.
Done. The remaining cluster survivors are the pick of the litter. The survivors are in the v structure sorted by .
no
yes
Let (, , ) represent a candidate peer with offset jitter and a weight factor = stratum MAXDIST + .
Select min as the candidate with minimum .
Save the candidates in the v structure sorted by increasing . Let n be the number of candidates.
max < min or n ≤ NMIN?
Figure 12. Clustering Algorithm
![Page 13: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/13.jpg)
yw /yz /
return
done
scancluster
survivors
y = z = w = 0
x = rootdist()
20(θ θ )iw
xz i /θxy /1
clock_combine()
Variable Process Description system combined clock offsetp system combined jitter0 survivor list first survivor offset survivor list ith survivor offsetx, y, z, w temporaries
Figure 13. clock_combine() Routine
Variables and Parameters
![Page 14: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/14.jpg)
ADJ
local_clock()
clock_update()
yes
no . .p t s t
. .s t p t
PANIC
clear all associations
STEP
*update system
variables
panic exit
IGNOR
return
System System PeerVariables Variablesleap ← leapstratum ← stratum + 1refid ← refidreftime ← reftime ← R + ← ER + + + + ||
leap = 3stratum = MAXSTRAT
*Update System Variables
Figure 14. clock_update() Routine
![Page 15: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/15.jpg)
12 2 1 3 4θ [( ) ( )]T T T T
4 1 3 2δ ( ) ( )T T T T
4 1ε ρ ρ ( )R T T
)θcombine(Θ j
δΔΔ R
Ε Ε ε θR
Peer VariablesClient
System Variables
1 20(θ θ )
1 jSjm
2 2p s
R
R
Server
1 20(θ θ )
1 iin
ρR
Figure 15. System Variables Processing
![Page 16: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/16.jpg)
Figure 16. Clock Discipline Algorithm
Vd
Vc Phase/freqPrediction
Clock Filter
ClockAdjust
PhaseDetector
VFO
Vs
r +
c NTP
Loop Filter
x
y
![Page 17: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/17.jpg)
yPLL PLLPredict
Vs
x PhaseCorrect
y
yFLL FLLPredict
Figure 17. PLL/FLL Prediction Functions
![Page 18: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/18.jpg)
no
yesno
no
yes
2θ
μB Rfreq
| > PANICT?
SYNC
return(PANIC)
local_ clock()
|| > STEPT? FREQSPIK
yesstate = SPIK
< WATCH
FREQSPIKSYNC
return(rval)
yes
rval = ADJ
FSETNSET
NSETFSET
state = NSET?
R =
no
step_time (rval = STEP
rst(new, off)
Figure 18. local_clock() Routine (1 of 2)
freq = 0rval = IGNOR
Calculate new freq adjustment from and using hybrid
PLL and FLL.
no < WATCH
FREQ?yes
state = newB = off R
R = off
tc
return
yes
return(rval)
rst(SYNC, 0)
rst(FREQ, 0)
rst(FREQ, 0)
no
R =
μB Rfreq
![Page 19: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/19.jpg)
2
yes R> PGATE
count +=
count LIMIT?
count = 0
no
yes
count = 2
++
< MAXPOLL
count LIMIT?
count = yes
> MINPOLL
nono
no noyes yes
return(rval)
tc
+= freq
state = SYNC
Figure 19. local_clock() Routine (2 of 2)
![Page 20: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/20.jpg)
clock_adjust()
R = tmp
next < timer?
+=
adjust_time ( + tmp)
Figure 20. clock_adjust() Routine
Rtmp
TC
poll()
return
noyes
![Page 21: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/21.jpg)
Figure 21. poll() Routine
yes
yes
yes
no
no
unreach++
hpoll++
burst = 0?
unreach < UNREACH?
reach = 0?
reach & 0x7 = 0?
clock_filter(0, 0, ∞, t)
burst
peer_xmit()
reach <<= 1last = timer
BURST &
accept()?
burst = BCOUNT
IBURST &
unreach = 0?
unreach = 0hpoll =
poll()
nono
noyes
no
poll_update()
mode = 6?
mode= 5?yes
yes
no
yes
return
no
yes
![Page 22: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/22.jpg)
Packet Variable Variablex.leap ← s.leapx.version ← VERSION
x.mode ← p.modex.stratum ← s.stratumx.poll ← p.hpollx.precision ← s.precx.rootdelay ← s.rootdelay
x.rootdisp ← s.rootdisp x.refid ← s.refidx.reftime ← s.reftimex.org ← p.org x.rec ← p.rec x.xmt ← clockx.keyid ← p.keyidx.digest ← md5()
Figure 22. transmit() Routine
peer_xmit()
copy header
MD5()
xmit_packet()
return
copy T1,T2
T3 = get_clock()
xmt = T3
![Page 23: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/23.jpg)
next = last + (1 << poll)
poll_update()
Figure 23. poll_update Routine
return
burst > 0
next += 2
yesno
hpoll = min[MAXPOLL, max(MINPOLL, hpoll)]
poll = min[hpoll, max(MINPOLL, ppoll)] next = last
yesno
![Page 24: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/24.jpg)
Stratum PollLI ModeVN
Root Delay
Root Dispersion
Reference Identifier
Reference Timestamp (64)
Originate Timestamp (64)
Receive Timestamp (64)
Transmit Timestamp (64)
Message Digest (128)
Key Identifier
Cryptosum
MAC(Optional)
Extension Field 1 (optional)
Extension Field 2… (optional)
Precision
Figure 24. NTP Header Format
0 2 5 8 16 24 31
![Page 25: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/25.jpg)
Code Length
Association ID
Signature Length
Timestamp
Filestamp
Value Length
Value Fields (optional)
Figure 25. NTP Extension Field Format
0 2 8 16 31
RE VN
Value (optional)
Padding (zeros)
Signature (optional)
Padding (zeros)
![Page 26: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/26.jpg)
Table 1. Association and Packet Modes
Association Mode Assoc. Mode Packet ModeSymmetric Active 1 1 or 2Symmetric Passive 2 1Client 3 4Server 4 3Broadcast Server 5 5 5Broadcast Client 6 na
![Page 27: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/27.jpg)
Year MJD NTP Date NTP Era NTP Timestamp Epoch1 Jan -4712 2,400,001 208,657,814,400 49 1,795,583,104 First day Julian Era1 Jan -1 679,306 59,989,766,400 14 139,775,744 2 BCE1 Jan 0 678,941 59,958,230,400 14 171,311,744 1 BCE1 Jan 1 678,575 59,926,608,000 14 202,934,144 1 CE4 Oct 1582 100,851 10,011,254,400 3 2,873,647,488 Last day of Julian Calendar15 Oct 1582 100,840 10,010,304,000 3 2,874,597,888 First day Gregorian Calendar31 Dec 1899 15,019 86,400 1 4,294,880,896 Last day NTP Era 11 Jan 1900 15,020 0 0 0 First day NTP Era 01 Jan 1970 40,587 2,208,988,800 0 2,208,988,800 First day Unix1 Jan 1972 41,317 2,272,060,800 0 2,272,060,800 First day UTC31 Dec 1999 51,543 3,155,587,200 0 3,155,587,200 Last day 20th century1 Jan 2000 51,544 3,155,673,600 0 3,155,673,600 First day 21st century7 Feb 2036 64,730 4,294,944,000 0 4,294,944,000 Last day NTP Era 08 Feb 2036 64,731 4,295,030,400 1 63,104 First day NTP Era 116 Mar 2172 114,441 8,589,974,400 2 39,808 First day NTP Era 21 Jan 2500 234,166 18,934,214,400 4 1,754,345,216 2500 CE1 Jan 3000 416,787 34,712,668,800 8 352,930,432 3000 CE
Table 2. Interesting Historic NTP Dates
![Page 28: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/28.jpg)
Table 3. Name Prefix Conventions
Name Description r. receive packet header variablex. transmit packet header variablep. peer/poll variables. system variablec. clock discipline variable
![Page 29: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/29.jpg)
Table 4. Global Parameters
Name Value Description PORT 123 NTP port numberVERSION 4 version numberTOLERANCE 15e-6 frequency tolerance () (s/s)MINPOLL 4 minimum poll exponent (16 s)MAXPOLL 17 maximum poll exponent (36 h)MAXDISP 16 maximum dispersion (s)MINDISP .005 minimum dispersion increment (s)MAXDIST 1 distance threshold (s)MAXSTRAT 16 maximum stratum number
![Page 30: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/30.jpg)
Name Formula Description leap leap leap indicator (LI)version version version number (VN)mode mode modestratum stratum stratumpoll poll poll exponentprecision R precision exponentrootdelay R root delayrootdisp R root dispersionrefid refid reference IDreftime reftime reference timestamporg T1 origin timestamp rec T2 receive timestamp xmt T3 transmit timestampdst T4 destination timestampkeyid keyid key IDdigest digest message digest
Table 5. Packet Header Variables
![Page 31: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/31.jpg)
Name Formula DescriptionConfiguration Variablessrcaddr srcaddr source addresssrcport srcport source portdstaddr dstaddr destination addressdstport destport destination portkeyid keyid key identifier key IDPacket Variablesleap leap leap indicatorversion version version numbermode mode modestratum stratum stratumppoll ppoll peer poll exponentrootdelay R root delayrootdisp R root dispersionrefid refid reference IDreftime reftime reference timestampTimestamp Variablest t epochorg T1 origin timestamprec T2 receive timestampxmt T3 transmit timestampStatistics Variablesoffset clock offsetdelay roundtrip delaydisp dispersionjitter jitter
Table 6. Peer Variables
![Page 32: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/32.jpg)
Table 7. Packet Error Checks
1 duplicate packet The packet is at best an old duplicate or at worst a replay by a hacker. This can happen in symmetric modes if the poll intervals are uneven.
2 bogus packet The packet is not a reply to the most recent packet sent. This can happen in symmetric modes if the poll intervals are uneven.
3 invalid One or more timestamp fields are invalid. This normally happens in symmetric modes when one peer sends the first packet to the other and before the other has received its first reply.
4 access denied The access controls have blacklisted the source address.5 authentication failure The cryptographic message digest does not match the MAC.6 unsynchronized The server is not synchronized to a valid source.7 bad header data One or more header fields are invalid.8 autokey error Public key cryptography has failed to authenticate the packet.9 crypto error Mismatched or missing cryptographic keys or certificates.
![Page 33: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/33.jpg)
Name Formula Descriptiont t epochleap leap leap indicatorstratum stratum stratumprecision precisionp p system peer pointeroffsetcombined offsetjittercombined jitterrootdelay root delayrootdisp root dispersionrefid refid reference IDreftime reftime reference timeNMIN 3 minimum survivorsCMIN 1 minimum candidates
Table 8. System Process Variables and Parameters
![Page 34: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/34.jpg)
Table 9. Clock Discipline Variables and Parameters
Name Formula Descriptionttimerseconds counteroffset combined offsetresid R residual offsetfreq clock frequencyjitter clock jitterwander frequency wandertc time constant (log2)state state stateadj adj frequency adjustmentcount count hysteresis counterSTEPT 125 step thresh (.125 s)WATCH 900 stepout thresh (s)PANICT 1000 panic thresh. (1000 s) LIMIT 30 hysteresis limitPGATE 4 hysteresis gate TC 16 time constant scaleAVG 8 averaging constant
![Page 35: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/35.jpg)
State < STEP STEP CommentsNSET FREQ, adj. time FREQ, step time Frequency never set.
FSET SYNC, adj. time SYNC, step time Frequency set from file.
SPIK SYNC, adj. freq, adj. time if < WATCH, SPIK Outlyer found.else step time
FREQ if < WATCH, FREQ ifWATCH,FREQ Frequency measurement.else step freq, adj. time else SYNCstep freq,
step time
SYNC SYNC, adj freq, adj. time SPIK Normal operation.
Table 10. Clock Discipline State Transition Table
![Page 36: Remote Servers Server 1 Server 2 Peer/Poll 1 Server 3 Peer/Poll 2 Peer/Poll 3 Selection and Clustering Algorithms Combining Algorithm Loop Filter VFO Clock](https://reader035.vdocuments.mx/reader035/viewer/2022081603/56649f155503460f94c2afd1/html5/thumbnails/36.jpg)
Name Formula Descriptionhpoll hpoll host poll exponentlast last last poll timenext next next poll timereach reach reach registerunreach unreach unreach counterUNREACH 24 unreach limit BCOUNT 8 burst countBURST flag burst enableIBURST flag iburst enable
Table 11. Poll Process Variables and Parameters