EinfĂŒhrung
Das Konzept zum Aufbau einer "Digitalen Umspannstation" in der Elektroenergiebranche erfordert eine Synchronisation mit einer Genauigkeit von 1 ”s. Auch fĂŒr die DurchfĂŒhrung von finanziellen Transaktionen ist eine Genauigkeit in Mikrosekunden notwendig. In diesen Anwendungen reicht die Genauigkeit der NTP-Zeitmessung bereits nicht mehr aus.
Das Zeit-Synchronisationsprotokoll PTPv2, das im Standard IEEE 1588v2 beschrieben ist, ermöglicht eine Synchronisationsgenauigkeit von wenigen Dutzend Nanosekunden. PTPv2 erlaubt das Senden von Synchronisationspaketen ĂŒber L2- und L3-Netze.
Die Hauptbereiche, in denen PTPv2 eingesetzt wird, sind:
- Energiewirtschaft;
- Mess- und PrĂŒfgerĂ€te;
- Verteidigung und Industriekomplex;
- Telekommunikation;
- Finanzsektor.
In diesem Beitrag wird erörtert, wie das Zeit-Synchronisationsprotokoll PTPv2 funktioniert.
Wir haben mehr Erfahrung in der Industrie und treffen hĂ€ufig auf dieses Protokoll in der Energiewirtschaft. Daher werden wir auch die Ăbersicht mit einem Fokus auf die Energiewirtschaft geben. .
Derzeit enthalten die Normen STO 34.01-21-004-2019 der PJSC "Rosseti" und STO 56947007-29.240.10.302-2020 der PJSC "FSK EES" Anforderungen an die Organisation eines Prozessbusses mit GewÀhrleistung der Zeit-Synchronisation nach PTPv2.
Dies hĂ€ngt damit zusammen, dass an den Prozessbus Terminals fĂŒr relaischutz und MessgerĂ€te angeschlossen sind, die ĂŒber den Prozessbus durch sogenannte SV-Streams (Multicast-Streams) sofortige Werte fĂŒr Strom und Spannung ĂŒbertragen.
Die Terminals fĂŒr relaischutz nutzen diese Werte zur Implementierung von SchutzmaĂnahmen fĂŒr AnschlĂŒsse. Wenn die Genauigkeit der Zeitmessung gering ist, können einige SchutzmaĂnahmen fĂ€lschlicherweise aktiv werden.
Beispielsweise können SchutzmaĂnahmen fĂŒr absolute SelektivitĂ€t Opfer einer "schwachen" Zeit-Synchronisation werden. Oft basiert die Logik solcher SchutzmaĂnahmen auf dem Vergleich zweier GröĂen. Wenn die Werte sich um einen ausreichenden Betrag unterscheiden, wird der Schutz aktiviert. Wenn diese GröĂen mit einer Zeitgenauigkeit von 1 ms gemessen werden, kann eine groĂe Abweichung auftreten, wĂ€hrend die Werte tatsĂ€chlich im Normbereich liegen, wenn sie mit einer Genauigkeit von 1 ”s gemessen werden.
Versionen von PTP
PTP-Versionen
Das PTP-Protokoll wurde ursprĂŒnglich im Jahr 2002 im Standard IEEE 1588-2002 beschrieben und trug den Titel âStandard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systemsâ. Im Jahr 2008 wurde der aktualisierte Standard IEEE 1588-2008 veröffentlicht, der PTP Version 2 beschreibt. In dieser Version des Protokolls wurden die Genauigkeit und StabilitĂ€t verbessert, jedoch wurde die RĂŒckwĂ€rtskompatibilitĂ€t zur ersten Version des Protokolls nicht beibehalten. AuĂerdem wurde 2019 die Version des Standards IEEE 1588-2019 eingefĂŒhrt, die PTP v2.1 beschreibt. Diese Version fĂŒgt kleine Verbesserungen zu PTPv2 hinzu und ist rĂŒckwĂ€rtskompatibel mit PTPv2.
Mit anderen Worten, wir haben folgendes Bild mit den Versionen:
PTPv1
(IEEE 1588-2002)
PTPv2
(IEEE 1588-2008)
PTPv2.1
(IEEE 1588-2019)
PTPv1 (IEEE 1588-2002)
â
Nicht kompatibel
Nicht kompatibel
PTPv2 (IEEE 1588-2008)
Nicht kompatibel
â
Kompatibel
PTPv2.1 (IEEE 1588-2019)
Nicht kompatibel
Kompatibel
â
Aber wie immer gibt es Nuancen.
Die InkompatibilitĂ€t zwischen PTPv1 und PTPv2 bedeutet, dass ein PTPv1-fĂ€higes GerĂ€t nicht mit prĂ€zisen Uhren, die auf PTPv2 basieren, synchronisiert werden kann. FĂŒr die Synchronisierung verwenden sie unterschiedliche Nachrichtenformate.
Es ist jedoch möglich, GerĂ€te mit PTPv1 und GerĂ€te mit PTPv2 im selben Netzwerk zu kombinieren. DafĂŒr erlauben einige Hersteller, dass an den Ports der Grenzuhren die Protokollversion ausgewĂ€hlt werden kann. Das bedeutet, dass Grenzuhren sich ĂŒber PTPv2 synchronisieren können und gleichzeitig andere angeschlossene Uhren sowohl ĂŒber PTPv1 als auch ĂŒber PTPv2 synchronisieren können.
PTP-GerÀte. Welche Arten gibt es und wie unterscheiden sie sich?
Der Standard IEEE 1588v2 beschreibt mehrere GerĂ€tetypen. Alle sind in der Tabelle aufgefĂŒhrt.
Die GerĂ€te interagieren ĂŒber LAN und verwenden PTP.
PTP-GerÀte werden als Uhren bezeichnet. Alle Uhren beziehen die genaue Zeit von Meisteruhren.
Es gibt 5 Arten von Uhren:
Grandmaster clock (Meisteruhr)
Die Hauptquelle fĂŒr genaue Zeit. Oft mit einem GPS-Anschluss ausgestattet.
Ordinary Clock (Gewöhnliche Uhr)
Ein GerĂ€t mit einem Port, das als Meister (fĂŒhrende Uhr) oder Slave (nachfolgende Uhr) fungieren kann.
FĂŒhrende Uhren (Meister)
Sind die Quelle der genauen Zeit, nach der sich andere Uhren synchronisieren.
Nachfolgende Uhren (Slaves)
EndgerĂ€t, das sich von fĂŒhrenden Uhren synchronisiert.
Boundary Clock (Grenzuhren)
GerÀt mit mehreren Ports, das Meister oder Slave sein kann.
Das bedeutet, dass diese Uhren sich von ĂŒbergeordneten fĂŒhrenden Uhren synchronisieren können und untergeordnete nachfolgende Uhren synchronisieren.
End-to-End Transparente Uhr (End-to-End transparente Uhren)
Ein MehrportgerĂ€t, das weder eine Master Uhr noch eine Slave Uhr ist. Es ĂŒbertrĂ€gt PTP-Daten zwischen zwei Uhren.
Bei der DatenĂŒbertragung korrigiert die transparente Uhr alle PTP-Nachrichten.
Die Korrektur erfolgt durch HinzufĂŒgen von Verzögerungszeit auf diesem GerĂ€t im Korrekturfeld im Header der ĂŒbertragenen Nachricht.
Peer-to-Peer Transparente Uhr (Peer-to-Peer transparente Uhren)
Ein MehrportgerÀt, das weder eine Master Uhr noch eine Slave Uhr ist.
Es ĂŒbertrĂ€gt PTP-Daten zwischen zwei Uhren.
Bei der DatenĂŒbertragung korrigiert die transparente Uhr alle PTP-Nachrichten Sync und Follow_Up (darĂŒber wird weiter unten mehr gesagt).
Die Korrektur erfolgt durch HinzufĂŒgen von Verzögerungen zum Korrekturfeld des ĂŒbertragenen Pakets und zur Verzögerung im Ăbertragungsweg.
Management Knoten (Verwaltungsknoten)
Ein GerÀt, das andere Uhren konfiguriert und diagnostiziert.
Master und Slave Uhren werden mit Zeitstempeln in PTP-Nachrichten synchronisiert. Es gibt zwei Arten von Nachrichten im PTP-Protokoll:
- Ereignisnachrichten â dies sind synchronisierte Nachrichten, die die Generierung eines Zeitstempels zum Zeitpunkt des Sendens der Nachricht und beim Empfang der Nachricht vorsehen.
- Allgemeine Nachrichten â diese Nachrichten erfordern keine Zeitstempel, können jedoch Zeitstempel fĂŒr verwandte Nachrichten enthalten.
Ereignisnachrichten
Allgemeine Nachrichten
Sync
Delay_Req
Pdelay_Req
Pdelay_Resp
AnkĂŒndigung
Follow_Up
Delay_Resp
Pdelay_Resp_Follow_Up
Management
Signalisierung
Im Folgenden werden alle Nachrichtentypen genauer betrachtet.
Hauptprobleme bei der Synchronisation
Bei der Ăbertragung eines Synchronisationspakets ĂŒber ein Netzwerk wird es am Switch und im Ăbertragungsweg verzögert. Jeder Switch verursacht eine Verzögerung von etwa 10 ”s, was fĂŒr PTPv2 inakzeptabel ist. SchlieĂlich mĂŒssen wir auf dem EndgerĂ€t eine Genauigkeit von 1 ”s erreichen. (Dies gilt fĂŒr die Energiewirtschaft. Andere Anwendungen könnten noch höhere Genauigkeiten erfordern.)
In IEEE 1588v2 sind mehrere Betriebsalgorithmen beschrieben, die es ermöglichen, die Zeitverzögerung zu erfassen und zu korrigieren.
Betriebsalgorithmus
Im Normalbetrieb arbeitet das Protokoll in zwei Phasen.
- Phase 1 â Einrichtung der Hierarchie "Master Uhren â Slave Uhren".
- Phase 2 â Synchronisation der Uhren mittels des End-to-End- oder Peer-to-Peer-Mechanismus.
Phase 1 â Einrichtung der Hierarchie âMaster-Slaveâ
Jeder Anschluss gewöhnlicher oder Grenzuhren hat eine bestimmte Anzahl von ZustĂ€nden (Slave-Uhren und Master-Uhren). Der Standard beschreibt den Algorithmus zum Ăbergang zwischen diesen ZustĂ€nden. In der Programmierung wird ein solcher Algorithmus als endlicher Automat oder Zustandsmaschine bezeichnet (weitere Informationen in der Wiki).
Dieser endliche Automat verwendet den Best Master Clock Algorithm (BMCA), um den Master bei der Verbindung von zwei Uhren festzulegen.
Dieser Algorithmus ermöglicht es Uhren, die Verantwortung fĂŒr Masteruhren zu ĂŒbernehmen, wenn ĂŒbergeordnete Masteruhren das GPS-Signal verlieren, vom Netz getrennt werden usw.
Die ĂbergĂ€nge zwischen den ZustĂ€nden gemÀà BMCA sind in der folgenden Abbildung kurz dargestellt:

