DE102023129947A1 - Gestapeltes netzwerkgerät als präzisionszeitprotokoll-grenzuhr - Google Patents

Gestapeltes netzwerkgerät als präzisionszeitprotokoll-grenzuhr Download PDF

Info

Publication number
DE102023129947A1
DE102023129947A1 DE102023129947.6A DE102023129947A DE102023129947A1 DE 102023129947 A1 DE102023129947 A1 DE 102023129947A1 DE 102023129947 A DE102023129947 A DE 102023129947A DE 102023129947 A1 DE102023129947 A1 DE 102023129947A1
Authority
DE
Germany
Prior art keywords
member node
node
ptp
clock
external
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102023129947.6A
Other languages
English (en)
Inventor
Venkata Varadhan Devarajan
Nick E. Demmon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of DE102023129947A1 publication Critical patent/DE102023129947A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/41Flow control; Congestion control by acting on aggregated flows or links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0685Clock or time synchronisation in a node; Intranode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0641Change of the master or reference, e.g. take-over or failure of the master
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Es werden Systeme, Verfahren und Geräte beschrieben, die eine interne PTP-Instanz (Precision Time Protocol) auf einem gestapelten Netzwerkgerät innerhalb einer größeren externen PTP-Instanz in dem Netzwerk implementieren, zu dem das gestapelte Netzwerkgerät gehört. Die interne PTP-Instanz ist lokal auf dem gestapelten Netzwerkgerät und synchronisiert die N Geräte („Mitglieder“) im Stapel. Jedes der Mitglieder des gestapelten Netzwerkgeräts kann als BC in dieser lokalen virtuellen PTP-Instanz fungieren. Ein Mitglied, das als Kommandoknoten oder primärer Mitgliedsknoten bezeichnet werden kann, kann seine Uhr auf der Grundlage eines externen GSC oder externen BC synchronisieren, und dann kann dieses Mitglied als BC für ein nachgeschaltetes Mitglied fungieren, und so weiter in einer iterativen Weise, bis alle Mitglieder innerhalb des gestapelten Netzwerkgeräts synchronisierte Uhren haben. Die einzelnen Mitglieder können auch als BCs für die mit ihnen verbundenen externen Endpunkte fungieren und diesen PTP-Zeitstempelnachrichten übermitteln.

