Document

advertisement
Chapter 6
Time Synchronization
Outline

6.1. The Problems of Time Synchronization

6.2. Protocols Based on Sender/Receiver Synchronization





Network Time Protocol (NTP)
Timing-sync Protocol for Sensor Networks (TPSN)
Flooding Time Synchronization Protocol (FTSP)
6.2.4. Ratio-based time Synchronization Protocol (RSP)
6.3. Protocols Based on Receiver/Receiver Synchronization



Reference Broadcast Synchronization (RBS)
Hierarchy Referencing Time Synchronization (HRTS)
6.4. Summary
2
2016/3/14
6.1 The Problems of Time Synchronization

Why Need for Time Synchronization?






3
Many of the applications of WSN needs the event with time
stamp
Ordering of the samples for reporting
Events are reported by multiple nodes
When WSN is energy save enabled, it need all nodes to be
in sync in order to be in Idle or Active mode
Medium Access Layer (MAC) Scheduling (ex: TDMA)
Order of messages may change while transmission
2016/3/14
Sources of Inaccuracies
A local software clock of node i at time t Li(t) = qi Hi(t) + fi
 Hi(t): hardware clock of node i at time t




qi :clock drift rate of node i
fi :phase shift of node i
Actual oscillators have random deviations from nominal
frequency (drift, skew)
 additional pulses or lost pulses over the time of one million
pulses at nominal rate
Oscillator frequency is time variable
 Long-term variation: oscillator aging
 Short-term variation: environment (temperature, pressure,
supply voltage, ...)

4
2016/3/14
General Properties of Time Synchronization
Algorithms

Physical time vs. logical time
External vs. internal synchronization
Global vs. local algorithms




Keep all nodes of a WSN synchronized or only a local
neighborhood?
Absolute vs. relative time


5
Only accurate time difference
Sufficient to estimate the drift instead of phase offset
2016/3/14
General Properties of Time Synchronization
Algorithms

Hardware vs. software-based mechanisms


A GPS receiver would be a hardware solution, but often too
heavyweight/costly/energy-consuming in WSN nodes, and in
addition a line-of-sight to at least four satellites is required
A-priori vs. a-posteriori synchronization

Is time synchronization achieved before or after an
interesting event?
 Post-facto synchronization: is triggered by an external event

Deterministic vs. stochastic precision bounds
Local clock update discipline



6
No backward jumps of local clocks
No sudden jumps
2016/3/14
Performance Metrics and Fundamental
Structure

Metrics:




7
Precision:
maximum synchronization error for deterministic algorithms,
mean error /stddev /quantiles for stochastic ones
Energy costs,
e.g. # of exchanged packets, computational costs
Memory requirements
Fault tolerance:
what happens when nodes die?
2016/3/14
Fundamental Building Blocks of Time
Synchronization Algorithms




8
Resynchronization event detection block:
 when to trigger a time synchronization round?
Remote clock estimation block:
 figuring out the other nodes clocks with the help of
exchanging packets
Clock correction block:
 compute adjustments for own local clock based on
remote clock estimation
Synchronization mesh setup block:
 figure out which node synchronizes with each other
in a multihop network
2016/3/14
Constraints for Time Synchronization in
WSNs


Scale to large networks of unreliable nodes
Quite diverse precision requirements,






9
from ms to tens of seconds
Use of extra hardware is mostly not an option
Low mobility
Often there are no fixed upper bounds on packet
delivery delay
Negligible propagation delay between neighboring
nodes is negligible
Manual node configuration is not an option
2016/3/14
6.2 Protocols Based on Sender/Receiver
Synchronization




In this kind of protocols, a receiver synchronizes to the
clock of a sender
The classical Network Time Protocol (NTP) belongs
to this class
We have to consider two steps: Pair-wise
synchronization
How does a single receiver synchronize to a single
sender?
 Network wide synchronization

How to figure out who synchronizes with whom to
keep the whole network / parts of it synchronized?
10
2016/3/14
Network Time Protocol (NTP)

Synchronizing Physical Clocks





Computer Clocks in distributed system not in consistent
 Need to synchronize clocks
External synchronization (ES)
 Synchronized with an external reliable time source S
 |S - C| < D, where C is computer’s clock
