Presentation is loading. Please wait.

Presentation is loading. Please wait.

Spatial Views: Space-aware Programming for Networks of Embedded Systems Yang Ni, Ulrich Kremer, and Liviu Iftode Rutgers University This work has been.

Similar presentations


Presentation on theme: "Spatial Views: Space-aware Programming for Networks of Embedded Systems Yang Ni, Ulrich Kremer, and Liviu Iftode Rutgers University This work has been."— Presentation transcript:

1

2 Spatial Views: Space-aware Programming for Networks of Embedded Systems Yang Ni, Ulrich Kremer, and Liviu Iftode Rutgers University This work has been supported by NSF ITR Award ANI-0121416.

3 LCPC 2003EEL Lab, Rutgers University2 NES: A New Computing Platform

4 LCPC 2003EEL Lab, Rutgers University3 NES: A New Computing Platform

5 LCPC 2003EEL Lab, Rutgers University4 NES: A New-Generation Computing Platform (contd.) Many potential applications for NES What’s the traffic 10 miles ahead? Is there a man in red near Terminal A? Find a cab. How to program them? Will existing models work?

6 LCPC 2003EEL Lab, Rutgers University5 What’s Special About NES? Location-sensitivity. A node is interesting because of its location in addition to its functionality. Context-awareness often translates into location- awareness. Volatility. Nodes join and leave at any time. Resource-limitation. Execution time and battery life are limited.

7 LCPC 2003EEL Lab, Rutgers University6 How to program NES? Existing programming models do not sufficiently address all those issues specific to NES. We need a high-level programming model with: Location-awareness Location specification at the programming level Location-based operation at the programming level Dynamic integration of services Discover and use services dynamically in an ad-hoc network Adaptation to resource-limitations QoR (Quality of Results) and resource tradeoff

8 LCPC 2003EEL Lab, Rutgers University7 Motivation Spatial Views Programming Model Spatial Views Application Example Experiments Related Work Conclusions

9 LCPC 2003EEL Lab, Rutgers University8 Basic Programming Abstraction in Spatial Views Nodes are abstracted as (service, location) A physical node providing multiple services represent multiple virtual nodes A moving physical node represent multiple virtual nodes Time is an implicit dimension, the value of which is always the time when a node is visited and used

10 LCPC 2003EEL Lab, Rutgers University9 Spatial Views A dynamic collection of virtual nodes that provide an interesting service and are located in an interesting space. SV(service,space)  {virtual node x | x.ofClass isA service and x.location  space}. SV(service) = SV(service, anywhere). Service: named with interfaces (abstract classes) with agreed-on semantics

11 LCPC 2003EEL Lab, Rutgers University10 Iterators and Selectors Iterators and Selectors instantiate Spatial Views. Iterators enumerate all possible nodes in a view within a time constraint. Selectors stop after the first successful discovery, or timeout. Time Constraint is necessary because Spatial Views can be infinite.

12 LCPC 2003EEL Lab, Rutgers University11 Application Example Find a person in red on the third floor of a building START STOP

13 LCPC 2003EEL Lab, Rutgers University12 SpatialView cameraView = new SpatialView("Camera", BuschCampus.CoRE.Floor3); foreach camera in cameraView do within 30000 { Picture pic = camera.getPicture(); Rectangle redRegion = pic.findRegionInColor(Color.Red); if (redRegion != null) { SpatialView detectorView = new SpatialView("FaceDetector"); Rectangle face; forany detector in detectorView do within 10000 face = detector.detectFaceInPicture(pic); Location loc = camera.getLocation(); if (face !=null && face.isCloseTo(redRegion)) System.out.println("A person in red is found at " + loc); else System.out.println("Something red is found at " + loc); }

14 LCPC 2003EEL Lab, Rutgers University13 Motivation Spatial Views Programming Model Spatial Views Application Example Experiments Related Work Conclusions

15 LCPC 2003EEL Lab, Rutgers University14 Experiments: Implementation Spatial Views Program Spatial Views Compiler Java Bytecode Spatial Views Virtual MachineSpatial Views Library Modified Sun javac 1.3.1 Supporting space definition and Spatial View iteration. Modified Sun KVM/CLDC 1.3 Supporting migration and discovery

16 LCPC 2003EEL Lab, Rutgers University15 Experiment 1: Person Search Application Execution Time With face detection: 23.1 seconds Without face detection: 10.0 seconds Routing: gossiping with backtracking

17 LCPC 2003EEL Lab, Rutgers University16 Experiment 2: Quality of Result v.s. Time/Resource Usage QoR Resource

18 LCPC 2003EEL Lab, Rutgers University17 Experiment 2: Effects of Time Constraints Perfect answer: 8 nodes Perfect Answer: 5 nodes

19 LCPC 2003EEL Lab, Rutgers University18 Execution time v.s. Network Link Failure Rate (1)

20 LCPC 2003EEL Lab, Rutgers University19 Quality of Result (QoR) v.s. Network Link Failure Rate

21 LCPC 2003EEL Lab, Rutgers University20 Execution time v.s. Network Link Failure Rate (2)

22 LCPC 2003EEL Lab, Rutgers University21 Quality of Result (QoR) v.s. Network Link Failure Rate

23 LCPC 2003EEL Lab, Rutgers University22 Related Work Location technology: GPS, APS(Rutgers), Cricket (MIT), RADAR (Microsoft Research), Active Badges (AT&T), Bats (AT&T). Service discovery: Jini (SUN), INS (MIT), SDS(Berkeley), SLP, Salutation, Bluetooth SDP. Migratory execution: Smart Messages (Rutgers), Active Messages (Berkeley) and Mobile Agents including D’Agent (Dartmouth), Java Aglet (IBM). Sensor Networks: nesC(Berkeley)

24 LCPC 2003EEL Lab, Rutgers University23 Conclusions Spatial Views is a programming model for dynamic and resource-limited networks of embedded systems The first space-aware programming model with best-effort semantics Simple and expressive, prototype and applications implemented

25 LCPC 2003EEL Lab, Rutgers University24 Thank you!

26 LCPC 2003EEL Lab, Rutgers University25 Experimental Setup 10 iPAQ PDA’s H3800 & H3600 Mercury camera sleeves 802.11b wireless network Familiar Linux, Kernel 2.4.18 Customized KVM/CLDC 1.0.3 Customized Javac 1.3.1

27 LCPC 2003EEL Lab, Rutgers University26 Experiment 2: One-hop Migration Time

28 LCPC 2003EEL Lab, Rutgers University27 Syntax   foreach in do [constraints]  forany in do [constraints]  within


Download ppt "Spatial Views: Space-aware Programming for Networks of Embedded Systems Yang Ni, Ulrich Kremer, and Liviu Iftode Rutgers University This work has been."

Similar presentations


Ads by Google