Introdução ao Network Time Protocol

(Network Time ProtocolNTP) é um dos protocolos mais antigos da Internet ainda em uso. Desenvolvido pelo Dr. David Mills da Universidade de Delaware, tem sido em uso constante e atualizado continuamente desde 1985. O NTP é um protocolo projetado para sincronizar os relógios em computadores e redes em toda a Internet ou redes locais ou de área mais larga (LANs / WANS).

Em uma economia global moderna, a sincronização do tempo é essencial para a realização de transações sensíveis ao tempo, como a reserva de um bilhete de avião para licitação em um site de leilões na Internet. Se os relógios não foram sincronizados ao mesmo tempo, você pode encontrar o seu assento de avião vendido depois de comprá-lo e os administradores da Ebay não poderiam descobrir qual oferta foi a mais recente.

O NTP é um sistema de várias camadas, cada camada sendo chamada de estrato. Os servidores em cada nível se comunicam entre si (pares) e fornecem tempo para baixar os estratos. Servidores no estrato superior, o estrato 1 se conecta a um relógio atômico através da Internet ou por um rádio ou receptor GPS enquanto um servidor 2 de estrato se conecta a um estrato 1.

O NTP usa um algoritmo (algoritmo de Marzullo) para sincronizar o tempo em uma rede usando escalas de tempo como UTC (Tempo Universal Coordenado ou Temps Universel Coordonné) e pode suportar recursos como saltos segundos - adicionados para compensar a desaceleração da rotação da Terra.

O NTP (a versão 4 é a mais recente) pode manter o tempo através da Internet pública dentro dos milissegundos 10 (1 / 100th de um segundo) e pode ser ainda melhor em LAN com precisão de microseconds 200 (1 / 5000th de segundo) em condições ideais .

Servidores NTP tempo trabalhe dentro do conjunto TCP / IP e confie no UDP (User Datagram Protocol). Uma forma menos complexa de NTP chamada Protocolo de Tempo de Rede Simples (SNTP) que não requer o armazenamento de informações sobre comunicações anteriores, necessárias para NTP, é usada em alguns dispositivos e aplicativos onde o tempo de precisão de alta precisão não é tão importante e também está incluído como padrão no software do Windows (embora as versões mais recentes do Microsoft Windows tenham o NTP completo instalado e o código-fonte seja gratuito e prontamente disponível na Internet).

O programa NTP (conhecido como um daemon no UNIX e um serviço no Windows) é executado em segundo plano e se recusa a acreditar no tempo que é informado até que várias trocas tenham ocorrido, cada um passando um conjunto de testes. Se as respostas de um servidor satisfizerem essas "especificações de protocolo", o servidor será aceito. Geralmente, leva cerca de cinco boas amostras (cinco minutos) até que um servidor NTP seja aceito como fonte de sincronização.

Sincronização com NTP é relativamente simples, ele sincroniza tempo com referência a uma fonte de relógio confiável, como um relógio atômico, embora estes são extremamente caros e são geralmente só pode ser encontrada em laboratórios de física em grande escala, no entanto NTP pode usar tanto o de Posicionamento Global sistema de rede (GPS) ou transmissão de rádio especialista para receber hora UTC a partir desses relógios.

Existe uma versão simplificada do NTP chamado Simple Network Time Protocol (SNTP) que não requer o armazenamento de informações sobre comunicações anteriores como exigido pelo NTP. Ele é usado em alguns dispositivos e aplicativos onde o tempo de precisão de alta precisão não é tão importante e está instalado em versões mais antigas do Microsoft Windows. Windows, uma vez que o 2000 incluiu o Windows Time Service (w32time.exe) que utiliza o SNTP para sincronizar o relógio do computador. NTP também está disponível em UNIX e LINUX (download via NTP.org).

Este post foi escrito por

Stuart

Leitura relacionada