Internal synchronization (IS)
 Synchronized with other computer in the distributed system
 | Ci - Cj| < D
IS does not imply ES
 Clock Ci and Cj may drift together
ES implies IS
 Within bound 2D
11
2016/3/14
Network Time Protocol (NTP)

Distributed System Type

Synchronous distributed system
 Known upper bound on transmission delay
 Simplifies synchronization
 One process p1 sends its local time t to process p2 in a
message m
 p2 could set its clock to t + Ttrans , where Ttrans is
transmission delay from p1 to p2
 Ttrans is unknown but min ≤ Ttrans ≤ max
 Set clock to t + (max - min)/2 then skew ≤ (max - min)/2

Asynchronous distributed system
 Internet is asynchronous system
 Ttrans = min + x where x ≥ 0
12
2016/3/14
Network Time Protocol (NTP)


Cristian’s method (1989) for an asynchronous system
A time server S receives signals from a Coordinated Universal
Time (UTC) source
 Process p requests time in mr and receives t in mt from S
 p sets its clock to t - Tround/2
 Accuracy ± (Tround/2 - min) :





because the earliest time S puts t in message mt is min after p sent mr.
the latest time was min before mt arrived at p
the time by S’s clock when mt arrives is in the range [t + min, t + Tround
- min]
Tround is observed round-trip time
min is minimum delay between p and S
mr
13
p
mt
Time server S
2016/3/14
Network Time Protocol (NTP)

Issues with Christian’s Algorithms


A single time server might fail, so they suggest the use of a
group of synchronized servers
It does not deal with faulty servers


14
No authentication mechanism
Inaccuracy increases if the delay between messages is nonnegligible
2016/3/14
Network Time Protocol (NTP)

A time service for the Internet - synchronizes clients
to UTC (Coordinated Universal Time)
Reliability
from
redundant
paths,toscalable,
authenticates time
Primary
servers
are connected
UTC sources
sources
Secondary servers are synchronized to primary
servers
Synchronization subnet - lowest level servers in
users’ computers
1
2
15
3
2
3
3
2016/3/14
Network Time Protocol (NTP)

Synchronisation of servers

The synchronization subnet can reconfigure if failures occur, e.g.




Modes of synchronization:
Multicast


A server accepts requests from other computers (like Cristiain’s algorithm).
Higher accuracy. Useful if no hardware multicast.
Symmetric

16
A server within a high speed LAN multicasts time to others which set
clocks assuming some delay (not very accurate)
Procedure call


a primary that loses its UTC source can become a secondary
a secondary that loses its primary can use another primary

Pairs of servers exchange messages containing time information
Used where very high accuracies are needed (e.g. for higher levels)
2016/3/14
Network Time Protocol (NTP)

Messages exchanged between a pair of NTP peers


All modes use UDP
Each message bears timestamps of recent events:




Local times of Send and Receive of previous message
Local times of Send of current message
Recipient notes the time of receipt ( we have Ti-3, Ti-2, Ti-1, Ti)
In symmetric mode there can be a non-negligible delay between
messages
Server B
Ti-2
Ti-1
Time
m
17
Server A
Ti-3
m'
Ti
Time
2016/3/14
Network Time Protocol (NTP)

Accuracy of NTP




18
For each pair of messages between two servers,
 NTP estimates an offset oi between the two clocks and a
delay di (total time for the two messages, which take t
and t’)
 Ti-2 = Ti-3 + t + o and Ti = Ti-1 + t’ - o
This gives us (by adding the equations) :
 di = t + t’ = Ti-2 - Ti-3 + Ti - Ti-1
Also (by subtracting the equations)
 o = oi + (t’ - t )/2 where oi = (Ti-2 - Ti-3 + Ti-1 - Ti)/2
Using the fact that t, t’ >0 it can be shown that
 oi - di /2 ≤ o ≤ oi + di /2 .
 Thus oi is an estimate of the offset and di is a measure
of the delay
2016/3/14
Network Time Protocol (NTP)

Techniques to Improve Accuracy

NTP servers filter pairs <oi, di>, estimating reliability from
variation, allowing them to select peers



19
High variability in successive pairs implies unreliable data
Accuracy depends on the delay between the NTP servers
 Accuracy of 10s of millisecs over Internet paths (1 on
LANs)
Peer selection
 Lower layer peer favoured over higher layer server
 Peer with lower synchronization imprecision is preferred
 Synchronization imprecision is the sum of variability in