Die Informationen ĂŒber die Uhren am anderen Ende des âKabelsâ werden in einer speziellen Nachricht (Announce-Nachricht) gesendet. Sobald diese Informationen empfangen werden, wird der Zustandsmaschinenalgorithmus ausgefĂŒhrt, und es erfolgt ein Vergleich, welche Uhren besser sind. Der Anschluss der besten Uhren wird zur Master-Uhr.
Eine einfache Hierarchie ist im folgenden Schema dargestellt. Die Wege 1, 2, 3, 4, 5 können transparente Uhren (Transparent Clock) enthalten, die jedoch nicht an der Einrichtung der Hierarchie âMasteruhren â Slaveuhrenâ beteiligt sind.

Phase 2 â Synchronisation der gewöhnlichen und Grenzuhren
Unmittelbar nach der Einrichtung der Hierarchie âMasteruhren â Slaveuhrenâ beginnt die Phase der Synchronisation von gewöhnlichen und Grenzuhren.
Zur Synchronisation senden die Masteruhren den Slave-Uhren eine Nachricht, die einen Zeitstempel enthÀlt.
Masteruhren können sein:
- einzelstufig;
- zwei-stufig.
Einzelstufige Uhren senden zur Synchronisation eine Nachricht Sync.
Zwei-stufige Uhren verwenden zur Synchronisation zwei Nachrichten â Sync und Follow_Up.
FĂŒr die Phase der Synchronisation können zwei Mechanismen verwendet werden:
- Mechanismus der verzögerten Anfrage-Antwort (Delay request-response mechanism).
- Mechanismus zur Messung der Verzögerung des benachbarten Knotens (Peer delay measurement mechanism).
Lassen Sie uns zunĂ€chst diese Mechanismen im einfachsten Fall betrachten â wenn keine transparenten Uhren verwendet werden.
Mechanismus der verzögerten Anfrage-Antwort (Delay request-response mechanism)
Der Mechanismus sieht zwei Schritte vor:
- Messung der Verzögerung beim Ăbertragen der Nachricht zwischen den Masteruhren und den Slave-Uhren. Dies erfolgt mittels des Mechanismus der verzögerten Anfrage-Antwort.
- Es erfolgt eine Korrektur der Zeitverschiebung.
Messung der Verzögerung

