Zeitsynchronisation ohne Internet

Zeitsynchronisation ohne Internet

Neben TCP/IP gibt es viele Möglichkeiten zur Zeitsynchronisation. Einige von ihnen erfordern nur ein gewöhnliches Telefon, während andere teure, seltene und empfindliche elektronische Geräte benötigen. Die umfangreiche Infrastruktur der Zeitsynchronisationssysteme umfasst Observatorien, staatliche Institute, Radiosender, Satellitengruppierungen und vieles mehr.

Heute werde ich erklären, wie die Zeitsynchronisation ohne Internet funktioniert und wie man einen "satellitengestützten" NTP-Server selbst bauen kann.

Kurzwellen-Rundfunk

In den Vereinigten Staaten überträgt NIST die genaue Zeit und Frequenz über 2,5, 5, 10, 15 und 20 MHz Kurzwellen von der Station WWVH in Fort Collins, Colorado, sowie auf 2,5, 5, 10 und 15 MHz von der Station WWVH in Kauai, Hawaii. Der Zeitcode wird über ein 60-Sekunden-Intervall mit einer Geschwindigkeit von 1 b/s unter Verwendung der Breitband-Impulsmodulation auf einer Trägersignalfrequenz von 100 Hz übertragen.

Der National Research Council (NRC) von Kanada verbreitet Zeit- und Frequenzinformationen auf 3,33, 7,85 und 14,67 MHz von der Station CHU in Ottawa, Ontario.

Zeitsynchronisation ohne Internet
Broadcast-Format von WWVH

Die Signalverbreitung von Kurzwellenstationen erfolgt normalerweise durch Reflexion von den oberen Schichten der Ionosphäre. Signalsendungen können über große Entfernungen empfangen werden, jedoch liegt die Zeitgenauigkeit bei etwa einer Millisekunde.

Der aktuelle NTPv4-Standard umfasst Audiotreiber für WWV, WWVH und CHU.

Langwellen-Rundfunk

NIST sendet auch die genaue Zeit und Frequenz über Langwellen auf 60 kHz aus Boulder, Colorado. Es gibt auch andere Stationen, die Signale für genaue Zeit auf Langwellen übertragen.

Rufzeichen und Standort
Frequenz (kHz)
Leistung (kW)

WWVB Fort Collins, Colorado, USA
60
50

DCF77 Mainflingen, Deutschland
77.5
30

MSF Rugby, Vereinigtes Königreich
60>
50

HBG Prangins, Schweiz
75
20

JJY Fukushima, Japan
40
50

JJY Saga, Japan
60
50

Langfrequenzstationen für Standardzeit

Der Zeitcode wird über ein 60-Sekunden-Intervall mit einer Geschwindigkeit von 1 b/s übertragen, genau wie bei Kurzwellenstationen. Die Datenübertragungsformate sind ebenfalls für beide Standards ähnlich. Die Signalverbreitung erfolgt durch die unteren Schichten der Ionosphäre, die relativ stabil sind und vorhersehbare tägliche Schwankungen in der Höhe aufweisen. Dank dieser Vorhersehbarkeit der physikalischen Umgebung erhöht sich die Genauigkeit auf 50 μs.

Zeitsynchronisation ohne Internet
WWVB Sendeformat

Geostationärer Betriebsbeobachtungssatellit für die Umwelt

In den USA überträgt NIST ebenfalls präzise Zeit- und Frequenzdaten auf etwa 468 MHz von geostationären Betriebsumweltsatelliten (GOES). Der Zeitcode wechselt sich mit Nachrichten ab, die zur Abfrage entfernter Sensoren verwendet werden. Er besteht aus 60 BCD-Halbbytes, die im Abstand von 30 Sekunden übertragen werden. Die Informationen des Zeitcodes sind mit den örtlichen Diensten ähnlich.

Globale Positionierungssysteme