data from the server to the root
2016/3/14
LTS – Lightweight Time Synchronization

Overall goal:


Synchronize the clocks of all sensor nodes of a subset of
nodes to one reference clock (e.g. equipped with GPS
receivers)
Considers only phase shifts
 Does not try to correct different drift rates
20
2016/3/14
LTS – Lightweight Time Synchronization

Two components:


21
Pair-wise synchronization:
 based on sender/receiver technique
Network wide synchronization:
 Minimum-height spanning tree construction with reference
node as root
2016/3/14
LTS – Pairwise Synchronization
i
j
Trigger resynchronization
Format synch packet
Timestamp packet with
Hand over packet for transmission
Operating system,
channel access
Start packet transmission
Propagation delay
Packet transmission time
Packet reception interrupt
Timestamp with
Format synch answer packet
Timestamp with
Hand over packet
for transmission
OS, Channel access
Start packet transmission
Packet reception interrupt
22
Timestamp with
2016/3/14
LTS – Pair-wise Synchronization

Assumptions:

Node i’s original aim is to estimate the true offset
O = Δ(t1) = Li(t1) – Lj(t1), where Li(tj) is the local
software clock of node i at time tj

During the whole process the drift is negligible
 the algorithm in fact estimates Δ(t5) and assumes
Δ(t5) = Δ(t1)

