SlideShare a Scribd company logo
CITADEL configuration and
reconfiguration synthesis
Univ. Grenoble Alpes Configuration Plane Training 1
 Source: Université grenoble-Alpes (UGA)
 Abstract: This material provides a thorough presentation of the
CITADEL Reconfiguration Plane, hereafter denoted XP, from high-level
design to low-level implementation and deployment on the CITADEL
platform.
 Learning outcome: Learn about the design, implementation and capabilities of
the CITADEL Configuration plane.
 Intended audience: System integrators
 Pre-requisites:
 MILS and Adaptive MILS
 CITADEL Modeling Language (SLIM)
 CITADEL platform (PikeOS, TSN)
 Python and C languages
 Language: English
 Format: PDF slides
 Expected workload: 2h
Introduction
Univ. Grenoble Alpes Configuration Plane Training 2
 Overall organization
 Role in the CITADEL framework
 Interaction with other planes
 Reconfig. Planner, Controller, Agent
 Interactions and operation
 Implementation and deployment
 Usage and examples
Outline
3Configuration Plane TrainingUniv. Grenoble Alpes
Overall Organization
4Configuration Plane TrainingUniv. Grenoble Alpes
Reconfiguration Plane Position (I)
Configuration Plane Training 5Univ. Grenoble Alpes
 In the CITADEL framework, the configuration plane (XP),
plays an executive role which is to reconfigure the
Adaptive MILS system.
 Reconfiguration performed by XP covers mainly:
 The MILS policy architecture:
● subjects,
● communication between subjects, and
● subjects deployment.
 The MILS monitoring systems
● Monitors.
 To achieve reconfiguration, XP interacts with other
planes of the CITADEL framework, namely the
Adaptation Plane (AP), the Monitoring Plane (MP), the
Operational Plane (OP) and the Foundational Plane (FP)
as shown in the next slide.
Reconfiguration Plane Position (II)
Univ. Grenoble Alpes Configuration Plane Training 6
Interactions with other planes (I)
7Univ. Grenoble Alpes Configuration Plane Training
Interactions with other planes (II)
8
Adaptation Plane
(AP)
1- target
configurationnotification
2- reconfiguration
step
notification
2- reconfiguration
step
notification
Foundational (FP)/Operational Planes (OP)
…
Reconfiguration Plane
(XP)
Monitoring Plane (MP)
Node 1
S1 Si
…
TSN
Net.
PikeOS
Node M
Si+1 SN
…
PikeOS
1. XP receives a target configuration
from AP, i.e. the new system
configuration to reach.
2. Based on that, XP issues
reconfiguration commands to
reconfigure MP and OP.
3. XP always expect a
notification back from
the reconfigured
planes.
Configuration Plane Training
4. It also notifies back AP.
Univ. Grenoble Alpes
Reconfiguration operation: overview
9
Configuration
Plane
Operational/Foundational Planes
Curent intermediate
Configuration
Target intermediate
Configuration
…
Intermediate Abstract Configurations
Current Concrete
Configuration
…
Small Step
Small Steps
Primitive Primitives
Target Concrete
Configuration
…Primitives
Current Architecture
(SLIM Model + Parameter Vector1)
Adaptation
Plane
Target Architecture
(SLIM Model + Parameter Vector2)
Big Step
XP proceeds by refining a high-level reconfiguration objective (big step) into
an intermediate plan (small steps) then into low-level primitives.
Configuration Plane TrainingUniv. Grenoble Alpes
Reconfiguration
Planner, Controller, Agent
10
Interaction and operation
Configuration Plane TrainingUniv. Grenoble Alpes
Reconfiguration Plane Components
Reconfiguration plan
Constraints
Target configuration
Current
Configuration
Reconfiguration
commands
AdaptionPlane
MonitorPlane
Reconfiguration Planner
Reconfiguration
State Controller
Notification
Operational Plane
Notification
Low-level
Reconfiguration
PrimitivesNotification
Configuration
Change Agents
Foundational Plane
The figure shows the different
components of XP, namely
• The Planner,
• The Controller, and
• The Config. Change Agent,
in addition to the interactions
with the other planes.
Notification
Notification
deployment
11Configuration Plane TrainingUniv. Grenoble Alpes
 The Planner
Is responsible for computing a reconfiguration plan
given the target configuration sent by AP.
 The Controller
Is responsible to refine the high-level
reconfiguration plan computed by the planner and
to execute it by sending reconfiguration commands
to the Configuration Change Agent and to MP.
 The Configuration Change Agent
Is responsible for reconfiguring FP/OP. It executes
the appropriate low-level reconfiguration primitives
(PikeOS and TSN network) upon receiving
reconfiguration commands from the Controller.
Components roles
Univ. Grenoble Alpes Configuration Plane Training 12
 Applies high-level reasoning to compute a reconfiguration plan that
leads the system from its current configuration to the target
configuration.
 The current and target configurations received from AP are SLIM