t1 â Zeitpunkt des Sendevorgangs der Sync-Nutzdaten; t2 â Zeitpunkt des Empfangs der Sync-Nutzdaten durch die Slave-Uhren; t3 â Zeitpunkt der Anfrage zur Verzögerung (Delay_Req) durch die Slave-Uhren; t4 â Zeitpunkt des Empfangs des Delay_Req durch die Master-Uhren.
Wenn die Slave-Uhren die Zeiten t1, t2, t3 und t4 kennen, können sie die durchschnittliche Verzögerung bei der Ăbertragung der Synchronisierungsnachricht (tmpd) berechnen. Diese wird wie folgt berechnet:

Bei der Ăbertragung der Sync- und Follow_Up-Nachricht wird die Zeitverzögerung vom Master zum Slave â t-ms â berechnet.
Bei der Ăbertragung der Nachrichten Delay_Req und Delay_Resp wird die Zeitverzögerung vom Slave zum Master â t-sm â berechnet.
Wenn zwischen diesen beiden Werten eine Asymmetrie auftritt, entsteht ein Fehler bei der Korrektur des exakten Zeitabgleichs. Der Fehler rĂŒhrt daher, dass die berechnete Verzögerung der Durchschnitt der Verzögerungen t-ms und t-sm ist. Wenn die Verzögerungen ungleich sind, werden wir die Zeit ungenau korrigieren.
Korrektur des exakten Zeitabgleichs
Nachdem die Verzögerung zwischen den Master- und Slave-Uhren bekannt ist, fĂŒhren die Slave-Uhren die Zeitkorrektur durch.