There is one propagation delay τ and one packet transmission
delay tp between nodes i and j
23
2016/3/14
i
j
Trigger resynchronization
Format synch packet
Timestamp packet with
Hand over packet for transmission
Operating system,
channel access
Start packet transmission
Propagation delay
Packet transmission time
Packet reception interrupt
Li(t5)
Timestamp with
Format synch answer packet
Timestamp with
Hand over packet
for transmission
OS, Channel access
Start packet transmission
Packet reception interrupt
24
Timestamp with
2016/3/14
i
j
Trigger resynchronization
Format synch packet
Timestamp packet with
Hand over packet for transmission
Operating system,
channel access
Start packet transmission
Propagation delay
Packet transmission time
Packet reception interrupt
Li(t5)
Timestamp with
Format synch answer packet
Timestamp with
Hand over packet
for transmission
t5 >= t1+ τ +tp
where τ :propagation delay
OS, Channel access
Start packet transmission
Packet reception interrupt
25
tp :packet transmission time
Timestamp with
2016/3/14
i
j
Trigger resynchronization
t5 <= t8- τ- tp
where τ :propagation delay
tp :packet transmission time
Format synch packet
Timestamp packet with
Hand over packet for transmission
Operating system,
channel access
Start packet transmission
Propagation delay
Packet transmission time
Packet reception interrupt
Li(t5)
Timestamp with
Format synch answer packet
Timestamp with
Hand over packet
for transmission
OS, Channel access
Start packet transmission
Packet reception interrupt
26
Timestamp with
2016/3/14
j
The uncertainty is in thei interval [L
i(t1) + τ + tp, Li(t8) τ – tp – (Lj(t6) – Lj(t5)]
Trigger resynchronization
Format synch packet
Timestamp packet with
Hand over packet for transmission
Operating system,
channel access
Start packet transmission
Propagation delay
Packet transmission time
Packet reception interrupt
Li(t5)
Timestamp with
Format synch answer packet
Timestamp with
Hand over packet
for transmission
OS, Channel access
Start packet transmission
Packet reception interrupt
27
Timestamp with
2016/3/14
LTS – Pair-wise Synchronization

Under the assumption that the remaining uncertainty
is allocated equally to both i and j, node i can estimate
Li(t5) as
This exchange takes two packets. If node j should also learn
about the offset, a third packet is needed from i to j carrying O
28
2016/3/14
LTS – Pair-wise Synchronization

Sources of inaccuracies:




29
Medium access delay
Interrupt latencies upon receiving packets
Delays between packet interrupts and time-stamping
operation
Delay in operating system and protocol stack
2016/3/14
i
j
Trigger resynchronization
Format synch packet
Timestamp packet with
Hand over packet for transmission
Operating system,
channel access
Start packet transmission
Propagation delay
Packet transmission time
Packet reception interrupt
Timestamp with
Format synch answer packet
Timestamp with
Hand over packet
for transmission
OS, Channel access
Start packet transmission
Packet reception interrupt
30
Timestamp with
2016/3/14
LTS – Pair-wise Synchronization

Improvements:


31
Let node i timestamp its packet after the MAC delay,
immediately before transmitting the first bit
 This would remove the uncertainty due to i’s operating
system, protocol stack and the MAC delay!!
Let node j timestamp receive packets as early as possible, e.g.
in the interrupt routine
 This removes the delay between packet interrupts and
time-stamping from the uncertainty, and leaves only
interrupt latencies
2016/3/14
LTS – Pairwise Synchronization
– Error Analysis
Number of trials
Pair-wise difference in packet reception time (μsec)
32
2016/3/14
LTS – Networkwide Synchronization





This way a spanning tree is created
But one should not allow arbitrary spanning trees
Consider a node i with hop distance hi to the root node
Assume that:
 all synchronization errors are independent
Hence, a minimum spanning tree minimizes
synchronization errors
33
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Introduction


34
We present a Timing-sync Protocol for Sensor Networks
(TPSN) that works on the conventional approach of
sender-receiver synchronization
Pair-wise-protocol: time-stamping at node i happens
immediately before first bit appears on the medium, and
time-stamping at node j happens in interrupt routine
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Network Model





35
The network is “always-on”
Every node maintains 16-bit register as clock
Sensor has unique ID
Build hierarchical topology for the network
Node at level i can connect with at least one node at level i-1
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Level discovery Phase


Trivial
Synchronization Phase

36
Pair-wise sync is performed along the edge of hierarchical
structure
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Level discovery Phase

The root node is assigned a level 0 and it initiates this phase
by broadcasting a level_discovery packet

level_discovery packet contains the identity and the level of
the sender

The immediate neighbors of the root node receive this packet
and assign themselves a level (level = level +1)

This process is continued and eventually every node in the
network is assigned a level. On being assigned a level, a
node neglects any such future packets. This makes sure that
no flooding congestion takes place in this phase
37
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Synchronization Phase

T1: A is sender, starting sync by sending
synchronization_pulse packet to B

T2 = T1 + Δ + d, where
 Δ is the clock offset
 d is propagation delay

T3: B replies acknowledgement containing T1, T2, T3

T4: A receive ack. and T4 = T3 – Δ + d. So:

Δ = [(T2 - T1) - (T4 - T3)] / 2
d = [(T2 - T1) + (T4 - T3)] / 2

38
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Synchronization Phase
A receive an Ack and get timestamp T4
B
replies
acknowledgement
T1:
TB
Areceive
is sender,
the starting
synchronization
synccontaining
by sending
_pulse packet and
T1,T2,T3
synchronization_pulse
ti2:mestamping immediately
packet to B with timestamp T1
T2
T1,T2,T3
B
T1
A
T4
39
At time t3
t1
t4
t2
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Simulation and Comparison
40
2016/3/14
Timing-sync Protocol for Sensor Networks
(TPSN)

Simulation and Comparison
41
2016/3/14
Flooding Time Synchronization
Protocol (FTSP)
42
2016/3/14
Flooding Time Synchronization Protocol
(FTSP)

Introduction

The FTSP synchronizes the time to possibly multiple
receivers utilizing a single radio message

Linear regression is used in FTSP to compensate for clock
drift
43
2016/3/14
Flooding Time Synchronization Protocol
(FTSP)

Network Model


Every node in the network has a unique ID
Each synchronization message contains three fields:




44
TimeStamp
RootID
SeqNum
The node with the smallest ID will be only one root in the
whole network
2016/3/14
Flooding Time Synchronization Protocol (FTSP)

The root election phase


FTSP utilizes a simple election process based on unique node
IDs
Synchronization phase
45
2016/3/14
Flooding Time Synchronization Protocol
(FTSP)

The root election phase



46
When a node does not receive new time synchronization
messages for a number of message broadcast periods
 The node declares itself to be the root
Whenever a node receives a message, the node with higher
IDs give up being root
Eventually there will be only one root
2016/3/14
Flooding Time Synchronization Protocol
(FTSP)

Synchronization phase



47
Root and synchronized node broadcast synchronization
message
Nodes receive synchronization message from root or
synchronized node
When a node collects enough synchronization message, it
estimates the offset and becomes synchronized node
2016/3/14
Flooding Time Synchronization Protocol (FTSP)
Timestamp
rootID
Root
seqNum
Timestamp
rootID
seqNum
A
B
C
Synchronized
Node
48
Unsynchronized
node
2016/3/14
Flooding Time Synchronization Protocol
(FTSP)

Simulation and Conclusion
49
2016/3/14
Ratio-based Time Synchronization
Protocol (RSP)
50
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)




