Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Science snBench: A Programming and Runtime Framework for Sensor Networks Michael Ocean with Azer Bestavros and Assaf Kfoury.

Similar presentations


Presentation on theme: "Computer Science snBench: A Programming and Runtime Framework for Sensor Networks Michael Ocean with Azer Bestavros and Assaf Kfoury."— Presentation transcript:

1 Computer Science snBench: A Programming and Runtime Framework for Sensor Networks Michael Ocean with Azer Bestavros and Assaf Kfoury

2 Computer Science Motivation (sensing change)  Traditional Sensor Networks :  Homogeneous nodes  Highly constrained (e.g., computation, communication, power, etc.)  Nodes programmed for a single common goal  “Embedded” Sensor Networks (Sensoria) :  Heterogeneous nodes/Hybrid networks  Varied constraints on devices/networks  Program the network to achieve multiple (potentially conflicting) goals running simultaneously

3 Computer Science Motivation (sensing change) What sensors can I use and what functionality do I get from them?  Embedded SNs (“Sensoria”) :  Heterogeneous nodes  Varied constraints  Program the network  diff't goals running simultaneously

4 Computer Science snBench: Programming Cycle  Program  SNAFU language high-level “glue”  Compile  A SNAFU program is compiled into a Sensorium Task Execution Plan (STEP)  Map and Link  STEPs are decomposed in smaller dispatch-able (baby) STEPs which are linked to resources  Load and Execute  Linked STEPs are dispatched to sensor runtime/execution environments (SXEs)

5 Computer Science SNet Apps as FUnctions  SNAFU: functional specification language  computation, sensing, communication, storage, values, etc.  e.g., identify the face seen through camera 1  Use “annotative” functions for constraints  e.g., what streams can be “exposed”  e.g., minimum acceptable resolution identify(facefind(grabframe(cam1))) public(facecount(grabframe(private(cam1))))) facecount(resn(800x600x24b,grabframe(cam1)) )

6 Computer Science Sensorium Task Execution Plan  SNAFU is compiled into STEP  our “Instruction Set Architecture” cam2 snapshot motion clock4am 2am << && trigger email “security@bu.edu” email(“security@bu.edu”, trigger( (motion(snapshot(cam2)) && (2am<NOW<4am)), snapshot(cam2))) snafu program Sensorium Task Execution Plan

7 Computer Science Sensorium Task Execution Plan  serialized as XML

8 Computer Science Infrastructure support  Scheduling/linking as graph partitioning SXE ? cam2 snapshot motion clock4am 2am << && trigger email “security@bu.edu”

9 Computer Science Infrastructure support  Sensorium Resource Manager (SRM)  Manage “local”-area Sensorium resources  Sensorium Service Dispatcher (SSD)  STEP scheduling, deployment and monitoring: SD, SXE SXE

10 Computer Science Sensor eXecution Environment  Shares local (virtual) resources with the Sensorium  Abstraction of local resources through STEP program abstraction  Advertises computational and sensing capabilities to SSD  Accepts STEPs from SSD  STEP interpreter  can be dynamically tasked with new functionalities via the network


Download ppt "Computer Science snBench: A Programming and Runtime Framework for Sensor Networks Michael Ocean with Azer Bestavros and Assaf Kfoury."

Similar presentations


Ads by Google