skip to main content
10.1145/1967677.1967691acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
research-article

Dependence-based multi-level tracing and replay for wireless sensor networks debugging

Published: 11 April 2011 Publication History

Abstract

Due to resource constraints and unreliable communication, wireless sensor network (WSN) programming and debugging remain to be a challenging task. Runtime errors must be constantly monitored, often by checking for violations of certain invariants. Once an error is detected, diagnosis must be performed to identify the origin of the error. Deterministic replay is an error diagnosis method which has long been proposed for distributed systems. However, one of the significant hurdles for applying deterministic replay on WSN is posed by the small program memory on typical sensor nodes. This paper proposes a dependence-based multi-level method for memory-efficient tracing and replay. In the interest of portability across different hardware platforms, the method is implemented as a source-level tracing and replaying tool. To further reduce the code size after tracing instrumentation, a cost model is used for making the decision on which functions to in-line. A prototype for the tool targets C programs is developed on top of the Open64 compiler and is tested using several TinyOS applications running on TelosB motes. Preliminary experimental results show that the test programs, which do not fit the program memory after straightforward instrumentation, can be successfully accommodated in memory using the new method such that the injected errors can be found.

References

[1]
N. Ramanathan, K. Chang, R. Kapur, L. Girod, E. Kohler, and D. Estrin. Sympathy for the sensor network debugger. In SenSys, 2005.
[2]
M. Khan, H. Le, H. Ahmadi, T. Abdelzaher, and J. Han. Dustminer: troubleshooting interactive complexity bugs in sensor networks. In Sensys, 2008.
[3]
K. Liu, M. Li, Y. Liu, M. Li, Z. Guo, and F. Hong. Passive diagnosis for wireless sensor networks. In Sensys, 2008.
[4]
L. Girod, J. Elson, A. Cerpa, T. Stathopoulos, N. Ramanathan, and D. Estrin. Emstar: a software environment for developing and deploying wireless sensor networks. I Proceedings of the 2004 USENIX Technical Conference, 2004, pp. 283--296.
[5]
Q. Cao, T. Abdelzaher, J. Stankovic, K. Whitehouse, and L. Luo. Declarative tracepoints: A programmable and application independent debugging system for wireless sensor networks. In Sensys, 2008.
[6]
P. Levis and N. Lee. Tossim: Accurate and scalable simulation of entire tinyos applications. In SenSys, 2003.
[7]
J. Yang, M. L. Soffa, L. Selavo, and K. Whitehouse. Clairvoyant: A comprehensive source-level debugger for wireless sensor networks. In ACM SenSys, 2007.
[8]
Z. Chen, K. G. Shin. Post-Deployment Performance Debugging in Wireless Sensor Networks. In 30th IEEE Real-Time Systems Symposium. 2009.
[9]
Y. Wen, R. Wolski. s2db: A novel simulation-based debugger for sensor network applications. UCSB 2006,2006-01
[10]
D. Binkley. Precise executable interprocedural slices. ACM Letters on Programming Languages and Systems. 2(1--4):31--45, March-December 1993.
[11]
K. Römer, J. Ma. PDA: Passive distributed assertions for sensor networks. In ACM IPSN,2009
[12]
http://www.tinyos.net/community.html
[13]
http://www.open64.net/
[14]
K. Whitehouse, G. Tolle, J. Taneja, C. Sharp, S. Kim, J. Jeong, J. Hui, P. Dutta, and D. Culler. Marionette: using rpc for interactive development and debugging of wireless embedded networks. In IPSN'06, 2006.
[15]
V. Krunic, E. Trumpler, R. Han. NodeMD: Diagnosing Node-Level Faults in Remote Wireless Sensor Systems. In MobiSys, 2007.
[16]
M. Diaz, G. Juanole, and J. Courtiat. Observer-A Concept for Formal On-Line Validation of Distributed Systems. IEEE Transactions on Software Engineering, 20(12), 1994.
[17]
G. Khanna, P. Varadharajan, and S. Bagchi. Self Checking Network Protocols: A Monitor Based Approach. In International Symposium on Reliable Distributed Systems, pages 18--30, 2004.
[18]
M. Zulkernine and R. E. Seviora. A Compositional Approach to Monitoring Distributed Systems. In International Conference on Dependable Systems and Networks, 2002, pp. 763--772.
[19]
M. Weiser. Program slicing. In Proceedings of the 5th international conference on Software engineering. 1981.
[20]
D. Gay, P. Levis, R. von Behren, M. Welsh, E. Brewer, and D. Culler. The nesC language: A holistic approach to networked embedded systems. In SIGPLAN Conference on Programming Language Design and Implementation (PLDI'03), June 2003.
[21]
K.Sen, A. Vardhan, G. Agha and G. Rosu. Efficient decentralized monitoring of safety in distributed systems. In proceedings of 26th International Conference on Software Engineering, 2004
[22]
L. Lamport, The temporal logic of actions. ACM Transactions on Programming Languages and Systems, 16(3):8720923, 1994
[23]
O. Gnawali, R. Fonseca, K. Jamieson, D. Moss, and P. Levis. Collection Tree Protocol. In Proceedings of the 7th ACM Conference on Embedded Networked Sensor Systems, 2009.
[24]
P. Li, J. Regehr. T-Check: Bug Finding for Sensor Networks. IPSN'10,2010
[25]
Y. Pan, D. Pan, and M. Chen. Slicing component-based systems. 10th IEEE International Conference on Engineering of Complex Computer Systems, 2005
[26]
J. T. Lalchandani and R. Mall. Regression testing based-on slicing of component-based software architectures. In proceedings of the 1st India software engineering conference. Pages: 67--76. 2008
[27]
N. Xu, S. Rangwala, K. Chintalapudi, D. Ganesan, A. Broad, R. Govindan, and D. Estrin. A Wireless Sensor Network For Structural Monitoring. In Proc. of ACM SenSys, 2004.
[28]
T. He, S. Krishnamurthy, J. Stankovic, T. Abdelzaher, L. Luo, R. Stoleru, T. Yan, L. Gu, J. Hui, and B. Krogh, Energy-Efficient Surveillance System using Wireless Sensor Networks. In Proc. of ACM MobiSys, 2004.
[29]
M. Zulkernine and R. E. Seviora. A Compositional Approach to Monitoring Distributed Systems. In International Conference on Dependable Systems and Networks, pages 763--772, 2002
[30]
S. Park, Y. Zhou, W. Xiong, Z. Yin, R. Kaushik, K. H. Lee, S. Lu, PRES: probabilistic replay with execution sketching on multiprocessors, Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles, October 11--14, 2009, Big Sky, Montana, USA.
[31]
G. Altekar and I. Stoica: ODR: Output-Deterministic Replay for Multicore Debugging, Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles, October 11--14, 2009, Big Sky, Montana, USA.
[32]
M. Xu, V. Malyugin, J. Sheldon, G. Venkitachalam, B. Weissman, and V. Inc. Retrace: Collecting execution trace with virtual machine deterministic replay. In In Proceedings of the 3rd Annual Workshop on Modeling, Benchmarking and Simulation, MoBS, 2007.
[33]
J. Tucek, S. Lu, C. Huang, S. Xanthos, and Y. Zhou. Triage: diagnosing production run failures at the user's site. In T. C. Bressoud and M. F. Kaashoek, editors, SOSP, pages 131--144. ACM, 2007.
[34]
M. Olszewski, J. Ansel, and S. P. Amarasinghe. Kendo: efficient deterministic multithreading in software. In M. L. Soffa and M. J. Irwin, editors, ASPLOS, pages 97--108. ACM, 2009.
[35]
S. Bhansali, W.-K. Chen, S. de Jong, A. Edwards, R. Murray, M. Drinić, D. Mihočka, and J. Chau. Framework for instructionlevel tracing and analysis of program executions. In Proceedings of the 2nd international conference on Virtual execution environments (VEE), pages 154--163, 2006.
[36]
H. Patil, C. Pereira, M. Stallcup, G. Lueck, J. Cownie: PinPlay: A Framework for Deterministic Replay and Reproducible Analysis of Parallel Programs, CGO'10,2010
[37]
G. Tolle, D. Culler: Design of an Application-Cooperative Management System for Wireless Sensor Networks, Proceedings of Second European Workshop on Wireless Sensor Networks, pp. 121- 132, Jan. 31- Feb. 2. 2005.

Cited By

View all
  • (2015)TARDISProceedings of the 14th International Conference on Information Processing in Sensor Networks10.1145/2737095.2737096(286-297)Online publication date: 13-Apr-2015
  • (2015)TRACERJD: Generic trace-based dynamic dependence analysis with fine-grained logging2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER)10.1109/SANER.2015.7081862(489-493)Online publication date: Mar-2015
  • (2015)LibReplay: Deterministic Replay for Bug Hunting in Sensor NetworksWireless Sensor Networks10.1007/978-3-319-15582-1_18(258-265)Online publication date: 2015
  • Show More Cited By

