especificação de um mecanismo autonômico em csp adalberto r. sampaio junior doutorado –...
TRANSCRIPT
![Page 1: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/1.jpg)
Especificação de um Mecanismo Autonômico
em CSPAdalberto R. Sampaio Junior
Doutorado – Cin/UFPE
![Page 2: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/2.jpg)
2
Ambiente de execução do sistema
S = state?i -> signal!i -> ( next -> S [] execute?x -> Sidx(x) )Sidx(i) = state.i -> signal!i -> execute?x -> Sidx(x) )
![Page 3: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/3.jpg)
3
Sistemas simulados
S1: não determinístico
![Page 4: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/4.jpg)
4
Sistemas simulados
S1: determinísticoEstados válidos: 1, 2, 3, 5
![Page 5: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/5.jpg)
5
Sistemas simulados
S3: determinísticoEstados válidos: 1, 2
![Page 6: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/6.jpg)
6
Sistemas simulados
S4: determinísticoEstados válidos: 1, 5,3,2
![Page 7: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/7.jpg)
7
Verificação de Traces
• Foi verificado se o ambiente e execução S poderia executar os sistemas S1, S2, S3, S4.• Traces• S \{|execute, next|} [T= S1• S \{|execute, next|} [T= S2• S \{|execute, next|} [T= S3• S \{|execute, next|} [T= S4
![Page 8: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/8.jpg)
8
Mecanismo Autonômico
• Modelado com base na arquitetura Mape-K proposta pela IBM.• Quatro processos:• Monitor;• Analisador;• Planejador;• Executor;
• Uma base de conhecimento
![Page 9: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/9.jpg)
9
Mecanismo Autonômico
• Monitor
check(n) = {s | s <- inter({sym.n},SYMPTOMS), member(sym.n,SYMPTOMS)}Monitor = signal?s -> monitor!s -> if empty(check(s)) then
next -> Monitor else symptom_detect!head(seq(check(s))) -> Monitor
![Page 10: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/10.jpg)
10
Mecanismo Autonômico
• Analisador
request_change(n) = mapLookup(CHANGES,n)Analizer = symptom_detect?s -> if member(s, SYMPTOMS) then
change_plan!request_change(s) -> Analizer else Analizer
![Page 11: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/11.jpg)
11
Mecanismo Autonômico
• Planejador
Planner = change_plan?cp -> (mapMember(ACTIONS, cp)) & apply!mapLookup(ACTIONS,cp) -> Planner
![Page 12: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/12.jpg)
12
Mecanismo Autonômico
• Executor
Executor = apply?cp -> execute!cp -> Executor
![Page 13: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/13.jpg)
13
Mecanismo Autonômico
Autonomic = ( ( Monitor [|{|symptom_detect|}|] Analizer ) [|{|change_plan|}|] Planner) [|{|apply|}|] Executor
![Page 14: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/14.jpg)
14
Mecanismo Autonômico
• Base de conhecimento---------------Knowledge Base----------------- S2--SYMPTOMS = {sym.2, sym.3}--CHANGES = (| sym.2 => change.1, sym.3 => change.2 |)--ACTIONS = (| change.1 => 3, change.2 => 5 |)
-- S3--SYMPTOMS = {sym.2}--CHANGES = (| sym.2 => change.1 |)--ACTIONS = (| change.1 => 1 |)
-- S4SYMPTOMS = {sym.1, sym.2, sym.3, sym.5}CHANGES = (| sym.1 => change.1, sym.2 => change.2, sym.3 => change.3, sym.5 => change.4 |)ACTIONS = (| change.1 => 5, change.2 => 1, change.3 => 2, change.4 => 3 |)---------------end knowledge Base---------------
![Page 15: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/15.jpg)
15
Execução do Sistema de Forma AutonômicaAu = S [|{|signal, execute, next|}|] Autonomic• Propriedades verificadas
• assert Au :[deadlock free]• assert Au :[deterministic]• assert Au :[divergence free]• assert S \{|execute, next|} [T= S1• assert S \{|execute, next|} [T= S2• assert S \{|execute, next|} [T= S3• assert S \{|execute, next|} [T= S4• TO_HIDE = {|symptom_detect, change_plan, apply, next, execute, monitor|}• assert Au \ TO_HIDE [T= S1• assert Au \ TO_HIDE [T= S2• assert Au \ TO_HIDE [T= S3• assert Au \ TO_HIDE [T= S4
![Page 16: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/16.jpg)
16
Execução do Sistema de Forma Autonômica--
-- monitor.[n]
-- execute.[m]
A(n,m) = monitor.n -> execute.m -> A(n,m)
B(m,n) = execute.m -> monitor.n -> B(m,n)
assert Autonomic \ {|signal, symptom_detect, change_plan, apply|} [T= A(3,4)
assert Autonomic \ {|signal, symptom_detect, change_plan, apply|} [T= B(4,3)
![Page 17: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/17.jpg)
17
Refinamento [FD=
---------------Centralized Monitor----------------- deterministic-- Monitorcheck(n) = {s | s <- inter({sym.n},SYMPTOMS), member(sym.n,SYMPTOMS)}Monitor = signal?s -> monitor!s -> if empty(check(s)) then next -> Monitor else symptom_detect!head(seq(check(s))) -> Monitor-------------------------------------------------
---------------Distributed Monitor---------------Non deterministic-- Monitor M(i) = sense?s -> if s == i then (signal.s -> monitor!s -> if empty (check(s)) then next -> M(i) else symptom_detect!head(seq(check(s))) -> M(i) ) else M(i)MMM = ||| i : STATES @ M(i)
assert MMM \ {|sense|} [T= Monitorassert MMM \ {|sense|} [FD= Monitor-------------------------------------------------
![Page 18: Especificação de um Mecanismo Autonômico em CSP Adalberto R. Sampaio Junior Doutorado – Cin/UFPE](https://reader036.vdocuments.pub/reader036/viewer/2022062404/552fc15f497959413d8e7860/html5/thumbnails/18.jpg)
18
Obrigado!