Zapowiedź Systemd-timesyncd w Systemd pliku NEWS robi dobrą robotę wyjaśniając różnice pomiędzy tym programem w porównaniu z chrony i narzędzia podobnego. (moje podkreślenie):
Dodano nowego demona „systemd-timesyncd” do synchronizacji zegara systemowego w sieci. Implementuje klienta SNTP . W przeciwieństwie do implementacji NTP, takich jak chrony lub serwer referencyjny NTP, implementuje to tylko stronę klienta i nie przeszkadza w pełnej złożoności NTP, koncentrując się tylko na zapytaniach o czas z jednego zdalnego serwera i synchronizowanie z nim lokalnego zegara . O ile nie zamierzasz obsługiwać NTP klientom sieciowym lub chcesz łączyć się z lokalnymi zegarami sprzętowymi, ten prosty klient NTP powinien być bardziej niż odpowiedni dla większości instalacji. [...]
Ta konfiguracja jest częstym przypadkiem użycia większości hostów we flocie serwerów. Zwykle będą synchronizowane z lokalnymi serwerami NTP, które same są synchronizowane z wielu źródeł, w tym ewentualnie ze sprzętu. systemd-timesyncd próbuje zapewnić łatwe w użyciu rozwiązanie dla tego typowego przypadku użycia.
Próbujesz odpowiedzieć na twoje konkretne pytania:
Jakie są prawdziwe różnice między nimi pod względem dokładności?
Wierzę, że można uzyskać większą dokładność, uzyskując dane synchronizacji z wielu źródeł, co nie jest szczególnie obsługiwanym przypadkiem użycia dla systemd-timesyncd. Ale gdy używasz go do pobierania danych synchronizacji z centralnych serwerów NTP podłączonych do niezawodnej sieci wewnętrznej, używanie wielu źródeł nie jest tak istotne i uzyskujesz dobrą dokładność z jednego źródła.
Jeśli synchronizujesz swój serwer z zaufanym serwerem w sieci lokalnej i w tym samym centrum danych , różnica dokładności między NTP i SNTP będzie praktycznie nie istniała. NTP może brać pod uwagę RTT i dokonywać pomiaru czasu, ale nie jest to tak korzystne, gdy twój RTT jest naprawdę mały, jak w przypadku szybkiej sieci lokalnej i pobliskiej maszyny. Nie potrzebujesz również wielu źródeł, jeśli możesz zaufać temu, którego używasz.
Jakie są różnice w wydajności?
Uzyskiwanie synchronizacji z jednego źródła jest znacznie prostsze niż uzyskiwanie z wielu źródeł, ponieważ nie musisz podejmować decyzji, które źródła są lepsze od innych, i ewentualnie łączyć informacje z wielu źródeł. Algorytmy są znacznie prostsze i będą wymagały mniejszego obciążenia procesora w prostym przypadku.
Czego potrzebuje „nie prosta” synchronizacja czasu, czyli przypadki użycia dla chronicznego klienta NTP?
Zostało to rozwiązane w powyższym cytacie, ale w każdym razie są to przypadki użycia Chrony, które nie są objęte przez systemd-timesyncd:
- działający serwer NTP (aby inne hosty mogły używać tego hosta jako źródła synchronizacji);
- uzyskiwanie informacji o synchronizacji NTP z wielu źródeł (co jest ważne dla hostów otrzymujących te informacje z publicznych serwerów w Internecie); i
- uzyskiwanie informacji o synchronizacji z lokalnego zegara, który zwykle wymaga specjalistycznego sprzętu, takiego jak urządzenia GPS, które mogą uzyskać dokładne informacje o czasie z satelitów.
Te przypadki użycia wymagają Chrony, NTTP lub podobnego.