Configuring a Nokia 7705 SAR-M as a PTP Boundary Clock#

Configuration notes to setup a Nokia 7705 SAR-M router as an IEEE1588 PTP Boundary Clock using the ITU-T G.8275.1 telecom profile for phase and time synchronization. Successfully tested with Nokia Airscale units as PTP grandmasters (GPS locked) and Linux ptp4l clients.

While the Nokia documentation is very complete, it is very light on any actual examples for the configuration commands that match the system operation descriptions in the documents.

Enable PTP#

Create a PTP clock. The clock type csm must be used when the encapsulation is Ethernet (L2). The clock-id can be 1-16 for PTP over IPv4/IPv6.

system ptp clock csm create

Set the clock type to use the G8275.1 profile and set the clock to act as a boundary clock.

system ptp clock csm profile g8275dot1-2014
system ptp clock csm clock-type boundary
system ptp clock csm no shutdown

Set the system timezone as required.

system time zone PST

Use PTP as the Synchronization Source#

The 7705 SAR requires a synchronization source to be set to reference the internal clock. If an external sync input is not used from a 10MHz or 2048kHz reference source, the PTP clock can be specified to discipline the internal clock.

Additionally, the 7705 SAR needs to be told to prioritize the created PTP ref1, otherwise the default will be to look for an external sync input.

system sync-if-timing begin
system sync-if-timing ref-order ref1 external ref2
system sync-if-timing ref1 source-ptp-clock csm
system sync-if-timing ref1 no shutdown
system sync-if-timing ref1 exit
system sync-if-timing commit

Add Ports to the Boundary Clock#

The following commands add specific ports to the the PTP clock as required. The Ethernet address can be specified (default is 01:1b:19:00:00:00)

system ptp clock csm port 1/1/1 create
system ptp clock csm port 1/1/1 address 01:1b:19:00:00:00
system ptp clock csm port 1/1/1 no shutdown
system ptp clock csm port 1/1/1 exit

If the 7705 SAR is set to be an Ordinary Slave, this is all that is required for each port to accept packets from a PTP master. However, in Boundary Clock mode, the default is to assign master-only true to each port within the Boundary Clock. This means that each port by default will only act as a master to downstream clients (likely to stop rogue clients from presenting as masters). For each port that should be a client to an upstream grandmaster, master-only false needs to be set.

system ptp clock csm port 1/1/2 create
system ptp clock csm port 1/1/2 master-only false
system ptp clock csm port 1/1/2 no shutdown
system ptp clock csm port 1/1/1 exit

Update the System Clock from PTP#

The 7705 SAR will now act as a Boundary Clock, but needs the following commands to actually update its system time based on the PTP timestamps and be able to use the PTP clock for PPS output.

system time ptp clock csm time-ref-priority 1

Results#

In the end, this results in a simple to set up and quite performant PTP Boundary Clock for the price. I use the 7705 SAR as client to my Nokia Airscale system that is GPS locked with a LEA-M8T timing module and has a very impressive dedicated OCXO module (which itself is routinely locked to <3-5ns from the GPS reference). In this setup, I see a consistent <50ns time offset from the Airscale and around 50PPB frequency error.

I would like to see if I can improve the frequency error (and then see if that improves the time error) by feeding one of the Airscale’s GPS-disciplined 2048kHz outputs into the 7705 SAR’s sync input and see if that provides better frequency accuracy than relying on the frequency recovery from the PTP timestamps.

Another option would be to explore Synchronous Ethernet or SyncE which allows devices to extract frequency directly from the ethernet line rate and is supported by both the Airscale equipment and the 7705 SAR.

But for now I am very happy with this Boundary Clock solution and is certainly better than relying on standard network switches working as either Transparent clocks (in the best case) or that are not PTP-aware at all.