Elementare Systemkomponenten:

Ähnliche Dokumente
Elementare Systemkomponenten:

Verteilte Algorithmen. Zeitsynchronisation (Time Service) Zustandsalgorithmen

Verteilte Algorithmen

Verteilte Systeme - 3. Übung

Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme NTP) Verteilte Systeme, Sommersemester 1999 Folie 4.2

Grundlagen verteilter Systeme

Kommunikation in drahtlosen Sensornetzen

Grundlagen verteilter Systeme

Fakultät für Informatik der Technischen Universität München. Kapitel 7. Uhren & Synchronisation

Vorlesung "Verteilte Systeme" Wintersemester 2002/03. Vergleichbarkeit kausal abhängiger Ereignisse Reicht in vielen Fällen aus

Algorithmus von Berkeley (1989)

Verteilte Systeme SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 7.

Das Network Time Protocol - NTP. Das Network Time Protocol - NTP. Das Network Time Protocol - NTP. Das Network Time Protocol - NTP

Verteilte Systeme - Synchronisation

Überblick. Zeit Motivation Network Time Protocol (NTP) Logische Uhren. c td VS (SS16) Zeit 9 1

Uhrensynchronisation & Gruppenkommunikation. Jan-Arne Sobania Seminar Prozesssteuerung und Robotik 10. Dezember 2008

Uhrensynchronisation. Dipl.-Inf. J. Richling Wintersemester 2003/2004

Zeitsynchronisation in Sensornetzen. Kay Römer ETH Zürich Switzerland

Experimentelle Bewertung der Synchronisationsgenauigkeit von IEEE 802.1AS für variierende Temperaturbedingungen

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Formalisierungen, Logische Zeit - Th Letschert FH Gießen-Friedberg

One way Delay (OWD) Determination Techniques

Network Time Protocol NTP

Uberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS15) Verteilte Synchronisation 10 1

Zeit als Mittel der Reihenfolgebestimmung

Überblick. Zeit Motivation Konvergenz-Algorithmus CNV Network Time Protocol (NTP) Logische Uhren. c td VS (SS17) Zeit 8 1

Softwareentwicklung in verteilten Umgebungen, Teil 8 Time and Global States (Coulouris et al., Kapitel 11) Dieter Schmalstieg

Grundlagen verteilter Systeme

S1 Zeit in verteilten Systemen

Verteilte Systeme. Synchronisation I. Prof. Dr. Oliver Haase

Wie man Computer übers Internet identifiziert

Übung zur Vorlesung Echtzeitsysteme

Ebenen der Synchronisierung

Zeitsynchronisation in drahtlosen Sensornetzen Verfahren und Anwendungen

Verteilte Systeme Kapitel 7: Synchronisation

GPS RTC to DCF77 Modul für Uhren mit DCF Eingang. Variante 1 mit Kabelverbindung. - GPS Module empfängt UTC (Coordinated Universal Time ) Zeit, Datum

Zeitsynchronisierung gemäss IEEE 1588

Lokalisierung und Topologiekontrolle

DHCP und NTP. Jörn Stuphorn Universität Bielefeld Technische Fakultät

Zeitsynchronisation in Sensornetzen

Aufgabe 2.1: Lamports Uhren

NTP Eine Zusammenfassung. ProSeminar: Kommunikationsprotokolle SS 2003

Übungen zu Rechnerkommunikation

Synchronisation von physikalischen Uhren

Christoph Fischer Jörg Schneider DFKI Intelligente Netze. Real Time Workload Monitoring for WLAN

2. Zeit in Verteilten Systemen

EMES: Eigenschaften mobiler und eingebetteter Systeme. Uhrensynchronisation. Dr. Siegmar Sommer, Dr. Peter Tröger Wintersemester 2009/2010

Ü b u n g s b l a t t 15

Wahrscheinlichkeitsverteilungen

3.5 Das Network Time Protocol - NTP

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Binomialverteilung und Bernoulli- Experiment

Verteilte Systeme. Zeit, Synchronisation und globale Zustände

