IEEE 1588-2008 (PTPv2)

The IEEE 1588-2008 (PTPv2) module offers interoperability with a wide range of 3rd party devices. It has been specifically designed to work as PTP master while supporting the following profiles:

  • Default
  • Telecom profiles:
    • G.8265.1
  • Power profiles:
    • IEEE C37.238-2017
    • IEEE 61850-9-3

License

Note: PTP License: A specific license must be purchased in order to get full access to the IEEE 1588-2008 (PTPv2) module. When no license is provided, the PTP instance will start with default profile and parameters. The user will only be allowed to configure the Role of the port (Master, Slave & Disabled).

The following table compares the configuration of IEEE-1588 (PTP) when using or not a valid license.

IEEE 1588 configuration with/without license

PTP With License Without License
Mode Auto, Master, Slave, Disabled Master, Slave or Disabled
Transfer mode Multicast, Unicast, or Hybrid Multicast
Unicast Negotiation Enabled or Disabled Disabled
Delay Mechanism End to End (E2E) or Peer to Peer (P2P) End to End (E2E)
Network mode IPv4 or Ethernet (layer 2) IPv4
Domain 0-255 0
Announce ratio [1 msg/128s, 16 msg/s] ([-7,4]) 1 msg/sec
Sync ratio [1 msg/128s,128 msg/s] ([-7,7]) 1 msg/sec
Delay Req ratio [1 msg/128s,128 msg/s] ([-7,7]) 1 msg/sec
Advanced Settings
Offset correction Any number (in nanoseconds) 0
Servo Fit Algorithm Normal, Soft, Hard, Hardx2 Normal

PTP license management

All the topics related to PTP license management such as purchasing, activating and checking are explained within the Licenses section (Licenses).

Once the license is activated (see image below) the web interface should allow the user to configure these settings as explained in Configuration.

Unlicensed VS Licensed PTP daemon

Note: The CLI tool allows to modify and save all the parameters listed in IEEE 1588 configuration with/without license even without license. However, they will not be Applied/Loaded until the PTP license is validated.

Configuration

Note: Master/Slave port configuration: The role of the port is given by the Preset (Presets) and cannot be modified directly from the PTPv2 configuration tab. The section Custom should be read in case the user needs to modify the role for a specific port.

Note: PTP provides many options to support a wide range of applications. Then, the PTP profiles restrain some specific settings in order to limit compatibility to only a subset of PTP. The user should thus consider these restrictions when configuring PTP for a specific profile.

The parameters associated to PTP are listed below:

OID Name Value Type Description
19.xx13.x net/<iface>/1/cfg Configuration of the corresponding <iface> port instance.
19.xx13.8 Profile 0. Default
1. Custom
2. Telecom 8265.1
3. C37.238-2017 Power
4. 61850-9-3 Power

Profile selected (Default, telecom...) with a set of options pre-configured.

Default: Default profile.

19.xx13.9 Transport Protocol

5. Layer 2
6. UDP/IPv4

Default: Layer 2

Define the network layer that delivers the PTP packets.
19.xx13.10 Delay Mechanism

0. E2E
1. P2P

Default: E2E

Path delay measuring mechanism used by the PTP Port {E2E (End to End delay request-response mechanism), P2P (Peer to Peer delay mechanism) }.
19.xx13.11 Transport Mode

0. Multicast
1. Unicast
2. Hybrid Default: Multicast

