Cómo hacer un sistema económico pero confiable de tiempo uniforme en la empresa.

Hoy en día, no todos los especialistas pueden clasificar un servidor de hora preciso como un dispositivo técnicamente complejo. Hay muchos artículos en Internet sobre cómo crear su propio servidor NTP de hardware. Sin embargo, las soluciones utilizadas en aplicaciones industriales y ofrecidas por fabricantes globales difícilmente pueden llamarse presupuestarias. ¿Es posible optimizar estos costos sin comprometer la calidad y confiabilidad del subsistema de tiempo de precisión en la empresa?



¿Para qué es la hora exacta?



De las funciones que permite realizar el servidor de tiempo, podemos nombrar la correcta formación de la cronología de eventos en los sistemas de control para el mantenimiento de registros apropiados, registros, información de archivo, tendencias de construcción, gráficos, etc.



En los sistemas de videovigilancia, el servidor de tiempo proporciona la vinculación del video capturado al tiempo astronómico. Además, el dispositivo le permite comparar con precisión información de diferentes sistemas de información en la empresa. Por ejemplo, pueden ser sistemas de videovigilancia y sistemas de seguridad, como ACS, sistemas de protección de relés y sistemas de telemecánica independientes, etc.



Varios protocolos de intercambio de información utilizan marcas de tiempo directamente como parte de los paquetes de datos transmitidos. Estos protocolos incluyen IEC-101/104, que se utiliza en los sistemas de telemecánica modernos.



Uno de los requisitos importantes para una serie de aplicaciones industriales son los requisitos de seguridad de la información que excluyen el acceso a Internet para realizar la función de sincronización horaria.



Debido a su simplicidad y una serie de razones históricas para resolver el problema de la sincronización horaria, el protocolo NTP es el más utilizado. Además de servidores, estaciones de archivo y operador de sistemas de control, controladores y paneles HMI, los equipos de red de los sistemas de comunicación (conmutadores administrados, enrutadores, etc.) pueden actuar como clientes NTP en una empresa.



Protocolo NTP



El protocolo de tiempo de red (NTP) es un protocolo de red para sincronizar relojes en sistemas informáticos a través de redes de datos de conmutación de paquetes con retardo variable (latencia). La gran popularidad del protocolo se debe al desarrollo activo de sistemas basados ​​en Ethernet. Una de las ventajas clave del protocolo es la capacidad de transmitir marcas de tiempo directamente a través de la red de datos, lo que elimina la necesidad de un bus de tiempo separado, como en los sistemas 1PPS o IRIG-B. El protocolo se desarrolló en 1985 y es uno de los protocolos de Internet más antiguos que se utilizan en la actualidad.



NTP proporciona una precisión de sincronización aceptable para la mayoría de las aplicaciones. El protocolo puede admitir el tiempo con una precisión de decenas de milisegundos en Internet y hasta 0,2 ms en redes locales en condiciones ideales. Las rutas de datos asimétricas y la congestión de la red pueden provocar errores de 100 ms o más.



NTP sincroniza los dispositivos con la hora universal coordinada (UTC). En este caso, el protocolo tiene en cuenta la aparición de un segundo intercalar como resultado de la rotación desigual de la Tierra, pero no transmite ninguna información sobre las zonas horarias locales o el horario de verano.



Estructura del sistema



NTP utiliza un sistema jerárquico de fuentes de tiempo precisas. Cada nivel de la jerarquía se denomina estrato (estrato, capa) y se le asigna un número que comienza en 0 para el reloj de referencia en la parte superior de la jerarquía. El servidor de tiempo en la capa N se sincroniza desde los servidores en el nivel N-1. El número N representa la distancia desde el reloj de referencia y se utiliza para evitar ciclos durante la sincronización. El estrato no siempre es una medida de calidad o confiabilidad. Por ejemplo, puede encontrar fuentes de tiempo en la capa 3 que sean de mayor calidad que las fuentes de tiempo en la capa 2.



Estrato 0



El reloj de referencia del Stratum 0 son los sistemas de navegación por satélite (GLONASS, GPS, etc.), relojes atómicos o transmisores de radio. Una vez por segundo, generan una señal de pulso (1PPS) que activa una interrupción y genera una marca de tiempo en los dispositivos conectados. Los dispositivos de capa 0 también se conocen como relojes de referencia. Los servidores NTP no pueden posicionarse en el sistema como Estrato 0. Si el campo Estrato se establece en 0 en un paquete de datos, esto indica una capa indefinida.





