Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon...

25
Autonomic Computing: An Autonomic Computing: An Overview Overview Manish Parashar and Salim Manish Parashar and Salim Hariri Hariri Presenter: Alejandro Presenter: Alejandro Simon Simon Agnostic: Joseph Cilli Agnostic: Joseph Cilli

Transcript of Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon...

Page 1: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

Autonomic Computing: An Autonomic Computing: An OverviewOverviewManish Parashar and Salim HaririManish Parashar and Salim Hariri

Presenter: Alejandro SimonPresenter: Alejandro Simon

Agnostic: Joseph CilliAgnostic: Joseph Cilli

Page 2: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 22/25/25

IntroductionIntroduction

Advances in technology have resulted in Advances in technology have resulted in complex, heterogeneous and dynamic complex, heterogeneous and dynamic applications and systems.applications and systems.

Growth in the information infrastructure Growth in the information infrastructure aggregates such systems.aggregates such systems.

Applications, programming environments Applications, programming environments and information infrastructures have and information infrastructures have become brittle, unmanageable, insecure.become brittle, unmanageable, insecure.

Autonomic computing is an alternate Autonomic computing is an alternate paradigm that deals with this issue.paradigm that deals with this issue.

Page 3: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 33/25/25

The Autonomic Nervous The Autonomic Nervous SystemSystem

The most sophisticated example of The most sophisticated example of autonomic behavior. autonomic behavior.

Regulates and maintains homeostasis: Regulates and maintains homeostasis: maintains structure and functions by maintains structure and functions by means of a multiplicity of dynamic means of a multiplicity of dynamic equilibriums that are rigorously controlled equilibriums that are rigorously controlled by interdependent regulation mechanisms. by interdependent regulation mechanisms.

Not all parameters have the same Not all parameters have the same urgency, essential parameters are urgency, essential parameters are monitored more closely.monitored more closely.

Page 4: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 44/25/25

Ashby’s Ultrastable SystemAshby’s Ultrastable System In order for an In order for an

organism to organism to survive, its survive, its essential essential variables (EVx) variables (EVx) must be kept must be kept within a within a viability zone. viability zone.

Source: “Autonomic Computing: An Overview, ” M. Parashar, and S. Hariri, UPP 2004, Mont Saint-Michel, France, Editors: J.-P. Banâtre et al. LNCS, Springer Verlag, Vol. 3566, pp. 247 – 259, 2005.

Page 5: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 55/25/25

Ashby’s Ultrastable SystemAshby’s Ultrastable System

The goal of an adaptive behavior is to The goal of an adaptive behavior is to ensure survivability of the system.ensure survivability of the system.

If external or internal disturbances push the If external or internal disturbances push the system outside its equilibrium state, the system outside its equilibrium state, the system will work towards returning to system will work towards returning to equilibrium. equilibrium.

The ultrastable system consists of two The ultrastable system consists of two closed loops, one controls small closed loops, one controls small disturbances, the other controls larger ones.disturbances, the other controls larger ones.

Page 6: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 66/25/25

Ashby’s Ultrastable SystemAshby’s Ultrastable System

Source: “Autonomic Computing: An Overview, ” M. Parashar, and S. Hariri, UPP 2004, Mont Saint-Michel, France, Editors: J.-P. Banâtre et al. LNCS, Springer Verlag, Vol. 3566, pp. 247 – 259, 2005.

Page 7: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 77/25/25

The Nervous System as a The Nervous System as a Subsystem of Ashby’s Ultrastable Subsystem of Ashby’s Ultrastable

SystemSystem Nervous System consists of Peripheral Nervous System consists of Peripheral

Nervous System (PNS), Central Nervous Nervous System (PNS), Central Nervous System (CNS)System (CNS)

PNS: Sensory neurons connecting stimuli PNS: Sensory neurons connecting stimuli receptors to CNS. Motor neurons receptors to CNS. Motor neurons connecting CNS to muscles and glands.connecting CNS to muscles and glands.

CNS: Sensory-somatic nervous system and CNS: Sensory-somatic nervous system and Autonomic Nervous System: Depicted as Autonomic Nervous System: Depicted as an Ashby’s Ultrastable Systeman Ashby’s Ultrastable System

Page 8: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 88/25/25

The Nervous System as a The Nervous System as a Subsystem of Ashby’s Ultrastable Subsystem of Ashby’s Ultrastable

SystemSystem

