G.8275.2 Telecom Profile

Precision Time Protocol (PTP) is a protocol for distributing precise time and frequency over packet networks. PTP is defined in the IEEE Standard 1588. It defines an exchange of timed messages.

PTP allows for separate profiles to be defined in order to adapt PTP for use in different scenarios. A profile is a specific selection of PTP configuration options that are selected to meet the requirements of a particular application.

Effective Cisco IOS XE Everest 16.5.1, Cisco ASR 900 routers with RSP3 module support the ITU- T G.8275.2 telecom profile (PTP telecom profile for Phase/Time-of-day synchronization with partial timing support from the network).

The G.8275.2 is a PTP profile for use in telecom networks where phase or time-of-day synchronization is required. It differs from G.8275.1 in that it is not required that each device in the network participates in the PTP protocol. Also, G.8275.2 uses PTP over IPv4 and IPv6 in unicast mode. However, IPv6 is not supported in Cisco IOS XE Everest 16.5.1.


Note


In this document, G.8275.2 refers to ITU-T G.8275.2 (02/2016).


Why G.8275.2?

The G.8275.2 profile is based on the partial timing support from the network. Hence nodes using G.8275.2 are not required to be directly connected.

The G.8275.2 profile is used in mobile cellular systems that require accurate synchronization of time and phase. For example, the fourth generation (4G) of mobile telecommunications technology.

PTP Clocks

Two types of ordinary clocks and three types of boundary clocks are used in this profile:

Ordinary Clocks (OCs)

  • Telecom Grandmaster (T-GM): A telecom grandmaster provides timing for other devices in the network, and is usually connected to a server reference time source, such as a GNSS receiver. It does not synchronize its local clock to other network elements.

    Considerations for a T-GM:

    • Only one PTP port can be configured as a server port.

    • One T-GM server port can have multiple clients associated with it.

    • The T-GM OC server port is a fixed port; that is, it always acts as a server clock and its role does not change by negotiating with its peer.

  • Partial-Support Telecom Time Subordinate/Client Clocks (T-TSC-P): A client clock synchronizes its local clock to another PTP clock (GM, T-GM or T-BC), and does not provide synchronization through PTP to any other device.

    Considerations for a T-TSC-P:

    • An ordinary clock with single client port can be configured.

    • Only one peer clock address can be configured as clock source.

Boundary Clocks (BCs)

Boundary clocks can assume any of the following roles:

  • A BC that can only be a grandmaster (T-GM)

    A server-only boundary clock can have multiple server port configured. The different server ports can be in different VLANs to serve the clients that need to be served over them.

  • A BC that can become a grandmaster and can also be a client to another PTP clock (T-BC-P).

    Client-only port configuration is not allowed under boundary clocks. However, one of the dynamic ports (port state negotiated based on BMCA), can assume the role of client.

  • A BC that can only be a subordinate/client (T-TSC-P with more than one port).

Fixed server port, dynamic ports and virtual port can be configured under a boundary clock. However, only one clock source (peer address) can be configured with a dynamic port.

Miscellaneous Notes

  • Any clock that has multiple PTP ports within a PTP domain is termed a boundary clock (BC). Ordinary clocks (OC) always have only one PTP port.

    In G.8275.2 (02/2016), PTP transparent clocks are not permitted.

PTP Domain

A PTP domain is a logical grouping of clocks that communicate with each other using the PTP protocol.

A single computer network can have multiple PTP domains operating separately, for example, one set of clocks synchronized to one time scale and another set of clocks synchronized to another time scale. PTP can run over either Ethernet or IP, so a domain can correspond to a local area network or it can extend across a wide area network.

The allowed domain numbers of PTP domains within a G.8275.2 network are in the range of 44 and 63 (both inclusive). The default domain number is 44.

PTP Messages and Transport

The following PTP transport parameters are defined:

  • In Cisco IOS XE Everest 16.5.1, PTP over IPv4 in unicast mode must be used..

  • Either one-step or two-step clock mode must be used.

  • For PTP primaary clock, both one-way and two-way operation modes are supported. This means PTP primaary can grant request to a subordinate's one-way or two-way requests.

  • In case of PTP subordinate clock, two-way PTP operation is required to allow phase/time-of-day delivery. The delay-request-response mechanism is used to propagate delay measurement; the peer-delay mechanism is not used.

  • The G.8275.2 profile supports unicast message negotiation.

  • Interfaces carrying PTP traffic can be under different VRFs.

  • Sync, Delay_Req, Announce, Follow_Up, Delay_Resp, and Signaling messages are used in this profile. See the table below for rates of transmission for these messages.

