Visual RFC.
ALL RFCs / RFC 5905
Read the RFC ↗
RFC 5905 / CHOOSING GOOD TIME

Select, cluster, combine

07

The system process compares candidate time intervals, removes inconsistent sources, and combines survivors.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

RFC 5905 · § 11.2EXAMPLE
3 / 3
Select, cluster, combineThree overlapping peer correctness intervals and one far outlier illustrate selection. The outlier is excluded before survivor offsets are combined.Compare clocks with uncertainty intervalsIllustrative estimates in millisecondsPeer APeer BPeer COutlierCombine surviving offsets, weighted by distanceCombine the surviving qualified estimates
03
Combine the remaining estimates.

The output carries an offset and jitter estimate for clock discipline.

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
KEY POINT

Agreement and uncertainty matter together.

  • Selection seeks a consistent intersection among candidate correctness intervals and can fail when no suitable group exists.
  • Clustering prunes statistical outliers while respecting survivor limits.
  • Combining weights surviving offsets by reciprocal root synchronization distance.
DETAILS

More sources can improve resilience only if their failures are sufficiently independent. The algorithm does not magically turn a common wrong upstream source into trustworthy time.

Read the RFC section ↗

Diagrams simplify the RFC. Read the linked sections for complete requirements.

Privacy
All chapters in this RFC
  1. A hierarchy of clocks
  2. Modes & associations
  3. Four timestamps
  4. Offset & round-trip delay
  5. Packets & sanity checks
  6. Filter noisy samples
  7. Select, cluster, combine
  8. Discipline & poll control
  9. Eras, leap indicators & KoD
  10. Authentication & later updates

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