By default, multicast is used to automatically discover the PTP peers.
When unicast mode is selected, the PTP topology must be pre-defined by filling unicast destination.
The hybrid mode will send delay request and response packets via unicast and the others via multicast.
19.xx13.12 Unicast Negotiation <Bool> Default: No Enable unicast negotiation support. This option is needed by ITU-T G8265.1
When Unicast is enabled, this parameter will be activated automatically.
19.xx13.13 Unicast Destination <String> Default: empty IPv4 address (or coma separated list of IPv4 addresses). Mandatory for slave unicast as they must request to a predefined GM(s). Mandatory for GMs with unicast negotiation disabled as they must deliver to a pre-configured group of slaves.
19.xx13.14 Domain <Integer> [0-255] Default: 0 Domain number associated to the PTP transactions. Several domains can work simultaneously. PTP profiles can restrict the value of domain number (i.e., 8265.1)
19.xx13.20 Announce Rate <Enums> Default: 1 packet/s Rate of announce messages transmitted to be used by BMCA/FOCA. From 1 packet each [2,4,8,16,32,128] seconds to [1,2,4,8,16] packets per second.
19.xx13.21 Sync Rate <Enums> Default: 1 packet/s Rate of sync (and follow-up) messages from master to slave (Figure IEEE 1588-2008 (PTPv2)). From 1 packet each [2,4,8,16,32,128] seconds to [1,2,4,8,16,32,61,128] packets per second.
19.xx13.22 Delay Req Rate <Enums> Default: 1 packet/s Rate of delay request from slave to master. From 1 packet each [2,4,8,16,32,128] seconds to [1,2,4,8,16,32,61,128] packets per second.
19.xx13.23 Peer Delayreq Rate <Enums> Default: 1 packet/s Rate of Peer delay request when operating in P2P mode. From 1 packet each [2,4,8,16,32,128] seconds to [1,2,4,8,16,32,61,128] packets per second.
19.xx13.18 User offset <Integer>
Default: Hardware version-dependent.
User offset to compensate internal PTP delay. The devices are calibrated for each release and it is not recommended to change the default value.
19.xx13.24 PTP Timescale <Enum>
1. PTP
2. ARB
Defaul: PTP
Since we only support hardware timestamping, PTP Timescale will always be set to "PTP". ARB (arbitrary) timescale should not be selected.

Note: Ensure you configure announce, delay request, and delay response rates identically in both the master and slave devices to achieve correct PTP synchronization.

Configuration of PTP Profiles

A valid license is needed to perform the configuration of PTP profiles. If your presets allow a valid MASTER or SLAVE port state, then you will be able to configure your PTP profiles for each port by navigating to Configuration > IEEE 1588-2008 (PTP).

Selecting PTP Profiles

Then if some advanced settings need to be modified the user can click on the Advanced View button to expand the configuration of a given interface.

If a profile is selected but the configuration is out of range for the selected profile, the profile will be changed to Custom automatically.

Note: Custom Profile: In case some (advanced) settings are modified not accordingly to the specification of the selected profile the web interface will automatically change to use the Custom profile. It will not restrict the user to any configuration.

The tables below summarize the limitation of the configuration for the different PTP profiles supported by the WR-ZEN device. Worth mentioning that some of the settings have no default value but must fit with a specific range. Strikethrough settings are ignored by the profile and can be left empty or with previous value.

Telecom ITU-T 8265.1

The objective of this profile is to distribute frequency within 16 ppb over a network with some non-aware PTP nodes.

OID Name Default Value Range Note
Min Max
19.xx13.x net/<iface>/1/cfg      
19.xx13.9 Transport Protocol IPv4/UDP - - Only IPv4/UDP allowed. IP address must be set before selecting this profile.
19.xx13.10 Delay Mechanism E2E - - Only E2E allowed
19.xx13.14 Domain 4 4 23  
19.xx13.11 Transport Mode Unicast - - Only Unicast allowed
19.xx13.12 Unicast Negotiation True     Always True for this profile
19.xx13.13 Unicast Destination <IP>      
19.xx13.20 Announce Rate 1/2 1/16 8  
19.xx13.21 Sync Rate 1/16 1/16 128  
19.xx13.22 Delay Req Rate 1/16 1/16 128  
19.xx13.24 PTP Timescale PTP      

Power Profile: IEEE C37.238-2017

This profile has been created to target Power Systems Applications.