Verteilte Systeme. Synchronisation II. Prof. Dr. Oliver Haase

Bericht über Kooperation zwischen JOIN/Fa. Meinberg

Exemplar für Prüfer/innen

(S)NTP: Referenz und

Zeitsynchronisation Windows Server 2008 R2 PDC Master der FRD mit einer externen Zeitquelle

6.1 Motivation. Globale Zeit. Zeit in Rechnern. Verteilte Betriebssysteme

White Paper. wireless network White Paper

5 Verteilte Algorithmen. vs5 1

Wintersemester 2014/2015. Überblick. Prof. Dr. Peter Mandl Verteilte Systeme

Überblick. Zeit in verteilten Systemen. Echtzeit-basierte Uhren. Synchronsation von Echtzeit-Uhren: NTP, PTP

Zeit als Mittel der Reihenfolgebestimmung. Zeit als Mittel der Reihenfolgebestimmung. als Mittel der Reihenfolgebestimmung

Inferenzstatistik (=schließende Statistik)

Verteilte Algorithmen

Klausur Rechnernetze für Studierende des Studiengangs Scientific Programming und Auszubildende zum Beruf des Math.-Tech. Software-Entwicklers

Künstliche Neuronale Netze (KNN)

Kai Eckert

IK Ökonomische Entscheidungen und Märkte

0.1 GPS und Verwandte

Flüsse in Netzwerken. Seminar über Algorithmen SoSe Mike Rohland & Julia Schenk

3. Übung zur Vorlesung Verteilte Betriebssysteme

DECUS Symposium Bonn File: decus_tim Peter Schuerholt. Casium-Uhr. DECUS Symposium Bonn Peter Schuerholt

Vorlesung. Rechnernetze II Teil 3. Sommersemester 2006

Zeitsynchronisation mit IEEE 1588 und White Rabbit

Notwendigkeit von Uhrensynchronisation. Zeit als Mittel der Reihenfolgebestimmung. Synchronisation von physikalischen Uhren

Giuseppe Romanelli Stud.I 01 Kapitel 1 - Charakteristische Eigenschaften verteilter Systeme

Algorithmen für Verteilte Systeme

Kreissektoren und Bogenmaß

Vorlesung Rechnernetze II Teil 10

Verteilte Systeme Prof. Dr. Stefan Fischer. Überblick. Motivation. TU Braunschweig Institut für Betriebssysteme und Rechnerverbund

Verteilte Systeme. Kapitel 8: Zeit, Nebenläufigkeit und. Institut für Betriebssysteme und Rechnerverbund. Synchronisation.

Vorlesung. Rechnernetze II Teil 13. Sommersemester 2004

Hypothesentests mit SPSS. Beispiel für eine einfaktorielle Varianzanalyse Daten: museum_m_v05.sav

Im Vorlesungsskript (5) auf Seite 7 haben wir folgendes Bild:

JUNG Visu Pro Server. Wie richte ich die Systemzeit ein?

OSEK / COM. Florian Hohnsbehn. PG AutoLab Seminarwochenende Oktober AutoLab

Technische Beschreibung. NTP-Treiber für Windows NT NTP

Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme. 9. Verteilte Algorithmen

Datenstrukturen & Algorithmen

Dieses Dokument fasst die Haupteigenschaften von SMA Bluetooth Wireless Technology zusammen und gibt Antworten auf Fragen aus der Praxis.

Netzwerktechnologie 2 Sommersemester 2004

Kap. 8: Globale Zeit /

Verteilte Systeme. Replikation & Konsistenz II. Prof. Dr. Oliver Haase

Satz 90 Sei A = (Q, Σ, δ, q 0, F ) ein DFA. Der Zeitaufwand des obigen Minimalisierungsalgorithmus ist O( Q 2 Σ ).

Fehlerrechnung EXPERIMENTELLE FEHLER ANALYTIK II IAAC, TU-BS, 2004 ANALYTIK II IAAC, TU-BS, Dr. Andreas Martens