The RSP use two synchronization messages to
synchronize the clock of the receiver with that of
sender
The RSP also can extend to multi-hop synchronization
The nodes in the wireless sensor network construct a
tree structure and the root of this tree is the
synchronization root
The global time of the root is flooding out to the
nodes through the tree structure
51
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)


The local clock time of a sensor device is provided by the quartz oscillator
inside itself
Transformation formula between t and Ci (t):
(1)

: the local clock time of a sensor node i.
t : the Coordinated Universal Time (UTC).
: the drift ratio
: the offset of node i’s clock at time t .

By (1), the local clock times of two sensor nodes i and j have the following
relationship:
(2)
: relative drift ratio between nodes i and j
: offset between the clocks of nodes i and j
52
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)
Reference node
Sensor node
calculate the clock drift ratio
θ = (T3 − T1)/(T4 −T2).
53
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)
Reference node
Sensor node
Each node can estimate the local time of reference node in the following
way:
(3)
: the local time of sensor node
:the corresponding local time of the reference node.
: the initial offset between reference node and sensor node.
54
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)
It can be calculated using linear interpolation with the four timestamps
the
55
can be derived as follows
(4)
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)


Therefore, we can derive (5) from (3) and (4):
Each sensor node can estimate the local time of
reference node, that is, the global time of the network
(5)
56
2016/3/14
Ratio-based Time Synchronization Protocol
(RSP)
Reference node
Sensor node
R
S
(T31)
57
2016/3/14
6.3. Protocols Based on
Receiver/Receiver Synchronization
58
2016/3/14
Protocols Based on Receiver/Receiver
Synchronization

In this class of schemes


The receivers of packets synchronize among each other, not
with the transmitter of the packet
Reference Broadcast Synchronization (RBS)


59
Synchronize receivers within a single broadcast domain
RBS does not modify the local clocks of nodes, but
computes a table of conversion parameters for each peer in a
broadcast domain
2016/3/14
Reference Broadcast Synchronization (RBS)

Introduction



60
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)
2016/3/14
Reference Broadcast Synchronization (RBS)

Types of errors in traditional synchronization protocol




61
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
2016/3/14
Reference Broadcast Synchronization (RBS)

Types of errors in RBS

Phase error
 due to nodes’ clock that contains different times

Clock skew
 due to nodes’ clock that run at different rates
62
2016/3/14
Reference Broadcast Synchronization (RBS)

Difference between RBS & Traditional
synchronization protocol

RBS
 Synchronizes a set of receivers with one another
 Supports both single hop and multi-hop networks

Traditional
 Senders synchronizes with receivers
 mostly supports only single hop networks
63
2016/3/14
Reference Broadcast Synchronization (RBS)

The phase offset with the clock skew is estimated by:


64
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
2016/3/14
Reference Broadcast Synchronization (RBS)

Basic idea to estimate phase offset and clock skew for
non-deterministic receivers:






65
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
Drift can be neglected when observations are exchanged
quickly after reference packets
Drift can be estimated jointly with offset O when a number
of periodic observations of Oi,j have been collected
2016/3/14
Reference Broadcast Synchronization (RBS)
i
R
j
Packet reception
interrupt
Receiver uncertainty
Timestamp with
Packet reception
interrupt
Timestamp with
Send
Send
66
Reference Broadcast Synchronization (RBS)


