Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Distribuované systémy cvičení 3 Sequencer, sekvenční doručování, příčinné (kauzální) doručování Cvičení č.3 Ing. Jiří Ledvina, CSc.

Podobné prezentace


Prezentace na téma: "Distribuované systémy cvičení 3 Sequencer, sekvenční doručování, příčinné (kauzální) doručování Cvičení č.3 Ing. Jiří Ledvina, CSc."— Transkript prezentace:

1 Distribuované systémy cvičení 3 Sequencer, sekvenční doručování, příčinné (kauzální) doručování Cvičení č.3 Ing. Jiří Ledvina, CSc.

2 Sequencery2 Fixní sequencer Unicast-broadcast 1.Poslání zprávy sequenceru 2.Broadcast zprávy od sequenceru ke členům

3 Sequencery3 Fixní sequencer Broadcast-broadcast 1.Broadcast zprávy jednotlivým členům i sequenceru 2.Broadcast sekvenčního čísla všem členům

4 Sequencery4 Fixní sequencer Unicast-unicast-broadcast 1.Vyžádání si sekvenčního čísla od sequenceru 2.Poslání sekvenčního čísla sequencerem do uzlu 3.Broadcast zprávy od uzlu všem členům (podle pořadí)

5 Sequencery5 Přesunující se sequencer (rotující sequencer) Založen na stejném principu jako fixní sequencer Role sequenceru je přenášena mezi několika procesy Motivací je rozdělení zátěže Vysílač posílá požadavek všem sequencerům Sequencery si posílají pověření, obsahující pořasové číslo a všechny zprávy, které jsou zařazeny podle sekvenčních čísel Po přijetí tokenu sequencer přiřadí sekvenční číslo všem přijatým, ale nezařazeným zprávám Odešle všechny nově zařazené zprávy Opraví pověření a pošle ho dalšímu sequenceru. Obdoba varianty broadcast-broadcast

6 Sequencery6 Přesunující se sequencer (rotující sequencer)

7 Sequencery7 Sekvenční doručování Algoritmy s předáváním oprávnění - broadcast Vysílače mohou vysílat jen tehdy, pokud k tomu mají pověření Často založeny na logickém kruhu

8 Sequencery8 Sekvenční doručování Dohoda na straně příjemců Vysílač vyšle broadcast zprávu všem příjemcům Každý příjemce přiřadí zprávě lokálně časovou značku Pošle časovou značku všem příjemcům Příjemce po přijetí časové značky ode všech sousedů vypočte maximum a přiřadí je zprávě Zprávy jsou zpracovány podle časových značek vzestupně

9 Sequencery9 Definice kauzality (příčinnost) Jestliže a a b jsou dvě události téhož procesu a a předchází b, pak říkáme, že a nastalo před b. Jestliže a je proces posílající zprávu a tato zpráva je přijata procesem b, pak říkáme, že a nastalo před b Jestliže a nastalo před b a b nastalo před c, pak a nastalo před c relace „nastalo před“ se označuje symbolem → (a → b) Relace → je nereflexivní, asymetrická a tranzitivní, tj. striktně částečně uspořádaná Relace → je také označována jako relace kauzality nebo potenciální kauzality

10 Sequencery10 Logický čas Pro události a a b platí jestliže a → b pak C(a) < C(b) Pravidla pro manipulaci s logickými hodinami Každý proces inkrementuje C mezi dvěma událostmi Jestliže událost a je odeslání zprávy m, pak zpráva m obsahuje časovou značku C(a) Jestliže proces přijme zprávu m se značkou C(a) jako událost C(b), pak své logické hodiny nastaví na hodnotu o 1 větší než je maximum C(a) a C(b).

11 Sequencery11 Techniky uspořádání podle příčinnosti Historie příčinnosti Zahrnutí všech událostí které danou událost předcházejí

12 Sequencery12 Techniky uspořádání podle příčinnosti Lamportovy časové značky Není dostatečné pro určení příčinnosti Vektorové časové značky Rozlišuje události na Konkurentní Příčinně závislé Pokud proces a přijme zprávu od procesu b, pak C(b)++ C(i) = max(C(i), M(i); pro b <> i

13 Sequencery13 Porušení kauzality (příčinnosti)

14 Sequencery14 Kauzální doručování broadcast zpráv Stejný časový vektor pro všechny příjemce


Stáhnout ppt "Distribuované systémy cvičení 3 Sequencer, sekvenční doručování, příčinné (kauzální) doručování Cvičení č.3 Ing. Jiří Ledvina, CSc."

Podobné prezentace


Reklamy Google