Description

  • EINFÜHRUNG
  • Elektronische Geräte im selben lokalen Bereich können miteinander verbunden werden, um ein lokales Netzwerk (LAN) zu bilden. Einige vernetzte Geräte können die Verteilung der Zeit (d. h. der „Tageszeit“) erlauben oder erfordern, um den Netz- und/oder Gerätebetrieb zu erleichtern. Das Precision Time Protocol oder Precise Time Protocol (PTP) ist in den Normen IEEE 1588 und IEEE 802.1AS definiert, um die Tageszeit zwischen vernetzten Einheiten mit einer Genauigkeit im Submikrosekunden- (oder sogar Subnanosekunden-) Bereich zu verteilen und zu synchronisieren. Eine effektive Zeitsynchronisierung kann für viele Anwendungen genutzt werden, z. B. für netzbasierte Audio-/Videoanwendungen, öffentliche Durchsagesysteme, Stromübertragungsstationen, industrielle Mess- und Steuersysteme usw.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Diese und andere detailliertere und spezifische Merkmale verschiedener Ausführungsbeispiele werden in der folgenden Beschreibung ausführlicher dargelegt, wobei auf die beigefügten Zeichnungen verwiesen wird, in denen:
    • 1 zeigt ein beispielhaftes Netzwerk, das PTP in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenlegung implementiert;
    • 2 zeigt ein beispielhaftes Netz, das PTP implementiert, und ein beispielhaftes gestapeltes Gerät gemäß verschiedenen Aspekten der vorliegenden Offenbarung;
    • 3 zeigt ein beispielhaftes Netzwerk, das PTP implementiert, und ein weiteres beispielhaftes gestapeltes Gerät gemäß verschiedenen Aspekten der vorliegenden Offenbarung;
    • 4 zeigt einen beispielhaften Prozessablauf für die Zeitfortpflanzung und-synchronisation in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenbarung;
    • 5A-5E und 6A-6E zeigen jeweils beispielhafte Netzwerke, die die beispielhaften Vorgänge von 4 implementieren;
    • Die 7A-7B zeigen beispielhafte Kommunikationsflüsse für die Zeitsynchronisation gemäß verschiedenen Aspekten der vorliegenden Offenbarung;
    • 8 zeigt einen weiteren beispielhaften Prozessablauf für die Zeitübertragung und -synchronisation in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenbarung;
    • 9A-9C zeigen jeweils ein beispielhaftes Netzwerk, das die beispielhaften Vorgänge von 8 implementiert; und
    • Die 10A-10B zeigen ein beispielhaftes Verarbeitungssystem in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenbarung.
  • Die Zeichnungen dienen dem weiteren Verständnis der vorliegenden Offenbarung und sind Bestandteil der vorliegenden Beschreibung. Die Zeichnungen illustrieren ein oder mehrere Beispiele der vorliegenden Lehre und erläutern zusammen mit der Beschreibung bestimmte Prinzipien und Vorgänge.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In der folgenden Beschreibung sind zahlreiche Details aufgeführt, wie z. B. Flussdiagramme, Schemata und Systemkonfigurationen. Für einen Fachmann ist es leicht ersichtlich, dass diese spezifischen Details lediglich beispielhaft sind und den Anwendungsbereich dieser Anwendung nicht einschränken sollen. Zusätzlich zu den hier beschriebenen Systemen, Geräten und Verfahren können die hier beschriebenen Vorgänge als computerlesbare Anweisungen oderVerfahren und/oder als Verarbeitungsknoten oder -knoten im Netz zur Ausführung der Anweisungen oder Verfahren implementiert werden. Einzelne Geräte oder Verarbeitungsknoten können jeweils einen Prozessor in dem einzelnen Gerät oder Knoten und/oder einen Prozessor in einem beliebigen Steuergerät oder Knoten im Netz, das mit dem einzelnen Gerät oder Knoten verbunden ist, umfassen.
  • Ein Netz, das PTP einsetzt, umfasst mindestens drei Einheiten. Die erste Einheit ist eine Hauptquellen-Uhr (Grandsource Clock, GSC), manchmal auch als „Grandmaster Clock“ (GMC) bezeichnet, die als authentische Zeitquelle für das Netz dient. Die GSC ist in der Regel mit einer externen Zeitreferenz wie einer GPS- oder CDMA-Uhr verbunden. Die zweite Einheit ist ein zwischengeschaltetes Netzgerät (z. B. ein Switch oder ein Router), das die Zeitstempel von der GSC weitergibt. Die dritte Einheit ist ein Endpunkt oder eine gewöhnliche Uhr (OC), die die Zeitstempel von der Zentrale über den Vermittler empfängt und ihre lokale Uhr aktualisiert, um mit der Zentrale synchron zu sein. Das zwischengeschaltete Netzwerkgerät wird je nach seiner Rolle bei der PTP-Ausbreitung kategorisiert. Wenn das zwischengeschaltete Gerät ein PTP-Paket mit einem Zeitstempel vom GSC empfängt, eine mit dem PTP-Paket verbundene Weiterleitungslatenz auf diesem zwischengeschalteten Gerät hinzufügt und das geänderte PTP-Paket an ein nachgeschaltetes Gerät weiterleitet, wird es als Transparent Clock (TC) bezeichnet. Eine TC synchronisiert ihre lokale Uhr nicht mit dem GSC. Wenn das zwischengeschaltete Gerät ein PTP-Paket von der Zentrale abruft, seine lokale Uhr mit der Zentrale synchronisiert und dann ein neues PTP-Paket an nachgeschaltete Geräte sendet, spricht man von einer Boundary Clock (BC). Im Gegensatz zu einem TC kann ein BC Zeitstempel an eine andere nachgeschaltete BC, an einen direkt mit ihr verbundenen Endpunkt oder an einen über einen TC verbundenen Endpunkt weitergeben. Im Allgemeinen werden BCs verwendet, um vorgelagerte Geräte (einschließlich des GSC) zu entlasten, indem die Anzahl der direkt mit den vorgelagerten Geräten verbundenen Netzwerkgeräte reduziert wird.
  • Es ist möglich, mehrere unterschiedliche Netzgeräte zusammenzufassen und miteinander zu kooperieren, so dass sie für den Rest des Netzes als ein einziges Gerät erscheinen und funktionieren. Die sich daraus ergebende logische Einheit kann hier als „gestapeltes Gerät“ bezeichnet werden. Eine solche Implementierung für ein gestapeltes Gerät ist das Virtual Switching Framework (VSF), das ein virtuelles Gerät (z. B. einen virtuellen Switch) definiert, das mehrere einzelne physische Geräte (z. B. physische Switches) umfasst, die über physische (z. B. Ethernet-)Verbindungen miteinander verbunden sind. Diese physischen Geräte arbeiten mit einer Steuerebene, die für Peers als virtueller Gerätestapel sichtbar ist. Diese Zusammensetzung kann die Verwaltung vereinfachen und bietet die Möglichkeit, den Stapel zu skalieren.
  • Unter bestimmten Umständen kann es erwünscht sein, ein gestapeltes Gerät als zwischengeschaltetes Netzgerät in einem PTP-Netz zu verwenden. Bislang war dies jedoch schwierig oder undurchführbar. Ein eigenständiges Gerät kann auf einfache Weise als TC oder BC fungieren. Da jedoch N > 1 (in der Regel viele) Geräte in einem gestapelten Gerät vorhanden sind, von denen jedes seine eigene Uhr hat, ist es nicht einfach, das gestapelte Gerät so zu konfigurieren, dass es mit der zentralen Vermittlungsstelle synchronisiert ist, aber auch für die zentrale Vermittlungsstelle und den Rest des nachgelagerten Netzes als eine einzige Uhr erscheint, so dass es bisher undurchführbar war, ein gestapeltes Gerät als BC zu verwenden. Ein gestapeltes Gerät als TC zu konfigurieren, ist zwar einfacher, kann aber zu unerwünschten Nebeneffekten führen. In vergleichbaren Ansätzen kann beispielsweise ein gestapeltes Gerät als TC arbeiten, wobei jedes Gerät im Stapel Zeitstempel von einem externen BC (oder direkt vom GSC) empfängt und seine eigene Weiterleitungslatenz hinzufügt. Da jedoch an jedes Gerät im Stapel M Endpunkte (Clients) angeschlossen sein können, muss das gestapelte Gerät möglicherweise eine große PTP-Last von M×N Endpunkten bewältigen. M×N kann sehr groß sein und bei manchen Einsätzen leicht in die Hunderte oder mehr gehen. Wenn das gestapelte Gerät als TC konfiguriert ist, muss das Netzwerkgerät unmittelbar über dem gestapelten Gerät als BC für alle M×N Endpunkte des gestapelten Geräts arbeiten. Diese Menge an PTP-Endpunkten kann die Kapazität eines BC schnell überfordern. Die Bereitstellung des gestapelten Geräts als TC ist zwar einfach, kann aber in einigen Fällen zu inakzeptablen Ergebnissen führen. Daher wird eine Lösung für die Bereitstellung von PTP mit gestapelten Netzwerkgeräten benötigt, ohne das gestapelte Netzwerkgerät oder andere vorgeschaltete Netzwerkgeräte zu überfordern.
  • Die vorliegende Offenlegung sieht daher Systeme, Verfahren und Geräte vor, die es einem Stapel von N > 1 Geräten ermöglichen, PTP-Dienste für nachgeschaltete Geräte effizient bereitzustellen, indem das gestapelte Gerät selbst den anderen Geräten im Netz (dem GSC, allen vorgeschalteten BCs, allen nachgeschalteten BCs oder TCs und dem/den Endpunkt(en)) als ein einziger BC präsentiert wird, während die PTP-Last unter den einzelnen Mitgliedern des Stapels aufgeteilt wird und ohne einen einzigen Referenztakt für den Stapel selbst zu haben (d. h., jedes einzelne Gerät innerhalb des Stapels behält seinen eigenen internen Referenztakt bei).
  • Dementsprechend sieht die vorliegende Offenlegung Systeme, Verfahren und Geräte vor, die eine interne PTP-Instanz (d. h. eine PTP-Instanz innerhalb des gestapelten Netzwerkgeräts) innerhalb der externen PTP-Instanz (d. h. der PTP-Instanz in dem Netzwerk, zu dem das gestapelte Netzwerkgerät gehört) implementieren. Die interne PTP-Instanz ist lokal im Stacked Network Device und synchronisiert die Uhren der N Geräte („Members“) im Stack. Diese interne Instanz ist für Geräte außerhalb des Stapels transparent (d. h., der Rest des Netzes, einschließlich der externen PTP-Instanz, kann die interne PTP-Instanz nicht kennen). Jedes Mitglied des gestapelten Netzwerkgeräts kann als BC in dieser lokalen virtuellen PTP-Instanz fungieren. Ein Mitglied, das als Kommandoknoten oder primärer Mitgliedsknoten bezeichnet werden kann, kann seine Uhr auf der Grundlage eines externen GSC oder externen BC synchronisieren, und dann kann dieses Mitglied als BC für ein nachgeschaltetes Mitglied fungieren, und so weiter, bis alle Mitglieder innerhalb der gestapelten Netzwerkvorrichtung synchronisierte Uhren haben. Die einzelnen Mitglieder können auch als BCs für die mit ihnen verbundenen externen Endpunkte fungieren und diesen PTP-Zeitstempelnachrichten übermitteln. Obwohl jedes einzelne Gerät im Stapel die BC-Verantwortung für seine angeschlossenen Endpunkte übernimmt, scheinen die dadurch gesendeten PTP-Zeitstempel aus Sicht der externen Endpunkte vom gestapelten Gerät als Ganzes zu stammen. Auf diese Weise kann die PTP-Last der M×N Endpunkte auf N Geräte verteilt werden, die als BCs fungieren, anstatt einen einzigen externen BC zu überfordern, während der Stack als Ganzes für den Rest des Netzes wie eine Blackbox erscheint, die als ein einziger BC arbeitet. Die externe PTP-Instanz arbeitet gemäß dem Standard mit einem GSC, BCs/TCs und Endpunkten und behandelt das gestapelte Netzwerkgerät einfach wie jedes andere BC. Die hier vorgestellten Beispiele ermöglichen es also, ein gestapeltes Gerät als zwischengeschaltetes Netzwerkgerät in einem PTP-Netz zu verwenden, ohne dass die oben genannten Nachteile auftreten.
  • 1 zeigt ein Beispiel für ein Netzwerk, das PTP in Übereinstimmung mit verschiedenen Aspekten der vorliegenden Offenlegung implementiert. Das Netzwerk umfasst eine Taktquelle 100, einen GSC 110 und eine Vielzahl von Netzwerkgeräten, einschließlich BCs 120 und 130, einen TC 140 und OCs (Endpunkte) 150. Der GSC 110, die BCs 120 und 130, derTC 140 und die OCs 150 können gemeinsam als eine „PTP-Domäne“ bezeichnet werden. Während in 1 zwei BCs 120 und 130, ein einzelner TC 140 und zwei OCs 150 dargestellt sind, kann das Netzwerk in praktischen Implementierungen eine beliebige Anzahl von BCs 120 und 130, TCs 140 und OCs 150 umfassen, einschließlich Null von jedem der Typen von Netzwerkgeräten. Jedes der Netzwerkgeräte kann einen Prozessor, einen Speicher, einen Taktgeber und Ein-/Ausgabeanschlüsse (E/A) haben. Die E/A-Ports können Eingangsports, Ausgangsports, Uplink-Ports, die eine Verbindung zu stromaufwärts gelegenen Geräten herstellen, Downlink-Ports, die eine Verbindung zu stromabwärts gelegenen Geräten herstellen, und Kombinationen davon (z. B. ein Uplink-Eingangsport, ein Downlink-Port sowohl für Eingang als auch für Ausgang usw.) umfassen. Bei den Netzwerkgeräten kann es sich z. B. um Switches und/oder Router handeln.
  • Die Zeitquelle 100 stellt eine Zeitreferenz für das Netzwerk bereit, die von der PTP-Domäne als „Standard“ (d. h. als hochpräzise) Zeit angesehen wird, und daher kann die Zeitquelle 100 als Standarduhr bezeichnet werden. Bei der Taktquelle 100 kann es sich beispielsweise um eine Satellitenzeitquelle des Global Positioning System (GPS), eine CDMA-Zeitquelle (Code-Division Multiple Access) oder ähnliches handeln. Die Uhrquelle 100 ist mit der PTP-Domäne entweder über eine verdrahtete Verbindung (z. B. Glasfaser, Kupfer oder einen anderen Leiter in einem Kabel usw.) oder eine drahtlose Verbindung (z. B. eine Satellitenverbindung, eine Mobilfunkverbindung usw.) verbunden. In einigen Implementierungen kann eine Vielzahl von Taktquellen 100 entweder über redundante Verbindungen desselben Typs (z. B. mehrere GPS-Satellitenverbindungen), über Verbindungen unterschiedlichen Typs (z. B. eine GPS-Satellitenverbindung und eine CDMA-Verbindung) oder über Kombinationen davon bereitgestellt werden.
  • Der GSC 110 dient als Referenzuhr für die PTP-Domäne, und alle Netzwerkgeräte in der PTP-Domäne leiten ihre Zeit letztlich vom GSC 110 ab. Daher synchronisiert der GSC 110 seine Zeit mit der gesamten PTP-Domäne durch PTP-Nachrichten, die zwischen den Netzwerkgeräten ausgetauscht werden. Die Uhr des GSC 110 selbst wird mit der Zeitreferenz synchronisiert, die von der Taktquelle 100 bereitgestellt wird. In einigen Implementierungen kann eine Vielzahl von GSC 110 vorgesehen sein, die entweder mit derselben Taktquelle 100 oder mit verschiedenen Taktquellen 100 verbunden sind, wenn mehrere Taktquellen 100 vorgesehen sind. In Implementierungen mit mehreren GSCs 110, die jeweils als potenzielle Quelle des Referenztakts für die PTP-Domäne dienen, kann ein GSC 110 manuell als Quelle konfiguriert werden oder es kann ein Algorithmus zur Auswahl eines GSC 110 als Quelle angewendet werden. Ein beispielhafter Algorithmus wird als Best Leader Clock (BLC)-Algorithmus bezeichnet und ist in der IEEE 1588-Spezifikation festgelegt. Ein Downlink-Port des GSC 110 gibt ein Taktsignal an nachgeschaltete Geräte in der PTP-Domäne aus und wird als Leader-Port 111 bezeichnet.
  • Ein BC 120 oder 130 ist eine Uhr mit mehr als einem PTP-Anschluss in der PTP-Domäne für die Zeitsynchronisation. Ein BC 120 oder 130 verwendet seinen Uplink-Port, der hier als Follower-Port 121 bezeichnet wird, zur Synchronisierung seiner eigenen Uhr mit seinem vorgelagerten Uhrenknoten. In 1 ist ein erster BC 120 unmittelbar stromabwärts vom GSC 110 angeschlossen und synchronisiert somit seine Zeit mit dem GSC 110, während ein zweiter BC 130 mit dem ersten BC 120 verbunden ist und somit seine Zeit mit dem ersten BC 120 synchronisiert. Ein BC 120 oder 130 verwendet seine Downlink-Ports, die hier als Leader-Ports 122 bezeichnet werden, um die Uhren der nachgeschalteten Geräte zu synchronisieren. Ein BC 120 oder 130 kann eine beliebige Anzahl von Leader-Ports 122 haben, einschließlich einem oder zwei (wie dargestellt) oder mehr. Ein BC 120 oder 130 empfängt PTP-Pakete an seinen Follower-Ports 121, konsumiert die PTP-Pakete, synchronisiert seine lokale Uhr mit dem GSC 110 und sendet dann neue PTP-Nachrichten an nachgeschaltete Geräte. Beispielhafte Verfahren, die innerhalb eines BC 120 oder 130 zur Taktsynchronisation eingesetzt werden, werden im Folgenden mit Bezug auf 8 näher beschrieben.
  • Ein TC 140 ist eine Uhr mit mehr als einem PTP-Anschluss in der PTP-Domäne, die jedoch nicht verpflichtet ist, die Zeitkonsistenz mit anderen Uhrenknoten zu wahren. Ein TC 140 empfängt PTP-Nachrichten an einem Uplink-Port des TC 140, führt eine Verzögerungskorrektur für die PTP-Nachrichten durch (z. B. durch Addition der Weiterleitungslatenz/Verzögerung, die mit einem bestimmten PTP-Paket auf dem gegebenen TC 140 verbunden ist) und leitet die PTP-Nachrichten von einem Downlink-Port des TC 140 weiter. Ein TC 140 führt selbst keine Zeitsynchronisationen durch. Ein TC 140 kann eine transparente End-to-End-Uhr (E2ETC) sein, die keine Peer-to-Peer-Pakete (P2P) im Netz weiterleitet und die Verzögerung der gesamten Verbindung berechnet, oder eine transparente Peer-to-Peer-Uhr (P2PTC), die nur Synchronisierungs-, Folge- und Ankündigungsnachrichten weiterleitet, andere PTP-Nachrichten beendet und die Verzögerung jedes Verbindungssegments berechnet.
  • Eine OC 150 ist eine Uhr mit einem einzigen PTP-Anschluss in der PTP-Domäne für die Zeitsynchronisation. Eine OC 150 synchronisiert die Zeit von ihrem vorgelagerten Uhrenknoten, unabhängig davon, ob der vorgelagerte Uhrenknoten ein BC 120, 130 oder ein TC 140 ist. Der PTP-Port, an dem der OC 150 Nachrichten empfängt, wird als Follower-Port 151 bezeichnet. Bei den Verbindungen zwischen den Netzwerkgeräten in der PTP-Domäne (d. h. zwischen dem GSC 120, den BCs 120 und 130, den TCs 140 und den OCs 150) kann es sich um Ethernet-Verbindungen handeln, die einen Vollduplex-Kommunikationspfad zwischen den angeschlossenen Geräten bieten. Es wird angenommen, dass die Verzögerung für Uplink-Übertragungen der Verzögerung für Downlink-Übertragungen entspricht. Die Verbindungen können Zeitstempel in PTP-Protokollpaketen übertragen, die sich durch das Netz ausbreiten und schließlich die Endpunkte (d. h. die OCs 150) erreichen.
  • Einzelne Netzgeräte innerhalb der PTP-Domäne können eigenständige Geräte mit eigener Verwaltungs- und Steuerungsebene sein oder aus mehreren Geräten konfiguriert werden, die so zusammengesetzt sind, dass sie als ein Gerät erscheinen und funktionieren. Ein Netzgerät, das aus mehreren gestapelten Geräten konfiguriert ist, wird hier als „gestapeltes Netzgerät“ bezeichnet. Die Anzahl der einzelnen Geräte innerhalb eines gestapelten Netzwerkgeräts wird hier mit der ganzen Zahl N bezeichnet. Im Vergleich zu einem eigenständigen Netzwerkgerät kann ein gestapeltes Netzwerkgerät eine einfachere Verwaltung und/oder eine zustandsabhängige Geräteredundanz im Netzwerk bieten. VSF beschreibt einen beispielhaften Rahmen für die Konfiguration mehrerer Geräte als gestapeltes Netzwerkgerät. Ein gestapeltes Netzwerkgerät, das gemäß VSF konfiguriert ist, wird hier als VSF-Stapel bezeichnet. Die folgende Beschreibung bezieht sich zwar auf einen VSF-Stapel, aber die hier beschriebenen Konfigurationen, Methoden, Systeme, Geräte usw. sind aufjedes gestapelte Netzwerkgerät anwendbar, auch wenn das Gerät VSF nicht strikt umsetzt.
  • In einem VSF-Stapel kann jedes Mitgliedsgerät anhand einer eindeutigen Mitgliedsnummer innerhalb des VSF-Stapels identifiziert werden, erscheint jedoch für externe Geräte als der Stapel selbst (d. h. anhand einer einzigen MAC/IP-Adresse für den gesamten Stapel). Ein Mitglied des VSF-Stapels fungiert als Anführer des VSF-Stapels, wird hier als „Kommandoknoten“ bezeichnet und kann als Mitglied Nummer 1 identifiziert werden. Ein anderes Mitglied kann als Leiter des VSF-Stapels für den Fall bestimmt werden, dass der Kommandoknoten nicht mehr verfügbar ist, und wird als „Standby-Knoten“ bezeichnet. Der Standby-Knoten kann vom Benutzer konfiguriert werden. Die übrigen Mitgliedsgeräte werden als „Mitgliedsknoten“ bezeichnet. VSF unterstützt N >1 Geräte, die entweder in einer Kettentopologie oder in einer Ringtopologie verbunden sind. In einigen Implementierungen beträgt die maximale Anzahl von Mitgliedsgeräten innerhalb eines einzelnen VSF-Stapels zehn, obwohl in anderen Implementierungen eine größere Anzahl von Mitgliedsgeräten möglich sein kann. Beispielhafte VSF-Stapel innerhalb eines Netzwerks, wie das Netzwerk von 1, sind in 2 und 3 dargestellt, wobei 2 einen VSF-Stapel mit einer Kettentopologie und 3 einen VSF-Stapel mit einer Ringtopologie zeigt. In 2 und 3 werden bestimmte Geräte mit denselben Bezugsziffern wie in 1 bezeichnet, und für Einzelheiten zu diesen Geräten kann auf die obige Beschreibung von 1 verwiesen werden.
  • In 2 ist ein GSC 110 mit einem BC 120 unmittelbar stromabwärts davon vorhanden. Stromabwärts vom BC 120 ist ein gestapeltes Gerät 200 angeschlossen. In anderen Beispielen kann das gestapelte Gerät 200 direkt mit dem GSC 110 statt mit einem BC 120 verbunden sein. In anderen Beispielen können zusätzliche BCs 120 zwischen dem GSC 110 und der gestapelten Vorrichtung 200 eingefügt werden. Eine Vielzahl von OCs 150 ist mit der gestapelten Vorrichtung 200 verbunden, obwohl nur sechs OCs 150 zur Verdeutlichung und Illustration dargestellt sind. Das Stacked Device 200 ist so konfiguriert, dass es für externe Netzwerkgeräte im Netzwerk (z. B. für die GSC 110, den BC 120 und die OCs 150) als ein einziges virtuelles Gerät funktioniert, und kann insbesondere so konfiguriert werden, dass es als BC des Netzwerks arbeitet. Die gestapelte Vorrichtung 200 umfasst mindestens zwei Knoten, die in 2 als Kommandoknoten 210, Standby-Knoten 220 und Mitgliedsknoten 230 dargestellt sind und jeweils in einer Kettentopologie verbunden sind. Die Knoten können durch Mitgliederverbindungen miteinander verbunden sein, um Datenverkehr auf der Ebene auszutauschen. Den Knoten können verschiedene Rollen innerhalb der gestapelten Vorrichtung 200 zugewiesen werden, was den oben erwähnten Kommandoknoten 210, Reserveknoten 230 und Mitgliedsknoten 230 entspricht. Wenn es jedoch nicht erforderlich ist, die Rollen der Knoten hervorzuheben oder sie anderweitig voneinander zu unterscheiden, kann jeder der Knoten des gestapelten Geräts 200 allgemein als Knoten oder Mitgliedsknoten bezeichnet werden. In praktischen Implementierungen kann eine andere Anzahl von Knoten als die dargestellten vorhanden sein. Insbesondere umfasst die gestapelte Vorrichtung 200 mindestens zwei Knoten, d. h. einen Kommandoknoten 210 und mindestens einen weiteren Knoten, wie z. B. einen Reserveknoten 220 oder einen Mitgliedsknoten 230. Zusätzlich zu den beiden vorgenannten Knoten können ein, zwei oder mehr zusätzliche Knoten vorgesehen sein, die hier als Mitgliedsknoten 230 bezeichnet werden können. Darüber hinaus kann in praktischen Implementierungen keines der Geräte innerhalb der gestapelten Vorrichtung 200 als Bereitschaftsknoten bezeichnet werden, so dass kein Bereitschaftsknoten 220 vorhanden sein kann.
  • Der Commander-Knoten 210 ist so konfiguriert, dass er im Auftrag des Stacked Device 200 Operationen auf der Steuerungs- und Verwaltungsebene durchführt. Der Commander-Knoten 210 umfasst einen Uplink-Port, der mit dem Leader-Port 122 des BC 120 (oder einem Leader-Port des GSC 110 in einigen Beispielen) verbunden ist und als Follower-Port 211 bezeichnet wird. Der Follower-Port 211 kann ein Link Aggregation Group (LAG)-Port oder zwei Routed Only Ports (ROPs) sein. Der Commander-Knoten 210 umfasst ferner einen Downlink-Anschluss, der mit einem Mitgliedsgerät innerhalb des Stacked Device 200 (hier der Standby-Knoten 220) verbunden ist und als interner Leader-Anschluss 212 bezeichnet wird, sowie Downlink-Anschlüsse, die mit OCs 150 außerhalb des Stacked Device 200 verbunden sind und als externe Leader-Anschlüsse 213 bezeichnet werden. Während in 2 der Commander-Knoten 210 mit nur einem internen Leader-Anschluss 212 und zwei externen Leader-Anschlüssen 213 dargestellt ist, kann der Commander-Knoten 210 in der Praxis eine beliebige Anzahl und Kombination von internen Leader-Anschlüssen 212 und externen Leader-Anschlüssen 213 aufweisen.
  • Der Standby-Knoten 220 umfasst einen Uplink-Anschluss, der mit dem internen Leader-Anschluss 212 des Commander-Knotens 210 verbunden ist und als interner Follower-Anschluss 221 bezeichnet wird. Der Standby-Knoten 220 umfasst ferner einen Downlink-Anschluss, der mit einem Mitgliedsgerät innerhalb des gestapelten Geräts 200 (hier der Mitgliedsknoten 230) verbunden ist und als interner Leader-Anschluss 222 bezeichnet wird, sowie Downlink-Anschlüsse, die mit OCs 150 außerhalb des gestapelten Geräts 200 verbunden sind und als externe Leader-Anschlüsse 223 bezeichnet werden. Während in 2 der Standby-Knoten 220 mit nur einem internen Leader-Port 222 und zwei externen Leader-Ports 223 dargestellt ist, kann der Standby-Knoten 220 in der Praxis eine beliebige Anzahl und Kombination von internen Leader-Ports 222 und externen Leader-Ports 223 aufweisen. Darüber hinaus ist der Standby-Knoten 220 in 2 zwar unmittelbar stromabwärts des Kommandoknotens 210 dargestellt, doch kann in der Praxis jedes beliebige Mitgliedsgerät innerhalb des gestapelten Geräts 200 als Standby-Knoten 220 bezeichnet werden, solange das Mitgliedsgerät in der Lage ist, Software für die Steuerungsebene auszuführen und die anderen Mitgliedsgeräte des gestapelten Geräts 200 zu verwalten.
  • Der Mitgliedsknoten 230 umfasst einen Uplink-Anschluss, der mit dem internen Leader-Anschluss 222 des Standby-Knotens 220 verbunden ist und als interner Follower-Anschluss 231 bezeichnet wird. Der Mitgliedsknoten 230 umfasst außerdem Downlink-Anschlüsse, die mit OCs 150 außerhalb des Stacked Device 200 verbunden sind und als externe Leader-Anschlüsse 232 bezeichnet werden. Während in 2 der Mitgliedsknoten 220 mit zwei externen Leader-Anschlüssen 232 dargestellt ist, kann der Mitgliedsknoten 220 in der Praxis eine beliebige Anzahl von externen Leader-Anschlüssen 232 aufweisen. Wie oben erwähnt, kann die gestapelte Vorrichtung 200 N Mitgliedsvorrichtungen umfassen. Daher kann der Mitgliedsknoten 220 einen oder mehrere interne Hauptanschlüsse aufweisen, die mit zusätzlichen Mitgliedseinrichtungen innerhalb der gestapelten Vorrichtung 200 verbunden sind, zum Beispiel in Implementierungen, in denen zusätzliche Mitgliedsknoten 220 vorhanden sind (z. B. N > 3). Ein einzelnes Mitgliedsgerät innerhalb der gestapelten Vorrichtung 200 kann mit einer beliebigen ganzzahligen Anzahl M von OCs 150 verbunden sein, einschließlich Null. Außerdem können verschiedene Mitgliedsgeräte mit einer unterschiedlichen Anzahl M von OCs 150 verbunden sein.
  • In 3 ist ein GSC 110 mit einem BC 120 unmittelbar stromabwärts davon vorhanden. Stromabwärts vom BC 120 ist ein gestapeltes Gerät 300 angeschlossen. In anderen Beispielen kann das gestapelte Gerät 300 direkt mit dem GSC 110 statt mit einem BC 120 verbunden sein. In anderen Beispielen können zusätzliche BCs 120 zwischen dem GSC 110 und der gestapelten Vorrichtung 300 eingefügt werden. Das Stacked Device 300 ist so konfiguriert, dass es für externe Netzwerkgeräte im Netzwerk (z. B. für den GSC 110, den BC 120 und die OCs 150) als ein einziges virtuelles Gerät funktioniert, und kann insbesondere so konfiguriert sein, dass es als BC des Netzwerks arbeitet. An das Stacked Device 300 sind mehrere OCs 150 angeschlossen, wobei aus Gründen der Klarheit und der Veranschaulichung nur sieben OCs 150 dargestellt sind. Das Stacked Device 300 ist so konfiguriert, dass es gegenüber externen Netzwerkgeräten im Netzwerk (z. B. gegenüber dem GSC 110, dem BC 120 und den OCs 150) als ein einziges virtuelles Gerät funktioniert. Das gestapelte Gerät 300 umfasst mindestens drei Knoten, die in 3 als Kommandoknoten 310, Standby-Knoten 320 und zwei Mitgliedsknoten 330 dargestellt sind, die jeweils in einer Ringtopologie verbunden sind. Die Knoten können durch Mitgliederverbindungen miteinander verbunden sein, um Datenverkehr auf der Ebene auszutauschen. Den Knoten können verschiedene Rollen innerhalb des Stacked Device 300 zugewiesen werden, was den oben erwähnten Commander Node 310, Standby Node 330 und Member Node 330 entspricht. Wenn es jedoch nicht erforderlich ist, die Rollen der Knoten hervorzuheben oder sie anderweitig voneinander zu unterscheiden, kann jeder der Knoten der gestapelten Vorrichtung 300 allgemein als Knoten oder Mitgliedsknoten bezeichnet werden. In praktischen Implementierungen kann eine andere Anzahl von Knoten als die dargestellten vorhanden sein. Insbesondere umfasst die gestapelte Vorrichtung 300 mindestens drei Knoten: d. h. einen Kommandoknoten 310, einen Mitgliedsknoten 330 und einen dritten Knoten, bei dem es sich um einen Bereitschaftsknoten 320 oder einen anderen Erinnerungsknoten 330 handeln kann. Zusätzlich zu den vorgenannten drei Knoten können ein, zwei oder mehr zusätzliche Knoten vorgesehen sein, die hier als Mitgliedsknoten 330 bezeichnet werden können. Darüber hinaus kann in praktischen Implementierungen keines der Geräte innerhalb der gestapelten Vorrichtung 300 als Bereitschaftsknoten bezeichnet werden, so dass auch kein Bereitschaftsknoten 320 vorhanden sein kann.
  • Der Commander-Knoten 310 ist so konfiguriert, dass er im Auftrag des Stacked Device 200 Operationen auf der Steuerungs- und Verwaltungsebene durchführt. Der Commander-Knoten 310 umfasst einen Uplink-Anschluss, der mit dem Leader-Anschluss 122 des BC 120 (oder dem Leader-Anschluss des GSC 110) verbunden ist und als Follower-Anschluss 311 bezeichnet wird. Der Follower-Anschluss 311 kann ein LAG-Anschluss oder zwei ROPs sein. Der Commander-Knoten 310 umfasst ferner zwei Downlink-Anschlüsse, die mit Mitgliedsgeräten innerhalb des Stacked Device 300 (hier der Standby-Knoten 320 bzw. einer der Mitgliedsknoten 330) verbunden sind und als interne Leader-Anschlüsse 312 bezeichnet werden, sowie einen Downlink-Anschluss, der mit OCs 150 außerhalb des Stacked Device 300 verbunden ist und als externe Leader-Anschlüsse 313 bezeichnet wird. Während in 2 der Kommandoknoten 310 mit nur zwei internen Leader-Anschlüssen 312 und einem externen Leader-Anschluss 313 dargestellt ist, kann der Kommandoknoten 310 in der Praxis eine beliebige Anzahl und Kombination von internen Leader-Anschlüssen 312 und externen Leader-Anschlüssen 313 aufweisen.
  • Der Standby-Knoten 320 umfasst einen Uplink-Anschluss, der mit dem internen Leader-Anschluss 312 des Commander-Knotens 310 verbunden ist und als interner Follower-Anschluss 321 bezeichnet wird. Der Standby-Knoten 320 umfasst ferner einen Downlink-Anschluss, der mit einem Mitgliedsgerät innerhalb des gestapelten Geräts 300 (hier der Mitgliedsknoten 330) verbunden ist und als interner Leader-Anschluss 322 bezeichnet wird, sowie Downlink-Anschlüsse, die mit OCs 150 außerhalb des gestapelten Geräts 300 verbunden sind und als externe Leader-Anschlüsse 323 bezeichnet werden. Während in 3 der Standby-Knoten 320 mit nur einem internen Leader-Anschluss 322 und zwei externen Leader-Anschlüssen 323 dargestellt ist, kann der Standby-Knoten 320 in der Praxis eine beliebige Anzahl und Kombination von internen Leader-Anschlüssen 322 und externen Leader-Anschlüssen 323 aufweisen. Darüber hinaus ist der Standby-Knoten 320 in 3 zwar unmittelbar stromabwärts des Kommandoknotens 310 entlang einer Verzweigung des Rings dargestellt, doch kann in der Praxis jedes beliebige Mitgliedsgerät innerhalb des gestapelten Geräts 300 als Standby-Knoten 320 bezeichnet werden, solange das Mitgliedsgerät in der Lage ist, Software der Steuerebene auszuführen und die anderen Mitgliedsgeräte des gestapelten Geräts 300 zu verwalten.
  • Der Mitgliedsknoten 330 umfasst einen Uplink-Anschluss, der mit dem internen Leader-Anschluss 322 des Standby-Knotens 320 oder Commander-Knotens 310 verbunden ist und als interner Follower-Anschluss 331 bezeichnet wird. Einer der Mitgliedsknoten 330 ist mit einem Downlink-Anschluss dargestellt, der mit einem Mitgliedsgerät innerhalb der gestapelten Vorrichtung 300 (hier der andere Mitgliedsknoten 330) verbunden ist und als interner Leader-Anschluss 332 bezeichnet wird. Die Mitgliedsknoten 330 umfassen außerdem Downlink-Ports, die mit OCs 150 außerhalb des Stacked Device 300 verbunden sind und als externe Leader-Ports 333 bezeichnet werden. Während in 2 die Mitgliedsknoten 320 mit zwei externen Leader-Ports 333 dargestellt sind, können die Mitgliedsknoten 320 in der Praxis eine beliebige Anzahl von externen Leader-Ports 333 aufweisen. Wie oben erwähnt, kann die gestapelte Vorrichtung 300 N Mitgliedsvorrichtungen umfassen. Daher kann jeder der Mitgliedsknoten 320 zusätzliche interne Leader-Ports 332 haben, die mit zusätzlichen Mitgliedseinrichtungen innerhalb der gestapelten Vorrichtung 300 verbunden sind, zum Beispiel in Implementierungen, in denen zusätzliche Mitgliedsknoten 320 vorhanden sind (z. B. N > 4). Ein einzelnes Mitgliedsgerät innerhalb der gestapelten Vorrichtung 300 kann mit einer beliebigen ganzzahligen Anzahl M von OCs 150 verbunden sein, einschließlich Null. Außerdem können verschiedene Mitgliedsgeräte mit einer unterschiedlichen Anzahl M von OCs 150 verbunden sein.
  • Ein Mitglied des VSF-Stapels kann den VSF-Stapel veranlassen, eine Reihe von Operationen zur Zeitfortpflanzung und Synchronisierung durchzuführen. Ein Beispiel für einen solchen Prozessablauf ist in 4 dargestellt. In 4 wird das Mitgliedsgerät, das die Operationen durchführt und/oder die anderen Mitgliedsgeräte veranlasst, Operationen unter seiner Kontrolle durchzuführen, als „primärer Mitgliedsknoten“ bezeichnet, und die übrigen Mitgliedsgeräte werden als „sekundäre Mitgliedsknoten“ bezeichnet. Zur Erläuterung und Veranschaulichung kann der primäre Mitgliedsknoten der Kommandoknoten 210 der in 2 dargestellten kettenverbundenen gestapelten Vorrichtung 200 oder der Kommandoknoten 310 der in 3 dargestellten ringverbundenen gestapelten Vorrichtung 300 sein, und die sekundären Mitgliedsknoten können der Bereitschaftsknoten 220 und der Mitgliedsknoten 230 der in 2 dargestellten kettenverbundenen gestapelten Vorrichtung 200 oder der Bereitschaftsknoten 320 und die Mitgliedsknoten 330 der in 3 dargestellten ringverbundenen gestapelten Vorrichtung 300 sein. Für den Fall, dass die Vorgänge von 4 mit der in 2 dargestellten, kettenverbundenen, gestapelten Vorrichtung 200 implementiert werden, werden verschiedene Vorgänge in Bezug auf 5A-5E weiter dargestellt und beschrieben. Für den Fall, dass die in 4 beschriebenen Vorgänge mit der in 3 dargestellten, ringförmig verbundenen, gestapelten Vorrichtung 300 durchgeführt werden, werden die verschiedenen Vorgänge in den 6A-6E näher erläutert und beschrieben. In den 5A-5E und 6A-6E sind nur die Vorrichtungen, die explizit an dem zu erläuternden Vorgang beteiligt sind, mit Referenznummern gekennzeichnet, um die Erläuterung zu erleichtern. Es versteht sich, dass Elemente, die in den 5A-5E nicht mit Referenznummern gekennzeichnet sind, die gleichen sind wie ihre Gegenstücke in 2, und dass Elemente, die in den 6A-6E nicht mit Referenznummern gekennzeichnet sind, die gleichen sind wie ihre Gegenstücke in 3.
  • Der Prozessablauf von 4 erzeugt eine zusätzliche PTP-Instanz, die intern für den VSF-Stapel ist und sich von der externen PTP-Instanz unterscheidet, die für die PTP-Domäne als Ganzes gilt. Die interne Instanz von PTP wird für die interne Synchronisierung verwendet (z. B. die Synchronisierung zwischen den Mitgliedsgeräten des VSF-Stapels). Vor dem Prozessablauf von 4 kann ein Benutzer oder ein anderes Gerät (z. B. ein Netzwerk-Controller, eine Orchestrierungs-Engine usw.) den VSF-Stack konfigurieren. Dies kann durch die Konfiguration einer Vielzahl von Mitgliedsknoten eines Netzgeräts erfolgen, die für externe Geräte als ein einziges virtuelles Gerät fungieren, so dass das Netzgerät einen primären Mitgliedsknoten zur Durchführung von Operationen auf der Steuerungs- und Verwaltungsebene und eine Vielzahl von sekundären Knoten umfasst, die unter der Kontrolle des primären Mitgliedsknotens arbeiten.
  • Der Prozessablauf von 4 kann beginnen, wenn das vorgeschaltete Gerät (z. B. der BC 120 in 2 oder 3) ein Datenpaket an den VSF-Stack sendet. Da das Datenpaket von einem Punkt außerhalb des VSF-Stapels stammt, kann das Datenpaket als ein erstes externes Datenpaket bezeichnet werden. Das erste externe Datenpaket kann einen ersten externen Zeitstempel von einer externen PTP-Uhr (z. B. vom BC 120) enthalten. Somit empfängt der primäre Mitgliedsknoten bei Vorgang 410 an einem Uplink-Anschluss das erste externe Datenpaket. Wie in 5A dargestellt, überträgt der BC 120 beispielsweise über den Leader-Port 122 ein erstes externes Datenpaket 510 an den Follower-Port 211 des Commander-Knotens 210 des Stacked Device 200. Alternativ dazu überträgt der BC 120, wie in 6A dargestellt, über den Leader-Port 122 ein erstes externes Datenpaket 610 an den Follower-Port 311 des Commander-Knotens 310 des Stacked Device 300.
  • Bei Vorgang 420 synchronisiert der primäre Mitgliedsknoten seine Uhr auf der Grundlage des ersten externen Zeitstempels. Zum Beispiel, wie in 5B dargestellt, konsumiert der Kommandoknoten 210 das erste externe Datenpaket 510 und synchronisiert die Uhr des Kommandoknotens 210 mit der vom GSC bereitgestellten Referenzzeit, wie durch den Zeitstempel im ersten externen Datenpaket 510 angegeben. Alternativ, wie in 6B dargestellt, konsumiert der Kommandoknoten 310 das erste externe Datenpaket 610 und synchronisiert die Uhr des Kommandoknotens 310 mit der vom GSC bereitgestellten Referenzzeit, wie durch den Zeitstempel im ersten externen Datenpaket 610 angegeben. Dieser Vorgang der Uhrensynchronisierung entspricht der externen PTP-Instanz.
  • Anschließend leitet der primäre Mitgliedsknoten die interne PTP-Instanz ein. Beispielsweise erstellt der primäre Mitgliedsknoten für den VSF-Stapel einen oder zwei PTP-Taktbäume über den Stapel, die am primären Mitgliedsknoten beginnen und sich zu jedem Mitglied des Stapels erstrecken. Wenn derVSF-Stapel eine Kettentopologie aufweist, wird ein Baum erstellt, der am primären Mitgliedsknoten beginnt und sich iterativ zu jedem sekundären Mitgliedsknoten fortsetzt. Wenn der VSF-Stapel eine Ringtopologie aufweist, wird ein erster Ring erstellt, der am primären Mitgliedsknoten beginnt und iterativ zu einer Hälfte der N sekundären Mitgliedsknoten in einer Richtung des Rings fortschreitet, und ein zweiter Ring wird erstellt, der am primären Mitgliedsknoten beginnt und iterativ zu der anderen Hälfte der N sekundären Mitgliedsknoten in der anderen Richtung des Rings fortschreitet. Ist N ungerade, kann der stromabwärts gelegene sekundäre Mitgliedsknoten einem der beiden Bäume zugeordnet werden, so dass jeder Baum nicht unbedingt N/2 sekundäre Mitgliedsknoten abdeckt. In beiden Topologien folgen alle VSF-Verbindungen vom primären Mitgliedsknoten abwärts einer PTP-Leader-Follower-Beziehung. Das heißt, der Downlink-VSF-Anschluss des primären Mitgliedsknotens ist ein PTP-Leader-Anschluss und der Uplink-VSF-Anschluss des unmittelbar nachgeschalteten sekundären Mitgliedsknotens ist ein PTP-Follower-Anschluss. So kann der primäre Mitgliedsknoten im Betrieb 430 ein neues internes PTP-Datenpaket erzeugen, das der internen PTP-Instanz entspricht (d. h. das lokal zum VSF-Stapel ist), und es über den PTP-Leader-Anschluss des primären Knotens an den PTP-Follower-Anschluss des sekundären Mitgliedsknotens übertragen, der dem primären Mitgliedsknoten unmittelbar nachgeschaltet ist (oder in einer Ringtopologie an die beiden sekundären Mitgliedsknoten, die unmittelbar nachgeschaltet sind). Das interne PTP-Datenpaket kann einen internen Zeitstempel enthalten, der auf der Uhr des primären Mitgliedsknotens basiert. Der nachgeschaltete sekundäre Mitgliedsknoten synchronisiert dann seine Uhr auf der Grundlage dieses internen PTP-Datenpakets mit dem primären Mitgliedsknoten, der als stapelinterner BC fungiert. Sobald der nachgelagerte sekundäre Mitgliedsknoten seine eigene Uhr synchronisiert hat, wiederholt er den Prozess der Erzeugung eines neuen internen PTP-Datenpakets und sendet es an den nächsten unmittelbaren nachgelagerten Nachbarn, und so weiter, bis alle sekundären Mitgliedsknoten mit der Uhr des primären Mitgliedsknotens synchronisiert worden sind. Dies wird durch die Schleife der Operationen 440-470 in 4 veranschaulicht. Die Schleife der Vorgänge 440-470 beginnt mit dem/den obersten sekundären Mitgliedsknoten.
  • In Vorgang 440 empfängt ein sekundärer Mitgliedsknoten an seinem Uplink-Anschluss ein internes Datenpaket von dem Mitgliedgerät, das dem sekundären Mitgliedsknoten unmittelbar vorgeschaltet ist (d. h. das in Schritt 430 erzeugte interne PTP-Datenpaket oder ein in Schritt 470 erzeugtes internes PTP-Datenpaket, wie unten beschrieben). Das interne Datenpaket enthält einen internen Zeitstempel, der auf der Uhr des Mitgliedsknotens basiert, der dem sekundären Mitgliedsknoten unmittelbar vorgelagert ist. Beim ersten Durchlauf durch die Schleife ist der unmittelbarvorgelagerte Mitgliedsknoten der primäre Mitgliedsknoten. Wie in 5C dargestellt, überträgt beispielsweise der Kommandoknoten 210 über den Leader-Anschluss 212 ein internes Datenpaket 520 an den Follower-Anschluss 221 des Standby-Knotens 210 der gestapelten Vorrichtung 200. Alternativ sendet der Kommandoknoten 310, wie in 6A dargestellt, über die Leader-Anschlüsse 312 interne Datenpakete 620 an den Follower-Anschluss 321 des Standby-Knotens 320 der gestapelten Vorrichtung 300 und an den Follower-Anschluss 331 des Mitgliedsknotens 330 der gestapelten Vorrichtung 300. Bei nachfolgenden Durchläufen durch die Schleife wird der unmittelbar stromaufwärts gelegene Mitgliedsknoten zu einem sekundären Mitgliedsknoten. Wenn der VSF-Stapel eine Ringtopologie implementiert, kann die Schleife für einen Baum (d. h. eine Richtung des Rings) parallel zur Schleife für den anderen Baum (d. h. die andere Richtung des Rings) ausgeführt werden.
  • Als nächstes synchronisiert der sekundäre Mitgliedsknoten bei Vorgang 450 seine Uhr auf der Grundlage des internen Zeitstempels. Zum Beispiel, wie in 5D dargestellt, konsumiert der Standby-Knoten 220 das interne Paket 520 und synchronisiert die Uhr des Standby-Knotens 220 mit der vom Kommandoknoten 210 bereitgestellten Zeit, wie durch den Zeitstempel im internen Paket 520 angegeben. Alternativ dazu konsumieren der Standby-Knoten 320 und der Mitgliedsknoten 330, wie in 6D dargestellt, die internen Datenpakete 620 und synchronisieren ihre Uhren mit der vom Commander-Knoten 310 bereitgestellten Zeit, wie durch den Zeitstempel in den internen Datenpaketen 620 angegeben. Dies ist eine interne PTP-Instanz-Taktsynchronisierung. Bei Operation 460 bestimmt der Prozessablauf, ob alle sekundären Mitgliedsknoten die Schleife abgeschlossen haben (d.h. ob alle sekundären Mitgliedsknoten ihre Uhren synchronisiert haben). In einigen Beispielen kann diese Feststellung getroffen werden, ohne dass der Fortschritt der anderen Mitgliedsknoten abgefragt oder verfolgt werden muss; beispielsweise können die sekundären Mitgliedsknoten ihre Position innerhalb des/derVerteilungsbaums/Verteilungsbäume kennen, so dass ein letzter Knoten in dem/den Baum/Verteilungsbäumen automatisch wissen kann, dass, sobald er sich selbst synchronisiert hat, keine weiteren internen PTP-Nachrichten erforderlich sind, und umgekehrt können Zwischenknoten in dem Baum automatisch wissen, dass sie neue PTP-Nachrichten stromabwärts senden müssen. Wird durch Operation 460 festgestellt, dass alle sekundären Knoten die Schleife nicht abgeschlossen haben, geht der Prozessfluss zu Operation 470 über, in der der aktuelle sekundäre Knoten ein neues internes PTP-Datenpaket erzeugt und dieses Paket an den nächsten nachgeschalteten sekundären Knoten sendet. Der Prozess wird dann zum nächsten sekundären Mitgliedsknoten fortgesetzt (d. h. dem Knoten, an den das Datenpaket gerade in Vorgang 470 gesendet wurde) und wiederholt die Vorgänge 440-460 für den nächsten sekundären Mitgliedsknoten. Die Schleife wird fortgesetzt, bis durch Vorgang 456 festgestellt wird, dass alle sekundären Mitgliedsknoten die Schleife abgeschlossen haben; zu diesem Zeitpunkt kann der Prozessablauf feststellen, dass der PTP-Taktbaum sein Ende erreicht hat (oder in einer Ringtopologie endet). Auf diese Weise stellt der Prozessablauf sicher, dass alle angeschlossenen Geräte einen Taktsynchronisationsvorgang durchgeführt haben.
  • Die oben genannten Synchronisationsvorgänge innerhalb des Stapels werden auf der Grundlage der ausgetauschten Datenpakete durchgeführt, unabhängig davon, ob es sich bei der Synchronisation um einen externen Synchronisationsvorgang (zwischen einem stromaufwärts gelegenen Gerät außerhalb des VSF-Stapels und dem primären Mitgliedsknoten) oder um einen internen Synchronisationsvorgang (zwischen zwei Geräten innerhalb des VSF-Stapels) handelt. Die Synchronisationsvorgänge innerhalb des VSF-Stapels können den Synchronisationsvorgängen, die vollständig außerhalb des VSF-Stapels durchgeführt werden (z. B. innerhalb des GSC 110 und des BC 120, wie in 1 dargestellt), gleich oder ähnlich sein. In beiden Fällen kann das Gerät, das das Datenpaket sendet, als führendes Gerät und das Gerät, dessen Uhr synchronisiert wird, als nachfolgendes Gerät bezeichnet werden. Auf der Grundlage der Synchronisierungsnachrichten in den ausgetauschten Datenpaketen berechnet das Folgegerät die Umlaufverzögerung des Pfades zum führenden Gerät. Die Einwegverzögerung entspricht der Hälfte der Round-Trip-Verzögerung, wobei davon ausgegangen wird, dass die Verzögerungen in beiden Richtungen gleich groß sind. Das Folgegerät synchronisiert dann seine Uhr mit der Uhr des Führungsgeräts entsprechend dem Versatz zwischen den Uhren. Die Synchronisierung kann nach einem Anfrage-Antwort-Mechanismus, wie in 7A dargestellt, oder nach einem Peer-Delay-Mechanismus, wie in 7B dargestellt, durchgeführt werden. Der Anfrage-Antwort-Mechanismus kann für die Peer-to-Peer-Verzögerungsmessung verwendet werden, während der Peer-Delay-Mechanismus für die Punktzu-Punkt-Verzögerungsmessung verwendet werden kann.
  • In dem Anfrage-Antwort-Mechanismus von 7A ist ein Kommunikationsfluss zwischen einem führenden Gerät 710 und einem nachfolgenden Gerät 720 in einem zweistufigen Modus dargestellt. Zunächst sendet das führende Gerät 710 eine Synchronisationsnachricht 711 an das nachfolgende Gerät 720 und zeichnet die Sendezeit t1 auf. Nach dem Empfang der Synchronisationsnachricht 711 zeichnet das nachfolgende Gerät 720 die Empfangszeit t2 auf. Nach dem Senden der Synchronisationsnachricht 711 sendet das führende Gerät 710 sofort eine Folgemeldung 712 mit der Zeit t1 . Nach dem Empfang der Folgenachricht 712 sendet das Folgegerät 720 eine Verzögerungsanforderungsnachricht 721, um die Übertragungsverzögerung in umgekehrter Richtung zu berechnen, und zeichnet die Sendezeit t3 auf. Nach dem Empfang der Verzögerungsanforderungsnachricht 721 zeichnet das Führungsgerät 710 die Empfangszeit t4 auf. Das Führungsgerät 710 sendet dann eine Verzögerungsantwortnachricht 713 mit der Zeit t4 an das Folgegerät 720. Nach dem Empfang der Verzögerungsnachricht 713 verfügt das Folgegerät 720 über ausreichende Informationen (nämlich die Zeiten t1, t2, t3 und t4), um die Hin- und Rücklaufzeit zu berechnen. 7A zeigt einen zweistufigen Modus. Alternativ kann auch ein einstufiger Modus verwendet werden, bei dem t1 in der Synchronisationsnachricht 711 enthalten ist und die Folgemeldung 712 nicht gesendet wird.
  • Im Peer-Delay-Mechanismus von 7B wird ein Kommunikationsfluss im Zeitverlauf zwischen einem Leader-Gerät 730 und einem Follower-Gerät 740 in einem zweistufigen Modus dargestellt. Zunächst sendet das führende Gerät 730 eine Synchronisationsnachricht 731 an das nachfolgende Gerät 740 und zeichnet die Sendezeit t1 auf. Nach dem Empfang der Synchronisationsnachricht 731 zeichnet das nachfolgende Gerät 740 die Empfangszeit t2 auf. Nach dem Senden der Synchronisationsnachricht 731 sendet das führende Gerät 730 sofort eine Folgenachricht 732 mit der Zeit t1. Nach dem Empfang der Folgenachricht 732 sendet das Folgegerät 740 eine Peer-Delay-Request-Nachricht 741, um die Übertragungsverzögerung in umgekehrter Richtung zu berechnen, und zeichnet die Sendezeit t3 auf. Nach dem Empfang der Peer-Delay-Request-Nachricht 741 zeichnet das Führungsgerät 720 die Empfangszeit t4 auf. Das führende Gerät 730 sendet dann eine Peer-Delay-Response-Nachricht 743 mit der Zeit t4 an das nachfolgende Gerät 740 und zeichnet die Sendezeit t5 auf. Nach dem Empfang der Peer-Delay-Response-Nachricht 743 zeichnet das nachfolgende Gerät 740 die Empfangszeit t6 auf. Nach dem Senden der Peer-Delay-Response-Nachricht 733 sendet das Leader-Gerät 730 sofort eine Peer-Delay-Response-Follow-up-Nachricht 734 mit der Zeit t5. Nach dem Empfang der Peer-Delay-Response-Follow-up-Nachricht 734 verfügt das Follower-Gerät 740 über ausreichende Informationen (nämlich die Zeiten t1, t2, t3, t4, t5 und t6 ), um die Round-Trip-Verzögerung zu berechnen. 7A zeigt einen zweistufigen Modus. Alternativ kann auch ein einstufiger Modus verwendet werden, bei dem t1 stattdessen in der Synchronisationsnachricht 711 übertragen und die Folgemeldung 712 nicht gesendet wird, und bei dem der Versatz zwischen t4 und t5 stattdessen in der Peer-Delay-Response-Nachricht 733 übertragen und die Peer-Delay-Response-Follow-up-Nachricht 734 nicht gesendet wird.
  • Jeder Synchronisationsvorgang innerhalb der Schleife durch den VSF-Stapel kann unabhängig voneinander durchgeführt werden, um die Genauigkeit des Synchronisationsprozesses zu verbessern. Die interne PTP-Instanzwird auf jedem Mitgliedsgerät des VSF-Stapels ausgeführt. Innerhalb des VSF-Stapelsverwenden die Mitgliedsgeräte ihre interne eindeutige Mitgliedsnummer (z. B. eine lokale MAC oder eine stapellokale IP) in PTP-Paketen, dajedes Mitgliedsgerätdes PTP-Stapels eine eindeutige PTP-Uhreneinheit ist.
  • Sobald die Schleife beendet ist, alle Synchronisierungsvorgänge innerhalb der internen PTP-Instanz abgeschlossen sind und alle sekundären Mitgliedsknoten mit dem primären Mitgliedsknoten taktsynchronisiert wurden, kann derVSF-Stapel mit der Weitergabe von Zeitstempeln an nachgelagerte Netzwerkgeräte, wie die OCs und/oder nachgelagerte BCs, beginnen. Somit geht der Prozessfluss zu Vorgang 470 über. In Vorgang 470 übertragen alle Teilnehmergeräte, an die nachgeschaltete externe Netzwerkgeräte angeschlossen sind (d. h. der primäre Teilnehmerknoten und/oder die jeweiligen der mehreren zweiten Teilnehmerknoten), von den jeweiligen Downlink-Anschlüssen der Teilnehmergeräte eine entsprechende Anzahl zweiter externer Datenpakete. Die Anzahl der zweiten externen Datenpakete entspricht der Anzahl der nachgeschalteten externen Netzwerkgeräte. Die zweiten externen Datenpakete können jeweils zweite externe Zeitstempel enthalten, die auf der synchronisierten Uhr des übertragenden Mitgliedsknotens basieren.
  • Zum Beispiel, wie in 5E dargestellt ist, überträgt der Kommandoknoten 210 über seine externen Leader-Anschlüsse 213 zweite externe Datenpakete 530 an die Follower-Anschlüsse 151 aller mit dem Kommandoknoten 210 verbundenen OCs 150; der Standby-Knoten 220 überträgt über seine externen Leader-Anschlüsse 223 zweite externe Datenpakete 530 an die Follower-Anschlüsse 151 aller mit dem Standby-Knoten 220 verbundenen OCs 150; und der Mitgliedsknoten 230 überträgt über seine externen Leader-Anschlüsse 232 zweite externe Datenpakete 530 an die Follower-Anschlüsse aller mit dem Mitgliedsknoten 230 verbundenen OCs 150. Alternativ dazu, wie in 6E dargestellt ist, überträgt der Kommandoknoten 310 über seine externen Leader-Anschlüsse 313 zweite externe Datenpakete 630 an die Follower-Anschlüsse 151 aller mit dem Kommandoknoten 310 verbundenen OCs; der Standby-Knoten 320 überträgt über seine externen Leader-Anschlüsse 323 zweite externe Datenpakete 630 an die Follower-Anschlüsse aller mit dem Standby-Knoten 220 verbundenen OCs 150; und die Mitgliedsknoten 330 übertragen über ihre externen Leader-Anschlüsse 333 zweite externe Datenpakete 630 an die Follower-Anschlüsse 151 aller mit den Mitgliedsknoten 330 verbundenen OCs 150.
  • Somit läuft die externe PTP-Instanz für die OCs 150, die mit jedem Mitgliedsgerät im Stacked Device 200 oder 300 verbunden sind, auf jedem Mitgliedsgerät. Das Mitgliedgerät funktioniert wie ein BC und verwendet seine lokale Uhr als Referenz, wenn es PTP-Rahmen von seinen lokalen Ports erzeugt. Wenn der Client ein P2P- oder Peer-Delay-Messpaket sendet, verarbeitet das Mitgliedsgerät dieses lokal und muss kein internes PTP-Paket an den primären Mitgliedsknoten senden. Die externe PTP-Instanz verwendet die MAC/IP-Adresse des gestapelten Geräts 200 oder 300 selbst, und daher enthalten die jeweiligen zweiten externen Datenpakete eine Adresse, die dem gestapelten Gerät als Ganzes entspricht, so dass es den Anschein hat, dass die PTP-Rahmen vom gestapelten Gerät 200 oder 300 und nicht von einem einzelnen Mitgliedsgerät stammen. Mit den Vorgängen in 4 kann ein gestapeltes Netzgerät als BC eines nach PTP arbeitenden Netzes betrieben werden.
  • In anderen Beispielen (nicht abgebildet) wird nicht gewartet, bis alle sekundären Mitgliedsknoten ihre Synchronisierung abgeschlossen haben, bevor ein Mitgliedsknoten externe PTP-Datenpakete an die jeweils angeschlossenen OCs 150 oder andere externe nachgeschaltete Geräte sendet, sondern jeder einzelne Knoten innerhalb der gestapelten Vorrichtung 200 oder 300 kann damit beginnen, externe PTP-Datenpakete an seine eigenen angeschlossenen OCs 150 oder andere externe nachgeschaltete Geräte zu senden, sobald dieser bestimmte Knoten seine eigene Synchronisierung abgeschlossen hat. Knoten, die noch nicht synchronisiert wurden, können warten, bis sie synchronisiert sind, bevor sie mit dem Senden von externen PTP-Datenpaketen beginnen. In diesen Beispielen können die OCs 150 also externe PTP-Datenpakete von dem gestapelten Gerät zu unterschiedlichen Zeitpunkten empfangen,je nachdem, mit welchem bestimmten Knoten die OCs 150 verbunden sind.
  • Wie bereits erwähnt, ermöglicht VSF, dass ein Gerät in einem gestapelten Netzwerkgerät als Reserveknoten benannt wird, um Kontrollvorgänge durchzuführen, falls der Kommandoknoten nicht mehr verfügbar ist. 8 zeigt einen beispielhaften Prozessablauf für die Zeitübertragung und Synchronisierung in einem solchen Fall. Ein Beispiel für die in 8 dargestellten Vorgänge wird in den 9A-9C weiter dargestellt und beschrieben, in denen derVSF-Stapel eine Kettentopologie verwendet, wie das in 2 dargestellte kettenverbundene gestapelte Gerät 200. Es versteht sich jedoch von selbst, dass die Vorgänge von 8 auch in einem VSF-Stapel implementiert werden können, der eine Ringtopologie verwendet, wie die in 3 dargestellte ringverbundene gestapelte Vorrichtung 300. In 9A-9C sind nur die Vorrichtungen, die explizit an dem zu erklärenden Vorgang beteiligt sind, mit Referenznummern gekennzeichnet, um die Erklärung zu erleichtern. Darüber hinaus werden zur Erläuterung die Vorgänge in 8 so beschrieben, als würden sie vom Standby-Knoten 320 als Beispiel für ein Gerät ausgeführt, das für die Durchführung von Steuerungsvorgängen für den Fall bestimmt wurde, dass der primäre Mitgliedsknoten nicht mehr verfügbar ist.
  • Vor dem Vorgang 810 kann die PTP-Domäne die in 9A dargestellte Konfiguration aufweisen. 9A ähnelt der in 2 dargestellten Konfiguration, mit der Ausnahme, dass der BC 120 einen zusätzlichen Downlink-Port, den so genannten Standby-Leader-Port 910, und der Standby-Knoten 220 einen zusätzlichen Uplink-Port, den so genannten Standby-Follower-Port 921, aufweist. Der Standby-Folger-Port 921 kann ein LAG-Port oder Dual-ROPs sein. Der Standby-Leader-Anschluss 910 und der Standby-Follower-Anschluss 921 sind über eine Verbindung miteinander verbunden, die so lange inaktiv bleiben kann, wie der Commander-Knoten 210 funktionsfähig bleibt. Handelt es sich bei dem Standby-Follower-Port 921 und dem Follower-Port 211 um LAG-Ports, kann die Verbindung zwischen dem BC 120 und dem Commander-Knoten 210 sowohl auf dem Stacked Device 200 als auch auf dem BC 120 als „primäre“ Verbindung konfiguriert werden, so dass die vom BC 120 übertragenen PTP-Pakete zu diesem Zeitpunkt direkt den Commander-Knoten 210 und nicht den Standby-Knoten 220 erreichen. Handelt es sich bei dem Standby-Folger-Port 921 und dem Follower-Port 211 um ROPs, kann die interne PTP-Instanz die Verbindung zwischen dem BC 120 und dem Commander-Knoten 210 als Verbindung mit höherer Priorität wählen (im Vergleich zur Verbindung zwischen dem BC 120 und dem Standby-Knoten 220).
  • Bei Vorgang 810 stellt der Prozessablauf fest, dass im primären Mitgliedsknoten (z. B. dem Kommandoknoten 210) ein Fehler aufgetreten ist. Wenn beispielsweise der primäre Mitgliedsknoten abstürzt oder ausfällt, kann die Verbindung zwischen dem GSC und dem primären Mitgliedsknoten und die Verbindung zwischen dem primären Mitgliedsknoten und dem Ersatzmitgliedsknoten nicht mehr in der Lage sein, Datenpakete zu übertragen. Daraufhin wird der Ersatzknoten (d. h. der sekundäre Mitgliedsknoten, der zuvor als Ersatzknoten für den Fall eines Fehlers im primären Mitgliedsknoten bestimmt wurde) als primärer Mitgliedsknoten des VSF-Stapels fungieren. Dies kann dadurch erreicht werden, dass der Ersatzmitgliedsknoten so befördert wird, dass er die zuvor vom primären Mitgliedsknoten durchgeführten Operationen ausführt, einschließlich, aber nicht beschränkt auf Operationen, die denen in 4 ähneln. Wie in 8 dargestellt, umfassen diese Vorgänge nach der Fehlererkennung den Vorgang 820, bei dem der Standby-Mitgliedsknoten an seinem Uplink-Anschluss mit dem Empfang dritter externer Datenpakete beginnt, die, nachdem sie von derselben GSC übertragen wurden, den ersten externen Zeitstempel enthalten. Bei Vorgang 830 synchronisiert der Ersatzmitgliedsknoten seine Uhr auf der Grundlage des ersten externen Zeitstempels. Dies ist eine externe PTP-Instanz-Taktsynchronisierung.
  • Nun ist es der Standby-Mitgliedsknoten, der die interne PTP-Instanz durchführt. So erstellt der Ersatzmitgliedsknoten für den VSF-Stapel einen oder zwei PTP-Taktbäume über den Stapel, die am primären Mitgliedsknoten beginnen und sich bis zu jedem Mitglied des Stapels mit Ausnahme des nun nicht mehr verfügbaren primären Mitgliedsknotens erstrecken. Weist der VSF-Stapel eine Kettentopologie auf, wird ein Baum erstellt, der am Standby-Mitgliedsknoten beginnt und sich iterativ nacheinander zu jedem sekundären Mitgliedsknoten (mit Ausnahme des Standby-Mitgliedsknotens) fortsetzt. Wenn derVSF-Stapel eine Ringtopologie aufweist, wird ein erster Ring erstellt, der am Bereitschaftsmitgliedsknoten beginnt und iterativ zu einer Hälfte der N sekundären Mitgliedsknoten in einer Richtung des Rings fortschreitet, und ein zweiter Ring wird erstellt, der am Bereitschaftsmitgliedsknoten beginnt und iterativ zu der anderen Hälfte der N sekundären Mitgliedsknoten in der anderen Richtung des Rings fortschreitet. Wenn N ungerade ist, kann der stromabwärts gelegene sekundäre Mitgliedsknoten einem der beiden Bäume zugewiesen werden, so dass jeder Baum nicht unbedingt N/2 sekundäre Mitgliedsknoten abdeckt. In beiden Topologien folgen alle VSF-Verbindungen vom Standby-Mitgliedsknoten abwärts einer PTP-Leader-Follower-Beziehung. Das heißt, der Downlink-VSF-Anschluss des Ersatzknotens ist ein PTP-Leader-Anschluss und der Uplink-VSF-Anschluss des unmittelbar nachgeschalteten sekundären Mitgliedsknotens ist ein PTP-Follower-Anschluss. Der Bereitschaftsmitgliedsknoten kann den nachgeschalteten sekundären Mitgliedsknoten veranlassen, seine Uhr mit dem Bereitschaftsmitgliedsknoten zu synchronisieren, der als stapelinterner BC fungiert. Sobald der nachgelagerte sekundäre Mitgliedsknoten seine eigene Uhr synchronisiert hat, wiederholt er den Vorgang mit seinem unmittelbaren nachgelagerten Nachbarn und so weiter, bis alle sekundären Mitgliedsknoten mit der Uhr des Standby-Mitgliedsknotens synchronisiert sind. Dies wird durch die Schleife der Vorgänge 840-870 in 8 veranschaulicht. Die Schleife der Vorgänge 840-870 beginnt mit dem sekundären Mitglieds knoten unmittelbar unter dem Ersatzmitgliedsknoten.
  • In Vorgang 840 empfängt ein sekundärer Mitgliedsknoten an seinem Uplink-Anschluss ein internes Datenpaket von dem Mitgliedgerät, das dem sekundären Mitgliedsknoten unmittelbar vorgeschaltet ist. Das interne Datenpaket enthält einen internen Zeitstempel, der auf der Uhr des Mitgliedsknotens basiert, der dem sekundären Mitgliedsknoten unmittelbar vorgelagert ist. Beim ersten Durchlauf durch die Schleife ist der unmittelbar stromaufwärts gelegene Mitgliedsknoten der Bereitschaftsmitgliedsknoten. Bei späteren Durchläufen durch die Schleife ist der unmittelbar vorgelagerte Mitgliedsknoten ein anderer sekundärer Mitgliedsknoten. Wenn derVSF-Stapel eine Ringtopologie implementiert, kann die Schleife für einen Baum (d. h. eine Richtung des Rings) parallel zur Schleife für den anderen Baum (d. h. die andere Richtung des Rings) durchgeführt werden. Als nächstes synchronisiert der sekundäre Mitgliedsknoten bei Vorgang 850 seine Uhr auf der Grundlage des internen Zeitstempels. Dies ist eine interne PTP-Instanz-Taktsynchronisierung. Bei Vorgang 860 bestimmt der Prozessablauf, ob alle sekundären Mitgliedsknoten die Schleife abgeschlossen haben (d.h. ob alle sekundären Mitgliedsknoten ihre Uhren synchronisiert haben). Wenn Operation 860 feststellt, dass nicht alle sekundären Mitgliedsknoten die Schleife abgeschlossen haben, fährt der Prozessfluss mit Operation 870 zum nächsten sekundären Mitgliedsknoten fort und wiederholt die Operationen 840-860 für den nächsten sekundären Mitgliedsknoten. Die Schleife wird fortgesetzt, bis der Vorgang 860 feststellt, dass alle sekundären Mitgliedsknoten die Schleife abgeschlossen haben, woraufhin der Prozessablauf feststellen kann, dass der PTP-Taktbaum sein Ende erreicht hat (oder in einer Ringtopologie endet). Auf diese Weise stellt der Prozessablauf sicher, dass alle angeschlossenen Geräte einen Taktsynchronisationsvorgang durchgeführt haben.
  • Sobald die Schleife beendet ist, alle Synchronisierungsvorgänge innerhalb der internen PTP-Instanz abgeschlossen sind und alle sekundären Mitgliedsknoten mit dem Standby-Mitgliedsknoten taktsynchronisiert wurden, kann der VSF-Stapel mit der Weitergabe von Zeitstempeln an nachgelagerte Netzwerkgeräte, wie die OCs und/oder nachgelagerte BCs, beginnen. Somit geht der Prozessfluss zu Vorgang 880 über. In Vorgang 880 übertragen alle Teilnehmergeräte, an die nachgeschaltete externe Netzwerkgeräte angeschlossen sind (d. h. der Standby-Teilnehmerknoten und/oder die jeweiligen verbleibenden zweiten Teilnehmerknoten), von den jeweiligen Downlink-Anschlüssen der Teilnehmergeräte eine entsprechende Anzahl zweiter externer Datenpakete. Die Anzahl der zweiten externen Datenpakete entspricht der Anzahl der nachgeschalteten externen Netzgeräte. Die zweiten externen Datenpakete können jeweils zweite externe Zeitstempel enthalten, die auf der synchronisierten Uhr des übertragenden Mitgliedsknotens basieren.
  • Als Beispiel zeigt 9B eine Konfiguration der PTP-Domäne während der Vorgänge 810-880, d. h. nachdem der primäre Mitgliedsknoten ausgefallen ist. In 9B ist das Mitgliedsgerät, das zuvor als primärer Mitgliedsknoten fungierte und nun als Ex-Commander-Knoten 930 bezeichnet wird, ausgefallen. Infolgedessen ist seine Verbindung zum Leader-Port 122 des BC 120 und zum Follower-Port 221 des Standby-Knotens 220 nicht funktionsfähig. Da der Fehler erkannt wurde, wird der Reserveknoten 220 zum neuen Kommandoknoten 920. Die Verbindung zwischen dem Standby-Leader-Anschluss 910 des BC 120 und dem Standby-Follower-Anschluss 921 des neuen Commander-Knotens 920 ist aktiv.
  • Zu einem späteren Zeitpunkt kann der primäre Mitgliedsknoten wieder verfügbar werden (z. B. kann er neu starten und wieder online gehen). DerVSF-Stapel kann erkennen, dass der Fehler im primären Mitgliedsknoten behoben wurde, und anschließend dem primären Mitgliedsknoten erlauben, wieder am VSF-Stapel teilzunehmen, ohne die Kontrolle an den primären Mitgliedsknoten zurückzugeben. So kann der primäre Mitgliedsknoten nach der Erkennung an seinem Uplink-Anschluss ein internes Datenpaket von dem Mitgliedsknoten empfangen, der dem primären Mitgliedsknoten gemäß dem überarbeiteten Baum unmittelbar vorgelagert ist. Das interne Datenpaket enthält einen internen Zeitstempel, der auf der Uhr des dem primären Mitgliedsknoten unmittelbar vorgelagerten Mitgliedsgeräts basiert. Der primäre Mitgliedsknoten kann dann seine Uhr auf der Grundlage des internen Zeitstempels synchronisieren. Nachdem der primäre Mitgliedsknoten und alle sekundären Mitgliedsknoten ihre Uhren synchronisiert haben, kann der primäre Mitgliedsknoten von seinem Downlink-Anschluss aus die zweiten externen Datenpakete an die daran angeschlossenen externen Netzwerkgeräte übertragen.
  • Eine beispielhafte Konfiguration der PTP-Domäne nach der Wiederinbetriebnahme des ehemaligen Befehlshabers ist in 9C dargestellt. Zu diesem Zeitpunkt kann der ehemalige Befehlshaberknoten 930 zu einem neuen Standby-Knoten 940 werden. In diesem Fall synchronisiert er seine Zeit nicht direkt mit dem GSC 110 und/oder dem BC 120, obwohl er eine Verbindung dazu hat, sondern er synchronisiert sich mit dem neuen Commander-Knoten 920 des Stacked Device 200. Die Resynchronisierung kann direkt erfolgen, wenn der neue Standby-Knoten 940 direkt mit dem neuen Commander-Knoten 920 verbunden ist, oder transitiv, wenn der neue Standby-Knoten 940 mit dem neuen Commander-Knoten 920 über ein Zwischengerät verbunden ist. Sobald der neue Standby-Knoten 940 mit dem neuen Commander-Knoten 920 taktsynchronisiert wurde, können die PTP-Taktbäume innerhalb des gestapelten Netzwerkgeräts 200 wie zuvor rekonstruiert werden, ohne Auswirkungen auf die nachgeschalteten Endpunkte (z. B. OCs 150).
  • Die hier beschriebenen beispielhaften Systeme und Verfahren können unter der Kontrolle eines Verarbeitungssystems ausgeführt werden, das computerlesbare Codes ausführt, die auf einem nichttransitorischen computerlesbaren Aufzeichnungsmedium verkörpert sind, oder Kommunikationssignale, die über ein transitorisches Medium übertragen werden. Bei dem computerlesbaren Aufzeichnungsmedium kann es sich um ein beliebiges Datenspeichergerät handeln, das Daten speichern kann, die von einem Verarbeitungssystem gelesen werden können, und es kann sowohl flüchtige als auch nichtflüchtige Medien, entfernbare und nicht entfernbare Medien sowie Medien umfassen, die von einer Datenbank, einem Computer und verschiedenen anderen Netzwerkgeräten gelesen werden können. In Übereinstimmung mit der vorliegenden Offenbarung kann ein nichttransitorisches computerlesbares Medium Anweisungen speichern, die bei Ausführung durch einen elektronischen Prozessor (z. B. einen elektronischen Prozessor einer der oben beschriebenen Vorrichtungen) die Durchführung der hierin beschriebenen Vorgänge bewirken. 10A-10B zeigen ein beispielhaftes Verarbeitungssystem 1000 gemäß der vorliegenden Offenbarung. Die 10A-10B sind nur der Einfachheit halber separat dargestellt, und in einigen Ausführungsformen können die 10A-10B einfach verschiedene Aspekte desselben beispielhaften Verarbeitungssystems 1000 zeigen.
  • Das Verarbeitungssystem 1000 kann mit einem oder mehreren der oben beschriebenen Netzwerkgeräte korrespondieren, einschließlich aber nicht mit dem in 2 dargestellten gestapelten Gerät 200 oder dem in 3 dargestellten gestapelten Gerät 300. In einigen Beispielen kann das Verarbeitungssystem 1000 einem oder mehreren der Knoten innerhalb eines der oben beschriebenen Netzwerkgeräte entsprechen (z. B. dem Kommandoknoten 210 der 2 und 9A, dem Standby-Knoten 220 der 2 und 9A, dem Kommandoknoten 310 der 3, dem Standby-Knoten 320 der 3, dem neuen Kommandoknoten 920 der 9B-9C und/oder dem neuen Standby-Knoten 940 der 9C).
  • Wie in 10A-10B gezeigt, umfasst das Verarbeitungssystem 1000 mindestens einen Prozessor 1010 (wie dargestellt, drei), der operativ mit einem Speicher verbunden ist, der als computerlesbares Speichermedium 1020 implementiert ist. Der mindestens eine Prozessor 1010 kann ein oder mehrere elektronische Verarbeitungskerne sein oder umfassen, die operativ miteinander verbunden und so konfiguriert sind, dass sie in dem computerlesbaren Speichermedium 1020 gespeicherte Anweisungen ausführen. Verschiedene Prozessoren 1010 können in demselben Netzwerkgerät enthalten oder über verschiedene Netzwerkgeräte verteilt sein. So kann beispielsweise ein erster Prozessor 1010 in einem ersten Mitgliedsknoten (z. B. einem Kommandoknoten) und ein zweiter Prozessor 1010 in einem zweiten Mitgliedsknoten (z. B. einem Standby-Knoten und/oder einem anderen Mitgliedsknoten) enthalten sein. Das computerlesbare Speichermedium 1020 kann als mehrere verschiedene Medien implementiert werden, die in demselben Netzwerkgerät enthalten oder über verschiedene Netzwerkgeräte verteilt sind. Das computerlesbare Speichermedium 1020 kann ein nicht-transitorisches computerlesbares Medium oder ein verteiltes Medium sein, das Anweisungen speichert, die, wenn sie von dem mindestens einen Prozessor 1010 oder einer Teilmenge davon ausgeführt werden, das Verarbeitungssystem 1000 veranlassen, verschiedene Operationen durchzuführen.
  • Im Beispiel von 10A umfassen die Anweisungen Anweisungen zum Empfangen 1021 (z.B. Anweisungen, die einen ersten Mitgliedsknoten veranlassen, ein erstes externes Datenpaket am PTP-Follower-Anschluss des ersten Mitgliedsknotens zu empfangen), Anweisungen zum Synchronisieren einer Uhr 1022 (z.B. Anweisungen, die den ersten Mitgliedsknoten veranlassen, die Uhr des ersten Mitgliedsknotens unter Verwendung eines PTP-Zeitstempels, der in dem ersten externen Datenpaket enthalten ist, zu synchronisieren), Anweisungen, die zweite Knoten veranlassen, eine interne Taktsynchronisation 1023 durchzuführen (z.B., Anweisungen, um jeden zweiten Knoten zu veranlassen, an dem PTP-Follower-Anschluss des jeweiligen zweiten Mitgliedsknotens ein internes Datenpaket von dem PTP-Leader-Anschluss eines Mitgliedsknotens unmittelbar stromaufwärts des jeweiligen zweiten Mitgliedsknotens zu empfangen, wobei das interne Datenpaket einen internen PTP-Zeitstempel auf der Grundlage der Uhr des Mitgliedsknotens unmittelbar stromaufwärts des jeweiligen zweiten Mitgliedsknotens enthält, und eine Uhr des jeweiligen zweiten Mitgliedsknotens auf der Grundlage des internen Zeitstempels des internen Datenpakets zu synchronisieren), und Anweisungen, um 1024 zu übertragen (z.B., Anweisungen, um nach der internen Taktsynchronisation die Netzwerkvorrichtung 1000 zu veranlassen, von den jeweiligen PTP-Leader-Anschlüssen des ersten Mitgliedsknotens und/oder den jeweiligen aus der Vielzahl der zweiten Mitgliedsknoten an eine Vielzahl von stromabwärts gelegenen Vorrichtungen eine entsprechende Anzahl von zweiten externen Datenpaketen zu übertragen).
  • Im Beispiel von 10B enthalten die Anweisungen Anweisungen zum Konfigurieren 1025 (z.B. Anweisungen, um einen primären Mitgliedsknoten zu veranlassen, eine Vielzahl von Mitgliedsknoten eines gestapelten Netzwerkgeräts so zu konfigurieren, dass es für externe Geräte als ein einziges virtuelles Gerät fungiert, wobei die Vielzahl von Mitgliedsknoten den primären Mitgliedsknoten und eine Vielzahl von sekundären Mitgliedsknoten umfasst, die durch Mitgliederverbindungen miteinander verbunden sind, um Datenebenenverkehr auszutauschen, wobei der primäre Mitgliedsknoten so konfiguriert ist, dass er Steuerungs- und Verwaltungsebenenoperationen im Namen des gestapelten Netzwerkgeräts durchführt), Anweisungen zum Empfangen 1026 (z.B., Anweisungen, um den primären Mitgliedsknoten zu veranlassen, an einem Uplink-Port des primären Mitgliedsknotens ein erstes externes PTP-Datenpaket zu empfangen, das einen ersten externen Zeitstempel von einer externen Uhrvorrichtung enthält, die gemäß einer externen PTP-Domäne arbeitet), Anweisungen, um die Uhr zu synchronisieren 1027 (z.B. Anweisungen, um den primären Mitgliedsknoten zu veranlassen, eine Uhr des primären Mitgliedsknotens basierend auf dem ersten externen Zeitstempel zu synchronisieren), Anweisungen, um ein internes Paket zu erzeugen 1028 (z.B., Anweisungen, um den primären Mitgliedsknoten zu veranlassen, ein internes PTP-Datenpaket gemäß einer internen Instanz von PTP zu erzeugen, die lokal zu dem ersten gestapelten Netzwerkgerät ist, wobei das interne PTP-Datenpaket einen internen Zeitstempel basierend auf der Uhr des primären Mitgliedsknotens enthält), Anweisungen, um das interne Paket 1029 zu übertragen (z.B., Anweisungen, um den primären Mitgliedsknoten zu veranlassen, das interne Datenpaket von einem Downlink-Anschluss des primären Mitgliedsknotens zu einem Uplink-Anschluss des sekundären Mitgliedsknotens unmittelbar stromabwärts des primären Mitgliedsknotens zu übertragen), und Anweisungen, um eine externe Übertragung 1030 zu veranlassen (z. B, Anweisungen, um den primären Mitgliedsknoten zu veranlassen, eine Übertragung von einem oder mehreren Downlink-Anschlüssen des primären Mitgliedsknotens und/oder jeweiligen der mehreren sekundären Mitgliedsknoten an eine oder mehrere stromabwärts gelegene externe Vorrichtungen einer entsprechenden Anzahl von zweiten externen Datenpaketen zu veranlassen, wobei die zweiten externen Datenpakete jeweils einen zweiten externen Zeitstempel auf der Grundlage der synchronisierten Uhr des primären Mitgliedsknotens enthalten). Wie oben erwähnt, kann eine einzelne Instanz des computerlesbaren Speichermediums 1020jede der Anweisungen 1021-1030 enthalten.
  • Beispiele für das computerlesbare Aufzeichnungsmedium 1020 sind unter anderem Festwertspeicher (ROM), Speicher mit wahlfreiem Zugriff (RAM), löschbarer elektrisch programmierbarer ROM (EEPROM), Flash-Speicher oder andere Speichertechnologien, holografische Medien oder andere optische Plattenspeicher, Magnetspeicher einschließlich Magnetband und Magnetplatte sowie Festkörperspeicher. Das computerlesbare Aufzeichnungsmedium 1020 kann auch über netzgekoppelte Computersysteme verteilt sein, so dass der computerlesbare Code in verteilter Weise gespeichert und ausgeführt wird. Zu den über ein transitorisches Medium übertragenen Kommunikationssignalen können beispielsweise modulierte Signale gehören, die über verdrahtete oder drahtlose Übertragungswege übertragen werden.
  • Die obige Beschreibung und die zugehörigen Figuren zeigen die beste Ausführungsform der Erfindung und sollen nur zur Veranschaulichung dienen und nicht einschränkend sein. Viele andere Ausführungsbeispiele und Anwendungen als die angegebenen Beispiele sind für den Fachmann beim Lesen der obigen Beschreibung offensichtlich. Der Umfang der Erfindung sollte nicht durch Bezugnahme auf die obige Beschreibung, sondern durch Bezugnahme auf die beigefügten Ansprüche bestimmt werden, zusammen mit dem vollen Umfang der Äquivalente, zu denen diese Ansprüche berechtigt sind. Es ist zu erwarten und beabsichtigt, dass zukünftige Entwicklungen in den hier diskutierten Technologien stattfinden werden und dass die offengelegten Systeme und Methoden in zukünftige Beispielimplementierungen einfließen werden. Zusammenfassend ist zu verstehen, dass die Anwendung modifiziert und variiert werden kann.
  • Alle in den Ansprüchen verwendeten Begriffe sind so weit wie möglich auszulegen und haben die übliche Bedeutung, wie sie von denjenigen verstanden wird, die sich mit den hier beschriebenen Technologien auskennen, es sei denn, es wird ausdrücklich auf das Gegenteil hingewiesen. Insbesondere ist die Verwendung von Einzahlartikeln wie „ein“, „der“, „sagte“ usw. so zu verstehen, dass damit eines oder mehrere der angegebenen Elemente gemeint sind, es sei denn, ein Anspruch enthält eine ausdrückliche gegenteilige Einschränkung.
  • Die Zusammenfassung soll es dem Leser ermöglichen, sich schnell ein Bild von derArt der technischen Offenbarung zu machen. Sie wird mit der Maßgabe vorgelegt, dass sie nicht zur Auslegung oder Einschränkung des Umfangs oder der Bedeutung der Ansprüche verwendet wird. Darüber hinaus ist in der vorstehenden ausführlichen Beschreibung zu erkennen, dass verschiedene Merkmale in verschiedenen Ausführungsbeispielen zusammengefasst sind, um die Offenlegung zu vereinfachen. Diese Art der Offenlegung ist nicht so zu verstehen, dass die beanspruchten Ausführungsbeispiele mehr Merkmale erfordern, als in den einzelnen Ansprüchen ausdrücklich aufgeführt sind. Vielmehr liegt der Erfindungsgegenstand, wie die folgenden Ansprüche zeigen, in weniger als allen Merkmalen einer einzelnen offengelegten Ausführungsform. Daher werden die folgenden Ansprüche hiermit in die ausführliche Beschreibung aufgenommen, wobei jeder Anspruch für sich genommen einen gesonderten beanspruchten Gegenstand darstellt.

