adl approach to performance modelling of fault-tolerant

44
Wst ˛ ep Motywacja Stochatyczna algebra procesów Modelowanie awarii ezyk PODSAL Podsumowanie ADL approach to performance modelling of fault-tolerant distributed systems Dariusz Dwornikowski Instytut Informatyki Politechnika Pozna´ nska Pozna´ n, 7/6/2011 r. Dariusz Dwornikowski Instytut InformatykiPolitechnika Pozna´ nska ADL approach to performance modelling of fault-tolerant distributed systems

Upload: others

Post on 05-Nov-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

ADL approach to performance modelling of fault-tolerantdistributed systems

Dariusz Dwornikowski

Instytut InformatykiPolitechnika Poznanska

Poznan, 7/6/2011 r.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 2: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Plan prezentacji

1 Motywacja

2 Stochatyczna algebra procesów

3 Modelowanie awarii

4 Jezyk PODSAL

5 Podsumowanie

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 3: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Szacowanie wydajnosci systemów rozproszonych

Spełnianie wymagan uzytkowników(SLA, QoS)

W systemach usługowych przełozeniena zysk (SOA, Cloud)

Wpływ na poprawnosc działania

Mniej ustepstw na innych waznychpolach (bezpieczenstwo,niezawodnosc)

Oszczednosc energii (mniej maszyn =mniej pradu)

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 4: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Jak szacowac wydajnosc

Pomiaryinwazyjnewymagaja prototypu lub działajacego systemutrudnosc uogólnienianie zawsze mozliwe

Symulacjeczasochłonne (przygotowanie symulatora)słabo rozszerzalnewymagajace zasobów infrastrukturalnych

Modelowanie za pomoca metod formalnych

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 5: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Metody formalne w szacowaniu wydajnosci

Gdy pomiary nie sa mozliwe.

Gdy pomiar ma istotny wpływ na poprawnosc i wydajnosc.

Gdy interesuje nas cos wiecej niz sama wydajnosc (poprawnosc, zachowanie).

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 6: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Metody formalne w szacowaniu wydajnosci

Modele Markova

Czasowe i stochastyczne sieci PetriegoTime Petri Nets, Deterministic Time Petri Nets, Stochastic Timed Petri Nets, Generalized Stochastic Petri Nets, . . .

Automaty czasowe

Sieci automatów stochastycznychStochastic Automata Networks

Teoria kolejekKolejki, Sieci kolejkujace, . . .

Stochastyczne algebry procesów (SPA)(M)TIPP, EMPA, Stochastic π − calculus, GSMPA, IMC, Modest, IGSMP

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 7: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Stochastyczna algebra procesów

Zalety:

Prostota (ang. parsimonous)

Kompozycyjnosc

Wsparcie dla modelowania współbieznosci

Silna podstawa formalna

Behawioralizm i wydajnosc

Duze modele przedstawione w kompaktowy sposób

Wady:

Eksplozja przestrzeni stanów

Dziedzina probabilistyczna

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 8: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA (Performance Evaluation Process Algebra)

PEPA jest stochastyczna algebra procesów, stworzona przez Jane Hillston, dla którejmatematyczna podstawa jest łancuch Markova z czasem ciagłym – CTMC(ang. Continuous Time Markov Chain).

PEPA ukierunkowana jest na szacowanie wydajnosci, jednoczesnie nie tracac cechtradycyjnych algebr procesów (relacje równowaznosci, behawioralizm, analizaosiagalnosci, weryfikacja modelowa).

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 9: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Rozwiazywanie modeli

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 10: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA

W PEPA podstawowa jednostka abstrakcji sa komponenty, które za pomocaoperatorów łaczone sa w modele.

Komponenty angazuja sie w aktywnosci, scharakteryzowane przez typ oraz tempo(ang. activity rate), z jakim przebiegaja.

Formalnie aktywnosc mozna opisac jako dwójke (α, r), gdzie α jest typem aktywnosci(ang. action type), a r jest tempem (ang. activity rate).

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 11: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA

Z kazda aktywnoscia skojarzona jest zmienna losowa o ujemnym rozkładziewykładniczym 1− e−λ∗t .

