1 Software Reliability in Wireless Sensor Networks (WSN) -Xiong Junjie -2010.4.26.

Slides:



Advertisements
Similar presentations
Is There Light at the Ends of the Tunnel? Wireless Sensor Networks for Adaptive Lighting in Road Tunnels IPSN 2011 Sean.
Advertisements

1 S4: Small State and Small Stretch Routing for Large Wireless Sensor Networks Yun Mao 2, Feng Wang 1, Lili Qiu 1, Simon S. Lam 1, Jonathan M. Smith 2.
Abstraction and Modular Reasoning for the Verification of Software Corina Pasareanu NASA Ames Research Center.
Decentralized Reactive Clustering in Sensor Networks Yingyue Xu April 26, 2015.
Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
Source-Location Privacy Protection in Wireless Sensor Network Presented by: Yufei Xu Xin Wu Da Teng.
Towards a Model Checker for NesC and Wireless Sensor Networks Manchun Zheng 1, Jun Sun 2, Yang Liu 1, Jin Song Dong 1, and Yu Gu 2 1 National University.
TOSSIM A simulator for TinyOS Presented at SenSys 2003 Presented by : Bhavana Presented by : Bhavana 16 th March, 2005.
Leveraging IP for Sensor Network Deployment Simon Duquennoy, Niklas Wirstrom, Nicolas Tsiftes, Adam Dunkels Swedish Institute of Computer Science Presenter.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
1 Efficient Memory Safety for TinyOS Nathan Cooprider Will Archer Eric Eide David Gay † John Regehr University of Utah School of Computing † Intel Research.
Accurate Emulation of Wireless Sensor Networks Hejun Wu Joint work with Qiong Luo, Pei Zheng*, Bingsheng He, and Lionel M. Ni Department of Computer Science.
1 TinyOS 2.1: Deploying Memory Safety Nathan Cooprider Yang Chen Will Archer Eric Eide David Gay † John Regehr University of Utah School of Computing †
Dependable computing needs pervasive debugging Tim Harris
1 Efficient Memory Safety for TinyOS 2.1 Yang Chen Nathan Cooprider Will Archer Eric Eide David Gay † John Regehr University of Utah School of Computing.
TinyOS Software Engineering Sensor Networks for the Masses.
Matnet – Matlab Network Simulator for TinyOS Alec WooTerence Tong July 31 st, 2002.
Communication in Distributed Systems –Part 2
TOSSIM: Visualizing the Real World Philip Levis, Nelson Lee, Dennis Chi and David Culler UC Berkeley NEST Retreat, January 2003.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 2: Operating-System Structures Modified from the text book.
Fault Tolerance in ZigBee Wireless Sensor Networks
Sensor Network Simulation Simulators and Testbeds Jaehoon Kim Jeeyoung Kim Sungwook Moon.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Intelligent Shipping Container Project IMPACT & INTEL.
Protocol Layering Chapter 10. Looked at: Architectural foundations of internetworking Architectural foundations of internetworking Forwarding of datagrams.
Common Devices Used In Computer Networks
LiNK: An Operating System Architecture for Network Processors Steve Muir, Jonathan Smith Princeton University, University of Pennsylvania
Vampire Attacks: Draining Life from Wireless Ad Hoc Sensor Networks.
Chord & CFS Presenter: Gang ZhouNov. 11th, University of Virginia.
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications Chien-Liang Fok, Gruia-Catalin Roman, Chenyang Lu
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications Chien-Liang Fok, Gruia-Catalin Roman, Chenyang Lu
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Cisco S2 C4 Router Components. Configure a Router You can configure a router from –from the console terminal (a computer connected to the router –through.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
Simulation of Distributed Application and Protocols using TOSSIM Valliappan Annamalai.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 3.
REED: Robust, Efficient Filtering and Event Detection in Sensor Networks Daniel Abadi, Samuel Madden, Wolfgang Lindner MIT United States VLDB 2005.
Operating Systems Lecture November 2015© Copyright Virtual University of Pakistan 2 Agenda for Today Review of previous lecture Hardware (I/O, memory,
TANGO TANGO ALTERNATE NETWORK GRAPH ORGANIZER Olof Hellqvist Zak Blacher.
X-WindowsP.K.K.Thambi The X Window System Module 5.
SRL: A Bidirectional Abstraction for Unidirectional Ad Hoc Networks. Venugopalan Ramasubramanian Ranveer Chandra Daniel Mosse.
Tool Working Group Report John Regehr. 2 Tool WG Agenda Technology transfer: Move software tools from research into practical use for TinyOS 2.x developers.
A Survey on Sensor Networks Hussein Alzoubi Rami Alnamneh
The concept of RAID in Databases By Junaid Ali Siddiqui.
Main Issues Three major issues that we are concerned with in sensor networks are – Clustering Routing and Security To be considered against the backdrop.
Silberschatz, Galvin and Gagne  Operating System Concepts UNIT II Operating System Services.
1 RealProct: Reliable Protocol Conformance Testing with Real Nodes for Wireless Sensor Networks Junjie Xiong, Edith C.-Ngai, Yangfan Zhou, Michael R. Lyu.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
Xiong Junjie Node-level debugging based on finite state machine in wireless sensor networks.
Tufts Wireless Laboratory School Of Engineering Tufts University Paper Review “An Energy Efficient Multipath Routing Protocol for Wireless Sensor Networks”,
Slide 1/14 Midsens ’09 – December 1, 2009 Lightweight Tracing For Wireless Sensor Networks Debugging Vinaitheerthan Sundaram*, Patrick Eugster, Xiangyu.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Manish Kumar,MSRITSoftware Architecture1 Remote procedure call Client/server architecture.
Group Communication Theresa Nguyen ICS243f Spring 2001.
Improving the Reliability of Commodity Operating Systems Michael M. Swift, Brian N. Bershad, Henry M. Levy Presented by Ya-Yun Lo EECS 582 – W161.
Source : 2014 IEEE Ninth International Conference on Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP) Auther : Nacer Khalil, Mohamed.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Why does it need? [USN] ( 주 ) 한백전자 Background Wireless Sensor Network (WSN)  Relationship between Sensor and WSN Individual sensors are very limited.
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
Ahmed Saeed†, Mohamed Ibrahim†, Khaled A. Harras‡, Moustafa Youssef†
Simulation of Distributed Application and Protocols using TOSSIM
Diagnosing Wireless Sensor Networks through Wireless Mobile Nodes
Safe TinyOS.
GEOMATIKA UNIVERSITY COLLEGE CHAPTER 2 OPERATING SYSTEM PRINCIPLES
RealProct: Reliable Protocol Conformance Testing with Real Nodes for Wireless Sensor Networks Junjie Xiong
Efficient Memory Safety for TinyOS 2.1
Operating Systems Lecture 3.
Outline Chapter 2 (cont) OS Design OS structure
Presentation transcript:

1 Software Reliability in Wireless Sensor Networks (WSN) -Xiong Junjie

2 Outline Motivation Recent Research Feasible Techniques and Challenges

3 Motivation Software Reliability is very important in WSNs. E.g., a bug in the flash driver of Deluge caused a three-day network- outage during a deployment on an active volcano. Try to find as many bugs as possible before deployment.  By simulation.  By testbad.

4 Motivation The software architecture is implied in the hardware abstraction architecture (EWSN2005). Software Hardware

5 Outline Motivation Recent Research Feasible Techniques and Challenges

6 Recent Research (1) TOSSIM: Accurate and scalable simulation of entire TinyOS applications (SenSys2003) It is a well-known simulation environment for TinyOS. It works by replacing components with simulation implementations. It supports simulation configuration file written with two programming interfaces: Python and C++. To compile TOSSIM, execute command: make micaz sim

7 Recent Research (2) Safe TinyOS: Efficient memory safety for TinyOS (SenSys2007) It catches all pointer and array bounds errors with the Deputy compiler. Deputy compiler enforces type and memory safety with several annotations: To compile a program in safe TinyOS, execute command: make micaz safe. E.g., after executing such command, line “message_t* msg =...; ” in the compiled program will be changed to “message_t* ONE msg =...; ”. ONEA pointer that always refers to a single object. ONE_NOKSame as ONE but may be NULL. COUNT(n) A pointer that always refers to a block of at least n objects. COUNT_NOK(n) Same as COUNT but may be NULL. BND(n,m) A pointer p such that n≤p<m, and that is aligned with respect to n and m. … …

8 Recent Research (3) T-Check: Bug Finding for Sensor Networks (IPSN2010) T-Check is developed to find bugs by simulation before deployment. It uses TOSSIM and Safe TinyOS, and adds non-deterministic events to trigger corner case bugs. It is built on the model checker from paper “Detecting liveness bugs in systems code” (NSDI2008):  Depth-bounded explicit state model checking.  Random walk exploration.  Partial order reduction.  Critical Transition Isolation. It finds 10 safety bugs and 2 lives bugs in TinyOS 2.1.

9 Recent Research (4) KleeNet: Discovering Insidious Interaction Bugs in Wireless Sensor Networks Before Deployment (IPSN2010) KleeNet is a debugging environment that effectively discovers interaction bugs before deployment by injecting non-deterministic events. It is suitable for WSNs by extending Klee (a symbolic virtual machine built on top of the LLVM, OSDI2008):  It uses symbolic execution to generate execution paths of participating nodes at high-coverage.  It injects symbolic, nondeterministic events (such as loss, duplication and corruption of packets and node failures), and thus drive the sensor network execution into corner-case situations. It detects four insidious bugs in the TCP/IP protocol stack of the Contiki OS.

10 Recent Research (5) Neutron: Surviving sensor network software faults (SOSP2009) Neutron is a version of the TinyOS operating system that efficiently recovers from memory safety bugs. It divides programs into recovery units and reboot only the faulting unit. It is built on Safe TinyOS and TOSThreads (multi-threaded TinyOS in SenSys2009).

11 Recent Research (6) FSMGen: Deriving State Machines from TinyOS Programs using Symbolic Execution (IPSN2008) TinyOS programs are low-level and thus difficult to understand, maintain, and debug. Deriving Finite State Machine (FSM) aids program understanding, error detection, and program validation. FSMGen adopts symbolic execution. FSMGen employs a form of predicate abstraction on the resulting information from symbolic execution, and generate a FSM.

12 Recent Research (7) PTFW: A Protocol Testing Framework for Wireless Sensor Networks (IWCMC2009: AR47.5%) It is a protocol testing framework for WSNs. It based on the layered architecture of WSNs. It uses FSM.

13 Outline Motivation Recent Research Feasible Techniques and Challenges

14 Feasible Techniques Simulation and testbed cannot find some bugs that appear in real deployment. Testing with large amount of real sensor nodes is not efficient and practical. It is efficient and feasible to develop a virtual testing environment with a few real sensor nodes and a few PCs, and make the testing closer to real deployment than simulation.

15 Feasible Techniques RF is radio frequency

16 Feasible Techniques An example to test a shortest path routing. Test case 1: PC wait for IUT’s routing request. Test case 2: PC notices T to transmit several routing replies to IUT. Routing request Forward Routing request to PC Routing Reply from node 8 with hop 4 Routing Reply from node 7 with hop 3 Routing Reply from node 6 with hop 2 Ask T to send to IUT

17 Challenges Manipulate the Radio Frequency address. The transmitting module at the PC should be able to communicate with the counterpart at the controlled transmitting node via serial port. The receiving module at the PC should be able to communicate with the counterpart at the controlled receiving node via serial port. API design for test case at any software level of sensor nodes. Test case generation by FSM or other formalized models.

18 Thank you!