models. They are transformed into a graph representation.
 The reconfiguration plan is a sequence of actions over graphs e.g.,
add/remove nodes and edges.
 The constraints represents requirements such as
• « always remove the node’s edges before removing the node ».
• « always remove before add ».
 A notification is sent back to AP to notify success or failure.
Reconfiguration Planner
Univ. Grenoble Alpes Configuration Plane Training 13
Reconfiguration plan
Constraints
Target configuration
Reconfiguration Planner
Notification
AdaptionPlane
Notification
 Refines the reconfiguration plan generated by the planner and
drives the reconfiguration execution.
 It includes appropriate reconfiguration commands into the
reconfiguration plan for monitors reconfiguration.
 deployment information concern the subjects of the
application and the configuration change agents.
 Reconfiguration commands are sent accordingly to the
monitoring plane and the config. change agents in each node.
 A notification is sent back to the planner to notify
success/failure.
Reconfiguration Controller
Univ. Grenoble Alpes Configuration Plane Training 14
Reconfiguration
commands
MonitorPlane
Reconfiguration
State Controller
Notification
Notification
deployment
Reconfiguration plan
Notification
 Maps high-level reconfiguration commands
received from the controller to concrete
reconfiguration primitives and executes them.
 A Configuration Change Agent is deployed in each
node of the distributed MILS platform.
 Based on the primitive execution result, it notifies
back the controller.
Configuration Change Agent
Univ. Grenoble Alpes Configuration Plane Training 15
Low-level
Reconfiguration
PrimitivesNotification
Configuration
Change Agents
Reconfiguration
commandsNotification
Reconfiguration
Planner, Controller, Agent
16
Implementation and deployment
Configuration Plane TrainingUniv. Grenoble Alpes
 The Configuration plane is designed as a
back-end and a front-end
 The back-end
● encompasses the Planner and the Controller,
● is fully implemented in Python.
https://redmine.citadel-
project.org/projects/citadel-
framework/repository/show/Configuration-
Plane/controller/trunk
 The front-end
● contains different instances of config. change
agents,
● is fully implemented in C,
● Relies on PikeOS and ElinOS libraries.
Overall design
Univ. Grenoble Alpes Configuration Plane Training 17
Deployment
Univ. Grenoble Alpes Configuration Plane Training 18
reconfiguration
commands
Foundational (FP)/Operational Planes (OP)
…
XP back-end
Node 1
S1 Si
…
TSN
Net.
PikeOS
Node M
Si+1 SN
…
PikeOS
Planner
Controller
Reconfig.
planNotification
XP
front
-end
XP
front
-end
Notification
Notification
 The XP back-end is to be deployed on the same node as
the remaining CITADEL framework components. It is
deployed as an ElinOS partition.
 The front-end is deployed on the different nodes of
MILS Platform. Each node of the system hosts a
Configuration Change Agent (CCA).
 The Configuration Change Agent (CCA) is further decomposed into two modules:
 A communication agent
● Is responsible for interacting with the controller (front-end) and other components
inside/outside the node, e.g. TSN partition,
● Is deployed as an ElinOS partition.
https://redmine.citadel-project.org/projects/citadel-framework/repository/show/Configuration-
Plane/agent/trunk/CommHandlerApp.eapp
 A core agent
● Is responsible for executing PikeOS primitives,
● Is deployed as a native PikeOS partition,
● Requires abilities: read/write file system (eth0:dyn_reconf.conf), VM_AB_PART_SET_MOD
https://redmine.citadel-project.org/projects/citadel-framework/repository/show/Configuration-
Plane/agent/trunk/ReconfCoreAgent.p4app
 Communication between the two agents is performed using PikeOS Queue ports.
CCA implementation
Univ. Grenoble Alpes Configuration Plane Training 19
Core
Agent
- PikeOS -
XP back-end
- ElinOS -
Comm.
Agent
- ElinOS - out_ex
in_ex Reconfiguration commands
Notifications
Qports
XP
Front-end
Usage & examples
Univ. Grenoble Alpes Configuration Plane Training 20
 Back-end usage
./xp.py --ccas_deployment <CCAS deployment file>
--subjects_deployment <subjects deployment file>
 Requirements
● Python 2.7
● NetworkX Python library
● CITADEL Framework
● Compass tool
 Front-end usage
 Communication agent
Commagent [--master-port=PORT] [--interceptor-
port=PORT]
 Core agent
● Automatically started (PikeOS process)
Usage
Univ. Grenoble Alpes Configuration Plane Training 21
 Subjects deployment file
 provides information about all application’s subjects (running/parked).
 Each line contains sid,pid,vca,vcb,ip,status,node
 sid = application subject identifier (id)
 pid = running partition identifier (number)
 vca = virtual channel identifier (id) - connecting subject partition to virtual eth service
 vcb = virtual channel identifier (id) - connectint virtual eth service to tsn partition
 ip = ip address of the application subject (xxx.yyy.zzz.www)
 status = initial subject status (UP | DOWN)
 node = node identifier (id)
 Information about the "tsn" partition are to be included in the same way.
 Example of a valid description
