Information about http://www.eecis.udel.edu/~mills/database/papers/time.pdf

On the Chronometry and Metrology of Computer Network …

Tags: chronometry, civil calendar, civil time, computer network, computer time, electrical engineering department, global warming, international time, leap seconds, metrology, mination, network clock synchronization, network time protocol, ntp time servers, time and date, time distribution, time services, timekeeping, timescales, university of delaware,
Pages: 10
Language: english
Created: Wed Jul 29 16:55:10 1998
Display cached document
Page 1
image
Page 2
image
Page 3
image
Page 4
image
Page 5
image
Page 6
image
Page 7
image
Page 8
image
Page 9
image
Page 10
image
               On the Chronometry and Metrology of Computer Network
                Timescales and their Application to the Network Time
                                    Protocol1,2,3
                                                    David L. Mills
                                         Electrical Engineering Department
                                               University of Delaware
                                                       Abstract
         This paper summarizes issues in computer network timekeeping with respect to the Network Time
         Protocol, which is used to synchronize time in many of the hosts and gateways of the Internet. It
         describes the methods used to coordinate and disseminate international time services and how they
         are incorporated into NTP time servers. It discusses the hazards on reckoning NTP dates with the
         conventional civil calendar and a standard method for numbering the days. Finally, the paper
         describes the NTP timescale, its mapping to conventional civil time and date and its interpretation of
         leap seconds.
Keywords: network clock synchronization, standard              mination of computer time and frequency relative to
time distribution, timescale coordination, leap seconds,       international standards, and on calendar metrology,
Network Time Protocol.                                         which is the determination of conventional civil time and
                                                               date according to the modern calendar. It describes the
1. Introduction                                                methods conventionally used to establish civil time and
Each year brings exotic new applications for precision         date and the various timescales now in use. In particular,
timekeeping, such as measuring the density of the uni-         it characterizes the Network Time Protocol (NTP) times-
verse [RAW87] and calibrating global warming [SCI91].          cale relative to the Coordinated Universal Time (UTC)
Recent improvements in time-transfer technology have           timescale, and establishes the precise interpretation of
doubled the precisions attainable about every seven            UTC leap seconds in NTP.
years to the current regime of better than a few nanosec-
                                                               In the following discussion the terms time, timescale,
onds over the global range. While inexpensive, ubiqui-
                                                               oscillator, clock, epoch, timestamp, calendar and date
tous time transfer using a global computer network
                                                               are used in a technical sense. Strictly speaking, the time
ordinarily cannot approach such precisions, accuracies
                                                               of an event is an abstraction which determines the order-
of a few tens of milliseconds have been demonstrated for
                                                               ing of events in some given frame of reference or times-
most paths in the Internet of today [MIL90a].
                                                               cale. An oscillator is a generator capable of precise
Among the requirements for ubiquitous timekeeping in           frequency (relative to the given timescale) within a speci-
a global computer networking community is to provide           fied tolerance. A clock is an oscillator together with a
a standard chronometry for precision dating of present         counter which records the (fractional) number of cycles
and future events. This requires a standard interpretation     since being initialized with a given value at a given time.
of computer timekeeping media with respect to conven-          The value of the counter at any given time t is called its
tional civil time and date as disseminated by national         epoch and recorded as the timestamp T(t) of that epoch.
means. Among the problems addressed must be the                In general, epoches are not continuous and depend on the
rationalization with the calendar, the ambiguity of pres-      precision of the counter.
entation and the interpretation of leap seconds.
                                                               A calendar is a mapping from epoches in some timescale
This paper consists of an extended discussion on com-          to the year-day dates used in everyday life. Since multi-
puter network chronometry, which is the precise deter-         ple calendars are in use today and sometimes disagree on
1. Sponsored by: Defense Advanced Research Projects Agency under NASA Ames Research Center contract number
   NAG 2-638 and National Science Foundation grant number NCR-89-13623.
2. Author's address: Electrical Engineering Department, University of Delaware, Newark, DE 19716; Internet mail:
   mills@udel.edu.
3. Reprinted from: Mills, D.L. On the chronology and metrology of computer network timescales and their application
   to the Network Time Protocol. ACM Computer Communications Review 21, 5 (October 1991), 8-17.
                          Data Filter                                                     Phase-Locked Oscillator

                                                                          Offset               Loop Filter
      Network             Data Filter            Peer Selection
                                                                        Combining

                          Data Filter
                                                                                                  VCO

                                            Figure 2. Network Time Protocol

           1                                 1                    subnet to run at the same frequency, to synchronize time
                 x                                                means to set them to agree at a particular epoch with
       2          2                     2           3             respect to Coordinated Universal Time (UTC), as pro-
                                                                  vided by national standards, and to synchronize clocks
  3        3          3            3         3          3         means to synchronize them in both frequency and time.
           (a)                              (b)
                                                                  2. Network Time Protocol
           Figure 1. Subnet Synchronization                       The Network Time Protocol (NTP) is used by Internet
                                                                  time servers and their peers to synchronize clocks, as
