Radzenie sobie z synchronizacją komputerów i znacznikami czasowymi
Wysłane przez Stuart on Czerwiec 30th, 2009
Czas jest ważny dla sprawnego funkcjonowania naszego codziennego życia. Wszystko, co robimy, jest albo regulowane, albo powstrzymywane z powodu czasu. Jeszcze czas jest jeszcze ważniejszy dla systemów komputerowych, ponieważ jest to jedyny punkt odniesienia, w którym komputer musi rozróżniać zdarzenia i procesy.
Wszystko, co robi komputer, jest rejestrowane przez procesor wraz z tym, jaki proces został wykonany i kiedy zostało ono wykonane. Ponieważ komputery mogą przetwarzać setki, jeśli nie tysiące transakcji, na sekundę, więc znacznik czasu jest niezbędny do ustalenia kolejności zdarzeń.
Komputery nie odczytują i nie wykorzystują czasu w tym samym formacie, co my. Komputerowy znacznik czasu ma postać pojedynczej cyfry, która zlicza liczbę sekund od nastawy czasu. W większości systemów jest to znane jako "główna epoka" i jest ustawione na 00: 00: 00 UTC w styczniu 1, 1970. Tak więc znacznik czasu dla daty 23 Czerwiec 2009 odczytałby znacznik czasu: 1246277483, ponieważ jest to liczba sekund od pierwszej epoki.
Komputerowe znaczniki czasu są przesyłane przez sieci i Internet, na przykład za każdym razem, gdy wysyłana jest wiadomość e-mail, towarzyszy jej sygnatura czasowa. Odpowiedź na wiadomość e-mail zawiera również sygnaturę czasową. Jednak, gdy żaden komputer nie jest zsynchronizowany, e-mail z odpowiedzią mógł wrócić z wcześniejszym kodem, co może spowodować nieporozumienia na komputerze, ponieważ zgodnie z jego dziennikami wiadomość e-mail zostanie dostarczona z powrotem przed wysłaniem oryginału.
Z tego powodu sieci komputerowe są zsynchronizowane z globalną skalą czasu UTC (Coordinated Universal Time). UTC jest zachowywane przez konstelację zegarów atomowych, co oznacza, że sieć komputerowa zsynchronizowana ze źródłem UTC będzie bardzo dokładna.
synchronizacja czasu na komputerach jest obsługiwany przez protokół NTP (Network Time Protocol). Specjalny dedykowane serwery NTP są dostępne, aby otrzymać bezpieczny kod czasu z albo Sieć GPS lub ze specjalistycznych transmisji radiowych nadawanych przez krajowe laboratoria fizyczne, a następnie synchronizuje całe sieci do pojedynczego źródła czasu.