1 Order Reconstruction and Data Integrity Testing of Sensor Network Data Matthias Keller, ETH Zürich MICS Workshop, 29.06.2010.

Slides:



Advertisements
Similar presentations
Christoph Lenzen Philipp Sommer Philipp Sommer Roger Wattenhofer Roger Wattenhofer Optimal Clock Synchronization in Networks.
Advertisements

The Flooding Time Synchronization Protocol
Time-based Transactional Memory with Scalable Time Bases Torvald Riegel, Christof Fetzer, Pascal Felber Presented By: Michael Gendelman.
Gradient Clock Synchronization in Wireless Sensor Networks
Communication Networks Recitation 3 Bridges & Spanning trees.
HIERARCHY REFERENCING TIME SYNCHRONIZATION PROTOCOL Prepared by : Sunny Kr. Lohani, Roll – 16 Sem – 7, Dept. of Comp. Sc. & Engg.
1 SpaceWire Update NASA GSFC November 25, GSFC SpaceWire Status New Link core with split clock domains complete (Much faster) New Router core.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
T.Sharon-A.Frank 1 Multimedia Quality of Service (QoS)
Bridging. Bridge Functions To extend size of LANs either geographically or in terms number of users. − Protocols that include collisions can be performed.
Sampling and Flow Measurement Eric Purpus 5/18/04.
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
Ordering and Consistent Cuts Presented By Biswanath Panda.
CS 582 / CMPE 481 Distributed Systems Fault Tolerance.
Problem Statement Given a control system where components, i.e. plant, sensors, controllers, actuators, are connected via a communication network, design.
TRADING OFF PREDICTION ACCURACY AND POWER CONSUMPTION FOR CONTEXT- AWARE WEARABLE COMPUTING Presented By: Jeff Khoshgozaran.
Causality Interface  Declares the dependency that output events have on input events.  D is an ordered set associated with the min ( ) and plus ( ) operators.
He Huang Introduction:The Flooding Time Synchronization Protocol.
1 Relates to Lab 4. This module covers link state routing and the Open Shortest Path First (OSPF) routing protocol. Dynamic Routing Protocols II OSPF.
Lecture 13 Synchronization (cont). EECE 411: Design of Distributed Software Applications Logistics Last quiz Max: 69 / Median: 52 / Min: 24 In a box outside.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Wireless Sensor Networks 13th Lecture Christian Schindelhauer.
Simulation Waiting Line. 2 Introduction Definition (informal) A model is a simplified description of an entity (an object, a system of objects) such that.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Logical Time Steve Ko Computer Sciences and Engineering University at Buffalo.
Lecture 12 Synchronization. EECE 411: Design of Distributed Software Applications Summary so far … A distributed system is: a collection of independent.
Error Checking continued. Network Layers in Action Each layer in the OSI Model will add header information that pertains to that specific protocol. On.
1 Relates to Lab 4. This module covers link state routing and the Open Shortest Path First (OSPF) routing protocol. Dynamic Routing Protocols II OSPF.
Energy-Aware Synchronization in Wireless Sensor Networks Yanos Saravanos Major Advisor: Dr. Robert Akl Department of Computer Science and Engineering.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 8: Bridging Slides used with permissions.
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
IDIES Temporal Integrity Challenges in Long-term Environmental Monitoring Sensor Networks. Jayant Gupchup † Alex.
Visibility Graph. Voronoi Diagram Control is easy: stay equidistant away from closest obstacles.
Dynamic Source Routing (DSR) Sandeep Gupta M.Tech - WCC.
Chapter 2 – Fundamental Simulation ConceptsSlide 1 of 46 Chapter 2 Fundamental Simulation Concepts.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Scaling Broadcast Ethernet Some slides used with.
Estimating Component Availability by Dempster-Shafer Belief Networks Estimating Component Availability by Dempster-Shafer Belief Networks Lan Guo Lane.
Data Collection and Dissemination. Learning Objectives Understand Trickle – an data dissemination protocol for WSNs Understand data collection protocols.
Jayant Gupchup Phoenix, EWSN 2010 Phoenix: An Epidemic Approach to Time Reconstruction Jayant Gupchup †, Douglas Carlson †, Răzvan Musăloiu-E. †,*, Alex.
Computer Engineering and Networks Laboratory How Was Your Journey? Uncovering Routing Dynamics in Deployed Sensor Networks with Multi-hop Network Tomography.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
Time This powerpoint presentation has been adapted from: 1) sApr20.ppt.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
1 Data Link Layer Lecture 23 Imran Ahmed University of Management & Technology.
Low Power, Low Delay: Opportunistic Routing meets Duty Cycling Olaf Landsiedel 1, Euhanna Ghadimi 2, Simon Duquennoy 3, Mikael Johansson 2 1 Chalmers University.
Physical clock synchronization Question 1. Why is physical clock synchronization important? Question 2. With the price of atomic clocks or GPS coming down,
Dynamic Routing Protocols II OSPF
Non-Preemptive Buffer Management for Latency Sensitive Packets Moran Feldman Technion Seffi Naor Technion.
MAC Sublayer MAC layer tasks: – Control medium access – Roaming, authentication, power conservation Traffic services – DCF (Distributed Coordination.
A Pseudo Random Coordinated Scheduling Algorithm for Bluetooth Scatternets MobiHoc 2001.
An Extensible RTCP Control Framework for Large Multimedia Distributions Paper by: Julian Chesterfield Eve M. Schooler Presented by: Phillip H. Jones.
1 VLM 2 : A Very Lightweight Mobile Multicast System For Wireless Sensor Networks Anmol Sheth, Brian Shucker and Richard Han University of Colorado, Department.
Sniper Detection Using Wireless Sensor Networks
Observability by Design Principles of Observable Sensor Networks J. Beutel F. Mattern K. Römer L. Thiele.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1.Flow Control and ARQ Protocols.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
Classifying fault-tolerance Masking tolerance. Application runs as it is. The failure does not have a visible impact. All properties (both liveness & safety)
Chapter 5 Peer-to-Peer Protocols and Data Link Layer Timing Recovery.
ECE 544 Protocol Design Project 2016 Michael Sherman Murtadha Aldeer Leonard T. Park.
1 Relates to Lab 4. This module covers link state routing and the Open Shortest Path First (OSPF) routing protocol. Dynamic Routing Protocols II OSPF.
Transport layer.
Intra-Domain Routing Jacob Strauss September 14, 2006.
COT 5611 Operating Systems Design Principles Spring 2012
All You Ever Wanted to Know About Dynamic Taint Analysis & Forward Symbolic Execution (but might have been afraid to ask) Edward J. Schwartz, Thanassis.
Ajay Vyasapeetam Brijesh Shetty Karol Gryczynski
Yiannis Andreopoulos et al. IEEE JSAC’06 November 2006
A Simple Sensing Program Structure
Physical clock synchronization
COT 5611 Operating Systems Design Principles Spring 2014
Error Checking continued
Presentation transcript:

1 Order Reconstruction and Data Integrity Testing of Sensor Network Data Matthias Keller, ETH Zürich MICS Workshop,

2 PermaSense Matterhorn Deployment August 2008 – today Single base station 17 sensor nodes TinyOS/Dozer [Burri2007] Constant rate < 0.1 MByte/node/day

3 Problem in Finding Temporal Order of Generation Inconsistencies between packet generation timestamp and sequence number

4 Approach Sensor Network Filtered, Annotated Data System/Error Model Packet Analysis SN Data AnalysisUser Domain Research Feedbac k System Status 1 Data Model

5 Approach Sensor Network Filtered, Annotated Data System/Error Model Packet Analysis SN Data AnalysisUser Domain Research Feedbac k System Status 1 Data Model

6 Related Work Post-mortem time reconstruction –Volcano deployment: Problems with FTSP [WernerAllen2006] –SunDial: Reconstruct global time from light intensity measurements [Gupchup2009] –Phoenix: Time reconstruction under frequent loss of local node state [Gupchup2010] –This work does not reconstruct timestamps, but annotates the data with information on the temporal order of generation Data integrity in data warehousing –Cleaning of erroneous user inputs, i.e. with the help of dictionaries [Rahm2000] –Data integrity based on conformance of observed system behavior to a system/error model of the system

7 Research Questions How can we model networked embedded systems for analyzing data integrity and network status? What information can we reliably extract from sensor network data? –Node resets, topology changes, … –Temporal order of generation, duplicates, lost data … How can we design observable systems? –Minimally needed status information, timing information, …

8 Research Questions How can we model networked embedded systems for analyzing data integrity and network status? What information can we reliably extract from sensor network data? –Node resets, topology changes, … –Temporal order of generation, duplicates, lost data … How can we design observable systems? –Minimally needed status information, timing information, … What follows, is a simple first attempt.

9 System Model Sensor Node Periodic data sampling Packet forwarding Local state Unique sender address Local clock with bounded drift Sequence number counter Packet queue Base Station Sink of data collection tree Synchronized GMT clock Only component with a global notion of time Dynamic multi-hop tree topology Period p s

10 Example: Journey of a Single Packet ‘ Source address Sequence number s Elapsed time t e Payload d Arrival timestamp t a abcd abcd abcd abcd abcd :27:15 GEN WAIT TXRX WAIT TX RX “ ‘“‘“ Updated packet Updated packet Estimated packet generation time t p = t a – t e = :27:09

11 Error Model Data loss Packet duplicatesNode reboots Hard reboot: Power cycle Soft reboot: Watchdog reset Shortens packet period ✗ Retransmission Lost 1-hop ACK Waiting packets ✗ ✗ ✗ Node reboot Queue reset Empty queue Clock drift ρ  [ -ρ; +ρ] Directly affects measurement of Sampling period p s Contribution to elapsed time t e Indirectly leading to inconsistencies Time stamp order t p vs. order of packet generation s } <ps<ps } psps ^ ^

