Network Time Protocol (NTP), comprensión de la sincronización.
publicado por Richard N Williams on 7th octubre, 2008
Network Time Protocol parece haber existido para siempre. De hecho, es uno de los protocolos más antiguos de Internet desarrollado en el 1980 por el profesor David Mills y su equipo de la Universidad de Delaware.
En un mundo relajado, quizás no importe si las redes de computadoras no están sincronizadas. Las únicas consecuencias de los errores de sincronización podrían ser que llegue un correo electrónico antes de su envío, pero en sectores como la reserva de asientos de líneas aéreas, la bolsa de valores o las comunicaciones por satélite, fracciones de segundo pueden causar errores graves, como vender asientos más de una vez, la pérdida de millones de dólares o incluso fraude.
Las computadoras son máquinas lógicas y, como el tiempo es lineal para una computadora, cualquier evento que ocurra en una máquina debe ocurrir antes de que las noticias de ese evento lleguen a otra. Cuando las redes no están sincronizadas, las computadoras luchan para lidiar con eventos que obviamente han ocurrido (como el envío de un correo electrónico) pero de acuerdo con el reloj y la marca de tiempo aún no lo han hecho, solo piense en el error del milenio donde se temía que los relojes ¡regrese a 1900!
Por esta misma razón, se desarrolló NTP. NTP usa un algoritmo (el algoritmo de Marzullo) para sincronizar el tiempo con la versión actual de NTP. Puede mantener el tiempo en Internet público dentro de los milisegundos de 10 y puede funcionar aún mejor en redes LAN. Los servidores de tiempo NTP funcionan dentro del paquete TCP / IP y dependen de UDP (Protocolo de datagramas de usuario).
NTP servidores normalmente son dispositivos NTP dedicados que utilizan una única referencia de tiempo para sincronizar una red. Esta referencia de tiempo suele ser una fuente UTC (hora universal coordinada). UTC es una escala de tiempo global distribuida por relojes atómicos a través de Internet, transmisiones de radio de onda larga especializadas oa través de la red GPS (Sistema de Posicionamiento Global).
El algoritmo NTP usa esta referencia de tiempo para determinar la cantidad de avanzar o retroceder el sistema o el reloj de la red. NTP analiza los valores de la marca de tiempo incluyendo la frecuencia de errores y su estabilidad. Un servidor NTP mantendrá una estimación de la calidad tanto de los relojes de referencia como de sí mismo.
NTP es jerárquico La distancia desde la referencia de tiempo se divide en estratos. Stratum 0 es la referencia del reloj atómico; Stratum 1 es el servidor NTP, mientras que Stratum 2 es un servidor que recibe información de sincronización del servidor NTP. El NTP puede soportar estratos casi ilimitados, aunque cuanto menos lejos esté de la referencia de temporización, menos precisa será.
Como cada nivel de estrato puede recibir y enviar señales de temporización, la ventaja de este sistema jerárquico es que miles de máquinas se pueden sincronizar con solo la necesidad de un servidor NTP.
NTP contiene una medida de seguridad llamada autenticación. La autenticación verifica que cada marca de tiempo provenga de la referencia de tiempo deseada al analizar un conjunto de claves de cifrado que se envían con la referencia de tiempo. NTP lo analiza y confirma si proviene de la fuente de tiempo al verificarlo contra un conjunto de claves de confianza en sus archivos de configuración.
Sin embargo, la autenticación no está disponible a partir de las fuentes de sincronización de Internet, razón por la cual Microsoft y Novell, entre otros, recomiendan encarecidamente que solo se utilicen referencias temporales como, por ejemplo, una dedicada. GPS NTP servidor o uno que recibe la transmisión nacional de onda larga de frecuencia y tiempo.