La primera versión de PTP, IEEE 1588-2002 , se publicó en 2002. IEEE 1588-2008 , también conocida como PTP versión 2, no es compatible con versiones anteriores de la versión de 2002. IEEE 1588-2019 se publicó en noviembre de 2019 e incluye mejoras compatibles con versiones anteriores de la publicación de 2008. IEEE 1588-2008 incluye un concepto de perfil que define los parámetros y opciones de funcionamiento de PTP. Se han definido varios perfiles para aplicaciones que incluyen telecomunicaciones , distribución de energía eléctrica y usos audiovisuales .IEEE 802.1AS es una adaptación de PTP, llamada gPTP, para su uso conpuentes de audio y video(AVB) yredes sensibles al tiempo(TSN).
Historia
Según John Eidson, quien dirigió el esfuerzo de estandarización IEEE 1588-2002, "IEEE 1588 está diseñado para llenar un nicho que no está bien cubierto por ninguno de los dos protocolos dominantes, NTP y GPS . IEEE 1588 está diseñado para sistemas locales que requieren precisiones más allá de las que se pueden lograr usando NTP. También está diseñado para aplicaciones que no pueden soportar el costo de un receptor GPS en cada nodo, o para las cuales las señales GPS son inaccesibles". [2]
PTP se definió originalmente en el estándar IEEE 1588-2002, oficialmente titulado Estándar para un protocolo de sincronización de reloj de precisión para sistemas de control y medición en red , y publicado en 2002. En 2008, IEEE 1588-2008 se lanzó como un estándar revisado; también conocido como PTP versión 2 (PTPv2), mejora la precisión, la exactitud y la robustez, pero no es compatible con la versión original de 2002. [3] IEEE 1588-2019 se publicó en noviembre de 2019, [4] se conoce informalmente como PTPv2.1 e incluye mejoras compatibles con versiones anteriores de la publicación de 2008. [5]
Arquitectura
Los estándares IEEE 1588 describen una arquitectura jerárquica maestro-esclavo para la distribución de relojes que consta de uno o más segmentos de red y uno o más relojes. Un reloj ordinario es un dispositivo con una única conexión de red que es la fuente o el destino de una referencia de sincronización. Una fuente se denomina líder , también conocido como maestro, y un destino se denomina seguidor , también conocido como esclavo. Un reloj límite tiene múltiples conexiones de red y sincroniza un segmento de red con otro. Se selecciona un único líder de sincronización, también conocido como elegido, para cada segmento de red. La referencia de sincronización raíz se denomina gran maestro . [6]
Una arquitectura PTP relativamente simple consiste en relojes comunes en una red de un solo segmento sin relojes de límite. Se elige un maestro y todos los demás relojes se sincronizan con él.
La norma IEEE 1588-2008 introduce un reloj asociado con el equipo de red utilizado para transmitir mensajes PTP. El reloj transparente modifica los mensajes PTP a medida que pasan por el dispositivo. [7] Las marcas de tiempo de los mensajes se corrigen en función del tiempo empleado en atravesar el equipo de red. Este esquema mejora la precisión de la distribución al compensar la variabilidad de la entrega a través de la red.
El PTP normalmente utiliza la misma época que el tiempo Unix (inicio el 1 de enero de 1970). [a] Mientras que el tiempo Unix se basa en el Tiempo Universal Coordinado (UTC) y está sujeto a segundos intercalares , el PTP se basa en el Tiempo Atómico Internacional (TAI). El maestro del PTP comunica la diferencia actual entre UTC y TAI, de modo que el UTC se pueda calcular a partir del tiempo PTP recibido.
Detalles del protocolo
La sincronización y gestión de un sistema PTP se consigue mediante el intercambio de mensajes a través del medio de comunicación. Para ello, PTP utiliza los siguientes tipos de mensajes.
Los mensajes Sync , Follow_Up , Delay_Req y Delay_Resp son utilizados por relojes ordinarios y de límite y comunican información relacionada con el tiempo que se utiliza para sincronizar relojes a través de la red.
Los relojes transparentes utilizan Pdelay_Req , Pdelay_Resp y Pdelay_Resp_Follow_Up para medir los retrasos en el medio de comunicación de modo que el sistema pueda compensarlos. Los relojes transparentes y los mensajes asociados a ellos no están disponibles en el estándar IEEE 1588-2002 PTPv1 original, y se agregaron en PTPv2.
Los mensajes de anuncio son utilizados por el mejor algoritmo de reloj maestro en IEEE 1588-2008 para construir una jerarquía de relojes y seleccionar el gran maestro . [b]
Los mensajes de administración son utilizados por la administración de red para monitorear, configurar y mantener un sistema PTP.
Los mensajes de señalización se utilizan para comunicaciones entre relojes que no son críticas en cuanto al tiempo. Los mensajes de señalización se introdujeron en la norma IEEE 1588-2008.
Los mensajes se clasifican como mensajes de evento y mensajes generales . Los mensajes de evento son críticos en cuanto al tiempo, ya que la precisión en la transmisión y la precisión de la marca de tiempo de recepción afectan directamente la precisión de la distribución del reloj. Sync , Delay_Req , Pdelay_Req y Pdelay_resp son mensajes de evento . Los mensajes generales son unidades de datos de protocolo más convencionales , ya que los datos en estos mensajes son importantes para PTP, pero sus marcas de tiempo de transmisión y recepción no lo son. Los mensajes Announce , Follow_Up , Delay_Resp , Pdelay_Resp_Follow_Up , Management y Signaling son miembros de la clase de mensajes generales . [8] : Cláusula 6.4
Transporte de mensajes
Los mensajes PTP pueden utilizar el Protocolo de datagramas de usuario sobre protocolo de Internet (UDP/IP) para el transporte. IEEE 1588-2002 utiliza solo transportes IPv4 , [9] : Anexo D pero esto se ha ampliado para incluir IPv6 en IEEE 1588-2008. [8] : Anexo F En IEEE 1588-2002, todos los mensajes PTP se envían utilizando mensajería de multidifusión , mientras que IEEE 1588-2008 introdujo una opción para que los dispositivos negocien la transmisión de unidifusión puerto por puerto. [8] : Cláusula 16.1 Las transmisiones de multidifusión utilizan direccionamiento de multidifusión IP , para el cual se definen direcciones de grupo de multidifusión para IPv4 e IPv6 (consulte la tabla). [8] : Los mensajes de eventos críticos en el tiempo del Anexo D y E (Sync, Delay_req, Pdelay_Req y Pdelay_Resp) se envían al puerto número 319. Los mensajes generales (Announce, Follow_Up, Delay_Resp, Pdelay_Resp_Follow_Up, administración y señalización) utilizan el puerto número 320. [8] : Cláusula 6.4
Direcciones de grupos de multidifusión
Mensajes
IPv4
IPv6
IEEE 802.3 Ethernet [8] : Anexo F [c]
Tipo
Todos excepto los mensajes de retraso de pares
224.0.1.129 [d]
FF0x::181 [es]
01-1B-19-00-00-00 [f]
Reenviable
Mensajes de retraso entre pares: Pdelay_Req , Pdelay_Resp y Pdelay_Resp_Follow_Up [g]
224.0.0.107 [h]
FF02::6B
01-80-C2-00-00-0E
No reenviable
En IEEE 1588-2008, la encapsulación también se define para DeviceNet , [8] : Anexo G ControlNet [8] : Anexo H y PROFINET . [8] : Anexo I
Dominios
Un dominio [i] es un conjunto de relojes que interactúan y se sincronizan entre sí mediante PTP. Los relojes se asignan a un dominio en virtud del contenido de los campos Nombre de subdominio (IEEE 1588-2002) o Número de dominio (IEEE 1588-2008) en los mensajes PTP que reciben o generan. Los dominios permiten que varios sistemas de distribución de relojes compartan el mismo medio de comunicación.
Contenido del campo de nombre de subdominio ( IEEE 1588-2002 )
Dirección de multidifusión IPv4 ( IEEE 1588-2002 ) [j]
Número de dominio ( IEEE 1588-2008 )
Notas
_DFLT
224.0.1.129
0
Dominio predeterminado
_ALT1
224.0.1.130
1
Dominio alternativo 1
_ALT2
224.0.1.131
2
Dominio alternativo 2
_ALT3
224.0.1.132
3
Dominio alternativo 3
Aplicación específica hasta 15 octetos [9] : Cláusula 6.2.5.1
224.0.1.130, 131 o 132 según la función hash del nombre del subdominio [9] : Anexo C
4 a 127
Dominios definidos por el usuario
El mejor algoritmo de reloj maestro
El mejor algoritmo de reloj maestro (BMCA) realiza una selección distribuida del mejor reloj para que actúe como líder en función de las siguientes propiedades del reloj:
Identificador: un identificador numérico universal y único para el reloj. Normalmente, se construye a partir de la dirección MAC de un dispositivo .
Calidad: ambas versiones de IEEE 1588 intentan cuantificar la calidad del reloj en función de la desviación temporal esperada, la tecnología utilizada para implementar el reloj o la ubicación en un esquema de estrato de reloj , aunque solo la versión V1 (IEEE 1588-2002) conoce un campo de datos stratum . La versión PTP V2 (IEEE 1588-2008) define la calidad general de un reloj mediante los campos de datos clockAccuracy y clockClass .
Prioridad: una indicación de precedencia asignada administrativamente que utiliza la BMCA para ayudar a seleccionar un maestro principal para el dominio PTP. La norma IEEE 1588-2002 utiliza una única variable booleana para indicar la precedencia. La norma IEEE 1588-2008 incluye dos campos de prioridad de 8 bits.
Varianza: estimación de la estabilidad de un reloj basada en la observación de su rendimiento frente a la referencia PTP.
IEEE 1588-2008 utiliza un algoritmo de selección jerárquico basado en las siguientes propiedades, en el orden indicado: [8] : Figura 27
Prioridad 1: el usuario puede asignar una prioridad estática específica a cada reloj, definiendo de forma preventiva una prioridad entre ellos. Los valores numéricos más pequeños indican una prioridad más alta.
Clase: cada reloj es miembro de una clase determinada y cada clase tiene su propia prioridad.
Precisión: precisión entre el reloj y la hora UTC, en nanosegundos (ns)
Varianza – variabilidad del reloj
Prioridad 2: prioridad definida final, que define el orden de respaldo en caso de que los otros criterios no sean suficientes. Los valores numéricos más pequeños indican una prioridad más alta.
Identificador único: la selección basada en la dirección MAC se utiliza como criterio de desempate cuando todas las demás propiedades son iguales.
IEEE 1588-2002 utiliza un algoritmo de selección basado en propiedades similares.
Las propiedades del reloj se anuncian en los mensajes de sincronización IEEE 1588-2002 y en los mensajes de anuncio IEEE 1588-2008 . El líder actual transmite esta información a intervalos regulares. Un reloj que se considera un mejor líder transmitirá esta información para invocar un cambio de líder. Una vez que el líder actual reconoce el mejor reloj, el líder actual deja de transmitir mensajes de sincronización y propiedades de reloj asociadas ( mensajes de anuncio en el caso de IEEE 1588-2008) y el mejor reloj asume el papel de líder. [10] La BMCA solo considera la calidad autodeclarada de los relojes y no toma en consideración la calidad del enlace de red. [11]
Sincronización
A través de BMCA, PTP selecciona una fuente de tiempo para un dominio IEEE 1588 y para cada segmento de red en el dominio.
Los relojes determinan el desfase entre ellos y su líder. [12] Sea la variable la que representa el tiempo físico. Para un dispositivo seguidor dado, el desfase en el tiempo se define mediante:
donde representa el tiempo medido por el reloj seguidor en tiempo físico , y representa el tiempo medido por el reloj líder en tiempo físico .
El líder transmite periódicamente la hora actual como mensaje a los demás relojes. Según la norma IEEE 1588-2002, las transmisiones se realizan una vez por segundo como máximo. Según la norma IEEE 1588-2008, se permiten hasta 10 transmisiones por segundo.
Cada transmisión comienza a la hora indicada con un mensaje de sincronización enviado por el líder a todos los relojes del dominio. El reloj que recibe este mensaje toma nota de la hora local en la que se recibe el mensaje.
El líder puede enviar posteriormente un mensaje Follow_Up de multidifusión con una marca de tiempo precisa. No todos los líderes tienen la capacidad de presentar una marca de tiempo precisa en el mensaje Sync . Solo después de que se completa la transmisión pueden recuperar una marca de tiempo precisa para la transmisión Sync desde su hardware de red. Los líderes con esta limitación usan el mensaje Follow_Up para transmitir . Los líderes con capacidades PTP integradas en su hardware de red pueden presentar una marca de tiempo precisa en el mensaje Sync y no necesitan enviar mensajes Follow_Up.
Para sincronizarse con precisión con su líder, los relojes deben determinar individualmente el tiempo de tránsito de la red de los mensajes de sincronización . El tiempo de tránsito se determina indirectamente midiendo el tiempo de ida y vuelta desde cada reloj hasta su líder. Los relojes inician un intercambio con su líder diseñado para medir el tiempo de tránsito . El intercambio comienza con un reloj que envía un mensaje Delay_Req a las time al líder. El líder recibe y marca con la fecha y hora el mensaje Delay_Req a las time y responde con un mensaje Delay_Resp . El líder incluye la marca de fecha y hora en el mensaje Delay_Resp .
A través de estos intercambios un reloj aprende , , y .
Si es el tiempo de tránsito del mensaje de sincronización y es el desfase constante entre los relojes del líder y del seguidor, entonces
Combinando las dos ecuaciones anteriores, encontramos que
El reloj ahora conoce el desfase durante esta transacción y puede corregirse por esa cantidad para que coincida con su líder.
Una de las hipótesis es que este intercambio de mensajes se produce en un período de tiempo tan pequeño que este desfase puede considerarse constante a lo largo de ese período. Otra hipótesis es que el tiempo de tránsito de un mensaje que va del líder al seguidor es igual al tiempo de tránsito de un mensaje que va del seguidor al líder. Por último, se supone que tanto el líder como el seguidor pueden medir con precisión el tiempo en que envían o reciben un mensaje. El grado en que se cumplan estas hipótesis determina la precisión del reloj en el dispositivo seguidor. [8] : Cláusula 6.2
Características opcionales
El estándar IEEE 1588-2008 enumera el siguiente conjunto de características que las implementaciones pueden optar por admitir:
Escala de tiempo alternativa
Cúmulo de Grandes Maestros
Maestros de unidifusión
Maestro suplente
Rastreo de ruta
IEEE 1588-2019 agrega características adicionales opcionales y compatibles con versiones anteriores: [5]
Relojes modulares transparentes
Puertos PTP especiales para interactuar con transportes con distribución de tiempo incorporada
Mensajes Unicast Delay_Req y Delay_Resp
Configuración manual del puerto que anula BMCA
Calibración de asimetría
Capacidad de utilizar una referencia de frecuencia de capa física (por ejemplo, Ethernet síncrona )
Aislamiento de perfiles
Interacciones entre dominios
TLV de seguridad para verificación de integridad
Métricas de informes de rendimiento estándar
Monitoreo del puerto esclavo
Iniciativas relacionadas
El Simposio Internacional IEEE sobre Sincronización de Relojes de Precisión para Medición, Control y Comunicación (ISPCS) es un evento anual organizado por el IEEE que incluye una prueba de conexión y un programa de conferencias con presentaciones de artículos y carteles, tutoriales y debates que cubren varios aspectos de PTP. [13]
IEEE 1588 es una tecnología clave en el Estándar LXI para la comunicación y el control de pruebas y mediciones.
IEEE 802.1AS-2011 es parte del grupo de estándares IEEE Audio Video Bridging (AVB). [k] Especifica un perfil para el uso de IEEE 1588-2008 para la sincronización de tiempo a través de una red de área local virtual con puente, tal como se define en IEEE 802.1Q . En particular, 802.1AS define cómo IEEE 802.3 ( Ethernet ), IEEE 802.11 ( Wi-Fi ) y MoCA pueden ser partes del mismo dominio de tiempo PTP. [14]
SMPTE 2059-2 es un perfil PTP para su uso en la sincronización de sistemas de medios de difusión. [15]
El estándar de interoperabilidad de redes de audio AES67 incluye un perfil PTPv2 compatible con SMPTE ST2059-2. [16]
^ La capacidad del perfil según IEEE 1588-2008 permite el uso de épocas específicas de la aplicación. [8] : Anexo B
^ En IEEE 1588-2002, la información que se transmite mediante los mensajes Announce se transmite en los mensajes Sync . En IEEE 1588-2008, se ha optimizado el mensaje Sync y esta información ya no se transmite aquí.
^ PTP sobre Ethernet IEEE 802.3 simple utilizando Ethertype 0x88F7
^ Los dominios no predeterminados IEEE 1588-2002 utilizan las direcciones de destino 224.0.1.130 a 224.0.1.132 (ver #Dominios).
^ En algunas aplicaciones PTP está permitido enviar todos los mensajes PTP a 01-1B-19-00-00-00
^ Los mensajes de retardo de pares tienen como objetivo propagarse al vecino conectado inmediatamente. Las direcciones de multidifusión para estos mensajes están diseñadas para tener un alcance local de enlace y no pasan a través de un enrutador . IEEE 1588-2008 también recomienda establecer el tiempo de vida en 1 (IPv4) o el límite de saltos en 0 (IPv6) como garantía adicional de que los mensajes no se enrutarán.
^ La mensajería de retardo entre pares no está presente en IEEE 1588-2002
^ IEEE 1588-2002 define un dominio como cualquier conjunto de relojes interconectados (independientemente de si están sincronizados entre sí) y utiliza subdominio para referirse a lo que se conoce como un dominio en IEEE 1588-2008.
^ IEEE 1588-2008 utiliza 224.0.1.129 como la dirección para todos los mensajes de multidifusión.
^ Eidson, John (10 de octubre de 2005). "Norma IEEE-1588 para un protocolo de sincronización de reloj de precisión para sistemas de medición y control en red, un tutorial". Instituto Nacional de Estándares y Tecnología (NIST).
^ Eidson, John C. ( abril de 2006). Medición, control y comunicación utilizando IEEE 1588. Springer . ISBN978-1-84628-250-8.
^ Eidson, John (2 de octubre de 2006). "IEEE 1588 Standard Version 2 - A Tutorial" (PDF) . Archivado desde el original (PDF) el 31 de marzo de 2010. Consultado el 12 de junio de 2008 .
^ "1588-2019 - Proyecto de norma aprobado por el IEEE para un protocolo de sincronización de relojes de precisión para sistemas de control y medición en red". IEEE . Consultado el 15 de febrero de 2020 .
^ de Douglas Arnold (24 de septiembre de 2017). "¿Qué viene en la próxima edición de IEEE 1588?" . Consultado el 15 de febrero de 2020 .
^ "Significados de términos comunes utilizados en IEEE 1588". Instituto Nacional de Estándares y Tecnología. Archivado desde el original el 27 de mayo de 2010. Consultado el 19 de mayo de 2006 .
^ "Implementación de reloj transparente y reloj de contorno AN-1838 IEEE 1588 con DP83640" (PDF) . ti.com . Texas Instruments . Consultado el 17 de julio de 2019 .
^ abcdefghijkl Estándar IEEE para un protocolo de sincronización de reloj de precisión para sistemas de control y medición en red , IEEE , 24 de julio de 2008, doi :10.1109/IEEESTD.2008.4579760, ISBN978-0-7381-5400-8
^ abc Estándar IEEE para un protocolo de sincronización de reloj de precisión para sistemas de control y medición en red , IEEE , 8 de noviembre de 2002, doi :10.1109/IEEESTD.2002.94144, ISBN978-0-7381-3369-0
^ Watt, Steve T.; Achanta, Shankar; Abubakari, Hamza; Sagen, Eric (marzo de 2014), Understanding and Applying Precision Time Protocol (PDF) , consultado el 9 de septiembre de 2017
^ Personal técnico de FSMLabs (septiembre de 2015), Cliente PTP inteligente y tonto y el "llamado" mejor algoritmo de reloj maestro , consultado el 17 de mayo de 2018
^ Norma internacional IEC 61588: Protocolo de sincronización de reloj de precisión para sistemas de medición y control en red. 2004.
^ Sitio web del ISPCS
^ Geoffrey M. Garner (28 de mayo de 2010), IEEE 802.1AS e IEEE 1588 (PDF)
^ SMPTE publica las dos primeras partes de la norma que permite la implementación de equipos temporizados PTP en plantas SDI existentes, Society of Motion Picture and Television Engineers , 13 de abril de 2015 , consultado el 21 de mayo de 2015
^ AES-R16-2016: Informe de estándares AES: parámetros PTP para la interoperabilidad entre AES67 y SMPTE ST 2059-2, Audio Engineering Society , 2 de mayo de 2016
^ desde https://www.smpte.org/sites/default/files/users/user27446/AES67%20for%20Audio%20Production-Background%20Applications%20and%20Challenges.pdf [ enlace roto ]
^ "Protocolo de sincronización PTPv2 en redes AV". Luminex. 6 de junio de 2017. Q-LAN se actualizó a PTPv2 hace aproximadamente dos años.
^ Pepiciello, Antonio; Vaccaro, Alfredo (17 de diciembre de 2018), "Una arquitectura confiable basada en el Protocolo de Tiempo de Precisión para la sincronización WAMPAC", Conferencia Anual Internacional AEIT 2018 , IEEE , pp. 1–5, doi :10.23919/AEIT.2018.8577414, ISBN978-8-8872-3740-5, Número de identificación del sujeto 58819556
Enlaces externos
Sitio NIST IEEE 1588
Documentación PTP en InES
PTP y Sincronización de redes móviles LTE
PTP explicado desde el punto de vista de instalación/mantenimiento
Libro blanco de Hirschmann PTP
Descripción general de PTP en la Guía de configuración del software del conmutador Cisco CGS 2520
Perspectivas y prioridades de la investigación sobre redes inteligentes RuggedCom Tecnologías IEC 61850
Proyectos con Solución de Subestación Inteligente
McGhee, Jim; Goraj, Maciej (2010), "Subestación de alto voltaje inteligente basada en bus de proceso IEC 61850 y sincronización de tiempo IEEE 1588", Primera Conferencia Internacional IEEE de 2010 sobre Comunicaciones de Redes Inteligentes , págs. 489–494, doi :10.1109/SMARTGRID.2010.5622092, ISBN978-1-4244-6510-1, Número de identificación del sujeto 30638718
Ingram, DME; Campbell, DA; Schaub, P.; Ledwich, GF (2011). "Sistema de prueba y evaluación para esquemas de protección de valores muestreados multiprotocolo". 2011 IEEE Trondheim PowerTech . Trondheim, Noruega: IEEE. págs. 1–7. doi :10.1109/PTC.2011.6019243. ISBN978-1-4244-8419-5.S2CID 42991214 .
El Proyecto Conejo Blanco PTP
Protocolo de tiempo de precisión IEC e IEEE , Pacworld, septiembre de 2016
IEC 62439-3 Anexos AE Conexión redundante de relojes y gestión de red
Protocolo de sincronización PTPv2 en redes AV
FSMLabs: La norma IEEE PTP 1588 de fuente única no puede cumplir con los estándares regulatorios financieros