Time Synchronization - using Reference-Broadcast Synchronization Fine-Grained Network Time...

Post on 29-Mar-2015

265 views 1 download

Tags:

Transcript of Time Synchronization - using Reference-Broadcast Synchronization Fine-Grained Network Time...

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