Das Network Time Protocol (NTP) ist ein Standard zur Synchronisierung von Uhren in Computersystemen über paketbasierte Kommunikationsnetze. Obwohl es meistens über UDP abgewickelt wird, kann es durchaus auch über andere Layer-4-Protokolle wie z. B. TCP transportiert werden. Es wurde speziell dafür entwickelt, eine zuverlässige Zeitgabe über Netzwerke mit variabler Paketlaufzeit (Ping) zu ermöglichen.
NTP ist in UNIX-artigen Betriebssystemen in Form des Hintergrundprozesses ntpd implementiert. Dieser synchronisiert die lokale Uhr mit Hilfe von externen Zeitsignalen, die er entweder direkt von einem lokalen Empfänger (DCF77, GPS, Loran-C) oder per NTP von einem NTP-Server erhält. Damit die lokale Uhrzeit nicht nur zu den zyklischen Synchronisationszeitpunkten präzise mit dem externen Signal übereinstimmt, korrigiert der ntpd-Prozess nicht nur die Phase sondern auch die Frequenz des lokalen Zeitgebers mit Hilfe einer Software-PLL. Um den internen Zeitgeber mit Hilfe eines hochpräzisen Sekundensignals noch enger an einen externen Normalzeitempfänger zu koppeln haben einige UNIX-Varianten (unter anderem Linux und FreeBSD) die oben erwähnte Software-PLL im Kernel implementiert.
Die Zeitstempel im NTP sind 64 Bits lang. 32 Bits kodieren die Sekunden seit dem 1. Januar 1900 00:00:00 Uhr, weitere 32 Bits den Sekundenbruchteil. Auf diese Weise lässt sich ein Zeitraum von 232 Sekunden (etwa 136 Jahre) mit einer Auflösung von 2−32 Sekunden (etwa 0,25 Nanosekunden) darstellen. Obwohl diese Skala also alle 232 Sekunden umspringt, sind NTP-Implementierungen in der Lage, die tatsächliche Zeit festzustellen, indem sie eine ungefähre Zeit aus anderen Quellen heranziehen. Da dies nur eine Genauigkeit von ein paar Jahrzehnten erfordert, sollte dies im Alltag kein Problem sein.
NTP nutzt ein hierarchisches System verschiedener Strata, wobei Systeme mit dem Stratum 1 direkt mit einer sehr genauen externen Uhr (z. B. eine GPS- oder andere Funkuhr) verbunden sind. Systeme mit dem Stratum 2 beziehen ihre Zeit von einem oder mehreren Systemen mit Stratum 1 usw. (Achtung: Der Begriff Stratum hat hier eine andere Bedeutung als sonst in der Telekommunikationstechnik üblich).
NTPv4 kann die lokale Zeit eines Systems über das öffentliche Internet mit einer Genauigkeit von 10 Millisekunden halten, in lokalen Netzwerken sind unter idealen Bedingungen sogar Genauigkeiten von 200 Mikrosekunden und besser möglich. Bei einem hinreichend stabilen lokalen Taktgeber (thermostatgesteuerter Quarzofen, Rubidium-Oszillator, etc.) lässt sich unter Verwendung der Kernel-PLL (siehe oben) der Phasenfehler zwischen Referenzzeitgeber und lokaler Uhr bis in die Größenordnung von wenigen Mikrosekunden reduzieren.
In neueren Windows-Systemen (ab Windows XP) wird SNTP vom Betriebssystem verwendet, um die Uhrzeit auf dem lokalen Computer aktuell zu halten. Dies wird durch den Hintergrundprozess w32time übernommen. Da Microsoft dieses Verfahren zur Zeitsynchronisation erst sehr spät einführte, haben viele Anbieter eigenständige Programme zur Zeitsynchronisation unter Windows entwickelt (Siehe Links). Durch die Verwendung moderener Authentifizierungssysteme (wie Kerberos) ist eine genaue Zeitsynchronisation notwendig.
Siehe auch:
Software:
Netzwerkprotokoll auf Anwendungsschicht | Verteilte Systeme
Network Time Protocol | NTP | Network Time Protocol | Network Time Protocol | Network Time Protocol | NTP (tietotekniikka) | Network Time Protocol | Network Time Protocol | NTP | Network Time Protocol | Network Time Protocol | NTP | Network Time Protocol | NTP | Network Time Protocol | Network Time Protocol
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Network Time Protocol".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world