{"id":77041,"date":"2020-04-07T13:42:46","date_gmt":"2020-04-07T11:42:46","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2"},"modified":"2020-04-07T13:42:46","modified_gmt":"2020-04-07T11:42:46","slug":"podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2","title":{"rendered":"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b>Introducci\u00f3n<\/b><\/p>\n<p>La concepci\u00f3n de la \u00abSubestaci\u00f3n Digital\u00bb en energ\u00eda el\u00e9ctrica requiere sincronizaci\u00f3n con una precisi\u00f3n de 1 \u00b5s. Tambi\u00e9n se requiere precisi\u00f3n en microsegundos para realizar transacciones financieras. En estas aplicaciones, la precisi\u00f3n del tiempo NTP ya no es suficiente.<\/p>\n<p>El protocolo de sincronizaci\u00f3n PTPv2, descrito en el est\u00e1ndar IEEE 1588v2, permite lograr una precisi\u00f3n de sincronizaci\u00f3n en decenas de nanosegundos. PTPv2 permite enviar paquetes de sincronizaci\u00f3n a trav\u00e9s de redes L2 y L3.<\/p>\n<p>Las principales \u00e1reas donde se aplica PTPv2 son:<\/p>\n<ul>\n<li>energ\u00eda;<\/li>\n<li>equipos de control y medici\u00f3n;<\/li>\n<li>complejo militar-industrial;<\/li>\n<li>telecomunicaciones;<\/li>\n<li>sector financiero.<\/li>\n<\/ul>\n<p>\nEn este post se analiza c\u00f3mo funciona el protocolo de sincronizaci\u00f3n PTPv2.<\/p>\n<p>Tenemos m\u00e1s experiencia en la industria y a menudo nos encontramos con este protocolo en aplicaciones energ\u00e9ticas. En consecuencia, haremos una revisi\u00f3n con respecto a <noindex><a rel=\"nofollow\" href=\"https:\/\/www.phoenixcontact.com\/online\/portal\/ru?1dmy&amp;urile=wcm%3apath%3a\/ruru\/web\/main\/products\/subcategory_pages\/Managed_switches_P-08-10-16-01\/aead25f7-3319-485d-8868-126c62b77cb1\">la energ\u00eda<\/a><\/noindex>.<\/p>\n<p><b>\u00bfPor qu\u00e9 es necesario?<\/b><\/p>\n<p>Actualmente, en la CTO 34.01-21-004-2019 de PJSC \u00abRosseti\u00bb y en la CTO 56947007-29.240.10.302-2020 de PJSC \u00abFSK EES\u00bb hay requisitos para la organizaci\u00f3n del bus de proceso asegurando la sincronizaci\u00f3n de tiempo a trav\u00e9s de PTPv2.<\/p>\n<p>Esto se relaciona con el hecho de que a la bus de proceso se conectan terminales de protecci\u00f3n por rel\u00e9s y dispositivos de medici\u00f3n, que a trav\u00e9s del bus de proceso, mediante los llamados flujos SV (flujos multicast), transmiten los valores instant\u00e1neos de corriente y voltaje.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Los terminales de protecci\u00f3n por rel\u00e9s utilizan estos valores para implementar las protecciones de las conexiones. Si la precisi\u00f3n de las mediciones de tiempo es baja, algunas protecciones pueden activarse err\u00f3neamente.<\/p>\n<p>Por ejemplo, una v\u00edctima de una \u00abs\u00edncrona debil\u00bb de tiempo pueden ser las protecciones de selectividad absoluta. A menudo, la l\u00f3gica de estas protecciones se construye comparando dos magnitudes. Si las magnitudes difieren en un valor suficientemente grande, se activa la protecci\u00f3n. Si estas magnitudes se miden con una precisi\u00f3n de tiempo de 1 ms, puede resultar en una gran diferencia donde los valores en realidad est\u00e1n en norma, si se miden con una precisi\u00f3n de 1 \u00b5s.<\/p>\n<p><b>Versiones de PTP<\/b><\/p>\n<p>El protocolo PTP fue descrito originalmente en 2002 en la norma IEEE 1588-2002 y se denomin\u00f3 \"Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems\". En 2008, se lanz\u00f3 la norma actualizada IEEE 1588-2008, que describe PTP Versi\u00f3n 2. En esta versi\u00f3n del protocolo se mejor\u00f3 la precisi\u00f3n y estabilidad, pero no se mantuvo la compatibilidad hacia atr\u00e1s con la primera versi\u00f3n del protocolo. Tambi\u00e9n, en 2019 se public\u00f3 la versi\u00f3n del est\u00e1ndar IEEE 1588-2019, que describe PTP v2.1. Esta versi\u00f3n a\u00f1ade algunas mejoras menores a PTPv2 y es compatible hacia atr\u00e1s con PTPv2.<\/p>\n<p>En otras palabras, tenemos la siguiente imagen con las versiones:<\/p>\n<p>PTPv1<br \/>\n(IEEE 1588-2002)<\/p>\n<p>PTPv2<br \/>\n(IEEE 1588-2008)<\/p>\n<p>PTPv2.1<br \/>\n(IEEE 1588-2019)<\/p>\n<p>PTPv1 (IEEE 1588-2002)<\/p>\n<p> \u2014<br \/>\nIncompatibles<\/p>\n<p>Incompatibles<\/p>\n<p>PTPv2 (IEEE 1588-2008)<\/p>\n<p>Incompatibles<\/p>\n<p> \u2014<br \/>\nCompatibles<\/p>\n<p>PTPv2.1 (IEEE 1588-2019)<\/p>\n<p>Incompatibles<\/p>\n<p>Compatibles<\/p>\n<p> \u2014 <\/p>\n<p>\nPero, como siempre, hay matices.<\/p>\n<p>La incompatibilidad entre PTPv1 y PTPv2 implica que un dispositivo que soporte PTPv1 no podr\u00e1 sincronizarse con relojes precisos que operen en PTPv2. Para la sincronizaci\u00f3n utilizan diferentes formatos de mensaje.<\/p>\n<p>Sin embargo, es posible combinar dispositivos con PTPv1 y dispositivos con PTPv2 en una misma red. Para ello, algunos fabricantes permiten seleccionar la versi\u00f3n del protocolo en los puertos de las relojes de frontera. Es decir, los relojes de frontera pueden sincronizarse mediante PTPv2 y al mismo tiempo sincronizar otros relojes conectados, tanto por PTPv1 como por PTPv2.<\/p>\n<p><b>Dispositivos PTP. \u00bfQu\u00e9 tipos existen y en qu\u00e9 se diferencian?<\/b><\/p>\n<p>El est\u00e1ndar IEEE 1588v2 describe varios tipos de dispositivos. Todos ellos se enumeran en la tabla.<\/p>\n<p>Los dispositivos interact\u00faan entre s\u00ed a trav\u00e9s de LAN, utilizando PTP.<\/p>\n<p>Los dispositivos PTP se denominan relojes. Todos los relojes toman la hora precisa de los relojes maestros.<\/p>\n<p>Hay 5 tipos de relojes:<\/p>\n<p>Grandmaster clock (Relojes maestros)<\/p>\n<p>Fuente principal de tiempo preciso. A menudo vienen equipados con una interfaz para conexi\u00f3n GPS.<\/p>\n<p>Ordinary Clock (Relojes ordinarios)<\/p>\n<p>Dispositivo con un puerto que puede ser maestro (reloj conductor) o esclavo (reloj dependiente)<\/p>\n<p>Relojes maestros<\/p>\n<p>Son la fuente de tiempo preciso, a partir de la cual otros relojes se sincronizan<\/p>\n<p>Relojes esclavos<\/p>\n<p>Dispositivo final que se sincroniza desde los relojes maestros<\/p>\n<p>Boundary Clock (Relojes de frontera)<\/p>\n<p>Dispositivo con m\u00faltiples puertos que puede ser maestro o esclavo.<\/p>\n<p>Esto significa que estos relojes pueden sincronizarse desde relojes maestros superiores y sincronizar relojes esclavos inferiores.<\/p>\n<p>Reloj Transparente de Extremo a Extremo<\/p>\n<p>Dispositivo con m\u00faltiples puertos que no es un reloj maestro ni esclavo. Transfiere datos PTP entre dos relojes. <\/p>\n<p>Al transferir datos, los relojes transparentes corrigen todos los mensajes PTP. <\/p>\n<p>La correcci\u00f3n se logra a\u00f1adiendo tiempo de retardo en este dispositivo en el campo de correcci\u00f3n del encabezado del mensaje transmitido.<\/p>\n<p>Reloj Transparente Peer-to-Peer<\/p>\n<p>Dispositivo con m\u00faltiples puertos que no es un reloj maestro ni esclavo. <br \/>\nTransfiere datos PTP entre dos relojes. <\/p>\n<p>Al transferir datos, los relojes transparentes corrigen todos los mensajes PTP Sync y Follow_Up.<\/p>\n<p>La correcci\u00f3n se logra a\u00f1adiendo el retardo del dispositivo transmisor y el retardo del canal de transmisi\u00f3n al campo de correcci\u00f3n del paquete transmitido.<\/p>\n<p>Nodo de Gesti\u00f3n<\/p>\n<p>Dispositivo que configura y diagnostica otros relojes.<\/p>\n<p>Los relojes maestros y esclavos se sincronizan mediante marcas de tiempo en los mensajes PTP. Hay dos tipos de mensajes en el protocolo PTP:<\/p>\n<ul>\n<li>Mensajes de Evento: son mensajes sincronizados que implican la generaci\u00f3n de una marca de tiempo en el momento del env\u00edo del mensaje y en el momento de su recepci\u00f3n.<\/li>\n<li>Mensajes Generales: estos mensajes no requieren marcas de tiempo, pero pueden contener marcas de tiempo para mensajes relacionados.<\/li>\n<\/ul>\n<p><\/p>\n<p>Mensajes de Evento<\/p>\n<p>Mensajes Generales<\/p>\n<p>Sync<br \/>\nDelay_Req<br \/>\nPdelay_Req<br \/>\nPdelay_Resp<\/p>\n<p>Anunciar<br \/>\nFollow_Up<br \/>\nDelay_Resp<br \/>\nPdelay_Resp_Follow_Up<br \/>\nGesti\u00f3n<br \/>\nSe\u00f1alizaci\u00f3n<\/p>\n<p>A continuaci\u00f3n, se revisar\u00e1n todos los tipos de mensajes con m\u00e1s detalle.<\/p>\n<p><b>Principales problemas de sincronizaci\u00f3n<\/b><\/p>\n<p>Al enviar un paquete de sincronizaci\u00f3n a trav\u00e9s de una red local, se retrasa en el conmutador y en el canal de transmisi\u00f3n de datos. Cualquier conmutador proporcionar\u00e1 un retraso de alrededor de 10 microsegundos, lo cual es inaceptable para PTPv2. Necesitamos obtener una precisi\u00f3n de 1 microsegundo en el dispositivo final. (Esto es si se trata de energ\u00eda. Otras aplicaciones pueden requerir a\u00fan m\u00e1s precisi\u00f3n.)<\/p>\n<p>En IEEE 1588v2 se describen varios algoritmos de operaci\u00f3n que permiten medir y corregir el retardo de tiempo.<\/p>\n<p><b>Algoritmo de funcionamiento<\/b><br \/>\nEn operaci\u00f3n normal, el protocolo trabaja en dos fases.<\/p>\n<ul>\n<li>Fase 1: Establecimiento de la jerarqu\u00eda 'Relojes Maestros - Relojes Esclavos'.<\/li>\n<li>Fase 2: Sincronizaci\u00f3n de los relojes mediante el mecanismo de Extremo a Extremo o Peer-to-Peer.<\/li>\n<\/ul>\n<p>\n<i>Fase 1 \u2014 Instalaci\u00f3n de la jerarqu\u00eda 'Maestro-Esclavo'<\/i><\/p>\n<p>Cada puerto de relojes comunes o de borde tiene un n\u00famero espec\u00edfico de estados (reloj esclavo y reloj maestro). El est\u00e1ndar describe el algoritmo de transici\u00f3n entre estos estados. En programaci\u00f3n, tal algoritmo se llama aut\u00f3mata finito o m\u00e1quina de estados (m\u00e1s detalles en Wiki).<\/p>\n<p>Este aut\u00f3mata finito utiliza el algoritmo Best Master Clock Algorithm (BMCA) para establecer el maestro al conectar dos relojes.<\/p>\n<p>Este algoritmo permite que los relojes asuman las responsabilidades de los relojes grandmasters cuando los relojes grandmasters superiores pierden la se\u00f1al GPS, se desconectan de la red, etc.<\/p>\n<p>Las transiciones entre estados seg\u00fan el BMCA se representan brevemente en el siguiente esquema:<br \/>\n<img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/add811d60135de3be9c6865a5e4493c1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLa informaci\u00f3n sobre el reloj en el otro extremo del 'cable' se env\u00eda en un mensaje especial (mensaje Anuncio). Cuando se recibe esta informaci\u00f3n, el algoritmo de la m\u00e1quina de estados trabaja y se compara cu\u00e1l reloj es mejor. El puerto en los mejores relojes se convierte en el reloj maestro.<\/p>\n<p>La jerarqu\u00eda simple se presenta en el esquema a continuaci\u00f3n. Las rutas 1, 2, 3, 4, 5 pueden contener relojes transparentes (Reloj transparente), pero no participan en el establecimiento de la jerarqu\u00eda 'Relojes Maestros \u2013 Relojes Esclavos'.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/05831c032a2d4df286ef41c531c949a3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Fase 2 \u2014 Sincronizaci\u00f3n de relojes comunes y de borde<\/b><\/p>\n<p>Justo despu\u00e9s de establecer la jerarqu\u00eda 'Relojes Maestros \u2013 Relojes Esclavos' comienza la fase de sincronizaci\u00f3n de los relojes comunes y de borde.<\/p>\n<p>Para sincronizar, los relojes maestros env\u00edan a los relojes esclavos un mensaje que contiene una marca de tiempo.<\/p>\n<p>Los relojes maestros pueden ser:<\/p>\n<ul>\n<li>monof\u00e1sicos;<\/li>\n<li>bif\u00e1sicos.<\/li>\n<\/ul>\n<p>\nLos relojes monof\u00e1sicos env\u00edan un solo mensaje Sync para la sincronizaci\u00f3n.<\/p>\n<p>Los relojes bif\u00e1sicos utilizan dos mensajes para la sincronizaci\u00f3n: Sync y Follow_Up.<\/p>\n<p>Para la fase de sincronizaci\u00f3n se pueden utilizar dos mecanismos:<\/p>\n<ul>\n<li>Mecanismo de solicitud-respuesta de retraso (Delay request-response mechanism).<\/li>\n<li>Mecanismo de medici\u00f3n de retraso del nodo vecino (Peer delay measurement mechanism).<\/li>\n<\/ul>\n<p>\nComencemos considerando estos mecanismos en el caso m\u00e1s sencillo: cuando no se utilizan relojes transparentes.<\/p>\n<p>Mecanismo de solicitud-respuesta de retraso (Delay request-response mechanism)<\/p>\n<p>El mecanismo implica dos pasos:<\/p>\n<ol>\n<li>Medici\u00f3n del retraso en la transmisi\u00f3n del mensaje entre los relojes maestros y esclavos. Se realiza mediante el mecanismo de solicitud-respuesta de retraso.<\/li>\n<li>Se realiza la correcci\u00f3n del desplazamiento del tiempo exacto.<\/li>\n<\/ol>\n<p>\n<i>Medici\u00f3n del retraso<\/i><br \/>\n<img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/3a0d534384329c6232259736995eb0bd.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nt1 \u2013 Hora de env\u00edo del mensaje Sync de los relojes principales; t2 \u2013 Hora de recepci\u00f3n del mensaje Sync por los relojes secundarios; t3 \u2013 Hora de env\u00edo de la solicitud de retraso (Delay_Req) por los relojes secundarios; t4 \u2013 Hora de recepci\u00f3n de Delay_Req por los relojes principales.<\/p>\n<p>Cuando los relojes secundarios conocen los tiempos t1, t2, t3 y t4, pueden calcular el retraso medio en la transmisi\u00f3n del mensaje de sincronizaci\u00f3n (tmpd). Se calcula de la siguiente manera:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/513eb7352a143073835fe36aedd9cb98.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAl enviar los mensajes Sync y Follow_Up, se calcula el retraso de tiempo desde el maestro al esclavo \u2013 t-ms.<\/p>\n<p>Al enviar los mensajes Delay_Req y Delay_Resp, se calcula el retraso de tiempo desde el esclavo al maestro \u2013 t-sm.<\/p>\n<p>Si hay alguna asimetr\u00eda entre estos dos valores, aparece un error de correcci\u00f3n del tiempo exacto. El error se debe a que el retraso calculado es el promedio de los retrasos t-ms y t-sm. Si los retrasos no son iguales, corregiremos el tiempo de manera inexacta.<\/p>\n<p><i>Correcci\u00f3n del deslizamiento del tiempo exacto<\/i><\/p>\n<p>Despu\u00e9s de que se conoce el retraso entre los relojes principales y los relojes secundarios, los relojes secundarios realizan la correcci\u00f3n del tiempo.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/27f230252126a768273b40e8c8e7cc4e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLos relojes secundarios utilizan el mensaje Sync y el mensaje opcional Follow_Up para calcular el deslizamiento del tiempo exacto al transmitir el paquete de los relojes principales a los relojes secundarios. El deslizamiento se calcula seg\u00fan la siguiente f\u00f3rmula:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/190604a9287f285e191eb26381fca52c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mecanismo de medici\u00f3n de retraso de nodo vecino (Peer delay measurement mechanism)<\/b><\/p>\n<p>Este mecanismo tambi\u00e9n utiliza dos pasos para la sincronizaci\u00f3n:<\/p>\n<ol>\n<li>Los dispositivos miden el retraso de tiempo hacia todos los vecinos a trav\u00e9s de todos los puertos. Para esto, utilizan el mecanismo de retraso de par.<\/li>\n<li>Correcci\u00f3n del deslizamiento del tiempo exacto.<\/li>\n<\/ol>\n<p>\n<i>Medici\u00f3n del retraso entre dispositivos que soportan el modo Par-a-Par<\/i><\/p>\n<p>El retraso entre los puertos que soportan el mecanismo de par-a-par se mide utilizando los siguientes mensajes:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/897c9914110e9a56f98f4fa835f524cd.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCuando al puerto 1 se le conoce el tiempo t1, t2, t3 y t4, puede calcular el retraso medio (tmld). Se calcula seg\u00fan la siguiente f\u00f3rmula:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/17416bf3b60f86136002b27cf4987b27.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLuego, el puerto utiliza este valor al calcular el campo de correcci\u00f3n para cada mensaje Sync o el mensaje opcional Follow_Up que pasa por este dispositivo. <\/p>\n<p>El retraso total ser\u00e1 igual a la suma del retraso al pasar por este dispositivo, el retraso medio al pasar por el canal de datos y el retraso ya contenido en este mensaje, incluido en los dispositivos ascendentes.<\/p>\n<p>Los mensajes Pdelay_Req, Pdelay_Resp y el opcional Pdelay_Resp_Follow_Up permiten obtener la latencia del maestro al esclavo y del esclavo al maestro (circular).<\/p>\n<p>Cualquier asimetr\u00eda entre estos dos valores introducir\u00e1 un error en la correcci\u00f3n del desfase de tiempo preciso.<\/p>\n<p><i>Correcci\u00f3n del desfase de tiempo preciso<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/c9cdedffd98db044718b8bc0eef156b9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLos relojes esclavos utilizan el mensaje Sync y el mensaje opcional Follow_Up para calcular el desfase de tiempo preciso durante la transmisi\u00f3n del paquete desde los relojes maestros a los esclavos. El desfase se calcula con la siguiente f\u00f3rmula:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/dff497d0f5644c3591f05f99e4c8c23a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUna de las ventajas del mecanismo de correcci\u00f3n peer-to-peer es que la latencia de cada mensaje Sync o Follow_Up se calcula a medida que se transmite en la red. Por consiguiente, el cambio en la ruta de transmisi\u00f3n no afectar\u00e1 en absoluto la precisi\u00f3n de la correcci\u00f3n.<\/p>\n<p>Al utilizar este mecanismo, la sincronizaci\u00f3n del tiempo no requiere calcular la latencia del tiempo en la ruta que ha seguido el paquete de sincronizaci\u00f3n, como se hace en el intercambio b\u00e1sico. Es decir, los mensajes Delay_Req y Delay_Resp no se env\u00edan. En este m\u00e9todo, la latencia entre los relojes maestros y esclavos simplemente se suma en el campo de correcci\u00f3n de cada mensaje Sync o Follow_Up.<\/p>\n<p>Otra ventaja es que los relojes maestros se liberan de la necesidad de procesar los mensajes Delay_Req.<\/p>\n<p><b>Modos de operaci\u00f3n de los relojes transparentes<\/b><\/p>\n<p>Por lo tanto, se han analizado ejemplos simples. Ahora supongamos que en el camino de sincronizaci\u00f3n aparecen conmutadores.<\/p>\n<p>Si se utilizan conmutadores sin soporte para PTPv2, el paquete de sincronizaci\u00f3n se retrasar\u00e1 en el conmutador aproximadamente 10 \u00b5s.<\/p>\n<p>Los conmutadores con soporte para PTPv2, en la terminolog\u00eda IEEE 1588v2, se denominan relojes transparentes (Transparent clock). Los relojes transparentes no se sincronizan con los relojes maestros y no participan en la jerarqu\u00eda 'Relojes maestros - Relojes esclavos', pero al transmitir mensajes de sincronizaci\u00f3n recuerdan cu\u00e1nto tiempo se retras\u00f3 el mensaje en ellos. Esto permite corregir la latencia de tiempo.<\/p>\n<p>Los relojes transparentes pueden operar en dos modos:<\/p>\n<ul>\n<li>End-to-End.<\/li>\n<li>Peer-to-Peer.<\/li>\n<\/ul>\n<p>\n<b>End-to-End (E2E)<\/b><\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/94e5d2f343d1657f1458adcbb344d024.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLos relojes transparentes E2E transmiten mensajes Sync y mensajes asociados Follow_Up a todos los puertos. Incluso a aquellos que est\u00e1n bloqueados por alg\u00fan protocolo (por ejemplo, RSTP).<\/p>\n<p>El conmutador recuerda la marca de tiempo cuando el paquete Sync (Follow_Up) fue recibido en el puerto y cuando fue enviado desde el puerto. Con base en estas dos marcas de tiempo, se calcula el tiempo de procesamiento del mensaje por parte del conmutador. En el est\u00e1ndar, este tiempo se llama tiempo de residencia.<\/p>\n<p>El tiempo de procesamiento se a\u00f1ade al campo correctionField del mensaje Sync (reloj de una etapa) o Follow_Up (reloj de dos etapas).<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/b04cfa6cd1a93f25222079d5bb864a6d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLos relojes E2E transparentes miden el tiempo de procesamiento para los mensajes Sync y Delay_Req que pasan a trav\u00e9s del conmutador. Sin embargo, es importante entender que la demora entre los relojes maestros y los relojes esclavos se calcula mediante un mecanismo de solicitud-respuesta de demora. Si los relojes maestros cambian o si cambia el camino entre los relojes maestros y esclavos, la demora se mide de nuevo. Esto aumenta el tiempo de transici\u00f3n en caso de cambios en la red.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/5bcb72a639accf802ffba7a1fa9a4767.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLos relojes P2P transparentes, adem\u00e1s de medir el tiempo de procesamiento del mensaje por parte del conmutador, miden la demora en el canal de transmisi\u00f3n hasta el vecino m\u00e1s cercano, utilizando un mecanismo de medici\u00f3n de demora del nodo adyacente.<\/p>\n<p>La demora se mide en cada canal en ambas direcciones, incluyendo los canales que est\u00e1n bloqueados por alg\u00fan protocolo (por ejemplo, RSTP). Esto permite calcular de inmediato la nueva demora en el camino de sincronizaci\u00f3n si cambian los relojes de gran maestro o la topolog\u00eda de la red.<\/p>\n<p>El tiempo de procesamiento de los mensajes por los conmutadores y el tiempo de demora se acumulan al enviar mensajes Sync o Follow_Up.<\/p>\n<p><b>Tipos de soporte de PTPv2 por parte de los conmutadores<\/b><\/p>\n<p>Los conmutadores pueden soportar PTPv2:<\/p>\n<ul>\n<li>por software;<\/li>\n<li>por hardware.<\/li>\n<\/ul>\n<p>\nEn la implementaci\u00f3n por software del protocolo PTPv2, el conmutador solicita la marca de tiempo al firmware. El problema es que el firmware opera c\u00edclicamente, y habr\u00e1 que esperar a que termine su ciclo actual, procese la solicitud y, al final del siguiente ciclo, emita la marca de tiempo. Todo esto tambi\u00e9n tomar\u00e1 tiempo, y obtendremos una demora, aunque no tan significativa como sin soporte de PTPv2 por software.<\/p>\n<p>Solo el soporte por hardware de PTPv2 permite mantener la precisi\u00f3n necesaria. En este caso, la emisi\u00f3n de la marca de tiempo es realizada por un ASIC especializado instalado en el puerto.<\/p>\n<p><b>Formato del mensaje<\/b><\/p>\n<p>Todos los mensajes PTP consisten en los siguientes campos:<\/p>\n<ul>\n<li>Header \u2013 34 bytes.<\/li>\n<li>Body \u2013 el tama\u00f1o depende del tipo de mensaje.<\/li>\n<li>Suffix \u2013 opcional.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/99086e6601dcdf8f41c10f273c4ebfdc.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Header<\/b><\/p>\n<p>El campo Header es el mismo para todos los mensajes PTP. Su tama\u00f1o es de 34 bytes.<\/p>\n<p>Formato del campo Header:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/e4500d7e9026d9d059b1dcd668a44e5f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>messageType <\/b>\u2013 contiene el tipo de mensaje transmitido, como Sync, Delay_Req, PDelay_Req, etc.<\/p>\n<p><b>messageLength<\/b> \u2013 contiene el tama\u00f1o total del mensaje PTP, incluyendo el header, body y suffix (pero excluyendo los bytes de relleno).<\/p>\n<p><b>domainNumber<\/b> \u2013 define a qu\u00e9 <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/es\/domain\/\"   title=\"el dominio\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1225\">el dominio<\/a> PTP pertenece el mensaje.<\/p>\n<p><b>Dominio<\/b> \u2013 es un conjunto de relojes diferentes, agrupados en una sola l\u00f3gica y sincronizados a partir de un reloj maestro, pero no necesariamente sincronizados con los relojes de otro dominio.<\/p>\n<p><b>flags<\/b> \u2013 este campo contiene varios flags para identificar el estado del mensaje.<\/p>\n<p><b>correctionField<\/b> \u2013 contiene el tiempo de retraso en nanosegundos. El tiempo de retraso incluye la latencia al transmitirse a trav\u00e9s de relojes transparentes, as\u00ed como la latencia de transmisi\u00f3n a trav\u00e9s del canal en modo Peer-to-Peer.<\/p>\n<p><b>sourcePortIdentity<\/b> \u2013 este campo contiene informaci\u00f3n sobre el puerto desde el que se envi\u00f3 originalmente este mensaje.<\/p>\n<p><b>sequenceID<\/b> \u2013 contiene el n\u00famero de identificaci\u00f3n para mensajes individuales.<\/p>\n<p><b>controlField<\/b> \u2013 campo-artefacto =) Se ha mantenido desde la primera versi\u00f3n del est\u00e1ndar y contiene informaci\u00f3n sobre el tipo de mensaje. Esencialmente, es lo mismo que messageType, pero con menos opciones.<\/p>\n<p><b>logMessageInterval<\/b> \u2013 este campo se determina por el tipo de mensaje.<\/p>\n<p><b>Cuerpo<\/b><\/p>\n<p>Como se mencion\u00f3 anteriormente, hay varios tipos de mensajes. Estos tipos se describen a continuaci\u00f3n:<\/p>\n<p><b>Mensaje Announce<\/b><br \/>\nEl mensaje Announce se utiliza para \"informar\" a otros relojes dentro de un mismo dominio sobre sus par\u00e1metros. Este mensaje permite establecer una jerarqu\u00eda de \"Relojes Maestros - Relojes Esclavos\".<br \/>\n<img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/054b35f0c74757d531205fa352b90f4e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Sync<\/b><br \/>\nEl mensaje de sincronizaci\u00f3n (Sync) es enviado por los relojes maestros y contiene el tiempo del reloj maestro en el momento en que se cre\u00f3 el mensaje Sync. Si los relojes maestros son de dos niveles, la marca de tiempo en el mensaje Sync se igualar\u00e1 a 0, y la marca de tiempo actual se enviar\u00e1 en el mensaje asociado Follow_Up. El mensaje Sync se utiliza para ambos mecanismos de medici\u00f3n de retraso.<\/p>\n<p>El mensaje se transmite mediante Multicast. Opcionalmente, se puede usar Unicast.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/38268221aa5663ba021f225c9de01df9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Delay_Req<\/b><\/p>\n<p>El formato del mensaje Delay_Req es id\u00e9ntico al del mensaje Sync. Los relojes esclavos env\u00edan Delay_Req. Contiene el tiempo de env\u00edo del Delay_Req por los relojes esclavos. Este mensaje se utiliza \u00fanicamente para el mecanismo de solicitud-respuesta de retraso.<\/p>\n<p>El mensaje se transmite mediante Multicast. Opcionalmente, se puede usar Unicast.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/1e64f3902ff3364b968581ff6b6a6573.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Follow_Up<\/b><\/p>\n<p>El mensaje Follow_Up se env\u00eda opcionalmente mediante relojes maestros y contiene la hora de env\u00edo <b>mensajes Sync<\/b> maestro. El mensaje Follow_Up solo lo env\u00edan relojes maestros de dos pasos.<\/p>\n<p>El mensaje Follow_Up se utiliza para ambos mecanismos de medici\u00f3n de retardos.<\/p>\n<p>El mensaje se transmite mediante Multicast. Opcionalmente, se puede usar Unicast.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/00917743466b8a331922d18e0928d3db.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Delay_Resp<\/b><\/p>\n<p>El mensaje Delay_Resp es enviado por relojes maestros. Contiene la hora de recepci\u00f3n de Delay_Req por parte de los relojes maestros. Este mensaje se utiliza \u00fanicamente para el mecanismo de solicitud-respuesta de retardos.<\/p>\n<p>El mensaje se transmite mediante Multicast. Opcionalmente, se puede usar Unicast.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/b9d0bc41f94ceee560c0c593dd9e4afd.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Pdelay_Req<\/b><\/p>\n<p>El mensaje Pdelay_Req es enviado por el dispositivo que solicita el retardo. Contiene la hora de env\u00edo del mensaje desde el puerto de este dispositivo. Pdelay_Req se utiliza solo para el mecanismo de medici\u00f3n de retardo del nodo vecino.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/7eef44a2655158758cdbcfbc25fc2e48.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Pdelay_Resp<\/b><\/p>\n<p>El mensaje Pdelay_Resp es enviado por el dispositivo que recibi\u00f3 la solicitud de retardo. Contiene la hora de recepci\u00f3n del mensaje Pdelay_Req por parte de este dispositivo. Los mensajes Pdelay_Resp se utilizan exclusivamente para el mecanismo de medici\u00f3n de retardo del nodo vecino.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/6a3bb44c70fc09db3025df93c4d58a3f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensaje Pdelay_Resp_Follow_Up<\/b><\/p>\n<p>El mensaje Pdelay_Resp_Follow_Up se env\u00eda opcionalmente por el dispositivo que recibi\u00f3 la solicitud de retardo. Contiene la hora de recepci\u00f3n del mensaje Pdelay_Req por este dispositivo. El mensaje Pdelay_Resp_Follow_Up es enviado \u00fanicamente por relojes maestros de dos pasos.<\/p>\n<p>Este mensaje tambi\u00e9n puede utilizarse para el tiempo de ejecuci\u00f3n en lugar de la marca de tiempo. El tiempo de ejecuci\u00f3n es el tiempo desde que se recibe Pdelay-Req hasta que se env\u00eda Pdelay_Resp.<\/p>\n<p>Pdelay_Resp_Follow_Up se utilizan \u00fanicamente para el mecanismo de medici\u00f3n de retardo del nodo vecino.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/523043f7a880030474098fcdc1c5822d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Mensajes de Control (Mensaje Management)<\/b><\/p>\n<p>Los mensajes de control PTP son necesarios para transmitir informaci\u00f3n entre uno o varios relojes y el nodo de control.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/4388d9f4b6b12f3a2cdc764c20597499.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Transmisi\u00f3n en LV<\/b><\/p>\n<p>El mensaje PTP puede transmitirse en dos niveles:<\/p>\n<ul>\n<li>Red \u2013 como parte de datos IP.<\/li>\n<li>Enlace \u2013 como parte de un marco Ethernet.<\/li>\n<\/ul>\n<p>\nTransmisi\u00f3n de mensajes PTP a trav\u00e9s de UDP a trav\u00e9s de IP a trav\u00e9s de Ethernet<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/361e008fc48396915e5e9c23cc52bd63.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPTP a trav\u00e9s de UDP a trav\u00e9s de Ethernet<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/1862a5d27931a744e75e3c5bc63d7091.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>Perfiles<\/b><\/p>\n<p>PTP tiene bastantes par\u00e1metros \"flexibles\" que necesitan ser configurados. Por ejemplo:<\/p>\n<ul>\n<li>Opciones BMCA.<\/li>\n<li>Mecanismo de medici\u00f3n de retardo.<\/li>\n<li>Intervalos y valores iniciales de todos los par\u00e1metros configurables, etc.<\/li>\n<\/ul>\n<p>\nY a pesar de que antes mencionamos que los dispositivos PTPv2 son compatibles entre s\u00ed, en realidad no es as\u00ed. Los dispositivos deben tener configuraciones id\u00e9nticas para interactuar.<\/p>\n<p>Por lo tanto, existen lo que se llaman perfiles PTPv2. Los perfiles son grupos de configuraciones y restricciones espec\u00edficas del protocolo, para permitir la sincronizaci\u00f3n de tiempo para una aplicaci\u00f3n particular.<\/p>\n<p>El est\u00e1ndar IEEE 1588v2 describe solo un perfil: el 'Default Profile'. Todos los dem\u00e1s perfiles han sido creados y descritos por diversas organizaciones y asociaciones.<\/p>\n<p>Por ejemplo, el perfil para energ\u00eda el\u00e9ctrica o PTPv2 Power Profile fue creado por el comit\u00e9 Power Systems Relaying Committee y el comit\u00e9 Substation Committee de la sociedad IEEE Power and Energy Society. El perfil se llama IEEE C37.238-2011.<\/p>\n<p>El perfil describe que PTP puede ser transmitido:<\/p>\n<ul>\n<li>Solo a trav\u00e9s de redes L2 (es decir, Ethernet, HSR, PRP, no IP).<\/li>\n<li>Los mensajes se transmiten \u00fanicamente por env\u00edo Multicast.<\/li>\n<li>Se utiliza el mecanismo de medici\u00f3n de retardo Peer delay measurement mechanism.<\/li>\n<\/ul>\n<p>\nEl dominio por defecto es 0, el dominio recomendado es 93.<\/p>\n<p>La filosof\u00eda detr\u00e1s de la creaci\u00f3n de C37.238-2011 era reducir el n\u00famero de caracter\u00edsticas opcionales y mantener solo las funciones necesarias para una interacci\u00f3n confiable entre dispositivos y aumentar la estabilidad del sistema.<\/p>\n<p>Adem\u00e1s, se ha definido la frecuencia de transmisi\u00f3n de mensajes:<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/117c81192ff2eb160652738bb9ecbb1d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEn esencia, solo hay un par\u00e1metro disponible para la selecci\u00f3n: tipo de reloj maestro (de un nivel o de dos niveles).<\/p>\n<p>La precisi\u00f3n no debe ser superior a 1 \u03bcs. En otras palabras, en un camino de sincronizaci\u00f3n, pueden incluirse como m\u00e1ximo 15 relojes transparentes o tres relojes l\u00edmite.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2\" src=\"\/wp-content\/uploads\/2020\/04\/d3f1cb822d01b8733eadb6cd75805b20.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/phoenix_contact\/blog\/495920\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0426\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u0446\u0438\u0438\u00bb \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u044d\u043d\u0435\u0440\u0433\u0435\u0442\u0438\u043a\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u044e 1 \u043c\u043a\u0441. \u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u0442\u0430\u043a\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0432 \u043c\u043a\u0441. \u0412 \u044d\u0442\u0438\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 NTP \u0443\u0436\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e. \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 PTPv2, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u043c IEEE 1588v2, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043d\u0430\u043d\u043e\u0441\u0435\u043a\u0443\u043d\u0434. PTPv2 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 L2 \u0438 L3-\u0441\u0435\u0442\u0438. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":77042,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-77041","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0426\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u0446\u0438\u0438\u00bb \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u044d\u043d\u0435\u0440\u0433\u0435\u0442\u0438\u043a\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u044e 1 \u043c\u043a\u0441. \u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u0442\u0430\u043a\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0432 \u043c\u043a\u0441.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 PTPv2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0426\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u0446\u0438\u0438\u00bb \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u044d\u043d\u0435\u0440\u0433\u0435\u0442\u0438\u043a\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u044e 1 \u043c\u043a\u0441. \u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u0442\u0430\u043a\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0432 \u043c\u043a\u0441.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-07T11:42:46+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-07T11:42:46+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Detalles de la implementaci\u00f3n del protocolo de sincronizaci\u00f3n de tiempo PTPv2 | ProHoster","description":"Introducci\u00f3n La concepci\u00f3n de la 'Subestaci\u00f3n Digital' en la energ\u00eda el\u00e9ctrica requiere sincronizaci\u00f3n con una precisi\u00f3n de 1 \u03bcs. Tambi\u00e9n se requiere precisi\u00f3n en \u03bcs para realizar transacciones financieras.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 PTPv2 | ProHoster","og:description":"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u00ab\u0426\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u0446\u0438\u0438\u00bb \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u044d\u043d\u0435\u0440\u0433\u0435\u0442\u0438\u043a\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u044e 1 \u043c\u043a\u0441. \u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u0442\u0430\u043a\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0432 \u043c\u043a\u0441.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/podrobnosti-realizaczii-protokola-sinhronizaczii-vremeni-ptpv2","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-07T11:42:46+00:00","article:modified_time":"2020-04-07T11:42:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"77041","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 17:25:29","updated":"2026-02-09 15:52:39","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/77041","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=77041"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/77041\/revisions"}],"predecessor-version":[{"id":158469,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/77041\/revisions\/158469"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/77042"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=77041"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=77041"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=77041"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}