190 likes | 347 Views
The Problem Bit. Matthias Keller , Jan Beutel , Lothar Thiele. DCOSS 2013, Cambridge, MA, USA. Multi-hop Data Collection. Sensor nodes generate own packets and forward packets of other nodes. 1. 2. 3. Packet Information. FIFO Send Queue. Routing Tree. Source address
E N D
The Problem Bit Matthias Keller, Jan Beutel, Lothar Thiele DCOSS 2013, Cambridge, MA, USA
Multi-hop Data Collection Sensor nodes generate own packets and forward packets of other nodes 1 2 3 Packet Information FIFO Send Queue Routing Tree • Source address • Sequencing information • (Imperfect) timing • information • Parent information Optional packet buffer A Error Model 4 Finite size send queue • Lossy channel • Congestion • Backpressure • Protocol errors Maintenance of system health and lifetime?
Extraction of Internal Network State In-band Extracted state is limited to connected operation Transmission overhead eScan [Zhao2002] Sympathy [Ramanathan2005] PAD [Liu2011] Hybrid Monitoring PDA [Römer2009] Passive/non-intrusive Active/intrusive FlockLab/GPIO[Lim2013] LiveNet [Chen2008] Debugging/ development MoteLab/printf [Werner-Allen2005] Out-of-band … and many more
Packet Delay (De)Composition RX RX TX TX TX penalty 2 2 1 1 2 Time Time End-to-end packet delay = Sojourn time at node H = f(processing delay, time without connection, delay due to full parent, # of transmission failures)
Multi-Hop Network Tomography Passive method for the reconstruction of path and per-hop timing information: F F A C A C Multi-hop Network Tomography B S D S B E D E 1 1 2 2 1 • Incoming packets • Information frompacket • source • Order of arrival at the sink • Per-packet network path • Per-hop arrival order • Per-hop arrival time bounds M. Keller, J. Beutel, L. Thiele: How Was Your Journey? Uncovering Routing Dynamics in Deployed Sensor Networks with Multi-hop Network Tomography, SenSys 2012
Per-hop Sojourn Time Uncertainty Dozer, IPI = 120sec, 96 Tmote Sky nodes (TWIST) Extra waiting time after a failure event Tomography data alone cannot provide accuracy needed for inferring failure events N. Burri, P. von Rickenbach, R. Wattenhofer: Dozer: Ultra-Low Power Data Gathering in Sensor Networks, IPSN 2007
Hybrid Monitoring What is the minimal extra information needed to infer internal network state with a high confidence? • Incoming packet stream • Timing information • Sequencing information • Parent information Number of failure events that occurred within a specific time interval Single extra bit per packet Failure event: Event that causes waiting packets to wait longer.
Hybrid Monitoring System Hybrid Monitoring for the estimation of the number of failure events that occurred at a sensor node within a specific time interval: Sensor Node: Backend: Problem Bit Component Multi-hop Network Tomography Failure Event Count Estimation Nodes add one extra bit to every locally generated packet. Minimum Path Delay Estimation
Problem Bit Operation on A Single Node Set problem bit on error Clear problem bit after packet generation 1 Problem bit 0 FAIL FAIL 0 1 OK OK OK OK OK Time RX TX GEN TX RX TX RX TX TX TX GEN TX Also waiting longer due to failed transmission of previous packet
Hybrid Monitoring System Hybrid Monitoring for the estimation of the number of failure events that occurred at a sensor node within a specific time interval: Sensor Node: Backend: Problem Bit Component Multi-hop Network Tomography Failure Event Count Estimation Nodes add one extra bit to every locally generated packet. Minimum Path Delay Estimation
Minimum Path Delay Estimation Idea: If a packet cannot have been delayed by a failure event, use its end-to-end delay to improve the estimation of the minimum delay of its path. For each node N that the packet under inspection k visited: Could k have been delayed by a problem at N? 0 0 Time Problem bit never set: 0 1 One or more problem bit set: of interest Exit loop Yes Update delay estimation Visited all nodes? No No update
Hybrid Monitoring System Hybrid Monitoring for the estimation of the number of failure events that occurred at a sensor node within a specific time interval: Sensor Node: Backend: Problem Bit Component Multi-hop Network Tomography Failure Event Count Estimation Nodes add one extra bit to every locally generated packet. Minimum Path Delay Estimation
Failure Event Count Estimation No Set number of occurred failure events to 0. Is problem bit set? Yes Find packet that was generated before k Analyze the timing of all packets that may be affected by one or more problems within the time of interest k Previously generated packet ? 1 Time of interest Time Set number of occurred failure events to MAX(1, estimated event count)
Testbed Evaluation (FlockLab+TWIST) • Real implementation on top of TinyOS and Dozer • IPI = 120 sec, 30 sec Dozer slots (PermaSense) • Failure events that postpone the next packet transmission to the next communication slot: • Missed beacon • Busy radio • Missed packet acknowledgment • Full parent queue • Out-of-band extraction of ground truth information N. Burri, P. von Rickenbach, R. Wattenhofer: Dozer: Ultra-Low Power Data Gathering in Sensor Networks, IPSN 2007
Comparison with Completely Passive System Completely passive system Completely passive system over and underestimates the number of occurred failure events. 96 Tmote Sky nodes (TWIST), 17 hours
Correlation with Ground Truth 96 Tmote Sky nodes, 17 hours Significant improvement with problem bit Low correlation without problem bit
Hybrid Monitoring • Event detection accuracy increases significantly after adding one bit of information to every packet • Hybrid monitoring requires only a negligible overhead while also covering disconnected operation • Amount of health status automatically scales up with more traffic www.permasense.ch
How About 2, 3, …, N Bits? Use cases for more than one extra bit: • Separate error causes • e.g., extra bits for busy radio, missed beacon etc. • Improve temporal accuracy • e.g., dedicate one bit to every 30 sec long Dozer slot • Move towards counter variables • Highest gain is achieved by using one extra bit instead of a completely passive system 1 2 3