Telecom PTP Profiles Summary
IEEE "Telecom Profile 2008" | ITU-T PTP Telecom Profile for Frequency(G.8265.1 Annex A) | ITU-T PTP Telecom Profile for Phase/Time(G.8275.1 Annex A) | ITU-T PTP Telecom Profile for Phase/Time(G.8275.2 Annex A) | |
---|---|---|---|---|
Latest document version: | IEEE1588-2008, Annex A.9 | ITU-T Recommendation G.8265.1, Cor. 1, 04/2016 (full text publication) | ITU-T Recommendation G.8275.1, Amd. 2, 03/2018 (full text publication) | ITU-T Recommendation G.8275.2, Amd. 2, 03/2018 (full text publication) |
Location: | https://standards.ieee.org/standard/1588-2008.html | http://www.itu.int/rec/T-REC-G.8265.1/en | http://www.itu.int/rec/T-REC-G.8275.1/en | http://www.itu.int/rec/T-REC-G.8275.2/en |
Objective: | Frequency distribution to better than 16ppb | Frequency distribution to better than 16ppb (long term fractional frequency offset specified in G.8261.1) | Time distribution to better than ±1.5μs, over a full timing support network | Time distribution to better than ±1.5μs over a partial timing support network |
Profile Identification | ||||
profileName: | Recommendation for implementations in unicast networks or networks with non-PTP bridges and routers. This is an informal but often implemented profile, based on the "default" profile in Annex J.3. | ITU-T PTP Profile for Frequency Distribution without timing support from the network (Unicast mode) | ITU-T PTP profile for phase/time distribution with full timing support from the network | ITU-T PTP profile for phase/time distribution with partial timing support from the network |
profileVersion: | 1.0 | 1.2 | 2.1 | 1.0 |
profileIdentifier:Â Â | 00-1B-19-00-01-00 | 00-19-A7-00-01-02 | 00-19-A7-01-02-01 | 00-19-A7-02-01-00 |
Specified by: | Precise Networked Clock Synchronization Working Group of the IM/ST Committee of the IEEE | ITU-T | ITU-T | ITU-T |
Location: | https://standards.ieee.org/standard/1588-2008.html | www.itu.int | www.itu.int | www.itu.int |
PTP Options | ||||
Permitted Nodes | Ordinary clocks (i.e. Grandmasters, slave-only clocks), boundary clocks, transparent clocks | Ordinary clocks (i.e. Grandmasters, slave-only clocks) | Ordinary clocks (i.e. Grandmasters, slave-only clocks), boundary clocks, end-to-end transparent clocks | Ordinary clocks (i.e. Grandmasters, slave-only clocks), boundary clocks |
Prohibited Nodes | None | Boundary clocks, transparent clocks | Peer-to-peer transparent clocks | None. Transparent Clocks are for further study. |
Transport Mechanisms | Not specified. Any valid unicast transport mechanism may be used, e.g. Annexes D to I of IEEE1588 | Both masters and slaves must support IEEE1588-2008 Annex D IPv4/UDP stack Both masters and slaves may support IEEE1588-2008 Annex E IPv6/UDP stack | Required: IEEE802.3 Ethernet, as per IEEE1588-2008 Annex F. The use of VLAN tags is not allowed. Other transport mechanisms (e.g. IP/UDP as in Annexes D & E) are for further study. | Both masters and slaves must support IEEE1588-2008 Annex D IPv4/UDP stack Both masters and slaves may support IEEE1588-2008 Annex E IPv6/UDP stack |
Multicast or Unicast | All messages are sent in unicast. Unicast negotiation is used by default, but a management procedure could be used. | All messages are sent in unicast. Unicast negotiation is enabled by default (see details below). | Full multicast operation, using both of the addresses noted in IEEE1588-2008 Annex F Unicast is not permitted. | Both masters and slaves must support full unicast operation (see details below) |
BMCA | Default BMCA, as specified in clause 9.3.2. | Static BMCA specified (see below) | Alternate BMCA specified (see below) | Alternate BMCA specified (see below) |
Path Delay Measurement | Uses delay_request/response mechanism by default. Peer delay mechanism is optional. | Uses delay_request/response mechanism, if required (i.e. for two-way operation) Peer delay mechanism must not be used. | Uses delay_request/response mechanism. Peer delay mechanism must not be used. | Uses delay_request/response mechanism, if required (i.e. for two-way operation) Peer delay mechanism must not be used. |
PTP Management | Optional | Not specified in this version of the profile. | Not specified in this version of the profile. | Not specified in this version of the profile. |
Clock Identity | Standard PTP behaviour. | EUI-64 (as specified in clause 7.5.2.2.2 of IEEE1588-2008) | EUI-64 (as specified in clause 7.5.2.2.2 of IEEE1588-2008) | EUI-64 (as specified in clause 7.5.2.2.2 of IEEE1588-2008) |
Message Types | Used: Announce, Sync, Follow-up, Delay_Req, Delay_Resp, Signaling Not used: Pdelay_Req, Pdelay_Resp, Pdelay_Resp_Follow_Up The use of Management messages is permitted. | Used: Announce, Sync, Follow-up, Delay_Req, Delay_Resp, Signaling Not used: Pdelay_Req, Pdelay_Resp, Pdelay_Resp_Follow_Up The use of Management messages is for further study. | Used: Announce, Sync, Follow-up, Delay_Req, Delay_Resp Not used: Pdelay_Req, Pdelay_Resp, Pdelay_Resp_Follow_Up The use of Signaling and Management messages is for further study. | Used: Announce, Sync, Follow-up, Delay_Req, Delay_Resp, Signaling Not used: Pdelay_Req, Pdelay_Resp, Pdelay_Resp_Follow_Up The use of Management messages is for further study. |
One-step and Two-step clock | Standard PTP behaviour. | Master may support either one-step or two-step clocks, or both. Slaves must support both one-step and two-step clocks, without configuration. | Clocks may transmit messages using either one-step or two-step modes. Clocks must be capable of receiving and handling messages from both one-step and two-step clocks, without configuration. | Clocks may transmit messages using either one-step or two-step modes. Clocks must be capable of receiving and handling messages from both one-step and two-step clocks, without configuration. |
One-way and Two-way Operation | Standard PTP behaviour. | Masters must support both one-way and two-way operation. Slaves may support either one-way or two-way, or both. | Only two-way operation is permitted. | Masters must support both one-way and two-way operation. Slaves may support either one-way or two-way, or both. |
Security | Not mentioned. | For further study. IEEE1588-2008 Annex K experimental security protocol is not mentioned. | For further study. IEEE1588-2008 Annex K experimental security protocol is not used | For further study. IEEE1588-2008 Annex K experimental security protocol is not used |
Unicast negotiation (IEEE1588-2008 clause 16.1) | Used by default. | Mandatory - see details below | Not used in this profile. | Mandatory - see details below |
Path trace (IEEE1588-2008 clause 16.2) | Not mentioned. | Not mentioned. | Optional - see Annex D | Not mentioned. |
Alternate timescales (IEEE1588-2008 clause 16.3) | Not mentioned. | PTP or ARB timescale used. Alternate timescales are not used. | PTP timescale used. Alternate timescales are not used. | PTP timescale used. Alternate timescales are not used. |
Grandmaster clusters (IEEE1588-2008 clause 17.3) | Permitted, inactive by default | Not mentioned. | Not used in this profile. | Not used in this profile. |
Alternate masters (IEEE1588-2008 clause 17.4) | Permitted, inactive by default | Not mentioned. | Not used in this profile. | Not used in this profile. |
Unicast discovery (IEEE1588-2008 clause 17.5) | Used by default. | Not mentioned. | Not used in this profile. | Not mentioned. |
Acceptable master table (IEEE1588-2008 clause 17.6) | Permitted, inactive by default | Not mentioned. | Not used in this profile. | Not used in this profile. |
Cumulative frequency scale factor offset (IEEE1588-2008 Annex L) | Not mentioned. | Not mentioned. | Not used in this profile. | Not used in this profile. |
Message Rates | ||||
Sync & Follow-up | 1 every 2 seconds to 128 per second, default 16 per second | 1 every 16 seconds to 128 per second | 16 per second | 1 per second to 128 per second |
Delay_request/response | 1 every 64 seconds to 128 per second, default 16 per second | 1 every 16 seconds to 128 per second | 16 per second | 1 per second to 128 per second |
Announce | 1 every 8 seconds to 8 per second; default 1 every 2 seconds | 1 every 16 seconds to 8 per second; default 1 every 2 seconds | 8 per second | 1 per second to 8 per second |
Peer Delay_request/response | None (uses Delay_request/response mechanism) | None (uses Delay_request/response mechanism) | None (uses Delay_request/response mechanism) | None (uses Delay_request/response mechanism) |
Signaling | As required for unicast negotiation | As required for unicast negotiation | Not used | As required for unicast negotiation |
Management | Permitted | Not used | Not used | Not used |
PTP Configurable Attribute Values | ||||
Default Data Set | ||||
twoStepFlag | Standard PTP behaviour. | Used as per PTP, according to clock's capability | Used as per PTP, according to clock's capability | Used as per PTP, according to clock's capability |
clockIdentity | Standard PTP behaviour. | Based on EUI64 format, as per PTP | Based on EUI64 format, as per PTP | Based on EUI64 format, as per PTP |
numberPorts | Standard PTP behaviour. | Always 1 for ordinary clocks | Always 1 for ordinary clocks, as required for boundary and transparent clocks | Always 1 for ordinary clocks, as required for boundary clocks or transparent clocks |
clockQuality.clockClass | Standard PTP behaviour. | clockClass value is derived from G.781 SSM values, according to Table 1 of G.8265.1. Masters encode clockClass using this table according to the quality of their input reference. Slaves use clockClass to select master to synchronize to. | clockClass encoded from the following set: - Grandmaster clocks: 6, 7, 140, 150, 160, 248 - Boundary clocks: 135, 165, 248 - Slave-only clocks: 255 | clockClass encoded from the following set: - Grandmaster clocks: 6, 7, 140, 150, 160, 248 - Boundary clocks: 135, 165, 248 - Slave-only clocks: 255 |
clockQuality.clockAccuracy | Standard PTP behaviour. | Not used. Should be set to 0xFE (unknown) if not traceable to a time source. | Grandmasters traceable to a GNSS-locked ePRTC: 0x20 (25ns) Grandmasters traceable to a GNSS-locked PRTC: 0x21 (100ns) All other clocks: 0xFE (unknown) | Grandmasters traceable to a GNSS-locked ePRTC: 0x20 (25ns) Grandmasters traceable to a GNSS-locked PRTC: 0x21 (100ns) All other clocks: 0xFE (unknown) |
clockQuality. offsetScaledLogVariance | Standard PTP behaviour. | Not used in this profile. | Grandmasters traceable to a GNSS-locked ePRTC: 0x4B32 Grandmasters traceable to a GNSS-locked PRTC: 0x4E5D All other clocks: 0xFFFF (not computed) | Grandmasters traceable to a GNSS-locked ePRTC: 0x4B32 Grandmasters traceable to a GNSS-locked PRTC: 0x4E5D All other clocks: 0xFFFF (not computed) |
priority1 | Default value 128. | Not used in this profile. | Not used in this profile. Must be set to default value of 128 | Not used. Must be set to default value of 128 |
priority2 | Default value 128. | Not used in this profile. | Used to set network and protection topology, as described in Appendices IV and X. Range 1 to 255, default value 128. | Used to set network and protection topology, as described in Appendix I. Range 1 to 255, default value 128. |
domainNumber | Default value 0. | No default value; Configurable range 4 to 23 | Default value 24; Configurable range 24 to 43 | Default value 44; Configurable range 44 to 63 |
slaveOnly | Default value FALSE (if configurable). TRUE for slave-only clocks, FALSE for Grandmasters | TRUE for slave-only clocks, FALSE for Grandmasters | TRUE for slave-only clocks, FALSE for all other clock types | TRUE for slave-only clocks, FALSE for all other clock types |
Profile-specific defaultDS attributes | ||||
localPriority | Not defined in this profile | Not defined in this profile | New dataset member defined in profile, allowing operators to manually configure topology (Annex B) Range 1 to 255, default value 128 | New dataset member defined in profile, allowing operators to manually configure topology (Annex B) Range 1 to 255, default value 128 |
maxStepsRemoved | Not defined in this profile | Not defined in this profile | New dataset member defined in profile, allowing operators to configure the maximum distance between a T-GM and a T-TSC Range 1 to 255, default value 255 | Not defined in this profile |
Port data set | ||||
portIdentity.clockIdentity | Standard PTP behaviour. | Based on EUI64 format, as per PTP | Based on EUI64 format, as per PTP | Based on EUI64 format, as per PTP |
portIdentity.portNumber | Standard PTP behaviour. | 1 (ordinary clocks) | 1 (ordinary clocks), as required (boundary and transparent clocks) | 1 (ordinary clocks), as required (boundary and transparent clocks) |
logMinDelayReqInterval | Not used (covered by unicast negotiation - see details below) | Not used (covered by unicast negotiation - see details below) | -4 (16 delay_req messages/second) | Not used (covered by unicast negotiation - see details below) |
logAnnounceInterval | Not used (covered by unicast negotiation - see details below) | Not used (covered by unicast negotiation - see details below) | -3 (8 announce messages/second) | Not used (covered by unicast negotiation - see details below) |
announceReceiptTimeout | Default value 3. Configurable range 2 to 10 | 2 (2 missing announce messages before loss of announce service declared) | 3 (3 missing announce messages before loss of announce service declared) | 2 (2 missing announce messages before loss of announce service declared) |
logSyncInterval | Not used (covered by unicast negotiation - see details below) | Not used (covered by unicast negotiation - see details below) | -4 (16 sync messages/second) | Not used (covered by unicast negotiation - see details below) |
delayMechanism | Default mechanism is E2E (0x01) | 0x01 (E2E mechanism) for a two-way capable slave 0xFE (disabled) for a one-way capable slave | 0x01 (Uses end-to-end delay mechanism) | 0x01 (E2E mechanism) for a two-way capable slave 0xFE (disabled) for a one-way capable slave |
logMinPdelayReqInterval | Not used in this profile. | Not used in this profile | Not used in this profile | Not used in this profile |
versionNumber | 2 (PTP protocol version number) | 2 (PTP protocol version number) | 2 (PTP protocol version number) | 2 (PTP protocol version number) |
Profile-specific portDS attributes | ||||
masterOnly | Not defined in this profile | Not defined in this profile | New dataset member defined in profile, allowing multiple simultaneous active GMs TRUE for ports that are always in master state. | New dataset member defined in profile, allowing multiple simultaneous active GMs TRUE for ports that are always in master state. |
localPriority | Not defined in this profile | Not defined in this profile | New dataset member defined in profile, allowing operators to manually configure topology (Annex B) Range 1 to 255, default value 128 | New dataset member defined in profile, allowing operators to manually configure topology (Annex B) Range 1 to 255, default value 128 |
SF | Not defined in this profile | Not defined in this profile | Not defined in this profile | New dataset member defined in profile TRUE when a slave port is in signal failure |
PTP common message header flags | ||||
alternateMasterFlag | Standard PTP behaviour. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; used as per PTP by receiving nodes | In Announce messages: set FALSE on transmission when port state is MASTER. Announce messages discarded on reception if flag is TRUE. |
twoStepFlag | Standard PTP behaviour. | Used as per PTP defined in IEEE1588-2008 | Used as per PTP defined in IEEE1588-2008 | Used as per PTP defined in IEEE1588-2008 |
unicastFlag | Standard PTP behaviour. | Set TRUE on transmission. | Set FALSE on transmission; ignored on reception. | Set TRUE on transmission. |
PTP profile Specific1 | Standard PTP behaviour. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; ignored on reception. |
PTP profile Specific2 | Standard PTP behaviour. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; ignored on reception. |
Reserved | Standard PTP behaviour. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; ignored on reception. | Set FALSE on transmission; ignored on reception. |
leap61 | Standard PTP behaviour. | Not used in this profile. Value as per PTP defined in IEEE1588-2008. | Used as per PTP defined in IEEE1588-2008 | Used as per PTP defined in IEEE1588-2008 |
leap59 | Standard PTP behaviour. | Not used in this profile. Value as per PTP defined in IEEE1588-2008. | Used as per PTP defined in IEEE1588-2008 | Used as per PTP defined in IEEE1588-2008 |
currentUTCOffsetValid | Standard PTP behaviour. | Not used in this profile. Value as per PTP defined in IEEE1588-2008. | Used as per PTP defined in IEEE1588-2008 | Used as per PTP defined in IEEE1588-2008 |
ptpTimescale | Standard PTP behaviour. | Set TRUE if synchronized to reference source of time. Set FALSE otherwise, indicating ARB timescale (e.g. if synchronized to a freq. reference) | Set TRUE on transmission. | Set TRUE on transmission. |
timeTraceable | Standard PTP behaviour. | Not used in this profile. Value as per PTP defined in IEEE1588-2008. | Used as defined in Table 2 of G.8275.1 | Used as in Table 2 |
frequencyTraceable | Standard PTP behaviour. | TRUE if traceable to a PRC, otherrwise FALSE. | Used as defined in Table 2 of G.8275.1 | Used as in Table 2 |
controlField | Standard PTP behaviour. | Not used; ignored on reception. | Not used; ignored on reception. | Not used; ignored on reception. |
Profile-specific common message header flags | ||||
synchronizationUncertain | Not defined in this profile | Not defined in this profile | Profile specific optional flag in octet 1, bit 6, indicating that the source of synchronization is uncertain (e.g. clock is in UNCALIBRATED state while switching to a new T-GM). | Profile specific optional flag in octet 1, bit 6, indicating that the source of synchronization is uncertain (e.g. clock is in UNCALIBRATED state while switching to a new T-GM). |
Multicast and Unicast Operation | ||||
Full multicast operation | Not required by this profile. | Not required by this profile. | Fully multicast operation | Not used in this profile. |
Full unicast operation | All messages are sent in unicast. | All messages are sent in unicast. Both masters and slaves must support full unicast operation | Not used. | Both masters and slaves must support full unicast operation |
Hybrid unicast/multicast | Not required by this profile. | For further study; see Appendix I for more details. Not required in first version of the profile. | Not used. | Not used in this profile. |
Unicast negotiation process | Both masters and slaves should support unicast negotiation (IEEE1588-2008 Clause 16.1). | Both masters and slaves must support unicast negotiation (IEEE1588-2008 Clause 16.1). Masters must reject any request it can't completely fulfil, rather than grant less than the requested message rate or duration. | Not used. | Both masters and slaves MUST support unicast negotiation (IEEE1588-2008 Clause 16.1). Unicast connection establishment without negotiation is for further study. |
Best Master Clock Algorithm (BMCA) | ||||
BMCA type: | Default BMCA | Static BMCA | Alternate BMCA (modified default BMCA) | Alternate BMCA (modified default BMCA) |
State decision algorithm | Default state decision algorithm | Masters must implement static BMCA, with state BMC_MASTER, and state decision code M1 Slaves must implement static BMCA, with state BMC_SLAVE, and state decision code S1 | Based on default state decision algorithm, adding check for new parameter masterOnly | Based on default state decision algorithm, adding check for new parameter masterOnly |
Data set comparison algorithm | Default data set comparison algorithm | Slaves select a master from a locally-provisioned list of grandmasters using the following criteria: - grandmaster not in PTSF state (Packet Timing Signal Fail), Â e.g. loss of sync or announce service, (or optionally, unusable timing signal) - lowest clockClass (SSM QL) value - local priority value | Based on default data set comparison with following changes: - moves check on GM clockIdentity to end - removes check on GM priority1 values - adds check for new parameter localPriority value (after GM priority2) | Based on default data set comparison with following changes: - moves check on GM clockIdentity to end - removes check on GM priority1 values - adds check for new parameter localPriority value (after GM priority2) |
Master Selection and Protection | ||||
Protection switching | Uses Default BMCA to determine Grandmaster | A slave must switch to an alternative grandmaster under one or more of the following conditions: - clockClass (QL value) degraded to a higher value (i.e. lower quality) than an alternative master - PTSF-lossSync or PTSF-lossAnnounce conditions on the current master - (optional) PTSF-unusable on the current master (by configuration) If no master is acceptable (e.g. all in PTSF condition), the slave must enter holdover or free-run. | Uses Alternate BMCA to determine Grandmaster | Uses Alternate BMCA to determine Grandmaster |
Additional profile-specific protection features | Not defined in IEEE1588-2008: Features unique to ITU-T PTP Telecom Profile for Frequency (G.8265.1) | Additional parameters relating to Protection Switching: - Temporary master exclusion from list of acceptable masters (by configuration) - Wait to Restore time after original master becomes traceable (delay time by configuration) - Non-reversion (implies reversion to original master is default; by configuration) - Forced Traceabilty, master can force clockClass to a given value (by configuration) - QL hold-off, delaying change of QL value to downstream devices (delay time by configuration) - Output squelch when no traceable master available (by configuration) | Not defined in IEEE1588-2008: Features unique to ITU-T PTP Telecom Profile for Frequency (G.8265.1) | Not defined in IEEE1588-2008: Features unique to ITU-T PTP Telecom Profile for Frequency (G.8265.1) |
Packet Timing Signal Fail | Not defined in IEEE1588-2008: Features unique to ITU-T PTP Telecom Profiles G.8265.1 and G.8275.2 | Three PTSF (Packet Timing Signal Fail) conditions defined: - PTSF-lossAnnounce (no announce messages received for longer than announceReceiptTimeout) - PTSF-lossSync (no sync messages received for longer than syncReceiptTimeout attribute, Â or no delayResponse messages received for longer than delayRespReceiptTimeout attribute) - PTSF-unusable (unable to acheive the required performance target, e.g. due to high PDV) | Not defined in IEEE1588-2008: Features unique to ITU-T PTP Telecom Profiles G.8265.1 and G.8275.2 | Two PTSF (Packet Timing Signal Fail) conditions defined: - PTSF-lossSync (no sync messages received for longer than syncReceiptTimeout attribute, Â or no delayResponse messages received for longer than delayRespReceiptTimeout attribute) - PTSF-unusable (unable to acheive the required performance target, e.g. due to high PDV) |
Profile-specific TLVs | ||||
Signalling message TLVs | No profile-specific TLVs. | No profile-specific TLVs. | No profile-specific TLVs. | PTP Interface Rate Optional TLV communicating the bit rate of the master port. Used to determine rate asymmetry on the path between master and slave port, allowing the slave port to compensate for the resulting delay asymmetry. Attached to the signalling message containing the GRANT_UNICAST_TRANSMISSION TLV. |