Der Trainer einer Fußballmannschaft stellt die Spieler seiner Mannschaft auf. Insgesamt besteht der Kader seiner Mannschaft aus 23 Spielern.

Algorithmische Methoden zur Netzwerkanalyse

Transkript:

Elementare Systemkomponenten: Zeitsynchronisation in verteilten Systemen (Time Service) VIS2-Time-1

Gibt es etwas aus der Welt der Technik, das Sie besonders beeindruckt? F.A.Z. Mein funkgesteuerter Wecker, der selbständig die Sommerzeit einstellt. Prof. Dr. Hans Küng, Theologe VIS2-Time-2

Zeit und Koordination: Einführung Grundsätzliche Alternativen: externe Synchronisation interne Synchronisation ( mit / ohne externer Synchronisation ) Algorithmen, die sich auf Uhrensynchronisation stützen: - Konsistenz verteilter Daten (Timestamps für die Serialisierung von Transaktionen) - Authentifizierung von Requests - Elimination von duplizierten Updates,... Probleme in verteilten Systemen: - Synchronisation nur über Netzwerkkommunikation - endliche Übertragungsgeschwindigkeit - variable Übertragungszeiten,... VIS2-Time-3

Synchronisation physischer Uhren Synchronisation physischer Uhren Zeitabweichung ( clock drift ) bei Uhren auf Quarzkristallbasis die Oszillatoren sind Objekt physischer Veränderungen in derselben Uhr ändert sich die Oszillationsfrequenz mit der Temperatur Netzwerk Abweichungsraten sind etwa 10-6 (d.h. 1 s pro 1.000.000 s, also etwa pro 11,6 Tage) VIS2-Time-4

Was ist eine Sekunde? 1/60 einer Minute, und die ist 1/60 einer Stunde, und die ist 1/24 des mittleren Sonnentages Astronomische Zeit basiert auf der Rotation der Erde um ihre Achse und um die Sonne Periode der Rotation wächst ununterbrochen (Reibung, atmosphärische Effekte u.a.) Für Physiker ist der Tag (präziser: die Dauer der Erddrehung) kein gutes Maß, weil sich die Erde nicht gleichmäßig dreht. mittlerer Sonnentag wird immer länger; zusätzlich periodische (jahreszeitliche) und nicht-periodische Schwankungen 1967 atomphysikalische Definition der Sekunde: "Die Sekunde ist das 9 192 631 770-fache der Periodendauer der dem Übergang zwischen den beiden Hyperfeinstrukturniveaus des Grundzustandes von Atomen des Nuklids Cs-133 entsprechenden Strahlung." Auch diese Sekunde entspricht annähernd dem 86 400. Teil des mittleren Sonnentages. Aber mit Hilfe von Atomuhren kann jede Sekunde genau gleich lang realisiert werden VIS2-Time-5

Synchronisation physischer Uhren Koordinierte Universalzeit (Coordinated Universal Time) Uhren mit atomischen Oszillatoren (Abweichung - 10-13 ) Internationale atomische Zeit (International Atomic Time) seit 1967 Standard Astronomische und atomische Zeit driften auseinander Coordinated Universal Time (UTC) ist internationaler Standard, basierend auf atomischer Zeit, sog. leap second wird gelegentlich addiert oder subtrahiert UTC - Signale werden synchronisiert und von Radiostationen und Satelliten ausgestrahlt - Genauigkeit bei Radiostationen: 0,1-10 ms - Genauigkeit bei Satelliten: ca. 0,1 ms Computer können mit diesen Signalen synchronisiert werden, aber: - Empfänger sind relativ zu Workstations teuer (insb. bei Satellitenempfängern) - Genauigkeit von 10 ms unzureichend bei z.b. 10 Mio. Anweisungen pro Sekunde + Kompensation von Zeitabweichungen die Zeit des Time-Servers (UTC) ist möglicherweise: - größer (Lösung: die Uhr heraufsetzen) - kleiner (Lösung: die Uhr verlangsamen durch Soft- oder Hardware) --- aber: nicht abrupt!! VIS2-Time-6

