monitoring decentralized specifications
Antoine El-Hokayem Yliès Falcone
- Univ. Grenoble Alpes, Inria, CNRS
Grenoble, France
monitoring decentralized specifications Antoine El-Hokayem Ylis - - PowerPoint PPT Presentation
monitoring decentralized specifications Antoine El-Hokayem Ylis Falcone Univ. Grenoble Alpes, Inria, CNRS Grenoble, France (Decentralized) Monitoring (Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions monitoring
Grenoble, France
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
Monitor specification run verdicts
1
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
2
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
2
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
2
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
2
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
2
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
3
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn AP1 APi APn
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn AP1 APi APn
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
c1 . . . ci . . . cn M1 . . . Mi . . . Mn AP1 APi APn Monitoring specifjcation over AP effjciently?
4
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
5
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
6
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
q0 q1 q2 thigh fan ∧ thigh ¬thigh ¬fan fan ∧ ¬thigh ⊤
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
q0 q1 q2 thigh fan ∧ thigh ¬thigh ¬fan fan ∧ ¬thigh ⊤
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
q0 q1 q2 thigh fan ∧ thigh ¬thigh ¬fan fan ∧ ¬thigh ⊤
7
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
8
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT)
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT) → Monitors that exchange their EHE find the same verdict
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT) → Monitors that exchange their EHE find the same verdict → Can monitor centralized specification shared with multiple monitors
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT) → Monitors that exchange their EHE find the same verdict → Can monitor centralized specification shared with multiple monitors
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT) → Monitors that exchange their EHE find the same verdict → Can monitor centralized specification shared with multiple monitors
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT) → Monitors that exchange their EHE find the same verdict → Can monitor centralized specification shared with multiple monitors
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
→ They find the same verdict
→ EHE is a state-based replicated data-type (CvRDT) → Monitors that exchange their EHE find the same verdict → Can monitor centralized specification shared with multiple monitors
→ We can assess algorithms by how they manipulate the EHE
9
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
10
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
10
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
10
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
10
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
δ
10
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
q0 q1 q2 thigh fan ∧ thigh ¬thigh ¬fan fan ∧ ¬thigh ⊤
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
q0 q1 q2 thigh fan ∧ thigh ¬thigh ¬fan fan ∧ ¬thigh ⊤ q00 A0 (Temp) q01 q02 thigh m1 ∧ thigh ¬thigh ¬m1 m1 ∧ ¬thigh ⊤ q10 q11 q12 A1 (Fan) fan ¬fan ⊤ ⊤
11
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!)
(?)
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!)
(?)
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!)
(?)
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?)
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) If Aj never reaches a final verdict we will not be able to monitor Ak (?) Monitorability: “From any state in Ak, we can reach a fjnal verdict”
12
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) The monitor handles encoding of AP and Memory
13
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
(!) The monitor handles encoding of AP and Memory
13
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
Design Instru- ment Execute Analyze Design Design a monitoring algorithm Instru- ment Create or re-use metrics. Metrics are automatically instrumented using AspectJ Execute Use THEMIS tools to execute
Analyze Measures are stored in a database for postmortem analysis
14
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
1 Map<Integer, ? extends Monitor> setup() { ֒ → 2 config.getSpec().put(”root”, 3 Convert.makeAutomataSpec( 4 config.getSpec().get(”root”))); 5 Map<Integer, Monitor> mons = new HashMap<Integer, Monitor>(); ֒ → 6 Integer i = 0; 7 for(Component comp : config.getComponents()) { ֒ → 8 MonMigrate mon = new MonMigrate(i); ֒ → 9 attachMonitor(comp, mon); 10 mons.put(i, mon); 11 i++; 12 } 13 return mons; 14 }
1 void monitor(int t, Memory<Atom> observations) 2 throws ReportVerdict, ExceptionStopMonitoring { 3 m.merge(observations); 4 if(receive()) isMonitoring = true; 5 if(isMonitoring) { 6 if(!observations.isEmpty()) 7 ehe.tick(); 8 boolean b = ehe.update(m, -1); 9 if(b) { 10 VerdictTimed v = ehe.scanVerdict(); 11 if(v.isFinal()) 12 throw new ReportVerdict(v.getVerdict(), t); ֒ → 13 ehe.dropResolved(); 14 } 15 int next = getNext(); 16 if(next != getID()) { 17 Representation toSend = ehe.sliceLive(); 18 send(next, new RepresentationPacket(toSend)); ֒ → 19 isMonitoring = false; 20 } 21 } 22 }
15
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
1 void setupRun(MonitoringAlgorithm alg) { 2
addMeasure(new Measure(”msg_num”,”Msgs”,0L,Measures.addLong));
3 } 4 after(Integer to, Message m) : Commons.sendMessage(to, m) { 5
update(”msg_num” , 1L);
6 }
16
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
17
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
m0 m1 m2 m3 m4 1 1 1 1
m0 m1 m2 m3 m4 1 2 3 4 5 EHE m0 m1 m2 m3 m4 2 1 1 1 Verdict(B2)
#Msgs and |Msg| are predicted on a per round basis
18
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
m0 m1 m2 m3 m4 1 1 1 1
m0 m1 m2 m3 m4 1 2 3 4 5 EHE m0 m1 m2 m3 m4 2 1 1 1 Verdict(B2)
#Msgs and |Msg| are predicted on a per round basis
18
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
m0 m1 m2 m3 m4 1 1 1 1
m0 m1 m2 m3 m4 1 2 3 4 5 EHE m0 m1 m2 m3 m4 2 1 1 1 Verdict(B2)
#Msgs and |Msg| are predicted on a per round basis
18
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
(Decent.) Monitoring EHE Decentralized Specifjcations THEMIS Conclusions
19
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!)
20
RW + Goals Experiments More Formal Details
(!) Unpredictable runtime behavior of rewriting
20
RW + Goals Experiments More Formal Details
(!) Unpredictable runtime behavior of rewriting → Hard to compare various strategies
20
RW + Goals Experiments More Formal Details
(!)
21
RW + Goals Experiments More Formal Details
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis)
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
+ Unreliable links (Monitors + System)
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
+ Unreliable links (Monitors + System) − 2k + 2 verdicts when resilience up to k failures
(!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
+ Unreliable links (Monitors + System) − 2k + 2 verdicts when resilience up to k failures
→ Determine consensus on a verdict in case of failures (!)
21
RW + Goals Experiments More Formal Details
+ More expressive than LTL + Predictable behavior − Tightly linked to specification (synthesis) − No monitor topology nor communication strategy
+ Unreliable links (Monitors + System) − 2k + 2 verdicts when resilience up to k failures
→ Determine consensus on a verdict in case of failures (!) All monitors check the same specifjcation
21
RW + Goals Experiments More Formal Details
22
RW + Goals Experiments More Formal Details
22
RW + Goals Experiments More Formal Details
22
RW + Goals Experiments More Formal Details
22
RW + Goals Experiments More Formal Details
22
RW + Goals Experiments More Formal Details
1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
# Components Average Maximum Delay Algorithm
Migration MigrationRR Orchestration
23
RW + Goals Experiments More Formal Details
2 3 3.0 3.5 4.0 4.5 5.0
# Components Average Number of Messages/Round Algorithm
Migration MigrationRR Orchestration
24
RW + Goals Experiments More Formal Details
200 300 400 500 3.0 3.5 4.0 4.5 5.0
# Components Average Data Transfered/Round Algorithm
Migration MigrationRR Orchestration
25
RW + Goals Experiments More Formal Details
26
RW + Goals Experiments More Formal Details
26
RW + Goals Experiments More Formal Details
26
RW + Goals Experiments More Formal Details
26
RW + Goals Experiments More Formal Details
26
RW + Goals Experiments More Formal Details
t∈[1,n]{memc(et, tst)}.
26
RW + Goals Experiments More Formal Details
n
c
c
26
RW + Goals Experiments More Formal Details
27
RW + Goals Experiments More Formal Details
27
RW + Goals Experiments More Formal Details
27
RW + Goals Experiments More Formal Details
27
RW + Goals Experiments More Formal Details
27