La estructura lógica del sistema de sincronización basado en NTP



Stratum 1



Esta capa contiene dispositivos cuya hora del sistema está sincronizada dentro de unos pocos microsegundos desde el reloj de referencia. Los servidores de tiempo en este nivel pueden trabajar en modo peer-to-peer con otros servidores Stratum 1 para verificar la redundancia y la precisión. También se les llama servidores de tiempo primarios.



Estrato 2



Estos son dispositivos que se sincronizan a través de la red desde servidores de Nivel 1. A menudo, los dispositivos de Nivel 2 sondean varios servidores de Nivel 1. Las computadoras de Estrato 2 también pueden ser peer-to-peer con otras computadoras de Stratum 2 para proporcionar un tiempo más estable y confiable para todos los dispositivos en un grupo de pares nodos.



El número teórico máximo de capas es 15; El estrato 16 se utiliza para indicar que el dispositivo no está sincronizado. Los mecanismos NTP en cada dispositivo del sistema interactúan para crear la ruta más corta a los servidores de Stratum 1 para todos los clientes. Esto minimiza la latencia acumulada en la transmisión de datos y mejora la precisión de la sincronización. El algoritmo para construir un árbol de expansión con una longitud de ruta mínima se basa en el algoritmo de Bellman-Ford.



Sellos de tiempo



NTP originalmente usó marcas de tiempo de 64 bits, que consisten en una porción de 32 bits por segundos y una porción de 32 bits por fracciones de segundo, lo que dio una línea de tiempo que se desplazaría cada 32 segundos (136 años) y daría una resolución teórica de 2 a 32 segundos. (233 picosegundos). La cuenta atrás comenzó el 1 de enero de 1900, por lo que la primera época finalizaría el 7 de febrero de 2036.



La última versión del protocolo NTPv4 introduce un formato de tiempo de 128 bits: 64 bits para segundos y 64 bits para fracciones de segundo, lo que da una línea de tiempo de más de 584 mil millones de años y una resolución de 0.05 attosegundos. Además, se introdujo un campo numérico de era de 32 bits, que eliminó incluso el problema teórico del final de cada era.



Algoritmo de sincronización de reloj



El cliente NTP sondea uno o más servidores con regularidad. Al hacerlo, calcula la compensación de tiempo y el retardo de ida y vuelta. El desfase de tiempo θ es la diferencia en tiempo absoluto entre el reloj del servidor y el del cliente y está determinado por la fórmula: El







retardo de ida y vuelta δ se define como el tiempo que la señal se transmite a través de las líneas de comunicación del cliente al servidor y viceversa. Este es el tiempo necesario para enviar la señal, más el tiempo necesario para confirmar que se ha obtenido una señal mediante:







donde t 0 : tiempo de marca del cliente para transmitir un paquete de solicitud,

t 1 : paquete de solicitud del servidor receptor de marca de tiempo,

t 2 : tiempo del servidor de etiquetas para transmisión de un paquete de respuesta,

t 3- marca de tiempo del cliente que recibe el paquete de respuesta.





Algoritmo para calcular el desplazamiento de tiempo y el retardo de ida y vuelta



Los valores calculados de θ y δ se pasan a través de filtros y se someten a análisis estadístico. Los valores atípicos de la muestra total se descartan y el sesgo temporal se estima en función de los valores restantes. Conociendo la compensación de tiempo y la demora de ida y vuelta, el cliente ajusta su propio tiempo para lograr θ igual a cero.



La sincronización precisa se logra cuando las rutas de entrada y salida entre el cliente y el servidor son simétricas, es decir, tienen la misma latencia. Si las rutas son asimétricas, existe un sesgo sistemático de la mitad de la diferencia entre el momento en que se envía un paquete del cliente al servidor y viceversa.



Mecanismos de transmisión



En la mayoría de los casos, el protocolo NTP utiliza el modelo clásico de operación cliente-servidor, en el que el cliente envía una solicitud y después de un tiempo recibe una respuesta del servidor. Sin embargo, el protocolo permite la operación de igual a igual, donde dos pares se ven como una fuente de tiempo potencial. Este modo de funcionamiento también se llama simétrico. Para la comunicación de red, NTP usa el protocolo UDP, que trabaja por defecto en el puerto 123. Para la transmisión de datos, se pueden usar varios mecanismos: unidifusión, difusión, multidifusión y multidifusión.



