time synchronization - using reference-broadcast synchronization fine-grained network time...
TRANSCRIPT
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)
Illustration of TTS
S R
(a) latency is small compared to desired accuracy
S R
(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)
Illustration of RBS
A
1
3
2
4
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 r1 with 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
Ph
ase
offs
et (
use
c)
Time (sec)
Fit error (u
sec)
Analysis of RBS algorithm for single broadcast domain (with clock skew)
Ph
ase
offs
et (
use
c)
Time (sec)
Synchronization of clocks on PC104-compatible single board computers using Mote as NIC
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 errorNTP : average of 51.18 53.30 sec error
- RBS : 95% of trails : 20.53 sec errorNTP : 95% of trails : 131.20 sec error
Test ResultsFor 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 ResultsFor 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 = - Hop path = n- Average path error of n-hop = . 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