the dating of the same epoches in the past, the metrology         well as automatically organize and maintain the time
of past and present epoches is an art practiced by histo-         synchronization subnet itself. It is evolved from the Time
rians. However, the ultimate timescale for our world is           Protocol [POS83] and the ICMP Timestamp Message
based on cosmic oscillators, such as the Sun, Moon and            [DOD81a], but is specifically designed for high accu-
other galactic orbiters. Since the frequencies of these           racy, stability and reliability, even when used over typi-
oscillators are relatively unstable and not known exactly,        cal Internet paths involving multiple gateways and
the ultimate reference standard oscillator has been cho-          unreliable networks. The following sections contain an
sen by international agreement as a synthesis of many             overview of the procedures and algorithms used in NTP.
observations of an atomic transition of exquisite stabil-         A formal description and error analysis of the protocol is
ity. The frequency of each heavenly and Earthbound                contained in [MIL90b]. A detailed description of the
oscillator defines a distinctive timescale, not necessarily       NTP architecture and protocols is contained in [MIL91],
always continuous, relative to that of the standard oscil-        while a summary of operational experience and perform-
lator.                                                            ance is contained in [MIL90a].
In this paper the stability of a clock is how well it can         NTP and its implementations have evolved and prolifer-
maintain a constant frequency, the accuracy is how well           ated in the Internet over the last decade, with NTP
its time compares with national standards and the preci-          Version 2 now adopted as an Internet Standard (Recom-
sion is to what degree time can be resolved in a particular       mended) [MIL89] and NTP Version 3 now adopted as a
timekeeping system. The time offset of two clocks is the          Proposed Standard [MIL90b]. NTP is built on the In-
time difference between them, while the frequency offset          ternet Protocol (IP) [DOD81b] and User Datagram Pro-
is the frequency difference between them. In this paper           tocol (UDP) [POS80], which provide a connectionless
reference to simply "offset" means time offset, unless            transport mechanism; however, it is readily adaptable to
indicated otherwise. The reliability of a timekeeping             other protocol suites. The protocol can operate in several
system is the fraction of the time it can be kept connected       modes appropriate to different scenarios involving pri-
to the network and operating correctly relative to stated         vate workstations, public servers and various network
accuracy and stability tolerances.                                configurations. A lightweight association-management
                                                                  capability, including dynamic reachability and variable
In order to synchronize clocks, there must be some way            poll-interval mechanisms, is used to manage state infor-
to directly or indirectly compare them in time and fre-           mation and reduce resource requirements. Optional fea-
quency. In network architectures such as DECnet and               tures include message authentication based on
Internet local clocks are synchronized to designated time         crypto-checksums and provisions for remote control and
servers, which are timekeeping systems belonging to a             monitoring.
synchronization subnet, in which each server measures
the offsets between its local clock and the clocks of its         In NTP one or more primary servers synchronize directly
neighbor servers or peers in the subnet. In this paper to         to external reference sources such as radio clocks. Sec-
synchronize frequency means to adjust the clocks in the           ondary time servers synchronize to the primary servers



                                                              2
and others in the synchronization subnet. A typical sub-         Oscillator type    Stability (per day)      Drift /Aging
net is shown in Figure 1a, in which the nodes represent          Hydrogen Maser     2 x 10-14                1 x 10-12/yr
subnet servers, with normal level numbers determined             Cesium Beam        3 x 10-13                3 x 10-12/yr
by the hop count from the root (stratum one), and the            Rubidium Cell      5 x 10-12                3 x 10-11/mo
heavy lines the active synchronization paths and direc-          Quartz (Oven)      1 x 10-9 0-50 deg C      1 x 10-10/day
tion of timing information flow. The light lines represent       Quartz (Digital)   5 x 10-8 0-60 deg C      1 x 10-9/day
backup synchronization paths where timing information            Quartz (Analog)    5 x 10-7 0-60 deg C      3 x 10-9/day
is exchanged, but not necessarily used to synchronize the        Quartz             ~1 x 10-6 per deg C      don't ask
local clocks. Figure 1b shows the same subnet, but with
the line marked x out of service. The subnet has re-con-             Table 1. Characteristics of Standard Oscillators
figured itself automatically to use backup paths, with the
result that one of the servers has dropped from stratum 2                        Ti-2       B         Ti-1
to stratum 3. In practice each NTP server synchronizes
with several other servers in order to survive outages and
Byzantine failures using methods similar to those de-                                       
scribed in [SHI87].
Figure 2 shows the overall organization of the NTP
time-server model, which has much in common with the              Ti-3                         A                        Ti
phase-lock methods summarized in [RAM90]. Times-
tamps exchanged between the server and possibly many
                                                                          Figure 3. Measuring Delay and Offset
other subnet peers are used to determine individual
roundtrip delays and clock offsets, as well as provide
                                                                 of two subalgorithms, one a version of an algorithm
reliable error bounds. Figure 3 shows how NTP times-
                                                                 proposed in [MAR85] and the other based on maximum
tamps are numbered and exchanged between peers A and
                                                                 likelihood principles to improve accuracy [MIL91].
B. Let Ti, Ti-1, Ti-2, Ti-3 be the values of the four most
recent timestamps as shown and let                               The resulting offsets of this subset are first combined on
                                                                 a weighted-average basis using an algorithm similar to
          a = Ti-2 - Ti-3 and b = Ti-1 - Ti.
                                                                 that described in [JON83] and then processed by a phase-
If the network delays from A to B and from B to A are            lock loop (PLL). In the PLL the combined effects of the
similar, the roundtrip delay  and clock offset  of B             filtering, selection and combining operations are to pro-
relative to A at time Ti are:                                    duce a phase-correction term, which is processed by the
                                                                 loop filter to control the local clock, which functions as
                                     a+b
               = a - b and  =            .                       a voltage-controlled oscillator (VCO). The VCO fur-
                                      2                          nishes the timing (phase) reference to produce the times-
Each NTP message includes the latest three timestamps            tamps used in all timing calculations.
Ti-1, Ti-2 and Ti-3, while the fourth timestamp Ti is            3. Methods for Time and Frequency Synchroni-
determined upon arrival of the message. Thus, both the              zation
server and the peer can independently calculate delay
                                                                 The primary servers of a synchronization subnet must
and offset using a single bidirectional message stream.
                                                                 themselves synchronize to a source of standard time,