Modo de unidifusión



NTP utiliza con mayor frecuencia el modo Unicast para la transferencia de datos. En este modo, los datos se transfieren de un dispositivo de red a otro de forma individual. Los paquetes de unidifusión utilizan la dirección específica del dispositivo para el que está destinado el paquete como dirección IP de destino. Modo de



transmisión



Este modo es conveniente en los casos en que una pequeña cantidad de servidores NTP sirven a una gran cantidad de clientes. En este modo, el servidor envía periódicamente paquetes utilizando la dirección de subred de difusión. Un cliente configurado para sincronizar de esta manera recibe el paquete de difusión del servidor y se sincroniza con él.



Este modo tiene varias características. En primer lugar, el modo de transmisión proporciona una menor precisión de sincronización que unidifusión. En segundo lugar, los paquetes de difusión solo se pueden transmitir dentro de la misma subred. Además, es aconsejable utilizar métodos de autenticación para protegerse contra intrusos.



Modo de multidifusión El modo de multidifusión



funciona de la misma forma que Difusión. La diferencia es que no se usa la dirección de subred de transmisión, sino la dirección del grupo de multidifusión para entregar paquetes. A los clientes y servidores se les asigna una dirección IP de multidifusión que utilizan para la sincronización horaria. Esto permite sincronizar grupos de máquinas ubicadas en diferentes subredes, siempre que los enrutadores que las conectan admitan IGMP y estén configurados para transmitir tráfico de multidifusión.



Modo Manycast



Este modo es nuevo en la última versión (v4) del protocolo NTP. El modo Manycast funciona como modo Multicast solo con direcciones IP desconocidas de servidores NTP. Al enviar mensajes de multidifusión, el cliente busca en la red del servidor Manycast, recibe muestras de tiempo de cada uno de ellos y selecciona los tres "mejores" servidores con los que se sincronizará. En caso de falla de uno de los servidores, el cliente actualiza automáticamente su lista.



Los clientes y servidores que operan en modo Manycast también usan direcciones de grupo de multidifusión para transmitir muestras de tiempo. Los clientes y servidores que utilizan la misma dirección forman una asociación. El número de asociaciones está determinado por el número de direcciones de multidifusión utilizadas.



Versiones de protocolo



Desde su aparición en 1985, el protocolo comenzó a desarrollarse activamente y en 1992 había cambiado cuatro versiones (de NTPv0 a NTPv3). Cada nueva versión agregó funcionalidad y optimizó su trabajo, pero dejó el formato de datos sin cambios y mantuvo las diferentes versiones compatibles entre sí. La última cuarta versión del protocolo está fechada en 2010. NTP continúa evolucionando hoy, se está trabajando para crear una solución que sea técnicamente similar al PTP (Precision Time Protocol) más preciso.



SNTP



Simultáneamente con NTPv3, en 1992 se introdujo una versión más simple del protocolo, SNTP (Simple NTP). SNTP utiliza el mismo formato de transmisión y presentación que NTP. Al mismo tiempo, SNTP no se refiere a los algoritmos del servidor, pero simplifica los algoritmos de los clientes. Es por eso que el protocolo se usa con mayor frecuencia en sistemas y dispositivos integrados que no requieren alta precisión.



La diferencia entre NTP y SNTP radica en los métodos para determinar los servidores óptimos para la sincronización y el método de corrección de tiempo. Así es como NTP permite que el cliente utilice el algoritmo de intersección matemática (una versión rediseñada del algoritmo de Marzullo) para seleccionar varios de los mejores servidores de la red y ajustar su tiempo sin problemas. SNTP utiliza un servidor NTP predefinido para la sincronización, mientras que otros solo pueden ser copias de seguridad en caso de pérdida de comunicación con el dispositivo principal. En este caso, un cliente que usa SNTP puede ajustar la hora solo en un salto después de recibir una respuesta del servidor.



Diagrama típico del sistema de sincronización y sus desventajas



Tradicionalmente, el sistema de tiempo en las instalaciones industriales se construye sobre la base de un servidor NTP que consta de una unidad principal montada en el mismo armario con equipo de red y una antena remota, que se instala en el exterior y se conecta al servidor mediante un cable coaxial. Al mismo tiempo, la unidad principal tiene varias interfaces de red (Ethernet o RS-232/485) para conectar clientes en una o varias redes.





