wireless sensor networks coe 499 synchronization

Post on 10-Jan-2016

43 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Wireless Sensor Networks COE 499 Synchronization. Tarek Sheltami KFUPM CCSE COE http://faculty.kfupm.edu.sa/coe/tarek/coe499.htm. Outline. Overview Key Issues Traditional approaches Fine-grained approaches Coarse-grained approaches. Overview. - PowerPoint PPT Presentation

TRANSCRIPT

04/21/23

Wireless Sensor Networks COE 499

SynchronizationTarek Sheltami

KFUPMCCSECOE

http://faculty.kfupm.edu.sa/coe/tarek/coe499.htm

1

2

Outline Overview Key Issues Traditional approaches Fine-grained approaches Coarse-grained approaches

04/21/23

04/21/23 3

OverviewDistributed wireless sensor networks need time synchronization for a number of good reasons, some of which are described below:1.Time-stamping measurements: data collection applications of sensor networks often require that sensor readings from different sensor nodes be provided with time stamps in addition to location information2.In-network signal processing: Time stamps are needed to determine which information from different sources can be fused/aggregated within the network3.Localization: TDoA-based ranging techniques used in node localization require good time synchronization4.Cooperative communication: Some physical layer multi-node cooperative communication techniques, which have the potential to provide significant energy savings, but require tight synchronization

04/21/23 4

Overview5. Medium-access: TDMA-based medium-access schemes also

require that nodes be synchronized so that they can be assigned distinct slots for collision free communication

6. Sleep scheduling: synchronization is needed to coordinate the sleep schedules of neighboring devices, so that they can communicate with each other efficiently

7. Coordinated actuation: Advanced applications in which the network includes distributed actuators in addition to sensing require synchronization

04/21/23 5

Key Issues The clock at each node consists of timer circuitry, often

based on quartz crystal oscillators The clock is incremented after each K ticks/interrupts of

the timer Practical timer circuits, particularly in low-end devices, are

unstable and error prone Crystal oscillators, such as those used in digital watches,

experience a shift in frequency as a function of temperature

A model for clock non-ideality

Where f0 is ideal frequency, ∆f is the frequency offset, df is the drift in the frequency, rf(t) an additional random error process and fi(t) is the instantaneous oscillator frequency

04/21/23 6

Key Issues.. Frequency Drift is undesired change in frequency caused

by component aging and environmental changes Frequency Offset is the difference between a measured

frequency and the nominal frequency

Assuming t=0 as the initial reference time, the clock reads time Ci(t) at time t as:

04/21/23 7

Key Issues.. Frequency drift and random error terms may be neglected to

derive a simpler linear model for clock non-ideality:

Where is the clock offset at the reference time t = 0 and βi the clock drift

The more stable and accurate the clock, the closer is to 0, and the closer βi is to 1

A clock is said to be fast if βi is greater than 1, and slow otherwise

Manufactured clocks are often specified with a maximum drift rate parameter ρ, such that 1− ρ ≤ βi ≤1+ ρ

Motes, typical sensor nodes, have ρ values on the order of 40 ppm (parts per million), which corresponds to a drift rate of ±40μs per second

8

Ordering of events

“” is a partial ordering[ total ordering: for any two

events a,b (ab) either a b or b

aparting ordering: a,b can be concurrent ]

04/21/23

9

DefinitionThe relation on the set of events of a

system is the smallest relation satisfying the following 3 conditions:1) if a,b events in same process, and a comes before b, then a b

2) if a is sending a message and b is receipt of same message by a different process, then a b

3) if a b and b c, than a c assume a a if a b and b a, than a,b are concurrent04/21/23

10

Logical Clock Ci =logical clock (counter) at

process i C[b] = reading of Cj when event b

occurs at process j Clock condition for any events a, b

IF a b THEN C[a] < C[b]

No relationship to physical time

04/21/23

11

Clock Condition

If a and b are events in process i and a comes before b, then Ci[a] < Ci[b]

If a is the sending of a message by process i and b is the receipt of that message by process j, then

Ci[a] < Cj[b]

C1

C2

If a b THEN C[a] < C[b]can be satisfied if the following conditions hold:

04/21/23

12

Note: Ci[a] < Cj[b] a b

Note: a,b concurrent Ci[a] = Cj[b]

Note: Ci[a] = Cj[b] a,b concurrent

04/21/23

04/21/23 13

Traditional Approaches

Lamport’s Algorithm Provides a consistent ordering of all events in a

distributed system Labeling each event x with a distinct time stamp Lx,

