400 likes | 485 Vues
Time Synchronization - using Reference-Broadcast Synchronization. Fine-Grained Network Time Synchronization using Reference Broadcasts by Jeremy Elson, Lewis Girod and Deborah Estrin. Presentation by Vivek Vaidyanathan CS 691, Winter 2003. Outline. Introduction
E N D
Time Synchronization - using Reference-Broadcast Synchronization Fine-Grained Network Time Synchronization using Reference Broadcasts by Jeremy Elson, Lewis Girod and Deborah Estrin Presentation by Vivek Vaidyanathan CS 691, Winter 2003
Outline • Introduction • Concept of Traditional Time Synchronization • Concept of Reference Broadcast Synchronization • Kind of latency in TTS and RBS • RBS algorithm for: • Single Broadcast Network • Multi-Hop Network • Analysis of RBS algorithms • Advantages and Limitations of RBS
Introduction • Time synchronization is highly critical in sensor networks for purposes such as: • Data Diffusion • Coordinated Actuation • Object Tracking
Purpose • To Synchronize all the nodes in the sensor network using a method that: • Eliminates error efficiently • Energy conservative • Provides tight synchronization
Applications of Time Synchronization • Secure cryptographic schemes • Coordination of future action • Ordering logged events during system debugging
Concept of TTS- Traditional Time Synchronization • The sender periodically sends a message with its current clock as a timestamp to the receiver • Receiver then synchronizes with the sender by changing its clock to the timestamp of the message it has received from the sender (if the latency is small compared to the desired accuracy) • Sender calculates the phase error by measuring the total round trip-time by sending and receiving the respective response from the receiver (if the latency is large compared to the desired accuracy)
S S R R Illustration of TTS (a) latency is small compared to desired accuracy (b) latency is large compared to desired accuracy
Concept of RBS – Reference-Broadcast Synchronization • Reference broadcasts do not have an explicit timestamp • Receivers use reference broadcast’s arrival time as a point of reference for comparing nodes’ clocks • Receivers synchronizes with one another using the message’s timestamp (which is different from one receiver to another)
1 2 A 3 4 Illustration of RBS
RBS vs. TTS • RBS - Synchronizes a set of receivers with one another Traditional - Senders synchronizes with receivers • RBS – Supports both single hop and multi hop networks Traditional – mostly supports only single hop networks
RBS vs. TTS TTS RBS Example: NTP (Network Time Protocol)
Types of errors that TTS should detect and eliminate • Send Time Latency • time spent at the sender to construct the message • Access Time Latency • time spent at the sender to wait for access to transmit the message • Prorogation Time Latency • time spent by the message in traveling from the sender to the receiver • Receive Time Latency • time spent at the receiver to receive the message from the channel and to notify the host
Types of errors that RBS should detect and eliminate • Phase error • due to nodes’ clock that contains different times • Clock skew • due to nodes’ clock that run at different rate Therefore, We go for RBS!!!
RBS algorithm for single broadcast domain (assuming no clock skew) • Basic idea to estimate phase offset: • Transmitter broadcasts a reference packet to two receivers • Each receiver records the time that the reference was received, according to its local clock • The receivers exchange their observations
RBS algorithm for single broadcast domain (assuming no clock skew) • Basic idea to estimate phase offset for non-deterministic receivers: • Transmitter broadcasts m reference packets • Each of the n receivers records the time that the reference was received, according to its local clock • The receivers exchange their observation • Each Receiver i can compute its phase offset to any other receiver j
RBS algorithm for single broadcast domain (assuming no clock skew) • Formula for calculating the phase offset of receiver i with other receiver j: n : number of receivers m : number of reference broadcasts Tr,b : r’s clock when it received broadcast b {r n, b m} m in, jn : Offset[i,j] = 1/m k=1 (Tj,k – Ti,k) Then the receiver changes its clock by the calculated phase offset
Analysis of RBS algorithm for single broadcast domain (no clock skew) • Mean group dispersion from the average of 1000 simulated trials for: • 20-receiver group (top) • 2-receiver group (bottom) 2-D view:
Analysis of RBS algorithm for single broadcast domain (no clock skew) • Mean group dispersion from the average of 1000 simulated trials for the same data set, from 2 to 20 receivers (inclusive) 3-D view:
RBS algorithm for single broadcast domain (with clock skew) A MATHEMATICAL APPROACH • The phase offset with the clock skew is estimated by: • Least-squares linear regression graph • From the best-fit line of the graph, following can be inferred: • Slope of the line : Clock skew of the nodes’ clock • Intercept of the line : Phase of the nodes’ clock
RBS algorithm for single broadcast domain (with clock skew) • Basic idea to estimate phase offset and clock skew for non-deterministic receivers: • Transmitter broadcasts m reference packets • Each of the n receivers records the time that the reference was received, according to its local clock • The receivers exchange their observation • Each Receiver i can compute its phase offset to any other receiver j
RBS algorithm for single broadcast domain (with clock skew) • Formula for calculating the phase offset and clock skew of receiver r1with other receiver r2: Tr,b : r’s clock when it received broadcast b, for each pulse k that was received by receivers r1 and r2 , we plot a graph : x = Tr1, k y = Tr2,k – Tr1,k • Diagonal line drawn through the points represents the best linear fit to the data
RBS algorithm for single broadcast domain (with clock skew) • Diagonal line minimizes the residual error (RMS). • Therefore, we go for calculating the slope and intercept of the diagonal line • Time value of r1 is converted to time value of r2 by combining the slope and intercept data obtained
Analysis of RBS algorithm for single broadcast domain (with clock skew) Synchronization of the Mote’s internal clock Vertical impulses show the distance of each point from the best-fit line – RMS error Phase offset (usec) Fit error (usec) Time (sec)
Analysis of RBS algorithm for single broadcast domain (with clock skew) Synchronization of clocks on PC104-compatible single board computers using Mote as NIC Phase offset (usec) Time (sec)
Why RBS is the best? • Comparison of RBS with NTP and NTP-Offset: • Hardware implementation • RBS as a UNIX daemon • UDP datagrams as Motes • Testbed: • StrongARM-based Compaq IPAQs • Lucent Technologies 11 Mbit 802.11 wireless Ethernet adapters • All Ethernet adapters connected to a wireless 802.11 base station
Why RBS is the best? • Test implemented in two different scenarios: • Light network load • Minimal load generated by synchronization scheme • Heavy network load • Two additional IPAQs configured as traffic generators • Each IPAQ sent randomly sized UDP datagrams of 500 to 15,000 bytes • Inter-packet delay: 10 msec
Test Results • Light traffic scenario: • RBS performed more than 8 times better than NTP and NTP-Offset • RBS : average of 6.29 6.45 sec error NTP : average of 51.18 53.30 sec error • RBS : 95% of trails : 20.53 sec error NTP : 95% of trails : 131.20 sec error
Test Results For Light traffic:
Test Results • Heavy traffic scenario: • RBS – almost completely unaffected NTP – suffered a 30 fold degradation • RBS : 95% of trails : 28.53 sec error NTP : 95% of trails : 3,889 sec error
Test Results For Heavy traffic:
Working of RBS in multi hop network • Obtained by mathematical conversion of output obtained in available single hop networks in the multi-hop network. • Least square linear regression graph – used to synchronize all the single hop networks in the multi-hop network • The values are then formulated and converted accordingly for all the nodes in the multi-hop network
Illustration of Multi-Hop Synchronization Mathematical conversion obtained through the common node 4
Algorithm for Calculating Phase Offset in Multi-Hop Network • Events E1 and E7 – observed by R1 and R7 respectively • Best-fit line calculated by R4 using A’s broadcast • E1(R4) => E1(R1) : R1 synchronized with R4 by A • Best-fit line calculated by R4 using B’s broadcast • E1(R4) => E1(R7) : R4 synchronized with R7 by B • R1 synchronizes with R7 using R4 • All nodes in Multi-hop are synchronized similarly
Analysis of Multi-Hop RBS • Same test applied to Multi-Hop as the Single-Hop • Test Results: • If average per-hop error = s • Hop path = n • Average path error of n-hop = s . Sqrt(n)
Advantages of RBS • Can be used without external timescales • Energy conservative • Does not require tight coupling between sender and its network interface • Covers much wider area • Applicable in both wired and wireless networks • Largest resources of latency (that exists in TTS) is removed from critical path • Allows tighter synchronization
How RBS is energy conservative? • Nodes stay in sleep mode until an event of interest occurs – post-facto sync
Limitations of RBS • Works only with broadband communication • Does not support point to point communication (as time synchronization is done among a set of receivers. In point-to-point – only one receiver exists)
Applications • Acoustic Motes: Acoustic Ranging implemented in Berkeley Motes • Collaborative Signal Detection
References • Fine-Grained Network Time Synchronization using Reference Broadcasts. Jeremy Elson, Lewis Girod and Deborah Estrin, UCLA • Power point presentation on Fine-Grained Network Time Synchronization using Reference Broadcasts. Jeremy Elson, Lewis Girod and Deborah Estrin, UCLA. Available at : http://lecs.cs.ucla.edu/~jelson/talks/timesync/RBS-OSDI-2002-Dec9.ppt • Wireless Sensor Networks: A New Regime for Time Synchronization. Jeremy Elson and Kay Romer, UCLA • Time Synchronization for Wireless Sensor Networks. Jeremy Elson and Deborah Estrin, UCLA