bundle: a group based programming abstraction for cyber ...nadeem/classes/cs795-cps-s... · bundle:...
TRANSCRIPT
![Page 1: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/1.jpg)
Bundle: A Group Based Programming
Abstraction for Cyber Physical Systems ICCPS
Pascal A. Vicaire
Enamul Hoque
Zhiheng Xie
John A. Stankovic
Computer Science Department
University of Virginia
Presented By: Amara Naas
CSD at ODU
![Page 2: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/2.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 3: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/3.jpg)
Introduction
Vision of CPSs:
heterogeneous sensing and actuation devices
Multiple applications can be executed simultaneously, and can be accessible and controllable via the Internet.
presence of mobility
![Page 4: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/4.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 5: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/5.jpg)
Across Network Concurrent Applications
University Network Home Network
Tracking Temperature Regulation
![Page 6: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/6.jpg)
Dynamic Membership Update
![Page 7: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/7.jpg)
Dynamic Membership Update
(Environmental Change)
![Page 8: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/8.jpg)
Dynamic Membership Update
(Mobility)
University Network Home Network
![Page 9: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/9.jpg)
Dynamic Membership Update
(Mobility)
University Network Home Network
![Page 10: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/10.jpg)
Heterogeneity
University Network Home Network
Actuator is a key
component in Cyber
Physical systems
![Page 11: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/11.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 12: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/12.jpg)
Contributions
The design, implementation and evaluation of a
centralized group based abstraction named bundle that:
Allows concise programming of applications (in Java) using
across network sensors and actuators
Dynamically updates group membership in response to intra
and inter network mobility, and environmental changes
Relieves the programmer of CPU and memory management
on resource constrained devices
![Page 13: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/13.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 14: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/14.jpg)
Related Work
Abstraction Hood Abstract
Region
Logical
Neighborhood
Scope Bundle
Language nesC nesC SPIDEY C Java
Across
Network
No No No No Yes
Actuators No No No No Yes
Heterogeneous
Devices
No No Partially Yes Yes
Dynamic
Membership
Update
No No No Yes Yes
Centralized No No No No Yes
![Page 15: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/15.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 16: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/16.jpg)
Underlying Architecture:
Physicalnet – 4 Tier SOA
Why Centralized Design:
Maintaining application logic in
resource constrained service
providers is expensive
The centralized gateway works
as a communicator for
heterogeneous service providers
To support inter-network mobility
Disadvantages:
In-network aggregation not
possible
Increased communication
![Page 17: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/17.jpg)
The Bundle Programming Abstraction
Bundle = dynamic, logical set of services
Definition
Specification of what the members should do
public class MyApplication extends Application{ public MyApplication(){
this.add(new Negotiator(HOST,PORT,USER,PASSWORD);
this.execute(1000/*milliseconds*/);
new Bundle<Light>(Light.class, this){ public boolean rule(Light l){
return true;
}
public void foreach(Light l){
l.on.set(true); }
}
}
}
Connect to a negotiator
Create a bundle of light actuators
Bundle of ALL the lights
All the lights must be turned on
![Page 18: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/18.jpg)
Complex Bundle Examples
Considers each temperature sensor as a possible member of the Bundle
Gets the available energy of each temperature sensor
Includes a temperature sensor in a Bundle only if it has sufficient energy
Create a bundle of temperature
sensors that have adequate energy
![Page 19: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/19.jpg)
Complex Bundle Examples Creates a Bundle of light sensors located in a specific room
The members of the Bundle senses light intensity
Creates a Bundle of sounders in that specific room if the light intensity is more than a threshold
> The sounders are turned on
A Surveillance Application
![Page 20: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/20.jpg)
Create a Bundle of Temperature Sensors
Application
Application connects to Negotiator
and creates a Bundle
Negotiator
Gateway 1
Network 1
Gateway 2
Network 2
1 2 4 3
Temperature sensor
Motion sensor
id Gateway loc type …
1 1 a1 temp …
2 1 a1 temp …
3 2 a2 motion …
4 2 a2 motion …
![Page 21: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/21.jpg)
Mobility
Application
Application connects to Negotiator
and creates a Bundle
Negotiator
Gateway 1
Network 1
Gateway 2
Network 2
1 2 4 3
Temperature sensor
Motion sensor
id Gateway loc type …
1 1 a1 temp …
2 1 a1 temp …
3 2 a2 motion …
4 2 a2 motion …
2
2 a2
![Page 22: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/22.jpg)
Dynamic Membership Update
Rule: all the nodes that are in the same room as service X
![Page 23: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/23.jpg)
Dynamic Membership Update
Rule: all the nodes that are in the same room as service X
![Page 24: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/24.jpg)
Dynamic Membership Update
-The bundle membership is dynamically updated -The latest values of the variables involved in the membership are considered - New and leaving members are automatically reconfigured
![Page 25: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/25.jpg)
Dynamic Membership Update
-The bundle membership is dynamically updated -The latest values of the variables involved in the membership are considered - New and leaving members are automatically reconfigured
![Page 26: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/26.jpg)
Dynamic Membership Update
-The bundle membership is dynamically updated -The latest values of the variables involved in the membership are considered - New and leaving members are automatically reconfigured
![Page 27: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/27.jpg)
Actuators
Application
(Turn light 1 on)
Negotiator
id gateway loc type req state …
1 1 a1 light none off …
Gateway 1
off
on
on
on
Actuator states
can be complex:
Pan and zoom
level of a camera
Light intensity level
Speed of a motor
![Page 28: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/28.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 29: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/29.jpg)
Evaluation
It is difficult to evaluate a programming abstraction
They have implemented 32 applications
All applications can handle: node mobility, robust actuator configuration, multiple networks, heterogeneity
Applications tested and/or emulated
They evaluate the conciseness of Bundles and energy efficiency
![Page 30: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/30.jpg)
Tracker TinyOS service providers seamlessly interact with Java
service providers
User moves around with 2 MICAz motes (mediaTag and lightTag)
If mediaTag on, turn television on in the room
If no television, turn music player on
If lightTag on, turn all the lights on
Television and music player emulated by a java service provider in laptop
30 lines
![Page 31: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/31.jpg)
NeighborhoodWatch
Multimodal sensing across networks
Each of a set of neighbors wear a MICAz tag
If a house is empty, all the accelerometers and light sensors
are turned on
The sounders of the MICAz tags of all neighbors are turned
on, if there is an intruder in any house
56 lines
![Page 32: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/32.jpg)
Evaluation: Conciseness
Each of the 32 applications is programmed in
less than 60 lines of code
They implemented one application
ParkingSpaceFinder in nesC which took 42
lines
Using Bundles it took 20 lines
![Page 33: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/33.jpg)
Evaluation: Energy Efficiency
Comparison with VigilNet for a target tracking application by simulation
XSM platform and its empirical power consumption model
10,000 nodes randomly placed in a square of edge 1000 meters
One base station (gateway) for every 100 nodes
![Page 34: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/34.jpg)
Evaluation: Energy Efficiency
Detection Probability: Percentage of the targets that are
successfully detected
![Page 35: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/35.jpg)
Outline
Introduction
Motivation
Contributions
Related work
Bundle Design
Evaluation
Conclusion
![Page 36: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/36.jpg)
Conclusion
Contribution: the design, implementation, and evaluation
of the bundle programming abstraction that eases
programming by:
Abstracting away networking protocols and cross-network
application deployment
Automatically and robustly reconfiguring nodes according to
network dynamics
Relieving the programmer of CPU and memory management
on WNSA nodes
![Page 37: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/37.jpg)
Questions?
![Page 38: Bundle: A Group Based Programming Abstraction for Cyber ...nadeem/classes/cs795-CPS-S... · Bundle: A Group Based Programming Abstraction for Cyber Physical Systems ICCPS Pascal A](https://reader034.vdocuments.mx/reader034/viewer/2022042314/5f0267a87e708231d4041d2c/html5/thumbnails/38.jpg)
Thank You