Elapsed time on arrival: a simple and versatile primitive for canonical time synchronisation services. (27th July 2006) - Kusy, Branislav; Dutta, Prabal; Levis, Philip; Maroti, Miklos; Ledeczi, Akos; Culler, David
Time synchronisation is one of the most important and fundamental middleware services for wireless sensor networks. However, there is an apparent disconnect between existing time synchronisation implementations and the actual needs of current typical sensor network applications. To address this problem, we formulate a set of canonical time synchronisation services distilled from actual applications and propose a set of general application programming interfaces for providing them. We argue that these services can be implemented using a simple time-stamping primitive called Elapsed Time on Arrival (ETA) and we provide two such implementations. The Routing Integrated Time Synchronisation (RITS) is an extension of ETA over multiple hops. It is a reactive time synchronisation protocol that can be used to correlate multiple event detections at one or more locations to within microseconds. Rapid Time Synchronisation (RATS) is a proactive timesync protocol that utilises RITS to achieve network-wide synchronisation with microsecond precision and rapid convergence. Our work demonstrates that it is possible to build high-performance timesync services using the simple ETA primitive and suggests that more complex mechanisms may be unnecessary to meet the needs of many real world sensor network applications.