This is a symmetric, continuously sampled, time-transfer
                                                                 such as a radio clock or telephone modem. It is of
scheme similar to those used in some digital telephone
                                                                 considerable interest to explore how this can be done and
networks [LIN80]. Among its advantages are that the
                                                                 what accuracies can be expected. The following sections
transmission times and received message orders are un-
                                                                 discuss issues involved in providing accurate and stable
important and that reliable delivery is not required.
                                                                 reference sources using national means of dissemination.
As shown in Figure 2, the computed delays and offsets
                                                                 3.1. Time and Frequency Standards
for each peer are processed by the data-filter algorithm
to reduce incidental timing noise. As described in the           A primary frequency standard is an oscillator that can
[MIL90b], this algorithm selects from among the last             maintain extremely precise frequency relative to a physi-
several samples the one with minimum  and presents               cal phenomenon, such as a transition in the orbital states
the associated  as the output. The peer-selection algo-          of an electron. Presently available atomic oscillators are
rithm determines from among all peers a suitable subset          based on the transitions of the hydrogen, cesium and
of peers capable of providing the most accurate and              rubidium atoms. Table 1, which was compiled from
trustworthy time using principles similar to those de-           published data, shows the characteristics for typical os-
scribed in [VAS88]. In NTP this is done using a cascade          cillators of these types compared with those for various



                                                             3
types of temperature-compensated and uncompensated                      Stratum     Min Accuracy           Min Stability
quartz-crystal oscillators found in electronic equipment.                           (per day)              (per day)
Present practice is to operate multiple cesium-based                        1       1 x 10-11              not specified
clocks at national standards laboratories and coordinate                    2       1.6 x 10-8             1 x 10-10
their readings using satellite-based time-transfer meth-                    3       4.6 x 10-6             3.7 x 10-7
ods. On the other hand, local clocks used in computing                      4       3.2 x 10-5             not specified
equipment almost always are designed with uncompen-
sated quartz oscillators.                                                           Table 2. Stratum Assigments

For the three atomic oscillators listed in Table 1 the                 The construction, operation and maintenance of stratum-
Drift/Aging column shows the maximum offset from                       one oscillators is assumed to be consistent with national
nominal standard frequency due to systematic mechani-                  standards and often includes cesium oscillators or preci-
cal and electrical characteristics. In the case of quartz              sion quartz oscillators synchronized to national stand-
oscillators (oven-controlled, digital-temperature-com-                 ards. Oscillators assigned higher strata represent the
pensated, analog-temperature-compensated or uncom-                     stability required for interexchange systems, exchange
pensated) this offset is not constant, which results in a              switches and PBX systems, respectively. With respect to
gradual change in frequency with time, called aging.                   this classification, most computer local clocks would be
Even if a quartz oscillator is temperature compensated                 assigned stratum four. These clocks are most often con-
by some means, it must be periodically compared to a                   structed using an uncompensated quartz oscillator with
primary standard in order to maintain the highest accu-                typical frequency tolerance in the order of 10-4 and
racy. For all types of oscillators the stability column                stability of 10-6 per day for equipment operating continu-
shows the maximum variation in frequency per day due                   ously at room temperature.
to circuit noise and environmental factors.
                                                                       3.2. Time and Frequency Dissemination
As the telephone networks of the world are evolving                    In order that atomic and civil time can be coordinated
rapidly to digital technology, consideration should be                 throughout the world, national administrations operate
given to the methods used for synchronization in digital               primary time and frequency standards and coordinate
networks [BEL86]. A network of clocks in which each                    them cooperatively by observing various radio and sat-
oscillator is phase-locked to a single frequency standard              ellite broadcasts and through occasional use of portable
is called isochronous, while a network in which some                   atomic clocks. Most seafaring nations of the world oper-
oscillators are phase-locked to different master oscilla-              ate some sort of broadcast time service for the purpose
tors, but with the master oscillators closely synchronized             of calibrating chronographs, which are used in conjunc-
in frequency (not necessarily phase-locked), to a single               tion with ephemeris data to determine navigational posi-
frequency standard is called plesiochronous. The NTP                   tion. In many countries the service is primitive and
synchronization subnet operating in the Internet is a                  limited to seconds-pips broadcast by marine communi-
plesiochronous system in which multiple primary time                   cation stations at certain hours. For example, a chrono-
servers synchronize using radio clocks and national                    graph error of one second represents a longitudinal
broadcast services of different countries, which are not               position error of about 0.23 nautical mile at the Equator.
necesarily phase-locked to each other.
                                                                       The U.S. National Institute of Standards and Technology
The industry has agreed on a classification of clock                   (NIST - formerly National Bureau of Standards) operates
oscillators as a function of minimum accuracy, minimum                 three radio services for the dissemination of primary time
stability and other factors [ALL74]. There are three                   and frequency information. One of these uses high-fre-
factors which determine the classification: stability, jitter          quency (HF or CCIR band 7) transmissions from Fort
and wander. Stability refers to the systematic variation               Collins, CO (WWV), and Kauai, HI (WWVH). Signal
of frequency with time and is synonymous with aging,                   propagation is usually by reflection from the upper iono-
drift, trends, etc. Jitter (also called timing jitter) refers to       spheric layers, which vary in height and density through-
short-term variations in frequency with components                     out the day and season and result in unpredictable
greater than 10 Hz, while wander refers to long-term                   amplitude and delay variations at the receiver. While
variations in frequency with components less than 10 Hz.               these transmissions and those of Canada from Ottawa,
The classification determines the oscillator stratum (not              Ontario (CHU), and other countries can be received over
to be confused with the NTP stratum described pre-                     large areas in the western hemisphere, reliable frequency
viously), with the more accurate oscillators assigned the              comparisons can be made only to the order of 10-7 and
lower strata and less accurate oscillators the higher strata,          time accuracies are limited to the order of a millisecond
as shown in Table 2.                                                   [BLA74]. Available radio clocks which operate with



                                                                   4
