robot de la enciclopedia para niños

Network Time Protocol para niños

Enciclopedia para niños
Datos para niños
Network Time Protocol (NTP)
Familia Familia de protocolos de Internet
Función Sincronización de relojes de sistemas informáticos
Puertos 123/UDP
Ubicación en la pila de protocolos
Aplicación NTP
Transporte UDP
Red IP
Estándares
RFC 1305 (NTP)
RFC 4330 (SNTP)
RFC 5905 (versión 4, retrocompatible)

El Network Time Protocol (NTP), o Protocolo de Tiempo de Red, es un sistema que ayuda a que todos los relojes de las computadoras en internet estén sincronizados. Imagina que es como un director de orquesta que asegura que todos los músicos (las computadoras) toquen al mismo ritmo.

NTP funciona enviando pequeños paquetes de información a través de la red. Utiliza un sistema llamado UDP (User Datagram Protocol) y el puerto 123 para comunicarse. Está diseñado para funcionar bien incluso si la conexión a internet no es perfecta y el tiempo que tardan los mensajes en viajar varía.

Este protocolo permite que un servidor (una computadora que tiene la hora exacta) envíe su hora a un cliente (otra computadora que necesita ajustar su reloj). El cliente envía una pregunta al servidor en un momento, y el servidor le responde con la hora actual. Así, el cliente puede saber qué tan adelantado o atrasado está su reloj.

¿Cómo funciona la sincronización de tiempo con NTP?

NTP usa un método especial para asegurarse de que la hora sea lo más precisa posible. Se basa en el Tiempo Universal Coordinado (UTC), que es la hora estándar mundial. Puede mantener los relojes de las computadoras sincronizados con una diferencia de menos de un segundo a través de internet. En redes más pequeñas y rápidas, la precisión puede ser aún mayor.

Los sistemas operativos como Windows y macOS también usan NTP para obtener la hora correcta de internet. Esto ayuda a que tus dispositivos siempre muestren la hora exacta.

¿Qué son los estratos de reloj en NTP?

NTP organiza los relojes en una especie de jerarquía o niveles, llamados "estratos". Cuanto menor es el número del estrato, más preciso es el reloj.

  • Estrato 0: Son los relojes más precisos, como los relojes atómicos o los relojes de radio. Estos relojes son la fuente principal de la hora.
  • Estrato 1: Son servidores que están conectados directamente a un reloj de estrato 0. Reciben la hora directamente de estas fuentes muy precisas.
  • Estrato 2: Son servidores que se sincronizan con uno o más servidores de estrato 1. Luego, estos servidores de estrato 2 pueden sincronizar a otros servidores de estrato 3, y así sucesivamente.

Cuanto más alto es el número del estrato, más lejos está el reloj de la fuente original y, por lo tanto, puede ser un poco menos preciso. Para que el sistema sea más confiable, una computadora puede consultar a varios servidores de estratos superiores.

Historia del Protocolo de Tiempo de Red

NTP es uno de los protocolos de internet más antiguos que todavía se usan hoy en día. Fue creado en 1981 por David L. Mills de la Universidad de Delaware. Él y un equipo de voluntarios han seguido mejorando y manteniendo este importante sistema a lo largo de los años.

A lo largo del tiempo, se han publicado varios documentos técnicos, llamados RFCs (Request for Comments), que describen cómo funciona NTP y sus diferentes versiones.

¿Qué es SNTP?

Existe una versión más sencilla de NTP llamada Protocolo Simple de Tiempo de Red o SNTP. Esta versión es más fácil de usar y requiere menos recursos de la computadora. Es popular en dispositivos más pequeños o en aplicaciones donde no se necesita una precisión extrema.

SNTP también usa el puerto UDP 123, pero es menos complejo que NTP. Su principal desventaja es que no tiene tantas medidas de seguridad, lo que lo hace más vulnerable a ciertos problemas.

SNTP es útil para:

  • Dispositivos donde la hora no es súper crítica.
  • Computadoras pequeñas o microcontroladores con poca memoria.

¿Cómo se intercambian los mensajes en NTP?

El proceso para que un cliente y un servidor NTP sincronicen sus relojes es el siguiente:

Archivo:Intercambio de mensajes NTP
Esquema de intercambio de mensajes NTP.
  • Un cliente envía una solicitud de sincronización al servidor en un momento que llamamos T0.
  • El servidor recibe esta solicitud en el momento T1.
  • Si la diferencia de tiempo entre el cliente y el servidor no es muy grande (menos de 17 minutos), el servidor envía un mensaje de respuesta en el momento T2. Si la diferencia es muy grande, el proceso se detiene.
  • El cliente recibe la respuesta del servidor en el momento T3. Con estos cuatro momentos (T0, T1, T2, T3), el cliente puede calcular la diferencia exacta entre su reloj y el del servidor y ajustar su hora.
Archivo:Flujo mensajes NTP
Esquema de flujo de mensajes de NTP.

Seguridad en el Tiempo de Red (NTS)

Para hacer la sincronización de tiempo más segura, se ha desarrollado un sistema llamado Network Time Security (NTS). Este sistema utiliza el puerto 4460 para intercambiar claves de seguridad.

Los objetivos de NTS son:

  • Identidad: Asegurar que te estás comunicando con el servidor correcto.
  • Autenticación: Verificar que los mensajes de tiempo no han sido cambiados y vienen de una fuente confiable.
  • Confidencialidad: Proteger cierta información en los mensajes de NTP.
  • Protección contra repeticiones: Evitar que alguien use mensajes antiguos para engañar a tu reloj.
  • Coherencia: Asegurar que la respuesta del servidor coincide con tu solicitud.
  • Escalabilidad: Permitir que un servidor pueda atender a muchas computadoras.
  • Rendimiento: Que la seguridad no haga que la sincronización sea demasiado lenta.

Programas que usan NTP

Existen varios programas que implementan el protocolo NTP para sincronizar la hora de las computadoras:

Chrony

Chrony es un programa que viene por defecto en algunas versiones de Linux. Está diseñado para computadoras que no siempre están conectadas a internet, que se apagan y encienden, o que son máquinas virtuales. Es muy eficiente y consume pocos recursos. Chrony tiene dos partes: un programa que se ejecuta en segundo plano (chronyd) y una herramienta para configurarlo (chronyc). Es conocido por ser muy seguro.

OpenNTPD

OpenNTPD es otra implementación de NTP, desarrollada como parte del proyecto OpenBSD. Es fácil de usar y permite sincronizar el reloj de tu computadora con servidores NTP remotos. Se enfoca en la seguridad y en ser sencillo de entender.

Últimas versiones de NTP

La versión más reciente de NTP es la NTPv4, que se lanzó en 2010. Esta versión es compatible con las anteriores, como la NTPv3.

Las mejoras de NTPv4 incluyen:

  • Puede usar tanto direcciones IPv4 como IPv6 para comunicarse.
  • Ofrece más seguridad en las comunicaciones, usando métodos de cifrado.
  • Maneja mejor los nombres de dominio (DNS), lo que facilita la configuración.
  • Mejora los algoritmos para una mayor precisión, especialmente en computadoras portátiles y redes locales.

Galería de imágenes

Véase también

Kids robot.svg En inglés: Network Time Protocol Facts for Kids

kids search engine
Network Time Protocol para Niños. Enciclopedia Kiddle.