1 Reprogramming/Re-tasking in Wireless Sensor Networks Part of slides are from Jonathon Hui, David A. Olsen and Jaein Jeong.

Slides:



Advertisements
Similar presentations
Deluge TinyOS Network Programming The real way to program your motes
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.
Maximum Battery Life Routing to Support Ubiquitous Mobile Computing in Wireless Ad Hoc Networks By C. K. Toh.
Remote Programming Dissemination Collection Network Management Gilman Tolle (also speaking for Jonathan Hui)
Trickle: Code Propagation and Maintenance Neil Patel UC Berkeley David Culler UC Berkeley Scott Shenker UC Berkeley ICSI Philip Levis UC Berkeley.
An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Network
Location Resident Services Emmanouil Koukoumidis Princeton University Group Talk on 02/04/09 1.
An Energy-Efficient MAC Protocol for Wireless Sensor Networks
Receiver Based Forwarding for Wireless Sensor Networks Rodrigo Fonseca OASIS Retreat January 2005 Joint work with Ana Sanz Merino, Ion Stoica.
PEDS September 18, 2006 Power Efficient System for Sensor Networks1 S. Coleri, A. Puri and P. Varaiya UC Berkeley Eighth IEEE International Symposium on.
Incremental Network Programming for Wireless Sensors NEST Retreat June 3 rd, 2004 Jaein Jeong UC Berkeley, EECS Introduction Background – Mechanisms of.
Node-level Representation and System Support for Network Programming Jaein Jeong.
June 2008 WEI short course - L9 trickle 1 Wireless Embedded InterNet working Foundations of Ubiquitous Sensor Networks - Trickle - Polite Reliable Responsive.
Incremental Network Programming for Wireless Sensors IEEE SECON 2004 Jaein Jeong and David Culler UC Berkeley, EECS.
IEEE INFOCOM 2005, Miami, FL RID: Radio Interference Detection in Wireless Sensor Networks Gang Zhou, Tian He, John A. Stankovic, Tarek F. Abdelzaher Computer.
1 Deluge: Data Dissemination for Network Programming at Scale Jonathan Hui UC Berkeley NEST Retreat June 3, 2004.
Fair Sharing of MAC under TCP in Wireless Ad Hoc Networks Mario Gerla Computer Science Department University of California, Los Angeles Los Angeles, CA.
1 Network Reprogramming at Scale NEST Retreat January, 2004 Jonathan Hui Jaein Jeong Gilman Tolle.
1 Ultra-Low Duty Cycle MAC with Scheduled Channel Polling Wei Ye Fabio Silva John Heidemann Presented by: Ronak Bhuta Date: 4 th December 2007.
Adaptive Self-Configuring Sensor Network Topologies ns-2 simulation & performance analysis Zhenghua Fu Ben Greenstein Petros Zerfos.
A Transmission Control Scheme for Media Access in Sensor Networks Alec Woo, David Culler (University of California, Berkeley) Special thanks to Wei Ye.
Enhancing TCP Fairness in Ad Hoc Wireless Networks Using Neighborhood RED Kaixin Xu, Mario Gerla University of California, Los Angeles {xkx,
Power saving technique for multi-hop ad hoc wireless networks.
Dynamic Clustering for Acoustic Target Tracking in Wireless Sensor Network Wei-Peng Chen, Jennifer C. Hou, Lui Sha Presented by Ray Lam Oct 23, 2004.
Empirical Analysis of Transmission Power Control Algorithms for Wireless Sensor Networks CENTS Retreat – May 26, 2005 Jaein Jeong (1), David Culler (1),
MAC Layer Protocols for Sensor Networks Leonardo Leiria Fernandes.
University University of Virginia 1 Flash Flooding: Exploiting the Capture Effect for Rapid Flooding in Wireless Sensor Networks Infocom ’ 09 Rio de Janeiro,
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks Dr. Baruch Awerbuch, David Holmer, and Herbert Rubens Johns Hopkins University Department.
Topic 1: Sensor Networks (Long Lecture) Jorge J. Gómez.
Itrat Rasool Quadri ST ID COE-543 Wireless and Mobile Networks
A Distributed Scheduling Algorithm for Real-time (D-SAR) Industrial Wireless Sensor and Actuator Networks By Kiana Karimpour.
Dynamic Clustering for Acoustic Target Tracking in Wireless Sensor Network Wei-Peng Chen, Jennifer C. Hou, Lui Sha.
Securing Every Bit: Authenticated Broadcast in Wireless Networks Dan Alistarh, Seth Gilbert, Rachid Guerraoui, Zarko Milosevic, and Calvin Newport.
TinyOS By Morgan Leider CS 411 with Mike Rowe with Mike Rowe.
Fair Sharing of MAC under TCP in Wireless Ad Hoc Networks Mario Gerla Computer Science Department University of California, Los Angeles Los Angeles, CA.
TRICKLE: A Self-Regulating Algorithm for Code Propagation and Maintenance in Wireless Sensor Networks Philip Levis, Neil Patel, Scott Shenker and David.
Mate: A Tiny Virtual Machine for Sensor Networks Phil Levis and David Culler Presented by Andrew Chien CSE 291 Chien April 22, 2003 (slides courtesy, Phil.
Version 4.0 Ethernet Network Fundamentals – Chapter 9 Sandra Coleman, CCNA, CCAI.
A Remote Code Update Mechanism for Wireless Sensor Networks Thanos Stathopoulos, John Heidemann and Deborah Estrin CEG 790 Presentation By: Trevor Smith.
1 SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks Presented By Thomas H. Hand Duke University Adapted from: “ SmartGossip: An Adaptive.
Energy and Latency Control in Low Duty Cycle MAC Protocols Yuan Li, Wei Ye, John Heidemann Information Sciences Institute, University of Southern California.
Data Collection and Dissemination. Learning Objectives Understand Trickle – an data dissemination protocol for WSNs Understand data collection protocols.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 3 v3.0 Module 9 Virtual Trunking Protocol.
An Efficient Wireless Mesh Network A New Architecture 指導教授:許子衡 教授 學生:王志嘉.
Tackling Exposed Node Problem in IEEE Mac Deepanshu Shukla ( ) Guide: Dr. Sridhar Iyer.
Presenter - Bob Kinicki Internet of Things Fall 2015
a/b/g Networks Routing Herbert Rubens Slides taken from UIUC Wireless Networking Group.
SMAC: An Energy-efficient MAC Protocol for Wireless Networks
1 An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Networks Tijs van Dam, Koen Langendoen In ACM SenSys /1/2005 Hong-Shi Wang.
Reliable Multi-hop Firmware Upload Protocol for mica2 motes. CSE 534 Advanced Networks Dmitri Lusnikov Fall 2004.
1 Packet Radio Networks Fixed or mobile nodes that communicate via radios –Advantages: »Fast (re) deployment and set-up of network »Ability to support.
An Energy-Efficient MAC Protocol for Wireless Sensor Networks Speaker: hsiwei Wei Ye, John Heidemann and Deborah Estrin. IEEE INFOCOM 2002 Page
Evaluation of ad hoc routing over a channel switching MAC protocol Ethan Phelps-Goodman Lillie Kittredge.
Network Coding and Reliable Communications Group Modeling Network Coded TCP Throughput: A Simple Model and its Validation MinJi Kim*, Muriel Médard*, João.
RBP: Robust Broadcast Propagation in Wireless Networks Fred Stann, John Heidemann, Rajesh Shroff, Muhammad Zaki Murtaza USC/ISI In SenSys 2006.
DRAND: Distributed Randomized TDMA Scheduling for Wireless Ad-Hoc Networks Injong Rhee (with Ajit Warrier, Jeongki Min, Lisong Xu) Department of Computer.
Max do Val Machado Raquel A. F. Mini Antonio A. F. Loureiro DCC/UFMG DCC/PUC Minas DCC/UFMG IEEE ICC 2009 proceedings Advisor : Han-Chieh Chao Student.
LA-MAC: A Load Adaptive MAC Protocol for MANETs IEEE Global Telecommunications Conference(GLOBECOM )2009. Presented by Qiang YE Smart Grid Subgroup Meeting.
The Medium Access Control Sublayer
A unifying link abstraction for wireless sensor networks Joseph Polastre, Jonathan Hui, Philip Levis, Jerry Zhao, David Culler, Scott Shenker, and Ion.
MAC Protocols for Sensor Networks
1 Wireless Networking Understanding the departure from wired networks, Case study: IEEE (WiFi)
MAC Protocols for Sensor Networks
Data Collection and Dissemination
TCP and MAC interplay in Wireless Ad Hoc Networks
A comparison of Ad-Hoc Routing Protocols
Trickle: Code Propagation and Maintenance
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks
Data Collection and Dissemination
Ajay Vyasapeetam Brijesh Shetty Karol Gryczynski
Presentation transcript:

1 Reprogramming/Re-tasking in Wireless Sensor Networks Part of slides are from Jonathon Hui, David A. Olsen and Jaein Jeong

2 Overview Background and motivations for Deluge Deluge Design Evaluation Limitation of Deluge Conclusion and sources

3 Worst Case Scenario 10,000 nodes are deployed in the mushy field with 10 meters apart Start the network. NO data is coming !!!! ;( A graduate student finds out that a small bug in the code that only shows up when a network scales up? The demonstration shall start in two hours. Option one: A quick calculation reveals that it taks 2.7 hours to just collect motes with 10 students. Plan B??? Avon Park, FL, Deployment Site

4 Network Tasking is Essential Why network tasking is needed? Application requirement would change A necessity in debugging and testing cycle Code would be upgraded to a better & newer version. Retasking over wireless is crucial Embedded nature of sensor networks Network scales reaching thousands of nodes Inaccessibility of hostile environments

5 Discussion: Techniques for Retasking

6 Techniques for ReTasking (1) 1. Parameter reconfiguration 2. Wired Reprogramming: Uisp 3. Single-hop Network Reprogramming : XNP 4. Multi-hop network Reprogramming : Deluge, MOAP 5. Incremental network programming: Reijers / Kapur 6. Virtual machine programming: Maté / Trickle

7 Techniques for Reprogramming (2) In System Programming Most Common. Programming time is in proportion to # nodes. Network Programming Sending whole code over radio still takes time. Either single hop or multiples hopes Host Machine Program Code Sensor node Serial or parallel port In system programming Network programming Host Machine Program Code Radio Channel Sensor nodes …

8 Techniques for Reprogramming (3) IEEE SECON 2004 “Incremental Network Programming for Wireless Sensors” Program source code is changed in small amounts. Reduce programming time by sending the difference. Incremental Network programming Host Machine Program Code Version 1 Radio Channel Sensor nodes … Program Code Version 2 + Difference

9 Techniques for Reprogramming (4) Stack based architecture Single shared variable gets/sets Three events: Clock timer Message reception Message send Hides asynchrony Simplifies programming Less prone to bugs

10 Comparison CostFlexibilityEnergySpeed Reconfiguraton Single Hop Multi-Hop Incremental VM The need for a high flexible and generic solution

11 Comparison CostFlexibilityEnergySpeed Reconfiguraton Low Fast Single Hop High High- Median Multi-Hop High High+ Slow Incremental HighMedian + LowFast VM MedianMedian - Median The need for a high flexible and generic solution

12 What is Deluge? A reliable data dissemination protocol for large data objects over a multi-hop network. Combined with a bootloader (TOSBoot)  Network Programming “Your nodes can communicate wirelessly, so why don't you? “ ---- Jonathan Hui

13 Design Issues for the Deluge Protocol Discussion

14 Deluge Overview Maintain Request Transmit Epidemic State-machine strictly local rules Nodes advertise, request data, and broadcast Considers many subtle issues Density-awareness Robust to asymmetric links Dynamic adjustment of advertisements Minimize set of concurrent data broadcasts Spatial multiplexing

15 How Does Deluge Work? (Glossing over many details) Nodes periodically advertise Version 2 here. I only have version 1.

16 How Does Deluge Work? (Glossing over many details) Neighboring nodes request data Send me page 1! suppressed

17 How Does Deluge Work? (Glossing over many details) Requested data is sent Packet 12 of page 1! unicast overhear

18 How Does Deluge Work? (Glossing over many details) Dropped packets are NACKed Repeat packet 4 of page 1! Repeat packet 32 of page 1!

19 How Does Deluge Work? (Glossing over many details) Dropped packets are sent again Packet 4 of page 1!

20 How Does Deluge Work? (Glossing over many details) Advertise for propagation to next hop Version 2 here. I only have version 1.

21 Each version has a unique version number Program image divided into contiguous pages, each consisting of N packets. Page structure advantages Reduced RAM requirements for maintaining state of which packets are needed Allows for spatial multiplexing Data Representation Program Image Packets 1234N

22 Data Representations 1.Serialized version numbers: V 2.Aging Schedules: a= Calculating the version when a page last changed: (V-a i ) A nibble (4 bits) is used to store the age of each page. 3.Object profiles: (V, a) Example: (V, a) = (23, ) First page version is 22 = 23-1 Fourth page version is 23 Six page version is 18 8 Pages program Version 23

23 An Example 1.Node A: (23, ) 2.Node B: (23, ) 3.Node C: (23, ) 4.Node D: (22, ) 5.Node E: (20, ) 6.Node F: ( 6, ) 7.Node G: (23, ) Question: Which node has the latest version?

24 An Example 1.Node A: (23, ) 2.Node B: (23, ) 3.Node C: (23, ) 4.Node D: (22, ) 5.Node E: (20, ) 6.Node F: ( 6, ) 7.Node G: (23, )

25 Something About Trickle 1.Trickle is a self-regulating, epidemic maintenance, polite gossip protocol. 2.The algorithm controls the send rate so that each node hears only a small trickle of packets, just enough to stay up to date. 3.Nodes periodically broadcast a code summary to neighbors but stay quiet if they have recently heard a summary identical to theirs. 4.When a node hears a summary older than its own, it broadcasts an update.

26 Maintain Request Transmit Maintain Advertise Contains version and fraction of image complete Nodes request pages in sequential order Use Trickle Duplicate suppression Dynamically adjust advertisement rate Transition to: Transmit on receiving a request Request on receiving an advertisement with newer data (i.e. from a node with a larger fraction of the complete image) Unless a request or data packet was recently overheard

27 Request Maintain Transmit Request Transmit a request Using a random backoff Suppress if any similar requests are overheard during backoff period Not receiving a data packet for some time Minimize senders by unicasting requests to the node that advertised Transition to Maintain After receiving all packets of a page After k requests to protect against asymmetric links

28 Transmit Transmit all requested packets May receive requests when transmitting Round Robin schedule to provide fairness Transition to Maintain when all requested packets are transmitted Maintain Request Transmit

29 Other Details Page level CRCs Redundant data integrity checks at packet and page level Multiple image support Not limited to the dissemination of a single object Allows multiple programs to exist in the network Great for debugging! O 1 External Flash

30 Methodology Simulation (TOSSIM) Up to 400 nodes Empirically derived loss rates Very pessimistic in interference model Highly sensitive to simulation parameters, but helps in guiding development Real world deployment in office building (mica2dots) Up to 77 nodes Limited in scale Not able to see effects shown in simulation

31 Simulation Analysis Pipelining improves performance Linear with size Time increases with density Time To completion Network Size Object Size Node Density

32 Hidden Terminal Problem

33 Hidden Terminal Problem Node(2,2) Node(5,5) Edge Center

34 Slow Down Propagation Slowing down traffic reduces contention But also slows down overall! Original Quarter Request Rate Half Request Rate Slowing down traffic reduces contention But also slows down overall!

35 Discussion: Issues with Deluge

36 Weaknesses in the Deluge Design High Cost No selective dissemination The entire network must remain powered on to get the full benefit of spatial multiplexing. It takes a long time to converge into a network-wide stable state. Especially when a node has weak connectivity Advertise messages are needed even all nodes have latest version Slower propagation in central areas of a network because of hidden terminal collisions. CSMA cannot prevent all of these.

37 Conclusion Deluge = polite gossip with ear dropping Deluge is very flexible but has a very high cost (compared with reconfiguration etc) Deluge involves many design choice trade-offs, e.g. CRC v. FEC, nibble sized age cells, suppression values and rules and the use of CSMA Breaking objects into pages has benefits such as spatial multiplexing.

38 Sources and Websites A. Chlipala et al., “Deluge: Data Dissemination for Network Programming at Scale” J. Hui et al., “Data Dissemination with Geometric Structure” J. Hui et al., “The Dynamic Behavior of a Data Dissemination Protocol for Network Programming at Scale” P. Levis, et al., “Trickle: A Self-Regulating Algorithm for Code Propagation and Maintenance in Wireless Sensor Networks”

39 Q&A and Discussion