Wie schaffen es NTP-Server, so genau zu bleiben?
Viele von uns hatten gelegentlich ein Problem damit, dass unsere Computer und andere Geräte die genauen Zeiteinstellungen beibehalten, aber eine schnelle Synchronisierung mit einem NTP-Server macht alles wieder gut. Wenn jedoch unsere eigenen Geräte an Genauigkeit verlieren, wie schaffen es NTP-Server, so genau zu bleiben??
Die heutige Question & Answer-Sitzung wird dank SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-basierten Gruppierung von Q & A-Websites.
Foto mit freundlicher Genehmigung von LEOL30 (Flickr).
Die Frage
SuperUser-Leser Frank Thornton möchte wissen, wie NTP-Server so genau bleiben können:
Mir ist aufgefallen, dass auf meinen Servern und anderen Maschinen die Uhren immer so driften, dass sie synchronisiert werden müssen, um genau zu bleiben. Wie halten sich die Uhren des NTP-Servers ab und bleiben immer so genau?
Wie schaffen es die NTP-Server, so genau zu bleiben??
Die Antwort
SuperUser-Mitwirkender Michael Kjorling hat die Antwort für uns:
NTP-Server verlassen sich bei der genauen Zeitmessung auf hochpräzise Uhren. Eine häufige Zeitquelle für zentrale NTP-Server sind Atomuhren oder GPS-Empfänger (denken Sie daran, dass GPS-Satelliten Atomuhren an Bord haben). Diese Uhren sind als genau definiert, da sie eine sehr genaue Zeitreferenz bieten.
Es gibt nichts Magisches an GPS oder Atomuhren, durch das sie genau sagen, wie spät es ist. Aufgrund der Funktionsweise von Atomuhren sind sie einfach sehr gut, nachdem einmal gesagt wurde, wie spät es ist, halten genaue Zeit (da die zweite als atomare Effekte definiert ist). In der Tat ist es erwähnenswert, dass die GPS-Zeit sich von der UTC unterscheidet, an die wir gewöhnt sind. Diese Atomuhren sind wiederum mit der International Atomic Time (TAI) synchronisiert, um nicht nur den Zeitablauf genau zu bestimmen, sondern auch das Zeit.
Sobald Sie eine genaue Zeit auf einem System haben, das an ein Netzwerk wie das Internet angeschlossen ist, ist es eine Frage der Protokollierung, die die Übertragung von genauen Zeiten zwischen Hosts über ein unzuverlässiges Netzwerk ermöglicht. In dieser Hinsicht unterscheidet sich ein NTP-Server von Stratum 2 (oder weiter von der tatsächlichen Zeitquelle entfernt) nicht von der Synchronisierung Ihres Desktopsystems mit einer Reihe von NTP-Servern.
Wenn Sie einige genaue Zeiten (wie von NTP-Servern oder anderswo angegeben) erhalten haben und die Geschwindigkeit der lokalen Uhr kennen (die leicht zu ermitteln ist), können Sie die Driftrate der lokalen Uhr relativ zu der „genauen Genauigkeit“ berechnen Zeitablauf. Nach dem Sperren kann dieser Wert verwendet werden, um die lokale Uhr kontinuierlich anzupassen, sodass die Werte sehr nahe am genauen Zeitverlauf angezeigt werden, selbst wenn die lokale Echtzeituhr selbst sehr ungenau ist. Solange Ihre lokale Uhr nicht hoch ist unberechenbar, Dies sollte es ermöglichen, die genaue Zeit für einige Zeit beizubehalten, selbst wenn Ihre Upstream-Zeitquelle aus irgendeinem Grund nicht verfügbar ist.
Einige NTP-Client-Implementierungen (wahrscheinlich die meisten ntpd-Daemon- oder System-Service-Implementierungen) tun dies, und andere (wie ntpds Begleiter ntpdate, der einfach einmal die Uhr einstellt) nicht. Dies wird allgemein als a bezeichnet Driftdatei weil es dauerhaft ein Maß der Clock-Drift speichert, aber streng genommen muss es nicht als eine bestimmte Datei auf der Festplatte gespeichert werden.
In NTP ist Stratum 0 per Definition eine genaue Zeitquelle. Stratum 1 ist ein System, das eine Stratum 0-Zeitquelle als Zeitquelle verwendet (und daher etwas weniger genau als die Stratum 0-Zeitquelle ist). Stratum 2 ist wiederum etwas weniger genau als Stratum 1, da es seine Zeit mit der Quelle von Stratum 1 synchronisiert und so weiter. In der Praxis ist dieser Genauigkeitsverlust so gering, dass er in allen extremen Fällen völlig vernachlässigbar ist.
Haben Sie der Erklärung etwas hinzuzufügen? Sound off in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Hier geht es zum vollständigen Diskussionsthread.