12 Formal System Model with Drift Considering a single sensor node with incrementing i: Sampling period: p s Clock drift: ρ(i)  [ -ρ; +ρ] Packet generation time: t g (i) = t 0 + i * p s * (1+ρ) Packet sequence number: s(i) = i mod s max Sojourn time on node n: t s (i, n) Elapsed time: t e (i) =  (n) t s (i, n) Arrival time at base station: t a (i) Estimated generation time: t p (i) = t a (i) – t e (i) Error bound on generation time calculation: |t p (i) – t g (i)| = |  (n) [ t s (i, n) * ρ(i) ] |  t e (i) * ρ ^^ ^

13 Packet Analysis Considering data of a single sensor node Packet input format: (s, t e, d, t a ) –Sequence number s, elapsed time t e, payload d, arrival time t a Packet output format: (s, t e, d, t a, id, [t l, t u ]) –Unique packet identifier id reflects temporal order of generation –Bound on packet generation time [t l, t u ] Goals of packet analysis 1.Add information id, t l, t u to input packets that comply to system and error model 2.Classify all other packets as incorrect: they are witnesses for model violations

14 Analysis Concepts Remove uncertainty caused by sequence number s(i) = i mod s max –Assign packets to epochs –Determine unique packet id Determine upper and lower bounds on packet generation t g  [t l, t u ] –Use forward and backward reasoning Remove non-compliant packets –Duplicated packets –Empty generation time intervals –Incorrect epochs (duplicated s, too long) problems: - clock drift - reboots