Das US-Verteidigungsministerium nutzt GPS für präzise Navigation zu Land, zu Wasser und in der Luft. Dieses System bietet eine ständige Abdeckung der Erde durch eine Satellitengruppe auf 12-stündigen Umlaufbahnen, die unter einem Winkel von 55° geneigt sind.

Die ursprüngliche Konstellation von 24 Satelliten wurde auf 31 Satelliten in einer inhomogenen Konfiguration erweitert, sodass mindestens 6 Satelliten immer im Sichtfeld sind und 8 oder mehr Satelliten in den meisten Teilen der Welt sichtbar sind.

Dienste, ähnlich wie GPS, werden von anderen Ländern betrieben oder geplant. Das russische GLONASS arbeitet seit über einem Jahrzehnt, seit dem 2. September 2010, als die Gesamtzahl der Satelliten auf 26 erhöht wurde – die Konstellation wurde vollständig bereitgestellt, um die Erde abzudecken.

Zeitsynchronisation ohne Internet
GPS-Satelliten rund um den Globus.

Das Satellitennavigationssystem der Europäischen Union heißt „Galileo“. Es wurde erwartet, dass „Galileo“ 2014-2016 in Betrieb geht, wenn alle 30 geplanten Satelliten in die Umlaufbahn gebracht werden. Bis 2018 hatte die Satellitengruppe von „Galileo“ jedoch nicht die erforderliche Anzahl an Geräten erreicht.

Es gibt auch das chinesische "Beidou", was übersetzt "Wal" bedeutet. Die Gruppe besteht aus 16 Satelliten und wurde am 27. Dezember 2012 in kommerzielle Nutzung genommen, als regionales Positionierungssystem. Es wird erwartet, dass das System bis 2020 voll funktionsfähig sein wird. Heute wurde auf Habr ein ArtikelArtikel über den erfolgreichen Start eines Satelliten dieses Systems veröffentlicht.

Mathematik zur Bestimmung der Koordinaten mittels RNSS.

Wie GPS/Glonass-Navigationsgeräte auf Ihrem Smartphone mit Hilfe des Radio-Navigationssystems (RNSS) Ihren Standort mit solcher Genauigkeit bestimmen? Um das Prinzip der Berechnungen zu verstehen, sollten wir uns an Stereometrie und Algebra der oberen Klassen der Sekundarschule oder der Physik- und Mathematikschule erinnern.

Jeder Satellit sendet dem Empfänger die exakte Zeit. Auf dem Satelliten sind Atomuhren installiert, denen man vertrauen kann. Wenn man die Lichtgeschwindigkeit kennt, ist es einfach, den Radius der Sphäre zu bestimmen, auf der sich der Satellit befindet. Diese Sphäre bildet, wenn sie die Erde berührt, einen Kreis, auf dem sich der GPS/Glonass-Empfänger befindet.

Wenn das Signal von zwei Satelliten ankommt, haben wir bereits die Schnittpunkte der Erde und zweier Sphären, was nur zwei Punkte auf dem Kreis ergibt. Die Sphäre des dritten Satelliten sollte idealerweise auf einen dieser beiden Punkte treffen, um die Koordinaten des Empfängers endgültig zu bestimmen.

Im Prinzip kann man sogar mit zwei Satelliten anhand indirekter Anzeichen erkennen, welcher der beiden Punkte der Wahrheit näher ist, und moderne Algorithmen der Navigationssoftware können eine solche Aufgabe bewältigen. Warum brauchen wir dann also einen vierten Satelliten?

Zeitsynchronisation ohne Internet
Bestimmung des Standorts mithilfe einer Satellitengruppe.

Es ist leicht zu erkennen, dass es in diesem idealisierten Bild viele Nuancen gibt, die die Genauigkeit der Berechnungen beeinflussen. Die Zeit am Empfänger ist wohl die offensichtlichste Fehlerquelle. Damit alles wie gewünscht funktioniert, müssen die Zeiten des GPS/Glonass-Empfängers mit der Zeit des Satelliten synchronisiert sein. Andernfalls würde der Fehler ∓ 100.000 km betragen.