Die Slave-Uhren verwenden die Sync-Nachricht und die optionale Follow_Up-Nachricht, um den exakten Zeitversatz bei der Ăbertragung des Paketes von den Master-Uhren zu den Slave-Uhren zu berechnen. Der Versatz wird nach folgender Formel berechnet:

Mechanismus zur Messung der Verzögerung des benachbarten Knotens (Peer Delay Measurement Mechanism)
Dieser Mechanismus verwendet ebenfalls zwei Schritte zur Synchronisierung:
- Die GerĂ€te messen die Zeitverzögerung zu allen Nachbarn ĂŒber alle Ports. Zu diesem Zweck verwenden sie den Peer Delay Mechanismus.
- Korrektur des exakten Zeitversatzes.
Messung der Verzögerung zwischen GerĂ€ten, die den Peer-to-Peer-Modus unterstĂŒtzen
Die Verzögerung zwischen den Ports, die den Peer-to-Peer-Mechanismus unterstĂŒtzen, wird durch folgende Nachrichten gemessen:

Wenn dem Port 1 die Zeiten t1, t2, t3 und t4 bekannt sind, kann er die durchschnittliche Verzögerung (tmld) berechnen. Diese wird nach folgender Formel berechnet:

AnschlieĂend verwendet der Port diesen Wert zur Berechnung des Anpassungsfeldes fĂŒr jede Sync-Nachricht oder optionale Follow_Up-Nachricht, die durch dieses GerĂ€t geleitet wird.
Die Gesamtdelaysumme ergibt sich aus der Verzögerung bei der Ăbertragung durch dieses GerĂ€t, der durchschnittlichen Verzögerung bei der Ăbertragung ĂŒber den Datenkanal und der bereits in dieser Nachricht enthaltenen Verzögerung, die auf ĂŒbergeordneten GerĂ€ten abgeschaltet wurde.
Die Nachrichten Pdelay_Req, Pdelay_Resp und das optionale Pdelay_Resp_Follow_Up ermöglichen es, die Verzögerung vom Master zum Slave und vom Slave zum Master (kreisförmig) zu erhalten.
Jede Asymmetrie zwischen diesen beiden Werten fĂŒhrt zu einer Korrekturfehler des genauen Zeitversatzes.
Korrektur des genauen Zeitversatzes

