Logically, a physical network can be divided into multiple clock domains. Each clock domain has a reference time with which all devices in the domain are synchronized. The reference time in one clock domain is different from and independent of that in another clock domain.
A device can transparently transmit the time information from multiple clock domains over a transport network to provide reference times for multiple mobile carrier networks. The device, however, can join only one clock domain and synchronize the time with only one reference time.
Each node on a time synchronization network is called a clock. 1588v2 defines the following types of clocks:
Ordinary clock (OC)
An OC has only one 1588v2 interface through which the OC synchronizes with an upstream node or distributes time to downstream nodes.
Boundary clock (BC)
A BC has multiple 1588v2 interfaces, one of which is used to synchronize the time with an upstream node. The other 1588v2 interfaces are used to distribute time to downstream nodes.
The following is an example of a special case: If a device obtains the reference time from a BITS source through an external time interface (which is not enabled with 1588v2) and then distributes time to downstream nodes through two 1588v2 interfaces, the device is a BC because it has more than one 1588v2 interface.
Transparent clock (TC)
The biggest difference between a TC and a BC or an OC is that a TC does not synchronize the time with other devices where a BC or an OC does. A TC has multiple 1588v2 interfaces through which the TC forwards 1588v2 packets and corrects the packet transmission delay. A TC does not synchronize the time through any of these 1588v2 interfaces.
TCs are divided into end-to-end (E2E) TCs and peer-to-peer (P2P) TCs.
A TC+OC is a special type of TC, which has the same time synchronization functions (forwarding 1588v2 packets and correcting the forwarding delay) as TCs and the same clock synchronization functions as OC interfaces.
As mentioned above, a TC corrects the forwarding delay of 1588v2 packets. If the times on the inbound and outbound interfaces of the TC are synchronous, the forwarding delay is determined by subtracting the time when the inbound interface receives a 1588v2 packet from the time the outbound interface sends a 1588v2 packet. If the clock of the TC is not synchronized with the clock of the BC or OC that implements time synchronization, the obtained forwarding delay is inaccurate, causing a time offset in the time synchronization calculation on the BC or OC. As a result, the accuracy of time synchronization is degraded.
Usually, it is recommended that the clock synchronization between the TC and the BC or OC be implemented through a physical clock, such as a WAN clock or a synchronous Ethernet (SyncE) clock. If no physical clock is available, the TC restores the frequency from the 1588v2 Sync message which is periodically sent by an upstream device. In this manner, the TC can be synchronized with the upstream device.
TC+OCs are divided into E2E TC+OCs and P2P TC+OCs.
Figure 1 shows the positions of the OC, BC, and TC on a time synchronization network.
On a 1588v2 network, all clocks are deployed in a hierarchical structure according to the master-slave relationship. Such a topology can be statically configured or automatically generated through the best master clock algorithm (BMCA) defined in IEEE 1588v2.
IEEE 1588v2 defines an Announce message that is used to exchange time source information between clock nodes. The time source information includes the precedence of the grandmaster clock, stratum, time precision, and number of hops to the grandmaster clock. With the preceding information, clock nodes determine the grandmaster clock, select the interfaces through which the clock nodes are synchronized with the grandmaster clock, and determine the master-slave relationship between two clock nodes. After a time source is selected, a spanning tree can be created, which is of no loop, full connectivity, and takes the grandmaster clock as the root.
If a master-slave relationship has been set up between two nodes, the master node periodically sends an Announce message to the slave node. If the slave node does not receive an Announce message from the master node within a specified period, the slave node terminates the current master-slave relationship and finds another interface with which to establish a new master-slave relationship.
Clock nodes also support packet timing signal fail (PTSF)-triggered source switching. If the current time source has an offset change (greater than 1.1 μs for three consecutive seconds) or a signal failure occurs due to the loss of Sync packets, a clock node automatically switches to another valid time source.
A 1588v2 packet can be encapsulated in either MAC or UDP mode:
Theoretically, 1588v2 supports all types of links. However, 1588v2 defines the encapsulation and implementation only on Ethernet links. Therefore, the NetEngine 8000 F supports only Ethernet links.
A time synchronization network is like a spanning tree, on which the grandmaster clock is the root node of the tree. Other nodes synchronize their time with the grandmaster clock.
When a pair of nodes performs time synchronization, the upstream node distributing the reference time is the master node and the downstream node receiving the reference time is the slave node.