The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This document describes how to troubleshoot the Precision Time Protocol (PTP) on Catalyst 9000 switches.
Cisco recommends that you have knowledge of this topic:
The information in this document is based on Catalyst 9300, 9400, 9500, and 9600 switches.
Cat9300#show module Switch Ports Model Serial No. MAC address Hw Ver. Sw Ver. ------ ----- --------- ----------- -------------- ------- -------- 1 65 C9300-48T FCW2236C0WC 700b.4fa8.5280 V02 17.03.05 Cat9300#
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
For more information on document conventions, refer to Cisco Technical Tips Conventions.
For an exhaustive list of restrictions and limitations for PTP for the Catalyst 9000, review the PTP section of the Layer 2 Configuration Guide for the given platform and version.
Support for Precision Time Protocol on Cisco Catalyst Switches FAQ
Term | Definition |
Grandmaster Clock (GMC) |
Within a PTP domain, the grandmaster clock is the primary source of time for clock synchronization using PTP. The grandmaster clock usually has a very precise time source, such as a GPS or atomic clock. When the network does not require any external time reference and only needs to be synchronized internally, the grandmaster clock can free run. |
Ordinary Clock (OC) |
An ordinary clock is a PTP clock with a single PTP port. It functions as a node in a PTP network and can be selected by the BMCA as a master or slave within a subdomain. Ordinary clocks are the most common clock type on a PTP network because they are used as end nodes on a network that is connected to devices requiring synchronization. Ordinary clocks have various interface to external devices. |
Boundary Clock (BC) | A boundary clock in a PTP network operates in place of a standard network switch or router. Boundary clocks have more than one PTP port, and each port provides access to a separate PTP communication path. Boundary clocks provide an interface between PTP domains. They intercept and process all PTP messages, and pass all other network traffic. The boundary clock uses the BMCA to select the best clock seen by any port. The selected port is then set as a slave. The master port synchronizes the clocks connected downstream, while the slave port synchronizes with the upstream master clock. |
Transparent Clock (TC) | The role of transparent clocks in a PTP network is to update the time-interval field that is part of the PTP event message. This update compensates for switch delay and has an accuracy of within one picosecond.There are two types of transparent clocks: |
End-to-end (E2E) transparent | Measures PTP event message transit time (also known as resident time ) for SYNC and DELAY_REQUEST messages. This measured transit time is added to a data field (correction field) in the corresponding messages:
|
Peer-to-peer (P2P) transparent | Measures PTP event message transit time in the same way E2E transparent clocks do, as described above. In addition, P2P transparent clocks measure the upstream link delay. The upstream link delay is the estimated packet propagation delay between the upstream neighbor P2P transparent clock and the P2P transparent clock under consideration.These two times (message transit time and upstream link delay time) are both added to the correction field of the PTP event message, and the correction field of the message received by the slave contains the sum of all link delays. In theory, this is the total end-to-end delay (from master to slave) of the SYNC packet. |
Action to take:
Announce and Discovery
Symptom | Possible Cause |
Ordinary Clock CPU does not process Announce Packets from GMC.Ordinary Clock does not send 'Delay Request' packet.Clocks fail to synchronize after PTP negotiation. | Grandmaster Clock not configured to send Announce packets.PTP Packets lost in transit.PTP packets dropped by Interface, Control-Plane, or ASIC.Misconfiguration that causes GMC to send incorrect PTP domain/profile or Ordinary Clock has incorrect domain/profile configured. |
Action(s) to take:
Verify PTP Configurations and Status:
Perform an interface or control-plane EPC to verify Clock is receiving and sending PTP packets:
If EPC is not reliable, use the data collected by PTP debugs to verify what PTP values are being sent and received:
Best Master Clock Algorithm (BMCA)
Symptom | Possible Cause |
Synchronization Failure Clock Ignoring or Rejecting PTP Messages from GMC Logging ErrorsResync Attempts |
Incompatible PTP versions between network devices and GMC.Inaccurate clock data in Announce packets.Clock instability caused by multiple Grand Master Clocks within the same domain. |
Action(s) to take:
Rule out any transit clocks or boundary clocks that could be contributing to latency or inaccurate time keeping.
Rule out any hardware or software limitations on the platform that prevents precise time keeping.
Collect PTP Debugs and check for any errors.
Grand Master Clock Selection
Symptom | Possible Cause |
Best Master Clock Algorithm (BMCA) does not select the most accurate GMC.BMCA not calculating network delay.Mismatched priority settings. |
Action(s) to take:
Sync Message Exchange
Symptom | Possible Cause |
Transparent Clock (TC) misconfiguration such as incorrect PTP profile or mode. Errors in delay calculation.Sync Message packet dropped in transit or on control-plane of OC. |
Action(s) to take:
Delay Request and Response
Symptom | Possible Cause |
Transparent Clocks not capable of calculating precise time stamps that leads to inaccurate delay calculation.Delay Request or Response packets received in an incorrect order, lost in transit, or dropped before control-plane |
Action(s) to take:
Correction and Synchronization
Symptom | Possible Cause |
Inaccurate time corrections and delay compensations calculated by clocks.Hardware or software limitations that lead to incorrect system clock adjustment that causes synchronization failure. |
Verify the PTP Mode, Profile, Identity, Domain, PTP-enabled Interfaces, and PTP Interfaces states:
Cat9300#show ptp clock PTP CLOCK INFO PTP Device Type: Unknown PTP Device Profile: Default Profile Clock Identity: 0x70:B:4F:FF:FE:A8:52:80 Clock Domain: 0 Network Transport Protocol: 802.3 Number of PTP ports: 0 Cat9300#
An interface without PTP configurations remains in Domain 0 and in the INITIALIZING state.
Cat9300#show ptp brief Interface Domain PTP State GigabitEthernet1/0/1 0 INITIALIZING
This is the transitional phases of clock in End-to-End Transparent mode.
Cat9300#configuration terminal Cat9300(config)#interface twe1/0/1 Cat9300(config-if)#shut Cat9300(config-if)#no shut Cat9300(config-if)#end %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to down %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to down Cat9300#show ptp brief | i 1/0/1 Interface Domain PTP State TwentyFiveGigE1/0/1 8 FAULTY %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to up Cat9300#show ptp brief | i 1/0/1 Interface Domain PTP State TwentyFiveGigE1/0/1 8 LISTENING %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to up Cat9300#show ptp brief | i 1/0/1 Interface Domain PTP State TwentyFiveGigE1/0/1 8 UNCALIBRATED Cat9300#show ptp brief | i 1/0/1 Interface Domain PTP State TwentyFiveGigE1/0/1 8 SLAVE
Cat9300#show platform software fed switch active ptp debugs interface twe1/0/1 Offload Monitor Data: ======================================= Ofld sig cnt: 0, Ofld ts cnt: 0, Ofld miss cnt: 0, Ofld issue hit: 0 Sig (rd,wr)ptr: (0,0), Nif (rd,wr)ptr: (0,0) Drop counters: ======================================= ptp messages dropped due to qos drain count : 0
Cat9300#show platform software fed switch active ifm mappings Interface IF_ID Inst Asic Core Port SubPort Mac Cntx LPN GPN Type Active TwentyFiveGigE1/0/1 0x9 0 0 0 0 0 7 8 1 1 NRU Y <> Cat9300#show platform software fed switch active ptp if-id 0x009 Displaying port data for if_id 9 ======================================= Port Mac Address 9C:54:16:AE:4C:81 Port Clock Identity 9C:54:16:FF:FE:AE:4C:80 Port number 1 PTP Version 2 domain_value 8 Profile Type: : DEFAULT Clock Mode : TRANSPARENT CLOCK E2E Delay mechanism: End-to-End port_enabled: TRUE ptt_port_enabled: TRUE Port state: : SLAVE sync_seq_num 52439 delay_req_seq_num 0 ptp vlan is valid : TRUE ptp vlan id 10 port mode 2 tag native vlan : FALSE num sync messages transmitted 0 num followup messages transmitted 0 num sync messages received 4434 num followup messages received 4434 num delay requests transmitted 0 num delay responses received 0 num delay requests received 0 num delay responses transmitted 0
Cat9300#show platform software fed switch active ptp domain Displaying data for domain number 8 ======================================= Profile Type : DEFAULT Profile State: enabled Clock Mode : TRANSPARENT CLOCK E2E Delay Mechanism: : END-TO-END PTP clock : 1970-1-1 1:45:13 mean_path_delay 0 nanoseconds Transport Method : 802.3 Message general ip dscp : 59 Message event ip dscp : 47
Cat9300#show platform software fed switch active ptp auto-calibrate PTP Auto Calibration: PTP auto_calibration status : FALSE
C9300-4c80#ptp calibrate interface twe1/0/1 speed all %SYS-5-CONFIG_P: Configured programmatically by process PTP protocol engine from console as vty0 %PTP_RP_MODULE-6-PTP_AUTO_CALIBRATION_COMPLETE: PTP auto calibration on the interface TwentyFiveGigE1/0/1 is complete %SYS-5-CONFIG_P: Configured programmatically by process PTP protocol engine from console as vty0
Check Interfaces
A non-zero value for input drops, output drops, or CRC errors in the path of the PTP packets causes failures.
Cat9300#show interfaces twe1/0/1 human-readable TwentyFiveGigE1/0/1 is up, line protocol is up (connected) Hardware is Twenty Five Gigabit Ethernet, address is 9c54.16ae.4c81 (bia 9c54.16ae.4c81) MTU 1500 bytes, BW 10000000 Kbit/sec, DLY 10 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive not set Full-duplex, 10Gb/s, link type is auto, media type is SFP-10GBase-CX1 input flow-control is on, output flow-control is unsupported ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:00:00, output 00:00:00, output hang never Last clearing of "show interface" counters never Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/40 (size/max) 5 minute input rate 3.0 kilobits , 5 pps 5 minute output rate 0 bits/sec, 0 packets/sec 26,497 packets input, 1,955,114 bytes, 0 no buffer Received 26,477 broadcasts (26,476 multicasts) 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored 0 watchdog, 26,476 multicast, 0 pause input 0 input packets with dribble condition detected 947 packets output, 124,533 bytes, 0 underruns Output 17 broadcasts (917 multicasts) 0 output errors, 0 collisions, 3 interface resets 2 unknown protocol drops 0 babbles, 0 late collision, 0 deferred 0 lost carrier, 0 no carrier, 0 pause output 0 output buffer failures, 0 output buffers swapped out
Check Control-plane Policing
PTP packets are processed through the Low Latency Queue. PTP traffic shares the policier index with other network traffic types so it is best to verify there are no incrementing drops on the control-plane.
Cat9300#show platform hardware fed switch active qos queue stats internal cpu policier CPU Queue Statistics ============================================================================================ (default) (set) Queue Queue QId PlcIdx Queue Name Enabled Rate Rate Drop(Bytes) Drop(Frames) -------------------------------------------------------------------------------------------- 0 11 DOT1X Auth Yes 1000 1000 0 0 1 1 L2 Control Yes 2000 2000 0 0 2 14 Forus traffic Yes 4000 4000 0 0 3 0 ICMP GEN Yes 600 600 0 0 4 2 Routing Control Yes 5400 5400 0 0 5 14 Forus Address resolution Yes 4000 4000 0 0 6 0 ICMP Redirect Yes 600 600 0 0 7 16 Inter FED Traffic Yes 2000 2000 0 0 8 4 L2 LVX Cont Pack Yes 1000 1000 0 0 9 19 EWLC Control Yes 13000 13000 0 0 10 16 EWLC Data Yes 2000 2000 0 0 11 13 L2 LVX Data Pack Yes 1000 1000 0 0 12 0 BROADCAST Yes 600 600 0 0 13 10 Openflow Yes 200 200 0 0 14 13 Sw forwarding Yes 1000 1000 0 0 15 8 Topology Control Yes 13000 13000 0 0 16 12 Proto Snooping Yes 2000 2000 0 0 17 6 DHCP Snooping Yes 400 400 0 0 18 13 Transit Traffic Yes 1000 1000 0 0 19 10 RPF Failed Yes 200 200 0 0 20 15 MCAST END STATION Yes 2000 2000 0 0 21 13 LOGGING Yes 1000 1000 0 0 22 7 Punt Webauth Yes 1000 1000 0 0 23 18 High Rate App Yes 13000 13000 0 0 24 10 Exception Yes 200 200 0 0 25 3 System Critical Yes 1000 1000 0 0 26 10 NFL SAMPLED DATA Yes 200 200 0 0 27 2 Low Latency Yes 5400 5400 0 0 <<< Queue for PTP traffic. 28 10 EGR Exception Yes 200 200 0 0 29 5 Stackwise Virtual OOB Yes 8000 8000 0 0 30 9 MCAST Data Yes 400 400 0 0 31 3 Gold Pkt Yes 1000 1000 0 0 * NOTE: CPU queue policer rates are configured to the closest hardware supported value CPU Queue Policer Statistics ==================================================================== Policer Policer Accept Policer Accept Policer Drop Policer Drop Index Bytes Frames Bytes Frames ------------------------------------------------------------------- 0 4052 48 0 0 1 3520420 10686 0 0 2 1966076 16634 0 0 <<< PTP packets share this Policier Index w/other network traffic. 3 0 0 0 0 4 0 0 0 0 5 0 0 0 0 6 0 0 0 0 7 0 0 0 0 8 2937088 45892 0 0 9 0 0 0 0 10 1770 15 0 0 11 0 0 0 0 12 0 0 0 0 13 20246 191 0 0 14 24918 252 0 0 15 0 0 0 0 16 0 0 0 0 17 0 0 0 0 18 0 0 0 0 19 0 0 0 0 Second Level Policer Statistics ==================================================================== 20 8423584 73212 0 0 21 50986 506 0 0 Policer Index Mapping and Settings -------------------------------------------------------------------- level-2 : level-1 (default) (set) PlcIndex : PlcIndex rate rate -------------------------------------------------------------------- 20 : 1 2 8 13000 13000 21 : 0 4 7 9 10 11 12 13 14 15 6000 6000 ==================================================================== Second Level Policer Config ==================================================================== level-1 level-2 level-2 QId PlcIdx PlcIdx Queue Name Enabled -------------------------------------------------------------------- 0 11 21 DOT1X Auth Yes 1 1 20 L2 Control Yes 2 14 21 Forus traffic Yes 3 0 21 ICMP GEN Yes 4 2 20 Routing Control Yes 5 14 21 Forus Address resolution Yes 6 0 21 ICMP Redirect Yes 7 16 - Inter FED Traffic No 8 4 21 L2 LVX Cont Pack Yes 9 19 - EWLC Control No 10 16 - EWLC Data No 11 13 21 L2 LVX Data Pack Yes 12 0 21 BROADCAST Yes 13 10 21 Openflow Yes 14 13 21 Sw forwarding Yes 15 8 20 Topology Control Yes 16 12 21 Proto Snooping Yes 17 6 - DHCP Snooping No 18 13 21 Transit Traffic Yes 19 10 21 RPF Failed Yes 20 15 21 MCAST END STATION Yes 21 13 21 LOGGING Yes 22 7 21 Punt Webauth Yes 23 18 - High Rate App No 24 10 21 Exception Yes 25 3 - System Critical No 26 10 21 NFL SAMPLED DATA Yes 27 2 20 Low Latency Yes 28 10 21 EGR Exception Yes 29 5 - Stackwise Virtual OOB No 30 9 21 MCAST Data Yes 31 3 - Gold Pkt No <>
Check CPU and Memory
Cat9300#show platform resources **State Acronym: H - Healthy, W - Warning, C - Critical Resource Usage Max Warning Critical State ---------------------------------------------------------------------------------------------------- Control Processor 1.28% 100% 90% 95% H DRAM 3566MB(47%) 7575MB 85% 90% H TMPFS 1001MB(13%) 7575MB 40% 50% H show processes cpu sorted | ex 0.00 show cpu history show processes memory sorted
Check TCAM
Cat9300#show platform hardware fed switch active fwd-asic resource tcam utilization Codes: EM - Exact_Match, I - Input, O - Output, IO - Input & Output, NA - Not Applicable CAM Utilization for ASIC [0] Table Subtype Dir Max Used %Used V4 V6 MPLS Other ------------------------------------------------------------------------------------------------------ Mac Address Table EM I 32768 20 0.06% 0 0 0 20 Mac Address Table TCAM I 1024 21 2.05% 0 0 0 21 L3 Multicast EM I 8192 0 0.00% 0 0 0 0 L3 Multicast TCAM I 512 9 1.76% 3 6 0 0 L2 Multicast EM I 8192 0 0.00% 0 0 0 0 L2 Multicast TCAM I 512 11 2.15% 3 8 0 0 IP Route Table EM I 24576 12 0.05% 11 0 1 0 IP Route Table TCAM I 8192 25 0.31% 12 10 2 1 QOS ACL TCAM IO 5120 85 1.66% 28 38 0 19 Security ACL TCAM IO 5120 129 2.52% 26 58 0 45 Netflow ACL TCAM I 256 6 2.34% 2 2 0 2 PBR ACL TCAM I 1024 22 2.15% 16 6 0 0 Netflow ACL TCAM O 768 6 0.78% 2 2 0 2 Flow SPAN ACL TCAM IO 1024 13 1.27% 3 6 0 4 Control Plane TCAM I 512 282 55.08% 130 106 0 46 <<< Expected to be at least 50% Tunnel Termination TCAM I 512 18 3.52% 8 10 0 0 Lisp Inst Mapping TCAM I 2048 1 0.05% 0 0 0 1 Security Association TCAM I 256 4 1.56% 2 2 0 0 CTS Cell Matrix/VPN Label EM O 8192 0 0.00% 0 0 0 0 CTS Cell Matrix/VPN Label TCAM O 512 1 0.20% 0 0 0 1 Client Table EM I 4096 0 0.00% 0 0 0 0 Client Table TCAM I 256 0 0.00% 0 0 0 0 Input Group LE TCAM I 1024 0 0.00% 0 0 0 0 Output Group LE TCAM O 1024 0 0.00% 0 0 0 0 Macsec SPD TCAM I 256 2 0.78% 0 0 0 2
Configuring an EPC
Cat9300#monitor capture tac [interface | control-plane] [in | out | both] [match | access-list] buffer size 100
Note: Check the Network Management Configuration Guide for a given platform/version for more configuration options for EPC.
Verify Rx PTP Packets at Interface Level
Cat9300#monitor capture tac interface twe1/0/1 in match any buffer size 100 Cat9300#monitor capture tac start Started capture point : tac %BUFCAP-6-ENABLE: Capture Point tac enabled. C9300-4c80#monitor capture stop Capture statistics collected at software: Capture duration - 3 seconds Packets received - 28 Packets dropped - 0 Packets oversized - 0 Bytes dropped in asic - 0 Capture buffer exists till exported or cleared Stopped capture point : tac %BUFCAP-6-DISABLE: Capture Point tac disabled. C9300-4c80#show monitor capture tac buffer brief | i PTP 2 0.032858 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message 12 1.032894 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message 15 2.032831 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message 28 3.033414 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message
Verify Rx Packets arrive at Control-Plane
Cat9300#monitor capture cpu control-plane in match any buffer size 100 Cat9300#monitor capture cpu start Started capture point : cpu Cat9300# *Sep 28 14:05:28.375: %BUFCAP-6-ENABLE: Capture Point cpu enabled. Cat9300#
Verify Tx PTP Packets at Control-Plane Level
This would indicate the Cisco IOS-XE software and CPU is generating Rx PTP Packets.
Note: An ingress EPC on a next hop switch or SPAN/RSPAN is more reliable to validate a local ordinary clock is sending out PTP packets.
Note: CPU-Generated packets such as ' ' are not be seen on egress with an EPC configured on a physical interface, a documented limitation of the EPC tool.
Cat9300#monitor capture cpu control-plane out match any buffer size 100 Cat9300#monitor capture cpu start
Debug | Purpose |
autocalibration | |
bmc | Displays what interface is selected for |
messages |
autocalibration debug
21:41:12.543: %LINK-5-CHANGED: Interface TwentyFiveGigE1/0/1, changed state to administratively down 21:41:13.542: %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to down 21:41:13.543: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to down 1:41:29.714: Autocalibration: No autocalibration is progress (status - 0) or linkup interface TwentyFiveGigE1/0/1 different from autocalibrtion interface No interface 21:41:30.118: %SYS-5-CONFIG_I: Configured from console by console 21:41:31.714: %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to down 21:41:35.821: %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to up 21:41:37.824: %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to up 21:41:37.824: Autocalibration: No autocalibration is progress (status - 0) or linkup interface TwentyFiveGigE1/0/1 different from autocalibrtion interface No interface 21:41:38.849: Autocalibration: No autocalibration is progress (status - 0) or linkup interface Vlan10 different from autocalibrtion interface No interface 21:41:39.849: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to up
bmc debug
21:41:12.543: %LINK-5-CHANGED: Interface TwentyFiveGigE1/0/1, changed state to administratively down 21:41:13.542: %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to down 21:41:13.543: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to down 21:41:30.118: %SYS-5-CONFIG_I: Configured from console by console 21:41:31.714: %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to down 21:41:35.821: %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to up 21:41:37.824: %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to up 21:41:39.849: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to up 21:41:40.277: Set gmc interface: TwentyFiveGigE1/0/1 <<<
messages debug
Cat9300#clear logging
Cat9300#conf t Enter configuration commands, one per line. End with CNTL/Z. Clear logging buffer [confirm] Cat9300(config)# Cat9300(config)#int twe1/0/1 Cat9300(config-if)#shut Cat9300(config-if)#end Cat9300# Cat9300#debug ptp messages PTP Messages debugging is on Cat9300# Cat9300#conf t Enter configuration commands, one per line. End with CNTL/Z. Cat9300(config)#interface twe1/0/1 Cat9300(config-if)#no shut Cat9300(config-if)#end Cat9300# Cat9300#show ptp bri | i 1/0/1 TwentyFiveGigE1/0/1 8 FAULTY Cat9300#show ptp bri | i 1/0/1 TwentyFiveGigE1/0/1 8 LISTENING Cat9300#show ptp bri | i 1/0/1 TwentyFiveGigE1/0/1 8 UNCALIBRATED Cat9300#show ptp bri | i 1/0/1 TwentyFiveGigE1/0/1 8 SLAVE Cat9300#undebug all All possible debugging has been turned off Cat9300# Cat9300#show logging <> Log Buffer (131072 bytes): 21:59:06.980: %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to down 21:59:07.826: %SYS-5-CONFIG_I: Configured from console by console 21:59:11.271: %LINK-3-UPDOWN: Interface TwentyFiveGigE1/0/1, changed state to up 21:59:12.976: Cisco IOS-FMAN-PTP:retrieve interface: Twe1/0/1 iif_id: 9(fmanrp_ptp_port_data_update) ptp port data: <<< local data sent by clock if_hdl = 9 mac address = 9c54.16ae.4c81 <<< similar to local clock identity domain_value = 8 port_number = 1 port_state = 4 port_enabled = 1 ptt_port_enabled = 1 delete_flag = False 21:59:12.976: ####ptp_port_data PTP_SHIM_TDL_MSG####: message@ptp_port_data: { ptp_port_data@ptp_port_data: { if_hdl@U32:9 domain_value@U8:8 clk_identity[0]@U8:156 clk_identity[1]@U8:84 clk_identity[2]@U8:22 clk_identity[3]@U8:255 clk_identity[4]@U8:254 clk_identity[5]@U8:174 clk_identity[6]@U8:76 clk_identity[7]@U8:128 intf_mac@tdl_mac_addr: { mac[0]@U8:156 mac[1]@U8:84 mac[2]@U8:22 mac[3]@U8:174 mac[4]@U8:76 mac[5]@U8:129 } port_number@U8:1 sync_interval_96_32@U64:5 sync_interval_31_0@U32:57005 pdelay_req_avg_interval@U8:0 port_state@U8**MSG 00030 TRUNCATED** **MSG 00030 CONTINUATION #01**:4 port_enabled@U8:1 ptt_port_enabled@U8:1 sync_interval@I8:0 delay_req_interval@I8:0 pdelay_req_interval@I8:0 ptp_vlan_id@U16:10 ptp_vlan_id_valid@tdl_boolean:TDL_TRUE port_mode@U8:2 tag_native_vlan@tdl_boolean:TDL_FALSE ip_addr@U32:168430083 transport_protocol@U8:3 virtual_slot@U8:0 virtual_port@U16:0 peer_clk_ip@U32:0 vrf_id@U32:0 clk_idty_port_num@U16:1 ptp_dest_mac_non_forwardable@tdl_boolean:TDL_FALSE } cfg_action@cfg_action:MCP_CFG_ACTION_NONE } 21:59:13.273: %LINEPROTO-5-UPDOWN: Line protocol on Interface TwentyFiveGigE1/0/1, changed state to up <<< 21:59:13.846: dst mac 1 (cond1) 21:59:13.846: received message on TwentyFiveGigE1/0/1 <<< 21:59:13.846: PTP message received, intf: TwentyFiveGigE1/0/1, type: ANNOUNCE 21:59:14.329: Cisco IOS-FMAN-PTP:retrieve interface: Twe1/0/1 iif_id: 9(fmanrp_ptp_port_data_update) ptp port data: if_hdl = 9 mac address = 9c54.16ae.4c81 domain_value = 8 port_number = 1 port_state = 8 port_enabled = 1 ptt_port_enabled = 1 delete_flag = False 21:59:14.329: ####ptp_port_data PTP_SHIM_TDL_MSG####: message@ptp_port_data: { ptp_port_data@ptp_port_data: { if_hdl@U32:9 domain_value@U8:8 clk_identity[0]@U8:156 clk_identity[1]@U8:84 clk_identity[2]@U8:22 clk_identity[3]@U8:255 clk_identity[4]@U8:254 clk_identity[5]@U8:174 clk_identity[6]@U8:76 clk_identity[7]@U8:128 intf_mac@tdl_mac_addr: { mac[0]@U8:156 mac[1]@U8:84 mac[2]@U8:22 mac[3]@U8:174 mac[4]@U8:76 mac[5]@U8:129 } port_number@U8:1 sync_interval_96_32@U64:5 sync_interval_31_0@U32:57005 pdelay_req_avg_interval@U8:0 port_state@U8**MSG 00031 TRUNCATED** **MSG 00031 CONTINUATION #01**:8 port_enabled@U8:1 ptt_port_enabled@U8:1 sync_interval@I8:0 delay_req_interval@I8:0 pdelay_req_interval@I8:0 ptp_vlan_id@U16:10 ptp_vlan_id_valid@tdl_boolean:TDL_TRUE port_mode@U8:2 tag_native_vlan@tdl_boolean:TDL_FALSE ip_addr@U32:168430083 transport_protocol@U8:3 virtual_slot@U8:0 virtual_port@U16:0 peer_clk_ip@U32:0 vrf_id@U32:0 clk_idty_port_num@U16:1 ptp_dest_mac_non_forwardable@tdl_boolean:TDL_FALSE } cfg_action@cfg_action:MCP_CFG_ACTION_NONE } 21:59:14.845: dst mac 1 (cond1) 21:59:14.846: received message on TwentyFiveGigE1/0/1 21:59:14.846: PTP message received, intf: TwentyFiveGigE1/0/1, type: ANNOUNCE 21:59:15.845: dst mac 1 (cond1) 21:59:15.845: received message on TwentyFiveGigE1/0/1 21:59:15.845: PTP message received, intf: TwentyFiveGigE1/0/1, type: ANNOUNCE 21:59:15.976: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to up 21:59:16.775: Set gmc interface: TwentyFiveGigE1/0/1 <<< 21:59:16.776: Cisco IOS-FMAN-PTP: instance_conf data: instance_id = 0 profile_type = 0 profile_domain = 8 clock_mode = 3 enable = 1 is_gm = 0 clocksource = 160 gm_capable = 1 gm_present = 1 neighbor_prop_delay_threshold = 800 ns transport_protocol = 3 delay_mech = 1 scm_module_num = 1 delete_flag = False 21:59:16.776: ####ptp_domain_config PTP_SHIM_TDL_MSG####: message@ptp_domain_config: { ptp_domain_cfg@ptp_domain_cfg: { value@U8:0 profile_type@U8:0 enable@U8:1 is_gm@U8:0 priority2@U8:8 clocksource@U8:160 gm_capable@U8:1 neighbor_prop_delay_threshold@U64:800 clock_mode@U8:3 pdelay_mechanism@U8:0 gm_present@U8:1 delay_mech@U8:1 transport_protocol@U8:3 master_module_num@U32:1 } cfg_action@cfg_action:MCP_CFG_ACTION_NONE } Cat9300#
Run this tool if PTP packets are seen arriving at interface but not punted to the control plane.
1. Configure ingress EPC on PTP enabled interface.
2. View buffer output and filter for PTP and make note of PTP packet number. Cat9300#show monitor capture tac buffer brief | i PTP 2 0.032858 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message <<< 12 1.032894 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message 15 2.032831 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message 28 3.033414 74:8f:c2:dc:b0:63 -> 01:1b:19:00:00:00 PTPv2 82 Announce Message
3. Export buffer to .pcap on Switch's flash. Cat9300-4c80#monitor capture tac export location flash:/ptp-cpu.pcap
4. Execute the SPF command and make note of interface where PTP packets are expected to ingress and reference the packet number from buffer brief command. Cat9300#show platform hardware fed switch active forward interface twe1/0/1 pcap flash:ptp-cpu.pcap number 2 data Show forward is running in the background. After completion, syslog can be generated. 4. View Forward/Drop decision Cat9300#show platform hardware fed switch active forward last summary Input Packet Details: ###[ Ethernet ]### dst = 01:1b:19:00:00:00 src=74:8f:c2:dc:b0:63 type = 0x8100 ###[ 802.1Q ]### prio = 0 id = 0 vlan = 10 type = 0x88f7 ###[ Raw ]### load = '0B 02 00 40 08 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 74 8F C2 FF FE DC B0 60 00 03 0B 11 05 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 F8 FE 43 6A 80 74 8F C2 FF FE DC B0 60 00 00 A0' Ingress: Port : TwentyFiveGigE1/0/1 Global Port Number : 1 Local Port Number : 1 Asic Port Number : 0 Asic Instance : 0 Vlan : 10 Mapped Vlan ID : 5 STP Instance : 3 BlockForward : 0 BlockLearn : 0 L3 Interface : 38 IPv4 Routing : enabled IPv6 Routing : enabled Vrf Id : 0 Adjacency: Station Index : 172 Destination Index : 21151 Rewrite Index : 1 Replication Bit Map : 0xa ['localCpu', 'remoteCpu'] Decision: Destination Index : 21151 [DI_CPUQ_LOW_LATENCY] Rewrite Index : 1 [RI_CPU] Dest Mod Index : 0 [IGR_FIXED_DMI_NULL_VALUE] CPU Map Index : 0 [CMI_NULL] Forwarding Mode : 0 [Bridging] Replication Bit Map : ['localCpu', 'remoteCpu'] Winner : CPPMAC LOOKUP2 Qos Label : 65 SGT : 0 DGTID : 0 Egress: Possible Replication : Port : CPU_Q_LOW_LATENCY <<< This should be the forwarding decision to this CPU queue. Any drops are unexpected and should be investigated. Output Port Data : Port : CPU Asic Instance : 0 CPU Queue : 27 [CPU_Q_LOW_LATENCY] Unique RI : 0 Rewrite Type : 0 [Unknown] Mapped Rewrite Type : 17 [CPU_ENCAP] Vlan : 10 Mapped Vlan ID : 5 ******************************************************************************** C9300-4c80#
ID | Title Cisco bug ID |
Cisco bug ID CSCvg24999 | Switch crashes on ptp mode p2ptransparent. |
Cisco bug ID CSCwf81913 | PTP stops working on Catalyst switches, ports going into status uncalibrated. |
Cisco bug ID CSCwa49052 | PTP Offset & Mean Path delay can stuck on the bad switches and can never increment.Cisco bug ID |
Cisco bug ID CSCvu73652 | C9300 - PTP event messages with source port unequal 319 dropped. Cisco bug ID |
Cisco bug ID CSCwc35946 | Inconsistent CLI Options When Changing Between 8275.1, 802.1AS, and Default PTP Profile. |
Cisco bug ID CSCwc00050 | Unable to Change PTP Mode via Web UI |
Revision | Publish Date | Comments |
---|---|---|
1.0 |
10-Oct-2023 |
Initial Release |