subject,partition,ch1,ch2,ip_addr,status,node
hello,4,16,17,192.168.0.5,UP,N1
tsn,5,*,*,198.22.14.5,UP,N1
 CCA deployment file
 Provides information about all the deployed configuration change agents
 Each line contains node,ip,port
 node = node identifier (id)
 ip = ip address of the CCA (xxx.yyy.zzz.www)
 Port = port number of which the CCA listen to contorller commands (number)
 Example of a valid description
node;ip_addr;port
N1;192.168.0.6;24000
Input files specification
Univ. Grenoble Alpes Configuration Plane Training 22
Example: Sender/Receiver
Univ. Grenoble Alpes Configuration Plane Training 23
Current configuration
Sender
{nodes_1}
Receiver
{nodes_2}
Target configuration
Sender
{nodes_2}
Receiver
{nodes_2}
Move Sender
To illustrate the reconfiguration steps, let’s
consider the simple example depicted on the left.
In the latter, the MILS policy architecture
(application) is made of two subjects, namely the
Sender and the Receiver. These are initially
deployed respectively on node N1 and N2 of the
MILS platform.
The considered reconfiguration, is to move the
Sender to N2 (because of a certain event, e.g. N1 is
no more operational). The target configuration is
thus as shown by the graph on the bottom.
The code to run this example is provided under …
 In this example, we have two nodes
 nodes_1 and nodes_2
 We will have tow Configuration Change
Agents, one on each node.
 Run the configuration change agents:
./commagent.exe --master-port 24000
./commagent.exe --master-port 25000
Running XP components (Front-end)
Univ. Grenoble Alpes Configuration Plane Training 24
 To run the back-end use the following commands with the mentioned
input files.
./$CITADEL_PATH/Configuration-Plane/controller/trunk/xp.py
--ccas_deployment send-recv-netmon-ccas-deployment.csv
--subjects_deployment send-recv-netmon-subject-deployment.csv
 ccas deployment file
node;ip_addr;port
nodes__1;127.0.0.1;24000
nodes__2;127.0.0.1;25000
 subjects deployment file
subject,partition,ch1,ch2,ip_addr,status,node
sender,4,1,2,192.168.0.5,UP,nodes__1
receiver,5,3,4,192.168.0.6,UP,nodes__2
sender,6,1,2,192.168.0.5,DOWN,nodes__2
receiver,7,3,4,192.168.0.6,DOWN,nodes__1
Running XP components (back-end)
Univ. Grenoble Alpes Configuration Plane Training 25
Running XP components
Univ. Grenoble Alpes Configuration Plane Training 26
Configuration Change Agent on nodes_1
Configuration Change Agent on nodes_2
XP back-end Initialization
Example: Sender/Receiver (Cont.)
Univ. Grenoble Alpes Configuration Plane Training 27
Current configuration
Sender
{nodes_1}
Receiver
{nodes_2}
Target configuration
Sender
{nodes_2}
Receiver
{nodes_2}
Sender
{nodes_1}
Receiver
{nodes_2}
1- Remove Sender->Receiver
Receiver
{nodes_2}
2- Remove Sender on N1
Sender
{nodes_2}
Receiver
{nodes_2}
3- Start Sender on N2
4- Re-establish Sender->Receiver
This reconfiguration plan
is computed by the Planner
component.
Example: Sender/Receiver (Cont.)
Univ. Grenoble Alpes Configuration Plane Training 28
Compute reconfiguration plan (abstract)
Receive target configuration
Initialization/receive initial
configuration
Example: Sender/Receiver (Cont.)
Univ. Grenoble Alpes Configuration Plane Training 29
Current configuration
Sender
{nodes_1}
Receiver
{nodes_2}
Target configuration
Sender
{nodes_2}
Receiver
{nodes_2}
Sender
{nodes_1}
Receiver
{nodes_2}
1.1- Remove Sender->Receiver
Receiver
{nodes_2}
2.1- Remove Sender on N1
Sender
{nodes_2}
Receiver
{nodes_2}
3.0- Start Sender on N2
4.0- Re-establish Sender->Receiver
1.0- notify monitor (Remove Sender->Receiver)
2.0- notify monitor (Remove Sender on N1)
3.1- notify monitor (start Sender on N2)
4.1- notify monitor (establish Sender->receiver)
Example: Sender/Receiver (Cont.)
Univ. Grenoble Alpes Configuration Plane Training 30
Compute reconfiguration plan
(concrete)
Example: Sender/Receiver (Cont.)
Univ. Grenoble Alpes Configuration Plane Training 31
Executing the reconfiguration plan
Ayoub Nouri
Ayoub.nouri@univ-grenoble-alpes.fr
Marius Bozga
Marius.bozga@univ-grenoble-alpes.fr
Contact information
Univ. Grenoble Alpes Configuration Plane Training 32

