Professional Documents
Culture Documents
Computing
Presented by: Ehsan Kouroshfar
Outline
Introduction
Self-management
Architectural Considerations
Engineering challenges
Scientific challenges
Discussion
Introduction
IBM manifesto (2001): The main obstacle to further
progress in the IT industry is a looming software
complexity problem
Consequence: Installing, Configuring, Tuning and
Maintaining applications is beyond human
capabilities
What about the dream of pervasive computing?
Autonomic computing: Computing systems that can
manage themselves given high level objectives from
administrators
Self-Management
Free system administrators from the details of system
operation and maintenance and provide users with a
machine that runs at peak performance 24/7
Adjust system’s operation in the face of changing
components, workloads, demands and external
conditions
The autonomic system monitor its own use, check for
components upgrade, install them, reconfigure itself
and run a regression test.
Self-Management
Self-Management
Milestones toward fully autonomic computing
Collect and aggregate information to support decisions
by administrators
Serve as advisors to humans
Making and acting on lower level decisions
Ultimately using the benefits of fully autonomic systems
IBM cites four aspects of self-management: Self-
configuration, self-optimization, self-healing, self-
protection
Self-management
Architectural Considerations
Autonomic systems as collections of autonomic elements:
contain resources and deliver services to humans and other
autonomic elements
Autonomic element consists of one or more managed
elements with a single autonomic manager.
Managed elements could be hardware or software resource
Each autonomic element is responsible for managing its
own internal state and interactions with the environment
At lower levels an autonomic element’s range of
interactions may be limited but at higher level its more
flexible and mostly goal oriented
Autonomic element
Life cycle of an autonomic element
Design, test and verification
Extending web services with programming tools and techniques
Tools to represent high goals and map them to lower-level actions
Testing in large-scale systems is more challenging
Impossible to build test systems with realistic system size
Installation and configuration
Elements register itself in a directory service with their name and
capabilities
Use the discovery service to find suppliers that provide required
services
Monitoring and problem determination:
Monitor themselves, suppliers and customers
Monitor to find a failure, try to diagnose or find a new supplier
Need tools for tracing, simulation and problem determination in
complex dynamic environment
Relationships among autonomic elements
Specification
Services should be expressed in a standard format
It can register itself in a directory service such as UDDI
Locating
Needs to locate other elements by searching directory service
Reliability and trustworthiness of potential partners
Negotiation
Negotiate for obtaining a service after finding the element
First-come, first-serve or posted-price
There should be effective negotiation strategies and languages for
expressing agreements
Provision
After reaching agreement they must provision their internal
resources
It maybe establishing relations to subcontractors
Relationships among autonomic elements
Operation
They operate under negotiated agreement
The service provider’s autonomic manager oversees the operation of
its managed element, monitoring it to ensure that the agreement is
being honored; the service requester might similarly monitor the
level of service.
If the agreement is violated, one or both elements would seek an
appropriate remedy
Termination
Freeing the internal resources for other uses
Record pertinent information about service relationship locally or
in a database for reputation of elements
Systemwide issues
Security, privacy and trust
Challenges confront electronic commerce: authentication,
authorization, encryption, signing, …
The autonomic systems infrastructure must let autonomic
elements identify themselves, verify the identities of other
entities with which they communicate, verify that a message has
not been altered in transit, and ensure that unauthorized parties
do not read messages and other data.
At larger scale autonomic elements will be agents . Autonomic
systems will be inhabited by middle agents that serve various
types including directory services, matchmakers, brokers,
auctioneers, security analysts and …
Goal specification
Humans provide the goals and constraints that governs
autonomic systems actions
Two engineering challenges: Ensure that goals are specified
correctly in the first place, and ensure that systems behave
reasonably even when they are not
Goals could be multidimensional, conflicting and complex
How to define the utility functions?
Autonomic systems will need to protect themselves from input
goals that are inconsistent, implausible, dangerous, or
unrealizable with the resources at hand
Scientific challenges
Behavioral abstractions and models
Defining appropriate models for understanding, controlling, and
designing emergent behavior in autonomic systems is a challenge
Understanding the mapping from local behavior to global behavior
and vice versa
How can we derive a set of behavioral and interaction rules that, if
embedded in individual autonomic elements, will induce a desired
global behavior?
Robustness theory
A related challenge is to develop a theory of robustness for
autonomic systems, including definitions and analyses of
robustness, diversity, redundancy, and optimality and their
relationship to one another.
Scientific challenges
Learning and optimization theory
Learning in multi-agent system is a challenging but relatively
unexplored problem
Optimization should deal with dynamism also: agents are changing
their behaviors making it necessary for other agents to change ,
potentially leading to instability.
Negotiation theory
How overall system behavior depends on the mixture of negotiation
algorithms that various autonomic elements use and establish
Automated statistical modeling
Methods that automate the aggregation of statistical variables to
reduce the dimensionality of the problem to a size that is amenable
to adaptive learning and optimization
Discussion
The paper has more than 2000 citation according to Google scholar
the study of autonomic systems has become a significant
component of systems research, with its own dedicated journals,
conferences, and IEEE Computer Society technical committee
(TCAAS), as well as a substantial presence in mainstream
computing and networking venues.
In 2001, IBM researchers predicted that by the end of the decade
the IT industry would need up to 200 million workers, equivalent to
the entire US labor force, to manage a billion people and millions of
businesses using a trillion devices connected via the internet.
We have reached 2010, and, the situation clearly is not as extreme as
anticipated. Now that there are approximately 260,000 IT
workers in the US, with employment in the industry
Discussion
Consolidation of computing power, which will increase
alongside the use of cloud computing and Web 2.0, reduces the
amount of management per unit of service.
Efforts since 2001 to design self-managing systems have yielded
many impressive achievements, yet the original vision of
autonomic computing remains unfulfilled.
This was not indeed ’hype’ and that, though it draws on much
work already carried out by the Computer Science and Control
communities, its innovation is strong and lies in its robust
application to the specific self-management of computing
systems.
Discussion
A lot of work has been carried out in the MAPE-K loop
Automatic Manager: Goal policy languages, Utility functions,
Conflict resolution, Multi-agent cooperation, Cellular systems
and insect colonies
Monitoring: Dynamic monitoring
Planning: Policy based adaptation planning, Architectural
models
Knowledge: Concept of utility, reinforcement learning, Bayesian
techniques
In conclusion, though autonomic computing has become
increasingly interesting and popular it remains a relatively
immature topic.