Die Slave-Uhren verwenden das Sync-Nachricht und die optionale Follow_Up-Nachricht zur Berechnung des genauen Zeitversatzes bei der Ăbertragung des Pakets von den Master-Uhren zu den Slave-Uhren. Der Versatz wird nach folgender Formel berechnet:
![]()
Ein Vorteil des Peer-to-Peer-Korrekturmechanismus besteht darin, dass die Verzögerung jeder Sync- oder Follow_Up-Nachricht wĂ€hrend der Ăbertragung im Netzwerk berechnet wird. Daher hat eine Ănderung des Ăbertragungsweges keine Auswirkungen auf die Genauigkeit der Korrektur.
Bei der Verwendung dieses Mechanismus benötigt die Zeit Synchronisation keine Berechnung der Verzögerung des ĂŒber das Synchronisationspaket zurĂŒckgelegten Weges, wie dies beim Basis-Austausch der Fall ist. Das heiĂt, die Nachrichten Delay_Req und Delay_Resp werden nicht gesendet. In dieser Methode wird die Verzögerung zwischen den Master- und Slave-Uhren einfach im Korrekturfeld jeder Sync- oder Follow_Up-Nachricht summiert.
Ein weiterer Vorteil ist, dass die Master-Uhren von der Notwendigkeit entlastet werden, die Nachrichten Delay_Req zu verarbeiten.
Betriebsmodi transparenter Uhren
Entsprechend wurden einfache Beispiele analysiert. Nehmen wir nun an, dass Switches auf dem Synchronisationsweg auftauchen.
Wenn Switches ohne PTPv2-UnterstĂŒtzung verwendet werden, wird das Synchronisationspaket im Switch um etwa 10 ”s verzögert.
Switches mit PTPv2-UnterstĂŒtzung werden in der Terminologie der IEEE 1588v2 als transparente Uhren (Transparent clock) bezeichnet. Transparente Uhren synchronisieren sich nicht mit den Master-Uhren und nehmen nicht an der Hierarchie âMaster-Uhr â Slave-Uhrâ teil, speichern aber bei der Ăbertragung von Synchronisationsnachrichten, wie lange die Nachricht dort verzögert wurde. Dies ermöglicht die Korrektur der Zeitverzögerung.
Transparente Uhren können in zwei Modi arbeiten:
- End-to-End.
- Peer-to-Peer.
End-to-End (E2E)

E2E-transparente Uhren ĂŒbertragen Sync-Nachrichten und zugehörige Follow_Up-Nachrichten an alle Ports. Selbst an die, die durch bestimmte Protokolle (z.B. RSTP) blockiert sind.
Der Switch speichert den Zeitstempel, wann das Sync-Paket (Follow_Up) am Port empfangen und wann es vom Port gesendet wurde. Basierend auf diesen beiden Zeitstempeln wird die Verarbeitungszeit der Nachrichten im Switch berechnet. In den Standards wird diese Zeit als Aufenthaltszeit bezeichnet.
Die Verarbeitungszeit wird im Feld correctionField der Sync-Nachricht (ein Schritt Uhren) oder Follow_Up (zwei Schritt Uhren) hinzugefĂŒgt.