Table 1. PTP Messages and their Rate of Transmission

Message

Default Rate (packets per second)

Minimum Rate (packets per second)

Maximum Rate (packets per second)

Sync

32

1

128

Follow_up (only if sync messages are used)

32

1

128

Delay_Req

16

1

128

Delay_Resp

16

1

128

Announce

1

1

8

Signaling

Not Specified

1

Not specified

Limitations

  • Pdelay_Req, Pdelay_Resp, Pdelay_Resp_Follow_Up and management messages are not used in this profile.

PTP Ports

A port can be configured to perform either fixed primaary or subordinate role or can be configured to change its role dynamically. If no role is assigned to a port, it can dynamically assume a primaary, passive, or subordinate role based on the BMCA.

In G.8275.2, PTP ports are not tied to any specific physical interfaces, but are tied to a loopback (virtual) interface. Traffic from a PTP port is routed through any physical interface based on the routing decision.

For a Boundary Clock, multiple PTP ports are supported. The maximum number of PTP ports supported on a BC node is 64.

For a dynamic port, only one clock source can be configured.

Starting with Cisco IOS XE Release 16.12, PTP 8275.2 supports multiple loopbacks (not in VRFs) for fixed Master ports.

Virtual Port Support on T-BC


Note


The virtual port is not supported on the Cisco ASR 900 RSP2 Module.


In G.8275.2 implementation, virtual PTP ports are used to provide electrical frequency and phase inputs to T-BC. With virtual ports, T-BCs are fed with frequency inputs, such as, synchronous Ethernet, 10M, BITS, and phase/time inputs, such as, 1PPS and ToD. Virtual ports participate in the BMCA of the T-BCs.

If frequency source is of Category-1 (according to G.8275.2) and if 1PPS and ToD inputs are UP, virtual port status is up. Otherwise, virtual port status is down.

A virtual port participates in BMCA only when it is in administratively up state.

A virtual port always has clock class 6, clock accuracy 0x21 (within 100ns), and clock offset Scaled Log Variance of 0x4E5D.


Note


The virtual port has the attributes set to the above values only when it is in the UP state.


Whenever virtual port is selected as the best server clock by the BMCA, PTP clock is driven by the electrical inputs. If virtual port is administratively up but not selected by BMCA, 1PPS and ToD inputs do not affect PTP clock.

Alternate BMCA

The BMCA implementation in G.8275.2 is different from that in the default PTP profile. The G.8275.2 implementation specifies an alternate best server clock algorithm, which is used by each device to select a clock to synchronize to, and to decide the port states of its local ports.

The following consideration apply to the G.8275.2 implementation of the BMCA:

  • MasterOnly: A per port attribute, MasterOnly defines the state of the port. If this attribute is true, the port is never placed in the client state.

  • Priority 1: Priority 1 is always static in this profile and is set to 128. Priority 1 is not used in BMCA.

  • Priority 2: Priority 2 is a configurable value and its range if from 0 to 255.

  • Local Priority: Local priority is configured locally on clock ports to set the priority on nominated clocks. The default value is 128 and valid range is from 1 to 255.

Benefits

With upcoming technologies like LTE-TDD, LTE-A CoMP, LTE-MBSFN and Location-based services, eNodeBs (base station devices) are required to be accurately synchronized in phase and time. Having GNSS systems at each node is not only expensive, but also introduces vulnerabilities. The G.8275.2 profile meets the synchronization requirements of these new technologies.

Restrictions for Using the G.8275.2 Profile

  • In G.8275.2, PTP can be used in both hybrid mode and non-hybrid mode. In hybrid mode, PTP is used to provide phase and time-of-day throughout the network synchronization along with PHY layer frequency support (SyncE). In non-hybrid mode, PTP is used without PHY layer frequency support (SyncE).

  • The G.8275.2 is not supported on the Cisco ASR 900 Routers with RSP1 module.

  • A G.8275.2 PTP clock can have redundant clock sources configured (through multiple PTP ports). However, at any given time, a G.8275.2 PTP clock synchronizes to only one clock source, which is selected by BMCA.

  • In Cisco IOS XE Everest 16.5.1, the G.8275.2 does not support assisted partial-support telecom time subordinate clock (T-TSC-A).

  • The G.8275.2 does not provide any recommendations for performance analysis and network limits for the clocks.

  • Virtual port is not supported on the Cisco RSP2 Module.

  • For the ports configured with G.8275.2 profile, removal of transport ipv4 unicast interface Loopback 0 negotiation configuration by using the no form of the command is not supported.