these transmissions provide accuracies to the order of ten         cast formats of these systems are not well suited for
milliseconds and are priced in the $1,500 range.                   standard time distribution and the receivers have to be
                                                                   initialized with position information before use.
A second service operated by NIST uses low-frequency
(LF or CCIR band 5) transmissions from Boulder, CO                 Note that not all transmission formats used by the various
(WWVB), and can be received over the continental U.S.              radio broadcast services [NBS79] and not all currently
and adjacent coastal areas. Signal propagation is via the          available radio clocks include provisions for year infor-
lower ionospheric layers, which are relatively stable and          mation and leap-second warning. This information must
have predictable diurnal variations in height. With ap-            be determined from other sources. NTP includes provi-
propriate receiving and averaging techniques and correc-           sions to distribute advance warnings of leap seconds
tions for diurnal and seasonal propagation effects,                using the leap-indicator bits described in the NTP speci-
frequency comparisons to within 10-11 are possible and             fication. The protocol is designed so that these bits can
time accuracies of from a few to 50 microseconds can be            be set manually or by the radio clocks at the primary time
obtained [BLA74]. Some countries in western Europe                 servers and then automatically distributed throughout the
operate similar services which use transmissions from              synchronization subnet to all other time servers.
Rugby, U.K. (MSF). Mainflingen, Germany (DCF77),
and Allouis, France (France Inter). Available radio                4. Calendar Metrology
clocks which operate with these transmissions provide              In the simplest terms a calendar system is a method to
accuracies to the order of a millisecond and are priced in         rationalize sightings of the Sun and Moon with certain
the $1,500 range.                                                  religious and agricultural seasons which recur at charac-
The third service operated by NIST uses ultra-high fre-            teristic frequencies. The various metrologies of the cal-
quency (UHF or CCIR band 9) transmissions from the                 endar amount to systems to assign day-numbers and
Geosynchronous Orbit Environmental Satellites                      sometimes day-names which determine the periodicity
(GOES), and can be received over most of the western               of these holy and secular oscillators. One might ask
hemisphere. Available radio clocks which operate with              whether a (suitably disambiguated) NTP timestamp
these transmissions provide accuracies to the order of a           documenting the adventures of Alexander the Great mer-
millisecond and are priced in the $6,000 range.                    its the precision implied in its format. The following
                                                                   sections consider this issue in the light of the Western
Another service offered by NIST uses an ordinary tele-             civil calendar and the establishment of a standard day-
phone and modem [NBS88]. The service is intended for               numbering plan.
use by personal workstations to set clock-calendars, for
example. However, in order to maintain an accuracy of              4.1. Evolution of the Calendar
a few milliseconds using an uncompensated quartz os-               The calendar systems used in the ancient world reflect
cillator at typical limits of tolerance and without fre-
                                                                   the agricultural, political and ritual needs characteristic
quency compensation, it would be necessary to make a               of the societies in which they flourished. Astronomical
long-distance call every few minutes, which would not              observations to establish the winter and summer solstices
be suitable for a large population of clients calling on a
                                                                   were in use three to four millennia ago [CAL86]. By the
regular basis without further redistribution.                      14th century BC the Shang Chinese had established the
The U.S. Department of Defense is developing the                   solar year as 365.25 days and the lunar month as 29.5
Global Positioning System (GPS) for worldwide preci-               days. The lunisolar calendar, in which the ritual month
sion navigation. This system will eventually provide               is based on the Moon and the agricultural year on the
24-hour worldwide coverage using a constellation of 21             Sun, was used throughout the ancient Near East (except
satellites in 12-hour orbits. For time-transfer applications       Egypt) and Greece from the third millennium BC. Early
GPS has a potential accuracy in the order of a few                 calendars used either thirteen lunar months of 28 days or
nanoseconds; however, various considerations of de-                twelve alternating lunar months of 29 and 30 days and
fense policy may limit accuracy to hundreds of nanosec-            haphazard means to reconcile the 354/364-day lunar year
onds [VAN84]. Available radio clocks provide                       with the 365-day vague solar year.
accuracies to 100 ns and are priced in the $10,000 range.
                                                                   The ancient Egyptian lunisolar calendar had twelve 30-
There are several other navigation systems such as LO-             day lunar months, but was guided by the seasonal appear-
RAN-C, operated by the U.S. Coast Guard and agencies               ance of the star Sirius (Sothis). In order to reconcile this
of other countries, OMEGA, operated by the U.S. Navy,              calendar with the solar year, a civil calendar was in-
and various communication systems using very-low-fre-              vented by adding five intercalary days for a total of 365
quency (VLF or CCIR band 4) transmissions. These                   days. However, in time it was observed that the civil year
systems can provide accuracies in the order from less              was about one-fourth day shorter than the actual solar
than one to about 50 microseconds; however, the broad-             year and thus would precess relative to it over a 1460-



                                                               5