Transparente E2E-Uhren messen die Verarbeitungszeit fĂŒr Sync- und Delay_Req-Nachrichten, die durch den Switch wandern. Dabei ist es wichtig zu verstehen, dass die Verzögerungszeit zwischen den Master- und den Slave-Uhren mittels eines Frage-Antwort-Verzögerungsmechanismus berechnet wird. Wenn sich die Master-Uhren Ă€ndern oder der Weg von den Master-Uhren zu den Slave-Uhren wechselt, wird die Verzögerung neu gemessen. Dies erhöht die Ăbergangszeit im Falle von Ănderungen im Netzwerk.

Transparente P2P-Uhren messen neben der Verarbeitungszeit der Nachricht durch den Switch auch die Verzögerung im Ăbertragungsweg zum nĂ€chsten Nachbarn, mithilfe des Mechanismus zur Messung der Nachbarverzögerung.
Die Verzögerung wird in beide Richtungen an jedem Kanal gemessen, auch an KanÀlen, die durch ein Protokoll blockiert sind (z. B. RSTP). Dadurch kann sofort die neue Verzögerung auf dem Synchronisationsweg berechnet werden, wenn sich die Master-Uhren oder die Netzwerktopologie geÀndert haben.
Die Verarbeitungszeiten der Nachrichten durch die Switches und die Verzögerungszeiten werden bei der Ăbertragung von Sync- oder Follow_Up-Nachrichten akkumuliert.
UnterstĂŒtzungstypen von PTPv2 durch Switches
Switches können PTPv2 unterstĂŒtzen:
- softwareseitig;
- hardwareseitig.
Bei der softwareseitigen Implementierung des PTPv2-Protokolls fragt der Switch den Zeitstempel von der Firmware an. Das Problem dabei ist, dass die Firmware zyklisch arbeitet, sodass man warten muss, bis sie den aktuellen Zyklus abgeschlossen hat, die Anfrage bearbeitet und im nĂ€chsten Zyklus den Zeitstempel ausgibt. Auch dies benötigt Zeit, sodass eine Verzögerung entsteht, die jedoch nicht so erheblich ist wie ohne die softwareseitige PTPv2-UnterstĂŒtzung.
Die erforderliche Genauigkeit kann nur durch hardwareseitige UnterstĂŒtzung von PTPv2 gewĂ€hrleistet werden. In diesem Fall erfolgt die Ausgabe des Zeitstempels durch einen speziellen ASIC, der am Port installiert ist.
Nachrichtenformat
Alle PTP-Nachrichten bestehen aus den folgenden Feldern:
- Header â 34 Bytes.
- Body â GröĂe variiert je nach Nachrichtentyp.
- Suffix â optional.

Header
Das Header-Feld ist fĂŒr alle PTP-Nachrichten gleich. Seine GröĂe betrĂ€gt 34 Bytes.
Format des Header-Feldes:

messageType â enthĂ€lt den Typ der ĂŒbermittelten Nachricht, z. B. Sync, Delay_Req, PDelay_Req usw.
messageLength â enthĂ€lt die GesamtgröĂe der PTP-Nachricht, einschlieĂlich Header, Body und Suffix (aber ohne AuffĂŒllbytes).
domainNumber â bestimmt, zu welchem Domain PTP die Nachricht gehört.
DomĂ€ne â ist eine Gruppe von verschiedenen Uhren, die zu einer logischen Gruppe zusammengefasst sind und von einer Masteruhr synchronisiert werden, aber nicht unbedingt mit Uhren synchronisiert sind, die zu einer anderen DomĂ€ne gehören.
flags â dieses Feld enthĂ€lt verschiedene Flags zur Identifikation des Status der Nachricht.
correctionField â enthĂ€lt die Verzögerungszeit in Nanosekunden. Die Verzögerung umfasst die Ăbertragungsverzögerung durch transparente Uhren sowie die Verzögerung bei der Ăbertragung durch den Kanal im Peer-to-Peer-Modus.
sourcePortIdentity â dieses Feld enthĂ€lt Informationen darĂŒber, von welchem Port diese Nachricht ursprĂŒnglich gesendet wurde.
sequenceID â enthĂ€lt die Identifikationsnummer fĂŒr individuelle Nachrichten.
controlField â Feld-Aktualisierung =) Es stammt aus der ersten Version des Standards und enthĂ€lt Informationen ĂŒber den Typ dieser Nachricht. Im Wesentlichen dasselbe wie messageType, aber mit weniger Optionen.
logMessageInterval â dieses Feld wird durch den Nachrichtentyp bestimmt.
Body
Wie oben besprochen, gibt es mehrere Nachrichtentypen. Diese Typen sind unten beschrieben:
AnkĂŒndigungsnachricht
Die AnkĂŒndigungsnachricht wird verwendet, um anderen Uhren innerhalb einer DomĂ€ne von ihren Parametern zu "erzĂ€hlen". Diese Nachricht ermöglicht die Festlegung einer Hierarchie von "Masteruhren â Slaveuhren."