Sistema de tiempo de precisión típico



Si observa esta solución más de cerca, verá varias desventajas. Primero, tal sistema carece de redundancia total. A pesar de que la unidad principal tiene varias interfaces de red y es capaz de proporcionar una hora exacta en varias redes, su falla o falla conducirá a la pérdida de la fuente de la hora exacta en todo el sitio. La redundancia total de la unidad principal en una solución de este tipo hará que el ya caro sistema de sincronización sea aún más caro.



El segundo inconveniente es la necesidad de instalar un servidor de tiempo en el armario. Esto no es una desventaja para los grandes proyectos, pero para los pequeños sistemas de control local puede ser un problema serio.



Además, las desventajas incluyen la necesidad de utilizar una antena remota y un cable coaxial. ¿Por qué? En primer lugar, el costo de una antena GPS / GLONASS de alta calidad con un cable largo y protección contra roedores puede exceder fácilmente los 10,000 rublos. en precios de 2020. En este caso, los cables coaxiales tienen una longitud limitada para transmitir señales desde sistemas de satélite. Por encima de 50 m, la señal se atenuará significativamente, lo que es un factor limitante importante en edificios grandes.



La principal desventaja del enfoque tradicional para la creación de sistemas de sincronización es su alto costo (a menudo más de 150,000 rublos), que afecta significativamente la estimación no solo de proyectos pequeños, sino también de proyectos bastante grandes.



Cómo hacer que el sistema sea más económico y confiable



La tendencia incondicional de las tecnologías modernas es la creación de dispositivos electrónicos más compactos y fáciles de usar. En este sentido, los servidores horarios no son una excepción.



Toda la solución de sincronización, incluida la antena GPS / GLONASS, puede caber en una pequeña caja, como se hace en

FL TIMESERVER de Phoenix Contact. El dispositivo está fabricado según el principio de una antena inteligente, es decir, combina directamente la funcionalidad de un servidor de tiempo y una antena receptora GPS / GLONASS. Su diseño es lo único que lo distingue de las soluciones habituales.





FL TIMESERVER NTP Time Server



Como muestra la práctica, el dispositivo es capaz de proporcionar comunicación con sistemas satelitales incluso dentro de edificios, pero para una recepción de señal más confiable se puede operar en condiciones exteriores, ya que está fabricado en una caja con un nivel de protección contra el polvo y la humedad IP68 y es capaz de operar en un amplio rango de temperatura de -40 a +70 C En este caso, el servidor de tiempo se monta como una antena convencional, tiene una fuente de alimentación redundante del circuito de 24 V CC y / o mediante un cable Ethernet (PoE) y se diagnostica mediante SNMP. Para instalaciones al aire libre, se utiliza un prensaestopas de sellado para mantener un alto nivel de protección contra el polvo y la humedad.



En términos de funcionalidad, no hay diferencias: el dispositivo es capaz de recibir marcas de tiempo y datos de geolocalización de sistemas de navegación por satélite (GLONASS, GPS) y transmitir esta información a los clientes en una red Ethernet.





Sistema de tiempo basado en la solución Phoenix Contact



Con esta solución, el sistema de sincronización se simplifica enormemente y elimina las desventajas del enfoque tradicional. FL TIMESERVERtiene solo un puerto Ethernet, pero si necesita usar varias interfaces, solo necesita conectarlo a un conmutador o usar varias antenas inteligentes. En este caso, obtendremos una copia de seguridad completa de los servidores de tiempo, y no solo su interfaz de red. En este caso, la solución final seguirá siendo más barata que muchos análogos existentes. FL TIMESERVER se puede mover fuera de la red o armario de automatización, ahorrando espacio en el interior. Esta solución no requiere una antena separada, aquí ya está incorporada y podemos conectarnos a la red empresarial con un cable Ethernet normal. A su vez, esto le permite mover el servidor de tiempo a una distancia de hasta 100 m del equipo principal sin temor a que la señal se desvanezca. La ventaja más importante de tal solución es un orden de precios completamente diferente.El costo de un servidor único es de menos de 300 euros, lo que lo hace conveniente para su uso tanto en proyectos pequeños como grandes.



All Articles