OID Name Default Value Range Note
Min Max
19.xx13.x net/<iface>/1/cfg      
19.xx13.9 Transport Protocol Layer 2 (IEEE802.3) - - Only Layer 2 is allowed
19.xx13.10 Delay Mechanism P2P - - Only P2P allowed
19.xx13.14 Domain 254 0 127 The range also includes the single default value 254 ([0, 127] and 254).
19.xx13.11 Transport Mode Multicast - - Only Multicast allowed.
19.xx13.20 Announce Rate 1 - - Only 1 packet/s allowed
19.xx13.21 Sync Rate 1 - - Only 1 packet/s allowed
19.xx13.23 Peer Delay req Rate 1 - - Only 1 packet/s allowed
19.xx13.24 PTP Timescale PTP      
19.xx13.74 Device Time Inaccuracy 11 0 65535 This parameter is added to the C37 inaccuracy LV in each PTP hop. If changed, it is required to save the new configuration and reboot the device.

Power Utility Profile: IEEE 61850-9-3

This profile has been created to target Power Utility applications .

OID Name Default Value Range Note
Min Max
19.xx13.x net/<iface>/1/cfg      
19.xx13.9 Transport Protocol Layer 2 (IEEE802.3) - - Only Layer 2 is allowed
19.xx13.10 Delay Mechanism P2P - - Only P2P allowed
19.xx13.14 Domain 0 0 255  
19.xx13.11 Transport Mode Multicast - - Only Multicast allowed.
19.xx13.20 Announce Rate 1 - - Only 1 packet/s allowed
19.xx13.21 Sync Rate 1 - - Only 1 packet/s allowed
19.xx13.23 Peer Delay req Rate 1 - - Only 1 packet/s allowed
19.xx13.24 PTP Timescale PTP      

Default Profile

This profile has default settings.

OID Name Default Value Range Note
Min Max
19.xx13.x net/<iface>/1/cfg      
19.xx13.9 Transport Protocol UDP/IPv4     IP address must be set before setting transport protocol to UDP/IPv4. Layer 2 is also supported.
19.xx13.10 Delay Mechanism E2E     E2E and P2P are supported.
19.xx13.14 Domain 0 0 255  
19.xx13.11 Transport Mode Multicast     Multicast, Unicast and Hybrid modes are allowed.
19.xx13.20 Announce Rate 1 1/128 16  
19.xx13.21 Sync Rate 8 1/128 128  
19.xx13.22 Delay req Rate 8 1/128 128  
19.xx13.23 Peer Delay req Rate 8 1/128 128  
19.xx13.24 PTP Timescale PTP - - We only support PTP as "PTP Timescale"

Info/Overview

Each PTP port runs its own PTP instance independently on a specific process. The information about the instance can be obtained from command line, using for example the following command for the first port (wr0):

gpa_ctrl wptpd net/wr0/1/info/

Or through the web interface as shown below, where each port is displayed by a row (see the table PTP information for a port interface for more details on the provided parameters). The PTP Overview page is located at Overview > Timing > IEEE-1588-2008 (PTPV2).

PTP Overview Menu

PTP information for a port interface