Uhrensynchronisation mittels Time Server Wie spät ist es? m r P m t Zeitangabe Time server,s VIS2-Time-7

Synchronisation physischer Uhren Cristian s - Methode für Uhrensynchronisation - Synchronisation mit Time-Server - T syn = t + T trans,, wo t die Zeit des Servers und T trans die Übertragungszeit von S nach P ist; aber: T trans variiert andere Prozesse konkurrieren mit S und P andere Nachrichten konkurrieren mit m t im Netz diese Faktoren sind unvorhersehbar und schwer messbar - Grundsätzlich gilt: T trans = min + x, wo min die Übertragungszeit ist, falls kein anderer Prozess ausgeführt wird und keine weiteren Nachrichten im Netz sind. x > 0. - Der Time-Server kann mit einem UTC-Empfänger ausgestattet werden. - Vernachlässigt Probleme von Server-Ausfällen - Vorschlag: Der Time-Service wird von einer Gruppe von Time-Servern realisiert, Client sendet einen Multicast-Request und wird mit der ersten Antwort synchronisiert. - Bewusst falsche und böswilligen Zeitangaben werden nicht berücksichtigt. VIS2-Time-8

Synchronisation physischer Uhren Der Berkeley-Algorithmus Algorithmus für interne Synchronisation für Gruppe von Berkeley-UNIX-Computern Master-Slaves-Organisation: - Master kontaktiert die Slaves periodisch - Slaves senden ihre lokalen Zeiten zurück - Master schätzt die Zeiten durch Betrachtung der Übertragungszeiten und bildet Durchschnitt. - Zeiten, die von einem Nominalintervall abweichen, werden nicht berücksichtigt (fault-tolerant average). - Master sendet dann einen individuellen Korrekturwert (positiv oder negativ) an jeden einzelnen Slave zurück. Beim Absturz des Masters wird ein bisheriger Slave als neuer Master ausgewählt. Experiment (Gusella und Zatti): - 15 Computer im Bereich von 20-25 ms synchronisiert. - Abweichungsrate der Uhren 2*10-5 - maximale Übertragungszeit mit 10 ms angenommen. VIS2-Time-9

Network Time Protocol Network Time Protocol (NTP) Definiert Time-Service-Architektur und -Protokoll für verbundene Netzwerke. Standard für Uhren-Synchronisation im Internet. Design und Eigenschaften: UTC-Synchronisation mit statistischen Techniken für Datenfilterung, Zuverlässiger Dienst, auch bei andauerndem Verlust der Konnektivität (redundante Server und Pfade), Clients können ausreichend oft re-synchronisieren, skalierbar für große Anzahl von Klienten, Schutz gegen zufällige und böswillige Störungen (Authentifizierungstechniken). VIS2-Time-10

Network Time Protocol NTP-Service wird von einem Netzwerk von Servern im Internet realisiert: primäre Server werden direkt mit UTC-Sendern synchronisiert, sekundäre Server werden mit primären Servern synchronisiert, logische Hierarchie (synchronisation subnet), verschiedene Stufen (strata), primäre Server befinden sich auf Stufe (stratum) 1 (root), sekundäre Server werden mit der nächsthöheren Stufe synchronisiert, Workstations sind auf der niedrigsten Stufe angesiedelt. 1 2 2 3 3 3 VIS2-Time-11

Network Time Protocol NTP-Server synchronisieren in einem der drei Synchronisationsmodi: Multicast: für Hochgeschwindigkeits-LAN s (niedrige Genauigkeit), Procedure-Call: ähnlich dem Christian-Algorithmus (wenn höhere Genauigkeit erwünscht oder Multicast nicht durch Hardware unterstützt wird, benachbarte LAN s), Symmetrischer Modus: Synchronisation für Master-Server in LAN s, falls höchste Genauigkeit verlangt wird (Austausch von zusätzlichen Zeitinformationen). In allen Modi wird mit UDP/IP kommuniziert. VIS2-Time-12