Claims (20)

  1. Ein gestapeltes Netzwerkgerät mit: einen ersten Mitgliedsknoten, der so konfiguriert ist, dass er Operationen auf der Steuerungs- und Verwaltungsebene im Namen des gestapelten Netzwerkgeräts durchführt, wobei der erste Mitgliedsknoten eine erste Uhr, einen PTP-Folger-Port (Precision Time Protocol) und mindestens einen PTP-Leader-Port enthält; und eine Vielzahl von zweiten Mitgliedsknoten, wobei die jeweiligen der Vielzahl von zweiten Mitgliedsknoten einen Taktgeber, einen PTP-Folger-Port und einen PTP-Leader-Port enthalten, wobei der erste Mitgliedsknoten konfiguriert ist: um ein erstes externes Datenpaket am PTP-Folger-Port des ersten Mitgliedsknotens zu empfangen, die Uhr des ersten Mitgliedsknotens unter Verwendung eines PTP-Zeitstempels zu synchronisieren, der in dem ersten externen Datenpaket enthalten ist, und zu veranlassen, dass jeder der mehreren zweiten Mitgliedsknoten eine erste interne Taktsynchronisationsoperation durchführt, wobei die erste interne Taktsynchronisation umfasst: Empfangen eines internen Datenpakets an dem PTP-Follower-Anschluss des jeweiligen zweiten Mitgliedsknotens von dem PTP-Leader-Anschluss eines Mitgliedsknotens, der dem jeweiligen zweiten Mitgliedsknoten unmittelbar vorgeschaltet ist, wobei das interne Datenpaket einen internen PTP-Zeitstempel auf der Grundlage der Uhr des Mitgliedsknotens enthält, der dem jeweiligen zweiten Mitgliedsknoten unmittelbar vorgeschaltet ist, und Synchronisieren einer Uhr des jeweiligen zweiten Mitgliedsknotens basierend auf dem internen Zeitstempel des internen Datenpakets, wobei nach dem ersten internen Taktsynchronisationsvorgang das Netzwerkgerät so konfiguriert ist, dass es von den jeweiligen PTP-Leader-Anschlüssen des ersten Mitgliedsknotens und/oder den jeweiligen der mehreren zweiten Mitgliedsknoten an mehrere nachgeschaltete Geräte eine entsprechende Anzahl von zweiten externen Datenpaketen überträgt, und wobei die zweiten externen Datenpakete jeweils einen zweiten externen Zeitstempel enthalten, der auf der synchronisierten Uhr des sendenden Mitgliedsknotens basiert.
  2. Netzwerkgerät nach Anspruch 1, wobei das Netzwerkgerät so konfiguriert ist, dass es für externe Netzwerkgeräte im Netzwerk als ein einziges virtuelles Gerät funktioniert.
  3. Netzwerkgerät nach Anspruch 1, wobei das Netzwerkgerät so konfiguriert ist, dass es als Boundary-Clock-Gerät eines Netzwerks arbeitet, das nach PTP arbeitet.
  4. Netzwerkgerät nach Anspruch 1, wobei der PTP-Folger-Port des ersten Mitgliedsknotens ein Link Aggregation Group (LAG)-Port oder zwei Routed Only Ports (ROPs) ist.
  5. Netzwerkgerät nach Anspruch 1, wobei ein Standby-Mitgliedsknoten aus der Vielzahl der zweiten Mitgliedsknoten konfiguriert ist: zu erkennen, dass in dem ersten Mitgliedsknoten ein Fehler aufgetreten ist; und anschließend: ein drittes externes Datenpaket an einem Standby-PTP-Follower-Port des Standby-Mitgliedsknotens zu empfangen, die Uhr des Ersatzknotens unter Verwendung eines im dritten externen Datenpaket enthaltenen PTP-Zeitstempels zu synchronisieren, und um zu bewirken, dass jeder der Vielzahl von zweiten Mitgliedsknoten, die nicht der Standby-Mitgliedsknoten sind, eine zweite interne Taktsynchronisationsoperation durchführt, wobei die zweite interne Taktsynchronisation Folgendes umfasst: Empfangen eines internen Datenpakets am PTP-Follower-Anschluss des jeweiligen zweiten Mitgliedsknotens vom PTP-Leader-Anschluss des Mitgliedsknotens unmittelbar stromaufwärts des jeweiligen zweiten Mitgliedsknotens, wobei das interne Datenpaket einen internen PTP-Zeitstempel auf der Grundlage der Uhr des Mitgliedsknotens unmittelbar stromaufwärts des jeweiligen zweiten Mitgliedsknotens enthält, und Synchronisieren einer Uhr des jeweiligen zweiten Mitgliedsknotens basierend auf dem internen Zeitstempel des internen Datenpakets.
  6. Das Netzwerkgerät nach Anspruch 5, wobei nach dem zweiten internen Taktsynchronisationsvorgang die Netzwerkvorrichtung so konfiguriert ist, dass sie von den jeweiligen PTP-Leader-Anschlüssen des Standby-Mitgliedsknotens und/oder den jeweiligen der mehreren zweiten Mitgliedsknoten, die sich von dem Standby-Mitgliedsknoten unterscheiden, eine entsprechende Anzahl von vierten externen Datenpaketen an mehrere nachgeschaltete Vorrichtungen überträgt, und die vierten externen Datenpakete jeweils den zweiten externen Zeitstempel auf der Grundlage der synchronisierten Uhr des sendenden Mitgliedsknotens enthalten.
  7. Netzwerkgerät nach Anspruch 5, wobei der Standby-PTP-Follower-Port des Standby-Mitgliedsknotens ein Link Aggregation Group (LAG)-Port oder zwei Routed Only Ports (ROPs) ist.
  8. Netzwerkvorrichtung nach Anspruch 5, wobei der Standby-Mitgliedsknoten so konfiguriert ist, dass er eine Verbindung zwischen dem Standby-PTP-Folger-Port des Standby-Mitgliedsknotens und einer externen Vorrichtung stromaufwärts der Netzwerkvorrichtung aktiviert, wenn er erkennt, dass der Fehler im ersten Mitgliedsknoten aufgetreten ist.
  9. Ein nicht-transitorisches computerlesbares Medium, das Befehle speichert, die, wenn sie von einem elektronischen Prozessor eines primären Mitgliedsknotens ausgeführt werden, den primären Mitgliedsknoten veranlassen,: eine Vielzahl von Mitgliedsknoten eines gestapelten Netzwerkgeräts so konfigurieren, dass sie für externe Geräte als ein einziges virtuelles Gerät fungieren, wobei die Vielzahl von Mitgliedsknoten den primären Mitgliedsknoten und eine Vielzahl von sekundären Mitgliedsknoten umfasst, die durch Mitgliederverbindungen miteinander verbunden sind, um Datenebenenverkehr auszutauschen, wobei der primäre Mitgliedsknoten so konfiguriert ist, dass er Steuerungs- und Verwaltungsebenenoperationen im Namen des gestapelten Netzwerkgeräts durchführt; an einem Uplink-Anschluss des primären Mitgliedsknotens ein erstes externes PTP-Datenpaket (Precision Time Protocol) empfangen, das einen ersten externen Zeitstempel von einer externen Uhrvorrichtung enthält, die gemäß einer externen PTP-Domäne arbeitet; eine Uhr des primären Mitgliedsknotens auf der Grundlage des ersten externen Zeitstempels zu synchronisieren; Erzeugen eines internen PTP-Datenpakets gemäß einer internen Instanz von PTP, die für das erste gestapelte Netzwerkgerät lokal ist, wobei das interne PTP-Datenpaket einen internen Zeitstempel auf der Grundlage der Uhr des primären Mitgliedsknotens enthält; Übertragen des internen Datenpakets von einem Downlink-Anschluss des primären Mitglieds knotens zu einem Uplink-Anschluss des sekundären Mitgliedsknotens unmittelbar stromabwärts des primären Mitgliedsknotens; und Veranlassen einer Übertragung einer entsprechenden Anzahl von zweiten externen Datenpaketen von einem oder mehreren Downlink-Anschlüssen des primären Mitgliedsknotens und/oder jeweiligen der mehreren sekundären Mitgliedsknoten zu einem oder mehreren stromabwärts gelegenen externen Geräten, wobei die zweiten externen Datenpakete jeweils einen zweiten externen Zeitstempel auf der Grundlage der synchronisierten Uhr des primären Mitgliedsknotens enthalten.
  10. Das nicht-transitorische computerlesbare Medium nach Anspruch 9, wobei das Synchronisieren der Uhr beinhaltet: Bestimmung einer Verzögerung zwischen dem primären Mitgliedsknoten und der externen Takteinrichtung; Addieren des Verzögerungsbetrags zu dem internen Zeitstempel, um einen geänderten Zeitstempel zu erhalten; und Einstellung der Uhr des primären Mitgliedsknotens auf der Grundlage des geänderten Zeitstempels.
  11. Nicht-transitorisches computerlesbares Medium nach Anspruch 9, wobei die jeweiligen zweiten externen Datenpakete eine Adresse enthalten, die dem gestapelten Netzwerkgerät als Ganzes entspricht.
  12. Nicht-transitorisches computerlesbares Medium nach Anspruch 9, wobei das gestapelte Netzwerkgerät ein Boundary-Clock-Gerät eines Netzwerks ist, das nach PTP arbeitet.
  13. Nichttransitorisches computerlesbares Medium nach Anspruch 9, wobei der primäre Mitgliedsknoten und die mehreren sekundären Mitgliedsknoten entweder eine Kettentopologie oder eine Ringtopologie bilden.
  14. Verfahren zum Implementieren eines Zeitsynchronisationsprotokolls in einem Netzwerkgerät, das einen primären Mitgliedsknoten und eine Vielzahl von sekundären Mitgliedsknoten enthält, wobei das Verfahren umfasst: Konfigurieren einer Vielzahl von Mitgliedsknoten eines Netzwerkgeräts, um als ein einziges virtuelles Gerät für externe Geräte zu fungieren, wobei die Vielzahl von Mitgliedsknoten einen primären Knoten und eine Vielzahl von sekundären Mitgliedsknoten umfasst, die durch Mitgliedsbindungen miteinander verbunden sind, um Datenebenenverkehr auszutauschen, wobei der primäre Mitgliedsknoten konfiguriert ist, um Steuerungs- und Verwaltungsebenenoperationen im Namen des Netzwerkgeräts durchzuführen; Empfang eines ersten externen Datenpakets an einem Uplink-Port des primären Mitgliedsknotens, das einen ersten externen Zeitstempel auf der Grundlage einer bekannten globalen Uhr enthält; Synchronisierung einer Uhr des primären Mitgliedsknotens mit der bekannten globalen Uhr; für jeden der mehreren sekundären Mitgliedsknoten: Empfangen, an einem Uplink-Anschluss des jeweiligen sekundären Mitgliedsknotens, eines internen Datenpakets von einem Mitgliedsknoten unmittelbar stromaufwärts desjeweiligen sekundären Mitgliedsknotens, wobei das interne Datenpaket einen internen Zeitstempel auf der Grundlage einer Uhr des Mitgliedsknotens unmittelbar stromaufwärts des jeweiligen sekundären Mitgliedsknotens enthält, und Synchronisieren einer Uhr des jeweiligen sekundären Mitgliedsknotens mit der bekannten globalen Uhr auf der Grundlage des internen Zeitstempels des internen Datenpakets; und Übertragen eines zweiten externen Datenpakets von jeweiligen Downlink-Anschlüssen des primären Mitgliedsknotens und/oder jeweiligen der mehreren sekundären Mitgliedsknoten an mehrere zweite Netzwerkgeräte, wobei das zweite externe Datenpaket einen zweiten externen Zeitstempel auf der Grundlage der synchronisierten Uhr des sendenden Mitgliedsknotens enthält.
  15. Verfahren nach Anspruch 14, wobei das erste externe Datenpaket und das zweite externe Datenpaket einer ersten PTP-Instanz entsprechen, und wobei die internen Datenpakete einer zweiten PTP-Instanz entsprechen.
  16. Das Verfahren nach Anspruch 14 umfasst ferner: Bestimmung eines der mehreren sekundären Mitgliedsknoten als Standby-Mitgliedsknoten; Erkennen, dass ein Fehler in dem primären Mitgliedsknoten aufgetreten ist; und anschließend: Empfangen eines dritten externen Datenpakets, das den ersten externen Zeitstempel enthält, an einem Uplink-Anschluss des Standby-Mitgliedsknotens, Synchronisierung einer Uhr des Ersatzknotens auf der Grundlage des ersten externen Zeitstempels, für jeden der mehreren sekundären Mitgliedsknoten, der nicht der Standby-Mitgliedsknoten ist: Empfangen des internen Datenpakets an dem Uplink-Anschluss des jeweiligen sekundären Mitgliedsknotens von dem Mitgliedsknoten unmittelbar stromaufwärts desjeweiligen sekundären Mitgliedsknotens, wobei das interne Datenpaket den internen Zeitstempel auf der Grundlage der Uhr des Mitgliedsknotens unmittelbar stromaufwärts des jeweiligen sekundären Mitgliedsknotens enthält, und Synchronisieren der Uhr des jeweiligen sekundären Mitgliedsknotens auf der Grundlage des internen Zeitstempels des internen Datenpakets, und Übertragen des zweiten externen Datenpakets von den jeweiligen Downlink-Anschlüssen des Standby-Mitgliedsknotens und/oder den jeweiligen der mehreren sekundären Mitgliedsknoten, die sich von dem Standby-Mitgliedsknoten unterscheiden, an die mehreren zweiten Netzwerkgeräte, wobei das zweite externe Datenpaket den zweiten externen Zeitstempel auf der Grundlage der synchronisierten Uhr des sendenden Mitgliedsknotens enthält.
  17. Das Verfahren nach Anspruch 16 umfasst ferner: Erkennen, dass der Fehler im primären Mitgliedsknoten behoben wurde; und anschließend: Empfangen des internen Datenpakets an dem Uplink-Anschluss des primären Mitgliedsknotens von dem Mitgliedsknoten unmittelbar stromaufwärts des primären Mitgliedsknotens, wobei das interne Datenpaket den internen Zeitstempel basierend auf der Uhr des Mitgliedsknotens unmittelbar stromaufwärts des primären Mitgliedsknotens enthält, und Synchronisieren der Uhr des primären Mitgliedsknotens basierend auf dem internen Zeitstempel des internen Datenpakets, und Übertragen des zweiten externen Datenpakets vom Downlink-Anschluss des primären Mitgliedsknotens an mindestens eines der mehreren zweiten Netzwerkgeräte, wobei das zweite externe Datenpaket den zweiten externen Zeitstempel auf der Grundlage der synchronisierten Uhr des primären Mitgliedsknotens enthält.
  18. Verfahren nach Anspruch 14, wobei die jeweiligen zweiten externen Datenpakete eine Adresse enthalten, die dem Netzwerkgerät als Ganzes entspricht.
  19. Verfahren nach Anspruch 14, wobei das Netzgerät ein Boundary-Clock-Gerät eines nach PTP arbeitenden Netzes ist.
  20. Verfahren nach Anspruch 14, wobei der primäre Mitgliedsknoten und die mehreren sekundären Mitgliedsknoten entweder eine Kettentopologie oder eine Ringtopologie bilden.