Tempo wykonywania aktywnosci r jest równe parametrowi λ w rozkładziewykładniczym.

Oznacza to, ze dana aktywnosc wykonuje sie srednio λ−1 jednostek czasu.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 12: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Ograniczenia

Aby łancuch Markova posiadał rozwiazanie stanu ustalonego, modele PEPA muszabyc powracajace.

Oznacza to, ze w modelu nie moga istniec komponenty z aktywnosciamiprowadzacymi do stanów bez “wyjscia“.

Nieformalnie, gdy model osiagnie stan, w którym ma do wyboru dwie sciezkizachowan, to którejkolwiek nie wybierze, musi w koncu powrócic do tego samegomiejsca.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 13: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA

S def= (α, r).P

Proces S wykonuje aktywnosc typu α w tempie r , po czym zachowuje sie jak proces P.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 14: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 15: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 16: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 17: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 18: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 19: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 20: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

PEPA operatory

PEPA definiuje zbiór operatorów, za pomoca których mozliwe jest wyrazanie całychsystemów.

Stała (ang. constant) S def= P, pozwala na nazywanie komponentów. Komponentowi S

przypisujemy zachowanie komponentu P.

Prefiks (ang. prefix) (α, r).P, komponent (α, r).P wykonuje czynnosc (α, r), po czymzachowuje sie jak komponent P

Wybór (ang. choice) P1 + P2, operator probabilistycznego wyboru opisujewspółzawodnictwo pomiedzy komponentami.

Kooperacja (ang. cooperation) P1 BCL P2 pozwala na synchronizacje pomiedzykomponentami na aktywnosciach ze zbioru L.

Kompozycja równoległa (ang. parallel composition) P1||P2, procesy działaja zupełnieniezaleznie, nie ma pomiedzy nimi kooperacji, ani współzawodnictwa

Ukrywanie, abstrakcja (ang. hiding) P1/{χ}, aktywnosc α jest dostepna jedynie dlaprocesu P1,staje sie jego wewnetrzna aktywnoscia lokalna τ ,niewidoczna dla obserwatora zewnetrznego.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 21: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Przykład modelu

Komponent Consumer cyklicznie ubiega sie o zasób Resource w celu jego uzycia.Reprezentowane jest to przez typ współdzielonej akcji use.

Consumer def= (use, r1).(task , r2).Consumer

Resource def= (use, r3).(update, r4).Resource

System def= Consumer BC

useResource

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 22: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Algebry stochastyczne dla systemów odpornych na awarie

Dotychczasowe badania i literatura abstrahowały od modelowania awarii.

Tworzone modele i metody nie były zatem przystajace do rzeczywistosci, poniewazawarii nie mozna wykluczyc (maja one wpływ na wydajnosc).

Ze wzgledu na charakter algebr stochastycznych, reprezentacja w nich awarii nie jesttrywialne.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 23: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Modelowanie awarii w algebrach stochastycznych

Problemy:

Inny poziom abstrakcji (proces kontra stan)

Wieksza dokładnosc (stany, tranzycje, zachowania)

Brak semantyki

Wymóg istnienia rozwiazania stanu ustalonego

Eksplozja stanów

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 24: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Typy awarii w systemach rozproszonych

Załamania (ang. crash-stop)proces ulega awarii w chwili t i nigdy niewiecej nie wykonuje zadnej akcji

Zaniechania (ang. omission)pewne komunikaty sa pomijane przezproces

Awarie odtwarzalne (ang. crash-recovery)proces ulega awarii, ale po jakims czasiesie podnosi

Awarie dowolne (ang. arbitrary)dowolne inne, np. przekłamania, ataki,losowe zachowanie

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 25: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Modelowanie awarii w algebrach stochastycznych

Awaria ma nature probabilistyczna — moze sie zdarzyc lub nie.

Naturalnym jest wiec modelowanie awarii za pomoca operatora choice.

Model procesu ulegajacego awarii przedstawia sie zatem nastepujaco:

C def= P + F

gdzie P jest komponentem awaryjnym, a F komponentem awarii

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 26: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Awarie odtwarzalne

Awarie odtwarzalne sa najbardziej interesujace, jako ze posiadaja powracajaca nature.Ich model w SPA jest zatem intuicyjny.

