plecy

Co to jest NTP? Przewodnik dla początkujących po protokole czasu sieciowego - NTP

Autor: Ben Telford, 11 marzec 2019 r.

NTP to protokół internetowy używany do synchronizacji zegarów w sieciach komputerowych z dokładnością do kilku milisekund uniwersalnego czasu koordynowanego (UTC). Umożliwia urządzeniom żądanie i odbieranie czasu UTC z serwera, który z kolei otrzymuje dokładny czas z zegara atomowego.

Co to jest NTP? Zegar pokazujący dokładny czas

Co to jest NTP?

„Człowiek z jednym zegarkiem wie, która jest godzina. Człowiek z dwoma zegarkami nigdy nie jest pewien”

Prawo Segala wyśmiewa osobę, która nie stara się sprawdzić, czy ma rację, jednocześnie podkreślając złożoność otrzymywania informacji z więcej niż jednego źródła.

Jeśli chodzi o synchronizację czasu w sieci, protokół czasu sieciowego (NTP) rozwiązuje oba problemy, zapewniając użytkownikom pewności dokładnego czasu w całej sieci urządzeń.

Jak każdy protokół sieciowy, NTP to zestaw reguł lub konwencji, które określają, w jaki sposób urządzenia w sieci powinny przesyłać, odbierać i rozumieć dane. Pomyśl o tym jako o wspólnym języku, umożliwiającym urządzeniom komunikowanie się, w tym przypadku o czasie.

NTP umożliwia urządzeniom sieciowym, takim jak zegary, telefony i komputery, żądanie i odbieranie czasu z serwera, który z kolei otrzymuje dokładny czas z ostatecznego źródła czasu, takiego jak zegar atomowy.

NTP został opracowany w latach 80. i obecnie dostępny jest w wersji czwartej. Od momentu wydania jest używany do synchronizacji krytycznych systemów firm, organizacji i rządów na całym świecie.

Dlaczego synchronizacja czasu jest ważna?

Co to jest NTP? Dokładny czas na stacji kolejowej
Dokładny czas jest niezbędny w codziennym życiu.

Ponieważ życie staje się zdigitalizowane i zautomatyzowane, dokładny czas jest coraz ważniejszy:

Dla organizacji dowolnej wielkości, NTP jest opłacalną, niezawodną i przyjazną dla użytkownika metodą dystrybucji precyzyjnego czasu w sieci, pozwalającą użytkownikom na zwiększenie produktywności, poprawę obsługi klienta, zwiększenie bezpieczeństwa i nie tylko.

Co więcej, wykorzystując NTP do synchronizacji z UTC — globalnym standardem czasu — organizacje i rządy są w stanie koordynować operacje międzynarodowe.

Co to jest UTC i kto o nim decyduje?

UTC to standard, na który świat się zgodził jako na podstawę czasu cywilnego. Jest to wynik trwającego dziesięciolecia procesu wymyślania, rewizji i współpracy, podczas którego standard przesunął się z czasu uniwersalnego Greenwich (GMT) na czas atomowy (TAI) i UTC.

Co ważne, UTC jest standardem czasu, a nie strefą czasową, co oznacza, że jest taki sam na całym świecie i nie ma na niego wpływu zmiana czasu na letni. W rzeczywistości strefy czasowe są wyrażane zgodnie z ich przesunięciem względem czasu UTC (+/- liczba godzin). UTC jest utrzymywany przez porównanie ponad 200 zegarów atomowych zlokalizowanych na całym świecie. Bureau International des Poids et Measures (BIPM) we Francji jest odpowiedzialne za zestawianie tych danych i generowanie ostatecznego czasu UTC

Jak działa NTP?

Co to jest NTP? Pakiet serwera czasu Galleon Systems GPS NTP
Serwer czasu i antena mogą synchronizować sieć z UTC.

NTP udostępnia UTC organizacji, pobierając sygnał czasu z jednego lub więcej zegarów atomowych i dystrybuując go do urządzeń sieciowych.

W najprostszym przypadku sieć NTP składa się z urządzeń, które mają być synchronizowane (znanych jako klienci) oraz serwera NTP, który odbiera czas UTC i udostępnia go klientom.

Klienci i serwer komunikują się w serii żądań i odpowiedzi:

  1. Klient wysyła pakiet żądania NTP do serwera czasu, stemplując czas (sygnatura czasowa pochodzenia).
  2. Serwer stempluje czas odebrania pakietu żądania (znacznik czasu odbioru).
  3. Serwer ponownie stempluje czas, gdy wysyła pakiet odpowiedzi z powrotem do klienta (sygnatura czasowa transmisji).
  4. Klient stempluje czas odebrania pakietu odpowiedzi (znacznik czasu docelowego).

