+* Clean up last-update timestamps of html/*.html files.
(4.2.7p432) 2014/03/09 Released by Harlan Stenn <stenn@ntp.org>
* CID 711660: Do a non-NULL pointer assertion check a bit earlier.
(4.2.7p431) 2014/03/05 Released by Harlan Stenn <stenn@ntp.org>
Walt Kelly</a>
<p>The chicken is getting configuration advice.</p>
<p>
- <EM>Modified: 31-Jan-2014</EM>
+ <EM>Modified: 11-Oct-2010</EM>
</p>
<br clear="left">
<h4>Related Links</h4>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>Copyright Notice</title>
+<!-- Changed by: Harlan Stenn, 10-Mar-2014 -->
<link href="scripts/style.css" type="text/css" rel="stylesheet">
</head>
<body>
<h3>Copyright Notice</h3>
<img src="pic/sheepb.jpg" alt="jpg" align="left"> "Clone me," says Dolly sheepishly.
-<p>Last update:
- <!-- #BeginDate format:En2m -->29-Nov-2012 16:42<!-- #EndDate -->
- UTC</p>
+<p>
+<EM>Modified: 10-Mar-2014</EM>
+</p>
<br clear="left">
</p>
<hr>
<pre>
***********************************************************************
* *
-* Copyright (c) University of Delaware 1992-2013 *
+* Copyright (c) University of Delaware 1992-2014 *
* *
* Permission to use, copy, modify, and distribute this software and *
* its documentation for any purpose with or without fee is hereby *
</head>
<body>
<h3>Clock Discipline Algorithm</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->19-Apr-2012 17:30<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<h4>Table of Contents</h4>
<ul>
<li class="inline"><a href="#intro">General Overview</a></li>
<h3>Automatic Server Discovery Schemes</h3>
<img src="pic/alice51.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>Alice's Adventures in Wonderland</i>, Lewis Carroll</a>
<p>Make sure who your friends are.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->27-Oct-2011 20:21<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 31-Oct-2011</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/hand.txt"></script>
</head>
<body>
<h3>External Clock Discipline and the Local Clock Driver</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->03-Sep-2010 21:49<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Sep-2011</EM>
+</p>
<hr>
<p>The NTPv4 implementation includes provisions for an external clock, where
the system clock is implemented by some external hardware device.
</head>
<body>
<h3>Clock Filter Algorithm</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->14-Jun-2012 18:02<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<hr>
<p>The clock filter algorithm processes the offset and delay samples produced by the on-wire protocol for each peer process separately. It uses a sliding window of eight samples and picks out the sample with the least expected error. This page describes the algorithm design principles along with an example of typical performance.</p>
<div align="center"><img src="pic/flt5.gif" alt="gif">
<h3>Hints and Kinks</h3>
<img src="pic/alice35.gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html"> from <i>Alice's Adventures in Wonderland</i>, Lewis Carroll</a>
<p>Mother in law has all the answers.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->03-Sep-2010 21:56<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Sep-2011</EM>
+</p>
<br clear="left">
<hr>
<p>This is an index for a set of troubleshooting notes contained in individual text files in the <tt>./hints</tt> directory. They were supplied by various volunteers in the form of mail messages, patches or just plain word of mouth. Each note applies to a specific computer and operating system and gives information found useful in setting up the NTP distribution or site configuration. The notes are very informal and subject to errors; no attempt has been made to verify the accuracy of the information contained in them.</p>
</head>
<body>
<h3>Historical Notes</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->05-Aug-2011 20:22<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 03-Oct-2011</EM>
+</p>
<hr>
<h4>Historical Notes on NTP Upgrades</h4>
<p>This is an interim report on recent upgrades to the NTPv4 reference implementation code base and documentation. This report documents the upgrade program, which began in June 2007 and continued until March 2008. It is very important to recognize that this historic document describes the upgrade status as of 2008. Additional upgrades have been implemented since then. As of mid 2011, the additional upgrades are documented on the <a href="release.html">NTP Version 4 Release Notes</a> page.</p>
<h3>How to Write a Reference Clock Driver</h3>
<img src="pic/pogo4.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>Pogo</i>, Walt Kelly</a>
<p>You need a little magic.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->03-Sep-2010 1:37<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Sep-2010</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/misc.txt"></script>
</head>
<body>
<h3>The Huff-n'-Puff Filter</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->13-Oct-2011 19:21<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<hr>
<p>In scenarios where a considerable amount of data are downloaded or uploaded using DSL or telephone modem lines, timekeeping quality can be seriously degraded. This occurs because the traffic volume, and thus the queuing delays, on the upload and download directions of transmission can be very different. In many cases the apparent time errors are so large as to exceed the step threshold and a step correction can occur during and after the data transfer.</p>
<p>The huff-n'-puff filter is designed to correct the apparent time offset in these cases. It depends on knowledge of the propagation delay when no other traffic is present, such as during other than work hours. The filter remembers the minimum delay over the most recent interval measured usually in hours. Under conditions of large delay, the filter corrects the apparent offset using the sign of the offset and the difference between the apparent delay and minimum delay. The name of the filter reflects the negative (huff) and positive (puff) correction, which depends on the sign of the offset. The filter is activated by the <tt>tinker huffpuff</tt> command, as described in the <a href="miscopt.html">Miscellaneous Options</a> page.</p>
<h3>The Network Time Protocol (NTP) Distribution</h3>
<img src="pic/barnstable.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html"><i>P.T. Bridgeport Bear</i>; from <i>Pogo</i>, Walt Kelly</a>
<p>Pleased to meet you.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->11-Nov-2011 1:25<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2011</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<ul>
<h3>Kernel Model for Precision Timekeeping</h3>
<p><img src="pic/alice61.gif" alt="gif" align="left"> <a href="http://www.eecis.udel.edu/~mills/pictures.html">from <i>Pogo</i>, Walt Kelly</a></p>
<p>Alice finds the kernel a house of cards.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->22-Sep-2010 21:25<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/misc.txt"></script>
<body>
<h3>PPSAPI Interface for Precision Time Signals</h3>
<img src="pic/tonea.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>NBS Special Publication 432, 1979</i></a> (out of print)
-<p>Last update:
- <!-- #BeginDate format:En2m -->03-Sep-2010 23:16<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Sep-2010</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<p>
<h3><tt>ntp-keygen</tt> - generate public and private keys</h3>
<p><img src="pic/alice23.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>Alice's Adventures in Wonderland</i>, Lewis Carroll</a></p>
<p>Alice holds the key.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->03-Oct-2011 7:03<!-- #EndDate -->
+<p>
+ <EM>Modified: 29-Nov-2012</EM>
</p>
<br clear="left">
<h4>Related Links</h4>
</head>
<body>
<h3>Leap Second Processing</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->29-Nov-2012 16:43<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 30-Nov-2012</EM>
+</p>
<hr>
<p>About every eighteen months the International Earth Rotation Service (IERS) issues a bulletin announcing the insertion of a leap second in the Universal Coordinated Time (UTC) timescale. Ordinarily, this happens at the end of the last day of June or December; but, in principle, it could happen at the end of any month. While these bulletins are available on the Internet at <a href="http://www.iers.org">www.iers.org</a>, advance notice of leap seconds is also available in signals broadcast from national time and frequency stations, in GPS signals and in telephone modem services. Many, but not all, reference clocks recognize these signals and many, but not all, drivers for them can decode the signals and set the leap bits in the timecode accordingly. This means that many, but not all, primary servers can pass on these bits in the NTP packet heard to dependent secondary servers and clients. Secondary servers can pass these bits to their dependents and so on throughout the NTP subnet.</p>
<p> A leap second is inserted following second 59 of the last minute of the day and becomes second 60 of that day. A leap second is deleted by omitting second 59 of the last minute of the day, although this has never happened and is highly unlikely to happen in future. So far as is known, there are no provisions in the Unix or Windows libraries to account for this occasion other than to affect the conversion of an NTP datestamp or timestamp to conventional civil time.</p>
<h3><tt>ntpd</tt> System Log Messages</h3>
<img src="pic/flatheads.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/~mills/pictures.html">from <i>Alice's Adventures in Wonderland</i>, Lewis Carroll</a>
<p>The log can be shrill at times.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->04-Sep-2010 0:54<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Sep-2010</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<p>
<img src="pic/wingdorothy.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/~mills/pictures.html">from <i>The Wizard of Oz</i>, L. Frank Baum</a>
<p>You need help from the monkeys.</p>
<p>
- <EM>Modified: 31-Jan-2014</EM>
+ <EM>Modified: 10-Feb-2014</EM>
</p>
<br clear="left">
<h4>Related Links</h4>
</head>
<body>
<h3>Poll Process</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->20-Apr-2012 19:21<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<hr>
<p>The poll process sends NTP packets at intervals determined by the clock discipline algorithm. The process is designed to provide a sufficient update rate to maximize accuracy while minimizing network overhead. The process is designed to operate over a poll exponent range between 3 (8 s) and 17 (36 hr). The minimum and maximum poll exponent within this range can be set using the <tt>minpoll</tt> and <tt>maxpoll</tt> options of the <a href="confopt.html#option"><tt>server</tt></a> command, with default 6 (64 s) and 10 (1024 s), respectively.</p>
<p> The poll interval is managed by a heuristic algorithm developed over several years of experimentation. It depends on an exponentially weighted average of clock offset differences, called <em>clock jitter</em>, and a jiggle counter, which is initially set to zero. When a clock update is received and the offset exceeds the clock jitter by a factor of 4, the jiggle counter is increased by the poll exponent; otherwise, it is decreased by twice the poll exponent. If the jiggle counter is greater than an arbitrary threshold of 30, it is reset to 0 and the the poll exponent is increased by 1. If the jiggle counter is less than -30, it is set to 0 and the poll exponent decreased by 1. In effect, the algorithm has a relatively slow reaction to good news, but a relatively fast reaction to bad news.</p>
<h3>Pulse-Per-Second (PPS) Signal Interfacing</h3>
<img src="pic/alice32.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>Alice's Adventures in Wonderland</i>, Lewis Carroll</a>
<p>Alice is trying to find the PPS signal connector.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->02-Nov-2010 22:57<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/misc.txt"></script>
<h3>Mitigation Rules and the <tt>prefer</tt> Keyword</h3>
<img src="pic/alice11.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html"> from <i>Alice's Adventures in Wonderland</i>, Lewis Carroll</a>
<p>Listen carefully to what I say; it is very complicated.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->18-Jul-2012 16:41<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/misc.txt"></script>
<h3>Rate Management and the Kiss-o'-Death Packet</h3>
<img src="pic/boom4.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>Pogo</i>, Walt Kelly</a>
<p>Our junior managers and the administrators.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->21-Apr-2012 16:27<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/hand.txt"></script>
<h3>Debugging Reference Clock Drivers</h3>
<img src="pic/oz2.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/~mills/pictures.html">from <i>The Wizard of Oz</i>, L. Frank Baum</a>
<p>Call the girls and the'll sweep your bugs.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->
- 03-Sep-2010 1:35
- <!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Sep-2010</EM>
+</p>
<br clear="left">
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/refclock.txt"></script>
<h3>Reference Clock Support</h3>
<img src="pic/stack1a.jpg" alt="gif" align="left">Master Time Facility at the <a href="http://www.eecis.udel.edu/%7emills/lab.html">UDel Internet Research Laboratory</a>
<p>
- <EM>Modified: 31-Jan-2014</EM>
+ <EM>Modified: 01-Mar-2014</EM>
</p>
<br clear="left">
<h4>Related Links</h4>
<body>
<em></em>
<h3>Clock Select Algorithm</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->13-Apr-2012 14:58<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<hr>
<p>The clock select algorithm determines from a set of sources , which are correct (<em>truechimers</em>) and which are not (<em>falsetickers</em>) according to a set of formal correctness assertions. The principles are based on the observation that the maximum error in determining the offset of a candidate cannot exceed one-half the roundtrip delay to the primary reference clock at the time of measurement. This must be increased by the maximum error that can accumulate since then. The selection metric, called the <em>root distance,</em>, is one-half the roundtrip root delay plus the root dispersion plus minor error contributions not considered here.</p>
<p>First, a number of sanity checks is performed to sift the selectable candidate from among the source population. The sanity checks are sumarized as follows:.</p>
</head>
<body>
<h3>Performance Metrics</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->20-Jun-2012 18:33<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/special.txt"></script>
<script type="text/javascript" language="javascript" src="scripts/external.txt"></script>
</head>
<body>
<h3><tt>tickadj</tt> - set time-related kernel variables</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->04-Sep-2010 17:59<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 11-Jul-2011</EM>
+</p>
<hr>
<h4>Synopsis</h4>
<tt>tickadj [ -Aqs ] [ -a <i>tickadj</i> ] [ -t <i>tick</i> ]</tt>
</head>
<body>
<h3>How NTP Works</h3>
-<p>Last update:
- <!-- #BeginDate format:En2m -->18-Aug-2012 19:04<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<h4>Related Links</h4>
<script type="text/javascript" language="javascript" src="scripts/special.txt"></script>
<script type="text/javascript" language="javascript" src="scripts/external.txt"></script>
<h3>NTP Interleaved Modes </h3>
<img src="pic/pogo4.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/%7emills/pictures.html">from <i>Pogo</i>, Walt Kelly</a>
<p>You need a little magic.</p>
-<p>Last update:
- <!-- #BeginDate format:En2m -->06-Jun-2012 14:59<!-- #EndDate -->
- UTC</p>
+<p>
+ <EM>Modified: 15-Nov-2012</EM>
+</p>
<br clear="left">
<hr>
<p>In the protocol described in the NTP specification and reference implementation up to now, the transmit timestamp, which is captured before the message digest is computed and the packet queued for output, is properly called as a <em>softstamp</em> The receive timestamp, which is captured after the input driver interrupt routine and before the packet is queued for input, is properly called a <em>drivestamp</em>. For enhanced accuracy it is desirable to capture the transmit timestamp as close to the wire as possible; for example, after the output driver interrupt routine.</p>