Wie man ein kostengünstiges, aber zuverlässiges System mit einheitlicher Zeit im Unternehmen erstellt

Heutzutage kann nicht jeder Spezialist einen genauen Zeitserver als technisch komplexes Gerät klassifizieren. Im Internet gibt es viele Artikel darüber, wie Sie Ihren eigenen Hardware-NTP-Server erstellen können. Dennoch können Lösungen, die in industriellen Anwendungen verwendet werden und von globalen Herstellern angeboten werden, kaum als budgetär bezeichnet werden. Ist es möglich, diese Kosten zu optimieren, ohne die Qualität und Zuverlässigkeit des Präzisionszeit-Subsystems im Unternehmen zu beeinträchtigen?



Wofür ist die genaue Zeit?



Von den Funktionen, die der Zeitserver ausführen kann, können wir die korrekte Bildung der Chronologie von Ereignissen in Steuerungssystemen für



die Verwaltung der entsprechenden Protokolle, Protokolle, Archivierungsinformationen, Gebäudetrends, Grafiken usw. benennen . In Videoüberwachungssystemen bietet der Zeitserver eine Verknüpfung der erfassten Videoaufzeichnungen mit der astronomischen Zeit. Außerdem können Sie mit dem Gerät Informationen aus verschiedenen Informationssystemen im Unternehmen genau vergleichen. Dies können beispielsweise Videoüberwachungssysteme und Sicherheitssysteme wie ACS, Relaisschutzsysteme und unabhängige Telemechaniksysteme usw. sein.



Eine Reihe von Protokollen zum Informationsaustausch verwenden Zeitstempel direkt als Teil übertragener Datenpakete. Diese Protokolle umfassen IEC-101/104, das in modernen Telemechaniksystemen verwendet wird.



Eine der wichtigen Anforderungen für eine Reihe industrieller Anwendungen sind Anforderungen an die Informationssicherheit, die den Internetzugang ausschließen, um die Zeitsynchronisationsfunktion auszuführen.



Aufgrund seiner Einfachheit und einer Reihe historischer Gründe für die Lösung des Problems der Zeitsynchronisation ist NTP das am weitesten verbreitete Protokoll. Neben Servern, Archiv- und Bedienstationen von Steuerungssystemen, Steuerungen und HMI-Panels können Netzwerkgeräte von Kommunikationssystemen (verwaltete Switches, Router usw.) als NTP-Clients in einem Unternehmen fungieren.



NTP-Protokoll



Das Network Time Protocol (NTP) ist ein Netzwerkprotokoll zum Synchronisieren von Uhren in Computersystemen über paketvermittelte Datennetze mit variabler Verzögerung (Latenz). Die hohe Beliebtheit des Protokolls ist auf die aktive Entwicklung von Ethernet-basierten Systemen zurückzuführen. Einer der Hauptvorteile des Protokolls ist die Fähigkeit, Zeitstempel direkt über das Datennetz zu übertragen, wodurch die Notwendigkeit eines separaten Zeitbusses wie in 1PPS- oder IRIG-B-Systemen entfällt. Das Protokoll wurde 1985 entwickelt und ist eines der ältesten heute verwendeten Internetprotokolle.



NTP bietet für die meisten Anwendungen eine akzeptable Timing-Genauigkeit. Das Protokoll kann die Zeit mit einer Genauigkeit von mehreren zehn Millisekunden im Internet und bis zu 0,2 ms in lokalen Netzwerken unter idealen Bedingungen unterstützen. Asymmetrische Datenpfade und Netzwerküberlastungen können zu Fehlern von 100 ms oder mehr führen.



NTP synchronisiert Geräte mit der koordinierten Weltzeit (UTC). In diesem Fall berücksichtigt das Protokoll das Auftreten einer Schaltsekunde infolge der ungleichmäßigen Erdrotation, überträgt jedoch keine Informationen über lokale Zeitzonen oder Sommerzeit.



Systemstruktur