Ten proces może zająć tylko mikrosekundy, ale znaczniki czasu pozwalają klientowi uwzględnić opóźnienie w obie strony i określić różnicę między jego czasem wewnętrznym a czasem dostarczonym przez serwer, dostosowując się w razie potrzeby i utrzymując synchronizację.

Hierarchia NTP: Wyjaśnienie poziomów warstw

Co to jest NTP? Poziomy warstw hierarchii NTP
Urządzenia w jednej warstwie mogą zapewnić czas urządzeniom w następnej.

W dużych sieciach może być tak wielu klientów, że serwer nie może obsłużyć żądań od nich wszystkich. W takich przypadkach serwery i klienci są ułożeni w hierarchii poziomów zwanych warstwami.

Serwery warstwy pierwszej mają bezpośrednie połączenie, za pośrednictwem sygnału radiowego lub GPS, z głównym źródłem czasu i udostępniają ten czas klientom warstwy drugiej za pośrednictwem połączenia sieciowego.

Z kolei urządzenia warstwy drugiej mogą działać jak serwer, zapewniając czas klientom w warstwie trzeciej, a urządzenia w warstwie trzeciej mogą dostarczać go klientom w warstwie czwartej — i tak dalej. W ten sposób urządzenia warstwy pierwszej nie są przeładowane zbyt dużą liczbą żądań.

Łącznie możliwych jest 15 zsynchronizowanych poziomów warstwy (warstwa 16 jest dla klientów niezsynchronizowanych), ale każdy z nich wprowadza kolejną warstwę opóźnienia sieci, powodując zmniejszenie dokładności. Aby temu zaradzić, można skonfigurować klientów NTP tak, aby żądali czasu z wielu serwerów, aby pomóc im jak najdokładniej określić poprawny czas.

Co to jest SNTP i czym się różni?

Prosty protokół czasu sieciowego (SNTP) jest dokładnie tym, co sugeruje jego nazwa: uproszczona wersja NTP, która jest odpowiednia dla małych sieci i komputerów o ograniczonej mocy procesowej.

SNTP i NTP mają kilka podobieństw. Na przykład pakiety danych wymieniane między klientami a serwerem czasu są identyczne, dzięki czemu dowolny serwer czasu jest kompatybilny z obydwoma.

W protokole SNTP brakuje jednak wielu algorytmów używanych przez NTP do określania i utrzymywania synchronizacji.

Dla przykładu, NTP oblicza szybkość dryftu danego zegara na podstawie czasu rzeczywistego i dostosowuje tę szybkość, aby utrzymać synchronizację zegara. Z drugiej strony SNTP pozwala zegarowi dryfować, a następnie przeskakuje czas do przodu lub do tyłu, aby dopasować rzeczywisty czas w określonych odstępach czasu.

Pomiędzy tymi interwałami może się zdarzyć, że zegar nie będzie zsynchronizowany, co sprawia, że SNTP nie nadaje się do zastosowań wymagających najwyższego poziomu precyzji.

SNTP różni się również liczbą serwerów używanych do synchronizacji. Podczas gdy NTP pozwala klientom z jednej warstwy działać jako serwery dla klientów w następnej, SNTP opiera się na pojedynczej relacji serwer-klient.

Dodatkowe serwery czasu można określić jako kopie zapasowe, ale SNTP, w przeciwieństwie do NTP, nie jest w stanie komunikować się z kilkoma serwerami, aby określić, który jest najdokładniejszy. SNTP został wydany na początku lat 90., aby dopasować się do ograniczonej mocy obliczeniowej komputerów w tamtych czasach. Obecnie istnieje niewiele przypadków, w których NTP nie może być obsłużony, ale SNTP nadal może być przydatne w prostych aplikacjach, które nie wymagają wyższego poziomu precyzji zapewnianego przez NTP.

Publiczne serwery NTP vs. lokalne serwery NTP

Co to jest NTP? Jak działają sieciowe serwery poza firewall?
Lokalne serwery NTP znajdują się wewnątrz twojej sieci i unikają luk w zabezpieczeniach powodowanych przez serwery publiczne.

Istnieją dwa typy serwerów NTP, których można użyć do udostępnienia w sieci czasu UTC: serwery publiczne i serwery lokalne.

Publiczny serwer czasu jest własnością i jest obsługiwany przez stronę trzecią, która udostępnia go do użytku przez Internet. Projekt puli NTP zapewnia internetowy katalog serwerów publicznych, który umożliwia bezpłatne przekierowanie klientów do jednego z nich.

