Notos: efficient emulation of wireless sensor networks with binary-to-source translation

Developing for wireless sensor networks is a challenging task due to the severe resource constraints of the devices, the uncertainties of the environment, and the distributed nature of the system. Therefore, simulation is an essential tool for developing systems and for evaluating and comparing protocols at scale in a reproducible manner. Cycle-accurate emulation of sensor networks allows the execution of platform target code and provides deep insight into the behavior of the overall system including the important aspect of energy consumption. However, the required fidelity incurs a significant overhead and limits the size of the emulated networks considerably. We investigate the use of binary-to-source translation, where the machine code of an executable for the target platform is transformed to source code for the host platform and compiled as part of the emulator. Additionally, as part of this transformation we perform static analysis and optimize the generated code. We have implemented our approach based on the well-established emulator Avrora and show in our evaluation that this approach can lead to significantly higher simulation speeds.

[1]  Lieven Eeckhout,et al.  Statistically rigorous java performance evaluation , 2007, OOPSLA.

[2]  Adam Dunkels,et al.  Demo abstract: MSPsim - an extensible simulator for MSP430-equipped sensor boards , 2007 .

[3]  Richard M. Stallman,et al.  Using the GNU Compiler Collection , 2010 .

[4]  Rajesh K. Gupta,et al.  Improving the speed and scalability of distributed simulations of sensor networks , 2009, 2009 International Conference on Information Processing in Sensor Networks.

[5]  Pedro José Marrón,et al.  Boreas: Efficient Synchronization for Scalable Emulation of Sensor Networks , 2011, 2011 IEEE Eighth International Conference on Mobile Ad-Hoc and Sensor Systems.

[6]  Rajesh Gupta,et al.  Improved Distributed Simulation of Sensor Networks Based on Sensor Node Sleep Time , 2008, DCOSS.

[7]  Goh Kondoh,et al.  Dynamic binary translation specialized for embedded systems , 2010, VEE '10.

[8]  Philip Levis,et al.  Collection tree protocol , 2009, SenSys '09.

[9]  Olga Saukh,et al.  A versatile software architecture for civil structure monitoring with wireless sensor networks , 2012 .

[10]  John S. Baras,et al.  ATEMU: a fine-grained sensor network simulator , 2004, 2004 First Annual IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks, 2004. IEEE SECON 2004..

[11]  Rajive L. Bagrodia,et al.  Scalable emulation of TinyOS applications in heterogeneous network scenarios , 2009, 2009 IEEE 6th International Conference on Mobile Adhoc and Sensor Systems.

[12]  Jing Wang,et al.  SPIRE: improving dynamic binary translation through SPC-indexed indirect branch redirecting , 2013, VEE '13.

[13]  Klaus Wehrle,et al.  When Timing Matters: Enabling Time Accurate and Scalable Simulation of Sensor Network Applications , 2008, 2008 International Conference on Information Processing in Sensor Networks (ipsn 2008).

[14]  Hejun Wu,et al.  VMNet: Realistic Emulation of Wireless Sensor Networks , 2007, IEEE Transactions on Parallel and Distributed Systems.

[15]  Rajesh Gupta,et al.  LazySync: A New Synchronization Scheme for Distributed Simulation of Sensor Networks , 2009, DCOSS.

[16]  Rudolf Hornig,et al.  An overview of the OMNeT++ simulation environment , 2008, Simutools 2008.

[17]  Richard Wolski,et al.  Disens: scalable distributed sensor network simulation , 2007, PPOPP.

[18]  Guillaume Chelius,et al.  Worldsens: Development and Prototyping Tools for Application Specific Wireless Sensors Networks , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[19]  David E. Culler,et al.  TinyOS: An Operating System for Sensor Networks , 2005, Ambient Intelligence.

[20]  Adam Dunkels,et al.  Cross-Level Sensor Network Simulation with COOJA , 2006, Proceedings. 2006 31st IEEE Conference on Local Computer Networks.

[21]  Adam Dunkels,et al.  Contiki - a lightweight and flexible operating system for tiny networked sensors , 2004, 29th Annual IEEE International Conference on Local Computer Networks.

[22]  Jens Palsberg,et al.  Nonintrusive precision instrumentation of microcontroller software , 2005, LCTES '05.

[23]  Jens Palsberg,et al.  Avrora: scalable sensor network simulation with precise timing , 2005, IPSN 2005. Fourth International Symposium on Information Processing in Sensor Networks, 2005..

[24]  Fabrice Bellard,et al.  QEMU, a Fast and Portable Dynamic Translator , 2005, USENIX ATC, FREENIX Track.

[25]  R. Bagrodia,et al.  SenQ: A Scalable Simulation and Emulation Environment for Sensor Networks , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[26]  David E. Culler,et al.  TOSSIM: accurate and scalable simulation of entire TinyOS applications , 2003, SenSys '03.