Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

Dell EMC SmartFabric OS10 User Guide Release 10.5.1

PDF

Precision Time Protocol

Precision Time Protocol (PTP), defined in the IEEE1588-2008 standard, is a protocol that uses a master-slave hierarchy to synchronize clocks on network devices. PTP uses hardware time stamping to achieve submicrosecond synchronization. PTP defines how real-time clocks in a network synchronize with each other. A network where PTP operates is called a PTP domain. This protocol operates by organizing clocks within a PTP domain into a master-slave hierarchy. The reference time for the entire system comes from the root clock, also known as the grandmaster clock.

PTP is more accurate than NTP because it uses hardware timestamping. PTP also accounts for device latency while synchronizing time. NTP synchronizes clocks with millisecond accuracy; PTP achieves submicrosecond accuracy.

OS10 supports PTP on all platforms that support hardware time stamping.

PTP-enabled devices consist of the following clock types:

Ordinary clock
A device with a single physical port is called an ordinary clock. This device could take on a master or slave clock role.
NOTE: OS10 switch cannot function as the grandmaster clock and hence OS10 does not support the ordinary clock configuration.
Boundary clock
A device with multiple physical ports that synchronizes time from one network segment to another is called a boundary clock. One port is a slave that synchronizes time from upstream PTP device. The other ports are masters that distribute time to downstream devices. The best master clock algorithm (BMCA) decides the individual state of a port, master or slave.
End-to-end transparent clock
Calculates the residence time of the PTP event message and updates the correction field (CF) of the event message before forwarding the message. The ports are not in any specific state.

Best master clock algorithm

PTP uses the best master clock algorithm (BMCA) to compare clocks in a network. BMCA determines the status of ports in the network:

  • Master—A clock that provides time to other clocks in the network.
  • Slave—A clock that receives time from other clocks in the network.
  • Passive—A port that is not a master or slave.

This algorithm determines if the newly discovered foreign clock is better than the local clock. The grandmaster field in the Announce message contains information about the foreign master clock. Information about the local clock is present in the default data set of the clock. The foreign and local clocks are compared based on the following attributes:

  1. Priority1—(Applicable only for the system-default profile) Configurable attribute that determines the master from an ordered set of clocks. Priority1 is the most significant of the six attributes that devices use to select a master clock. The lower the value of priority1, the higher its priority.
  2. ClockClass—Defines the traceability of a clock.
  3. ClockAccuracy—Defines the accuracy of a clock.
  4. OffsetScaledLogVariance—Defines the stability of a clock.
  5. Priority2—Configurable attribute that determines a master among equivalent clocks. Priority2 is the fifth-most significant attribute out of the six attributes that devices use to select a master clock. The lower the value of priority2, the higher its priority.
  6. ClockIdentity—Unique identifier that determines a master when two clocks are exactly the same. The clock with the lower clock identity has the highest preference.

When a PTP node receives two Announce messages from the same foreign master, PTP selects the best master based on the StepsRemoved field of the Announce message. This field indicates the number of boundary clocks between the local clock and the grandmaster clock.

Message types

Dynamic Host Configuration Protocol
  • Event messages: Timed messages with an accurate timestamp that is generated at both the transmit time and receive time.
    • Sync—Master sends a Sync message to distribute the time of the day.
    • Delay_Req—Slave sends a Delay_Req message to the master for end-to-end delay measurement, the request-response delay mechanism.
    • Pdelay_Req—Link node A sends a Pdelay_Req message to measure peer-to-peer delay.
    • Pdelay_Resp—Link node B sends a Pdelay_Resp message to measure peer-to-peer delay.
  • General messages: Do not require accurate timestamps.
    • Follow_Up—In a two-step clock, the master sends a Follow_Up message after sending the Sync message.
    • Delay_Resp—Master sends a Delay_Resp message to measure the end-to-end delay.
    • Pdelay_Resp_FollowUp—Link node B sends a Pdelay_Resp_FollowUp message to measure peer-to-peer delay.
    • Announce—Master sends an Announce message to establish a synchronization hierarchy. The BMCA uses the Announce message to define a clock hierarchy and to select the grandmaster clock.
    • Signaling—Clock A sends a Signaling message to clock B for unicast negotiation and so on.

Time synchronization

Master and slave clock devices exchange PTP timing messages to achieve time synchronization. Slave clock devices adjust their time to synchronize with their master clock devices.

For time synchronization and to determine the slave offset with the master, PTP accounts for the following:

  • Communication delay between two PTP nodes
  • End-to-end delay measured using the delay request message from the slave and delay response message from the master
Dynamic Host Configuration Protocol

The following is the sequence of PTP messages during time synchronization:

  1. Master sends a Sync message and makes note of the time t1 when the message was sent.
  2. Slave receives the Sync message and makes note of the time t2 when the message was sent.
  3. Master embeds the timestamp t1 in the Sync message.
  4. Slave sends a Delay_request message to the master and makes note of the time t3 when the message was sent.
  5. Master receives the Delay_request message and makes note of the time t4 when the message was sent.
  6. Master conveys the timestamp t4 in a Delay_response message.
  7. Slave uses these timestamps to adjust its local clock to synchronize with the master:
    • Offset = [(t2 – t1) – (t4 – t3)] / 2
    • Delay = [(t2 – t1) + (t4 – t3)] / 2

Supported profiles

OS10 supports the following PTP profiles:

  • System default profile
  • G.8275.1 profile

Supported transport methods

OS10 supports the following PTP transport methods:

  • Layer2 (Ethernet)
  • IPv4 (Unicast and multicast)
  • IPv6 (Unicast and multicast)

For the multicast transport method, as defined in the IEEE 1588 standard, PTP uses 224.0.1.129 as the multicast destination IPv4 address. PTP uses FF0X:0:0:0:0:0:0:181 as the multicast destination IPv6 address.

NOTE: OS10 supports IPv6 multicast only between two directly-connected IPv6 PTP nodes.

Configurable PTP attributes

The following are configurable PTP attributes that BMCA uses to determine the master and slave clock devices:

  • Priority1—Has the highest preference in the list of attributes used for master clock device selection.
  • Priority2—Has the fifth preference in the list of attributes used for master clock device selection.
  • LocalPriority—(Applicable only for the G.8275.1 profile) Determines the master clock device when two clocks are similar to each other.

Rate this content

Accurate
Useful
Easy to understand
Was this article helpful?
0/3000 characters
  Please provide ratings (1-5 stars).
  Please provide ratings (1-5 stars).
  Please provide ratings (1-5 stars).
  Please select whether the article was helpful or not.
  Comments cannot contain these special characters: <>()\