More Related Content

What's hot

Citadel Platform Architecture
Citadel Platform ArchitectureCitadel Platform Architecture
Citadel Platform Architecture
RamnGonzlezRuiz2
 
Advanced tech module - state monitoring
Advanced tech module  -  state monitoringAdvanced tech module  -  state monitoring
Advanced tech module - state monitoring
RamnGonzlezRuiz2
 
Formal Model Based Design of Control Software
Formal Model Based Design of Control SoftwareFormal Model Based Design of Control Software
Formal Model Based Design of Control SoftwareVadim Alimguzhin
 
[Capella Day 2019] Model execution and system simulation in Capella
[Capella Day 2019] Model execution and system simulation in Capella[Capella Day 2019] Model execution and system simulation in Capella
[Capella Day 2019] Model execution and system simulation in Capella
Obeo
 
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Kimberly Daich
 
RTI-CODES+ISSS-2012-Submission-1
RTI-CODES+ISSS-2012-Submission-1RTI-CODES+ISSS-2012-Submission-1
RTI-CODES+ISSS-2012-Submission-1Serge Amougou
 
PRFC SysML 1.4
PRFC SysML 1.4PRFC SysML 1.4
PRFC SysML 1.4
Pascal Roques
 
safety assurence in process control
safety assurence in process controlsafety assurence in process control
safety assurence in process control
Nathiya Vaithi
 
SysML for embedded system engineering - Academy Camp 2015
SysML for embedded system engineering - Academy Camp 2015SysML for embedded system engineering - Academy Camp 2015
SysML for embedded system engineering - Academy Camp 2015
Régis Castéran
 
Study of model predictive control using ni lab view
Study of model predictive control using ni lab viewStudy of model predictive control using ni lab view
Study of model predictive control using ni lab viewIAEME Publication
 
Binary obfuscation using signals
Binary obfuscation using signalsBinary obfuscation using signals
Binary obfuscation using signalsUltraUploader
 
Chap4
Chap4Chap4
Model-Based Design For Motor Control Development
Model-Based Design For Motor Control DevelopmentModel-Based Design For Motor Control Development
Model-Based Design For Motor Control Development
The Hartford
 
System Concept Simulation for Concurrent Engineering
System Concept Simulation for Concurrent EngineeringSystem Concept Simulation for Concurrent Engineering
System Concept Simulation for Concurrent Engineering
Finmeccanica
 
Abb matlab5650
Abb matlab5650Abb matlab5650
Abb matlab5650
Arjun Dada
 
System verilog important
System verilog importantSystem verilog important
System verilog important
elumalai7
 
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...ijsrd.com
 
Results of model-based testing in automotive
Results of model-based testing in automotiveResults of model-based testing in automotive
Results of model-based testing in automotive
Anthony Faucogney
 

What's hot (19)

Citadel Platform Architecture
Citadel Platform ArchitectureCitadel Platform Architecture
Citadel Platform Architecture
 
Advanced tech module - state monitoring
Advanced tech module  -  state monitoringAdvanced tech module  -  state monitoring
Advanced tech module - state monitoring
 
Formal Model Based Design of Control Software
Formal Model Based Design of Control SoftwareFormal Model Based Design of Control Software
Formal Model Based Design of Control Software
 
[Capella Day 2019] Model execution and system simulation in Capella
[Capella Day 2019] Model execution and system simulation in Capella[Capella Day 2019] Model execution and system simulation in Capella
[Capella Day 2019] Model execution and system simulation in Capella
 
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
Lot Completion Estimation Using Self-Configuring Equipment Model-based Applic...
 
RTI-CODES+ISSS-2012-Submission-1
RTI-CODES+ISSS-2012-Submission-1RTI-CODES+ISSS-2012-Submission-1
RTI-CODES+ISSS-2012-Submission-1
 
PRFC SysML 1.4
PRFC SysML 1.4PRFC SysML 1.4
PRFC SysML 1.4
 
safety assurence in process control
safety assurence in process controlsafety assurence in process control
safety assurence in process control
 
SysML for embedded system engineering - Academy Camp 2015
SysML for embedded system engineering - Academy Camp 2015SysML for embedded system engineering - Academy Camp 2015
SysML for embedded system engineering - Academy Camp 2015
 
Study of model predictive control using ni lab view
Study of model predictive control using ni lab viewStudy of model predictive control using ni lab view
Study of model predictive control using ni lab view
 
Binary obfuscation using signals
Binary obfuscation using signalsBinary obfuscation using signals
Binary obfuscation using signals
 
p850-ries
p850-riesp850-ries
p850-ries
 
Chap4
Chap4Chap4
Chap4
 
Model-Based Design For Motor Control Development
Model-Based Design For Motor Control DevelopmentModel-Based Design For Motor Control Development
Model-Based Design For Motor Control Development
 