NTP verwendet ein hierarchisches System genauer Zeitquellen. Jede Hierarchieebene wird als Schicht (Schicht, Schicht) bezeichnet und erhält eine Nummer ab 0 für die Referenzuhr oben in der Hierarchie. Der Zeitserver auf der N-Ebene wird von den Servern auf der N-1-Ebene synchronisiert. Die Zahl N stellt die Entfernung von der Referenzuhr dar und wird verwendet, um ein Radfahren während der Synchronisation zu verhindern. Stratum ist nicht immer ein Maß für Qualität oder Zuverlässigkeit. Beispielsweise können Sie auf Schicht 3 Zeitquellen finden, die von höherer Qualität sind als Zeitquellen auf Schicht 2.



Schicht 0



Die Referenzuhr auf dem Stratum 0 sind Satellitennavigationssysteme (GLONASS, GPS usw.), Atomuhren oder Funksender. Einmal pro Sekunde erzeugen sie ein Impulssignal (1PPS), das einen Interrupt auslöst und einen Zeitstempel auf den angeschlossenen Geräten erzeugt. Layer 0-Geräte werden auch als Referenzuhren bezeichnet. NTP-Server können sich im System nicht als Stratum 0 positionieren. Wenn das Stratum-Feld in einem Datenpaket auf 0 gesetzt ist, weist dies auf eine undefinierte Schicht hin.





Die logische Struktur des Synchronisationssystems basierend auf NTP



Stratum 1



Diese Schicht enthält Geräte, deren Systemzeit innerhalb weniger Mikrosekunden vom Referenztakt synchronisiert ist. Zeitserver auf dieser Ebene können im Peer-to-Peer-Modus mit anderen Stratum 1-Servern zusammenarbeiten, um Redundanz und Genauigkeit zu überprüfen. Sie werden auch als primäre Zeitserver bezeichnet.



Stratum 2



Dies sind Geräte, die über das Netzwerk von Tier 1-Servern synchronisiert werden. Häufig werden Tier 2-Geräte von mehreren Tier 1-Servern abgefragt. Stratum 2-Computer können auch Peer-to-Peer mit anderen Stratum 2-Computern sein, um eine stabilere und zuverlässigere Zeit für alle Geräte in einer Peer-Gruppe bereitzustellen. Knoten.



Die maximale theoretische Anzahl von Schichten beträgt 15; Stratum 16 wird verwendet, um anzuzeigen, dass das Gerät nicht synchron ist. NTP-Mechanismen auf jedem Gerät im System interagieren, um für alle Clients den kürzesten Pfad zu den Stratum 1-Servern zu erstellen. Dies minimiert die akkumulierte Latenz bei der Datenübertragung und verbessert die Zeitgenauigkeit. Der Algorithmus zum Erstellen eines Spanning Tree mit einer minimalen Pfadlänge basiert auf dem Bellman-Ford-Algorithmus.



Zeitstempel



NTP verwendete ursprünglich 64-Bit-Zeitstempel, die aus einem 32-Bit-Teil für Sekunden und einem 32-Bit-Teil für Sekundenbruchteile bestanden. Dies ergab eine Zeitleiste, die alle 32 Sekunden (136 Jahre) gescrollt wurde und eine theoretische Auflösung von 2 bis 32 Sekunden ergab (233 Pikosekunden). Der Countdown begann am 1. Januar 1900, sodass die erste Epoche am 7. Februar 2036 enden würde.



Die neueste Version des NTPv4-Protokolls führt ein 128-Bit-Zeitformat ein: 64 Bit für Sekunden und 64 Bit für Sekundenbruchteile, was eine Zeitleiste von über 584 Milliarden Jahren und eine Auflösung von 0,05 Attosekunden ergibt. Zusätzlich wurde ein 32-Bit-Ära-Nummernfeld eingeführt, das sogar das theoretische Problem des Endes jeder Ära beseitigte.



Taktsynchronisationsalgorithmus



Der NTP-Client fragt regelmäßig einen oder mehrere Server ab. Dabei werden der Zeitversatz und die Umlaufverzögerung berechnet. Der Zeitversatz θ ist die Differenz der absoluten Zeit zwischen den Server- und Client-Uhren und wird durch die Formel bestimmt:







Umlaufverzögerungen δ sind definiert als die Zeit, zu der das Signal über die Kommunikationsleitungen vom Client zum Server und zurück übertragen wird. Dies ist die Zeit, die zum Senden des Signals benötigt wird, plus die Zeit, die erforderlich ist, um zu bestätigen, dass ein Signal empfangen wurde durch:







wobei t 0 - Zeitclient zum Senden eines Anforderungspakets markieren,

t 1 - Zeitstempel, der das Serveranforderungspaket empfängt,

t 2 - eine Etikettenserverzeit für Übertragung eines Antwortpakets,

t 3- Zeitstempel des Clients, der das Antwortpaket empfängt.





Algorithmus zur Berechnung des Zeitversatzes und der Umlaufverzögerung



Die berechneten Werte von θ und δ werden durch Filter geleitet und einer statistischen Analyse unterzogen. Ausreißer aus der Gesamtstichprobe werden verworfen und die zeitliche Abweichung wird basierend auf den verbleibenden Werten geschätzt. In Kenntnis des Zeitversatzes und der Umlaufverzögerung passt der Client seine eigene Zeit an, um θ gleich Null zu erreichen.



Eine genaue Synchronisation wird erreicht, wenn die eingehenden und ausgehenden Routen zwischen dem Client und dem Server symmetrisch sind, dh dieselbe Latenz haben. Wenn die Routen asymmetrisch sind, gibt es eine systematische Abweichung von der Hälfte der Differenz zwischen der Zeit, zu der ein Paket vom Client zum Server und zurück gesendet wird.



Übertragungsmechanismen



In den meisten Fällen verwendet das NTP-Protokoll das klassische Client-Server-Betriebsmodell, bei dem der Client eine Anforderung sendet und nach einer Weile eine Antwort vom Server empfängt. Das Protokoll ermöglicht jedoch einen Peer-to-Peer-Betrieb, bei dem sich zwei Peers als potenzielle Zeitquelle sehen. Diese Betriebsart wird auch als symmetrisch bezeichnet. Für die Netzwerkkommunikation verwendet NTP das UDP-Protokoll, das standardmäßig an Port 123 arbeitet. Für die Datenübertragung können verschiedene Mechanismen verwendet werden - Unicast, Broadcast, Multicast und Manycast.



Unicast-Modus



NTP verwendet am häufigsten den Unicast-Modus für die Datenübertragung. In diesem Modus werden Daten einzeln von einem Netzwerkgerät auf ein anderes übertragen. Unicast-Pakete verwenden die spezifische Adresse des Geräts, für das das Paket als Ziel-IP-Adresse bestimmt ist.



Broadcast-



Modus Dieser Modus ist praktisch, wenn eine kleine Anzahl von NTP-Servern eine große Anzahl von Clients bedient. In diesem Modus sendet der Server regelmäßig Pakete unter Verwendung der Broadcast-Subnetzadresse. Ein Client, der für die Synchronisierung auf diese Weise konfiguriert ist, empfängt das Broadcast-Paket des Servers und synchronisiert sich mit diesem.



Dieser Modus verfügt über eine Reihe von Funktionen. Erstens bietet der Broadcast-Modus eine geringere Timing-Genauigkeit als Unicast. Zweitens können Broadcast-Pakete nur innerhalb desselben Subnetzes übertragen werden. Darüber hinaus ist es ratsam, Authentifizierungsmethoden zum Schutz vor Eindringlingen zu verwenden.



Multicast-Modus Der Multicast-



Modus funktioniert genauso wie Broadcast. Der Unterschied besteht darin, dass die Multicast-Gruppenadresse für die Paketzustellung verwendet wird, nicht die Broadcast-Subnetzadresse. Clients und Servern wird eine Multicast-IP-Adresse zugewiesen, die sie für die Zeitsynchronisation verwenden. Auf diese Weise können Gruppen von Computern in verschiedenen Subnetzen synchronisiert werden, sofern die sie verbindenden Router IGMP unterstützen und für die Übertragung von Multicast-Verkehr konfiguriert sind.



Manycast-Modus



Dieser Modus ist neu in der neuesten Version (v4) des NTP-Protokolls. Der Manycast-Modus fungiert nur bei unbekannten IP-Adressen von NTP-Servern als Multicast-Modus. Durch das Senden von Multicast-Nachrichten durchsucht der Client das Manycast-Servernetzwerk, empfängt Zeitmuster von jedem von ihnen und wählt die drei "besten" Server aus, mit denen er synchronisiert werden soll. Bei einem Ausfall eines der Server aktualisiert der Client automatisch seine Liste.