Source: “Autonomic Computing: An Overview, ” M. Parashar, and S. Hariri, UPP 2004, Mont Saint-Michel, France, Editors: J.-P. Banâtre et al. LNCS, Springer Verlag, Vol. 3566, pp. 247 – 259, 2005.

Page 9: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 99/25/25

The Autonomic Computing The Autonomic Computing ParadigmParadigm

Must have a mechanism to adapt to changes in Must have a mechanism to adapt to changes in its Essential Variables (EVs) by changing its its Essential Variables (EVs) by changing its behavior to restore equilibrium. behavior to restore equilibrium.

Equilibrium is impacted by internal environment Equilibrium is impacted by internal environment (excessive CPU usage), and external environment (excessive CPU usage), and external environment (external attack).(external attack).

Requires sensor and motor channels to sense and Requires sensor and motor channels to sense and react to changes in environment by changing the react to changes in environment by changing the system and maintaining equilibrium.system and maintaining equilibrium.

Stages: Sensing, Analyzing, Planning, Knowledge, Stages: Sensing, Analyzing, Planning, Knowledge, and Execution. and Execution.

Page 10: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1010/25/25

A Holistic View of Autonomic A Holistic View of Autonomic ComputingComputing

Existing systems have been developed in an Existing systems have been developed in an ad-hoc manner and can optimize a few ad-hoc manner and can optimize a few attributes or functionalities. attributes or functionalities.

Emerging systems and applications are Emerging systems and applications are dynamic, their requirements will change dynamic, their requirements will change during their lifetime (high performance, during their lifetime (high performance, fault tolerance, security, availability, fault tolerance, security, availability, configurability)configurability)

Autonomic computing provides a holistic Autonomic computing provides a holistic approach to design and development of approach to design and development of application that can adapt to their application that can adapt to their requirements without manual intervention. requirements without manual intervention.

Page 11: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1111/25/25

Architecture of an Autonomic Architecture of an Autonomic ElementElement

The smallest unit of an autonomic The smallest unit of an autonomic application. application.

It is a self-contained software or It is a self-contained software or system module with input and output system module with input and output interfaces and explicit context interfaces and explicit context dependencies. dependencies.

It has embedded mechanisms for It has embedded mechanisms for self-management.self-management.

Page 12: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1212/25/25

Architecture of an Autonomic Architecture of an Autonomic ElementElement

Source: “Autonomic Computing: An Overview, ” M. Parashar, and S. Hariri, UPP 2004, Mont Saint-Michel, France, Editors: J.-P. Banâtre et al. LNCS, Springer Verlag, Vol. 3566, pp. 247 – 259, 2005.

Page 13: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1313/25/25

Autonomic Computing Systems Autonomic Computing Systems and Applicationsand Applications

Self Aware: knows itself and is aware of its state and Self Aware: knows itself and is aware of its state and behaviors.behaviors.

Self Configuring: configures and reconfigures itself under Self Configuring: configures and reconfigures itself under varying and unpredictable conditionsvarying and unpredictable conditions

Self Healing: detects and recovers from problems.Self Healing: detects and recovers from problems. Self Protecting: detects and protects from internal and Self Protecting: detects and protects from internal and

external attacks to its resources.external attacks to its resources. Context Aware: is aware of its execution environment and Context Aware: is aware of its execution environment and

reacts to changes in such.reacts to changes in such. Open: must function in an heterogeneous world and be Open: must function in an heterogeneous world and be

portable across platforms. portable across platforms. Anticipatory: anticipate its needs and behavior and those of Anticipatory: anticipate its needs and behavior and those of

its context; should manage itself proactively.its context; should manage itself proactively.

Page 14: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1414/25/25

Autonomic Computing Autonomic Computing Research Issues and Research Issues and

ChallengesChallenges Conceptual: Defining models for Conceptual: Defining models for

controlling and implementing autonomic controlling and implementing autonomic behavior.behavior.

Architecture: Implementation of robust Architecture: Implementation of robust and predictable autonomic behaviors. and predictable autonomic behaviors.

Middleware: Implement reliable and robust Middleware: Implement reliable and robust middleware to allow autonomic entities to middleware to allow autonomic entities to discover, message, and trust each other.discover, message, and trust each other.

Application: Creation of frameworks to Application: Creation of frameworks to allow systems and applications that are allow systems and applications that are capable of managing themselves.capable of managing themselves.

