¿Qué es NTP (Protocolo de tiempo de red)?
NTP, o "Network Time Protocol", es un protocolo utilizado para sincronizar los relojes de los dispositivos conectados a una red con la hora correcta. Opera en la capa de aplicação (capa 7) en el modelo de referencia OSI y está definido en "RFC 1305" por el Internet Engineering Task Force (IETF).
Al sincronizar la hora mediante NTP, un cliente NTP envía una solicitud a un servidor NTP. El protocolo de transporte subyacente utilizado es UDP y el puerto del servidor es UDP 123. El servidor NTP responde con el Tiempo Universal Coordinado (UTC), un estándar de tiempo basado en el tiempo atómico internacional mantenido por relojes atómicos de cesio. Existen otras referencias horarias mundiales, como el GMT (Greenwich Mean Time) derivado de la velocidad de rotación de la Tierra, pero el UTC es el más utilizado. Dado que puede haber discrepancias entre UTC y UT1, ocasionalmente se insertan segundos intercalares en UTC para alinear el tiempo con mayor precisión con la rotación de la Tierra.
Los servidores NTP están organizados jerárquicamente en Internet. Los servidores NTP de nivel superior se denominan Estrato 1, y cada nivel inferior aumenta el valor numérico del Estrato. Los servidores NTP sincronizan sus relojes con múltiples servidores de nivel superior. Los servidores de Stratum 1 obtienen su hora precisa de "Stratum 0", que incluye fuentes de hora precisas como GPS y relojes atómicos. Las fuentes de tiempo de Stratum 0 mantienen una precisión de menos de un microsegundo (1/1.000.000 de segundo) y están conectadas directamente a los servidores de Stratum 1.
Debido a que NTP comunica datos de tiempo a través de redes, debe tener en cuenta los retrasos en la comunicación midiéndolos y ajustándolos. NTP calcula el tiempo de comunicación de ida y vuelta y lo utiliza para corregir los retrasos de la red. Sin embargo, esto supone retrasos simétricos en ambas direcciones. Si hay una diferencia entre los retrasos en las rutas de ida y vuelta, la mitad de la diferencia contribuye al margen de error.