Index Terms

  1. Dependence-based multi-level tracing and replay for wireless sensor networks debugging

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    LCTES '11: Proceedings of the 2011 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems
    April 2011
    182 pages
    ISBN:9781450305556
    DOI:10.1145/1967677
    • cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 46, Issue 5
      LCTES '10
      May 2011
      170 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/2016603
      Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 11 April 2011

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. dependence analysis
    2. invariants
    3. program debugging
    4. resource constrains
    5. wireless sensor network

    Qualifiers

    • Research-article

    Conference

    LCTES '11

    Acceptance Rates

    Overall Acceptance Rate 116 of 438 submissions, 26%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)1
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 25 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2015)TARDISProceedings of the 14th International Conference on Information Processing in Sensor Networks10.1145/2737095.2737096(286-297)Online publication date: 13-Apr-2015
    • (2015)TRACERJD: Generic trace-based dynamic dependence analysis with fine-grained logging2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER)10.1109/SANER.2015.7081862(489-493)Online publication date: Mar-2015
    • (2015)LibReplay: Deterministic Replay for Bug Hunting in Sensor NetworksWireless Sensor Networks10.1007/978-3-319-15582-1_18(258-265)Online publication date: 2015
    • (2014)Power-Based Diagnosis of Node Silence in Remote High-End Sensing SystemsACM Transactions on Sensor Networks10.1145/266163911:2(1-33)Online publication date: 12-Dec-2014
    • (2013)Global property violation detection and diagnosis for wireless sensor networksProceedings of the 2013 International Conference on Compilers, Architectures and Synthesis for Embedded Systems10.5555/2555729.2555752(1-10)Online publication date: 29-Sep-2013
    • (2011)AvekshaProceedings of the 9th ACM Conference on Embedded Networked Sensor Systems10.1145/2070942.2070972(288-301)Online publication date: 1-Nov-2011

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media