Synchronisationsnachricht
Die Synchronisationsnachricht (Sync) wird von Masteruhren gesendet und enthĂ€lt die Zeit der Masteruhr zu dem Zeitpunkt, als die Sync-Nachricht erstellt wurde. Wenn die Masteruhren zweistufig sind, wird der Zeitstempel in der Sync-Nachricht auf 0 gesetzt, und der aktuelle Zeitstempel wird in der zugehörigen Follow_Up-Nachricht gesendet. Die Sync-Nachricht wird fĂŒr beide Mechanismen zur Messung der Verzögerung verwendet.
Die Nachricht wird ĂŒber Multicast ĂŒbertragen. Optional kann Unicast verwendet werden.

Delay_Req-Nachricht
Das Format der Delay_Req-Nachricht ist identisch mit der Sync-Nachricht. Die Slaveuhren senden Delay_Req. Es enthĂ€lt die Zeit, zu der Delay_Req von den Slaveuhren gesendet wurde. Diese Nachricht wird nur fĂŒr den Anfrage-Antwort-Mechanismus zur Verzögerung verwendet.
Die Nachricht wird ĂŒber Multicast ĂŒbertragen. Optional kann Unicast verwendet werden.

Nachricht Follow_Up
Die Nachricht Follow_Up wird optional von den fĂŒhrenden Uhren gesendet und enthĂ€lt die Zeit der Sendung Nachricht Sync meister. Die Nachricht Follow_Up wird nur von zweistufigen fĂŒhrenden Uhren gesendet.
Die Nachricht Follow_Up wird fĂŒr beide Mechanismen zur Messung der Verzögerung verwendet.
Die Nachricht wird ĂŒber Multicast ĂŒbertragen. Optional kann Unicast verwendet werden.

Nachricht Delay_Resp
Die Nachricht Delay_Resp wird von den fĂŒhrenden Uhren gesendet. Sie enthĂ€lt die Empfangszeit von Delay_Req durch die fĂŒhrenden Uhren. Diese Nachricht wird nur fĂŒr den Mechanismus der Anfrage-Antwort-Verzögerung verwendet.
Die Nachricht wird ĂŒber Multicast ĂŒbertragen. Optional kann Unicast verwendet werden.

Nachricht Pdelay_Req
Die Nachricht Pdelay_Req wird von dem GerĂ€t gesendet, das die Verzögerung anfordert. Sie enthĂ€lt die Sendezeit der Nachricht von diesem GerĂ€t. Pdelay_Req wird nur fĂŒr den Mechanismus der Verzögerungsmessung des benachbarten Knotens verwendet.

Nachricht Pdelay_Resp
Die Nachricht Pdelay_Resp wird von dem GerĂ€t gesendet, das die Anfrage zur Verzögerung erhalten hat. Sie enthĂ€lt die Empfangszeit der Nachricht Pdelay_Req durch dieses GerĂ€t. Die Nachrichten Pdelay_Resp werden nur fĂŒr den Mechanismus zur Verzögerungsmessung des benachbarten Knotens verwendet.

