autonomic applications for pervasive environments

13
Autonomic Applications for Pervasive Environments Manish Parashar WINLAB/TASSL ECE, Rutgers University http://www.caip.rutgers.edu/TASSL Ack: NSF (CAREER, KDI, ITR, NGS), DoE (ASCI)

Upload: sef

Post on 06-Jan-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Autonomic Applications for Pervasive Environments. Manish Parashar WINLAB/TASSL ECE, Rutgers University http://www.caip.rutgers.edu/TASSL Ack: NSF (CAREER, KDI, ITR, NGS), DoE (ASCI). Pervasive Computing: Smaller/Cheaper/Faster/Connected …. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Autonomic Applications for  Pervasive Environments

Autonomic Applications for Pervasive Environments

Manish ParasharWINLAB/TASSL

ECE, Rutgers Universityhttp://www.caip.rutgers.edu/TASSL

Ack: NSF (CAREER, KDI, ITR, NGS), DoE (ASCI)

Page 2: Autonomic Applications for  Pervasive Environments

Pervasive Computing: Smaller/Cheaper/Faster/Connected ….

• Explosive growth in computation, communication, information and integration technologies– computing is ubiquitous, pervasive – communication is/will be

• Pervasive “anytime-anywhere” access environments– ubiquitous access to information via PCs, PDAs, Cells, smart appliances,

etc. (billions of devices, millions of users)

– peers capable of producing/consuming/processing information at different levels and granularities

– embedded devices in clothes, phones, cars, mile-markers, traffic lights, lamp posts, refrigerators, medical instruments …

• Pervasive “on demand” computational/storage resources, services– the Grid

Page 3: Autonomic Applications for  Pervasive Environments

Example scenario : DARPA IXO, A Rapidly Expanding Universe of Sensors, Weapons, and Platforms

Approved for Public Release - Distribution Unlimited

Page 4: Autonomic Applications for  Pervasive Environments

The bad news …

• Unprecedented– scales– complexity– heterogeneity– dynamism and unpredictability– lack of guarantees

• The increasing system complexity is reaching a level beyond human ability to design, manage and secure – programming environments and infrastructure are becoming

unmanageable, brittle and insecure

• A fundamental change is required in how applications are formulated, composed and managed– autonomic components, dynamic compositions, opportunistic

interactions, virtual runtime, …

Page 5: Autonomic Applications for  Pervasive Environments

Autonomic Computing?

• Nature has evolved to cope with scale, complexity, heterogeneity, dynamism and unpredictability, lack of guarantees– self configuring, self adapting, self optimizing, self healing, self

protecting, highly decentralized, heterogeneous architectures that work !!!

– e.g. the human body – the autonomic nervous system • tells you heart how fast to beat, checks your blood’s sugar and oxygen

levels, and controls your pupils so the right amount of light reaches your eyes as you read these words, monitors your temperature and adjusts your blood flow and skin functions to keep it at 98.6ºF

• coordinates - an increase in heart rate without a corresponding adjustment to breathing and blood pressure would be disastrous

• is autonomic - you can make a mad dash for the train without having to calculate how much faster to breathe and pump your heart, or if you’ll need that little dose of adrenaline to make it through the doors before they close

– can these strategies inspire solutions?• e.g. FlyPhones, AORO/AutoMate, ROC, ELiza, etc.

– of course, there is a cost• lack of controllability, precision, guarantees, comprehensibility, …

– PS: its not AI – duplication of human thought is not the ultimate goal

Page 6: Autonomic Applications for  Pervasive Environments

Autonomic Living

• Autonomic living: autonomic peers opportunistically interact, coordinate and collaborate to satisfy goals?– scenarios (everyday, b2b coordination, crisis management, homeland

security, …)• your car in route to the airport estimates that given weather (from meteorological

beacons), road conditions (from on-coming cars), traffic patters (from the traffic light), warns that you will miss your flight and you will be better off taking the train – the station is coming up – do you want to rebook ?

• in a foreign country, your cell phone enlists a locally advertised GPS and translation service as you try to get directions

• your clock/PDA estimates drive time to your next appointment and warns you appropriately

• your eye glasses sends your current prescription as you happen to drive past your doctor or your PDA collects prices for the bike you promised yourself as you drive around

Page 7: Autonomic Applications for  Pervasive Environments

Project overview

