04/21/23
Mobile Ad hoc Networks COE 549
SynchronizationTarek Sheltami
KFUPMCCSECOE
http://faculty.kfupm.edu.sa/coe/tarek/coe549.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
Each broadcast provides a synchronization point (a global–local time pair) to each receiver
04/21/23 22
Coarse-grained clock synchronization
wireless sensor network system for structural-response data acquisition Assume that:
04/21/23 23
References1. L. Lamport, “Time, Clocks, and the Ordering of Events in a Distributed
System,”Communications of the ACM, 21, 7, July 1978, 558–565.2. F. Cristian, “A Probabilistic Approach to Distributed Clock Synchronization,”
DistributedComputing, 3, 1989, 146–158.3. J. Elson, L. Girod, and D. Estrin, “Fine-Grained Network Time Synchronization using
Reference Broadcasts,” in Proceedings of the Fifth Symposium on Operating Systems Design and Implementation (OSDI), December 2002.
4. S. Ganeriwal, R. Kumar, and M. B. Srivastava, “Timing-Sync Protocol for Sensor Networks,” Proceedings of ACM SenSys’03, November 2003.
5. M. L. Sichitiu and C. Veerarittiphan, “Simple, Accurate Time Synchronization for Wireless Sensor Networks,” Proceedings of IEEE Conference on Wireless Communications and Networking (WCNC), March 2003.
6. M. Maroti, B. Kusky, G. Simon, and A. Ledeczi, “The Flooding Time Synchronization Protocol,” Proceedings of ACM SenSys, November 2004.
7. N. Xu, S. Rangwala, K. Chintalapudi, D. Ganesan, A. Broad, R. Govindan, and D. Estrin, “A Wireless Sensor Network for Structural Monitoring,” Proceedings of ACM Conference on Embedded Networked Sensor Systems (SenSys), November 2004