DE102023129947.6A 2022-10-31 2023-10-30 Gestapeltes netzwerkgerät als präzisionszeitprotokoll-grenzuhr Pending DE102023129947A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/977,267 2022-10-31
US17/977,267 US11750311B1 (en) 2022-10-31 2022-10-31 Stacked network device as precision time protocol boundary clock

Publications (1)

Publication Number Publication Date
DE102023129947A1 true DE102023129947A1 (de) 2024-05-02

Family

ID=87882614

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023129947.6A Pending DE102023129947A1 (de) 2022-10-31 2023-10-30 Gestapeltes netzwerkgerät als präzisionszeitprotokoll-grenzuhr

Country Status (3)

Country Link
US (1) US11750311B1 (de)
CN (1) CN116915353A (de)
DE (1) DE102023129947A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102491106B1 (ko) * 2021-07-26 2023-01-25 한국전자기술연구원 스텔스 클럭 방식의 정밀 시각 동기 프로토콜을 지원하는 장치 및 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102195996B (zh) * 2010-03-09 2013-06-26 杭州华三通信技术有限公司 一种堆叠系统的时间同步方法、堆叠系统和成员设备
CN102195735B (zh) * 2010-03-11 2014-04-09 杭州华三通信技术有限公司 多子系统设备的时间同步方法及子系统
CN102263632A (zh) * 2011-08-26 2011-11-30 杭州华三通信技术有限公司 交换机堆叠系统中的时间同步方法和堆叠控制器
CN102724030A (zh) * 2012-06-29 2012-10-10 杭州迪普科技有限公司 一种高可靠性的堆叠系统
CN105207734A (zh) * 2015-10-09 2015-12-30 盛科网络(苏州)有限公司 芯片堆叠模式下ptp的实现方法及实现装置
US11228994B2 (en) * 2019-02-18 2022-01-18 Qualcomm Incorporated Wireless communication enhancements for transparent and boundary clocks
US11283535B2 (en) * 2019-03-20 2022-03-22 Arris Enterprises Llc Method of remotely monitoring the timing performance of a PTP slave
US11843453B2 (en) * 2021-04-07 2023-12-12 Cisco Technology, Inc. Time synchronization in passive optical networks