OID Name Value Type Description
19.xx12.x net/<iface>/1/info Information on the corresponding <iface> port instance.
19.xx12.2 Port State <Enum>
0. None
1. Initializing
2. Faulty
3. Disabled
4. Listening
5. Pre-Master
6. Master
7. Passive
8. Uncalibrated
9. Slave
Current state of the port that changes according to the PTP protocol events.
• If this port is configured as a timing source, it can be Slave (active) or Passive (only handle announce messages)  Color: Blue.
• The port state is Disabled when the link is down or when the port has been configured with WR instead of PTP.
• The port state will be Master if it distributes PTP timing (Color: Purple).
Finally, the other states are transition states (mainly used by BMCA) or error states.
19.xx12.15 Sync Mode <Enum>
0. Two Step
1. One Step
2. Disabled
Reports the current mode of operation received from the master. We currently only support Two Step PTP.
19.xx12.26 Rx Sync Packets <Integer> Number of received sync messages (Incrementing for Slave instances)
19.xx12.31 Tx Sync Packets <Integer> Number of transmitted sync messages (Incrementing for Master instances)
19.xx12.28 Rx DelayReq Packets <Integer> Number of received delay request message (Incrementing for Master instances)
19.xx12.33 Tx DelayReq Packets <Integer> Number of received delay request message (Incrementing for Slave instances)
19.xx12.64 Rx PeerDelayReq Packets <Integer> Number of received peer delay request messages (Incrementing for Slave instances when a PTP exchange is completed)
19.xx12.67 Tx PeerDelayReq Packets <Integer> Number of transmitted peer delay request messages (Incrementing for Slave instances when a PTP exchange is completed)

Then if a specific interface is not disabled (Port State ≠ None), by clicling on the (+) a user will expand the interface to its Advanced View to get more information about the PTP exchange. The bi-directional exchanges of PTP is resumed in IEEE 1588-2008 (PTPv2), where the number of packets for each type of messages is provided by the parameters in advanced view (see the table below).

Advanced PTP information for a port instance

19.xx12.x net/<iface>/1/info Information on the corresponding <iface> port instance.
19.xx12.2 Offset from Master <Decimal> (f64) The value represents the actual offset (in seconds) between master and slave. It is calculated from the retrieved timestamps with corrections from calibrations & asymmetries settings.
19.xx12.3 One-Way Delay <Decimal> (f64) One-way path delay in seconds (equivalent to delay_MS)
 
19.xx12.26 Rx Sync Packets <Integer> Number of received sync messages (Incrementing for Slave instances)
19.xx12.28 Rx DelayReq Packets <Integer> Number of received delay request message (Incrementing for Master instances)
19.xx12.25 Rx Announce Packets <Integer> Number of received announce messages (Incrementing for Slave/Passive instances)
19.xx12.27 Rx FollowUp Packets <Integer> Number of received Follow up messages (Incrementing for Slave instances with Two Steps)
19.xx12.29 Rx DelayResponse Packets <Integer> Number of received Delay Response messages (Incrementing for Slave instances when a PTP exchange is completed)
19.xx12.64 Rx PeerDelayReq Packets <Integer> Number of received peer delay request messages (Incrementing for Slave instances when a PTP exchange is completed)
19.xx12.65 Rx PeerDelayResp Packets <Integer> Number of received peer delay response messages (Incrementing for Slave instances when a PTP exchange is completed)
19.xx12.66 Rx PeerDelayRespFUp Packets <Integer> Number of received peer delay response follow up messages (Incrementing for Slave instances when a PTP exchange is completed)
 
19.xx12.31 Tx Sync Packets <Integer> Number of transmitted sync messages (Incrementing for Master instances)
19.xx12.33 Tx DelayReq Packets <Integer> Number of received delay request message (Incrementing for Slave instances)
19.xx12.30 Tx Announce Packets <Integer> Number of transmitted announce messages (Incrementing for Master instances)
19.xx12.32 Tx FollowUp Packets <Integer> Number of transmitted Follow up messages (Incrementing for Slave instances with Two Steps)
19.xx12.34 Rx DelayResp Packets <Integer> Number of transmitted Delay Response messages (Incrementing for Master instances each time a DelayReq is received)
19.xx12.67 Tx PeerDelayReq Packets <Integer> Number of transmitted peer delay request messages (Incrementing for Slave instances when a PTP exchange is completed)
19.xx12.68 Tx PeerDelayResp Packets <Integer> Number of transmitted peer delay response messages (Incrementing for Slave instances when a PTP exchange is completed)
19.xx12.69 Tx PeerDelayRespFUp Packets <Integer> Number of transmitted peer delay response follow up messages (Incrementing for Slave instances when a PTP exchange is completed)