Nachricht Pdelay_Resp_Follow_Up
Die Nachricht Pdelay_Resp_Follow_Up wird optional von dem GerĂ€t gesendet, das die Anfrage zur Verzögerung erhalten hat. Sie enthĂ€lt die Empfangszeit der Nachricht Pdelay_Req durch dieses GerĂ€t. Die Nachricht Pdelay_Resp_Follow_Up wird nur von zweistufigen fĂŒhrenden Uhren gesendet.
Diese Nachricht kann auch fĂŒr die AusfĂŒhrungszeit anstelle des Zeitstempels verwendet werden. Die AusfĂŒhrungszeit ist die Zeit vom Empfang von Pdelay-Req bis zum Senden von Pdelay_Resp.
Pdelay_Resp_Follow_Up werden nur fĂŒr den Mechanismus zur Verzögerungsmessung des benachbarten Knotens verwendet.

Verwaltungsnachrichten (Nachricht Management)
Die Verwaltungsnachrichten PTP sind notwendig, um Informationen zwischen einer oder mehreren Uhren und dem Steuerknoten zu ĂŒbertragen.

Ăbertragung in der LAN
PTP-Nachrichten können auf zwei Ebenen ĂŒbertragen werden:
- Netzwerkebene â als Teil der IP-Daten.
- Schnittstellebene â als Teil des Ethernet-Frames.
Ăbertragung von PTP-Nachrichten ĂŒber UDP ĂŒber IP ĂŒber Ethernet

PTP ĂŒber UDP ĂŒber Ethernet

Profile
PTP hat eine Reihe von "flexiblen" Parametern, die konfiguriert werden mĂŒssen. Zum Beispiel:
- BMCA-Optionen.
- Mechanismus zur Verzögerungsmessung.
- Intervalle und Anfangswerte aller konfigurierbaren Parameter usw.
Und obwohl wir zuvor gesagt haben, dass PTPv2-GerĂ€te untereinander kompatibel sind, ist das nicht unbedingt korrekt. Die GerĂ€te mĂŒssen die gleichen Einstellungen haben, um zu interagieren.
Daher gibt es die sogenannten PTPv2-Profile. Profile sind Gruppen von konfigurierten Einstellungen und bestimmten ProtokollbeschrĂ€nkungen, um die Zeitsynchronisation fĂŒr eine bestimmte Anwendung zu ermöglichen.
Der Standard IEEE 1588v2 beschreibt nur ein Profil â das âDefault Profileâ. Alle anderen Profile wurden von verschiedenen Organisationen und Vereinigungen erstellt und beschrieben.
Zum Beispiel wurde das Profil fĂŒr die Elektroenergie oder das PTPv2 Power Profile vom Power Systems Relaying Committee und dem Substation Committee der IEEE Power and Energy Society erstellt. Das Profil trĂ€gt den Namen IEEE C37.238-2011.
Das Profil beschreibt, dass PTP ĂŒbertragen werden kann:
- Nur ĂŒber L2-Netzwerke (d.h. Ethernet, HSR, PRP, kein IP).
- Die Nachrichten werden nur durch Multicast gesendet.
- Als Mechanismus zur Messung der Verzögerung wird der Peer Delay Measurement Mechanism verwendet.
Der StandarddomÀne ist 0, die empfohlene DomÀne ist 93.
Das Konzept von C37.238-2011 beruhte auf dem Wunsch, die Anzahl der optionalen Merkmale zu reduzieren und nur die notwendigen Funktionen fĂŒr eine zuverlĂ€ssige Interaktion zwischen GerĂ€ten und zur Erhöhung der SystemstabilitĂ€t beizubehalten.
AuĂerdem wurde die Frequenz der NachrichtenĂŒbertragung definiert:

Im Wesentlichen steht nur ein Parameter zur Auswahl â der Typ der Master-Uhr (einfach oder doppelt).
Die Genauigkeit darf nicht mehr als 1 ÎŒs betragen. Mit anderen Worten, in einem Synchronisationspfad können maximal 15 transparente Uhren oder drei Grenzuhren enthalten sein.

Quelle: habr.com
