Czas to wszystko z NTP i znaczenie dokładnej synchronizacji czasu w sieci
Wysłane przez Richard N Williams on Stycznia 11th, 2008
Czasami wszyscy musimy znać czas i mamy wiele różnych urządzeń, aby nam to powiedzieć; od naszych telefonów komórkowych i zegarków do zegarów ściennych w biurze lub dzwonków w wiadomościach radiowych.
Ale jak dokładne są te wszystkie zegary i czy ma to znaczenie, jeśli wszystkie mówią o różnych czasach? Dla naszego codziennego biznesu prawdopodobnie nie ma większego znaczenia, jeśli zegar ścienny biura jest szybszy niż zegarek - twój szef prawdopodobnie nie zwolni cię za spóźnienie.
Jednak w niektórych środowiskach dokładność i synchronizacja są niezbędne, gdy tylko minuta może sprawić, że coś się sprzedaje, a nawet coś, co zostało skradzione!
Niezbędna jest synchronizacja czasu w nowoczesnych sieciach komputerowych. Zapewnia nie tylko jedyną ramkę odniesienia między wszystkimi urządzeniami, ale ma kluczowe znaczenie we wszystkim, od zabezpieczania, planowania i debugowania sieci do dostarczania znacznika czasu dla aplikacji, takich jak gromadzenie danych lub poczta elektroniczna.
Większość wewnętrznych zegarów komputerów i urządzeń sieciowych, zwanych układami zegara czasu rzeczywistego (RTC), zapewnia informacje o czasie i dacie. Chipy są zasilane bateryjnie, dzięki czemu nawet podczas przerw w zasilaniu mogą utrzymać czas.
Jednak komputery osobiste nie są zaprojektowane jako idealne zegary, ich konstrukcja została zoptymalizowana pod kątem masowej produkcji i niskich kosztów, zamiast utrzymywania dokładnego czasu.
Dlatego te wewnętrzne zegary są podatne na dryfowanie i chociaż dla wielu zastosowań może to być całkiem odpowiednie, często maszyny, które pracują razem w sieci, nie będą zsynchronizowane ze sobą, a problemy mogą powstać szczególnie w przypadku transakcji czasowo-czułych. Czy możesz sobie wyobrazić, że kupujesz fotel pasażerski tylko po to, by poinformować go na lotnisku, że bilet został sprzedany dwa razy, ponieważ został kupiony później na komputerze z wolniejszym zegarem?
Serwery czasu NTP (Network Time Protocol) używają pojedynczego odwołania czasowego do synchronizacji wszystkich komputerów w sieci do tego czasu. Odniesienie czasowe może być względne (zegar wewnętrzny komputera lub czas na zegarku) może być bezwzględne, takie jak zegar atomowy, który przekazuje czas UTC (Universal Coordinated Time) i jest tak dokładny, jak to tylko możliwe.
Zegary atomowe są najbardziej bezwzględnymi urządzeniami do pomiaru czasu z dokładnością co sekundę co 1.4 milionów lat. Jednak zegary atomowe są niezwykle drogie i zwykle można je znaleźć tylko w laboratoriach fizyki na dużą skalę. Jednak NTP może synchronizować sieci z czasem UTC za pomocą zegara atomowego, korzystając z sieci systemu GPS (Global Positioning System) lub specjalistycznych transmisji radiowych (MTF w Wielkiej Brytanii).
Podczas gdy niektóre organizacje muszą synchronizować swoje sieci z UTC, takie jak linie lotnicze i giełda, sieć może być zsynchronizowana w dowolnym czasie i nadal działać, ale tak naprawdę nie ma możliwości zastąpienia czasu UTC. Nie tylko skuteczniej jest zsynchronizować sieć z resztą świata, źródło czasu UTC ma kluczowe znaczenie dla zapewnienia bezpieczeństwa przed oszustwami, utratą danych i narażeniem prawnym, a bez niego organizacje mogą być podatne na zagrożenia i tracić wiarygodność.
NTP (wersja 4) może utrzymywać czasu przez Internet publicznego w ciągu milisekund 10 (1 / 100th sekundy) i może wykonywać jeszcze lepiej nad sieciami LAN z dokładnością 200 mikrosekund (1 / 5000th sekundy) w idealnych warunkach.
Uwaga: zdecydowanie zalecane jest przez firmę Microsoft i inne firmy, że należy korzystać z czasu zewnętrznego, a nie z Internetu, ponieważ nie można ich uwierzytelnić. Dostępne są specjalistyczne serwery NTP, które mogą synchronizować czas w sieci przy użyciu sygnału MSF (lub odpowiednika) lub sygnału czasu GPS.