Hence,
a time synchronization protocol may adjust the virtual clock time and/or discipline
the hardware clock to compensate for the time di?®erence between the
clocks of the nodes. Either approach has to deal with the factors influencing
time synchronization as described earlier.
When an application issues a request to obtain the time, the time is returned
after a certain delay. This software access delay may fluctuate according
to the loading of the system. This type of fluctuation is nondeterministic
and may be less if real time operation system and hardware architecture are
used. For low-end sensor nodes, the software access time may be in the order
of few hundred microseconds. For example, a Mica mote is running at 4 MHz
[13] having clock granularity of 0.25?µs. If the node is 80% loaded and it takes
100 cycles to obtain the time, the software access time is around 125?µs.
In addition to the software access time, the medium access time also contributes
to the nondeterministic delay that a message experiences. If carriersense
multiple access (CSMA) is used, the back-o?® window size as well as the
tra?±c load a?®ect the medium access time [3, 4, 19]. Once the sensor node
obtains the channel, the transmission and propagation times are pretty de-
224
Chapter 9 Time-Synchronization Challenges and Techniques
Node B
M = Medium Access Time
S = Software Access Time
R = Reception Time
P = Propagation Time
Sending message at t
1
Receiving message at t 2
Receiving ACK at t4
S1 M1 T1
P12
R
2 S2
S4
R
4
P34
T3 M3 S3
Sending message at t
3
Node A
T = Transmission Time
Fig.
Pages:
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369