Configuring the G.8275.2 Profile


Note


To know more about the commands referenced in this module, see the Cisco IOS Interface and Hardware Component Command Reference or the Cisco IOS Master Command List.

Creating a Server-Only

T-GM Ordinary Clock


ptp clock ordinary domain 44  
clock-port server1 master profile g8275.2
transport ipv4 unicast interface Loopback0 negotiation

Note


It is mandatory that when electrical ToD is used, the utc-offset command is configured before configuring the tod R0, otherwise there will be a time difference of approximately 37 seconds between the server and client clocks.


The following example shows that the utc-offset is configured before configuring the ToD to avoid a delay of 37 seconds between the server and client clocks:

ptp clock ordinary domain 44  
 utc-offset 37
tod R0 cisco
input 1pps R0
clock-port server-port master
  transport ipv4 unicast interface Loopback0 negotiation

T-GM Boundary Clock

A boundary clock can be configured as a T-GM by configuring the external inputs of 10m, 1pps and ToD. However, external inputs to a boundary clock can be given only through a virtual port.

ptp clock boundary domain 44 hybrid
virtual-port vp1 profile g8275.2
  input 1pps R0
  input tod R0 ntp
 clock-port dp2
  transport ipv4 unicast interface Loopback0 negotiation
  clock source 60.60.60.60
ptp clock boundary domain 45
clock-port d1 profile g8275.2 local-priority 12
transport ipv4 unicast interface Lo0 negotiation
clock source 10.0.0.1
clock-port dp2 profile g8275.2 local-priority 13
transport ipv4 unicast interface Lo0 negotiation
clock source 12.12.12.12
clock-port dp3 profile g8275.2 local-priority 14
transport ipv4 unicast interface Lo0 negotiation
clock source 56.56.56.56
clock-port dp1 profile g8275.2 local-priority 12
transport ipv4 unicast interface Lo0 negotiation 
clock source 10.0.0.2

Creating an Ordinary Subordinate (T-TSC-P)

Creating a Boundary Clock

ptp clock boundary domain 44
  clock-port server-port-1 master profile G.8275.2
    transport ipv4 unicast interface lo 0 negotiation 
  clock-port port1 profile G.8275.2
    transport ipv4 unicast interface lo 0 negotiation 
    clock source 10.0.0.1
  clock-port port2 profile G.8275.2
    transport ipv4 unicast interface lo 0 negotiation 
    clock source 10.1.1.2

Creating Dynamic Ports

The following considerations apply to dynamic ports:

  • Dynamic ports are created by not specifying whether a port is server or client. In such cases, the BMCA dynamically choses the role of the port.

  • Dynamic ports do not have a keyword.

  • All the dyanamic ports configured under a clock must use the same loopback interface.

  • For a dynamic port to communicate with a peer, it must have clock source x.x.x.x configured with it.


ptp clock boundary domain 44 hybrid
clock-port bc-port-1 profile g8275.2local-priority 1
transport ipv4 unicast interface Lo0 negotiation 

clock source 10.0.0.1
clock-port bc-port-2 profile g8275.2 local-priority 2
transport ipv4 unicast interface Lo0 negotiation

clock source 10.0.0.2

Configuring Virtual Ports


ptp clock boundary domain 44 hybrid
utc-offset 37 leap-second “01-01-2017 00:00:00” offset 1
virtual-port virtual-port-1 profile g8275.2 local-priority 1
input 1pps R0
input tod R0 ntp

Note


It is mandatory that when electrical ToD is used, the utc-offset command is configured before configuring the tod R0, otherwise there will be a time difference of approximately 37 seconds between the server and client clocks.


Restrictions for Configuring Virtual Ports

  • Virtual port configuration is not allowed under Ordinary Clocks.

  • Virtual port configuration is not supported under non-hybrid T-BC cases.