Page 15: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1515/25/25

The Autonomic Computing The Autonomic Computing LandscapeLandscape

Academic and Industry projects have Academic and Industry projects have addressed and investigated the addressed and investigated the issues outlined above. issues outlined above.

A list follows of applications that A list follows of applications that utilize autonomic mechanisms for utilize autonomic mechanisms for problem determination, monitoring, problem determination, monitoring, analysis and management. analysis and management.

Page 16: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1616/25/25

The Autonomic Computing The Autonomic Computing LandscapeLandscape

Source: “Autonomic Computing: An Overview, ” M. Parashar, and S. Hariri, UPP 2004, Mont Saint-Michel, France, Editors: J.-P. Banâtre et al. LNCS, Springer Verlag, Vol. 3566, pp. 247 – 259, 2005.

Page 17: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1717/25/25

ConclusionsConclusions

Autonomic Computing Paradigm: inspired Autonomic Computing Paradigm: inspired by biological systems such as the human by biological systems such as the human nervous system. nervous system.

This paradigm enables the development of This paradigm enables the development of self managing computing systems and self managing computing systems and applications. applications.

Autonomic strategies and algorithms Autonomic strategies and algorithms handle complexities and uncertainties with handle complexities and uncertainties with minimum human intervention. minimum human intervention.

Research is being conducted but this topic Research is being conducted but this topic remains an open and significant challenge.remains an open and significant challenge.

Page 18: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1818/25/25

Agnostic Question 1Agnostic Question 1

Being that the ACS paradigm is modeled after the human Being that the ACS paradigm is modeled after the human nervous system, is it accurate to conclude that the paradigm is nervous system, is it accurate to conclude that the paradigm is fallible when you consider that a system might not be able to fallible when you consider that a system might not be able to self-heal an unknown/unforeseen issue just as the human self-heal an unknown/unforeseen issue just as the human biological system may not be able to self-heal because it is biological system may not be able to self-heal because it is unaware of specific infections and its inability to learn unless unaware of specific infections and its inability to learn unless combined with artificial intelligence?combined with artificial intelligence?

I think it is accurate to say that the self-healing capabilities of I think it is accurate to say that the self-healing capabilities of an ACS depend on the sophistication of the algorithm. Even with an ACS depend on the sophistication of the algorithm. Even with the use of artificial intelligence, the possibility of the system the use of artificial intelligence, the possibility of the system being exposed to an unforeseen issue will always exist. being exposed to an unforeseen issue will always exist. Therefore, consulting an expert is a wise course of action.Therefore, consulting an expert is a wise course of action.

Page 19: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 1919/25/25

Agnostic Question 2Agnostic Question 2

The authors’ state an ACS requires sensor channels to The authors’ state an ACS requires sensor channels to sense changes and motor channels to react; however, there sense changes and motor channels to react; however, there is never any mention of the overhead involved with is never any mention of the overhead involved with sensing, analysis or reaction. Is there a significant cost to sensing, analysis or reaction. Is there a significant cost to these requirements that is overlooked in the paper?these requirements that is overlooked in the paper?

There is always computational overhead involved in There is always computational overhead involved in executing extra code. However, use of threads and executing extra code. However, use of threads and performance analysis of the application to ensure it meets performance analysis of the application to ensure it meets the contractual Quality of Service should ensure that the the contractual Quality of Service should ensure that the overhead introduced by the monitoring and healing code overhead introduced by the monitoring and healing code does not appear to hinder the application. There is a does not appear to hinder the application. There is a substantial cost in terms of programming time when substantial cost in terms of programming time when implementing these requirements.implementing these requirements.

Page 20: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 2020/25/25

Agnostic Question 3Agnostic Question 3

The idea of ACS seems like a viable solution to handle The idea of ACS seems like a viable solution to handle complex systems. Yet there have been instances where an complex systems. Yet there have been instances where an ACS has caused more work for an administrator. Have there ACS has caused more work for an administrator. Have there been any studies to compare system performance using been any studies to compare system performance using solely human interaction with system performance using an solely human interaction with system performance using an ACS?ACS?

Not familiar with a specific study comparing the Not familiar with a specific study comparing the performance of human interaction vs. an ACS.performance of human interaction vs. an ACS.

Page 21: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 2121/25/25

Agnostic Question 4Agnostic Question 4

