A Distributed Edit-Compile Workflow What Makes Time Synchronization Hard? 1

Total Page:16

File Type:pdf, Size:1020Kb

A Distributed Edit-Compile Workflow What Makes Time Synchronization Hard? 1 Today Time Synchronization and 1. The need for time synchronization Logical Clocks 2. “Wall clock time” synchronization 3. Logical Time COS 418: Distributed Systems Lecture 4 Kyle Jamieson 2 A distributed edit-compile workflow What makes time synchronization hard? 1. Quartz oscillator sensitive to temperature, age, vibration, radiation –Accuracy ca. one part per million (one second of clock drift over 12 days) Physical time à 2. The internet is: • Asynchronous: arbitrary message delays • 2143 < 2144 è make doesn’t call compiler • Best-effort: messages don’t always arrive Lack of time synchronization result – a possible object file mismatch 3 4 1 Today Just use Coordinated Universal Time? 1. The need For time synchronization • UTC is broadcast From radio stations on land and satellite (e.g., the Global Positioning System) 2. “Wall clock time” synchronization – Computers with receivers can synchronize their clocks – Cristian’s algorithm, Berkeley algorithm, NTP with these timing signals • Signals From land-based stations are accurate to about 3. Logical Time 0.1−10 milliseconds – Lamport clocks – Vector clocks • Signals From GPS are accurate to about one microsecond – Why can’t we put GPS receivers on all our computers? 5 6 Synchronization to a time server Cristian’s algorithm: Outline • Suppose a server with an accurate clock (e.g., GPS- 1. Client sends a request packet, Client Server disciplined crystal oscillator) timestamped with its local clock T1 – Could simply issue an RPC to obtain the time: 2. Server timestamps its receipt oF the request T with its local clock T1 Client Server 2 T2 3. Server sends a response packet with its local clock T and T 3 2 T3 Time ↓ 4. Client locally timestamps its T4 receipt oF the server’s response T • But this doesn’t account For network latency 4 – Message delays will have outdated server’s answer How the client can use these timestamps to Time ↓ synchronize its local clock to the server’s local clock? 7 8 2 Cristian’s algorithm: Offset sample calculation Today Client Server 1. The need For time synchronization Goal: Client sets clock ß T3 + �resp 2. “Wall clock time” synchronization • Client samples round trip time � = T1 � + � = (T − T ) − (T − T ) – Cristian’s algorithm, Berkeley algorithm, NTP req resp 4 1 3 2 �req T2 • But client knows �, not �resp 3. Logical Time T3 �resp – Lamport clocks Assume: � ≈ � T4 req resp – Vector clocks Client sets clock ß T3 + ½� Time ↓ 9 10 Berkeley algorithm Berkeley algorithm • A single time server can fail, blocking timekeeping • Master machine: polls L other machines using Cristian’s algorithm à { �i } (i = 1…L) • The Berkeley algorithm is a distributed algorithm Master for timekeeping – Assumes all machines have equally-accurate local clocks – Obtains average from participating computers and synchronizes clocks to that average 11 12 3 Today The Network Time Protocol (NTP) 1. The need For time synchronization • Enables clients to be accurately synchronized to UTC despite message delays 2. “Wall clock time” synchronization • Provides reliable service – Cristian’s algorithm, Berkeley algorithm, NTP – Survives lengthy losses oF connectivity – Communicates over redundant network paths 3. Logical Time • Provides an accurate service – Lamport clocks – Unlike the Berkeley algorithm, leverages – Vector clocks heterogeneous accuracy in clocks 13 14 NTP: System structure NTP operation: Server selection • Servers and time sources are arranged in layers (strata) • Messages between an NTP client and server are exchanged in pairs: request and response – Stratum 0: High-precision time sources themselves • Use Cristian’s algorithm • e.g., atomic clocks, shortwave radio time receivers • For ith message exchange with a particular server, calculate: – Stratum 1: NTP servers directly connected to Stratum 0 1. Clock offset �i from client to server 2. Round trip time between client and server – Stratum 2: NTP servers that synchronize with Stratum 1 �i • Stratum 2 servers are clients of Stratum 1 servers • Over last eight exchanges with server k, the client – Stratum 3: NTP servers that synchronize with Stratum 2 computes its dispersion �k = maxi �i − mini �i • Stratum 3 servers are clients of Stratum 2 servers – Client uses the server with minimum dispersion • Users’ computers synchronize with Stratum 3 servers 15 16 4 NTP operation : Clock offset calculation NTP operation: How to change time • Client tracks minimum round trip time and associated • Can’t just change time: Don’t want time to run backwards offset over the last eight message exchanges (�0, �0) – Recall the make example Clock filter algorithm – �0 is the best estimate oF oFFset: client adjusts its clock by • Instead, change the update rate for the clock �0 to synchronize to server T2 Server T3 – Changes time in a more gradual Fashion x – Prevents inconsistent local timestamps OfFset � Each point �0 θ0 represents one sample T1 Client T4 θ = 1 [(T − T ) + (T − T )] �0 2 2 1 3 4 δ = (T4 − T1 ) − (T3 − T2 ) Round trip time � o The most accurate offset θ0 is measured at the lowest delay δ0 (apex of the wedge scattergram). 17 18 o The correct time θ must lie within the wedge θ0 ±(δ −δ0)/2. o The δ0 is estimated as the minimum of the last eight delay measurements and (θ0 ,δ0) becomes the peer update. o Each peer update can be used only once and must be more recent than the previous update.Clock synchronization: Take-away points Today • Clocks on diFFerent systems will always behave diFFerently 1. The need For time synchronization 22-Jul-07 – Disagreement between machines can result13 in undesirable behavior 2. “Wall clock time” synchronization • NTP, Berkeley clock synchronization – Cristian’s algorithm, Berkeley algorithm, NTP – Rely on timestamps to estimate network delays – 100s �s−ms accuracy 3. Logical Time – Clocks never exactly synchronized – Lamport clocks • Often inadequate for distributed systems – Vector clocks – Often need to reason about the order of events – Might need precision on the order of ns 19 20 5 Motivation: Multi-site database replication The consequences of concurrent updates • A New York-based bank wants to make its transaction • Replicate the database, keep one copy in sf, one in nyc ledger database resilient to whole-site failures – Client sends query to the nearest copy – Client sends update to both copies • Replicate the database, keep one copy in sf, one in nyc “Deposit Inconsistent replicas! $100”Updates should have been perFormed in the same order at each copy $1,000 San $1,000 $1,010 Francisco New York $1,100 $1,110 $1,111 “Pay 1% interest” 21 22 Idea: Logical clocks Defining “happens-before” • Consider three processes: P1, P2, and P3 • Landmark 1978 paper by Leslie Lamport • Notation: Event a happens before event b (a à b) • Insight: only the events themselves matter P1 P2 P3 Idea: Disregard the precise clock time Instead, capture just a “happens before” relationship between a pair of events Physical time ↓ 23 24 6 Defining “happens-before” Defining “happens-before” 1. Can observe event order at a single process 1. If same process and a occurs before b, then a à b P1 P2 P1 P2 P3 P3 a a b b Physical time ↓ Physical time ↓ 25 26 Defining “happens-before” Defining “happens-before” 1. If same process and a occurs before b, then a à b 1. If same process and a occurs before b, then a à b 2. Can observe ordering when processes communicate 2. If c is a message receipt oF b, then b à c P1 P2 P1 P2 P3 P3 a a b b c c Physical time ↓ Physical time ↓ 27 28 7 Defining “happens-before” Defining “happens-before” 1. If same process and a occurs before b, then a à b 1. If same process and a occurs before b, then a à b 2. If c is a message receipt oF b, then b à c 2. If c is a message receipt oF b, then b à c 3. Can observe ordering transitively 3. If a à b and b à c, then a à c P1 P2 P1 P2 P3 P3 a a b b c c Physical time ↓ Physical time ↓ 29 30 Concurrent events Lamport clocks: Objective • Not all events are related by à • We seek a clock time C(a) for every event a • a, d not related by à so concurrent, written as a || d Plan: Tag events with clock times; use clock times to make distributed system correct P1 P2 P3 a • Clock condition: IF a à b, then C(a) < C(b) d b c Physical time ↓ 31 32 8 The Lamport Clock algorithm The Lamport Clock algorithm • Each process Pi maintains a local clock Ci 1. BeFore executing an event a, Ci ß Ci + 1: 1. BeFore executing an event, Ci ß Ci + 1 – Set event time C(a) ß Ci P1 P2 P1 P2 C1=0 C2=0 P3 C1=1 C2=1 P3 C3=0 C(a) = 1 C3=1 a a b b c c Physical time ↓ Physical time ↓ 33 34 The Lamport Clock algorithm The Lamport Clock algorithm 1. BeFore executing an event b, Ci ß Ci + 1: 1. BeFore executing an event b, Ci ß Ci + 1 – Set event time C(b) ß Ci 2. Send the local clock in the message m P1 P2 P1 P2 C1=2 C2=1 P3 C1=2 C2=1 P3 C(a) = 1 C3=1 C(a) = 1 C3=1 a a C(b) = 2 C(b) = 2 b b c c Physical time ↓ C(m) = 2 Physical time ↓ 35 36 9 The Lamport Clock algorithm Ordering all events • Break ties by appending the process number to each event: 3. On process Pj receiving a message m: 1.
Recommended publications
  • Lecture 12: March 18 12.1 Overview 12.2 Clock Synchronization
    CMPSCI 677 Operating Systems Spring 2019 Lecture 12: March 18 Lecturer: Prashant Shenoy Scribe: Jaskaran Singh, Abhiram Eswaran(2018) Announcements: Midterm Exam on Friday Mar 22, Lab 2 will be released today, it is due after the exam. 12.1 Overview The topic of the lecture is \Time ordering and clock synchronization". This lecture covered the following topics. Clock Synchronization : Motivation, Cristians algorithm, Berkeley algorithm, NTP, GPS Logical Clocks : Event Ordering 12.2 Clock Synchronization 12.2.1 The motivation of clock synchronization In centralized systems and applications, it is not necessary to synchronize clocks since all entities use the system clock of one machine for time-keeping and one can determine the order of events take place according to their local timestamps. However, in a distributed system, lack of clock synchronization may cause issues. It is because each machine has its own system clock, and one clock may run faster than the other. Thus, one cannot determine whether event A in one machine occurs before event B in another machine only according to their local timestamps. For example, you modify files and save them on machine A, and use another machine B to compile the files modified. If one wishes to compile files in order and B has a faster clock than A, you may not correctly compile the files because the time of compiling files on B may be later than the time of editing files on A and we have nothing but local timestamps on different machines to go by, thus leading to errors. 12.2.2 How physical clocks and time work 1) Use astronomical metrics (solar day) to tell time: Solar noon is the time that sun is directly overhead.
    [Show full text]
  • Distributed Synchronization
    Distributed Synchronization CIS 505: Software Systems Communication between processes in a distributed system can have Lecture Note on Physical Clocks unpredictable delays, processes can fail, messages may be lost Synchronization in distributed systems is harder than in centralized systems because the need for distributed algorithms. Properties of distributed algorithms: 1 The relevant information is scattered among multiple machines. 2 Processes make decisions based only on locally available information. 3 A single point of failure in the system should be avoided. Insup Lee 4 No common clock or other precise global time source exists. Department of Computer and Information Science Challenge: How to design schemes so that multiple systems can University of Pennsylvania coordinate/synchronize to solve problems efficiently? CIS 505, Spring 2007 1 CIS 505, Spring 2007 Physical Clocks 2 The Myth of Simultaneity Event Timelines (Example of previous Slide) time “Event 1 and event 2 at same time” Event 1 Node 1 Event 2 Event 1 Event 2 Node 2 Observer A: Node 3 Event 2 is earlier than Event 1 Observer B: Node 4 Event 2 is simultaneous to Event 1 Observer C: Node 5 Event 1 is earlier than Event 2 e1 || e2 = e1 e2 | e2 e1 Note: The arrows start from an event and end at an observation. The slope of the arrows depend of relative speed of propagation CIS 505, Spring 2007 Physical Clocks 3 CIS 505, Spring 2007 Physical Clocks 4 1 Causality Event Timelines (Example of previous Slide) time Event 1 causes Event 1 Event 2 Node 1 Event 2 Node 2 Observer A: Event 1 before Event 2 Node 3 Observer B: Event 1 before Event 2 Node 4 Observer C: Event 1 before Event 2 Node 5 Note: In the timeline view, event 2 must be caused by some passage of Requirement: We have to establish causality, i.e., each observer must see information from event 1 if it is caused by event 1 event 1 before event 2 CIS 505, Spring 2007 Physical Clocks 5 CIS 505, Spring 2007 Physical Clocks 6 Why need to synchronize clocks? Physical Time foo.o created Some systems really need quite accurate absolute times.
    [Show full text]
  • Clock Synchronization Clock Synchronization Part 2, Chapter 5
    Clock Synchronization Clock Synchronization Part 2, Chapter 5 Roger Wattenhofer ETH Zurich – Distributed Computing – www.disco.ethz.ch 5/1 5/2 Overview TexPoint fonts used in EMF. Motivation Read the TexPoint manual before you delete this box.: AAAA A • Logical Time (“happened-before”) • Motivation • Determine the order of events in a distributed system • Real World Clock Sources, Hardware and Applications • Synchronize resources • Clock Synchronization in Distributed Systems • Theory of Clock Synchronization • Physical Time • Protocol: PulseSync • Timestamp events (email, sensor data, file access times etc.) • Synchronize audio and video streams • Measure signal propagation delays (Localization) • Wireless (TDMA, duty cycling) • Digital control systems (ESP, airplane autopilot etc.) 5/3 5/4 Properties of Clock Synchronization Algorithms World Time (UTC) • External vs. internal synchronization • Atomic Clock – External sync: Nodes synchronize with an external clock source (UTC) – UTC: Coordinated Universal Time – Internal sync: Nodes synchronize to a common time – SI definition 1s := 9192631770 oscillation cycles of the caesium-133 atom – to a leader, to an averaged time, ... – Clocks excite these atoms to oscillate and count the cycles – Almost no drift (about 1s in 10 Million years) • One-shot vs. continuous synchronization – Getting smaller and more energy efficient! – Periodic synchronization required to compensate clock drift • Online vs. offline time information – Offline: Can reconstruct time of an event when needed • Global vs.
    [Show full text]
  • Clock Synchronization
    Middleware Laboratory Sapienza Università di Roma MIDLAB Dipartimento di Informatica e Sistemistica Clock Synchronization Marco Platania www.dis.uniroma1.it/~platania [email protected] Sapienza University of Rome Time notion Each computer is equipped with a physical (hardware) clock It can be viewed as a counter incremented by ticks of an oscillator i At time t, the Operating System (OS) of a process y r o t reads the hardware clock H(t) of the processor a r o b a L e r a C = a H(t) + b w Then, it generates the software clock e l d d i M C approximately measures the time t of process i B A L D I M notion among processes among notion isas known evolve executions distributed (DS) Distributed in Systems Time Problems: how to analyze a in DS factor Time a key is The technique used to coordinate a common time time common a techniqueThe used coordinate to common notion time common of a process state during distributed a computation However, it©s important processes for a share to However, Lacking of a global reference time: it©s hard to know Lackingthe time:it©sknow to hard of a global reference ClockSynchronization MIDLAB Middleware Laboratory Clock Synchronization [10] The hardware clock of a set of computers (system nodes) may differ because they count time with different frequencies Clock Synchronization faces this problem by means of synchronization algorithms y r Standard communication infrastructure o t a r o No additional hardware b a L e r a w e l Clock synchronization algorithms d d i External M Internal B
    [Show full text]
  • PTP Background and Overview
    PTP Background and Overview by Jeff Laird, July 2012 Introduction Precision Time Protocol (PTP) allows computers in a local area network to synchronize their clocks to within a microsecond of each other. The standard was originally defined in 2002. The second and current version of the standard was published in 2008. It is known as “IEEE 1588-2008” (IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems). PTP compared to other synchronization methods PTP is more accurate than NTP but less accurate than GPS. NTP NTP (Network Time Protocol) was standardized in 1985 and is the most common clock synchronization method, being used by tens of millions of client computers to synchronize to NTP servers over the Internet. NTP is primarily used in wide-area networks, where it can achieve accuracy to 10 ms. On a local-area network NTP can achieve accuracy to 200 μs. NTP includes SNTP (Simple NTP), which is stateless (no averaging) and therefore suitable for embedded devices, but less accurate. In NTP terminology, stratum-0 clocks are atomic clocks, GPS satellites, and radio clocks not directly on a network. They provide the time to stratum-1 clocks (network time servers) using a PPS (pulse-per- second) signal over an RS-232 serial connection. Stratum-2 clocks typically synchronize with multiple stratum-1 clocks. Stratum-3 clocks synchronize with one or more stratum-2 clocks, and so on. An NTP timestamp is 64 bits long—32 bits for seconds (to 136 years) and 32 bits for fraction of a second (to <0.25 ns).
    [Show full text]
  • STP Recommendations for the FINRA Clock Synchronization Requirements
    STP recommendations for the FINRA clock synchronization requirements This document can be found on the web, www.ibm.com/support/techdocs Search for document number WP102690 under the category of “White Papers". Version Date: January 20, 2017 George Kozakos [email protected] © IBM Copyright, 2017 Version 1, January 20, 2017 Web location of document ( www.ibm.com/support/techdocs ) ~ 1 ~ STP recommendations for the FINRA clock synchronization requirements Contents Configuring an external time source (ETS) via a network time protocol (NTP) server with pulse per second (PPS) ......................................................................................................... 3 Activating the z/OS time of day (TOD) clock accuracy monitor .............................................. 4 Maintaining time accuracy across power-on-reset (POR) ...................................................... 5 Specifying leap seconds ....................................................................................................... 6 Appendix ............................................................................................................................. 7 References ........................................................................................................................... 8 Trademarks ......................................................................................................................... 8 Feedback ............................................................................................................................
    [Show full text]
  • Distributed Systems: Synchronization
    Chapter 3: Distributed Systems: Synchronization Fall 2013 Jussi Kangasharju Chapter Outline n Clocks and time n Global state n Mutual exclusion n Election algorithms Kangasharju: Distributed Systems 2 Time and Clocks What we need? How to solve? Real time Universal time (Network time) Interval length Computer clock Order of events Network time (Universal time) NOTE: Time is monotonous Kangasharju: Distributed Systems 3 Measuring Time n Traditionally time measured astronomically n Transit of the sun (highest point in the sky) n Solar day and solar second n Problem: Earth’s rotation is slowing down n Days get longer and longer n 300 million years ago there were 400 days in the year ;-) n Modern way to measure time is atomic clock n Based on transitions in Cesium-133 atom n Still need to correct for Earth’s rotation n Result: Universal Coordinated Time (UTC) n UTC available via radio signal, telephone line, satellite (GPS) Kangasharju: Distributed Systems 4 Hardware/Software Clocks n Physical clocks in computers are realized as crystal oscillation counters at the hardware level n Correspond to counter register H(t) n Used to generate interrupts n Usually scaled to approximate physical time t, yielding software clock C(t), C(t) = αH(t) + β n C(t) measures time relative to some reference event, e.g., 64 bit counter for # of nanoseconds since last boot n Simplification: C(t) carries an approximation of real time n Ideally, C(t) = t (never 100% achieved) n Note: Values given by two consecutive clock queries will differ only if clock resolution is sufficiently smaller than processor cycle time Kangasharju: Distributed Systems 5 Problems with Hardware/Software Clocks n Skew: Disagreement in the reading of two clocks n Drift: Difference in the rate at which two clocks count the time n Due to physical differences in crystals, plus heat, humidity, voltage, etc.
    [Show full text]
  • BLAS: Broadcast Relative Localization and Clock Synchronization for Dynamic Dense Multi-Agent Systems Qin Shi, Xiaowei Cui, Sihao Zhao, Shuang Xu, and Mingquan Lu
    1 BLAS: Broadcast Relative Localization and Clock Synchronization for Dynamic Dense Multi-Agent Systems Qin Shi, Xiaowei Cui, Sihao Zhao, Shuang Xu, and Mingquan Lu Abstract—The spatiotemporal information plays crucial roles better capabilities beyond only a single agent, in terms of in a multi-agent system (MAS). However, for a highly dynamic robustness, scalability, and effectiveness. and dense MAS in unknown environments, estimating its spa- Realizing this vision will require MASs to overcome some tiotemporal states is a difficult problem. In this paper, we present BLAS: a wireless broadcast relative localization and clock new unique challenges. Among these, real-time precise relative synchronization system to address these challenges. Our BLAS localization and clock synchronization are two key challenges. system exploits a broadcast architecture, under which a MAS Relative localization is the process of determining the multi- is categorized into parent agents that broadcast wireless packets agent dynamic topology, and clock synchronization provides a and child agents that are passive receivers, to reduce the number common time reference for distributed agents. The spatiotem- of required packets among agents for relative localization and clock synchronization. We first propose an asynchronous broad- poral determination is crucial for MASs to perform basic oper- casting and passively receiving (ABPR) protocol. The protocol ations: 1) Coordination: Spatiotemporal coordination between schedules the broadcast of parent agents using a distributed time agents is necessary for a MAS to collaboratively carry out division multiple access (D-TDMA) scheme and delivers inter- tasks effectively. The difficulty of the coordination operations agent information used for joint relative localization and clock strongly lies in the knowledge of the relative position and clock synchronization.
    [Show full text]
  • Lecture 12: March 4 12.1 Review 12.2 Clock Synchronization
    CMPSCI 677 Operating Systems Spring 2013 Lecture 12: March 4 Lecturer: Prashant Shenoy Scribe: Timothy Wang 12.1 Review Objects and resources in distributed systems have names, which are mainly used to resolve to objects that your application is trying to access. DNS is an example of a naming system. DNS resolves a global sets of clients, and thus itself must be distributed. LDAP is another example of distributed naming system, which provides a more general lookup mechanism. 12.2 Clock Synchronization Assume that a machine has a system clock that tells you the current time. Every application can request the current time from the system clock. Time is unambiguous in centralized systems, so there is no syn- chronization problem in centralized systems. In a distributed system,however,each machine has its own clock. Note that clocks in machines are usually crystal oscillators. They are not very accurate. Thus, the asynchronization among the clocks will cause problems. Let’s use ”make” as an example. Make is an utility that allows you to incrementally compile every source file that was modified since the previous time it was run. The way it works is to compare the time stamps on the source files and the object files. If these files are located in different machines, the clocks on these machines may not be synchronized. Then if you save a source file on a machine with slower clock, its time stamp may be earlier than the object file, and make won’t recompile that source file. Many problems like this occur because of lack of synchronization.
    [Show full text]
  • Optimization of Time Synchronization Techniques on Computer Networks
    THÈSE Pour obtenir le grade de DOCTEUR DE L’UNIVERSITÉ GRENOBLE ALPES Spécialité : Informatique Arrêté ministériel : 25 mai 2016 Présentée par Faten MKACHER Thèse dirigée par Andrzej DUDA et coencadrée par Fabrice GUERY Préparée au sein du Laboratoire d’Informatique de Grenoble (LIG), dans l’École Doctorale Mathématiques, Sciences et Technologies de l’Information, Informatique (EDMSTII). Optimization of Time Synchronization Techniques on Computer Networks Thèse soutenue publiquement le 02 juin 2020, devant le jury composé de : Noel de Palma Professeur, Université Grenoble Alpes, Président Katia Jaffrés-Runser Maître de conférence, Université de Toulouse, Rapporteur Hervé Rivano Professeur, Université INSA de Lyon, Rapporteur Andrzej Duda Professeur, Grenoble INP, Directeur de thèse Fabrice Guery Responsable Innovation, Gorgy Timing, Invité 2 Abstract Nowadays, as society has become more interconnected, secure and accurate time-keeping be- comes more and more critical for many applications. Computing devices usually use crystal clocks with low precision for local synchronization. These low-quality clocks cause a large drift between machines. The solution to provide precise time synchronization between them is to use a refer- ence clock having an accurate source of time and then disseminate time over a communication network to other devices. One of the protocols that provide time synchronization over packet- switched networks is Network Time Protocol (NTP). Although NTP has operated well for a general- purpose use for many years, both its security and accuracy are ill-suited for future challenges. Many security mechanisms rely on time as part of their operation. For example, before using a digital certificate, it is necessary to confirm its time validity.
    [Show full text]
  • Adaptive Clock Synchronization in Sensor Networks
    Adaptive Clock Synchronization in Sensor Networks Santashil PalChaudhuri Amit Kumar Saha David B. Johnson [email protected] [email protected] [email protected] Department of Computer Science Rice University Houston, TX 77005 ABSTRACT 1. INTRODUCTION Recent advances in technology have made low cost, low Recent advances in technology have made low-cost, low- power wireless sensors a reality. Clock synchronization is an power wireless sensors a reality. Sensor networks formed important service in any distributed system, including sen- from such sensors can be deployed in an ad hoc fashion and sor network systems. Applications of clock synchronization cooperate to sense and process a physical phenomenon. As in sensor networks include data integration in sensors, sen- each sensor has a finite battery source, an important feature sor reading fusion, TDMA medium access scheduling, and of sensor network is energy efficiency to extend the network's power mode energy saving. However, for a number of rea- lifetime. sons, standard clock synchronization protocols are unsuit- As in any distributing computer system, clock synchro- able for direct application in sensor networks. nization is an important service in sensor networks. Sensor In this paper, we introduce the concept of adaptive clock network applications can use synchronization for data inte- synchronization based on the need of the application and gration and sensor reading fusion. A sensor network may the resource constraint in the sensor networks. We describe also use synchronization for TDMA medium access schedul- a probabilistic method for clock synchronization that uses ing, power mode energy savings, and scheduling for direc- the higher precision of receiver-to-receiver synchronization, tional antenna reception.
    [Show full text]
  • Time and Synchronization
    FYS3240- 4240 Data acquisition & control Time and synchronization Spring 2018– Lecture #11 Bekkeng, 02.04.2018 Why is time and synchronization so important? • Some examples: – In financial trading we must know the time accurately. – Important to reduce confusion in shared file systems. – Update databases (in parallel). – Tracking security breaches or network usage requires accurate timestamps in logs. – Used in electric power systems (fault recorders, billing meters, etc.). – Necessary in telecommunication networks. – Global Navigation Satellite Systems (GNSS), such as GPS, requires very accurate clock synchronization for position calculations. TU-artikkel : GPS mer enn bare navigasjon How good is a crystal oscillator (XO) ? • Interested in the long-term measurement stability and accuracy • Watch crystal oscillator: about 20 ppm, or worse – Error > 1.73 s in 24 hours (almost 1 minute drift in one month) • The accuracy can be improved using a: – Temperature compensated crystal oscillator (TCXO) – Oven controlled crystal oscillator (OCXO) • the oscillator is enclosed in a temperature controlled oven • Some DAQ card accuracy examples: – TCXO : 1 ppm – OCXO: 50 ppb Chip Scale Atomic Clock (CSAC) • Two orders of magnitude better accuracy than oven-controlled crystal oscillators (OCXOs). • Can keep track of the time if GPS-signals are lost (e.g. inside a building, or due to jamming). • Example: Microsemi CSAC – < 120 mW power consumption – < 17 cm3 volume – 35 g weight – two outputs; a 10 MHz square wave and 1 PPS (Pulse Per Second) The frequency of the TCXO is continuously – Maintains time-of-day (TOD) as a 32-bit compared and corrected to ground state hyperfine frequency of the cesium atoms, unsigned integer which is incremented contained in the “physics package”, which synchronously with the rising edge of the thereby improves the stability and 1 PPS output environmental sensitivity of the TCXO.
    [Show full text]