Verifying the Default and Parent Datasets


Router# show ptp clock dataset default

CLOCK [Boundary Clock, domain 44]

Two Step Flag: No

Clock Identity: 0x5C:83:8F:FF:FE:1F:27:BF

Number Of Ports: 5

Priority1: 128

Priority2: 128

Local Priority: 128

Domain Number: 44

Slave Only: No

Signal Fail: No

Clock Quality:

Class: 165

Accuracy: Unknown

Offset (log variance): 65535 

Router# show ptp clock dataset parent domain 44
CLOCK [Ordinary Clock, domain 44]
 
  Parent Clock Identity: 0x80:E0:1D:FF:FE:E3:F8:BF
  Parent Port Number: 1
  Parent Stats: No
  Observed Parent Offset (log variance): 65535
  Observed Parent Clock Phase Change Rate: 2147483647
 
  Grandmaster Clock:
    Identity: 0x70:10:5C:FF:FE:50:3A:3F
    Priority1: 128
    Priority2: 128
    Clock Quality:
      Class: 6
      Accuracy: Within 100ns
      Offset (log variance): 20061

Verifying the PTP Clock State

Router# show ptp clock  running domain 44

                      PTP Boundary Clock [Domain 44] [Hybrid]
         State             Ports          Pkts sent      Pkts rcvd      Redundancy Mode
         PHASE_ALIGNED      1              2577144        7349181        Hot standby

                               PORT SUMMARY
Name  Tx Mode      Role           Transport    State        Sessions     PTP master Port Addr
dp1   unicast      negotiated     Lo0          Slave        1                  UNKNOWN

                             SESSION INFORMATION
dp1 [Lo0] [Sessions 1]
 Peer addr          Pkts in   Pkts out   In Errs    Out Errs
 10.0.0.1            7349181    2577144   0          0

Verifying the PTP Clock Synchronization State

Router# show network-clocks synchronization detail
Symbols:     En - Enable, Dis - Disable, Adis - Admin Disable
             NA - Not Applicable
             *  - Synchronization source selected
             #  - Synchronization source force selected
             &  - Synchronization source manually switched
 
Automatic selection process : Enable
Equipment Clock : 2048 (EEC-Option1)
Clock State : Frequency Locked
Clock Mode : QL-Enable
ESMC : Enabled
SSM Option : 1
T0 : GigabitEthernet0/0/11
Hold-off (global) : 300 ms
Wait-to-restore (global) : 0 sec
Tsm Delay : 180 ms
Revertive : No
Force Switch: FALSE
Manual Switch: FALSE
Number of synchronization sources: 2
Squelch Threshold: QL-SEC
sm(netsync NETCLK_QL_ENABLE), running yes, state 1A
Last transition recorded: (sf_change)-> 1A (sf_change)-> 1A (sf_change)-> 1A (sf_change)-> 1A (sf_change)-> 1A (sf_change)-> 1A (sf_change)-> 1A (ql_change)-> 1A (sf_change)-> 1A (ql_change)-> 1A
 
 
Nominated Interfaces
 
Interface            SigType     Mode/QL      Prio  QL_IN  ESMC Tx  ESMC Rx
Internal             NA          NA/Dis       251   QL-SEC    NA        NA
*Gi0/0/11             NA          Sync/En      1     QL-PRC    -         -
Te0/0/24             NA          Sync/En      2     QL-PRC    -         -
 
Interface:
---------------------------------------------
Local Interface: Internal
Signal Type: NA
Mode: NA(Ql-enabled)
SSM Tx: DISABLED
SSM Rx: DISABLED
Priority: 251
QL Receive: QL-SEC
QL Receive Configured: -
QL Receive Overrided: -
QL Transmit: -
QL Transmit Configured: -
Hold-off: 0
Wait-to-restore: 0
Lock Out: FALSE
Signal Fail: FALSE
Alarms: FALSE
Active Alarms: None
Slot Disabled: FALSE
SNMP input source index: 1
SNMP parent list index: 0
Description: None
 
Local Interface: Gi0/0/11
Signal Type: NA
Mode: Synchronous(Ql-enabled)
ESMC Tx: ENABLED
ESMC Rx: ENABLED
Priority: 1
QL Receive: QL-PRC
QL Receive Configured: -
QL Receive Overrided: -
QL Transmit: QL-DNU
QL Transmit Configured: -
Hold-off: 300
Wait-to-restore: 0
Lock Out: FALSE
Signal Fail: FALSE
Alarms: FALSE
Active Alarms :  None
Slot Disabled: FALSE
SNMP input source index: 2
SNMP parent list index: 0
Description: None
 
