Lesson 5 Flashcards
Was sind die zwei Arten der Synchronisation in verteilten Systemen?
Prozesssynchronisation und Datensynchronisation. Der Fokus liegt auf der Prozesssynchronisation, bei der mehrere Prozesse in einer bestimmten Reihenfolge agieren.
Was ist Prozesssynchronisation?
Prozesssynchronisation stellt sicher, dass mehrere Prozesse in einer bestimmten chronologischen Reihenfolge agieren.
Welche Herausforderungen gibt es bei der Zeit in verteilten Systemen?
Jeder Knoten hat seine eigene Uhr, was zu Clock Skew (Zeitunterschiede) und Clock Drift (unterschiedliches Tempo der Uhren) führt.
Was ist Clock Skew?
Clock Skew bezeichnet die Zeitdifferenz zwischen den Uhren der Knoten in einem verteilten System.
Was ist Clock Drift?
Clock Drift ist die Abweichung des Tempos, mit dem eine Uhr im Vergleich zu einer anderen Uhr läuft, oft durch Herstellertoleranzen oder Umwelteinflüsse verursacht.
Was ist interne Synchronisation in einem verteilten System?
Interne Synchronisation hält die Zeitdifferenz zwischen den Uhren aller Knoten innerhalb eines Systems unter einer festgelegten Grenze (Präzision π).
Was ist externe Synchronisation in einem verteilten System?
Externe Synchronisation stellt sicher, dass die Uhren eines Systems innerhalb einer bestimmten Grenze (Genauigkeit α) mit einer externen Referenzzeit wie UTC übereinstimmen.
Was ist das Netzwerkzeitprotokoll (NTP)?
NTP ist ein Protokoll zur Zeitsynchronisation, das eine hierarchische Struktur von Zeitservern verwendet, um die Uhren in einem Netzwerk zu synchronisieren.
Was ist eine Stratum-Hierarchie in NTP?
NTP verwendet Stratum-Ebenen, wobei Stratum 0 die Referenzuhren (z.B. Atomuhren) und höhere Strata Server beschreiben, die von Servern niedrigerer Strata synchronisiert werden.
Was sind die Herausforderungen durch Netzwerklatenz in NTP?
Netzwerklatenz führt dazu, dass die empfangene Zeit möglicherweise nicht exakt ist, da die Übertragungszeit zwischen Client und Server nicht genau vorhergesagt werden kann.
Was sind logische Uhren?
Logische Uhren sind Uhren, die keine tatsächliche Zeit messen, sondern eine chronologisch korrekte Reihenfolge von Ereignissen durch monoton wachsende Zähler bereitstellen.
Was ist Lamport’s logische Uhr?
Lamport’s logische Uhr ist ein Algorithmus, der Ereignisse in einem verteilten System in eine Happens-Before-Reihenfolge bringt, ohne eine absolute Zeit zu verwenden.
Was ist ein Token-basiertes Mutual Exclusion Verfahren?
Token-basierte Algorithmen verwenden ein spezielles Token, das zwischen Knoten weitergegeben wird. Nur der Knoten mit dem Token kann auf eine gemeinsame Ressource zugreifen.
Was ist ein Token-Ring-Algorithmus?
Ein einfacher Token-basierter Algorithmus, bei dem ein Token in einem logischen Ring von Knoten zirkuliert und der Besitzer des Tokens auf gemeinsame Ressourcen zugreifen darf.
Was ist ein Erlaubnis-basiertes Mutual Exclusion Verfahren?
In Erlaubnis-basierten Algorithmen müssen Knoten um Erlaubnis bitten, bevor sie auf eine Ressource zugreifen dürfen. Erlaubnis wird nur einem Knoten zur gleichen Zeit erteilt.
Wie funktioniert der zentrale Koordinator-Ansatz im Mutual Exclusion?
Ein Knoten wird zum Koordinator gewählt, der alle Erlaubnisanfragen verwaltet und sicherstellt, dass nur ein Knoten zur gleichen Zeit Zugriff auf die Ressource erhält.
Wie funktioniert der verteilte Ansatz im Mutual Exclusion mit Lamport’s Uhr?
Alle Knoten fragen um Erlaubnis bei allen anderen Knoten. Der Knoten mit der ältesten Anfrage (basierend auf Lamport’s Uhr) erhält die Erlaubnis.
Was ist der Bully-Algorithmus?
Der Bully-Algorithmus ist ein Wahlalgorithmus, bei dem ein Knoten mit der höchsten ID gewählt wird, um eine besondere Rolle zu übernehmen, nachdem der bisherige Knoten ausfällt.
Wie funktioniert der Wahlprozess im Bully-Algorithmus?
Ein Knoten sendet eine ELECTION-Nachricht an Knoten mit höheren IDs. Falls niemand antwortet, gewinnt der Knoten die Wahl. Andernfalls übernimmt ein höherer Knoten.
Was ist der Ring-basierte Wahlalgorithmus?
Ein Wahlalgorithmus, bei dem die Knoten in einem logischen Ring angeordnet sind. Die Wahlnachricht wird im Ring weitergereicht, bis der Knoten mit der höchsten ID gewählt ist.
Was ist die Epoch Time?
Die Epoch Time ist eine Zeitdarstellung, die angibt, wie viele Sekunden seit einem festen Zeitpunkt in der Vergangenheit vergangen sind.
Was ist die Bedeutung des Begriffs Epoch in verteilten Systemen?
Der Begriff Epoch bezeichnet den festen Zeitpunkt in der Vergangenheit, ab dem die Zeit gezählt wird.
Wie wird Datum und Zeit in Unix-Systemen dargestellt?
In Unix-Systemen wird das Datum und die Zeit als Anzahl der Sekunden seit Mitternacht am 1. Januar 1970 UTC dargestellt.
Was ist interne Synchronisation in einem verteilten System?
Interne Synchronisation bedeutet, dass die Uhren aller Knoten im System synchronisiert werden, sodass der Zeitunterschied zwischen ihnen eine bestimmte Grenze nicht überschreitet.
Was ist externe Synchronisation in einem verteilten System?
Externe Synchronisation bedeutet, dass die Uhren der Knoten mit einer externen Referenzzeit (z.B. UTC) synchronisiert werden, sodass sie innerhalb einer bestimmten Genauigkeit liegen.