Title: ASSL Autonomic System Specification Language
1DEPARTMENT OF COMPUTER SCIENCE AND SOFTWARE
ENGINEERING CONCORDIA UNIVERSITY Montreal, Qc,
Canada
ASSL Autonomic System Specification Language
by Emil Vassev
March 11, 2008
2Outline
Index
- Problem Statement
- Autonomic Computing
- ASSL Framework
- Conclusion
3Introduction
Problem Statement
- Moores Law
- Over 40 years IT obeys Moors Law increasing
exponentially the complexity and power of the
contemporary hardware. - Software
- New hardware requires new software - no longer
constrained by hardware space and speed, has
grown up to over millions of lines of code. - Parallel with Moore's Law?
- So we have increased the size and complexity of
software even faster than Moores Law. In fact,
this is why there is a market for faster
processors - software people have always consumed
new capability as fast as or faster than the chip
people could make it available. - Nathan Myhrvold - a former chief technology
officer at Microsoft
4Introduction
Problem Statement
- Current Situation
- Tremendous increase of application complexity
- Service-Oriented architecture running on grids.
- Multi-core CPUs, integrated communication and
management. - Solution
- Self-adaptive and autonomic computing (AC)
systems. - Problem
- Crucial need of programming techniques and
technologies - imply AC principles
- provide us with programming concepts for
implementing autonomic systems (AS).
5Background
Autonomic Computing State of the Art
- Four basic self-managing objectives
- self-configuration
- self-optimization
- self-healing
- self-protection.
- Requirements
- self-aware - aware of its internal state
- self-situated - an AC system monitors its
environment (external knowledge) - self-monitoring - an AC system monitors its
internal components (internal knowledge) - self-adjusting - able to adapt to the changes
that may occur.
Self-Configuration. The AS readjusts itself
automatically, either to support a change in
circumstances or to assist in meeting other
system objectives. The self-configuration is
according to high-level objectives.
Self-Optimization. The AS measures its current
performance against the known optimum and has
defined policies for attempting improvements. It
can also react to the users policy changes
within the system.
Self-Healing. In reactive mode, the AS must
effectively recover when a fault occurs, identify
the fault, and, when possible, repair it. In
proactive mode, the AS monitors vital signs to
predict and avoid health problems.
Self-Protection. The AS defends itself from
accidental or malicious external attacks, which
requires awareness of potential threats and the
means to manage them.
ANS through self-regulation controls and monitors
the human body.
6Background
Autonomic Computing Autonomic Element (AE)
- AE - the core of an AS.
- AE - a self-aware component able to manage its
own behavior. - Control loop
- the core of an AE.
- a set of functionally related and sharing
knowledge units monitor, analyzer, planner, and
executor.
Managed resource (highly scalable)
AE Generic Architecture IBM Blueprint
7Background
Autonomic Computing - A Means for Complexity
Reduction
- ASs aim to reduce complexity of the IT
infrastructure by providing self-managing
components. - AC helps to reduce the total cost of ownership of
IT systems. - Problem
- How to achieve the AC properties, i.e. how to
build autonomic systems. - Complexity paradox - AC reduces the complexity
for the final user, but the design and
implementation of ASs become more complex. - AC introduces additional layer to the
architecture of the system under consideration. - Solution
- Complexity reduction by hiding complexity via
abstraction.
8ASSL Framework
ASSL Multi-Tier Specification Model
- Rationale
- scalable specification model
- provides judicious selection and configuration of
infrastructure elements and mechanisms for ASs - decomposes an AS in two directions 1) into
levels of functional abstraction 2) into
functionally related sub-tiers - presents the system from three different
perspectives 1) AS 2) ASIP 3) AE - matches the AS builders needs
- flexible approach to specification.
- AS Development
- Helps to design and generate an AC wrapper that
embeds the components of existing systems, i.e.
it allows a non-intrusive adding of
self-management features to existing systems. - Allows a top-down development approach to ASs,
where the generated framework instance will guide
the designers to the needed components and their
interfaces of the system under consideration.
9ASSL Framework
ASSL Tiers
- AS/AE SLO Service-level objectives (SLO) - a
higher-level form of behavioral specification
that establishes objectives (performance). - AS/AE Self-Management Policies - the four AC
self-management policies (the so-called
self-CHOP) self-configuring, self-healing,
self-optimizing, and self-protecting. - ASSL specifies the policies with fluents
(conditions with a timed duration) and mappings,
which use actions and events. - ASSL allows specification of policies that cannot
be classified as self-CHOP.
10ASSL Framework
ASSL Tiers
- ASIP/AEIP - The ASSL framework implies two
communication protocols - public (ASIP) and
private (AEIP). The autonomic element interaction
protocol (AEIP) uses the same specification
constructs as ASIP does. Two AEs exchange
messages over their AEIP only if they have an
agreement on it. - AS/AE Actions - routines that can be performed in
response to a self-management policy, SLO, or a
behavior model. - AS/AE Events - used to specify many of the ASSL
structures, such as fluents, self-management
policies, actions etc.
11ASSL Framework
ASSL Tiers
- AS/AE Metrics - constitute a set of parameters
and observables, which the autonomic elements can
control. - AS Architecture - specifies the topology of the
AS (autonomic system). - Managed Resource Interface interface to control
the managed resource.
12ASSL Framework
ASSL Toolset Editor, Parser, Consistency
Checker, Code Generator
13ASSL Framework
Java Code Generation
Gener. Rules
ASSL Spec
Code Generator
ASSL Tokens
ASSL Scanner
ASSL Pre-parser
ASSL Tokens
Consistency Checker
ASSL Grammar Parser
ASSL Parser
DFA, First Follow Sets
ASSL Grammar
Cons. Rules
14ASSL Framework
AE Architecture for ASSL
ASSL generates the AS skeleton. AEs will be
generated as following
15ASSL in Action
Specifying ANTS with ASSL
NASA is currently investigating
biologically-inspired swarm technologies for the
development of autonomous prospective exploration
missions. Autonomous Nano-Technology Swarm
(ANTS) concept mission is a novel approach to
asteroid belt resource exploration.
- Classes of spacecraft
- Rulers
- Messengers
- Workers.
16ASSL in Action
Specifying ANTS with ASSL Self-Configuring
Team formation on the fly to explore asteroids.
- Self-configuring spec
- SELF_CONFIGURING
- - fluents
- - mappings.
- actions
- events
- metrics.
A fluent has a timed duration, for example a
state like there is a lack of idle x-ray
workers.
17ASSL in Action
Specifying ANTS with ASSL Safety SLO
- Goal ANTS safety objectives should present a
level of safety that at least makes ANTS capable
of operating under the following hazards - a collision with the other spacecraft units or
asteroids - high-density magnetic fields
- high radiation (due to a solar eruption)
- a high energy level (due to a solar eruption)
- a loss of communication among the ANTS AEs.
NASA Risk Index Determination
18Conclusion
- ASSL is a specification language for specifying
autonomic systems. - ASSL is designed as a framework and provides a
multi-tier specification model. - ASSL allows expressing autonomic systems, as a
set of interacting AEs, at three main levels
the AS level, the AS interaction protocol level,
and the AE level. - TODO Consistency Checker Code Generator.
- Future work model checker.
19Thank you!