21Aug

Jak mohou servery NTP spravovat tak, aby zůstaly přesné?

click fraud protection

Mnoho z nás má příležitostný problém s našimi počítači a dalšími zařízeními, které si zachovávají přesné nastavení času, ale rychlá synchronizace s NTP serverem je opět v pořádku. Pokud však naše vlastní zařízení ztratí přesnost, jak NTP servery dokážou zůstat tak přesné?

dnešní otázka &Odpověď na zasedání se k nám dostala s laskavým svolením SuperUser - podřízenou výměnou Stack Exchange, skupině webů Q & A založených na komunitě.

Foto s laskavým svolením LEOL30( Flickr).

Otázka

čtečka SuperUser Frank Thornton chce vědět, jak NTP servery dokážou zůstat tak přesné:

Všiml jsem si, že na mých serverech a jiných strojích jsou hodiny vždy unášeny tak, aby se musely synchronizovat, aby zůstaly přesné.Jak se hodiny NTP serveru udržují od unášení a vždy zůstávají tak přesné?

Jak mohou servery NTP zůstat tak přesné?

Odpovězka pro odpověď

SuperUser Michael Kjorling má pro nás odpověď: Servery NTP

se spoléhají na vysoce přesné hodiny pro přesné měření času. Společným zdrojem času pro centrální servery NTP jsou atomové hodiny nebo GPS přijímače( nezapomeňte, že GPS satelity mají atomové hodiny na palubě).Tyto hodiny jsou definovány jako přesné, protože poskytují velmi přesný časový údaj.

instagram viewer

Neexistuje nic magického o GPS ani atomových hodinách, které by vám řekly přesně jaký je čas. Vzhledem k tomu, jak atomové hodiny pracují, jsou jednoduše velmi dobré, protože jednou bylo řečeno, kolik hodin je, udržuje přesný čas( protože druhý je definován z hlediska atomových efektů).Ve skutečnosti je třeba poznamenat, že čas GPS se liší od času UTC, který jsme více zvyklí vidět. Tyto atomové hodiny jsou synchronně synchronizovány s Mezinárodním atomovým časem nebo TAI, aby nejen přesně říkaly časový průběh, ale také čas .

Jakmile máte přesný čas na jednom systému připojeném k síti, jako je internet, je to záležitost inženýrství protokolů umožňující přenos přesných časů mezi hostitelemi přes nespolehlivou síť.V tomto ohledu se NTP server Stratum 2( nebo vzdálenější od skutečného zdroje času) neliší od systému stolního počítače, který se synchronizuje se sadou NTP serverů.

V době, kdy máte několik přesných časů( získaných ze serverů NTP nebo jinde) a znáte míru pokroku vašich místních hodin( což je snadné určit), můžete vypočítat odchylku místních hodin od poměru "věřilpřesný "průchod času. Po uzamčení může být tato hodnota použita k nepřetržitému nastavení místních hodin tak, aby se hodnoty hlášení velmi blížily přesnému průchodu času, i když místní hodiny v reálném čase jsou velmi nepřesné.Pokud vaše místní hodiny nejsou vysoce nevyhovující , mělo by to umožnit udržení přesného času po určitou dobu, i když váš časový zdroj proti proudu nebude z jakéhokoli důvodu dostupný.

Některé implementace klientů NTP( pravděpodobně většina implementací ntpd démonů nebo systémových služeb) to dělají a jiné( jako ntpd společník ntpdate, který jednoduše nastaví hodiny jednou) ne. Toto je obyčejně označováno jako driftový soubor , protože trvale uchovává měřítko driftu hodin, ale přísně řečeno, nemusí být uložen jako konkrétní soubor na disku.

V NTP je Stratum 0 podle definice přesným zdrojem času. Stratum 1 je systém, který využívá časový zdroj Stratum 0 jako svůj zdroj času( a proto je o něco méně přesný než časový zdroj Stratum 0).Stratum 2 je opět o něco méně přesný než Stratum 1, protože synchronizuje svůj čas se zdrojem Stratum 1 a tak dále. V praxi je tato ztráta přesnosti natolik malá, že je zcela zanedbatelná ve všech, ale nejextrémnějších případech.

Musíte něco přidat k vysvětlení?Zní to v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.