Clients und Server, die im Manycast-Modus arbeiten, verwenden auch Multicast-Gruppenadressen, um Zeitproben zu übertragen. Clients und Server, die dieselbe Adresse verwenden, bilden eine Zuordnung. Die Anzahl der Zuordnungen wird durch die Anzahl der verwendeten Multicast-Adressen bestimmt.



Protokollversionen



Seit seinem Erscheinen im Jahr 1985 begann sich das Protokoll aktiv zu entwickeln und hatte bis 1992 vier Versionen geändert (von NTPv0 auf NTPv3). Jede neue Version fügte Funktionen hinzu und optimierte ihre Arbeit, ließ jedoch das Datenformat unverändert und hielt die verschiedenen Versionen miteinander kompatibel. Die letzte vierte Version des Protokolls ist mit 2010 datiert. NTP entwickelt sich bis heute weiter. Derzeit wird daran gearbeitet, eine Lösung zu entwickeln, die dem genaueren PTP (Precision Time Protocol) technisch ähnlich ist.



SNTP



Gleichzeitig mit NTPv3 wurde 1992 eine einfachere Version des Protokolls eingeführt - SNTP (Simple NTP). SNTP verwendet dasselbe Übertragungs- und Präsentationsformat wie NTP. Gleichzeitig betrifft SNTP nicht die Algorithmen des Servers, sondern vereinfacht die Algorithmen der Clients. Aus diesem Grund wird das Protokoll am häufigsten in eingebetteten Systemen und Geräten verwendet, die keine hohe Genauigkeit erfordern.



Der Unterschied zwischen NTP und SNTP liegt in den Methoden zur Bestimmung der optimalen Server für die Synchronisation und der Methode zur Zeitkorrektur. Mit NTP kann der Client den mathematischen Schnittalgorithmus (eine überarbeitete Version des Marzullo-Algorithmus) verwenden, um mehrere der besten Server im Netzwerk auszuwählen und ihre Zeit reibungslos anzupassen. SNTP verwendet einen vordefinierten NTP-Server für die Synchronisation, während andere nur bei Verlust der Kommunikation mit dem Hauptgerät Backups sein können. In diesem Fall kann ein Client, der SNTP verwendet, die Zeit nur in einem Sprung anpassen, nachdem er eine Antwort vom Server erhalten hat.



Typisches Diagramm des Synchronisationssystems und seiner Nachteile



Traditionell basiert ein Präzisionszeitsystem in Industrieanlagen auf einem NTP-Server, der aus einer im selben Schrank montierten Headunit mit Netzwerkgeräten und einer Remote-Antenne besteht, die im Freien installiert und über ein Koaxialkabel mit dem Server verbunden ist. Gleichzeitig verfügt die Headunit über mehrere Netzwerkschnittstellen (Ethernet oder RS-232/485) zum Verbinden von Clients in einem oder mehreren Netzwerken.





Typisches Präzisionszeitsystem



Wenn Sie sich diese Lösung genauer ansehen, werden Sie mehrere Nachteile feststellen. Erstens fehlt einem solchen System die vollständige Redundanz. Trotz der Tatsache, dass die Headunit über mehrere Netzwerkschnittstellen verfügt und in der Lage ist, genaue Zeit in mehreren Netzwerken bereitzustellen, führt ihr Ausfall oder Ausfall zum Verlust der Quelle für genaue Zeit am gesamten Standort. Durch die vollständige Redundanz der Headunit in einer solchen Lösung wird das bereits teure Synchronisationssystem noch teurer.



Der zweite Nachteil ist die Notwendigkeit, einen Zeitserver im Schrank zu installieren. Dies ist kein Nachteil für große Projekte, aber für kleine lokale Steuerungssysteme kann dies ein ernstes Problem sein.



