NTP es un protocolo de red escalonado basado en un sistema cliente-servidor y se divide en capas (estratos), que determinan la distancia desde el reloj de referencia.

Introducción al Protocolo NTP

1. Acerca de NTP

El protocolo NTP (Network Time Protocol), se encuentra entre los más antiguos de Internet y su uso aún se mantiene vigente desde hace más de 25 años. Inicialmente fue desarrollado para sincronizar ordenadores y procesos críticos dependientes del tiempo sobre la red de Internet. Esta iniciativa fue pensada para el sistema operativo Linux, pero luego fue migrado también a Windows, actualmente es instalado por defecto en muchos sistemas Unix y distribuciones BSD.

2. NTP

NTP es un protocolo de red escalonado basado en un sistema cliente-servidor y se divide en capas (estratos), que determinan la distancia desde el reloj de referencia. NTP fue diseñado para sincronizar los relojes de los sistemas informáticos a través del enrutamiento de redes, haciendo uso de intercambio de paquetes (unidades de información transportadas entre nodos a través de enlaces de datos compartidos) y latencia variable (tiempo de demora entre el momento en que algo inicia y el momento en que su efecto inicia). NTP fue diseñado por Dave Mills, de la universidad de Delaware.

El protocolo NTP nos permite estar sincronizado con el UTC y para ello usa el protocolo UDP ( User Datagram Protocol ) el cual es una parte integrada de la pila TCP/IP. Trabaja a través del puerto 123. Actualmente, la versión que se está utilizando es NTP 4, y todas las versiones son compatibles entre sí, La única modificación entre la versión 3 y 4 es una variación en la cabecera para acomodar IPv6.

NTP utiliza el algoritmo de Marzullo (inventado por Keith Marzullo), el cual sirve para seleccionar fuentes de origen para la estimación exacta del tiempo a partir de un número determinado de fuentes de origen desordenadas, utilizando la escala UTC.

URL: http://www.ietf.org/rfc/rfc1305.txt

3. ESQUEMA DE FUNCIONAMIENTO

NTP utiliza el sistema jerárquico de estratos (stratum) de reloj.

3.1 ¿QUÉ ES UN ESTRATO?

Un estrato es una capa en una red jerárquica que distribuyen la hora exacta a través de todos los dispositivos interconectados.

Estrato 0: son dispositivos de referencia de alta precisión que se sienta encima de la jerarquía del estrato y es típicamente un reloj atómico de cesio o un Sistema de Posicionamiento Global (GPS). Distribuyen Tiempo Universal Coordinado (UTC) a otros dispositivos a través de una red. Todos los dispositivos que reciben hora de un servidor estrato 0 se conocen como “clientes”.

Estrato 1: Los sistemas de este estrato 1 son referidos como servidores de tiempo y posee tres modos de operación. Unicast, anycast y multicast. El cliente inicia los modos unicast y anycast, y el servidor responde con un mensaje de tiempo NTP con el que el cliente se sincroniza. Multicast es un modo de envío de mensajes a solo ciertos elementos de la red, a diferencia de broadcast, el cual habla con todos. A periodos regulares, el dominio es inundado por estos mensajes con motivos de sincronización.

Estrato 2: Los sistemas envían sus peticiones NTP hacia servidores del estrato 1, utilizando el algoritmo de Marzullo para recabar las mejores muestras de datos, descartando que parezcan proveer datos erróneos y compartiendo datos con sistemas del mismo estrato 2. Los sistemas de este estrato actúan como servidores para los estratos más altos.

Esta secuencia de estratos continúa, hasta el nivel de estrato 16, que es el más bajo de todos los niveles estrato. Sin embargo cuanto más alejado este una computadora del reloj de referencia, o sea, cuanto más alto sea su estrato, menos precisa será la sincronización. Pero, para combatir inexactitudes, y hacer que el sistema de estrato más fiable, cada cliente puede adquirir el tiempo desde varios servidores.

4. SERVIDORES

Entre los servidores mas conocidos y los de uso mas común podemos encontrar los siguientes:

time.google.com
time.windows.com
time.nist.gov
time-nw.nist.gov
time-a.nist.gov
time-b.nist.gov

5. INSTALACIÓN Y CONFIGURACIÓN DE PROTOCOLO NTP EN SERVIDORES LINUX

Paso 1: Compruebe si se encuentra instalado el protocolo NTP

Utilizar el comando ntpstat para ver el estado del servicio NTP. Si recibe un mensaje de error que le indica que NTP no se encuentra instalado entonces procederemos a instalarlo en el servidor.

Paso 2: Instalar NTP

Utilice el siguiente comando para instalar en el servidor NTP.

Paso 3: Iniciar NTP

Después de completar la instalación tenemos que iniciar el protocolo NTP utilizando el siguiente comando.

¡Nota!

Para activar NTP y utilizar desde el arranque usar el siguiente comando.

Para detener NTP utiliza el siguiente comando.

Para reiniciar NTP utiliza el siguiente comando.

Paso 4: Tiempo de sincronización

Para ello utilice el siguiente comando.

Y reiniciar NTP

De esta manera la hora del servidor se sincronizará automáticamente.

Fuente:

http://www.alcancelibre.org/staticpages/index.php/como-ntp
https://es.wikipedia.org/wiki/Network_Time_Protocol
http://web.archive.org/web/20110902182304/http://www.arcert.gov.ar/webs/tips/NTPv1.0.pdf
http://www.alcancelibre.org/staticpages/index.php/como-ntp
http://es.galsys.co.uk/news/ntp-stratum-levels-explained/
http://www.ordenadores-y-portatiles.com/ntp.html
https://developers.google.com/time/
http://www.ntp.org/

Print Friendly