Upload
victor-crawford
View
219
Download
0
Embed Size (px)
Citation preview
DOT’98 Heidelberg 1A. Hoffmann & M. Born
Requirements for Advanced Distribution and
Configuration Support
GMD FOKUS
Andreas Hoffmann & Marc Born
Email: { a.hoffmann , born } @fokus.gmd.de
DOT’98 Heidelberg 2A. Hoffmann & M. Born
• Problems concerning deployment of distributed applications
• Requirement for engineering language
• Requirement for platform extensions
• Conclusion
Overview
DOT’98 Heidelberg 3A. Hoffmann & M. Born
Need for distribution and configuration information
ODL SDL
SystemDesign
Validation
MSCUML
Requ.Captering
Design ImplementationAnalysis
Java
C++
Coding
Coding
Execution
Information for distribution and configuration
needed
DOT’98 Heidelberg 4A. Hoffmann & M. Born
• Partitioning of specification and implementation into parts ready for distribution
• What is the unit for partitioning and distribution?– Depends from used language!– SDL: system, block, process– C++: CORBA objects?– ODL: objects, groups
The partitioning problem
DOT’98 Heidelberg 5A. Hoffmann & M. Born
• Assignment of the entities resulting from the partitioning (server, clients) to entities of the target environment (nodes, capsules ...)
• Configuration (setting of properties)
The installation or initial configuration problem
DOT’98 Heidelberg 6A. Hoffmann & M. Born
• Re-assignment of the entities resulting from the partitioning to entities of the target environment
• Caused by several reasons:– QoS (or other constraints) violation– Version control– Changes of the environment
The re-configuration problem
DOT’98 Heidelberg 7A. Hoffmann & M. Born
Partitioning of specification/implementation
Target environment description
Assignment of engineering spec. parts to target environment
Configuration of target environment and spec. parts
Dynamic update of Deployed System
The process of configuration and distribution
DOT’98 Heidelberg 8A. Hoffmann & M. Born
What is needed to support deployment of distributed applications?
Engineering Language
• Partioning• Assignment• Configuration
Platform Extensions
• Dynamic re-configuration
DOT’98 Heidelberg 9A. Hoffmann & M. Born
ODP - background for engineering Language
• ODP => Framework for open distributed systems
• Viewpoint Model => Managing the complexity of concurrent systems
• Only concepts; no methodology or concrete language
• Several appropriate languages for Computational Viewpoint• ODL => System structure (on Type Level Only)• SDL => System structure and behaviour• ...
• Need for an Engineering Viewpoint language
DOT’98 Heidelberg 10A. Hoffmann & M. Born
Advantages of separation of computational and engineering model
• Computational model remains stable
• Computational model serves for several purposes
=> Validation & simulation, test case gen., performance
analysis
• Several engineering-mappings for the same computational
model possible
DOT’98 Heidelberg 11A. Hoffmann & M. Born
Concepts of Engineering Language
• Defines engineering issues of the system– Partitioning of the system– Properties like binding mechanisms for interfaces (binder, stub, protocoll)– Communication mechanisms
• Defines the target environment
– Nodes, capsules, cluster– Ressources and properties
• Allows assignment of constraints– QoS– Performance
• Textual and graphical representation?
DOT’98 Heidelberg 12A. Hoffmann & M. Born
Mapping from Computational to Engineering Viewpoint (2)
O1O1
O3O3 O4O4
O2O2
Nod
e1N
ode2
En
gine
erin
g1
Nod
e2
Nod
e1
Nod
e4
En
gine
erin
g3
O1O1
O3O3 O4O4
O2O2N
ode3
O2O2
O1O1 O3O3
O4O4
Nod
e1N
ode2
En
gine
erin
g2
O1O1
O3O3 O4O4
O2O2C
ompu
tati
onal
En
viro
nm
ent1
En
viro
nm
ent2
DOT’98 Heidelberg 13A. Hoffmann & M. Born
Support for Constraints• Static and dynamic constraints
– Static: Evaluation before CO instantiation• Compiling constraints• Instantiation constraints
– Dynamic:Evaluation after CO instantiation• Runtime constraints
• Types of constraints– Ressource constraints (e.g. band width, memory)– Execution constraints (e.g. shutdown coordination)– QoS constraints (e.g. response time)
• Constraints for – Types of COs and Groups of COs– Instances of those types– Both combined
=> Instance constraints must be compliant to type constraints
QoS
Objective Subjective
Performance Time Cost Usability
DOT’98 Heidelberg 14A. Hoffmann & M. Born
Support for Constraints(2)Computational Model
O1O1
O3O3 O4O4
O2O2
Instance Level
Engineering Model
Configuration
Assignment
Constraints
Node1
Node2
Environment Model
ConstraintsConstraints
T1T1
T3T3 T4T4
T2T2
Type Level
Constraints
DOT’98 Heidelberg 15A. Hoffmann & M. Born
Environment description• Model for soft-/hardware
– Equipment, devices, OS, DPE (Distr.Proc. Env.) functions
• Concepts– ODP concepts: node, capsule, cluster, ...– Ressources and ressource types (for execution, communication)– Representations of DPE functions– Technology aspects (for practical reasons)
• Purpose– Description of an existing target environment– Abstract deployment requirements for a service
• Kinds of environment model– Abstract (DPE transparency)– Concrete (To support a concrete DPE)
DOT’98 Heidelberg 16A. Hoffmann & M. Born
Environment Model (2)
Computational Model
Abstract Environment
Model
Assignment(Abstract configuration)
Assignment(Concrete configuation)
Concrete Environment
Model
Concrete Environment
Model
Mapping Compliance
Concrete DPE
DOT’98 Heidelberg 17A. Hoffmann & M. Born
Required platform extensions
• Monitoring of properties and analysis• Evaluation of constraints (QoS, Performance ...)• Advanced management functions
• Cloning• Replication• Migration• Version control
DOT’98 Heidelberg 18A. Hoffmann & M. Born
Conclusions
• Problems are:– Partitioning
– Initial configuration (installation)
– Dynamic re-configuration
• Possible solutions are:– Development of engineering language
– Enhancement of execution platforms
• Starting points for development are:– ODP as theoretical background
– UML and other notations for language development
– Existing distributed processing environments (P715, GMD ...)