05 Zeitsynchronisation: Unterschied zwischen den Versionen
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 31: | Zeile 31: | ||
* Betreiber: Physikalisch-Technische Bundesanstalt (PTB) | * Betreiber: Physikalisch-Technische Bundesanstalt (PTB) | ||
* Genauigkeit: 10^-12 (≈ 1 Sekunde in 30.000 Jahren) | * Genauigkeit: 10^-12 (≈ 1 Sekunde in 30.000 Jahren) | ||
https://www.ptb.de/cms/ptb/fachabteilungen/abt4/fb-44/ag-442/verbreitung-der-gesetzlichen-zeit/dcf77.html | |||
=== TDF === | === TDF === | ||
| Zeile 124: | Zeile 126: | ||
* [https://de.wikipedia.org/wiki/Schaltsekunde Wikipedia: Schaltsekunde] | * [https://de.wikipedia.org/wiki/Schaltsekunde Wikipedia: Schaltsekunde] | ||
* [https://de.wikipedia.org/wiki/Network_Time_Protocol Wikipedia: NTP] | * [https://de.wikipedia.org/wiki/Network_Time_Protocol Wikipedia: NTP] | ||
* [https://www.ptb.de/cms/fachabteilungen/. | * [https://www.ptb.de/cms/ptb/fachabteilungen/abt4/fb-44/ag-442/verbreitung-der-gesetzlichen-zeit/dcf77.html DCF77 bei der PTB] | ||
* [http://www.pool.ntp.org/de/zone/ch NTP-Pool Schweiz] | * [http://www.pool.ntp.org/de/zone/ch NTP-Pool Schweiz] | ||
* [http://www.linux-magazin.de/... Linux-Magazin: Zeitserver] | * [http://www.linux-magazin.de/... Linux-Magazin: Zeitserver] | ||
Aktuelle Version vom 31. März 2025, 12:13 Uhr
Peripheriegeräte im Netzwerkbetrieb
Die Bedeutung der Zeitmessung
Zeit ist eine der genauesten physikalischen Einheiten. Seit dem 17. Jahrhundert kennen wir die astronomische Zeitmessung mit dem mittleren Sonnentag (24 Stunden = 86400 Sekunden).
1946 wurde die Atomuhr entwickelt. Seit 1967 ist die Sekunde durch die 9.192.631.770 Schwingungen des Cäsium-133-Atoms definiert.
Schaltsekunden
Da die Erdrotation variiert, wurde 1972 die Schaltsekunde eingeführt. Sie gleicht Unterschiede zwischen UTC und UT1 aus.
Schaltsekunden werden in der Regel am 30. Juni oder 31. Dezember nach 23:59:59 UTC als zusätzliche Sekunde (23:59:60) eingefügt.
Beispielproblem: Am 30. Juni 2012 kam es weltweit zu Serverproblemen (Linux-Kernel 2.6.26 – 3.3, MySQL, Java). Google löste das Problem durch "Leap Smearing".
Network Time Protocol (NTP)
NTP sorgt für präzise Zeitangaben in Netzwerken (z. B. für AD, NFS, Cluster, Logvergleich).
Externe Zeitgeber
In Europa sind zwei Sender interessant. Der DCF77-Sender steht nahe Frankfurt am Main und sendet den Zeitcode, je nach den klimatischen Bedingungen, bis zu 1500 Kilometer weit. Die Weiterentwicklung in Allouis nahe der französischen Hauptstadt nennt sich TDF und kommt bis zu 3500 Kilometer weit - ideal für Unternehmen, die Aussenstellen in ganz Europa unterhalten.
DCF77
Der Name DCF77 beruht auf einer internationalen Vereinbarung. Der Buchstabe D steht dabei für Deutschland, C als Kennzeichen eines Langwellensenders und das F signalisiert die Nähe des Senders zu Frankfurt am Main. Die Antennen stehen tatsächlich rund 35 Kilometer von der Bankenmetropole entfernt in Mainflingen. Die 77 steht für die verwendete Sendefrequenz (77,5 kHz).
Als Betreiber des DCF77 fungiert die Physikalisch-Technische Bundesanstalt (PTB). Die Deutsche Telekom AG verwaltet die Infrastruktur. Als Basis zur Erzeugung des Zeitsignals dient am Senderstandort eine von der PTB entwickelte Steuereinrichtung mit drei kommerziellen (etwas weniger aufwändigen) Atomuhren. Diese Steuereinrichtung wird mit den primären Atomuhren der PTB in Braunschweig (zwei Caesium-Uhren und zwei Caesium-Fontänen) synchronisiert. Das so gewonnene Signal hat am Sendeort als Genauigkeit eine relative Standardabweichung von maximal 10−2. Das entspricht einem Fehler von einer Sekunde in etwa 30.000 Jahren.
Die Zeit, die der DCF77-Sender liefert und die auch per Satellit oder Telefondienst verbreitet wird, ist die gesetzliche Zeit in Deutschland. Ein Internet-Zeitserver, auch wenn er bei der PTB steht, liefert keinesfalls die gesetzliche Zeit. Dies müssen Unternehmen, die zeitkritische Transaktionen Computerunterstützt vornehmen, beachten. Der Sender gibt das Signal im Sekundenrhythmus ab. Die Sendeleistung liegt bei 50 kW und erklärt die recht geringe Reichweite von offiziellen 2000 Kilometern. Immerhin ist der Sender in den letzten Jahren niemals ausgefallen. Die Verfügbarkeit gibt der Betreiber trotzdem mit 99,7 Prozent an.
- Standort: Mainflingen, Deutschland
- Frequenz: 77.5 kHz
- Betreiber: Physikalisch-Technische Bundesanstalt (PTB)
- Genauigkeit: 10^-12 (≈ 1 Sekunde in 30.000 Jahren)
TDF
- Standort: Paris, Frankreich
- Genaueste Atomuhr (Cäsium-Fontäne)
- Abdeckung: ganz Europa (2000 kW)
GPS
- Global verfügbar
- Zivile Nutzung abhängig vom US-Militär
- Europäisches Galileo seit 2024 im Einsatz (Aktueller Stand)
Funktionsweise von NTP
NTP kommuniziert über UDP Port 123. Es nutzt mehrere Zeitquellen (Multicast, Broadcast, Unicast) und aktualisiert die Zeit in kleinen Schritten, um Dienste nicht zu stören.
Zeitabfrageprozess
- Client sendet Anfrage mit Timestamp A
- Server empfängt bei X, antwortet bei Y
- Client empfängt bei B
- Berechnet Laufzeit: B-A-(Y-X)
- Korrigiert seine Systemzeit
Stratum-System
- Stratum 0: z. B. GPS, DCF77 (Primärquellen)
- Stratum 1: Lokaler Server, der Zeit direkt von Stratum 0 bezieht
- Stratum 2+: Clients und nachgeschaltete Server
Zeitdarstellung
- 64-Bit Zeitstempel (32 Bit Sekunden seit 1.1.1900, 32 Bit Bruchteile)
- Genauigkeit bis ca. 0,23 Nanosekunden
Erkennung falscher Zeitangaben (Byzantinischer Fehler)
NTP erkennt falsche Zeitserver mit einem Konsens-Algorithmus, der dem byzantinischen Generäle-Problem ähnelt. Falschinformationen werden ausgeschlossen, solange weniger als ein Drittel kompromittiert sind.
Reale Auswirkungen
Beispiel: Lufthansa-Flug 2014 – vereiste Sensoren lieferten falsche, aber gleiche Daten. Bordcomputer steuerte in den Sinkflug.
Konfiguration auf einem Raspberry Pi
Installation von NTP
sudo apt-get install ntp
Zeitserver eintragen (z. B. für die Schweiz)
sudo nano /etc/ntp.conf # Evt. liegt die Datei auch hier: sudo nano /etc/ntpsec/ntp.conf server 0.ch.pool.ntp.org iburst server 1.ch.pool.ntp.org iburst server 2.ch.pool.ntp.org iburst server 3.ch.pool.ntp.org iburst server ntp.metas.ch iburst
Dienst starten/stoppen
sudo systemctl stop ntp sudo systemctl start ntp
Abfrage der Synchronisation
ntpq -p
Ausgabe von ntpq -p
Bedeutungen
- `remote`: Zeitserver
- `refid`: Quelle des Servers
- `st`: Stratum-Level
- `t`: Typ (u = unicast, l = local, m = multicast)
- `when`: Zeit seit letzter Antwort
- `poll`: Abfrageintervall
- `reach`: Erreichbarkeit (377 = 8/8 erfolgreich)
- `delay`: Antwortzeit in ms
- `offset`: Zeitdifferenz in ms
- `jitter`: Schwankung in ms
Markierungen
- `*`: Aktuelle Zeitquelle
- `+`: Im Mittelwert enthalten
- `x`: Ungültige Quelle
- `#`: Quelle außerhalb der Distanz
- `o`: Pulse-per-Second
- `-`: Ausgeschlossen durch Algorithmus
- `.`: Letzter Kandidat