Formula for calculating the phase offset and clock
skew of receiver r1 with another receiver r2:
Let tr,b be 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
67
2016/3/14
Reference Broadcast Synchronization (RBS)



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
68
2016/3/14
Reference Broadcast Synchronization (RBS)
Step1: Transmitter
Step2: Receiver
records its
broadcasts
local
clock,Least-squares
and exchange
Step3:Use
observation
linear regression
to estimate
Finishoffset
RBS
phase
Reference
Packet
A:Local
time
A
B:Local
time
B
Transmitter
Receiver
69
2016/3/14
Reference Broadcast Synchronization (RBS)

Communication costs:



70
Be m the number of nodes in the broadcast domain
First scheme:
reference node collects the observations of the nodes, computes
the offsets and sends them back  2 m packets
Second scheme:
reference node collects the observations of the nodes, computes
the offsets and keeps them, but has responsibility for
timestamp conversions and forwarder selection
 m packets
2016/3/14
Reference Broadcast Synchronization (RBS)

Communication costs:



71
Be m the number of nodes in the broadcast domain
Third scheme:
each node transmits its observation individually to the other
members of the broadcast domain  m (m-1) packets
Fourth scheme:
each node broadcasts its observation  m packets, but
unreliable delivery
2016/3/14
Reference Broadcast Synchronization (RBS)

Conclusion




72
Collisions are a problem: the reference packets trigger all
nodes simultaneously to tell the world about their
observations
Computational costs: least-squares approximation is not
cheap!
Can be used without external timescales
Does not require tight coupling between sender and its
network interface
2016/3/14
Hierarchy Referencing Time
Synchronization (HRTS)
73
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)

Goal :
 Synchronize the vast majority of a WSN in a
lightweight manner

Idea
 Combine the benefits of LTS and RBS
74
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)

LTS : Lightweight Time Synchronization
 Goal
 Synchronize the clocks of all sensor nodes of a
subset of nodes to one reference clock
 It considers only phase shifts and does not try to
correct different drift rates
75
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)

LTS : Pairwise Synchronization
At
At time
time tt3241
Record tt14
Record
n1
n2
Record t32
Sync packet
Reply packet
In this packet contains t2 and t3
76
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)
77
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)

LTS : Pairwise Synchronization



Benefit of RBS



Offset : O = Δ(t5 )=Li(t5) - Lj(t5)= [Li(t8)+ Li(t1)- Lj(t6)- Lj(t5)] / 2
Benefit : only two packet transmissions with each pair
Idea : ignore transmission delay
By this idea, one packet can synchronize every node in one hop
Combining the two protocol’s benefit, the HRTS finds
good solution to synchronize nodes in hierarchical way
78
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)
79
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)

Timeline:
 Root node triggers time synchronization at t1 with timestamp
LR(t1)
 Node i timestamps packet at time t2 with Li(t2) and node j
timestamps it at t2’ with Lj(t2’)
 Node i formats a packet and timestamps it at time t3 with
Li(t3) – the packet includes the values Li(t2) and Li(t3)
 Root node R timestamps the answer packet at time t4 with LR(t4)
and computes its offset OR,i with node i’s clock


80
OR,i =Li(t2) - LR(t2) = Li(t2) – (LR(t1) + LR(t4) – (Li(t3)- Li(t2))/2 =[ (Li(t2) LR(t1)) – (LR(t4)- Li(t3))]/2
Root node R broadcasts the values OR,i and Li(t2)
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)

The root node R can estimate the offset OR,i between its
own clock and the local clock i in a similar fashion as the
protocol LTS
OR ,i



( Li (t2 )  LR (t1 ))  ( LR (t4 )  Li (t3 ))

2
Root R broadcast the values O and Li(t2) to all nodes
Node i simply subtract the offset OR,i from its local clock
Node j can compute Oj,i directly as Oj,i = Li(t2) – Lj(t’2)
and OR,j = OR,i – Oj,i
81
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)- Discussion


Node j is not involved in any packet exchange 
by this scheme is possible to synchronize an arbitrary
number of nodes to R’s clock with only three packets!!
The synchronization uncertainty comes from:


82
The error introduced by R when estimating OR,i
The error introduced by setting t2 = t2’
 This makes HRTS only feasible for geographically small
broadcast domains
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)- Discussion

Both kinds of uncertainty can again be reduced by:



timestamping outgoing packets as lately as possible
(relevant for t1 and t3)
timestamping incoming packets as early as possible (relevant
for t2, t2’, t4 )
The authors propose to use extra channels for
synchronization traffic when late timestamping of
outgoing packets is not an option

