Inhalt

Einführung

PTP-Konfiguration:

Überprüfung:

Fehlerbehebung:

Einführung

Precision Time Protocol (PTP) ist ein Synchronisierungsprotokoll für die Timing-Synchronisierung von Paketnetzwerken im Nanosekundenbereich. Die Genauigkeit von PTP beruht auf der Hardware-Unterstützung für PTP in den Switch- und Server-Netzwerkschnittstellenkarten (NICs). PTP verwendet die Multicast-Gruppe 224.0.1.129 und die UDP-Ports 319 und 320. Der aktuelle PTP-Standard ist IEEE 1588-2008 Precision Time Protocol (PTP) Version 2 (PTPv2).

Die Skalierbarkeit von PTP ergibt sich aus der Tatsache, dass dieses Protokoll ein Konzept von Boundary Clock (BC) enthält, das mehrere physische/logische Hops von der Grand Master (GM)-Uhr entfernt sein kann und als Re-Kalibrierpunkt für Nachrichten mit Zeitstempeln fungieren kann. Die Nexus 3000-Router werden in Rechenzentren (DCs) häufig eingesetzt, um als BC zu fungieren und den mit dem Local Area Network (LAN) verbundenen Servern genaue Zeitangaben zu liefern. BC und GM müssen nur über Layer 3 (IP-Konnektivität) erreichbar sein. Zwischen dem GM und dem PTP-Endclient können mehrere BC-Ebenen vorhanden sein. Es können mehrere GMs vorhanden sein, um Redundanz und Nexus 3K wählt mithilfe des BMC-Algorithmus (Best Master Clock) den besten GM aus.

Beiträge: Nishad Mohiuddeen

Bearbeitet von: Kumar Sridhar

PTP-Konfiguration:

N3k(config)#-Feature-PTP

Mit diesem Befehl wird PTP auf dem Switch aktiviert.

N3k(config)# ptp source <ip address>

Dieser Befehl gibt die IP-Quelladresse für die vom Switch generierten PTP-Pakete an.

N3k(config)#-Schnittstelle Ethernet-Steckplatz/Port

N3k(config-if)# ptp

Mit diesem Befehl wird PTP auf einem Port aktiviert. Der Cisco Nexus 3548 ist eine Grenzuhr und verfügt somit über Master- und Slave-Ports. Zwischen einem Master-Port und einem Slave-Port besteht kein Konfigurationsunterschied. Beide werden mit der "ptp"-Option konfiguriert, und der BMC-Algorithmus bestimmt, ob es sich bei dem Port um einen PTP-Slave- oder einen Master-Port handelt.

N3k(config)# Taktprotokoll-ptp

Mit diesem Befehl wird der Switch so konfiguriert, dass er PTP zum Aktualisieren des Systemkalenders verwendet. Durch diese Konfiguration wird die Uhr des Switches mit PTP synchronisiert. Wenn Sie diesen Befehl nicht aktivieren, kann der Switch die PTP-Uhr auf seinen Master-Ports weiterleiten. Die Zeitquelle ist jedoch die lokale Nexus-Uhr.

N3k(config)# ptp priority1 <0-255>

N3k(config)# ptp priority2 <0-255>

Konfigurieren Sie die Prioritätswerte für die lokale Uhr (Oszillator). Ein niedrigerer numerischer Wert weist auf eine höhere Priorität hin.

N3k(config)# kein ptp-Großmeister-fähig

Standardmäßig ist Nexus 3k "ptp primäre Master-fähig". Deaktivieren Sie daher diese Funktion, um eine Synchronisierung mit dem GM zu erhalten.

Optionale Parameter unter der Schnittstelle (Konfiguration, um Parameter mit GM abzustimmen):

N3k(config)#-Schnittstelle Ethernet-Steckplatz/Port

N3k(config-if)# ptp delay-request minimales Intervall 3

N3k(config-if)# ptp announce interval 2

N3k(config-if)# ptp sync interval 0

Überprüfung:

N3k# show ptp clock

PTP-Gerätetyp: Grenzuhr

Uhridentität: 00:62:ec:ff:fe:40:05:81

Uhrendomäne: 0

Anzahl der PTP-Ports: 2

Priorität1: 1

Priorität2: 1

Uhrqualität:

Klasse: 248

Genauigkeit: 254

Offset (Protokollabweichung): 65535

Offset vom Master: 0

Mittlere Pfadverzögerung: 0

Schritte entfernt: 0

Ortszeit: Mo. Juni 5 00:00:23 2017

N3k# show ptp parent

ÜBERGEORDNETE PTP-EIGENSCHAFTEN

Übergeordnete Uhr:

Identität der übergeordneten Uhr: 00:0c:ec:ff:fe:08:12:b1

Übergeordnete Portnummer: 1

Beobachtete übergeordnete Offset (Protokollabweichung): K/A

Beobachtete Änderungsrate der übergeordneten Uhrenphase: K/A

Großmeisteruhr:

Großmeister-Uhrenidentität: 00:0c:ec:ff:fe:08:12:b1