year cycle called the Sothic cycle. Along with the Shang          While it remains a fascinating field for time historians,
Chinese, the ancient Egyptians had thus established the           the above narrative provides conclusive evidence that
solar year at 365.25 days, or within about 11 minutes of          conjugating calendar dates of significant events and as-
the present determination. In 432 BC, about a century             signing NTP timestamps to them is approximate at best.
after the Chinese had done so, the Greek astronomer               In principle, reliable dating of such events requires only
Meton calculated there were 110 lunar months of 29 days           an accurate count of the days relative to some globally
and 125 lunar months of 30 days for a total of 235 lunar          alarming event, such as a comet passage or supernova
months in 6940 solar days, or just over 19 years. The             explosion; however, only historically persistent and po-
19-year cycle, called the Metonic cycle, established the          litically stable societies, such as the ancient Chinese and
lunar month at 29.532 solar days, or within about two             Egyptian, and especially the ancient Maya [MOR83],
minutes of the present determination.                             possessed the means and will to do so.
The Roman republican calendar was based on a lunar                4.2. The Modified Julian Day System
year and by 50 BC was eight weeks out of step with the
solar year. Julius Caesar invited the Alexandrian astrono-        In order to measure the span of the universe or the decay
mer Sosigenes to redesign the calendar, which led to the          of the proton, it is necessary to have a standard day-num-
adoption in 46 BC of the Julian calendar. This calendar           bering plan. Accordingly, the International Astronomi-
is based on a year of 365 days with an intercalary day            cal Union has adopted the use of the standard second and
inserted every four years. However, for the first 36 years        Julian Day Number (JDN) to date cosmological events
an intercalary day was mistakenly inserted every three            and related phenomena. The standard day consists of
years instead of every four. The result was 12 intercalary        86,400 standard seconds, where time is expressed as a
days instead of nine, and a series of corrections that was        fraction of the whole day, and the standard year consists
not complete until 8 AD.                                          of 365.25 standard days.

The seven-day Sumerian week was introduced only in                In the scheme devised in 1583 by the French scholar
the fourth century AD by Emperor Constantine I. During            Joseph Justus Scaliger and named after his father, Julius
the Roman era a 15-year census cycle, called the Indic-           Caesar Scaliger, JDN 0.0 corresponds to 12h (noon) on
tion cycle, was instituted for taxation purposes. The             the first day of the Julian Era, 1 January 4713 BC, and
sequence of day-names for consecutive occurrences of a            runs in days and fractions since then. The Modified
particular day of the year does not recur for 28 years,           Julian Date (MJD), which is sometimes used to represent
called the solar cycle. Thus, the least common multiple           dates near our own era in conventional time and with
of the 28-year solar cycle, 19-year Metonic cycle and             fewer digits, is defined as MJD = JD - 2,400,000.5.
15-year Indiction cycle results in a grand 7980-year              While the JDN timescale is based on an absolute day
supercycle called the Julian Era, which began in 4713             numbering, it is not uniform relative to the absolute
BC. A particular combination of the day of the week, day          (atomic) timescale, since the Earth rotational period is
of the year, phase of the Moon and round of the census            not constant and has increased over ten seconds from 45
will recur beginning in 3268 AD.                                  BC to the present.

By 1545 the discrepancy in the Julian year relative to the        For historical purposes the years prior to the Common
solar year had accumulated to ten days. In February               Era (BC) are reckoned according to the Julian calendar,
1582, following a plan originally devised by the astrono-         while the years of the Common Era (AD) are reckoned
mer Luigi Lilio, Pope Gregory XIII issued a papal bull            according to the Gregorian calendar. Since Monday, 1
which decreed that the day following Thursday, 4 Octo-            January 1 AD in the Gregorian calendar corresponds to
ber 1582 on the old (Julian) calendar would be Friday,            Monday, 3 January 1 in the Julian calendar [DER90],
15 October 1582 on the new (Gregorian) calendar and,              JDN 1,721,426.0 corresponds to 12h on the first day of
furthermore, that the solar year would henceforth consist         the Common Era, 1 January 1 AD. Following the con-
of 365.2425 days [MOY82]. In order to realize the new             vention that our century began at 0h on 1 January 1900,
value, only those centennial years divisible by 400 would         at which time the solar year was already 12h old, that
be leap years, while the remaining centennial years               eclectic instant corresponds to MJD 15,020.0 and the
would not, making the new year within about 24 seconds            origin of all existing Internet timescales, including that
of the actual solar year at that time. Since the beginning        of NTP.
of the Common Era and prior to 1991 there were 475                5. Timescale Chronometry
intercalary days inserted in the Julian calendar, but 14 of
these were removed in the Gregorian calendar. While the           International timescales are based on atomic clocks of
Gregorian calendar is in use throughout most of the               exquisite stability compared to the astronomical clocks
world today, some countries did not adopt it until early          we normally live by. Occasionally, there is a need to
in the twentieth century.                                         correct the conventional civil timescale to account for



                                                              6
unpredictable wobbles in Earth rotation and related phe-           UTC Date        MJD      NTP Time               Offset
nomena. The following sections discuss these issues with           01 Jan 72      41,317    2,272,060,800            0
respect to the NTP timescale; in particular, how it han-           30 Jun 72      41,498    2,287,785,600            1
dles leap seconds.                                                 31 Dec 72      41,682    2,303,683,200            2
5.1. Determination of Frequency                                    31 Dec 73      42,047    2,335,219,200            3
                                                                   31 Dec 74      42,412    2,366,755,200            4
For many years the most important use of time and                  31 Dec 75      42,777    2,398,291,200            5
frequency information was for worldwide navigation                 31 Dec 76      43,143    2,429,913,600            6
and space science, which depend on astronomical obser-             31 Dec 77      43,508    2,461,449,600            7
vations of the Sun, Moon and stars [TIM86]. Sidereal               31 Dec 78      43,873    2,492,985,600            8
time is based on the transit of stars across the celestial         31 Dec 79      44,238    2,524,521,600            9
meridian of an observer. The mean sidereal day is 23               30 Jun 81      44,785    2,571,782,400           10
hours, 56 minutes and 4.09 seconds, but varies about ±30           30 Jun 82      45,150    2,603,318,400           11
ms throughout the year due to polar wandering and orbit            30 Jun 83      45,515    2,634,854,400           12
variations. Ephemeris time is based on tables with which           30 Jun 85      46,246    2,698,012,800           13
a standard time interval such as the tropical year - one           31 Dec 87      47,160                            14
                                                                                            2,776,982,400