Network Time Protocol Im Procedure-Call- und symmetrischem Modus paarweiser Nachrichtenaustausch: Jede Nachricht enthält 3 Zeitstempel (time stamps): die lokalen Zeiten des Sendens und Empfangens der vorherigen Nachricht und die lokale Zeit des Sendens der aktuellen Nachricht. Im symmetrischen Modus kann die Verzögerung nicht unbeträchtlich sein. Nachrichten können verloren gehen, aber die drei Time stamps bleiben gültig. Server B T i-2 T i-1 Zeit m m Server A T i-3 T i Zeit VIS2-Time-13

Network Time Protocol Für jedes Nachrichtenpaar wird berechnet: - Offset o i : Schätzung des aktuellen Offsets zwischen beiden Uhren, - Delay d i : Die gesamte Übertragungszeit für beide Nachrichten. Es seien: o das tatsächliche Offset zwischen A und B, t und t die aktuellen Übertragungszeiten für beliebige Nachrichtenpaare m und m. Dann: T i-2 = T i-3 + t + o und T i = T i-1 + t - o Substitution: a = T i-2 - T i-3 und b = T i-1 - T i führt zu: d i = t + t = a - b o = o i + (t + t)/2 mit o i = (a + b)/2 Bsp: Ein Server A schickt um 10:00:00 lokaler Zeit eine Nachricht an Server B, dessen lokale Uhr zu diesem Zeitpunkt genau 11:00:00 zeigt. Übertragungsund Verarbeitungszeiten seien konstant 1 Sek. a = 11:00:01-10:00:00 = 01:00:01 b = 11:00:02 10:00:03 = 00:59:59 d i = 01:00:01 00:59:59 = 00:00:02 o i = (01:00:01+00:59:59)/2 = 01:00:00 Durch die Tatsache, dass t, t > 0, kann gezeigt werden, dass o i - d i /2 < o < o i + d i /2. Daraus folgt: o i ist Schätzung des Offsets und d i ist die Genauigkeit dieser Schätzung. VIS2-Time-14

Network Time Protocol Datenfilterung-Algorithmus mit sukzessiven Paaren <o i,d i >: statistische Größe Filter Dispersion (Maß für Qualität der Schätzung) wird berechnet, die 8 neuesten Paaren werden aufbewahrt, der Wert von o i, der dem kleinsten Wert von d i entspricht, wird für die Schätzung von o herangezogen. NTP-Server bilden Paare mit mehreren Partnern. Datenfilterung und Partner-Selektion basierend auf minimaler Synchronisation Dispersion = Summe (Filter Dispersions mit Root). ---------> Best Effort - Dienst (d.h. keine Garantie möglich!) VIS2-Time-15

Logische Zeit und logische Uhren Happened-before - Relation für Prozesse (Causal Ordering oder Potential Causal Ordering) p 1 a b m 1 p 2 c d m 2 physische Zeit p 3 e f p HB1: Wenn Prozess p: x y, dann x y. HB2: Für jede Nachricht m gilt: send(m) rcv(m). HB3: Wenn x, y und z Ereignisse sind, dann gilt: wenn x y und y z, dann x z. aber : a II e (concurrent) VIS2-Time-16

Logische Uhren Logische Zeit und logische Uhren monoton steigender Software-Zähler grundsätzlich: kein direkter Bezug zu physischer Uhr 1 2 p 1 a b m 1 p 2 p 3 3 4 c d m 2 5 physische Zeit e f LC1: Vor jedem Ereignis in p wird C p inkrementiert : C p := C p + 1 LC2: a) Wenn p m sendet, dann enthält m auch t = C p (piggyback). b) Beim Empfang von (m, t) berechnet q C q := max (C q, t) und wendet dann LC1 an bevor rec(m) seinen time-stamp bekommt. Anm.: (a b) => (C(a) < C(b)) - aber nicht notwendig auch umgekehrt! VIS2-Time-17