Aus der Formel für Geschwindigkeit, Zeit und Entfernung S = v*t erhalten wir die Grundgleichung für die Signalübertragung des RNSS. Die Entfernung zum Satelliten ist gleich der Lichtgeschwindigkeit multipliziert mit der Zeitdifferenz zwischen dem Satelliten und dem Empfänger.

Zeitsynchronisation ohne Internet

Hauptsächlich geschieht dies, weil wir selbst nach allen Synchronisierungen die Zeit am Empfänger tᵖʳ mit ausreichender Genauigkeit kennen. Zwischen der realen Zeit und tᵖʳ wird immer Δt existieren, was dazu führt, dass die Rechenfehler inakzeptabel werden. Deshalb benötigen wir vier Satelliten.

Um die mathematische Notwendigkeit von vier Satelliten klarer zu begründen, werden wir ein Gleichungssystem aufstellen.

Zeitsynchronisation ohne Internet

Um die vier Unbekannten x, y, z und Δt zu bestimmen, ist es erforderlich, dass die Anzahl der Beobachtungen gleich oder größer ist als die Anzahl der Unbekannten. Dies ist eine notwendige, aber nicht ausreichende Bedingung. Wenn die Matrix der Normalgleichungen singulär ist, wird das Gleichungssystem keine Lösung haben.

Es sollte auch nicht vergessen werden, die spezielle Relativitätstheorie und die relativistischen Effekte der Zeitverlangsamung bei Satelliten-Atomuhren im Vergleich zu terrestrischen zu berücksichtigen.

Zeitsynchronisation ohne Internet

Wenn man annimmt, dass sich der Satellit mit einer Geschwindigkeit von 14.000 km/h in einer Umlaufbahn bewegt, ergibt sich eine Zeitverlangsamung von etwa 7 μs (Mikrosekunden). Andererseits wirken relativistische Effekte der allgemeinen Relativitätstheorie.

Das liegt daran, dass Satelliten in Umlaufbahnen sich in großer Entfernung von der Erde befinden, wo die Krümmung des Raum-Zeit-Kontinuums geringer ist als an der Erdoberfläche aufgrund der Masse der Erde. Laut ART erscheinen die Uhren, die näher an massiven Objekten positioniert sind, langsamer zu gehen als die, die weiter davon entfernt sind.

Zeitsynchronisation ohne Internet

  • G — die Gravitationskonstante;
  • M — die Masse des Objekts, in diesem Fall der Erde;
  • r — der Abstand vom Erdmittelpunkt zum Satelliten;
  • c — die Lichtgeschwindigkeit.

Die Berechnung nach dieser Formel ergibt eine Zeitverlangsamung von 45 μs am Satelliten. Insgesamt -7μs +45μs = 38μs Bilanz — Effekte von ART und ART.

In praktischen Aufgaben zur Bestimmung des Standorts mittels GNSS sollten auch ionospherische und troposphärische Verzögerungen berücksichtigt werden. Darüber hinaus sind Korrekturen von 46 ns mit einer Exzentrizität von 0,02 der GPS-Satellitenbahn verbunden.

Die Möglichkeit, Signale gleichzeitig von mehr als vier GPS-/GLONASS-Satelliten zu empfangen, ermöglicht es, die Genauigkeit der Positionsbestimmung des Empfängers weiter zu erhöhen. Dies wird erreicht, indem der Navigator ein System von vier Gleichungen mit vier Unbekannten löst. Zeitsynchronisation ohne Internet Die Anzahl der Durchgänge und der Durchschnittswert erhöhen die Genauigkeit der endgültigen Bewertung gemäß den Gesetzen der mathematischen Statistik.

Wie man einen Stratum 1 NTP-Server über Satellitenkommunikation einrichtet

