Hogyan kezeli az NTP-kiszolgálók a pontos tartózkodást?
Sokunknak alkalmanként problémái vannak a számítógépeinkkel és más eszközökkel, amelyek pontos időbeállításokat tartottak fenn, de az NTP szerverrel való gyors szinkronizálás ismét jól működik. De ha a saját készülékeink elveszíthetik a pontosságot, hogyan tudnak az NTP-kiszolgálók ilyen pontosak maradni?
A mai Kérdések és válaszok munkamenet a Jóvagyon - a Stack Exchange alosztályának, a közösség által vezérelt Q&A webhelyek csoportjának köszönhetően..
Fotó: LEOL30 (Flickr) jóvoltából.
A kérdés
A SuperUser olvasó Frank Thornton szeretné tudni, hogy az NTP-kiszolgálók hogyan tudnak ilyen pontosak maradni:
Észrevettem, hogy a szervereimen és más gépeimnél az órák mindig úgy mozdulnak el, hogy szinkronizáljanak, hogy pontosak legyenek. Hogyan maradnak az NTP-kiszolgáló óráinak eltolódása, és mindig olyan pontosak maradnak?
Hogyan sikerül az NTP-kiszolgálók olyan pontos maradni?
A válasz
Michael Kjorling, a SuperUser közreműködője válaszol nekünk:
Az NTP-kiszolgálók nagy pontosságú órákra támaszkodnak a pontos időméréshez. A központi NTP-kiszolgálók közös időforrásai az atomórák vagy a GPS-vevők (ne feledje, hogy a GPS-műholdakon atom órák vannak a fedélzeten). Ezek az órák pontosak, mivel rendkívül pontos időértéket adnak.
Nincs semmi varázslatos a GPS-ről vagy az atomórákról, amelyek azt mondják, hogy pontosan mi az idő. Mivel az atom órák működnek, egyszerűen csak nagyon jóak, egyszer már elmondták, milyen idő van, tartás pontos idő (mivel a második az atomhatások alapján van meghatározva). Tény, hogy érdemes megjegyezni, hogy a GPS idő különbözik az UTC-től, hogy jobban szoktunk látni. Ezek az atomórák viszont szinkronban vannak a Nemzetközi Atomidővel vagy a TAI-val, hogy ne csak pontosan elmondják az idő múlását, hanem a idő.
Amint pontos idő van egy olyan rendszeren, amely az internethez hasonló hálózathoz csatlakozik, a protokolltechnika kérdése, amely lehetővé teszi a pontos idők átadását a hosztok között egy nem megbízható hálózatban. Ebben a tekintetben a Stratum 2 (vagy a tényleges időforrástól távolabbi) NTP-kiszolgáló nem különbözik az asztali rendszer szinkronizálásától egy NTP-kiszolgálóval..
Mire van néhány pontos időpontja (az NTP-kiszolgálóktól vagy másutt), és ismeri a helyi óra előrehaladásának sebességét (ami könnyen meghatározható), akkor kiszámíthatja a helyi órák drift-arányát a „hitték pontosan „Az idő múlásával. Ha be van zárva, akkor ezt az értéket használhatjuk arra, hogy folyamatosan módosítsa a helyi órát annak érdekében, hogy az értékeket nagyon pontos időközönként jelezze, még akkor is, ha maga a helyi valós idejű óra nagyon pontatlan. Mindaddig, amíg a helyi óra nem nagy akadozó, ennek lehetővé kell tennie a pontos idő bizonyos ideig történő megtartását, még akkor is, ha az upstream időforrása bármilyen okból nem érhető el.
Néhány NTP kliens implementáció (valószínűleg a legtöbb ntpd démon vagy rendszerszolgáltatás implementáció) ezt teszi, és mások (például az ntpd társ, ntpdate, amely egyszerűen beállítja az órát egyszer). Ezt általában a-nak nevezik drift fájl mert tartósan tárolja az óra eltolódásának mértékét, de szigorúan nem kell külön fájlként tárolni a lemezen.
Az NTP-ben a Stratum 0 pontos időforrás. A Stratum 1 olyan rendszer, amely Stratum 0 időforrást használ időforrásaként (és így kissé kevésbé pontos, mint a Stratum 0 időforrás). A Stratum 2 ismét kissé kevésbé pontos, mint a Stratum 1, mert szinkronizálja idejét a Stratum 1 forrással és így tovább. A gyakorlatban ez a pontatlanság olyan kicsi, hogy teljesen elhanyagolható minden, de a legszélsőségesebb esetben.
Van valami, amit hozzá kell adni a magyarázathoz? Kikapcsolja a megjegyzéseket. Szeretne további válaszokat olvasni más tech-savvy Stack Exchange felhasználóktól? Nézze meg a teljes beszélgetés szálát itt.