Lokalne (inaczej wewnętrzne) serwery NTP to te, które sam posiadasz i instalujesz w swojej siedzibie, ustanawiając fizyczne połączenie sieciowe między serwerami a klientami.

Jeśli zsynchronizowany czas ma kluczowe znaczenie dla twoich operacji, wewnętrzne serwery czasu są bezpieczniejszą i bardziej niezawodną opcją. Zapewniają lepszą dokładność i większą kontrolę, unikając różnych wad serwerów publicznych:

Publiczny serwer czasu Lokalny serwer czasu
Posiadane i prowadzone przez osoby trzecie. Dostępność nie jest gwarantowana Jest Twoją własnością i Ty go kontrolujesz przez cały czas
Synchronizacja zależy od niezawodnego połączenia internetowego Synchronizacja jest utrzymywana w przypadku utraty połączenia
Wymaga otwartego portu w firewall, co sprawia, że sieć jest podatna na ataki Znajduje się w Twoim firewall, zachowując bezpieczeństwo sieci
Możesz doświadczyć zatorów przy dostępie dużej liczby użytkowników Używany tylko przez Ciebie, gwarantowany dostęp 24/7
Może wiązać się z dużym opóźnieniem w obie strony, zmniejszając dokładność klientów NTP, którzy nie są w stanie uwzględnić opóźnienia sieci Minimalne opóźnienie w obie strony, dzięki czemu lokalne serwery są dokładniejsze dla użytkowników SNTP
Mogą występować ograniczeniu szybkości, co ogranicza liczbę żądań, które Twoi klienci mogą przesyłać do serwera. Przekroczenie limitów stawek może skutkować zakazem Umożliwia ustawienie własnych limitów stawek i korzystania z tylu klientów, ile chcesz - idealny dla dużych sieci

Jak zsynchronizować sieć z wewnętrznym serwerem NTP

Co to jest NTP? Jak działają sieciowe serwery czasu za zaporą
Typowa konfiguracja wykorzystuje NTP do synchronizacji sieci z sygnałem czasu GPS.

Aby skonfigurować sieć NTP z wewnętrznym serwerem czasu, potrzebujesz kilku rzeczy:

Zegary referencyjne

Zegar referencyjny jest głównym źródłem czasu, które definiuje i podaje czas UTC. Zegary atomowe są najdokładniejszym typem zegarów referencyjnych, zapewniającym niemal niewyobrażalne poziomy precyzji.

Na przykład NIST-F2, stworzony przez Narodowy Instytut Standardów i Technologii Stanów Zjednoczonych, mierzy wibracje atomu cezu w celu zdefiniowania sekundy (9,192,631,770 wibracji na sekundę). Gdyby działał bez przerwy, zegar nie zyskałby ani nie straciłby jednej sekundy w ciągu 300 milionów lat.

Na szczęście nie musisz instalować zegara atomowego w swojej serwerowni, aby otrzymywać dokładny czas. Są instalowane w satelitach globalnego systemu pozycjonowania i są utrzymywane w laboratoriach krajowych agencji normalizacyjnych na całym świecie. Zegary te przesyłają sygnały czasu, które można odebrać i wykorzystać do synchronizacji własnej sieci.

Odbiorniki czasu

Co to jest NTP? Antena GPS firmy Galleon Systems
Anteny GPS mogą odbierać sygnał czasu z wielu satelitów.

Każda satelita GPS nadaje sygnał czasu, który każdy może odebrać za pomocą anteny GPS. Globalny system pozycjonowania został zaprojektowany tak, aby co najmniej cztery satelity były stale dostępne z dowolnego miejsca na świecie, co czyni go wysoce niezawodnym źródłem dokładnego czasu.

Alternatywnie, anteny radiowe odbierają sygnał czasu z jednego z kilku zegarów atomowych na Ziemi. Zasięg tych sygnałów jest zlokalizowany, więc użytkownicy muszą zastanowić się, która stacja zapewnia najsilniejszy sygnał i użyć anteny ustawionej na tę częstotliwość.

Sygnały czasu GPS są najdokładniejsze i mają tę zaletę, że są dostępne na całym świecie. Antena wymaga jednak widoku nieba 360°, co nie jest możliwe w każdej sytuacji.

Z drugiej strony sygnały radiowe czasu mogą być odbierane przez okna, dzięki czemu źródło czasu radiowego jest dobrym rozwiązaniem dla pomieszczeń, które nie mają niezakłóconego widoku nieba.