Qualität der Großmeister-Uhr:

Klasse: 6 <<<

Genauigkeit: 32

Offset (Protokollabweichung): 22752

Priorität1: 128

Priorität2: 128

N3k# Ausgabe-Übersicht anzeigen

PTP-Portstatus

—

Port-Status

— —

Eth1/5 Slave << in Richtung GM

Eth1/24 Master <<< zum Host

Eth1/24 Listening <<< kein gültiger GM oder Host erkannt

N3k#show run | in clock (zur Überprüfung des Taktprotokolls)

N3k#show ptp counters all(um Tx und Rx von PTP-Nachrichten wie Sync, Announce, Delay_Req, Delay_Resp usw. zu überprüfen)

N3k# show ptp counters interface ethernet 1/24

PTP-Paketzähler der Schnittstelle Eth1/24:

—

Pakettyp TX RX

— — — —

Ankündigung 558 4479

Synchronisierung 1773 8941

Nachbereitung 1754 8950

Verzögerungsanfrage 35 0

Verzögerungsantwort 0 35

PDelay-Anforderung 0 0

PDelay Res 0 0

PDelay Followup 0 0

Management 0 0

—

N3k#show ptp korrigations(zur Überprüfung von PTP-Korrektur-Zeitstempeln)

PTP-Korrekturen in der Vergangenheit

—

SMeanPath-Verzögerung(n) für Slave-Port-SUP-Zeitkorrektur(en)

— — — — — —

Eth1/24 Mon Jun 5 05:48:45 2017 171026 -51 1806

Eth1/24 Mon Jun 5 05:48:46 2017 171727 -2 1806

Eth1/24 Mon Jun 5 05:48:47 2017 173329 -47 1806

Eth1/24 Mon Jun 5 05:48:48 2017 174047 86 1806

Eth1/24 Mon Jun 5 05:48:49 2017 175690 -55 1794

Eth1/24 Mon Jun 5 05:48:50 2017 235577 -6 1794

Eth1/24 Mon Jun 5 05:48:51 2017 178035 -44 1794

Eth1/24 Mon Jun 5 05:48:52 2017 178804 83 1794

Eth1/24 Mon Jun 5 05:48:53 2017 180371 35 1794

Eth1/24 Mon Jun 5 05:48:54 2017 181839 -48 1794

Eth1/24 Mon Jun 5 05:48:55 2017 183667 -42 1794

Eth1/24 Mon Jun 5 05:48:56 2017 184423 -5 1794

Eth1/24 Mon Jun 5 05:48:57 2017 186030 113 1794

Eth1/24 Mon Jun 5 05:48:58 2017 186653 -48 1794

Eth1/24 Mon Jun 5 05:48:59 2017 188298 -6 1794

Eth1/24 Mon Jun 5 05:49:00 2017 189000 -88 1794

<Snip>

Fehlerbehebung:

1. Überprüfen Sie, ob Sie den GM über das PTP (Unicast-Verbindung) pingen können.

2. Überprüfen Sie das Uhrenprotokoll (PTP) über

N3k#Schaulauf | in Uhrzeit

3. Standardmäßig sind N3Ks "Großmeister-fähig". muss deaktiviert werden über

N3k# kein ptp primäre Master-fähig

4. Verwenden Sie den Befehl show ptp brief, um zu überprüfen, ob der Portstatus "Listening" lautet.

5. Anschließend wird eine Ethanalyzer-Erfassung durchgeführt.

Ethanalyzer Local Interface Inbound-Hi Capture-Filter "udp port 320" limit-captured-frames 0 <<< Announce and Follow up

Ethanalyzer Local Interface Inbound-Hi Capture-Filter "udp port 319" limit-captured-frames 0 <<< Sync

Auf der PTP-GM-Seite werden Announce- und Synchronisierungsmeldungen angezeigt. TDer Client sendet Delay_Req, und GM sendet Delay_Resp.

Wenn keine Pakete im Ethanalyzer erfasst werden, kann dies ein Prioritätsproblem sein. Wenn der Nexus 300 PTP-Pakete mit niedrigerer Priorität (oder Taktklasse bei gleicher Priorität) empfängt, wird das Paket verworfen und nicht auf die CPU beschränkt.

6. Die beste Methode besteht in der Paketerfassung (zum Abrufen des Pakets zwischen GM und BC), um zu erfahren, warum der BC nicht mit dem GM synchronisiert wird. Von der Erfassung aus können wir die PTP-Priorität überprüfen, die von GM gesendet wurde, indem wir die Ankündigungsmeldung von GM ansehen. Wenn die Priorität niedriger (höherer numerischer Wert) als die konfigurierte Priorität im BC ist, ändern Sie die PTP-Priorität des BC in einen höheren numerischen Wert.

7. Wenn der BC (Nexus3k) mit GM synchronisiert ist, die Downstream-Hosts/Server jedoch nicht, suchen Sie vom Host/Server nach "Delay_Req_Messsage". Wenn der PTP-Daemon im Host/Server nicht vorhanden ist, liegt ein Fehler vor.