such that: Lx ≠ Ly ∀ unique events x & y If event x precedes event y in within a node Lx <

Ly If x transmitting and y receiving at two different

nodes Lx < Ly Drawbacks: Doesn’t provide true causality, assume

the true time of event x is indicated as Tx; then, while it is true that Tx<Ty Lx<Ly, it is not true that Lx<Ly Tx <Ty

04/21/23 14

Traditional Approaches..

Cristian’s Algorithm A node A sends a request to node B (which has the

reference clock) and receives back the value of B’s clock, TB

Node A records locally both the transmission time T1 and the reception time T2

04/21/23 15

Traditional Approaches..

Cristian’s Algorithm.. There are many sources of uncertainty and delay, which

impact its accuracy: Send time – which includes any processing time and

time taken to assemble and move the message to the link layer

Access time – which includes random delays while the message is buffered at the link layer due to contention and collisions

Propagation time – which is the time taken for point-to-point message travel. While negligible for a single link, this may be a dominant term over multiple hops if there is network congestion.

Receive time – which is the time taken to process the message and record its arrival.

04/21/23 16

Traditional Approaches..

Cristian’s Algorithm.. The simplest estimate is to approximate the message

propagation time as (T2 −T1)/2 If the processing delay is known to be I, then a better

estimate is (T2 − T1 − I )/2. More sophisticated approaches take several round-trip

delay samples and use minimum or mean delays after outlier removal.

04/21/23 17

Fine-grained clock synchronization

Reference broadcast synchronization (RBS) Two nodes receive the beacon of one node in the same

broadcast area The two receivers record the local time when the

reference signal was received. The two receivers exchange this local time stamp

through separate messages

04/21/23 18

Fine-grained clock synchronization..

Time-Sync Protocol for Sensor Networks (TPSN)

04/21/23 19

Fine-grained clock synchronization..

Linear parameter-based synchronization

Assuming the same pair-wise message exchange as in TPSN for nodes A and B, we have that the transmission time T1 and reception time T4 are measured in node A’s local clock, while reception time T2 and transmission time T3 are measured in node B’s local clock. We therefore get the following temporal relationships:

04/21/23 20

Fine-grained clock synchronization..

Linear parameter-based synchronization

04/21/23 21

Fine-grained clock synchronization..

Flooding time synchronization protocol (FTSP)1. Interrupt handling time: This is the delay in waiting

for the processor to complete its current instruction before transferring the message in parts to the radio

2. Modulation/encoding time: This is the time taken by the radio to perform modulation and encoding at the transmitter, and the corresponding demodulation and decoding at the receiver

FTSP uses a broadcast from a single sender to synchronize multiple receivers

Unlike RBS, the sender actually broadcasts a time measurement, and the receivers do not exchange messages among themselves.

Each broadcast provides a synchronization point (a global–local time pair) to each receiver

04/21/23 22

Fine-grained clock synchronization..

FTSP has two main components:1. Multiple time measurements: The sender takes

several time stamp measurements during transmission, one at each byte boundary after a set of SYNC bytes used for byte alignment. These measurements are normalized by subtracting an appropriate multiple of the byte transmission time, and only the minimum of these multiple measurements is embedded into the message. At the receiver too, multiple time measurements are taken and the minimum of those is used as the receiver time. This serves to reduce the jitter significantly in interrupt handling and the (de)coding and (de)modulation times. With as few as six ime stamps, an order of magnitude improvement in precision can be obtained on a Mica Mote platform (from the order of tens of microseconds to the order of about one microsecond).

04/21/23 23

Fine-grained clock synchronization..

FTSP has two main components:2. Flooded messaging: To propagate the synchronization

information, a flooding approach is used. First, a single uniquely identifiable node in the network provides the global clock. The reception of each broadcast message allows a receiver to accumulate a reference synchronization point. When a receiver accumulates several reference points, it becomes synchronized itself (e.g. using a regression line to estimate the local clock drift). Nodes can collect reference points either from the global reference node, or from other nodes that are already synchronized. The frequency of the flooding provides a tradeoff between synchronization accuracy and overhead.

04/21/23 24

Coarse-grained clock synchronization

The Wisden system wireless sensor network system for structural-response data acquisition

04/21/23 25

Coarse-grained clock synchronization

Drawbacks

It is vulnerable to varying clock drifts at the intermediate nodes, particularly when packet residence times within the network are long

For example, it has been estimated that with a 10 ppm drift, data samples cannot reside for more than 15 minutes before accumulating 10 ms of error in the time stamp

top related