Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
Junos CLI Reference
Table of Contents Expand all
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

ptp

date_range 17-Mar-25

Syntax

content_copy zoom_out_map
ptp {
    acquiring-state-announce-grandmaster;
    apts (domain domain | apply-groups | apply-groups-except)
    clock-mode(boundary | ordinary);
    disable-lag-revertive-switchover;
    domain domain;
    e2e-transparent;
    frequency-lock-threshold frequency-lock-threshold;
    holdover-in-spec-duration time duration;
    holdover-time-error-budget holdover-time-error-budget;
    ipv4-dscp ipv4-dscp;
    ipv6-dscp ipv6-dscp;
    local-priority local-priority;
    master {...}
    path-trace;
    performance-monitor {...}
    phase-adjust-threshold phase-adjust-threshold;
    phase-lock-threshold phase-lock-threshold;
    phy-timestamping;
    priority1 priority1; 
    priority2 priority2; 
    profile-type(aes67 | aes67-smpte | enterprise-profile | g.8275.1 | g.8275.1.enh | g.8275.2 | g.8275.2.enh | ieee1588v2-custom | ieee-2008 | smpte);
    slave {...}
    stateful {...}
    syntonized-e2e-transparent;
    timescale arbitrary;
    unicast-negotiation;
    utc-leap-seconds utc-leap-seconds;
}

Syntax (MX10008)

content_copy zoom_out_map
ptp {
    clock-mode(boundary | ordinary);
    disable-lag-revertive-switchover;
    domain domain;
    e2e-transparent;
    frequency-lock-threshold frequency-lock-threshold;
    holdover-time-error-budget holdover-time-error-budget;
    ipv4-dscp ipv4-dscp;
    ipv6-dscp ipv6-dscp;
    local-priority local-priority;
    master {...}
    path-trace;
    performance-monitor {...}
    phase-adjust-threshold phase-adjust-threshold;
    phase-lock-threshold phase-lock-threshold;
    phy-timestamping;
    priority1 priority1; 
    priority2 priority2; 
    profile-type(aes67 | g.8275.1 | g.8275.1.enh | g.8275.2 | g.8275.2.enh | ieee1588v2-custom | ieee-2008);
    slave {...}
    stateful {...}
    unicast-negotiation;
    utc-leap-seconds utc-leap-seconds;
}

Syntax (ACX7100-32C, ACX7100-48L and ACX7024)

content_copy zoom_out_map
ptp {
    apts (domain domain | apply-groups | apply-groups-except)
    clock-mode(boundary | ordinary);
    disable-lag-revertive-switchover;
    domain domain;
    e2e-transparent;
    frequency-lock-threshold frequency-lock-threshold;
    holdover-in-spec-duration time duration;
    holdover-time-error-budget holdover-time-error-budget;
    ipv4-dscp ipv4-dscp;
    ipv6-dscp ipv6-dscp;
    local-priority local-priority;
    master {...}
    path-trace;
    performance-monitor {...}
    phase-adjust-threshold phase-adjust-threshold;
    phase-lock-threshold phase-lock-threshold;
    priority1 priority1; 
    priority2 priority2; 
    profile-type(g.8275.1 | g.8275.1.enh | g.8275.2.enh );
    slave {...}
    stateful {...}
    syntonized-e2e-transparent;
    timescale arbitrary;
    unicast-negotiation;
    utc-leap-seconds utc-leap-seconds;
}

Syntax (QFX Series)

content_copy zoom_out_map
ptp { 
     clock-mode(boundary | ordinary);
     domain domain;
     ipv4-dscp ipv4-dscp;
     ipv6-dscp ipv6-dscp;
     local-priority local-priority;
     priority2 priority2;
     profile-type(aes67 | aes67-smpte | enterprise-profile | g.8275.2.enh | smpte);
     unicast-negotiation;
     slave {  
         interface interface-name;
         announce-interval announce-interval;
         sync-interval sync-interval;
         delay-request delay-request;
         announce-timeout announce-timeout;
         grant-duration grant-duration;
     }
     master {
          interface interface-name; 
          announce-interval announce-interval;
          sync-interval sync-interval;
          delay-req-timeout delay-req-timeout;
     }
}

Syntax (QFX5120-48T)

content_copy zoom_out_map
ptp { 
     clock-mode(boundary | ordinary);
     domain domain;
     ipv4-dscp ipv4-dscp;
     ipv6-dscp ipv6-dscp;
     local-priority local-priority;
     priority2 priority2;
     profile-type(g.8275.2.enh);     unicast-negotiation;
     slave {  
          interface interface-name;
          announce-interval announce-interval;
          sync-interval sync-interval;
          delay-request delay-request;
          announce-timeout announce-timeout;
          grant-duration grant-duration;
     }
     master {
          interface interface-name; 
          announce-interval announce-interval;
          sync-interval sync-interval;
          delay-req-timeout delay-req-timeout;
     }
}

