Change the default for ntpd back to -s, the bug which triggered this
[dragonfly.git] / contrib / ntp / html / index.htm
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
2 <html>
3 <head>
4 <meta name="generator" content="HTML Tidy, see www.w3.org">
5 <title>The Network Time Protocol (NTP) Distribution</title>
6 </head>
7 <body>
8 <h3>The Network Time Protocol (NTP) Distribution</h3>
9
10 <img align="left" src="pic/barnstable.gif" alt="gif"><a href=
11 "http://www.eecis.udel.edu/~mills/pictures.htm"><i>P.T. Bridgeport
12 Bear</i>; from <i>Pogo</i>, Walt Kelly</a> 
13
14 <p>Pleased to meet you.<br clear="left">
15 </p>
16
17 <hr>
18 <h4>Introduction</h4>
19
20 Note: The software contained in this distribution is available
21 without charge under the conditions set forth in the <a href=
22 "copyright.htm">Copyright Notice</a>. 
23
24 <p>The Network Time Protocol (NTP) is used to synchronize the time
25 of a computer client or server to another server or reference time
26 source, such as a radio or satellite receiver or modem. It provides
27 accuracies typically within a millisecond on LANs and up to a few
28 tens of milliseconds on WANs relative to Coordinated Universal Time
29 (UTC) via a Global Positioning Service (GPS) receiver, for example.
30 Typical NTP configurations utilize multiple redundant servers and
31 diverse network paths in order to achieve high accuracy and
32 reliability. Some configurations include cryptographic
33 authentication to prevent accidental or malicious protocol attacks
34 and some provide automatic server discovery using IP multicast.</p>
35
36 <p>Background information on computer network time synchronization
37 can be found on the <a href="exec.htm">Executive Summary - Computer
38 Network Time Synchronization</a> page. Discussion on protocol
39 conformance issues and interoperability with previous NTP versions
40 can be found in the <a href="biblio.htm">Protocol Conformance
41 Statement</a> page. Discussion on how NTP reckons the time can be
42 found in the <a href="leap.htm">NTP Timescale and Leap Seconds</a>
43 page. Background information, bibliography and briefing slides
44 suitable for presentations can be found in the <a href=
45 "http://www.eecis.udel.edu/~mills/ntp.htm">Network Time
46 Synchronization Project</a> page. Additional information can be
47 found at the NTP web site <a href="http://www.ntp.org">
48 www.ntp.org</a>. Please send bug reports to <a href=
49 "mailto:bugs@mail.ntp.org">&lt;bugs@mail.ntp.org&gt;</a>.</p>
50
51 <h4>Building and Installing NTP</h4>
52
53 NTP supports Unix and Windows (NT4 and 2000) systems. The <a href=
54 "build.htm">Building and Installing the Distribution</a> page
55 presents an overview of the procedures for compiling the
56 distribution and installing it on a typical client or server. The
57 build procedures inspect the system hardware and software
58 environment and automatically select the appropriate options for
59 that environment. While these procedures work with most computers
60 and operating systems marketed today, exceptions requiring manual
61 intervention do exist, as documented in the <a href="config.htm">
62 Configuration Options</a> and <a href="release.htm">Release
63 Notes</a> pages. Note that support for strong cryptography requires
64 cryptographic libraries not included in this distribution. 
65
66 <p>Bringing up a NTP primary server requires a radio or satellite
67 receiver or modem. It is also possible to configure a machine on an
68 isolated network with the local clock driver and have other
69 machines synchronize to it. The distribution includes hardware
70 drivers for the local clock and over three dozen radio clocks and
71 modem services. A list of supported drivers is given in the <a
72 href="refclock.htm">Reference Clock Drivers</a> page. For most
73 popular workstations marketed by Digital/Compaq, Sun and Hewlett
74 Packard, as well as widely available Unix clones such as FreeBSD
75 and Linux, the automatic build procedures select all drivers that
76 run on the target machine. While this increases the size of the
77 executable binary somewhat, individual drivers can be included or
78 excluded using the configure utility documented in the
79 Configuration Options page.</p>
80
81 <h4>Configuring Clients and Servers</h4>
82
83 <p>NTP is by its very nature a complex distributed network
84 application and can be configured and used for a great many widely
85 divergent timekeeping scenarios. The documentation presented on
86 these pages attempts to cover the entire suite of configuration,
87 operation and maintenance facilities which this distribution
88 supports. However, most applications will need only a few of these
89 facilities. If this is the case, the <a href="quick.htm">Quick
90 Start</a> page may be useful to get a simple workstation on the air
91 with an existing server.</p>
92
93 <p>However, in order to participate in the existing NTP
94 synchronization subnet and obtain accurate, reliable time, it is
95 usually necessary to construct an appropriate configuration file,
96 commonly called <tt>ntp.conf</tt>, which establishes the servers
97 and/or external receivers or modems to be used by this particular
98 machine. Directions for constructing this file are in the <a href=
99 "notes.htm">Notes on Configuring NTP and Setting up a NTP
100 Subnet</a> page. However, in many common cases involving simple
101 network topologies and workstations, the configuration data can be
102 specified entirely on the command line for the <a href="ntpd.htm">
103 <tt>ntpd</tt> - Network Time Protocol (NTP) daemon</a>.</p>
104
105 <p>The most important factor in providing accurate, reliable time
106 is the selection of modes and servers to be used in the
107 configuration file. A discussion on the available modes is on the
108 <a href="assoc.htm">Association Management</a> page. NTP support
109 for one or more computers is normally engineered as part of the
110 existing NTP synchronization subnet. The existing NTP subnet
111 consists of a multiply redundant hierarchy of servers and clients,
112 with each level in the hierarchy identified by stratum number.
113 Primary servers operate at stratum one and provide synchronization
114 to secondary servers operating at stratum two and so on to higher
115 strata. In this hierarchy, clients are simply servers that have no
116 dependents.</p>
117
118 <p>The NTP subnet in late 2000 includes over a hundred public
119 primary (stratum 1) servers synchronized directly to UTC by radio,
120 satellite or modem and located in every continent of the globe,
121 including Antarctica. Normally, client workstations and servers
122 with a relatively small number of clients do not synchronize to
123 primary servers. There are over a hundred public secondary (stratum
124 2) servers synchronized to the primary servers and providing
125 synchronization to a total in excess of 100,000 clients and servers
126 in the Internet. The current lists are maintained in the <a href=
127 "http://www.eecis.udel.edu/~mills/ntp/index.htm">Information on
128 Time and Frequency Services</a> page, which is updated frequently.
129 There are numerous private primary and secondary servers not
130 normally available to the public as well. You are strongly
131 discouraged from using these servers, since they sometimes hide in
132 little ghettos behind dinky links to the outside world and your
133 traffic can bring up expensive ISDN lines, causing much grief and
134 frustration.</p>
135
136 <h4>Resolving Problems</h4>
137
138 Like other things Internet, the NTP synchronization subnets tend to
139 be large and devilishly intricate, with many opportunities for
140 misconfiguration and network problems. The NTP engineering model is
141 specifically designed to help isolate and repair such problems
142 using an integrated management protocol, together with a suite of
143 monitoring and debugging tools. There is an optional data recording
144 facility which can be used to record normal and aberrant operation,
145 log problems to the system log facility, and retain records of
146 client access. The <a href="debug.htm">NTP Debugging Techniques</a>
147 and <a href="hints.htm">Hints and Kinks</a> pages contain useful
148 information for identifying problems and devising solutions. 
149
150 <p>Users are requested to report bugs, offer suggestions and
151 contribute additions to this distribution. The <a href=
152 "patches.htm">Patching Procedures</a> page suggests procedures
153 which greatly simplify distribution updates, while the <a href=
154 "porting.htm">Porting Hints</a> page suggest ways to make porting
155 this code to new hardware and operating systems easier. Additional
156 information on reference clock driver construction and debugging
157 can be found in the <a href="refclock.htm">Reference Clock
158 Drivers</a> page. Further information on NTP in the Internet can be
159 found in the <a href="http://www.eecis.udel.edu/~ntp">NTP web
160 page</a>.</p>
161
162 <h4>Program Manual Pages</h4>
163
164 <ul>
165 <li><a href="ntpd.htm"><tt>ntpd</tt> - Network Time Protocol (NTP)
166 daemon</a></li>
167
168 <li><a href="ntpq.htm"><tt>ntpq</tt> - standard NTP query
169 program</a></li>
170
171 <li><a href="ntpdc.htm"><tt>ntpdc</tt> - special NTP query
172 program</a></li>
173
174 <li><a href="ntpdate.htm"><tt>ntpdate</tt> - set the date and time
175 via NTP</a></li>
176
177 <li><a href="ntptrace.htm"><tt>ntptrace</tt> - trace a chain of NTP
178 servers back to the primary source</a></li>
179
180 <li><a href="tickadj.htm"><tt>tickadj</tt> - set time-related
181 kernel variables</a></li>
182
183 <li><a href="ntptime.htm"><tt>ntptime</tt> - read kernel time
184 variables</a></li>
185
186 <li><a href="genkeys.htm"><tt>ntp-genkeys</tt> - generate public
187 and private keys</a></li>
188 </ul>
189
190 <h4>Supporting Documentation</h4>
191
192 <ul>
193 <li><a href="http://www.eecis.udel.edu/~mills/ntp.htm">NTP Project
194 and Reference Library</a></li>
195
196 <li><a href="copyright.htm">Copyright Notice</a></li>
197
198 <li><a href="exec.htm">Executive Summary - Computer Network Time
199 Synchronization</a></li>
200
201 <li><a href="biblio.htm">Protocol Conformance Statement</a></li>
202
203 <li><a href="leap.htm">NTP Timescale and Leap Seconds</a></li>
204
205 <li><a href="notes.htm">Notes on Configuring NTP and Setting up a
206 NTP Subnet</a></li>
207
208 <li><a href="release.htm">NTP Version 4 Release Notes</a></li>
209
210 <li><a href="build.htm">Building and Installing the
211 Distribution</a></li>
212
213 <li><a href="config.htm">Configuration Options</a></li>
214
215 <li><a href="debug.htm">NTP Debugging Techniques</a></li>
216
217 <li><a href="refclock.htm">Reference Clock Drivers</a></li>
218
219 <li><a href="patches.htm">Patching Procedures</a></li>
220
221 <li><a href="hints.htm">Hints and Kinks</a></li>
222
223 <li><a href="porting.htm">Porting Hints</a></li>
224 </ul>
225
226 <h4>Application Notes</h4>
227
228 <ul>
229 <li><a href="prefer.htm">Mitigation Rules and the <tt>prefer</tt>
230 Keyword</a></li>
231
232 <li><a href="assoc.htm">Association Management</a></li>
233
234 <li><a href="pps.htm">Pulse-per-second (PPS) Signal
235 Interfacing</a></li>
236
237 <li><a href="gadget.htm">Gadget Box PPS Level Converter and CHU
238 Modem</a></li>
239
240 <li><a href="measure.htm">Time and Time Interval Measurement with
241 Application to Computer and Network Performance Evaluation</a></li>
242
243 <li><a href="kern.htm">Kernel Model for Precision
244 Timekeeping</a></li>
245
246 <li><a href="kernpps.htm">Kernel Programming Interface for
247 Precision Time Signals</a></li>
248 </ul>
249
250 <hr>
251 <center><img src="pic/pogo1a.gif" alt="gif"></center>
252
253 <br>
254 <a href="index.htm"><img align="left" src="pic/home.gif" alt=
255 "gif"></a> 
256
257 <address><a href="mailto:mills@udel.edu">David L. Mills
258 &lt;mills@udel.edu&gt;</a></address>
259 </body>
260 </html>
261