Programming Ad-hoc Networks of Mobile and Resource
Download
Report
Transcript Programming Ad-hoc Networks of Mobile and Resource
Programming Ad-hoc
Networks of Mobile and
Resource-Constrained
Devices
Yang Ni, Ulrich Kremer, Adrian Stere, Liviu Iftode
Rutgers University
Presented at PLDI ‘05
Presented by Troy Trimble
Summary
MANETs
SpatialViews
Syntax and Semantics
Implementation
Conclusion/Questions
MANETs
Mobile Ad-hoc Networks
PDAs, Smart Phones, Laptops, Cars
Multiple mediums
802.11, bluetooth, radio
Form networks around unstable links
Examples (Shameless Plug)
Sensor Networks, RescueMesh (WIISARD)
Programming for MANETs
Concern is power
MANETs usually on low power devices
What can we give up?
Quality of Result (QoR)
SpatialViews
Nodes
Defined by location in space, time and
services
Virtual Network
Collection of virtual nodes
Network Iterator
Used to iterate through the nodes in the
network
Can be a tool to control QoR vs. Power
Syntax and Semantics
Services
Java Interfaces
Location
GPS, Cricket (MIT)
Time
Granularity, limit
public interface LightSensor {
public float read();
...
}
public interface SpaceDefs {
public static final Space CampusB=new Rectangle(...);
...
}
public class AverageLighting {
public void static main(String[] args) {
sumreduction float s=0;
sumreduction int n=0;
spatialview sv=LightSensor @
SpaceDefs.CampusB % 320;
visiteach x : sv every 1.0 forever
{ s += x.read(); n++; }
if (n>0)
System.out.println(Float.toString(s/n));
}
}
Syntax and Semantics cont.
Program vars
Local – r/w in defined iter, ro in nested iters
Container – r/w in defined iter, wo in nested
iters
Reduction – associated with specific
operation
Service vars
Never leave node, r/w in defined iter
Implementation
Modified Java
SmartMessages
Transport
Java, KiloByte VM and CLDC library
Iteration Types
Serial
Poor failure model
Can also do flooding to help
Geographic iteration
Uses locations and greedy algorithm
Geographic Flood
Cloning based on quadtree, not network
topology
Extras
Loop Flattening
Optimization for services on the same box
Security
Assumed
Conclusions
MANETs pose a benefit to society
New programming challenges are given by
these environments
Recognized by academic community with
conferences like International Conference for
Compilers, Architecture and Synthesis for Embedded
Systems
SpatialViews supplies a good interface for
dealing with these new problems on MANETs
Questions???