Syntax (QFX5130-48C)

content_copy zoom_out_map
ptp { 
     clock-mode(boundary | ordinary);
     domain domain;
     e2e-transparent;
     ipv4-dscp ipv4-dscp;
     local-priority local-priority;
     priority2 priority2;
     profile-type(aes67 | aes67-smpte | enterprise-profile | smpte);
     slave {  
          interface interface-name;
          announce-interval announce-interval;
          sync-interval sync-interval;
          delay-request delay-request;
          announce-timeout announce-timeout;
     }
     master {
          interface interface-name; 
          announce-interval announce-interval;
          sync-interval sync-interval;
          delay-req-timeout delay-req-timeout;
     }
}

Syntax (PTX10004 and PTX10008)

content_copy zoom_out_map
ptp {
     acquiring-state-announce-grandmaster;
     clock-mode(boundary | ordinary);
     disable-lag-revertive-switchover;
     domain domain;
     e2e-transparent;
     holdover-time-error-budget holdover-time-error-budget;
     ipv4-dscp ipv4-dscp;
     ipv6-dscp ipv6-dscp;
     local-priority local-priority;
     master {
          announce-interval announce-interval;
     }
     phy-timestamping;
     priority1 priority1;
     priority2 priority2;
     profile-type(aes67 | g.8275.1 | g.8275.2 | g.8275.2.enh | ieee-2008 | ieee1588v2-custom);
     slave {
          announce-interval announce-interval;
          announce-timeout announce-timeout;
     }
     syntonized-e2e-transparent;
     timescale arbitrary;
     unicast-negotiation;
     utc-leap-seconds utc-leap-seconds;
     performance-monitor passive-port {    
          delay-request-rate delay-request-rate;
     }
     stateful interface interface-number {    
          passive-port-monitor { 
               passive-port-monitor;
               phase-threshold <offset-threshold-value>;
          }
         not-master;
     }
}

Hierarchy Level

content_copy zoom_out_map
[edit logical-systems name protocols],
[edit protocols]
  

Description

Configure PTP on the device. PTP, also known as IEEE 1588v2, is a packet-based technology that enables the operator to deliver synchronization services on packet-based mobile backhaul networks. IEEE 1588 PTP (Version 2) clock synchronization standard is a highly precise protocol for time synchronization that synchronizes clocks in a distributed system.

The system clocks can be categorized based on the role of the node in the network. They are broadly categorized into ordinary clocks and boundary clocks. The timeTransmitter clock and the timeReceiver clock are known as ordinary clocks. The boundary clock can operate as either a timeTransmitter clock or a timeReceiver clock.

You can configure the timeTransmitter clock and the timeReceiver clock for Precision Time Protocol (PTP) to help synchronize clocks in a distributed system. The time synchronization is achieved through packets that are transmitted and received in a session between the timeTransmitter clock and the timeReceiver clock.

Starting in Junos OS Evolved Release 22.2R1, with PTP timing profiles, such as G.8275.1 and G.8275.2, the accepted clock attribute priority2 value is 255 for T-TSC clock. Any value other than 255 is rejected by the T-TSC clocks.

Starting in Junos OS Evolved Release 23.2R1, to support PTP timing profiles, such as G.8275.1 and G.8275.2, you can configure timing performance and monitoring for passive ports and stateful interfaces (only on PTX10008 devices).

Options

acquiring-state-announce-grandmaster

Use grandmaster data set for announce messages when in acquiring state.

clock-mode

Clock mode

  • boundary—The clock mode of the node is a boundary clock where the clock acts as both timeTransmitter and timeReceiver.

  • ordinary—The clock mode of the node is a system clock where the clock acts either as a timeTransmitter or as a timeReceiver. The ordinary option is not supported on ACX710 devices.

disable-lag-revertive-switchover

Disable revertive switchover for LAG.

domain

PTP domain number. This option is applicable to G.8275.1 profile.

  • 0 through 127.

e2e-transparent

Enable end-to-end IEEE1588 transparent clock functionality.

frequency-lock-threshold

Control the frequency offset in parts per billion (ppb) that the servo will lock with. Review frequency-lock-threshold.

Note:

This option is available only on supported platforms.

holdover-in-spec-duration

In case, both GNSS and the PTP timing reference are lost or inactive, then the internal clock oscillator provides synchronization for the specified duration.