Zu den Nachteilen gehört auch die Notwendigkeit, eine entfernte Antenne und ein Koaxialkabel zu verwenden. Warum? Erstens können die Kosten für eine hochwertige GPS / GLONASS-Antenne mit langem Kabel und Schutz gegen Nagetiere leicht über 10.000 Rubel liegen. im Jahr 2020 Preise. In diesem Fall haben Koaxialkabel eine begrenzte Länge zum Übertragen von Signalen von Satellitensystemen. Oberhalb von 50 m wird das Signal erheblich gedämpft, was bei großen Gebäuden ein schwerwiegender begrenzender Faktor ist.



Der Hauptnachteil des traditionellen Ansatzes zur Schaffung von Synchronisationssystemen sind seine hohen Kosten (oft mehr als 150.000 Rubel), die die Schätzung nicht nur kleiner, sondern auch recht großer Projekte erheblich beeinflussen.



So machen Sie das System billiger und zuverlässiger



Der bedingungslose Trend moderner Technologien ist die Schaffung kompakterer und benutzerfreundlicherer elektronischer Geräte. In dieser Hinsicht sind Zeitserver keine Ausnahme.



Die gesamte Synchronisationslösung, einschließlich der GPS / GLONASS-Antenne, kann in eine kleine Box passen, wie dies in

FL TIMESERVER von Phoenix Contact der Fall ist . Das Gerät basiert auf dem Prinzip einer intelligenten Antenne, dh es kombiniert direkt die Funktionalität eines Zeitservers und einer GPS / GLONASS-Empfängerantenne. Das Design ist das einzige, was es von den üblichen Lösungen unterscheidet.





FL TIMESERVER NTP-Zeitserver



Wie die Praxis zeigt, kann das Gerät auch innerhalb von Gebäuden mit Satellitensystemen kommunizieren. Für einen zuverlässigeren Empfang von Signalen kann es jedoch unter Außenbedingungen betrieben werden, da es in einem Gehäuse mit Staub- und Feuchtigkeitsschutzstufe IP68 hergestellt ist und in einem weiten Temperaturbereich von -40 bis +70 ° C betrieben werden kann In diesem Fall ist der Zeitserver als herkömmliche Antenne montiert, verfügt über eine redundante Stromversorgung vom 24-V-Gleichstromkreis und / oder über ein Ethernet-Kabel (PoE) und wird mithilfe von SNMP diagnostiziert. Bei Installationen im Freien wird eine abgedichtete Kabelverschraubung verwendet, um ein hohes Maß an Staub- und Feuchtigkeitsschutz aufrechtzuerhalten.



In Bezug auf die Funktionalität gibt es keine Unterschiede: Das Gerät kann Zeitstempel und Geolokalisierungsdaten von Satellitennavigationssystemen (GLONASS, GPS) empfangen und diese Informationen an Clients in einem Ethernet-Netzwerk senden.





Zeitsystem basierend auf der Phoenix Contact-Lösung



Mit dieser Lösung wird das Synchronisationssystem erheblich vereinfacht und beseitigt die Nachteile des herkömmlichen Ansatzes. FL TIMESERVERhat nur einen Ethernet-Anschluss, aber wenn Sie mehrere Schnittstellen verwenden müssen, müssen Sie ihn nur an einen Switch anschließen oder mehrere intelligente Antennen verwenden. In diesem Fall erhalten wir eine vollständige Sicherung der Zeitserver und nicht nur der Netzwerkschnittstelle. In diesem Fall ist die endgültige Lösung immer noch billiger als viele vorhandene Analoga. FL TIMESERVER kann außerhalb des Netzwerks oder des Automatisierungsschranks verschoben werden, wodurch Platz im Inneren gespart wird. Diese Lösung erfordert keine separate Antenne, hier ist sie bereits eingebaut und wir können mit einem normalen Ethernet-Kabel eine Verbindung zum Unternehmensnetzwerk herstellen. Auf diese Weise können Sie den Zeitserver in einer Entfernung von bis zu 100 m vom Hauptgerät bewegen, ohne befürchten zu müssen, dass das Signal verblasst. Der wichtigste Vorteil einer solchen Lösung ist eine völlig andere Preisordnung.Die Kosten für einen einmaligen Server betragen weniger als 300 Euro, was die Verwendung in kleinen und großen Projekten bequem macht.



All Articles