Network measurement, which provides detailed information about the behaviors of operational networks, is essential for network management in wireless sensor networks. In the literature, there have been many approaches focusing on measuring  individual  aspect of the network, e.g., per-packet routing path and per-hop delay. However, there lacks a general support for conducting different measurement tasks. When managing an operational network, a network operator often needs to switch the current measurement task to a different one, in order to diagnose the observed symptoms. In this paper, we propose TinySDM, a  software-defined measurement architecture  for WSNs. TinySDM provides a general support for conducting different measurement tasks. TinySDM defines a set of carefully selected hooks that allow the users to easily execute their own measurement tasks. In addition, TinySDM provides a C-like language called TinyCode Language (TCL) to enable easy customization of measurement tasks. By only transmitting the binary code of the measurement task, TinySDM significantly reduces the size of the disseminated data compared with existing reprogramming approaches. We implement TinySDM on the TinyOS/TelosB platform and evaluate its performance extensively in a testbed with 60 nodes. We also use TCL to implement four specific measurement tasks. Results show that TinySDM is flexible, efficient and easily programmable.
['Chenhong Cao', 'Luyao Luo', 'Yi Gao', 'Wei Dong', 'Chun Chen']
TinySDM: software defined measurement in wireless sensor networks