Also Published As

Publication number Publication date
CN116915353A (zh) 2023-10-20
US11750311B1 (en) 2023-09-05

Similar Documents

Publication Publication Date Title
DE60118143T2 (de) Verfahren und Vorrichtung zur Re-Synchronisierung einer Netzwerkstruktur-Datenbank in einem Kommunikationsnetz mit Topologie-Zustand Leitweglenkung-Protokollen
DE102014204752A1 (de) Fehlertolerantes taktnetzwerk
EP3446466B1 (de) Verfahren zum schnellen rekonfiguration von gm clocks im tsn network mittels einer expliziten teardown nachricht
DE102023129947A1 (de) Gestapeltes netzwerkgerät als präzisionszeitprotokoll-grenzuhr
DE102008017933A1 (de) Verfahren und Vorrichtung zur Synchronisation von Kamerasystemen
DE112012004227B4 (de) Verfahren und Vorrichtung zur Auswahl eines passiven Ports des transparenten Uhrknotens auf PTP-Basis
DE60131047T2 (de) Verwaltung von Protokollinformationen in hierarchischen PNNI-Netzen
DE112016003242T5 (de) System und verfahren zum handhaben von verbindungsverlust in einem netzwerk
EP2148474A1 (de) Multirouter für zeitgesteuerte Kommunikationssysteme
DE102023200297A1 (de) Controller, der eine taktfrequenz basierend auf einer empfangenen symbolrate abstimmt
DE602004011484T2 (de) Verfahren und Vorrichtung zum Synchronisieren von Uhren von Netzknoten
CH709742A1 (de) Börsenhandelssystem.
EP3042473A1 (de) Verfahren zur übertragung von nachrichten in einem computernetzwerk sowie computernetzwerk
EP2127241B1 (de) Zielportsuche in netzwerken aus gekoppelten teilnetzen
DE102005008503B3 (de) Verfahren und Netzwerk zur Daten- und Signalübertragung
EP4073963A1 (de) Verfahren zur optimierung der zeitsynchronisation zwischen über ein kommunikationsnetzwerk verbundenen netzwerkgeräten
EP3525476B1 (de) Verfahren zur topologiebestimmung in einer mobilfunk-site und eine entsprechende mobilfunk-site
EP1754128A1 (de) Dezentrale zeitintervallsynchronisation in verteilten netzwerken
DE102010027687B4 (de) Vermaschtes Funknetz, Netzknoten, Netzwerkkoordinator und Verfahren zum Routing von Datenpaketen in einem vermaschten Funknetz
DE19900636A1 (de) Datenzugriffs- und -verwaltungssystem sowie Verfahren zum Datenzugriff und zur Datenverwaltung für ein Rechnersystem
DE19924988A1 (de) Verfahren zur Synchronisation von Netzelementen eines Netzes
EP2750310A1 (de) Verfahren zur Synchronisierung lokaler Uhren in einem Kommunikationsnetz eines industriellen Automatisierungssystems und Netzinfrastrukturgerät
DE112017003386T5 (de) Kommunikationssystem und Kommunikationsverfahren
DE102021108576A1 (de) Unidirektionale link-erkennung miskonfiguration auto-erkennung
WO2024017947A2 (de) Synchronisiertes datennetzwerk-system und verfahren zum initialisieren sowie zum synchronisieren desselben

Legal Events

Date Code Title Description
R012 Request for examination validly filed