3.1.3.1 Initialization Steps

The client initialization begins with the procedures described in [RFC1305] section 3.4.7.1, Initialization Procedure. It is followed by the initialization steps specified here.

  1. The LargePhaseOffset, HoldPeriod, SpikeWatchPeriod, TimeSourceType, NtpServer, SpecialPollInterval, ResolvePeerBackoffMinutes, and ResolvePeerBackoffMaxTimes elements SHOULD be initialized to the following values unless locally configured otherwise.<9>

    LargePhaseOffset: 50000000 (5 seconds)

    HoldPeriod: 5

    SpikeWatchPeriod: 900 (15 minutes)

    SpecialPollInterval: 3600 (1 hour)

    ResolvePeerMaxBackoffMinutes: 15

    ResolvePeerMaxBackoffMaxTimes: 7

  2. If the TimeSourceType element is set to "NoSync", the client MUST NOT select a time source, and protocol initialization is completed. No request is sent and the client remains unsynchronized.

  3. If the TimeSourceType element is set to "NTP", the client MUST select the first reachable time source from the NtpServer Abstract Data Model element. If the NtpServer element does not contain any time sources, the behavior is not constrained by protocol.

  4. If the TimeSourceType element is set to "NT5DS", the client MUST select a time source by using the Domain Time Source Selection Algorithm described in section 3.1.3.2.

    If a time source is returned, the client MUST execute the steps in section 3.1.9.

    If a time source cannot be found, the client MUST wait for ResolvePeerBackoffMinutes minutes and retry step 4. Every time a consecutive retry happens, the time to wait is doubled, up to ResolvePeerBackoffMaxTimes times. If consecutive retries continue to happen after ResolvePeerBackoffMaxTimes is reached, the time to wait is not doubled.

  5. If the TimeSourceType element is set to "AllSync", the client MUST attempt to locate a time source by using the Domain Time Source Selection Algorithm described in section 3.1.3.2.

    If a time source is returned, the client MUST execute the steps in section 3.1.9.

    If a domain controller (DC) time source cannot be found, the client MUST then select a time source from the NtpServer element. The client SHOULD set up a DC time source location retry timer to retry locating a domain controller time source.

  6. The client MUST initialize the client polling timer according to [RFC1305] section 3.4.7, regardless of which time source is selected.

  7. The client MAY set the sys.refid element to "VMTP".<10> If the sys.refid element is set to "VMTP", then:

    • The sys.stratum element SHOULD<11> be set to one greater than the stratum of its virtualization host.

    The sys.refid and sys.stratum elements are defined in [RFC1305] section 3.2.1, "Common Variables".

  8. If the sys.refid element is set to "LOCL" then:

    • The AnnounceFlags element MUST have either the Reliable_Timeserv_Announce_Yes flag set or the Reliable_Timeserv_Announce_Auto flag set.

    The sys.refid element is defined in [RFC1305] section 3.2.1, "Common Variables", and the sys.refid value "LOCL" is defined in [RFC2030] section 4 "NTP Message Format".