complete revolution of the Earth around the Sun - can be
                                                                   31 Dec 89      47,891    2,840,140,800           15
determined through observations of the Sun, Moon and
                                                                   31 Dec 90      48,256    2,871,590,400           16
planets.
                                                                         Table 3. Table of Leap-Second Insertions
In 1958 the sta nda rd sec ond was defined as
1/31,556,925.9747 of the tropical year that began this            U.S. Naval Observatory and other observatories to deter-
century. On this scale the tropical year in 1900 was              mine UTC. Starting from apparent mean solar time as
365.2421987 days and the lunar month - one complete               observed, the UT0 timescale is determined using correc-
revolution of the Moon around the Earth - was 29.53059            tions for Earth orbit and inclination (the Equation of
days; however, the actual tropical year can be determined         Time, as used by sundials), the UT1 (navigator's) times-
only to an accuracy of about 50 ms and the mean value             cale by adding corrections for polar migration and the
has been increasing by about 5.3 ms per year. Without             UT2 timescale by adding corrections for known peri-
correction for this factor, an NTP timestamp would be in          odicity variations. While standard frequencies are based
error over 26 seconds at the dawn of recorded history.            on TAI, conventional civil time is based on UT1, which
                                                                  is presently slowing relative to TAI by a fraction of a
Of the three heavenly oscillators readily apparent to
                                                                  second per year. When the magnitude of correction ap-
ancient mariners and astronomers - the Earth rotation
                                                                  proaches 0.7 second, a leap second is inserted or deleted
about its axis, the Earth revolution around the Sun and
                                                                  in the TAI timescale on the last day of June or December.
the Moon revolution around the Earth - none of the three
have the intrinsic stability, relative to modern technol-         For the most precise coordination and timestamping of
ogy, to serve as a standard reference oscillator. In 1967         events since 1972, it is necessary to know when leap
the standard second was redefined as "9,192,631,770               seconds were implemented in UTC and how the seconds
periods of the radiation corresponding to the transition          are numbered. As specified in CCIR Report 517, which
between the two hyperfine levels of the ground state of           is reproduced in [BLA74], a leap second is inserted
the cesium-133 atom" [ALL74]. Prior to 0h 1 January               following second 23:59:59 on the last day of June or
1972 national frequency standards were occasionally               December and becomes second 23:59:60 of that day. A
corrected to agree with astronomical observations. Since          leap second would be deleted by omitting second
then the time and frequency standards of the world have           23:59:59 on one of these days, although this has never
been based on International Atomic Time (TAI), which              happened. Leap seconds were inserted prior to 1 January
is defined and maintained using multiple cesium-beam              1991 on the occasions listed in Table 3 (courtesy U.S.
oscillators to an accuracy of a few parts in 1013, or a few       Naval Observatory). Published IBWM corrections con-
tens of nanoseconds per day. Note that, while this pro-           sist not only of leap seconds, which result in step discon-
vides an extraordinarily precise timescale, it does not           tinuities relative to TAI, but 100-ms UT1 adjustments
necessarily agree with conventional solar time and may            called DUT1, which provide increased accuracy for
not in fact even be absolutely uniform, unless subtle             navigation and space science.
atomic conspiracies can be ruled out [RAW87].
5.2. Determination of Time and Leap Seconds                       Note that the NTP time column actually shows the epoch
                                                                  following the last second of the day given in the UTC
The International Bureau of Weights and Measures                  date and MJD columns (except for the first line), which
(IBWM) uses astronomical observations provided by the             is the precise epoch of insertion. The offset column



                                                              7
shows the cumulative seconds offset between the TAI                                 UTC                           NTP
timescale and the UTC timescale; that is, the number of
seconds to add to the TAI clock in order to maintain                          hours      seconds    kiloseconds     seconds
nominal agreement with the UTC clock. Finally, note                 31 Dec 90 23:59      :59          2,871,590     ,399 +
that the epoch of insertion is relative to the timescale
immediately prior to that epoch; e.g., the epoch of the 31              (leap) 23:59     :60          2,871,590     ,400 +
December 1990 insertion is determined on the timescale               1 Jan 91 00:00      :00          2,871,590     ,400
in effect following the 31 December 1989 insertion,
which means the actual insertion relative to the TAI                            00:00    :01          2,871,590     ,401
clock was fifteen seconds later than the apparent time on
the UTC timescale.
                                                                    Figure 4. Comparison of UTC and NTP Timescales at
The UTC timescale thus ticks in standard (atomic) sec-                                     Leap
onds and was set to the value 0h MJD 41,317.0 at the
epoch determined by astronomical observation to be 0h               eration as to the choice of format and origin of the NTP
on 1 January 1972 according to the Gregorian calendar;              timescale may be in order. It is of course simple to
that is, the inaugural tick of the UTC Era. In fact, the            mitigate the rollover problem simply by redefining the
inaugural tick which synchronized the cosmic oscilla-               origin as, for example 2,272,060,800 or 1 January 1972,
tors, Julian clock, UTC clock and Gregorian calendar                which results in a continuous timescale through all but
forevermore was displaced about ten seconds from the                the last two years of the next century. This does not, of
civil clock then in use, while the GPS clock is ahead of            course, change the interpretation of the NTP timestamp
the UTC clock by seven seconds in early 1991. Sub-                  itself, just its representation in conventional civil time.
sequently, the UTC clock has marched forward relative               Also, as will become evident shortly, in order to establish
to the Julian clock exactly one second on scheduled                 the most precise representation with respect to conven-
occasions at monumental epoches embedded in the insti-              tional civil time, it is necessary to retain a record of
tutional memory of our civilization. Note in passing that           leap-second insertions, which cannot be predicted far in
leap-second adjustments affect the number of seconds                advance. Having surmounted that requirement, it does
per day and thus the number of seconds per year. Appar-             not seem odious to record the 136-year NTP epoch for
ently, should we choose to worry about it, the UTC clock,           such cherished timestamps upon the election of a pope,
Julian clock and various cosmic clocks will inexorably              for example.
drift apart with time until rationalized by some future
                                                                    The NTP timescale is based on the UTC timescale, but
papal bull.
                                                                    not necessarily always coincident with it. At 0h on 1
5.3. The NTP Timescale and Reckoning with                           January 1972 (MJD 41,317.0), the first tick of the UTC
   UTC                                                              Era, the NTP clock was set to 2,272,060,800, repre-
                                                                    senting the number of standard seconds since 0h on 1
In NTP epoches are determined by copying the current                January 1900 (MJD 15,020.0). The insertion of leap
value of the local clock to a timestamp variable when               seconds in UTC and subsequently into NTP does not
some significant event, such as the arrival of a message,           affect the UTC or NTP oscillator, only the conversion to
occurs. Since NTP timestamps are cherished data and, in             conventional civil UTC time. However, since the only
fact, represent the main product of the protocol, a special         institutional memory available to NTP are the UTC
timestamp format has been established. An NTP times-                broadcast services, the NTP timescale is in effect reset
tamp is represented as a 64-bit unsigned fixed-point                to UTC as each timecode is received. Thus, when a leap
number, in seconds relative to 0h on 1 January 1900. The            second is inserted in UTC and subsequently in NTP,
integer part is in the first 32 bits and the fraction part in       knowledge of all previous leap seconds is lost.
the last 32 bits. The precision of this representation is
about 232 picoseconds, which should be adequate for                 Another way to describe this is to say there are as many
even the most exotic requirements. Should NTP be in use             NTP timescales as historic leap seconds. In effect, a new
when this 64-bit field overflows some time in 2036,                 timescale is established after each new leap second.
external means will be necessary to qualify time relative           Thus, all previous leap seconds, not to mention the
to 1900 and time relative to 2036 (and other multiples of           apparent origin of the timescale itself, lurch backward
136 years). Timestamped data requiring such qualifica-              one second as each new timescale is established. If a
tion will be so precious that appropriate means should be           clock synchronized to NTP in 1991 was used to establish
readily available.                                                  the UTC epoch of an event that occurred in early 1972
                                                                    without correction, the event would appear sixteen sec-
Since a large body of today's protocol architects expect            onds late relative to UTC. However, NTP primary time
to continue plying their trade as of 2036, some consid-             servers resolve the epoch using the broadcast timecode,



                                                                8
so that the NTP clock is set to the broadcast value on the        of conventional civil time of day and day of year, since
current timescale. As a result, for the most precise deter-       our solar day and solar year oscillators are slightly unsta-
mination of epoch relative to the historic UTC clock, the         ble and incommensurate.
user must subtract from the apparent NTP epoch the
                                                                  In order to maintain the nominal solar year, the Gregorian
offsets shown in Table 2 at the relative epoches shown.
                                                                  calendar mandates the insertion of leap days, which can
This is a feature of almost all present day time-distribu-
                                                                  be determined in advance. In order to maintain the nomi-
tion mechanisms.
                                                                  nal solar day, leap seconds must be inserted at times
The chronometry involved can be illustrated with the              which cannot be reliably determined in advance. The
help of Figure 4, which shows the details of seconds              basis of civil time is the UTC clock, which was cloned
numbering just before, during and after the last sched-           from the Julian clock at 0h on 1 January 1972. Without
uled leap insertion at 23:59:59 on 31 December 1990.              knowledge of prior leap seconds, an event determined on
Notice the NTP leap bits are set on the day prior to              the UTC timescale can appear many seconds late on the
insertion, as indicated by the "+" symbols on the figure.         Julian timescale.
Since this makes the day one second longer than usual,
                                                                  The NTP timescale is based on the UTC timescale and
the NTP day rollover will not occur until the end of the
                                                                  runs at atomic frequency; however, it is calibrated in
first occurrence of second 400. The UTC time conver-
                                                                  standard seconds after 0h on 1 January 1900. The NTP
sion routines must notice the apparent time and the leap
                                                                  timescale is, in effect, redefined at each leap second; that
bits and handle the timescale conversions accordingly.
                                                                  is, since the NTP oscillator is phase-continuous spanning
Immediately after the leap insertion both timescales re-
                                                                  a leap second, the number of apparent NTP seconds since
sume ticking the seconds as if the leap had never hap-
                                                                  UTC came into being does not change. However, the
pened. The chronometric correspondence between the
                                                                  number of actual UTC seconds has in fact changed.
UTC and NTP timescales continues, but NTP has forgot-
                                                                  Reconciliation of the NTP and UTC timescales requires
ten about all past leap insertions. In NTP chronometric
                                                                  global institutional memory in the form of a table of
determination of UTC time intervals spanning leap sec-
                                                                  occurrences such as shown in Table 3.
onds will thus be in error, unless the exact times of
insertion are known.                                              7. References
It is possible that individual systems may use internal           [ALL74] Allan, D.W., J.H. Shoaf and D. Halford. Statis-
data formats other than the NTP timestamp format; how-               tics of time and frequency data analysis. In: Blair,
ever, a persuasive argument exists to use a two-part                 B.E. (Ed.). Time and Frequency Theory and Funda-
representation, one part for whole days (MJD or some                 mentals. National Bureau of Standards Monograph
fixed offset from it) and the other for the seconds (or              140, U.S. Department of Commerce, 1974, 151-204.
some scaled value, such as milliseconds). This not only
                                                                  [BEL86] Bell Communications Research. Digital Syn-
facilitates conversion between NTP and conventional
                                                                     chronization Network Plan. Technical Advisory
civil time, but makes the insertion of leap seconds much
                                                                     TA-NPL-000436, 1 November 1986.
easier. All that is required is to change the modulus of
the seconds counter, which on overflow increments the             [CAL86] "Calendar." The Encyclopaedia Britannica
day counter. This design insures that continuity of the              Macropaedia, 15th ed., vol. 15, pp. 460-477. Ency-
timescale is assured, even if outside synchronization is             clopaedia Britannica Co., New York, NY, 1986.
lost before, during or after leap-second insertion. Since
timestamp data are unaffected, synchronization is as-             [DER90] Dershowitz, N., and E.M. Reingold. Calendri-
sured, even if timestamp data are in flight at the instant           cal Calculations. Software Practice and Experience
and originated before or at that instant.                            20, 9 (September 1990), 899-928.
                                                                  [DOD81a] Defense Advanced Research Projects
6. Summary
                                                                     Agency. Internet Control Message Protocol.
By international agreement the primary frequency refer-              DARPA Network Working Group Report RFC-792,
ence for our civilization is the atomic oscillator. The              USC Information Sciences Institute, September
standard second is determined as a specified number of               1981.
atomic cycles, the standard day as 86,400 standard sec-           [DOD81b] Defense Advanced Research Projects
onds and the standard (Julian) year as 365.25 standard
                                                                     Agency. Internet Protocol. DARPA Network Work-
days. The Julian clock is synchronized to atomic fre-                ing Group Report RFC-791, USC Information Sci-
quency and its timescale calibrated in standard days
                                                                     ences Institute, September 1981.
(JDN), where JDN 0.0 corresponds to 12h on 1 January
4713 BC. While the Julian clock is elegant and everlast-          [JON83] Jones, R.H., and P.V. Tryon. Estimating time
ing, it is not useful in precision chronometric calculation          from atomic clocks. J. Research of the National



                                                              9
    Bureau of Standards 88, 1 (January-February 1983),         [NBS88] Automated Computer Time Service (ACTS).
    17-24.                                                        NBS Research Material 8101, U.S. Department of
                                                                  Commerce, 1988.
[LIN80] Lindsay, W.C., and A.V. Kantak. Network syn-
    chronization of random signals. IEEE Trans. Com-           [POS80] Postel, J. User Datagram Protocol. DARPA
    munications COM-28, 8 (August 1980), 1260-1266.               Network Working Group Report RFC-768, USC
                                                                  Information Sciences Institute, August 1980.
[MAR85] Marzullo, K., and S. Owicki. Maintaining the
   time in a distributed system. ACM Operating Sys-            [POS83] Postel, J. Time protocol. DARPA Network
   tems Review 19, 3 (July 1985), 44-54.                          Working Group Report RFC-868, USC Information
                                                                  Sciences Institute, May 1983.
[MIL89] Mills, D.L. Network Time Protocol (Version 2)          [RAM90] Ramanathan, P., K.G. Shin and R.W. Butler.
   specification and implementation. DARPA Net-                   Fault-tolerant clock synchronization in distributed
   work Working Group Report RFC-1119, University                 systems. IEEE Computer 23, 10 (October 1990),
   of Delaware, September 1989.                                   33-42.
[MIL90a] Mills, D.L. On the accuracy and stability of          [RAW87] Rawley, L.A., J.H. Taylor, M.M. Davis and
   clocks synchronized by the Network Time Protocol               D.W. Allan. Millisecond pulsar PSR 1937+21: a
   in the Internet system. ACM Computer Communica-                highly stable clock. Science 238 (6 November
   tion Review 20, 1 (January 1990), 65-75.                       1987), 761-765.

[MIL90b] Mills, D.L. Network Time Protocol (Version            [SCI91] ScienceScope. Sounding out the threat of global
   3) specification, implementation and analysis. Elec-            warning. Science 251 (8 February 1991), 615.
   trical Engineering Department Report 90-6-1, Uni-           [SHI87] Shin, K.G., and P. Ramanathan. Clock synchro-
   versity of Delaware, June 1990.                                 nization of a large multiprocessor system in the
                                                                   presence of malicious faults. IEEE Trans. Comput-
[MIL91] Mills, D.L. Internet time synchronization: the
                                                                   ers C-36, 1 (January 1987), 2-12.
   Network Time Protocol. IEEE Trans. Communica-
   tions 39, 10 (October 1991) (scheduled to appear).          [TIM86] " Time." The Encyclopaedia Britannica
                                                                   Macropaedia, 15th ed., vol. 28, pp. 652-664. Ency-
[MOR83] Morley, S.G., G.W. Brainerd and R.J. Sharer.               clopaedia Britannica Co., New York, NY, 1986.
   The Ancient Maya, 4th ed., pp. 598-600. Stanford
   University Press, Stanford, CA, 1983.                       [VAS88] Vasanthavada, N., and P.N. Marinos. Synchro-
                                                                  nization of fault-tolerant clocks in the presence of
[MOY82] Moyer, G. The Gregorian Calendar. Scientific              malicious failures. IEEE Trans. Computers C-37, 4
   American 246, 5 (May 1982), 144-152.                           (April 1988), 440-448.




                                                          10