Network Time Protocol (version 1) specification and implementation
RFC 1059
Document | Type |
RFC - Unknown
(July 1988; No errata)
Obsoletes RFC 958
|
|
---|---|---|---|
Authors | |||
Last updated | 2013-03-02 | ||
Stream | Legacy | ||
Formats | plain text html pdf htmlized bibtex | ||
Stream | Legacy state | (None) | |
Consensus Boilerplate | Unknown | ||
RFC Editor Note | (None) | ||
IESG | IESG state | RFC 1059 (Unknown) | |
Telechat date | |||
Responsible AD | (None) | ||
Send notices to | (None) |
Network Working Group D. Mills Request for Comments: 1059 University of Delaware July 1988 Network Time Protocol (Version 1) Specification and Implementation Status of this Memo This memo describes the Network Time Protocol (NTP), specifies its formal structure and summarizes information useful for its implementation. NTP provides the mechanisms to synchronize time and coordinate time distribution in a large, diverse internet operating at rates from mundane to lightwave. It uses a returnable-time design in which a distributed subnet of time servers operating in a self- organizing, hierarchical master-slave configuration synchronizes logical clocks within the subnet and to national time standards via wire or radio. The servers can also redistribute reference time via local routing algorithms and time daemons. The NTP architectures, algorithms and protocols which have evolved over several years of implementation and refinement are described in this document. The prototype system, which has been in regular operation in the Internet for the last two years, is described in an Appendix along with performance data which shows that timekeeping accuracy throughout most portions of the Internet can be ordinarily maintained to within a few tens of milliseconds, even in cases of failure or disruption of clocks, time servers or nets. This is a Draft Standard for an Elective protocol. Distribution of this memo is unlimited. Table of Contents 1. Introduction 3 1.1. Related Technology 4 2. System Architecture 6 2.1. Implementation Model 7 2.2. Network Configurations 9 2.3. Time Scales 10 3. Network Time Protocol 12 3.1. Data Formats 12 3.2. State Variables and Parameters 13 3.2.1. Common Variables 15 3.2.2. System Variables 17 3.2.3. Peer Variables 18 3.2.4. Packet Variables 19 3.2.5. Clock Filter Variables 19 3.2.6. Parameters 20 Mills [Page 1] RFC 1059 Network Time Protocol July 1988 3.3. Modes of Operation 21 3.4. Event Processing 22 3.4.1. Timeout Procedure 23 3.4.2. Receive Procedure 24 3.4.3. Update Procedure 27 3.4.4. Initialization Procedures 29 4. Filtering and Selection Algorithms 29 4.1. Clock Filter Algorithm 29 4.2 Clock Selection Algorithm 30 4.3. Variable-Rate Polling 32 5. Logical Clocks 33 5.1. Uniform Phase Adjustments 35 5.2. Nonuniform Phase Adjustments 36 5.3. Maintaining Date and Time 37 5.4. Calculating Estimates 37 6. References 40 Appendices Appendix A. UDP Header Format 43 Appendix B. NTP Data Format 44 Appendix C. Timeteller Experiments 47 Appendix D. Evaluation of Filtering Algorithms 49 Appendix E. NTP Synchronization Networks 56 List of Figures Figure 2.1. Implementation Model 8 Figure 3.1. Calculating Delay and Offset 26 Figure 5.1. Clock Registers 34 Figure D.1. Calculating Delay and Offset 50 Figure E.1. Primary Service Network 57 List of Tables Table 2.1. Dates of Leap-Second Insertion 11 Table 3.1. System Variables 14Show full document text