Der IEEE-1588-Standard

Uhrenvergleich im Netzwerk

27. April 2017, 10:04 Uhr | von Peter Plazotta und Dominik Richstein
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Clocks im IEEE 1588-Standard

Der Standard IEEE 1588-2008 enthält verschiedene Aspekte der Synchronisation und ihrer Umgebung. Zuerst werden die Geräte in den Netzwerken betrachtet (PTP-Domänen) und deren Anordnung (Bild 1). Alle Geräte und Knoten in einer PTP-Domäne, die eine PTP Funktionalität enthalten, werden als Clocks bezeichnet und können in vier verschiedenen Varianten auftreten:

  • Eine Ordinary Clock ist eine einfache Uhr (ein Port, meist ein Client), die als Slave mit einem Master verbunden ist und ihre Zeit an diesen angleicht.

 

chematischer Aufbau eines PTP-Netzwerks mit den verschiedenen Clock-Varianten
Bild 1. Schematischer Aufbau eines PTP-Netzwerks mit den verschiedenen Clock-Varianten.
© TU Ingolstadt, Dominik Richstein
  • Eine Boundary Clock ist eine Uhr, die mehrere Ordinary Clocks enthält (mehrere Ports) und die als Master mehrere Slaves mit ihrer Zeit synchronisieren kann. Die Boundary Clock kann aber auch als Slave mit einem Master verbunden sein und ihre Zeit an diesen angleichen.
  • Eine Transparent Clock ist eine Uhr, die nicht aktiv in die Zeitsynchronisation eingreift. Sie ist mehr eine Hardware, die die Zeitsynchronisations-Datenpakete vermittelt, typischerweise ein Network Switch. Transparent Clocks korrigieren die Zeitstempel innerhalb der Datenpakete, um die Verweildauer innerhalb der Hardware auszugleichen.
  • Die Grandmaster Clock ist eine Uhr, die normalerweise Zugang zu GPS oder einer anderen sehr genauen Zeit hat und diese sehr genaue Zeit für alle untergeordneten Knoten bereitstellt.

Innerhalb des PTP-Netzwerkes kann jede Clock (Port) entweder als Master oder Slave agieren. Innerhalb einer PTP-Domäne kann es aber immer nur einen Master geben. Der Master verteilt aktiv seine Zeit an die Slaves. Er ist somit für die Synchronisation der Slaves in seiner PTP-Domäne zuständig. Ein Slave ist ein passives Element innerhalb von PTP, der auf die Zeitsynchronisations-Anfragen des Master antwortet. Die Entscheidung, ob die Clock als Master oder Slave arbeiten muss, wird beim Betreten des PTP-Netzwerks getroffen. Hierzu wurde der „Best Master Clock“-Algorithmus im IEEE 1588-Standard definiert. Dieser Algorithmus regelt, dass die Clock mit der besten Genauigkeit die Rolle des Master übernimmt.

Innerhalb des PTP-Netzwerkes kann jede Clock (Port) entweder als Master oder Slave agieren. Innerhalb einer PTP-Domäne kann es aber immer nur einen Master geben. Der Master verteilt aktiv seine Zeit an die Slaves. Er ist somit für die Synchronisation der Slaves in seiner PTP-Domäne zuständig. Ein Slave ist ein passives Element innerhalb von PTP, der auf die Zeitsynchronisations-Anfragen des Master antwortet. Die Entscheidung, ob die Clock als Master oder Slave arbeiten muss, wird beim Betreten des PTP-Netzwerks getroffen. Hierzu wurde der „Best Master Clock“-Algorithmus im IEEE 1588-Standard definiert. Dieser Algorithmus regelt, dass die Clock mit der besten Genauigkeit die Rolle des Master übernimmt.

Eine Transparent Clock ist eine Uhr, die nicht aktiv in die Zeitsynchronisation eingreift. Sie ist mehr eine Hardware, die die Zeitsynchronisations-Datenpakete vermittelt, typischerweise ein Network Switch. Transparent Clocks korrigieren die Zeitstempel innerhalb der Datenpakete, um die Verweildauer innerhalb der Hardware auszugleichen.

Schematischer Ablauf der Nachrichten zur Zeitsynchronisation bei der PTP-Kommunikation
Bild 2. Schematischer Ablauf der Nachrichten zur Zeitsynchronisation bei der PTP-Kommunikation.
© IEEE

Synchronisation von Master & Slave

Die Synchronisation der Uhrzeit zwischen Master und Slave wird über sogenannte „Event Messages“ durchgeführt. Diese Messages werden über das User Datagram Protocol (UDP) vom Master verteilt und von Slaves beantwortet. Es existieren zwei verschiedene Verfahren für die Synchronisierung, die „One Step“-Synchronisierung und die „Two Step“-Methode. Der Unterschied der beiden Methoden liegt in der Anzahl der Nachrichten, die ausgetauscht werden müssen. Die Two-Step-Methode verschickt vier Nachrichten, um einen Synchronisationsschritt durchzuführen. Dagegen braucht die One-Step-Methode nur drei Nachrichten, was aber nur mit äußerst guter Hardware-Unterstützung möglich ist und somit nicht in jeder PTP-Domäne gegeben ist.

Damit ein Slave die Synchronisierung durchführen kann, sind lediglich vier Zeitstempel (t1, t2, t3, t4) nötig. Die Zeitstempel werden jeweils beim Senden oder Empfangen bestimmter Nachrichten generiert (Bild 2). Der Slave erhält diese vier Zeitstempel durch den Austausch der folgenden Messages:

  • Sync Message: Der Master ermöglicht damit den Slaves, eine Synchronisierung zu beginnen. In der eben genannten One-Step-Methode ist in dieser Nachricht der Zeitstempel t1 enthalten.
  • Follow_Up Message: Diese Nachricht ist analog zur Sync-Nachricht zu sehen, wobei damit nun der Zeitstempel t1 verschickt wird, falls die Two-Step-Methode angewendet wird.
  • Delay_Req Message: Der Slave antwortet hiermit auf eine Sync- oder Follow_Up-Nachricht und erfragt damit beim Master einen weiteren Timestamp.
  • Delay_Resp Message: Der Master schickt mit dieser Nachricht den letzten Zeitstempel t4 an den Slave zurück.

Bild 2 zeigt den genauen Ablauf der PTP-Kommunikation und den damit verbundenen Austausch der benötigten Zeitstempel. Die Erfassung der Zeitstempel t1 und t4 geschieht auf der Seite des Master und wird mit den Nachrichten an die Slaves gesendet. Damit dieser Knoten zum Schluss seine vier Zeitstempel besitzt, werden t2 und t3 Slave-seitig beim Empfang der Master-Nachrichten erstellt.

Formel
Formel
© TU Ingolstadt, Dominik Richstein

Mit Hilfe der Zeiten t1, t2, t3 und t4 kann nach dem Austausch der Nachrichten das „meanPathDelay“ berechnet werden. Das „meanPathDelay“ gibt an, wie lange eine Message für die Übertragung im Netzwerk gebraucht hat, also die Verzögerung. Wie an der Formel zu sehen ist, geht IEEE 1588 davon aus, dass die Latenzzeit im Netzwerk für Senden und Empfangen identisch ist: Somit dient das meanPathDelay zur Laufzeitkorrektur im Netzwerk für die Berechnung des eigenen Zeit-Offset.


  1. Uhrenvergleich im Netzwerk
  2. Clocks im IEEE 1588-Standard
  3. IEEE 1588 in Netzwerkchips

Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!