The NIST Internet Time Service Michael Lombardi NIST Time and Frequency Division

Slides:



Advertisements
Similar presentations
Lecture 1: Logical, Physical & Casual Time (Part 2) Anish Arora CSE 763.
Advertisements

Time in Distributed Systems
HIERARCHY REFERENCING TIME SYNCHRONIZATION PROTOCOL Prepared by : Sunny Kr. Lohani, Roll – 16 Sem – 7, Dept. of Comp. Sc. & Engg.
Judah Levine, Pulsar-Timing-2005: 1 Coordinated Universal Time (UTC) Judah Levine JILA –- Time and Frequency Div. NIST and Univ. of Colorado Boulder, Colorado.
Time and Clock Primary standard = rotation of earth De facto primary standard = atomic clock (1 atomic second = 9,192,631,770 orbital transitions of Cesium.
Time in Embedded and Real Time Systems Lecture #6 David Andrews
Teaching material based on Distributed Systems: Concepts and Design, Edition 3, Addison-Wesley Copyright © George Coulouris, Jean Dollimore, Tim.
Time and Global States Chapter 11. Why time? Time is an Important and interesting issue in distributes systems. One we can measure accurately. Can use.
Sir John Tenniel; Alice’s Adventures in Wonderland,Lewis Carroll 7-Aug-151 NTP Architecture, Protocol and Algorithms David L. Mills University of Delaware.
Lecture 9: Time & Clocks CDK4: Sections 11.1 – 11.4 CDK5: Sections 14.1 – 14.4 TVS: Sections 6.1 – 6.2 Topics: Synchronization Logical time (Lamport) Vector.
1 Synchronization Part 1 REK’s adaptation of Claypool’s adaptation of Tanenbaum’s Distributed Systems Chapter 5.
Internet Basics.
1 Physical Clocks need for time in distributed systems physical clocks and their problems synchronizing physical clocks u coordinated universal time (UTC)
Judah Levine, NIST, CENAM, Oct Internet Time Services and NTP, The Network Time Protocol Judah Levine Time and Frequency Division NIST Boulder
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks Locations.
Enhanced NTP IETF – TicToc BOF Greg Dowd – Jeremy Bennington –
A Security Analysis of the Network Time Protocol (NTP) Presentation by Tianen Liu.
Midterm Review - Network Layers. Computer 1Computer 2 2.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
NTP Network Time Protocol Nóirín Plunkett Network Time Protocol Nóirín Plunkett.
A Security Analysis of Network Time Protocol Andy Hospodor COEN /03/03 Paper by Matt Bishop, 1991.
GPS based time synchronization of PC hardware Antti Gröhn
Traceability and Legal Metrology
© Jörg Liebeherr (modified by M. Veeraraghavan) 1 ICMP: A helper protocol to IP The Internet Control Message Protocol (ICMP) is the protocol used for error.
Week 12 (2012) Dr. Ghada Drahem. INTENDED LEARNING OUTCOMES This lecture covers: Networking concepts and terminology Common networking and communications.
Computer Science Lecture 10, page 1 CS677: Distributed OS Last Class: Naming Name distribution: use hierarchies DNS X.500 and LDAP.
Parallel and Distributed Simulation Synchronizing Wallclock Time.
Computer Science Lecture 9, page 1 CS677: Distributed OS Last Class: Naming Name distribution: use hierarchies DNS Iterative versus Recursive name resolution.
Distributing UTC(NIST) to Industrial Time and Frequency Users Michael Lombardi NIST Time and Frequency Division Distributing UTC(NIST) to Industrial Time.
National Time Service Center. CAS Time Standard and Ensemble Pulsar Time Scale Ding Chen, George & Bill, Dick, PPTA team 2011 年 5 月 9 日, Beijing.
Lecture 4 Overview. Ethernet Data Link Layer protocol Ethernet (IEEE 802.3) is widely used Supported by a variety of physical layer implementations Multi-access.
3.2 Software Fundamentals. A protocol is a formal description of digital message formats and the rules for exchanging those messages in or between computing.
Lecture 9: Time and clocks (Chap 11) Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2002.
Time This powerpoint presentation has been adapted from: 1) sApr20.ppt.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
1 Client-Server Interaction. 2 Functionality Transport layer and layers below –Basic communication –Reliability Application layer –Abstractions Files.
Real-Time & MultiMedia Lab Synchronization Distributed System Jin-Seung,KIM.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
ICALEPCS 2005 Geneva, Oct. 12 The ALMA Telescope Control SystemA. Farris The ALMA Telescope Control System Allen Farris Ralph Marson Jeff Kern National.
Reading TCP/IP Protocol. Training target: Read the following reading materials and use the reading skills mentioned in the passages above. You may also.
Cisco Confidential © 2013 Cisco and/or its affiliates. All rights reserved. 1 Cisco Networking Training (CCENT/CCT/CCNA R&S) Rick Rowe Ron Giannetti.
6 SYNCHRONIZATION. introduction processes synchronize –exclusive access. –agree on the ordering of events much more difficult compared to synchronization.
Hwajung Lee. Primary standard = rotation of earth De facto primary standard = atomic clock (1 atomic second = 9,192,631,770 orbital transitions of Cesium.
Computer Network Design EEL 6785 Dr. Janusz Zalewski University of Central Florida.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Distributed Systems Lecture 5 Time and synchronization 1.
Timing applications of GPS Time for GPS Vivekanandanmurugan Sivaraman Gaurav Sharma John Hannah.
Page 1 Clock Synchronization: Physical Clocks Minqi Zhou Distributed Systems Except as otherwise noted, the content of this presentation.
Chapter 2 PHYSICAL LAYER.
Chapter 9 ICMP.
Distributed Computing
Infrastructure II NTP.
Lecture 5 Time and synchronization
NTP Performance Analysis
Net 435: Wireless sensor network (WSN)
Dept. of Computer Science
Logical time (Lamport)
NTP Clock Discipline Modelling and Analysis
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Internet Control Message Protocol
CDK: Sections 11.1 – 11.4 TVS: Sections 6.1 – 6.2
NTP Architecture, Protocol and Algorithms
Logical time (Lamport)
Logical time (Lamport)
What’s the Time? Geoff Huston APNIC.
What’s the Time? Geoff Huston APNIC.
Logical time (Lamport)
Last Class: Naming Name distribution: use hierarchies DNS
Presentation transcript:

The NIST Internet Time Service Michael Lombardi NIST Time and Frequency Division

NIST maintains a Coordinated Universal Time scale, called UTC(NIST), that it distributes through a variety of free broadcast services that synchronize many millions of clocks every day. The largest service in terms of numbers of users is the Internet Time Service (ITS). Introduction

6 Hydrogen Masers 4 Cesium Beam standards Measurement System UTC(NIST) Two-way satellite time & frequency transfer GPS UTC(NIST) is continuously compared to other national time standards and the NIST clocks contribute to Coordinate Universal Time or UTC. UTC(NIST) Time Scale

NIST-F1 laser-cooled fountain standard “atomic clock” A cesium fountain frequency standard is used to calibrate the UTC(NIST) time scale. NIST-F1 produces the world’s best realization of the definition of the second, which is the duration of 9,192,631,770 periods of the radiation corresponding to the transition between the two hyperfine levels of the ground state of the 133 Cs atom. Current accuracy (uncertainty): 3 x trillionths of a second per day. 1 second in 105 million years. Equivalent to measuring distance from earth to sun (1.5 x m or 93 million miles) to uncertainty of about 45  m (less than thickness of human hair). NIST-F1 Cesium Fountain Clock

Computer clocks are more like wristwatches than atomic clocks   Computer clock resolution is typically defined by the interrupt rate. This value limits the resolution of a time stamp and determines how accurately a clock can be set. Some common values:   18.2 Hz (55 ms resolution, DOS computers)   100 Hz (10 ms resolution, typical for Windows PCs)   1024 Hz (1 ms, typical for Unix computers)   The performance of the clock depends on the computer’s internal timekeeping oscillator. This is typically a Hz (2 15 Hz) quartz crystal oscillator, the same type of oscillator used in a wristwatch.   The frequency of the quartz crystal is sensitive to temperature changes. They keep better time on a wrist, where the temperature is stable, than they do inside a computer.   A good crystal inside a PC might keep time to within about 2 seconds per day (20 ppm). A bad crystal could be much worse (minutes per day).

Internet Time Protocols n Time Protocol u 32-bit time code with 1 second resolution n Daytime Protocol u no specified standard u NIST version: JJJJ YR-MO-DA HH:MM:SS TT L H msADV UTC(NIST) OTM n Network Time Protocol (NTP) u 64-bit time code with 233 ps resolution n About 95% of the requests to the NIST ITS are NTP requests, with the remaining requests divided about evenly between the Time and Daytime Protocols.

Network Time Protocol (NTP) n The most widely used mechanism for time distribution via the Internet, defined by the RFC-1305 standard. n Invented by David Mills of the University of Delaware with first implementation appearing before n A hierarchical system consisting of levels of clock sources. Each level of this hierarchy is termed a stratum. Synchronization flows from primary servers at the lowest stratum to secondary servers at progressively higher stratums. n Servers referenced to national time standards are called Stratum 1. There are about 40 to 50 Stratum-1 NTP servers in the U. S. that are open access, including the NIST servers (see ntp.org for a current list).

How NTP transmits time information n A client can also be a server to computers at higher stratums. n Client makes requests of a server at lower stratum via TCP/IP port 123 n A 48-bit packet is sent n This packet contains four 64-bit timestamps: u Reference timestamp – local time at which system clock was last set or corrected u Originate timestamp – time when request left client for server u Receive timestamp – time when request arrived at server u Transmit timestamp – time when request left server for client

The NTP Packet StratPollLIModeVN Root Delay Root Dispersion Reference Identifier Reference Time stamp (64) Originate Time stamp (64) Receive Time stamp (64) Transmit Time stamp (64) Res leapleap indicator (LI) versionversion number (VN) modeprotocol mode stratumstratum  poll interval (16 s to 36 hours)  clock resolution  root delay, round trip delay to ref clock  root dispersion, max error refidreference ID – source of time reftimereference time stamp T 1 originate time stamp T 2 receive time stamp T 3 transmit time stamp MACMD5 message hash (optional) MAC (optional 160) Packet header VariablesDescription

NIST time stamp format The NTP time stamp is a 64 bit binary value with an implied fraction point between the two 32 bit halves. For example: equals a decimal 1.5. The multipliers to the right of the point are 1/2, 1/4, 1/8, 1/16, and so on. The 233 picosecond resolution is because: 1 / 2 32 = = 233 × seconds One picosecond is 1 × seconds. The epoch for NTP starts in the year 1900 while the epoch in UNIX starts in Therefore, the integer seconds will roll over in Thus, future versions of NTP might use 128 bit time stamps.

Example of NTP Client/Server Interaction n Client can request time from several servers n Client intercompares server times, network delays, etc. n Looks for inconsistencies, throws out bad data n Can repeat process to test network stability n Uses data obtained to steer client clock

Clock Steering n Client software steers/corrects computer clock in between NTP requests n Old versions of NTP used a phase locked loop (PLL) to minimize the time error n Beginning with NTPv4, a combination PLL/FLL (frequency locked loop) algorithm is used to minimize time error. This algorithm improves performance over previous versions. Generally speaking u A PLL works best when system jitter dominates u A FLL works best when oscillator wander dominates

How accurate is NTP? n n Stratum-1 servers can keep time to better than 1 millisecond. n n The ability to synchronize a clock is limited by the clock resolution discussed earlier (typically 10 milliseconds for Windows computers). n n The ability to keep time between NTP requests depends on the client hardware and the software implementation. The Windows Time Service (XP, Windows 7, etc.) only requests time (by default) from an NTP server once per week, and can keep time to about 1 to 2 seconds per week through clock steering. n n Better clock steering or more frequent timing requests allow some NTP clients to keep time to within a small fraction of a second at all times. In some cases, the maximum time error will be nearly the same as the clock resolution – for example, 10 milliseconds over the public Internet. n n For a detailed discussion of how NTP works and a discussion of how to model and analyze timekeeping errors, see: David L. Mills, “Computer Network Time Synchronization: The Network Time Protocol,” CRC Press, 2006.

 One of the world’s most popular time distribution services. The ITS handles about 4 billion timing requests per day. The exact number of computer clocks synchronized daily is unknown, but is certainly more than 100 million.  24 servers located around the United States.  Client software is built into common operating systems: Windows, Mac, Unix. Internet Time Service (ITS)

The Servers n n Dell Servers (several models in use, including 1850, 1950, 2950). n n The operating system is FreeBSD. The operating system kernel was modified at NIST to improve the timekeeping performance. n n All servers have external telephone modems to get time from NIST. n n Some sites have multiple servers on a load balancer. n n Some sites have small rubidium atomic oscillators to improve the short term stability of the server clocks. n n The time server software was written by Judah Levine at NIST, and can handle more traffic than most commercially available NTP servers. The busiest servers are easily handling about 10,000 NTP requests per second.

Server Sites and IP Addresses n n A list of the current ITS servers, including locations, IP addresses, and current status, can be found here: n n One third of the servers (eight) are located at NIST facilities (five in Boulder, one in Fort Collins, and two at the NIST headquarters in Gaithersburg, Maryland) n n The remaining 16 servers are located in 10 different states. n n One server is located at Microsoft in Redmond, Washington.

NIST ITS Server Locations

How the NIST Servers are Synchronized to UTC(NIST) n Each ITS server makes a periodic phone call (about one call per hour) to servers in Boulder that are directly connected to the UTC(NIST) time scale. The call is made is over regular telephone lines using analog modems. n The Boulder servers send an on-time marker (OTM) to the Internet time server. This marker is then sent back to Boulder and the round trip delay is measured. This is done several times to get a good estimate of the delay. Another OTM is then sent from Boulder that has been advanced by half the amount of the round trip delay. n The OTMs sent from Boulder deliver UTC(NIST) to the servers. They OTMs provide the input to an algorithm called LOCKCLOCK that u Models the performance of the server clock u Steers the server clock to agree with UTC(NIST) using a frequency locked loop (FLL) u Makes periodic time corrections to the server clock based on a statistical evaluation of the clock’s oscillator frequency

Telephone Time Code JJJJ YY-MM-DD HH:MM:SS TT L DUT1 msADV UTC(NIST) OTM

Bandwidth Usage n n Bandwidth requirements are relatively small when considered in terms of the scale of Internet. Traffic is distributed across 24 servers, although much more than 20% of the traffic is handled by the servers in Boulder, Colorado. The amount of bandwidth used is unknown, but consider a very rough estimate: u u 4 x 10 9 requests per day u u Assume 100 bytes per request, with overhead, then ~3.2 x bits per day, or 3.2 billion kilobits u u A rough estimate of bandwidth is 37,000 kbits/second, or about 1,500 kbits/second per average server

n One week averages since 1997 showing total number of requests to all NIST time servers n Scale is logarithmic because variation is so large n Increase is roughly 5% per month

Questions?