• Investigate fundamental architectures and software paradigms/technologies associated with development of autonomic and pervasive applications– pervasive computing system design, based on a challenging

application scenario: autonomic living– middleware infrastructures and services– programming model based on local constraints, opportunistic

interactions and consensus based coordination– cluster computing model for loosely coupled ac-hoc scenario– security/trust architecture and protocols for the above– ad-hoc wireless (sensor) network protocol optimizations– autonomic living system prototype

• The group: – M. Ott, M. Parashar, D. Raychaudhury, W. Trappe Y, Zhang

Page 8: Autonomic Applications for  Pervasive Environments

AutoMate: Enabling Autonomic Applications

• Objective:– Investigate key technologies to enable the development of autonomic Grid

applications that are context aware and are capable of self-configuring, self-composing, self-optimizing and self-adapting.

• Research Issues:– Definition of Autonomic Components:

• definition of programming abstractions and supporting infrastructure that will enable the definition of autonomic components

• autonomic components provide enhanced profiles or contracts that encapsulate their functional, operational, and control aspects

– Dynamic Composition of Autonomic Applications:• mechanisms and supporting infrastructure to enable autonomic applications to be

dynamically and opportunistically composed from autonomic components• compositions will be based on policies and constraints that are defined, deployed and

executed at run time, and will be aware of available Grid resources (systems, services, storage, data) and components, and their current states, requirements, and capabilities

– Autonomic Middleware Services:• design, development, and deployment of key services on top of the Grid middleware

infrastructure to support autonomic applications• a key requirements for autonomic behavior and dynamic compositions is the ability of

the components, applications and resources (systems, services, storage, data) to interact as peers

Page 9: Autonomic Applications for  Pervasive Environments

Opportunistic Interactions

• Interactions based on local goals and objectives– local goals and objectives are defined as constraints to be satisfied

– constraints can updated and new constraints can defined at any time

• Dynamic and ad-hoc– interactions use “semantic messaging” based on proximity,

privileges, capabilities, context, interests, offerings, etc.

• Opportunistic– constraints are long-term and satisfied opportunistically (may not be

satisfied)

• Probabilistic guarantees and soft state– no explicit synchronization

– interaction semantics are achieved using feedback and consensus building

Page 10: Autonomic Applications for  Pervasive Environments

Opportunistic Interactions

12

3

n

4

Constraint Engine

Sensor StateConstraints

Received ProfilesPublish Profiles

ContextEnvironment factors

Network Communication

Semantic Messaging

Ontology & Taxonomy

Semantic P2P Middleware

Page 11: Autonomic Applications for  Pervasive Environments

For Example…

• Automata using opportunistic interactions– “Game of Life” simulation using sensor networks

• Sensors as Sharks and Fishes

• Shark/Fish behavior encoded as constraints

• Opportunistic and dynamic interactions based on proximity and interests– Semantic messaging based on interest/offer profiles

• Interaction semantics built on local behavior (no synchronization)– Inconsistencies resolved and consensus built incrementally using probabilistic

feedback and gossiping• Shark thinks it has eaten the fish, fish thinks it got away !

– Indirect interactions • Fish warns another fish of an approaching shark

– Aggregation • Shark does not attack fishes if they are in a school of 10 or more

• Dynamic goals and constraints– Constraint satisfactions is ongoing and probabilistic – not absolute– Constraints can be updated, removed or new constraints to be defined.

• Possible a result of constraint satisfaction• Shark is full after eating 4 fishes

Page 12: Autonomic Applications for  Pervasive Environments

Summary

• Autonomic applications are necessary to address scale/complexity/heterogeneity/dynamism/reliability challenges

• Autonomic living: enable autonomic peers to opportunistically interact, coordinate and collaborate to satisfy goals– programming/interaction models, messaging substrates, ad hoc

clustering mechanisms, security and trust, ad hoc networks

• More Information– http://automate.rutgers.edu

Page 13: Autonomic Applications for  Pervasive Environments

Autonomic Computing Workshop/Tutorial

• Autonomic Computing Workshop – In conjunction with the Twelfth

International Symposium on High Performance Distributed Computing (HPDC-12), June 25th, 2003 in Seattle Washington.

– www.caip.rutgers/edu/ams2003

• Autonomic Computing Tutorial – Global Grid Forum (GGF), June

22nd, 2003 in Seattle Washington.

– http://automate.rutgers.edu