83
Rationale: keep MAC delay small
2016/3/14
Hierarchy Referencing Time Synchronization
(HRTS)
84
2016/3/14
Summary



Time synchronization is important for both WSN
applications and protocols
Using hardware like GPS receivers is typically not an
option, so extra protocols are needed
Post-facto synchronization allows for time
synchronization on demand, otherwise clock drifts
would require frequent resynchronization and thus a
constant energy drain
85
2016/3/14
Summary

Some of the presented protocols take significant
advantage of WSN peculiarity like:
 small propagation delays
 the ability to influence the node firmware to
timestamp outgoing packets late, incoming packets
early
86
2016/3/14
References
[1] Ed. Ivan Stojmenovic, Handbook of Sensor Networks Algorithms and Architectures,
2005.
[2] F. Sivrikaya,and B.Yener, Time Synchronization in Sensor Networks: A
Survey,2004. (www.cs.rpi.edu/~yener/PAPERS/WINET/timesync04.pdf)
[2] J. Elson, L. Girod, and D. Estrin ,Fine-Grained Network Time Synchronization
using Reference Broadcasts. (In Proceedings of the Fifth Symposium on OSDI
2002)
[3] S. Ganeriwal, R. Kumar, and M. Srivastava, Timing-Sync Protocol for Sensor
Networks. (SenSys ’03)
[5] D. L. Mills. Network Time Protocol (Version 3) Specification, Implementation and
Analysis. RFC 1305, 1992.
[6] D. L. Mills. Improved Algorithms for Synchronizing Computer Network Clocks.
IEEE/ACM Transactions on Networking, 3(3): 245–254, 1995.
[7] D. L. Mills. Adaptive Hybrid Clock Discipline Algorithm for the Network Time
Protocol. IEEE/ACM Transactions on Networking, 6(5): 505–514, 1998.
87
2016/3/14
References
[8] S. Ganeriwal, R. Kumar, S. Adlakha, and M. Srivastava. Network-Wide Time
Synchronization in Sensor Networks. Technical Report NESL 01-01-2003, Networked
and Embedded Systems Lab (NESL), University of California, Los Angeles (UCLA),
2003.
[9] S. Ganeriwal, R. Kumar, and M. B. Srivastava. Timing-Sync Protocol for Sensor
Networks. In Proceedings of the 1st ACM International Conference on Embedded
Networked Sensor Systems (SenSys), pages 138–149, Los Angeles, CA, November
2003.
[10] Miklós Maróti , Branislav Kusy , Gyula Simon , Ákos Lédeczi, The Flooding Time
Synchronization Protocol, In Proceedings of the 2ed ACM International Conference
on Embedded Networked Sensor Systems (SenSys), pages 39 – 49, Baltimore, MD,
USA, 2004 .
[11] J.-P. Sheu, W.-K. Hu, and J.-C. Lin, Ratio-Based Time Synchronization Protocol in
Wireless Sensor Networks, Telecommunication Systems, Vol. 39, No. 1, pp. 25-35,
Sep. 2008.
[12] 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 2002), Boston, MA, December 2002.
[13] H. Dai and R. Han. TSync: A Lightweight Bidirectional Time Synchronization
88 Service for Wireless Sensor Networks. ACM SIGMOBILE Mobile Computing and
2016/3/14
Communications Review, 8(1): 125–139, 2004.
Recommend Reading


Particular Challenges and Constraints for Time Synchronization
Algorithms in WSN
 J. Elson and K. R¨omer. Wireless Sensor Networks: A New
Regime for Time Synchronization. In Proceedings of the First
Workshop on Hot Topics In Networks (HotNets-I), Princeton,
NJ, October 2002.
 J. E. Elson. Time Synchronization in Wireless Sensor Networks.
PhD dissertation, University of California, Los Angeles, CA,
Department of Computer Science, 2003.
Other Time Synchronization Protocol
 Lightweight time synchronization protocol (LTS)

89
J. V. Greunen and J. Rabaey. Lightweight Time Synchronization for
Sensor Networks. In Proceedings of the 2nd ACM International Workshop
on Wireless Sensor Networks and Applications (WSNA), San Diego, CA,
September 2003.
2016/3/14
Download