Jednak na sygnał radiowy może mieć wpływ topografia i przestoje, co powoduje, że jest mniej niezawodny i nie jest idealny do synchronizacji bardzo krytycznych systemów.

Tak czy inaczej, odbiornik łączy się z wewnętrznym serwerem NTP za pomocą kabla, który może mieć do 1000 metrów długości, gdy jest używany ze wzmacniaczem mocy, co daje firmom dużą elastyczność, jeśli chodzi o instalację.

Wewnętrzne serwery NTP

Co to jest NTP? Serwer czasu NTP firmy Galleon Systems do montażu w szafie rakowej
Serwer NTP rakowy można łatwo zainstalować wraz z istniejącym sprzętem IT.

Serwer NTP otrzymuje czas z zegara referencyjnego za pośrednictwem anteny i dostarcza go do sieci.

Wybór serwera będzie zależał od wielu czynników:

Wybierz serwer czasu radiowego lub GPS, w zależności od tego, które z tych źródeł jest dla Ciebie najlepsze. Alternatywnie, serwery z podwójnym czasem są dobrym wyborem dla aplikacji, które wymagają najwyższego poziomu niezawodności. Serwery te wykorzystują antenę radiową i GPS do odbierania czasu z obu, dzięki czemu serwer może pobierać czas z najsilniejszego źródła i automatycznie powracać do drugiego w przypadku utraty jednego sygnału.

Aby uniknąć wydawania pieniędzy na funkcje, których nie potrzebujesz, powinieneś dopasować swój serwer czasu do rozmiaru swojej sieci.

Galleon Systems NTS-4000 synchronizuje pojedynczą sieć i jest idealny dla mniejszych firm. NTS-6002 może synchronizować dwie niezależne sieci, co czyni go doskonałym wyborem dla organizacji z oddzielnymi sieciami pracowników i klientów.

W przypadku najbardziej wymagających aplikacji NTS-8000 może synchronizować do sześciu sieci — jest to idealne rozwiązanie do dostarczania dokładnego czasu niezależnym sieciom na różnych piętrach budynku.

Każdy z tych serwerów czasu jest w stanie zsynchronizować tysiące klientów i wszystkie są dostępne w konfiguracji radiowej, GPS lub podwójnej.

Serwery czasu mogą działać w kilku różnych systemach operacyjnych, ale każdy klient może uzyskać dostęp do serwera działającego w dowolnym systemie operacyjnym. Na przykład klienci z systemem MacOS mogą komunikować się z serwerem czasu Windows za pomocą wbudowanego oprogramowania klienckiego NTP.

Na koniec wybierz serwer, który spełnia fizyczne wymagania Twojej przestrzeni. Wiele serwerów czasu jest dostępnych w obudowach do montażu w szafie rakowej, co umożliwia ich integrację z istniejącym sprzętem IT. Alternatywnie możesz cieszyć się tą samą funkcjonalnością z samodzielnego serwera, który znajduje się w obudowie standalone – do postawienia na powierzchni - np NTS 4000 GPS.

Klienci NTP

Co to jest NTP? Zegar Ethernet Galleon Systems
Zegary Ethernet są idealne do wyświetlania dokładnego czasu w całym obiekcie.

Klienci to urządzenia, które łączysz z serwerem czasu w celu synchronizacji. Klientem może być praktycznie każde urządzenie, które spełnia trzy warunki:

Możliwi klienci to komputery, telefony, zegary, systemy CCTV, systemy rejestrowania, terminale płatnicze i inne.

Wiele urządzeń ma wbudowane oprogramowanie klient NTP . Jeśli nie, oprogramowanie TimeSync można łatwo zainstalować na urządzeniach z systemem Windows, umożliwiając synchronizację wielu klientów do różnych celów.

Co to jest NTP? Podsumowanie

NTP zapewnia firmom i organizacjom niezawodną, przyjazną dla użytkownika i ekonomiczną metodę synchronizacji czasu.

Jest to jeden z najstarszych protokołów internetowych, które wciąż jest w użyciu i, choć obecnie w wersji czwartej, to zachowuje wiele zasad, które sprawiły, że był tak popularny we wczesnych latach.

Podłączając swoje urządzenia sieciowe do serwera czasu, który odbiera sygnał z określonego źródła czasu, możesz cieszyć się precyzyjnym czasem w dowolnym miejscu, zwiększając produktywność, poprawiając obsługę klienta i synchronizując swoje operacje.

Aby porozmawiać na temat wdrażania NTP w Twojej organizacji, skontaktuj się z Galleon Systems: 22 526 6149

_________________

1Thales Group