After the holdover time expires, the clock class transition happens based on the mode of the system (T-GM or APTS). For example, in T-GM mode, when the holdover timer is set to 120 minutes, the system sends the clock class 7 for 120 minutes and thereafter clock class 160 is sent. Similarly, in T-BC-A mode, when the holdover timer is set to 120 minutes, the system sends the clock class 135 for 120 minutes and thereafter clock class 165 is sent.

Note:

This option is available only on supported platforms.

  • Default: 240 (minutes)

  • Range: 5 through 1440 (minutes)

holdover-time-error-budget

PTP clock holdover in specification time error budget in nano second (ns)

  • Default: 400

  • Range: 0 through 10000.

ipv4-dscp

IPv4 DiffServ code point (DSCP) value to be used for PTP packets

  • 0 through 63.

ipv6-dscp

IPv6 DiffServ code point (DSCP) value to be used for PTP packets

  • 0 through 63.

local-priority

Priority assigned to the local clock

  • 1 through 255.

phase-adjust-threshold Set the maximum phase offset that will be adjusted by the G.8275.2 enhanced servo in a phase-aligned state. Review phase-adjust-threshold.
Note:

This option is available only on supported platforms.

phase-lock-threshold Control the maximum phase offset with which G.8275.2 enhanced servo enters the phase-aligned state. Review phase-lock-threshold.
Note:

This option is available only on supported platforms.

phy-timestamping

PHY timestamping feature.

priority1

Used in selecting best timeTransmitter clock

  • 0 through 255.

priority2

Tie-breaker in selecting best timeTransmitter clock

  • 0 through 255.

profile-type

PTP profile type

  • aes67—Enable the AES67 PTP profile.

  • aes67-smpte—Enable the AES67 and SMPTE ST-2059-2 PTP profile.

  • enterprise-profile—Enable the enterprise profile. The enterprise profile supports IEEE 1588 PTPv2 transport over multicast IPv4. When the enterprise profile is enabled, no other profiles can be enabled. Also, unicast negotiation is disabled when you enable the enterprise profile.

  • g.8275.1—Enable the G.8275.1 PTP profile.

  • g.8275.1.enh—Enable the enhanced G.8275.1 PTP profile. This profile supports PTP over IPv4 and IPv6.

  • g.8275.2—Enable the G.8275.2 PTP profile.

  • g.8275.2.enh—Enable the enhanced G.8275.2 PTP profile.

  • ieee-2008—Enable the IEEE 2008 profile type (default).

  • ieee1588v2-custom—Enable the IEEE1588v2 with Multicast.

  • smpte—Enable the SMPTE ST-2059-2 PTP Profile.

syntonized-e2e-transparent

Enable end-to-end syntonized IEEE1588 transparent clock functionality.

timescale

The timescale of the timeTransmitter.

  • arbitrary—TimeTransmitter clock with arbitrary timescale.

unicast-negotiation

Enable unicast negotiation.

utc-leap-seconds

UTC leap seconds offset

  • 0 through 255.

The following options are available only for PTX10008 devices: performance-monitor Configure performance-monitor PTP packet delay metrics

passive-port – Enable PTP performance monitoring for passive ports

  • delay-request-rate – Log mean interval between delay requests. Valid range is -4 to 4. This represents the packet rates as 2^(-4) that is (16 packets per second) to 2^4 (1 packets per 1 second). Default value is -4.

stateful interface

Stateful parameters to set interfaces to PTP stateful role.

<interface name> – Interface name or port range. For example, et-0/0/4:0.0, et-0/0/4:1.0, et-2/0/4.0

passive-port-monitor – Configure passive port monitoring.

  • phase-threshold <offset-threshold-value> – Configure phase offset threshold value for raising alarm, relative to active timeReceiver port. Valid range is 20 to 100000000 nanoseconds.

not-master – Configures port as timeReceiver or passive or listening port.

measure-only – Configures port as passive or listening port.

The remaining statements are explained separately. See CLI Explorer.

Required Privilege Level

routing-To view this statement in the configuration.

Release Information

Statement introduced in Junos OS Release 12.2R1

frequency-lock-threshold, phase-adjust-threshold, and phase-lock-threshold options introduced in Junos OS Release 23.4R1 for MX10008 routers.

frequency-lock-threshold, phase-adjust-threshold, and phase-lock-threshold options supported on ACX7100-32C, ACX7100-48L, and ACX7024 routers in Junos OS Evolved Release 24.2R1.

PTP profile-type options added to QFX5130-48C devices in Junos OS Evolved Release 24.2R1.

apts and holdover-in-spec-duration options introduced in Junos OS Evolved Release 24.2R2 for ACX7024.

footer-navigation