Hálózati idő protokoll

A Wikipédiából, a szabad enciklopédiából

A hálózati idő protokoll (angolul Network Time Protocol, NTP) számítógépes rendszerek óráinak szinkronizálására szolgáló hálózati protokoll. A protokoll csomagkapcsolt hálózaton keresztül működik. Az NTP az egyik legrégebbi internetprotokoll. Az NTP-t David L. Mills (University of Delaware), amerikai számítógépes mérnök fejlesztette ki 1981-ben, és azóta is frissíti rendszeresen.[1]

Áttekintés[szerkesztés | forrásszöveg szerkesztése]

Az NTP az egyezményes koordinált világidőt szolgáltatja a szökőmásodperccel kiegészítve. Semmilyen más információt nem szolgáltat. Az NTP a Marzullo-féle algoritmust használja. Az NTP ezredmásodperc pontosságú időjelet szolgáltat az interneten keresztül.[2], [3] 2010 óta az RFC 5905 szabvány[4] írja le az NTP-t. Az NTP User Datagram Protocolt (UDP) használ a 123-as porton keresztül.[5]

Unix[szerkesztés | forrásszöveg szerkesztése]

A modern UNIX rendszereknél az NTP démonként van telepítve, mely folyamatosan fut a háttérben. Az időzítési bizonytalanságok elkerülése céljából egy fáziszárt hurok biztosítja a stabilitást. Az összes jelenlegi verzió ezt a módszert használja (Linux, BSD,Mac OS.X, Solaris, és AIX).

Microsoft Windows[szerkesztés | forrásszöveg szerkesztése]

A Windows 2000 és Windows XP óta az összes Windows verzió rendelkezik egy ’Windows Time Service’ programmal, mely képes szinkronizálni a számítógépet az NTP-hez. Mindemellett a Microsoft nem garantál 2 másodpercnél pontosabb idő információt.[6] Nagyobb pontosság eléréséhez a Microsoft más NTP implementációt ajánl.[7]

Óra rétegek[szerkesztés | forrásszöveg szerkesztése]

Óra rétegek

A sárga nyilak közvetlen kapcsolatot jelölnek, a piros nyilak hálózati kapcsolatok.

Stratum 0 óraréteg, Colorado, Naval Base

Az NTP hierarchikus módon épül fel. Minden réteg elnevezése: ’stratum’, és 0-nál kezdődik a legfelső réteg. Az aktuális stratum szint meghatározza a távolságot a referencia órától, és csökkenti a függést a hierarchiában. A stratum nem jelent minőséget vagy megbízhatóságot.

  • Stratum 0: Itt (cézium, rubídium) atomórák találhatók. A Stratum 0 közvetlenül nem kapcsolódik az internethez.
  • Stratum 1: Ezek a Stratum 0-hoz kapcsolódó számítógépek. Alapesetben a Stratum 2 kiszolgálói NTP-n keresztül, nevük: idő szerverek.
  • Stratum 2: Itt számítógépek vannak, melyek NTP kéréssel fordulnak a Stratum 1 szerverekhez. Általában ezek a számítógépek több Stratum 1 géppel is kapcsolatban vannak, és gyűjtik, elemzik a mintákat, és eldobják a hibás információkat. A Stratum 2 gépek kapcsolódnak a többi Stratum 2 géphez, melynek eredményeként stabilabb időinformációt szolgáltatnak a csoportnak. A Stratum 2 gépek a Stratum 3 gépek kiszolgálói.
  • Stratum 3: Ezen a szinten hasonlóan működnek a gépek, mint az előző szinten, és a Stratum 4 szint kiszolgálói, és így tovább.

Bár az NTP (a használt NTP protokoll verziószámától függően) legfeljebb 256 szintet támogat, csak az első 16 van kihasználva, és a Stratum 16 szinten nincsenek szinkronizálva a gépek.

NTP időbélyeg[szerkesztés | forrásszöveg szerkesztése]

Az NTP által használt 64 bites időbélyeg két részből áll. Az első 32 bit a másodperceket, másik 32 bit a másodperc törtrészét adja meg. Az NTP idő így 132 évenként átfordul, és az elméleti felbontás 2−32 másodperc (233 pikomásodperc). Az NTP 1900. évet használja kiinduló pontnak, és 2036-ban lesz az első átfordulás, még a UNIX-féle 2038-probléma előtt.

Szökőmásodpercek[szerkesztés | forrásszöveg szerkesztése]

Az NTP az UTC időt szolgáltatja. Az UTC figyelembe veszi azt a tényt, hogy a Föld forgásán alapuló idő ettől kis mértékben eltér. A korrekció esetén, amikor egy szökőmásodperc hozzáadódik, az NTP ilyenkor 1 másodpercre felfüggesztődik. Mivel az NTP-nek semmilyen mechanizmusa sincs a szökőmásodpercek történetéről, az egész NTP időskála 1 másodperccel eltolódik.[8]

Biztonsági meggondolások[szerkesztés | forrásszöveg szerkesztése]

Az elmúlt 25 évben jelentős biztonsági probléma nem adódott.[9] [10] A biztonsági auditok során nem tapasztaltak magas kockázati tényezőket.[11]

Más időszinkronizációs protokollok[szerkesztés | forrásszöveg szerkesztése]

Irodalom[szerkesztés | forrásszöveg szerkesztése]

  • Mills, David L: Computer Network Time Synchronization: The Network Time Protocol. (hely nélkül): CRC Press. ISBN 0849358051  

Kapcsolódó szócikkek[szerkesztés | forrásszöveg szerkesztése]

Források[szerkesztés | forrásszöveg szerkesztése]