b'\n_START_ARTICLE_\nPrecision Time Protocol\n_START_PARAGRAPH_\nPrecision Time Protocol (PTP) \xe2\x80\x93 protok\xc3\xb3\xc5\x82 precyzyjnej synchronizacji czasu poprzez sie\xc4\x87 Ethernet.\n_START_SECTION_\nWprowadzenie\n_START_PARAGRAPH_\nProtok\xc3\xb3\xc5\x82 PTP umo\xc5\xbcliwia osi\xc4\x85gni\xc4\x99cie dok\xc5\x82adno\xc5\x9bci synchronizacji zegar\xc3\xb3w w sieci Ethernet poni\xc5\xbcej mikrosekundy, co umo\xc5\xbcliwia zastosowanie go do synchronizacji urz\xc4\x85dze\xc5\x84 ko\xc5\x84cowych we wra\xc5\xbcliwych czasowo aplikacjach automatyki przemys\xc5\x82owej, telekomunikacji oraz energetyki, gdzie implementacja tego protoko\xc5\x82u jest istotnym elementem zapewnienia komunikacji w stacjach energetycznych tworzonych w oparciu o norm\xc4\x99 IEC 61850. Zastosowanie protoko\xc5\x82u PTP pozwala unikn\xc4\x85\xc4\x87 konieczno\xc5\x9bci stosowania odbiornik\xc3\xb3w GPS w urz\xc4\x85dzeniach ko\xc5\x84cowych lub u\xc5\xbcycia oddzielnego medium transmisyjnego jak w przypadku protoko\xc5\x82u IRIG-B.\n_START_SECTION_\nWersje protoko\xc5\x82u\n_START_PARAGRAPH_\nProtok\xc3\xb3\xc5\x82 PTP zosta\xc5\x82 po raz pierwszy opublikowany w standardzie IEEE 1588-2002 "Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems" w 2002 roku. W 2008 roku zosta\xc5\x82a opublikowana w standardzie IEEE 1588-2008 jego poprawiona wersja, okre\xc5\x9blana jako PTP wersja 2 (PTPv2), umo\xc5\xbcliwiaj\xc4\x85ca osi\xc4\x85gni\xc4\x99cie wi\xc4\x99kszej dok\xc5\x82adno\xc5\x9bci synchronizacji i odporno\xc5\x9bci na zmiany topologii sieci. Protok\xc3\xb3\xc5\x82 w wersji drugiej nie jest kompatybilny wstecz z wersj\xc4\x85 pierwsz\xc4\x85.\n_START_SECTION_\nDzia\xc5\x82anie\n_START_PARAGRAPH_\nProtok\xc3\xb3\xc5\x82 PTP korzysta z architektury Master \xe2\x80\x93 Slave. W pierwszej fazie dzia\xc5\x82ania protoko\xc5\x82u poprzez algorytm Best Master Clock (BMC) w obr\xc4\x99bie domeny wybierany jest w\xc4\x99ze\xc5\x82 posiadaj\xc4\x85cy dost\xc4\x99p do najlepszego zegara (kt\xc3\xb3ry zazwyczaj jest dostarczany poprzez odbiornik GPS). Po wyborze przez urz\xc4\x85dzenia zegara nadrz\xc4\x99dnego nast\xc4\x99puje synchronizacja do niego zegar\xc3\xb3w podrz\xc4\x99dnych. Podzielona jest ona na dwie fazy, w pierwszej fazie liczona jest r\xc3\xb3\xc5\xbcnica pomi\xc4\x99dzy zegarami urz\xc4\x85dze\xc5\x84 Slave oraz Master. W drugie fazie liczone jest op\xc3\xb3\xc5\xbanienie transmisji pomi\xc4\x99dzy zegarami. _NEWLINE_PTPv1 definiuje dwa typy urz\xc4\x85dze\xc5\x84 (port\xc3\xb3w Ethernet) okre\xc5\x9blanych r\xc3\xb3wnie\xc5\xbc ze wzgl\xc4\x99du na ich rol\xc4\x99 zegarami: zegar zwyk\xc5\x82y (ang. ordinary clock) oraz brzegowy (ang. boundary clock). Wersja PTPv2 zosta\xc5\x82a rozszerzona tak\xc5\xbce o zegar transparentny (ang. transparent clock).  _NEWLINE_Zegar zwyk\xc5\x82y jest urz\xc4\x85dzeniem ko\xc5\x84cowym b\xc4\x99d\xc4\x85cym \xc5\xbar\xc3\xb3d\xc5\x82em zegara, lub jego odbiorc\xc4\x85. Zegar brzegowy s\xc5\x82u\xc5\xbcy natomiast do przenoszenia zegara pomi\xc4\x99dzy kolejnymi domenami. W obr\xc4\x99bie ka\xc5\xbcdej domeny zegary brzegowe mog\xc4\x85 pe\xc5\x82ni\xc4\x87 funkcj\xc4\x99 podrz\xc4\x99dn\xc4\x85 wzgl\xc4\x99dem zegara g\xc5\x82\xc3\xb3wnego lub nadrz\xc4\x99dn\xc4\x85 wzgl\xc4\x99dem kolejnej do\xc5\x82\xc4\x85czonej domeny, dla kt\xc3\xb3rej stanowi\xc4\x85 \xc5\xbar\xc3\xb3d\xc5\x82o zegara. Konfiguracja taka pozwala tworzy\xc4\x87 po\xc5\x82\xc4\x85czenia w kt\xc3\xb3rych wiele domen spi\xc4\x99tych jest w jedn\xc4\x85 magistral\xc4\x99 synchronizuj\xc4\x85c\xc4\x85 si\xc4\x99 do pojedynczego zegara nadrz\xc4\x99dnego. Wi\xc4\x85\xc5\xbce si\xc4\x99 to jednak z pogorszeniem dok\xc5\x82adno\xc5\x9bci synchronizacji dla kolejnych w\xc4\x99z\xc5\x82\xc3\xb3w magistrali._NEWLINE_Rozwi\xc4\x85zaniem tego problemu s\xc4\x85 zegary transparentne wprowadzone w PTPv2. Standard IEEE-1588-2008 definiuje dwa typy zegar\xc3\xb3w transparentnych: peer-to-peer (P2P) oraz end-to-end (E2E). Zegary E2E uzupe\xc5\x82niaj\xc4\x85 komunikaty PTP o czas potrzebny na przes\xc5\x82anie wiadomo\xc5\x9bci przez w\xc4\x99ze\xc5\x82, zegary P2P dodatkowo uwzgl\xc4\x99dniaj\xc4\x85 op\xc3\xb3\xc5\xbanienie pomi\xc4\x99dzy w\xc4\x99z\xc5\x82ami. Oba typy zegar\xc3\xb3w transparentnych nie synchronizuj\xc4\x85 samych siebie do przechodz\xc4\x85cych ramek synchronizacyjnych, a jedynie po\xc5\x9brednicz\xc4\x85 w ich przep\xc5\x82ywie.\n_START_SECTION_\nTransmisja\n_START_PARAGRAPH_\nW pocz\xc4\x85tkowej wersji protoko\xc5\x82u do transmisji by\xc5\x82y wykorzystywane jedynie pakiety IP (zar\xc3\xb3wno IPv4 jak i IPv6) typu (multicast). Wersja druga protoko\xc5\x82u wprowadzi\xc5\x82a ponadto mo\xc5\xbcliwo\xc5\x9b\xc4\x87 komunikacji poprzez pakiety typu unicast. Do przesy\xc5\x82ania komunikat\xc3\xb3w PTP mog\xc4\x85 zosta\xc4\x87 u\xc5\xbcyte r\xc3\xb3wnie\xc5\xbc ramki Ethernet bez nag\xc5\x82\xc3\xb3wk\xc3\xb3w IP. W celu zapewnienia szybszej i pewniejszej transmisji w przypadku obci\xc4\x85\xc5\xbcenia sieci wiadomo\xc5\x9bci ramki zawieraj\xc4\x85ce wiadomo\xc5\x9bci PTP cz\xc4\x99sto oznaczane s\xc4\x85 nag\xc5\x82\xc3\xb3wkiem VLAN o odpowiednio wysokim priorytecie._NEWLINE_Zsynchronizowane ze sob\xc4\x85 urz\xc4\x85dzenia poprzez ca\xc5\x82y czas dzia\xc5\x82ania protoko\xc5\x82u wysy\xc5\x82aj\xc4\x85 zapytania do zegara nadrz\xc4\x99dnego (lub do urz\xc4\x85dze\xc5\x84 s\xc4\x85siaduj\xc4\x85cych w przypadku trybu P2P), o aktualny czas op\xc3\xb3\xc5\xbanienia. Pozwala to dynamicznie reagowa\xc4\x87 na zmiany zachodz\xc4\x85ce w sieci.'