Once high level policies are defined by a human, how would Once high level policies are defined by a human, how would an ACS handle conflict resolution between contradictory an ACS handle conflict resolution between contradictory self management aspects?self management aspects?

Several algorithms can be implemented to implement Several algorithms can be implemented to implement conflict resolution. The most trivial one is to require human conflict resolution. The most trivial one is to require human input. Another options is to implement either one of the input. Another options is to implement either one of the conflicting strategies, monitor and record its effect in the conflicting strategies, monitor and record its effect in the system. After several iterations, choose the one with the system. After several iterations, choose the one with the highest success rate. This approach would mimic the way highest success rate. This approach would mimic the way humans learn by making choices with incomplete humans learn by making choices with incomplete information and learning from their mistakes.information and learning from their mistakes.

Page 22: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 2222/25/25

Agnostic Question 5Agnostic Question 5

The authors’ state that one of the research challenges is The authors’ state that one of the research challenges is autonomic application & system architecture. Since the autonomic application & system architecture. Since the proposed architectures deal with autonomic element proposed architectures deal with autonomic element communication, can one infer that such architectures would communication, can one infer that such architectures would be OS and/or machine specific?be OS and/or machine specific?

Not necessarily, with the advert of managed languages and Not necessarily, with the advert of managed languages and open communication standards such as Java, .NET open communication standards such as Java, .NET languages, HTTP and SOAP, such architectures need not be languages, HTTP and SOAP, such architectures need not be OS nor machine specific. OS nor machine specific.

Page 23: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 2323/25/25

Agnostic Question 6Agnostic Question 6

Once a human sets high level policies, how can a non-Once a human sets high level policies, how can a non-programming administrator determine if the self-programming administrator determine if the self-management aspects of a system are performing management aspects of a system are performing properly/efficiently?properly/efficiently?

A non-programming administrator is limited to monitoring A non-programming administrator is limited to monitoring the system as a black box. Such monitoring can include the system as a black box. Such monitoring can include query execution times, and other statistic reported by the query execution times, and other statistic reported by the self-management modules. self-management modules.

Page 24: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 2424/25/25

Agnostic Question 7Agnostic Question 7

Clearly ACS has a broad use in many industries; however, the Clearly ACS has a broad use in many industries; however, the authors’ examples of existing projects mostly focus on data authors’ examples of existing projects mostly focus on data management systems. Was the current concept of ACS spawned management systems. Was the current concept of ACS spawned by DBMS or does it simply lend itself to that arena?by DBMS or does it simply lend itself to that arena?

Each author would choose examples that are most familiar to Each author would choose examples that are most familiar to them. The concept of ACS applies to DBMS given the complexity of them. The concept of ACS applies to DBMS given the complexity of such systems and the familiarity of Computer Science majors with such systems and the familiarity of Computer Science majors with such systems. ACS however, are not limited to DBMS as the such systems. ACS however, are not limited to DBMS as the examples below show:examples below show:

““An Al tool for supervising substations”, Melvin Ayala, S. An Al tool for supervising substations”, Melvin Ayala, S. Galdenoro Botura, J. Oscar Maldonado, IEEE POTENTIALS, 2002, Galdenoro Botura, J. Oscar Maldonado, IEEE POTENTIALS, 2002, VOL 20; PART 5, pages 13-18VOL 20; PART 5, pages 13-18

““http://www.ForexLab.NET”, A mechanical trading software.http://www.ForexLab.NET”, A mechanical trading software.

Page 25: Autonomic Computing: An Overview Manish Parashar and Salim Hariri Presenter: Alejandro Simon Agnostic: Joseph Cilli.

6/26/066/26/06 2525/25/25

Agnostic Question 8Agnostic Question 8

The authors’ conclude that achieving overall autonomic The authors’ conclude that achieving overall autonomic behaviors remain an open and significant challenge, which behaviors remain an open and significant challenge, which can be accomplished, in part, by open industry standards; can be accomplished, in part, by open industry standards; however, a lone standards organization body has yet to be however, a lone standards organization body has yet to be defined. How can the stated challenges be met when defined. How can the stated challenges be met when multiple governing bodies exist?multiple governing bodies exist?

The same way problems have been solved in the past, The same way problems have been solved in the past, several groups implement a solution to the problem, a several groups implement a solution to the problem, a particular implementation becomes a de-facto standard and particular implementation becomes a de-facto standard and the market determines which solution fits each particular the market determines which solution fits each particular niche. niche.