15 Analysis Concepts Remove uncertainty caused by sequence number s(i) = i mod s max –Assign packets to epochs –Determine unique packet id Determine upper and lower bounds on packet generation t g  [t l, t u ] –Use forward and backward reasoning Remove non-compliant packets –Duplicated packets –Empty generation time intervals –Incorrect epochs (duplicated s, too long) problems: - clock drift - reboots

16 Separate Data into Epochs Epoch: Packets generated between two consecutive resets of the sequence number Epoch center T C : Timestamp of (hypothetical) packet having sequence number s max /2 Sequence numbers are unique within an epoch Epoch i Epoch centers Epoch i+1Epoch i+2 T = s max /p s ^

17 Mapping of Packets to Epochs Timestamp t p, sequence number s: s 0 s max

18 Epoch Assignment with Reboots and Drift Ensure clear assignment of packets to epochs:   Bound on elapsed time t e :

19 Epoch Assignment Algorithm Process packets from a single node: 1.Order packets by generation timestamp t p 2.Initialize algorithm: i=0, epoch e(i)=0 3.If t p (i)-t p (i-1) < L max – L min + 2 *ρ* t e –e(i) = e(i-1) Else if t p (i)-t p (i-1) ≥ L max – L min + 2 *ρ* t e –e(i) = e(i-1) id(i) = e(i) * s max + s(i) 4.Increment i ^ ^ ^ ^

20 Packet Analysis Duplicate Filter Epoch Assignment Violating data Duplicates Correct data with annotated id SN Data Duplicate-free Data Epochs Under given system and error model:

21 Epochs: Known Good Network Operation Equally spaced epoch centers

22 Epochs: Unstable Network Operation expected distance unexpected data Phase shift due to reset

23 Case Study: Conformance to System Model

24 Conclusions and Outlook Data integrity testing and order reconstruction based on a system and error model of a real system Give guarantees on data quality –Duplicate-free data –Correct temporal order of generation –Correct logical ordering Improve analysis method and system model –Reduce unexplained packets Integrate results of data filtering based on physical models Temporal order Logical order Physical values