System Concept Simulation for Concurrent Engineering
System Concept Simulation for Concurrent EngineeringSystem Concept Simulation for Concurrent Engineering
System Concept Simulation for Concurrent Engineering
 
Abb matlab5650
Abb matlab5650Abb matlab5650
Abb matlab5650
 
System verilog important
System verilog importantSystem verilog important
System verilog important
 
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
To Perform SIL And PIL Testing on Fast Dynamic System using Economical AVR Co...
 
Results of model-based testing in automotive
Results of model-based testing in automotiveResults of model-based testing in automotive
Results of model-based testing in automotive
 

Similar to CITADEL configuration and reconfiguration synthesis

CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
ijics
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
ijcisjournal
 
Chapter1 basic structure of computers
Chapter1  basic structure of computersChapter1  basic structure of computers
Chapter1 basic structure of computersjismymathew
 
ES-CH5.ppt
ES-CH5.pptES-CH5.ppt
ES-CH5.ppt
alaakaraja1
 
Mechatronics engineer
Mechatronics engineerMechatronics engineer
Mechatronics engineer
Samuel Narcisse
 
Basic structure of computers
Basic structure of computersBasic structure of computers
Basic structure of computersKumar
 
Basic structure of computers
Basic structure of computersBasic structure of computers
Basic structure of computersKumar
 
Track A-Compilation guiding and adjusting - IBM
Track A-Compilation guiding and adjusting - IBMTrack A-Compilation guiding and adjusting - IBM
Track A-Compilation guiding and adjusting - IBMchiportal
 
Compose in Theory
Compose in TheoryCompose in Theory
Compose in Theory
Garth Gilmour
 
Design of Real - Time Operating System Using Keil µVision Ide
Design of Real - Time Operating System Using Keil µVision IdeDesign of Real - Time Operating System Using Keil µVision Ide
Design of Real - Time Operating System Using Keil µVision Ide
iosrjce
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
Kamal Acharya
 
Taming event-driven software via formal verification
Taming event-driven software via formal verificationTaming event-driven software via formal verification
Taming event-driven software via formal verification
AdaCore
 
MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...
MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...
MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...
Masashi Shibata
 
Supporting Flight Test And Flight Matching
Supporting Flight Test And Flight MatchingSupporting Flight Test And Flight Matching
Supporting Flight Test And Flight Matching
j2aircraft
 
Portfolio control version sn_v5
Portfolio control version sn_v5Portfolio control version sn_v5
Portfolio control version sn_v5
Samuel Narcisse
 
Basic structure of computers by aniket bhute
Basic structure of computers by aniket bhuteBasic structure of computers by aniket bhute
Basic structure of computers by aniket bhute
Aniket Bhute
 

Similar to CITADEL configuration and reconfiguration synthesis (20)

resume
resumeresume
resume
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
 
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
CONCEPT OF OPERATIONS TO SYSTEM DESIGN AND DEVELOPMENT-AN INTEGRATED SYSTEM F...
 
Chapter1 basic structure of computers
Chapter1  basic structure of computersChapter1  basic structure of computers
Chapter1 basic structure of computers
 
ES-CH5.ppt
ES-CH5.pptES-CH5.ppt
ES-CH5.ppt
 
Mechatronics engineer
Mechatronics engineerMechatronics engineer
Mechatronics engineer
 
Ch1
Ch1Ch1
Ch1
 
Ch1
Ch1Ch1
Ch1
 
Basic structure of computers
Basic structure of computersBasic structure of computers
Basic structure of computers
 
Basic structure of computers
Basic structure of computersBasic structure of computers
Basic structure of computers
 
Track A-Compilation guiding and adjusting - IBM
Track A-Compilation guiding and adjusting - IBMTrack A-Compilation guiding and adjusting - IBM
Track A-Compilation guiding and adjusting - IBM
 
Compose in Theory
Compose in TheoryCompose in Theory
Compose in Theory
 
Design of Real - Time Operating System Using Keil µVision Ide
Design of Real - Time Operating System Using Keil µVision IdeDesign of Real - Time Operating System Using Keil µVision Ide
Design of Real - Time Operating System Using Keil µVision Ide
 
Pipelining and vector processing
Pipelining and vector processingPipelining and vector processing
Pipelining and vector processing
 
Taming event-driven software via formal verification
Taming event-driven software via formal verificationTaming event-driven software via formal verification
Taming event-driven software via formal verification
 
MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...
MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...
MLOps Case Studies: Building fast, scalable, and high-accuracy ML systems at ...
 
Supporting Flight Test And Flight Matching
Supporting Flight Test And Flight MatchingSupporting Flight Test And Flight Matching
Supporting Flight Test And Flight Matching
 
Portfolio control version sn_v5
Portfolio control version sn_v5Portfolio control version sn_v5
Portfolio control version sn_v5
 
Basic structure of computers by aniket bhute
Basic structure of computers by aniket bhuteBasic structure of computers by aniket bhute
Basic structure of computers by aniket bhute
 