Przykład awarii odtwarzalnej

Process def= (dowork , d1).Process1 + (fail, f1).ProcessFail

Process1def= (sleep, s1).Process + (fail, f1).ProcessFail1

ProcessFaildef= (recover , r1).Process

ProcessFail1def= (recover , r1).Process1

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 27: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Załamania

Awarie typu załamania nie sa mozliwe do bezposredniego zamodelowania w PEPA.

Oznaczałoby to, ze musi istniec operator terminacji (ang. deadlock, oznaczany 0,STOP).

Skutkuje to w braku rozwiazania stanu ustalonego (stany absorbujace).

Przykład załamania z terminacja

Process def= (work , r1).Process + (fail, f1).STOP

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 28: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Załamania

Ratunkiem jest traktowanie załamania jako szczególnego przypadku awariiodtwarzalnej.

Przykład załamania typu restart

Process def= (dowork , d1).Process1 + (fail, f1).ProcessFail

Process1def= (sleep, s1).Process + (fail, f1).ProcessFail

ProcessFaildef= (restart , r1).Process

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 29: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Załamania

Sytuacja gdzie załamanie moze zostac zamodelowane nie wprost sa modelesystemów z replikacja.

Tam jestesmy zainteresowani jaki wpływ na wydajnosc moze miec znikniecie jednego zN identycznych komponentów z systemu.

Metoda modelowania moze byc rozwiazanie kilku wersji modelu, za kazdym razem zinna liczba komponentów obecnych w systemie.

Przykład równania systemu

Client def= . . .

Server def= . . .

Client[M] BCconnect

Server [N]

Client[M] BCconnect

Server [N − 2]

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 30: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Zaniechania

Poprzednie typy awarii mogły byc wyrazone czysto behawioralnie (stany, tranzycje).

Zaniechanie plasuje sie poziom wyzej — nadaje znaczenie czesci procesu (wysyłanie,odbieranie, kanał).

Z punktu widzenia behawioralnego jest równa awariom odtwarzalnym.

Jednakze jej automatyczne modelowanie nie jest mozliwe bez narzucenia semantykitranzycjom i stanom.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 31: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Zaniechania

Przykład zaniechania w procesie

Process def= (send , d1).Process1 + (omit1, o1).Process

Process1def= (receive, s1).Process + (omit2, o2).Process1

Przykład zaniechania w kanale

Sender def= (send , s0).(prepare, p1).Process

Receiver def= (receive, r0).(compute, c1).Receiver

Channel def= (send , s1).Channel1 + (omit1, o1).Channel

Channel1def= (propagate, p1).(receive, r1).Channel + (omit2, o2).Channel

Sender BCsend

Channel BCreceive

Receiver

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 32: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Problem badawczy

Automatyczne modelowanie awarii ukierunkowane na szacowanie wydajnosci.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 33: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Potencjalne rozwiazania problemu

Istnieja trzy podejscia do rozwiazania problemu:

Rozszerzyc algebre procesów (nowe operatory) NIE

Rozszerzyc narzedzi modelowania NIE

Wzniesc sie na wyzszy poziom abstrakcji — jezyk ADL TAK

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 34: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Potencjalne rozwiazania problemu

Istnieja trzy podejscia do rozwiazania problemu:

Rozszerzyc algebre procesów (nowe operatory) NIE

Rozszerzyc narzedzi modelowania NIE

Wzniesc sie na wyzszy poziom abstrakcji — jezyk ADL TAK

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 35: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Potencjalne rozwiazania problemu

Istnieja trzy podejscia do rozwiazania problemu:

Rozszerzyc algebre procesów (nowe operatory) NIE

Rozszerzyc narzedzi modelowania NIE

Wzniesc sie na wyzszy poziom abstrakcji — jezyk ADL TAK

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 36: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Jezyk definicji architektury zorientowany na systemy odporne na awarie

Jezyki ADL (ang. Architectural Description Language) to jezyki ukierunkowane namodelowanie architektur.

Charakteryzuja sie:

Hierarchicznoscia

Wystepowaniem łaczników (ang. connectors) i komponentów (ang. components)

Wbudowane paradygmaty komunikacji (porty, potoki, bufory, gniazda)

