890 likes | 1.06k Views
Committee. Reconfiguration in Sensor Networks. Gaurav Sukhatme (Chair) Ramesh Govindan Bhaskar Krishnamachari (Outside member). PhD Defense Karthik K Dantu. Sensor Network Deployments. Structural Health Monitoring. Forest Canopy. Marine Monitoring. Challenges. Energy
E N D
Committee Reconfiguration in Sensor Networks Gaurav Sukhatme (Chair) Ramesh Govindan Bhaskar Krishnamachari (Outside member) PhD Defense Karthik K Dantu
Sensor Network Deployments Structural Health Monitoring Forest Canopy Marine Monitoring
Challenges • Energy • Battery-operated • Lack of continuous energy supply • Long deployments • Unpredictability • Dynamic network conditions • Remote deployments • Sporadic events – spatially and temporally Sensor networks need to be adaptable!
Thesis Contribution Adaptability by reconfiguration Service reconfiguration in tiered sensor networks Route stability using cues in robot networks Network Node Per-process energy accounting Robust connectivity in robot networks Spatial (mobile) Functional (static)
Thesis Contribution • Functional Reconfiguration • Per-Process Energy Accounting • Reconfiguration of essential services in a sensor network • Spatial Reconfiguration • Go from a connected network to a biconnected network • Achieve route stability using directional and positional cues * Post-Qual * Pre-Qual
Outline • Spatial Reconfiguration • Go from a connected network to a biconnected network • Achieve route stability using directional and positional cues • Functional Reconfiguration • Per-Process Energy Accounting • Reconfiguration of essential services in a sensor network
Accurate Per-Process Energy Accounting • Energy is a vital resource • Modern embedded systems are highly multi-tasking running multiple tasks concurrently and numerous sensors • Most of the tasks involve I/O operations like using storage, networking and sensors • Observation: Resources currently used on the system need not be used by the process currently running
LEAP2 Platform • Representative platform for modern 32-bit embedded system • Energy Management and Accounting Processor (EMAP2) ASIC continuous real-time energy monitoring across entire platform • Measures energy usage in real-time for upto 16 individual subsystems McIntire, D., Ho, K., Yip, B., Singh, A., Wu, W., and Kaiser, W. J. 2006. The low power energy aware processing (LEAP) embedded networked sensor system. InProceedings of the 5th international Conference on information Processing in Sensor Networks(Nashville, Tennessee, USA, April 19 - 21, 2006).
LEAP2 Software • ARM-Linux Patch • Endoscope • Scheduler measures energy on every scheduler tick • Energy attributed to either user process or system • User process energy consumption exposed to user space via the /proc/<pid>/stat • Etop reads this file to provide realtime energy consumption info Stathopoulos, T., McIntire, D., and Kaiser, W. J. 2008. The Energy Endoscope: Real-Time Detailed Energy Accounting for Wireless Sensor Nodes. InProceedings of the 7th international Conference on information Processing in Sensor Networks), April 2008.
Per-Process Energy Accounting: Caveats • System operation dominated by I/O operations • Userspace processes get switched out due to delay • Latency of execution in kernel • Kernel needs to track such interactions • System call interface (SCI) in *nix kernel used for userspace-kernel transition • Single point of entry/exit in kernel
SCI functioning in Linux (ARM) process Library Call kernel entry.S System call Function call r7 = __NR_write switch to kernel (swi) vector_swi call sys_call_table[r7] fwrite() write() Process blocked sys_write() TIME Flash done ret_from_syscall return write successful return numbytes
Modifications to SCI • Implement two new system calls sys_initiate and sys_terminate • Call sys_initiate on invocation of every system call • Record the process id, timestamp and system call number • The original system call is then invoked • On completion, control returns to the kernel where we invoke sys_terminate • sys_terminate calculates the energy spent for this system call and accurately allocates that to the corresponding process • State for that call is then purged
Modifications to SCI kernel entry.S System call write(<params>) Resource Accountant sys_initiate() (keep state) … call sys_initiate vector_swi call sys_call_table[r7] TIME done Flash … ret_from_syscall Resource Accountant sys_terminate() (energy accounting) call sys_terminate() return
Modifications to SCI: Discussion • There are a lot of system calls invoked • Eg: At bootup, about 7000 system calls before login • For efficiency, we are currently only monitoring a small subset (sys_open, sys_close, sys_read, sys_write) • These system calls account for majority of the system calls placed and energy consumed during the experiments • Need to maintain state across system calls to keep track of file and socket identifiers • Compared against our implementation of Endoscope
Experimental Setup • LEAP2 running a copy (cp) of a large file from compact flash to compact flash • Concurrently running calc1, compute intensive CPU-bound process that performs some computation and goes to sleep • Multiple system services running in the background • Ext2 filesystem and virtual memory tuned to minimize buffering • Show energy consumption of Processor (PXA), Memory (SDRAM) and Compact Flash (CF)
cp and calc1: endoscope v2 Processor Speed = 104 MHz
cp and calc1: Resource Accountant (RA) Processor Speed = 104 MHz
Effect of Processor Frequency Scaling • Bottleneck is read/write from and to compact flash • CPU can drive reading/writing even at lowest processor frequency (104 MHz) • Processor energy consumption increases at higher frequencies
cp and calc1: endoscope v2 Processor Speed = 312 MHz
cp and calc1: Resource Accountant Processor Speed = 312 MHz
cp and calc1: endoscope v2 Processor Speed = 624 MHz
cp and calc1: Resource Accountant Processor Speed = 624 MHz
Resource Accountant: Discussion • Effective when I/O interaction takes some time • Eg: GPS and other high latency sensors, flash writes etc. • Intensive to monitor every system call • System needs to be tailored for monitoring the significant operations only • Does not account for optimizations at lower levels of kernel (eg: Delayed writes by ext2 fs, dirty page caching by VM, DMA, non-blocking drivers) • Need driver support for end-end accuracy
Outline • Spatial Reconfiguration • Go from a connected network to a biconnected network • Achieve route stability using directional and positional cues Karthik Dantuand Gaurav S. Sukhatme,"Rethinking data-fusion based services in sensor networks,"In the Third IEEE Workshop on Embedded Networked Sensors (Emnets), 2006. • Functional Reconfiguration • Per-Process Energy Accounting • Reconfiguration of essential services in a sensor network
Gateway Sensor node Base Station Transit Network Gateway Sensor node Motivation – Tiered Sensor Networks Mote-class sensor node Microserver node
Tiered Sensor Networks • Microservers: More powerful processor and radio • Tradeoff true distributedness for saving on communication • Data collection from motes followed by computation at microserver
SDP Formulation of Localization Connectivity-based constraints Range-based constraints Pratik Biswas, Yiyu Ye, “Semidefinite programming for ad hoc wireless sensor networks localization”, In Proceedings of conference on Information Processing in Sensor Networks (IPSN) 2004.
SDP Formulation of Localization s.t. Pratik Biswas, Yiyu Ye, “Semidefinite programming for ad hoc wireless sensor networks localization”, In Proceedings of conference on Information Processing in Sensor Networks (IPSN) 2004.
subject to Hierarchical Overlapped Coordination • Consider an optimization problem of the form - Where h and g are functions and X Nestor Michelena, Hyungju Park, Panos Papalambros and Devadatta Kulkarni, “Hierarchical Overlapping coordination under non-linear constraints”, American Institute of Aeronautics and Astronautics, 1998.
1 0 1 … . . . Functional Dependence Table Rows correspond to constraints Columns correspond to the variables in the problem Table with entries such that (i,j)th entry is 1 if constraint i involves variable j, and zero otherwise
. . . 0 0 0 . . . . . . Rearrange FDT
For each Problem reformulation subject to
HOC Algorithm • Fix linking variables and solve problem by solving independent sub problems • Fix linking variables to their values determined in step 1 and solve problem by solving sub problems • Go to step 1 with fixed values of -linking variables determined by step 2 • Repeat until convergence is achieved Nestor Michelena, Hyungju Park, Panos Papalambros and Devadatta Kulkarni, “Hierarchical Overlapping coordination under non-linear constraints”, American Institute of Aeronautics and Astronautics, 1998.
Partitioning the Nodes 1,2 1 2 2 2 1 1 1 2 2 1 2 2 1 1,2 1 2 2 1 1 2 1 1,2 2 2 1 2 1 1 1,2 Microservers Motes
Partitioning: The Basic Idea Microservers Motes
SDP Relaxation for Localization s.t. Pratik Biswas, Yiyu Ye, “Semidefinite programming for ad hoc wireless sensor networks localization”, In Proceedings of conference on Information Processing in Sensor Networks (IPSN) 2004.
Simulation Setup • Nodes distributed uniformly randomly in a square of side 100 units • Radius of communication assumed to be 20 units • Semi-centralized simulations had four master nodes
Centralized - Error vs. Iterations Error vs. Iteration Centralized Formulation (Degree = 8)
Distributed – Error vs. Iterations Error vs. Iteration in Semi-Centralized Formulation (Degree = 8)
Multiple masters Error vs. Number of Master Nodes in Semi-Centralized Formulation
Service Reconfiguration - Summary • Framework adaptable to services that can be framed as an optimization problem • Spatial distribution of sensor nodes lends itself to partitioning automatically • Partitioning can be done with a simple broadcast from master nodes • Formulation for lifetime-aware routing presented
Functional Reconfiguration - Summary • Per-Process Energy Accounting • Demonstrated problem of accurate energy accounting in current embedded systems • Designed resource accountant in the OS to perform energy accounting • Prototype implementation on LEAP2/Linux shows accurate results • Service Reconfiguration in Tiered Sensor Networks • Proposed semi-centralized framework for reconfiguring services in tiered sensor networks • Evaluation done on two services – Localization and Power-aware routing
Outline • Spatial Reconfiguration • Go from a connected network to a biconnected network • Achieve route stability using directional and positional cues • Functional Reconfiguration • Per-Process Energy Accounting • Reconfiguration of essential services in a sensor network
Robot Networks • Robust connectivity between the robots! Marine observation Urban search and rescue Target tracking Formation control Collaborative tasking
Robot Network Biconnectivity Problem • Given a connected robot network, can they reassemble themselves with minimum movement to form a biconnected robot network? Minimum total sum distance: NP-Hard! Karthik Dantu, Prakhar Goyal, and Gaurav S. Sukhatme. Relative bearing estimation from commodity radios. In International Conference of Robotics and Automation (ICRA), May 2009. Karthik Dantu and Gaurav S. Sukhatme, Biconnected Robot Networks, In submission to Transactions in Robotics Oct 2009.
Definitions: Biconnectivity Biconnected Graph: Given a graph G(V, E), every vertex in V has atleast two vertex disjoint paths to every other node in V Articulation Point:Vertices in a connected graph that connects two biconnected components. This edge or vertex is the only path between the two biconnected components Biconnected Component: Subgraph of a given graph that is biconnected