PID2143641
PID2143641PID2143641
PID2143641
 

Recently uploaded

ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
Vijay Dialani, PhD
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
WENKENLI1
 
Runway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptxRunway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptx
SupreethSP4
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
AmarGB2
 
AP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specificAP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specific
BrazilAccount1
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
Kerry Sado
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
FluxPrime1
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
ydteq
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 

Recently uploaded (20)

ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
 
Runway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptxRunway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptx
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
 
AP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specificAP LAB PPT.pdf ap lab ppt no title specific
AP LAB PPT.pdf ap lab ppt no title specific
 
Hierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power SystemHierarchical Digital Twin of a Naval Power System
Hierarchical Digital Twin of a Naval Power System
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 

CITADEL configuration and reconfiguration synthesis

  • 1. CITADEL configuration and reconfiguration synthesis Univ. Grenoble Alpes Configuration Plane Training 1
  • 2.  Source: Université grenoble-Alpes (UGA)  Abstract: This material provides a thorough presentation of the CITADEL Reconfiguration Plane, hereafter denoted XP, from high-level design to low-level implementation and deployment on the CITADEL platform.  Learning outcome: Learn about the design, implementation and capabilities of the CITADEL Configuration plane.  Intended audience: System integrators  Pre-requisites:  MILS and Adaptive MILS  CITADEL Modeling Language (SLIM)  CITADEL platform (PikeOS, TSN)  Python and C languages  Language: English  Format: PDF slides  Expected workload: 2h Introduction Univ. Grenoble Alpes Configuration Plane Training 2
  • 3.  Overall organization  Role in the CITADEL framework  Interaction with other planes  Reconfig. Planner, Controller, Agent  Interactions and operation  Implementation and deployment  Usage and examples Outline 3Configuration Plane TrainingUniv. Grenoble Alpes
  • 4. Overall Organization 4Configuration Plane TrainingUniv. Grenoble Alpes
  • 5. Reconfiguration Plane Position (I) Configuration Plane Training 5Univ. Grenoble Alpes
  • 6.  In the CITADEL framework, the configuration plane (XP), plays an executive role which is to reconfigure the Adaptive MILS system.  Reconfiguration performed by XP covers mainly:  The MILS policy architecture: ● subjects, ● communication between subjects, and ● subjects deployment.  The MILS monitoring systems ● Monitors.  To achieve reconfiguration, XP interacts with other planes of the CITADEL framework, namely the Adaptation Plane (AP), the Monitoring Plane (MP), the Operational Plane (OP) and the Foundational Plane (FP) as shown in the next slide. Reconfiguration Plane Position (II) Univ. Grenoble Alpes Configuration Plane Training 6
  • 7. Interactions with other planes (I) 7Univ. Grenoble Alpes Configuration Plane Training
  • 8. Interactions with other planes (II) 8 Adaptation Plane (AP) 1- target configurationnotification 2- reconfiguration step notification 2- reconfiguration step notification Foundational (FP)/Operational Planes (OP) … Reconfiguration Plane (XP) Monitoring Plane (MP) Node 1 S1 Si … TSN Net. PikeOS Node M Si+1 SN … PikeOS 1. XP receives a target configuration from AP, i.e. the new system configuration to reach. 2. Based on that, XP issues reconfiguration commands to reconfigure MP and OP. 3. XP always expect a notification back from the reconfigured planes. Configuration Plane Training 4. It also notifies back AP. Univ. Grenoble Alpes
  • 9. Reconfiguration operation: overview 9 Configuration Plane Operational/Foundational Planes Curent intermediate Configuration Target intermediate Configuration … Intermediate Abstract Configurations Current Concrete Configuration … Small Step Small Steps Primitive Primitives Target Concrete Configuration …Primitives Current Architecture (SLIM Model + Parameter Vector1) Adaptation Plane Target Architecture (SLIM Model + Parameter Vector2) Big Step XP proceeds by refining a high-level reconfiguration objective (big step) into an intermediate plan (small steps) then into low-level primitives. Configuration Plane TrainingUniv. Grenoble Alpes
  • 10. Reconfiguration Planner, Controller, Agent 10 Interaction and operation Configuration Plane TrainingUniv. Grenoble Alpes
  • 11. Reconfiguration Plane Components Reconfiguration plan Constraints Target configuration Current Configuration Reconfiguration commands AdaptionPlane MonitorPlane Reconfiguration Planner Reconfiguration State Controller Notification Operational Plane Notification Low-level Reconfiguration PrimitivesNotification Configuration Change Agents Foundational Plane The figure shows the different components of XP, namely • The Planner, • The Controller, and • The Config. Change Agent, in addition to the interactions with the other planes. Notification Notification deployment 11Configuration Plane TrainingUniv. Grenoble Alpes
  • 12.  The Planner Is responsible for computing a reconfiguration plan given the target configuration sent by AP.  The Controller Is responsible to refine the high-level reconfiguration plan computed by the planner and to execute it by sending reconfiguration commands to the Configuration Change Agent and to MP.  The Configuration Change Agent Is responsible for reconfiguring FP/OP. It executes the appropriate low-level reconfiguration primitives (PikeOS and TSN network) upon receiving reconfiguration commands from the Controller. Components roles Univ. Grenoble Alpes Configuration Plane Training 12
  • 13.  Applies high-level reasoning to compute a reconfiguration plan that leads the system from its current configuration to the target configuration.  The current and target configurations received from AP are SLIM models. They are transformed into a graph representation.  The reconfiguration plan is a sequence of actions over graphs e.g., add/remove nodes and edges.  The constraints represents requirements such as • « always remove the node’s edges before removing the node ». • « always remove before add ».  A notification is sent back to AP to notify success or failure. Reconfiguration Planner Univ. Grenoble Alpes Configuration Plane Training 13 Reconfiguration plan Constraints Target configuration Reconfiguration Planner Notification AdaptionPlane Notification
  • 14.  Refines the reconfiguration plan generated by the planner and drives the reconfiguration execution.  It includes appropriate reconfiguration commands into the reconfiguration plan for monitors reconfiguration.  deployment information concern the subjects of the application and the configuration change agents.  Reconfiguration commands are sent accordingly to the monitoring plane and the config. change agents in each node.  A notification is sent back to the planner to notify success/failure. Reconfiguration Controller Univ. Grenoble Alpes Configuration Plane Training 14 Reconfiguration commands MonitorPlane Reconfiguration State Controller Notification Notification deployment Reconfiguration plan Notification
  • 15.  Maps high-level reconfiguration commands received from the controller to concrete reconfiguration primitives and executes them.  A Configuration Change Agent is deployed in each node of the distributed MILS platform.  Based on the primitive execution result, it notifies back the controller. Configuration Change Agent Univ. Grenoble Alpes Configuration Plane Training 15 Low-level Reconfiguration PrimitivesNotification Configuration Change Agents Reconfiguration commandsNotification
  • 16. Reconfiguration Planner, Controller, Agent 16 Implementation and deployment Configuration Plane TrainingUniv. Grenoble Alpes
  • 17.  The Configuration plane is designed as a back-end and a front-end  The back-end ● encompasses the Planner and the Controller, ● is fully implemented in Python. https://redmine.citadel- project.org/projects/citadel- framework/repository/show/Configuration- Plane/controller/trunk  The front-end ● contains different instances of config. change agents, ● is fully implemented in C, ● Relies on PikeOS and ElinOS libraries. Overall design Univ. Grenoble Alpes Configuration Plane Training 17
  • 18. Deployment Univ. Grenoble Alpes Configuration Plane Training 18 reconfiguration commands Foundational (FP)/Operational Planes (OP) … XP back-end Node 1 S1 Si … TSN Net. PikeOS Node M Si+1 SN … PikeOS Planner Controller Reconfig. planNotification XP front -end XP front -end Notification Notification  The XP back-end is to be deployed on the same node as the remaining CITADEL framework components. It is deployed as an ElinOS partition.  The front-end is deployed on the different nodes of MILS Platform. Each node of the system hosts a Configuration Change Agent (CCA).
  • 19.  The Configuration Change Agent (CCA) is further decomposed into two modules:  A communication agent ● Is responsible for interacting with the controller (front-end) and other components inside/outside the node, e.g. TSN partition, ● Is deployed as an ElinOS partition. https://redmine.citadel-project.org/projects/citadel-framework/repository/show/Configuration- Plane/agent/trunk/CommHandlerApp.eapp  A core agent ● Is responsible for executing PikeOS primitives, ● Is deployed as a native PikeOS partition, ● Requires abilities: read/write file system (eth0:dyn_reconf.conf), VM_AB_PART_SET_MOD https://redmine.citadel-project.org/projects/citadel-framework/repository/show/Configuration- Plane/agent/trunk/ReconfCoreAgent.p4app  Communication between the two agents is performed using PikeOS Queue ports. CCA implementation Univ. Grenoble Alpes Configuration Plane Training 19 Core Agent - PikeOS - XP back-end - ElinOS - Comm. Agent - ElinOS - out_ex in_ex Reconfiguration commands Notifications Qports XP Front-end
  • 20. Usage & examples Univ. Grenoble Alpes Configuration Plane Training 20
  • 21.  Back-end usage ./xp.py --ccas_deployment <CCAS deployment file> --subjects_deployment <subjects deployment file>  Requirements ● Python 2.7 ● NetworkX Python library ● CITADEL Framework ● Compass tool  Front-end usage  Communication agent Commagent [--master-port=PORT] [--interceptor- port=PORT]  Core agent ● Automatically started (PikeOS process) Usage Univ. Grenoble Alpes Configuration Plane Training 21
  • 22.  Subjects deployment file  provides information about all application’s subjects (running/parked).  Each line contains sid,pid,vca,vcb,ip,status,node  sid = application subject identifier (id)  pid = running partition identifier (number)  vca = virtual channel identifier (id) - connecting subject partition to virtual eth service  vcb = virtual channel identifier (id) - connectint virtual eth service to tsn partition  ip = ip address of the application subject (xxx.yyy.zzz.www)  status = initial subject status (UP | DOWN)  node = node identifier (id)  Information about the "tsn" partition are to be included in the same way.  Example of a valid description subject,partition,ch1,ch2,ip_addr,status,node hello,4,16,17,192.168.0.5,UP,N1 tsn,5,*,*,198.22.14.5,UP,N1  CCA deployment file  Provides information about all the deployed configuration change agents  Each line contains node,ip,port  node = node identifier (id)  ip = ip address of the CCA (xxx.yyy.zzz.www)  Port = port number of which the CCA listen to contorller commands (number)  Example of a valid description node;ip_addr;port N1;192.168.0.6;24000 Input files specification Univ. Grenoble Alpes Configuration Plane Training 22
  • 23. Example: Sender/Receiver Univ. Grenoble Alpes Configuration Plane Training 23 Current configuration Sender {nodes_1} Receiver {nodes_2} Target configuration Sender {nodes_2} Receiver {nodes_2} Move Sender To illustrate the reconfiguration steps, let’s consider the simple example depicted on the left. In the latter, the MILS policy architecture (application) is made of two subjects, namely the Sender and the Receiver. These are initially deployed respectively on node N1 and N2 of the MILS platform. The considered reconfiguration, is to move the Sender to N2 (because of a certain event, e.g. N1 is no more operational). The target configuration is thus as shown by the graph on the bottom. The code to run this example is provided under …
  • 24.  In this example, we have two nodes  nodes_1 and nodes_2  We will have tow Configuration Change Agents, one on each node.  Run the configuration change agents: ./commagent.exe --master-port 24000 ./commagent.exe --master-port 25000 Running XP components (Front-end) Univ. Grenoble Alpes Configuration Plane Training 24
  • 25.  To run the back-end use the following commands with the mentioned input files. ./$CITADEL_PATH/Configuration-Plane/controller/trunk/xp.py --ccas_deployment send-recv-netmon-ccas-deployment.csv --subjects_deployment send-recv-netmon-subject-deployment.csv  ccas deployment file node;ip_addr;port nodes__1;127.0.0.1;24000 nodes__2;127.0.0.1;25000  subjects deployment file subject,partition,ch1,ch2,ip_addr,status,node sender,4,1,2,192.168.0.5,UP,nodes__1 receiver,5,3,4,192.168.0.6,UP,nodes__2 sender,6,1,2,192.168.0.5,DOWN,nodes__2 receiver,7,3,4,192.168.0.6,DOWN,nodes__1 Running XP components (back-end) Univ. Grenoble Alpes Configuration Plane Training 25
  • 26. Running XP components Univ. Grenoble Alpes Configuration Plane Training 26 Configuration Change Agent on nodes_1 Configuration Change Agent on nodes_2 XP back-end Initialization
  • 27. Example: Sender/Receiver (Cont.) Univ. Grenoble Alpes Configuration Plane Training 27 Current configuration Sender {nodes_1} Receiver {nodes_2} Target configuration Sender {nodes_2} Receiver {nodes_2} Sender {nodes_1} Receiver {nodes_2} 1- Remove Sender->Receiver Receiver {nodes_2} 2- Remove Sender on N1 Sender {nodes_2} Receiver {nodes_2} 3- Start Sender on N2 4- Re-establish Sender->Receiver This reconfiguration plan is computed by the Planner component.
  • 28. Example: Sender/Receiver (Cont.) Univ. Grenoble Alpes Configuration Plane Training 28 Compute reconfiguration plan (abstract) Receive target configuration Initialization/receive initial configuration
  • 29. Example: Sender/Receiver (Cont.) Univ. Grenoble Alpes Configuration Plane Training 29 Current configuration Sender {nodes_1} Receiver {nodes_2} Target configuration Sender {nodes_2} Receiver {nodes_2} Sender {nodes_1} Receiver {nodes_2} 1.1- Remove Sender->Receiver Receiver {nodes_2} 2.1- Remove Sender on N1 Sender {nodes_2} Receiver {nodes_2} 3.0- Start Sender on N2 4.0- Re-establish Sender->Receiver 1.0- notify monitor (Remove Sender->Receiver) 2.0- notify monitor (Remove Sender on N1) 3.1- notify monitor (start Sender on N2) 4.1- notify monitor (establish Sender->receiver)
  • 30. Example: Sender/Receiver (Cont.) Univ. Grenoble Alpes Configuration Plane Training 30 Compute reconfiguration plan (concrete)
  • 31. Example: Sender/Receiver (Cont.) Univ. Grenoble Alpes Configuration Plane Training 31 Executing the reconfiguration plan