Für die Einrichtung eines hochwertigen Zeitservers benötigt man lediglich GPSD, NTP und einen GPS-Empfänger mit einem 1PPS-Ausgang (ein Puls pro Sekunde).

1. Installieren Sie gpsd und ntpd oder gpsd und chronyd. Die Version von gpsd sollte ≥ 3.20 sein.

(1:1109)$ sudo emerge -av gpsd chrony

Lokale Kopie des Remote-Indexes ist aktuell und wird verwendet.

Berechnung der Abhängigkeiten... abgeschlossen!

[binary  N     ] net-misc/pps-tools-0.0.20120407::gentoo  31 KiB

[binary  N     ] net-misc/chrony-3.5-r2::gentoo  USE="adns caps cmdmon ipv6 ntp phc readline refclock rtc seccomp (-html) -libedit -pps (-selinux)" 246 KiB

[binary  N     ] sci-geosciences/gpsd-3.17-r3:0/23::gentoo  USE="X bluetooth cxx dbus ipv6 ncurses python shm sockets udev usb -debug -latency-timing -ntp -qt5 -static -test" GPSD_PROTOCOLS="aivdm ashtech earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 navcom ntrip oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tnt tripmate tsip ublox -fury -geostar -nmea0183 -nmea2000 -passthrough" PYTHON_TARGETS="python2_7" 999 KiB

Insgesamt: 3 Pakete (3 neu, 3 Binär), Größe der Downloads: 1275 KiB

Möchten Sie diese Pakete zusammenführen? [Ja/Nein]

2. Schließen Sie den PPS-fähigen GPS-Empfänger an einen serielle RS232- oder USB-Port an.

Ein normaler günstiger GPS-Empfänger ist nicht geeignet; möglicherweise muss man etwas suchen, um ein passendes Modell zu finden.

3. Stellen Sie sicher, dass das Gerät tatsächlich PPS ausgibt. Überprüfen Sie dazu den Port mit dem Tool gpsmon.

4. Öffnen Sie die Datei /etc/conf.d/gpsd und bearbeiten Sie die folgende Zeile.

Ersetzen

GPSD_OPTIONS=""

so dass sie lautet

GPSD_OPTIONS="-n"

Diese Änderung ist erforderlich, damit gpsd beim Start sofort mit der Suche nach NTP-Quellen beginnt.

5. Starten oder starten Sie gpsd neu.

(1:110)$ sudo /etc/init.d/gpsd start
(1:111)$ sudo /etc/init.d/gpsd restart

Für Distributionen mit systemd verwenden Sie den entsprechenden systemctl-Befehl.

6. Überprüfen Sie die Konsolenausgaben des Befehls cgps.

Stellen Sie sicher, dass die Daten korrekt von den Satelliten empfangen werden. In der Konsole sollte etwas Ähnliches wie die Abbildung angezeigt werden.

Zeitsynchronisation ohne Internet
Ausgabe des Konsolenbefehls cgps.

7. Es ist Zeit, die Datei /etc/ntp.conf zu bearbeiten.

# GPS Serial data reference (NTP0)
server 127.127.28.0
fudge 127.127.28.0 time1 0.9999 refid GPS

# GPS PPS reference (NTP1)
server 127.127.28.1 prefer
fudge 127.127.28.1 refid PPS

Der obere Eintrag NTP0 verweist auf eine universelle Zeitquelle, die auf fast allen GPS-Geräten verfügbar ist. Der untere Eintrag NTP1 definiert eine viel genauere PPS-Quelle.

8. Starten Sie ntpd neu.

(1:112)$ sudo /etc/init.d/ntpd restart

Für Distributionen mit systemd verwenden Sie den Befehl systemctl.
$ sudo systemctl restart ntp

Verwendete Materialien

Zeitsynchronisation ohne Internet

Zeitsynchronisation ohne Internet

Quelle: habr.com

60GB SSD 8Gb DDR4