Wsparcie dla paradygmatów architektonicznych

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 37: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Jezyk definicji architektury zorientowany na systemy odporne na awarie

Istniejace jezyki:

ACME

Rapide

Aesop

Wright

AEmilia

Meta-H

C2

Unicon

xADL

Wady istniejacych rozwiazan:

Brak wsparcia dla szacowaniawydajnosci

Nieczytelne i skomplikowane

Zbyt ukierunkowane dziedzinowo

Zbyt ogólne

Brak lub słabe wsparcie dla opisówbehawioralnych

Brak lub słabe wsparcie narzedzi

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 38: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Jezyk PODSAL

PODSAL (Performance Oriented Distributed Systems Architectural Language)

Załozenia:

Czytelny i prosty

Wsparcie dla rozproszonych systemów odpornych na awarie

Mozliwosc wsparcia dla róznych metod formalnych (PEPA, CTMC)

Rozszerzalnosc

Rozproszony model narzedzi

Wsparcie dla przetwarzania maszynowego

Wsparcie dla metod weryfikacji modelowej (ang. model checking)

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 39: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Koncepcja narzedzi jezyka

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 40: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Gramatyka PODSAL

import <MODULE NAME>;

component <COMPONENT NAME> *extends <COMPONENT NAME> {

*behaviour {<BEHAVIORAL DESC.>

}

*failure {type: crash-recovery | crash-stop | omission;attach: all | <LIST>;

*behaviuor {<BEHAVIORAL DESC.>

}}

*meta {parameter <PARAM NAME> = <VALUE>*;

}}

connection <CONNECTION NAME> (component <COMPONENT NAME>*,..., actionset <ACTIONSET NAME>) {glue {

<GLUE DEFINITION>;}

}

model instance <INSTANCE NAME> {meta {

<MODULE NAME> {<NAME>=<VALUE>*;

}}<COMPONENT NAME>=<NUMBER>*;

<CONNECTION NAME>(<COMPONENT NAME>*, {<ACTION>*});}

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 41: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Przykład modelu w PODSALModel bez awarii

Model1.adl

import pepa;

component Process {bahaviour {

use->task;}

}

component Resource {behaviour {body {

use->update;}

}}

connection Usage (component A, component B, actionset c) {glue {A <c> B;

}}

model instance ProcessResource {meta {pepa {Process.use.rate=exp(10);Process.task.rate=exp(10);Resource.use.rate=exp(20);Resource.update.rate=exp(30);

}}connect Usage(Process, Resource, {use});Process.count=10;Resource.count=20;

}

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 42: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Przykład modelu w PODSALModel z awariami i dziedziczeniem

Model2.adl

import pepa;import model1.adl;

component Process {bahaviour {

use->task;}

}

component ResourceFailingextends Resource {

failure {type: crash-recovery;attach: all;bahaviour {

fail->recover}

}

connection Usage (component A, component B, actionset c) {glue {A <c> B;

}}

model instance ProcessResourceFailures {meta {pepa {Process.use.rate = exp(10);Process.task.rate = exp(10);Resource.use.rate = exp(20);Resource.update.rate = exp(30);Resource.failure.fail.rate = exp(345);Resource.failure.recover.rate = exp(77);

}}connect Usage(Process, Resource, {use});Process.count = 10;Resource.count = 20;

}

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 43: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Podsumowanie

Przedstawiono:

Wprowadzenie do algebr stochastycznych na przykładzie PEPA

Propozycje modelowania awarii w algebrach stochastycznych

Wstepna koncepcje jezyka PODSAL

Dalszy kierunek badan:

Sfinalizowanie pierwszej wersji jezyka

Implementacja translatora do algebry PEPA

Standardowa biblioteka jezyka (detektory awarii, kanały, standardoweparadygmaty komunikacji)

Metody weryfikacji translacji modeli

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems

Page 44: ADL approach to performance modelling of fault-tolerant

Wstep Motywacja Stochatyczna algebra procesów Modelowanie awarii Jezyk PODSAL Podsumowanie

Dziekuje za uwage.

Dariusz Dwornikowski Instytut InformatykiPolitechnika Poznanska

ADL approach to performance modelling of fault-tolerant distributed systems