Precision Time Protocol (PTP), defined by IEEE 1588, synchronizes real-time clocks across network devices to nanosecond accuracy using a grandmaster-boundary-ordinary clock hierarchy with continuously exchanged timing messages. IOS-XR PTP supports ITU-T telecom profiles (G.8265.1, G.8275.1, G.8275.2), per-interface and global profile assignment, unicast/multicast transport modes, master/slave peer management, interop domain conversions, and UTC leap-second offset scheduling.
Name Type Constraint Mandatory Default Value configuration Class configuration No
Name Type Constraint Mandatory Default Value configuration Class configuration No
Name Type Constraint Mandatory Default Value configuration Class configuration No
Name Type Constraint Mandatory Default Value ptp Class ptp No
Name Type Constraint Mandatory Default Value apts Boolean true, falseNo clock Class clock No detect_ ptsf_ unusable Boolean true, falseNo double_ failure_ clock_ class Integer min: 0, max: 255 No freerun_ clock_ class Integer min: 0, max: 255 No frequency_ priority Integer No holdover_ spec_ clock_ class Integer min: 0, max: 255 No holdover_ spec_ duration Integer No holdover_ spec_ traceable_ override Boolean true, falseNo ipv6_ verify_ checksum Boolean true, falseNo log_ best_ primary_ clock_ changes Boolean true, falseNo log_ servo_ events Boolean true, falseNo min_clock_class Integer min: 0, max: 255 No network_ type_ high_ pdv Boolean true, falseNo performance_ monitoring Boolean true, falseNo phase_ difference_ threshold_ breach Integer No physical_ layer_ frequency Boolean true, falseNo profiles List profiles No servo_ slow_ tracking Integer No startup_ clock_ class Integer min: 0, max: 255 No time_ of_ day_ priority Integer No transparent_ clock_ domain_ all Boolean true, falseNo uncalibrated_ clock_ class Integer min: 0, max: 255 No uncalibrated_ traceable_ override Boolean true, falseNo uncalibrated_ unless_ from_ holdover Boolean true, falseNo utc_ offset_ baseline Integer No utc_offsets List utc_offsets No virtual_port Class virtual_port No
Name Type Constraint Mandatory Default Value clock_class Integer min: 0, max: 255 No domain Integer min: 0, max: 255 No identity_eui_64 String No identity_mac Any String or Choice[router] or String[Regex: ^.*[\$\%]\{.*$] No priority1 Integer min: 0, max: 255 No priority2 Integer min: 0, max: 255 No profile Choice g-8265-1, g-8275-1, g-8275-2No profile_ clock_ type Choice primary, slave, t-bc, t-gm, t-tscYes time_source Choice atomic-clock, gps, terrestrial-radio, ptp, ntp, hand-set, other, internal-oscillatorNo timescale Choice ptp, arbNo
Name Type Constraint Mandatory Default Value announce_ frequency Choice 1, 2, 4, 8, 16, 32, 64, 128No announce_ grant_ duration Integer min: 60, max: 1000 No announce_ interval Choice 1, 2, 4, 8, 16, 32, 64, 128No announce_ timeout Integer min: 2, max: 10 No clock_operation Choice one-step, two-stepNo cos Integer min: 0, max: 7 No cos_event Integer min: 0, max: 7 No cos_general Integer min: 0, max: 7 No delay_ asymmetry_ unit Choice nanoseconds, microseconds, millisecondsNo delay_ asymmetry_ value Integer min: -500000000, max: 500000000 No delay_ request_ frequency Choice 1, 2, 4, 8, 16, 32, 64, 128No delay_ request_ interval Choice 1, 2, 4, 8, 16, 32, 64, 128No delay_ response_ grant_ duration Integer min: 60, max: 1000 No delay_ response_ timeout Integer min: 100, max: 100000 No dscp Integer min: 0, max: 63 No dscp_event Integer min: 0, max: 63 No dscp_general Integer min: 0, max: 63 No interop Class interop No ipv4_ttl Integer min: 1, max: 255 No ipv6_hop_limit Integer min: 1, max: 255 No masters List masters No multicast Choice enable, disable, mixedNo multicast_ target_ address Choice 01-1B-19-00-00-00, 01-80-C2-00-00-0ENo name String Yes port_state Choice any, master-only, slave-onlyNo slaves List slaves No source_ ipv4_ address IP No source_ ipv6_ address IP No sync_frequency Choice 1, 2, 4, 8, 16, 32, 64, 128No sync_ grant_ duration Integer min: 60, max: 1000 No sync_interval Choice 1, 2, 4, 8, 16, 32, 64, 128No sync_timeout Integer min: 100, max: 100000 No transport Choice ethernet, ipv4, ipv6No unicast_ grant_ invalid_ request Choice deny, reduceNo
Name Type Constraint Mandatory Default Value date String Yes offset_value Integer Yes
Name Type Constraint Mandatory Default Value clock_accuracy Integer No clock_class Integer No enable Boolean true, falseNo gm_ threshold_ breach Integer No local_priority Integer No offset_ scaled_ log_ variance Integer No priority1 Integer min: 0, max: 255 No priority2 Integer min: 0, max: 255 No
Name Type Constraint Mandatory Default Value domain Integer min: 0, max: 255 No egress_ conversion Class egress_ conversion No ingress_ conversion Class ingress_ conversion No profile Choice default, g-8265-1, g-8275-1, g-8275-2No
Name Type Constraint Mandatory Default Value address String Yes clock_class Integer min: 0, max: 255 No delay_ asymmetry_ unit Choice nanoseconds, microseconds, millisecondsNo delay_ asymmetry_ value Integer min: -500000000, max: 500000000 No multicast Choice enable, mixedNo non_negotiated Boolean true, falseNo priority Integer min: 0, max: 255 No
Name Type Constraint Mandatory Default Value address String Yes non_negotiated Boolean true, falseYes
Name Type Constraint Mandatory Default Value clock_accuracy Integer min: 0, max: 254 No clock_ class_ default Integer min: 0, max: 255 No clock_ class_ mappings List clock_ class_ mappings No offset_ scaled_ log_ variance Integer min: 0, max: 65535 No priority1 Integer min: 0, max: 255 No priority2 Integer min: 0, max: 255 No
Name Type Constraint Mandatory Default Value clock_accuracy Integer min: 0, max: 254 No clock_ class_ default Integer min: 0, max: 255 No clock_ class_ mappings List clock_ class_ mappings No offset_ scaled_ log_ variance Integer min: 0, max: 65535 No priority1 Integer min: 0, max: 255 No priority2 Integer min: 0, max: 255 No
Name Type Constraint Mandatory Default Value class_from Integer min: 0, max: 255 Yes class_to Integer min: 0, max: 255 Yes
MAC Address Formats
The following attributes accept MAC addresses in any of three formats:
PTP Master/Slave addresses
PTP Clock idenfity
colon-separated (e.g., "aa:bb:cc:dd:ee:ff")
dash-separated (e.g., "aa-bb-cc-dd-ee-ff")
dotted (e.g., "aabb.ccdd.eeff")
All 3 formats can be used interchangeably. The normalization layer converts the user-specified format to colon-separated before sending to the device.
Address Selection
Master and slave peer lists accept IPv4, IPv6, and MAC addresses in a single masters: or slaves: list. The address type is automatically detected:
IPv4: dotted-decimal notation (e.g., 10.3.3.3)
IPv6: colon-hex notation (e.g., 2001:db8::3)
MAC: colon, dash, or dotted format (e.g., aa:bb:cc:dd:ee:f4, aa-bb-cc-dd-ee-ff, aabb.ccdd.eeff)
Example-1: Global PTP with clock profile g-8275-1 and virtual port.
physical_layer_frequency : true
log_best_primary_clock_changes : true
Example-2: PTP profile with ethernet transport, masters, and slaves.
clock_operation : one-step
delay_request_interval : 2
- address : " aa:bb:cc:dd:ee:f4 "
Example-3: PTP profile with interop conversions and delay asymmetry.
source_ipv4_address : 10.1.1.1
delay_asymmetry_value : 1000
delay_asymmetry_unit : microseconds