C7 Flashcards
De ce sincronizarea timpului este o provocare în sistemele distribuite?
Deoarece întârzierile de comunicare sunt finite, dar imprevizibile, iar ceasurile locale au rate de derivă (drifting rate) diferite.
Ce este relația de cauzalitate într-un sistem distribuit?
Relația care stabilește ordinea evenimentelor bazată pe dependențele cauzale dintre ele.
De ce ceasurile fizice nu sunt suficiente pentru captarea relațiilor cauzale?
Datorită întârzierilor de rețea și derivei (clock drift) ceasurilor, nu pot reflecta exact ordinea cauzală a evenimentelor.
Ce metode de sincronizare a ceasurilor există în sistemele distribuite?
Protocolul Cristian, algoritmul Berkeley și Protocolul de Timp în Rețea (NTP).
Cum funcționează protocolul Cristian pentru sincronizarea ceasurilor?
Estimează întârzierea folosind timpul dus-întors (RTT), fiind precis doar în rețele locale.
Ce este protocolul NTP și cum funcționează?
Service is provided by a network of servers located across the Internet. Variable drift rate, from 1 ms up to more than 10 ms.
Berkeley algorithm
Compute delay based on averaged RTTs between a master node and the
followers (or slaves). Can achieve a clock drift of 20-25 ms.
Ce sunt ceasurile logice într-un sistem distribuit?
Un mecanism care atribuie timestamp-uri evenimentelor pentru a respecta relația de precedență cauzală.
Care sunt proprietățile ceasurilor logice?
Dacă un eveniment precede altul cauzal, timestamp-ul primului este mai mic decât al celui de-al doilea.
Ce reguli asigură consistența ceasurilor logice?
Regula R1 (actualizare la fiecare eveniment local) și R2 (actualizare la primirea unui mesaj).
Cum poate fi implementat un sistem de ceasuri logice?
Prin structuri de date care mențin ceasuri locale și globale pentru a asigura o vedere consistentă a timpului.
Ce diferență există între concurența logică și cea fizică?
Concurența logică înseamnă că evenimentele nu se influențează reciproc, chiar dacă au loc la momente diferite.
Care sunt tipurile de timp logic utilizate în sistemele distribuite?
Timp scalar (Scalar Time), timp vectorial (Vector Time), timp matricial (Matrix Time), timp virtual (Virtual Time).
Ce reprezintă ceasurile scalare propuse de Lamport?
O metodă de ordonare totală a evenimentelor într-un sistem distribuit folosind un singur număr întreg pentru fiecare proces.
Ce reguli se aplică pentru actualizarea ceasurilor scalare?
R1: Incrementarea ceasului local înainte de orice eveniment.
R2: La recepționarea unui mesaj, ceasul local devine maxim între valoarea sa actuală și timestamp-ul mesajului.