Local Interface: Te0/0/24
Signal Type: NA
Mode: Synchronous(Ql-enabled)
ESMC Tx: ENABLED
ESMC Rx: ENABLED
Priority: 2
QL Receive: QL-PRC
QL Receive Configured: -
QL Receive Overrided: -
QL Transmit: QL-PRC
QL Transmit Configured: -
Hold-off: 300
Wait-to-restore: 0
Lock Out: FALSE
Signal Fail: FALSE
Alarms: FALSE
Active Alarms :  None
Slot Disabled: FALSE
SNMP input source index: 3
SNMP parent list index: 0
Description: None

Verifying the Port Parameters


Router# show ptp port dataset port domain 44

PORT [SERVER-1]
Clock Identity: 0x70:10:5C:FF:FE:50:3A:3F
Port Number: 1
Port State: Master
Min Delay Req Interval (log base 2): -4
Peer Mean Path Delay: 0
Announce interval (log base 2): 1
Announce Receipt Timeout: 3
Sync Interval (log base 2): -5
Delay Mechanism: End to End
Peer Delay Request Interval (log base 2): -4
PTP version: 2
Local Priority: 128
Master-only: True
Signal-fail: False 

Verifying the Foreign Master Information


Router# show platform software ptp foreign-master domain 44
PTPd Foreign Master Information:

Current Master: SLA

Port: SLA
GM Clock Identity: 0x70:10:5C:FF:FE:50:3A:3F
Clock Stream Id: 0
Priority1: 128
Priority2: 128
Local Priority: 10
Clock Quality:
Class: 6
Accuracy: Within 100ns
Offset (Log Variance): 0x4E5D
Source Port Identity:
Clock Identity: 0x70:10:5C:FF:FE:50:3A:3F
Port Number: 1
Steps Removed: 1
masterOnly: FALSE
Qualified: TRUE 

Verifying Current PTP Time


Router# show platform software ptpd tod
PTPd ToD information:
 
Time: 01/05/70 06:40:59

Verifying the Virtual Port Status


Router# show ptp port virtual domain 44

VIRTUAL PORT [vp1]
  Status: up
  Clock Identity: 0x64:F6:9D:FF:FE:F2:25:3F
  Port Number: 2
  Clock Quality:
    Class: 6
    Accuracy: 0x21
    Offset (log variance): 0x4E5D
  Steps Removed: 0
  Priority1: 128
  Priority2: 128
  Local Priority: 128
  Not-slave: False
  Signal-fail: True

G.8275.2 Deployment Scenario

The following example illustrates a possible configuration for a G.8275.2 network with two primaary clocks, a boundary clock and a subordinaate clock. Let’s assume that server A is the ordinary clock and B is the backup server clock with virtual port.

Figure 1. Topology for a Configuration Example

The configuration on TGM A (as ordinary clock):


ptp clock ordinary domain 44
tod R0 ntp
input 1pps R0
utc-offset 37
clock-port server-port master profile g8275.2
transport ipv4 unicast interface Lo0 negotiation

The configuration on TGM B with Virtual Port:


ptp clock boundary domain 44 hybrid
utc-offset 37
clock-port dynamic1 profile g8275.2
transport ipv4 unicast interface Lo0 negotiation
clock source 3.3.3.3
virtual-port virtual1 profile g8275.2
input 1pps R0
input tod R0 ntp

The configuration on the boundary clock:


ptp clock boundary domain 44 hybrid
clock-port dynamic1 profile g8275.2 local-priority 1
transport ipv4 unicast interface Lo0 negotiation
clock source 10.0.0.1
clock-port dynamic2 profile g8275.2 local-priority 2
transport ipv4 unicast interface Lo0 negotiation
clock source 10.0.0.2
clock-port dynamic3 profile g8275.2
transport ipv4 unicast interface Lo0 negotiation
clock source 10.0.0.4

The configuration on the client clock:


ptp clock ordinary domain 44 hybrid
clock-port client-port slave
transport ipv4 unicast interface Lo0 negotiation
clock source 10.0.0.3