Timing
Today’s mobile networks are reliant on accurate timing, or accurate distribution and synchronization of precise clock information, in order to accurately transport voice and data traffic. In existing radio architectures, frequency synchronization is typically achieved through the backhaul network itself. These legacy architectures are based on TDM backhaul. Because TDM carries time inherently, the radio architecture itself was designed with frequency synchronization embedded in the physical layer.
Radio Access Network and Synchronization
The need for synchronization has always been inherent in Radio Access Networks. As discussed in Chapter 1, “Introduction to Radio Systems,” radio networks fall into two categories:
- Frequency Division Duplexing (FDD), in which two sets of frequencies are used for transmit/receive. These networks require frequency synchronization in order to accurately send and receive traffic.
- Time Division Duplexing (TDD), in which a single frequency is used for transmit/receive and a demarcation based on timeslots is identified for both transmission and reception. These networks require time synchronization in order to accurately send and receive traffic.
Table 7-3 provides a reference for today’s wireless technologies and their synchronization requirements.
Table 7-3. Wireless Technologies and Synchronization Requirements
Application |
Service |
TDM Support |
Frequency/Timing |
3GPP (GSM, WCDMA FDD) |
Frequency |
3GPP (LTE, eMBMS) |
Time (TDD Mode) |
Frequency (FDD Mode) |
|
WiMAX (IEEE 802.16d/e) |
Frequency Time |
DVB-T/DVB-H |
Time |
TD-SCDMA 3GPP2 CDMA |
Time Frequency |
In mobile networks, high-quality frequency and time/phase synchronization are useful and in some cases required. The accuracy of these services differs based on the radio technology and standards organization. The synchronization service accuracy based on application (radio technology) is referenced in Table 7-4.
Table 7-4. Synchronization Service Requirements
Synch Service |
Application |
Expected Quality |
Frequency |
TDM Support |
Primary Reference Source (PRS) Traceable |
3GPP/3GPP2 BS |
Frequency assignment shall be less than ± 5×10-8 (± 0.05 parts-per-million [ppm]) |
|
WiMAX (IEEE 802.16) |
.16D: Reference frequency accuracy shall be better than ±8*10-6 (±2*10-6) .16e: Reference Frequency Tolerance at BS: ≤ ±1*10-6 |
|
DVB-T/H/SH/T2 |
Frequency shall provide a traceable Primary Reference Clock (PRC) source for 10MHz signal |
|
Time |
802.16D/e TDD |
Better than 5µs |
DVB-T/H |
Within 1µs accuracy |
|
3GPP LTE |
Better than or equal to 3µs |
|
3GPP2 CDMA BS |
Should be less than 3 µs Shall be less than 10 µs |
|
3GPP eMBMS |
TBD |
Network Synchronization Options
In order to achieve the stringent quality requirements identified in Table 7-4, there are multiple network synchronization options, as follows:
Free-running oscillator: A free-running oscillator is one that has never been synchronized to a reference clock. This oscillator’s accuracy is based on the technology within the oscillator. In this model, each network element would either contain or be connected directly to a free-running oscillator and rely on the local clock for all synchronization. Table 7-5 highlights the different oscillator technologies and accuracy.
Table 7-5. Oscillator Technology and Accuracy
Technology
Stratum Level
Accuracy
Hydrogen Maser
1×10-15
Cesium
1
1×10-11
Rubidium
2
5×10-11
Crystal
3/4
4.6×10-6
- Global Positioning System (GPS): GPS synchronization relies on a GPS satellite to provide the clock source. All GPS satellites contain a Cesium standard clock. Because GPS satellites circle the globe twice per day, any device relying on GPS for synchronization must also calculate geographic location in order to determine from which satellite it can receive signals.
- Physical layer: Physical layer synchronization has long been used for transporting clock information. SONET/SDH and T1/E1 are well-known examples of physical layer synchronization. More recently, Synchronous Ethernet (SyncE) uses the Ethernet physical layer interface to pass timing from node to node in much the same way. SyncE is discussed later in this chapter in “Packet-Based Timing.”
- Higher layer: Higher-layer synchronization relies on a packet-based protocol to distribute clocking information. IEEE 1588v2 and Network Time Protocol (NTP) are discussed later in this chapter in “Packet-Based Timing.”
Introduction to Timing
This section provides an overview of timing, including definitions, clock hierarchies, and reference clock architectures. These hierarchies and architectures are leveraged repeatedly in many different circuit-switched and packet-switched timing protocols, and understanding these architectures provides the foundation knowledge for the remainder of this chapter.
Understanding Timing Definitions
Before defining architectures, it is important to understand some of the basic definitions that will be used continually throughout the remainder of this chapter. This section provides some of these basic definitions.
Precision, Accuracy, and Stability
Precision, accuracy, and stability are used to measure the reliability of a clock signal.
- Precision is defined as the ability of a measurement to be consistently reproduced. When referencing timing, precision refers to the amount of variation of a set of measurements.
- Accuracy is defined as the ability of a set of measurements to consistently match the exact value being measured. In the case of timing, the value being measured is a predefined reference time.
- Stability is defined as the amount a measurement changes as a function of time or environment (temperature, shock, and so on).
The goal of every clock is to be highly precise, highly accurate, and highly stable. In practice, however, every clock signal has unique characteristics of precision, accuracy, and stability. These clock signals can fall into six broad categories, as follows:
Accurate, precise, stable: This clock source produces a consistent measurement as a function of time and environment that is representative of the predefined reference time. Figure 7-21 illustrates this type of clock source.
Figure 7-21 Accurate, Precise, Stable
Accurate, imprecise, stable: This clock source produces a large variety of measurements, consistent as a function of time and environment, which are representative of the predefined reference time. Figure 7-22 illustrates this type of clock source.
Figure 7-22 Accurate, Imprecise, Stable
Precise, accurate, unstable: This clock source produces a small variety of measurement, inconsistent as a function of time and environment, which are representative of the predefined reference time. Figure 7-23 illustrates this type of clock source.
Figure 7-23 Precise, Accurate, Unstable
Inaccurate, precise, stable: This clock source produces a small variety of measurements, consistent as a function of time and environment, which are not representative of the predefined reference time. Figure 7-24 illustrates this type of clock source.
Figure 7-24 Inaccurate, Precise, Stable
Accurate, imprecise, unstable: This clock source produces a large variety of measurements, inconsistent as a function of time and environment, which are representative of the predefined reference time. Figure 7-25 illustrates this type of clock source.
Figure 7-25 Accurate, Imprecise, Unstable
Inaccurate, imprecise, stable: This clock source produces a large variety of measurements, consistent as a function of time and environment, which are not representative of the predefined reference time. Figure 7-26 illustrates this type of clock source.
Figure 7-26 Inaccurate, Imprecise, Stable
Inaccurate, precise, unstable: This clock source produces a small variety of measurements, inconsistent as a function of time and environment, which are not representative of the predefined reference time. Figure 7-27 illustrates this type of clock source.
Figure 7-27 Inaccurate, Precise, Unstable
Inaccurate, imprecise, unstable: This clock source produces a large variety of measurements, inconsistent as a function of time and environment, which are not representative of the predefined reference time. Figure 7-28 illustrates this type of clock source.
Figure 7-28 Inaccurate, Imprecise, Instable
Synchronization
Synchronization refers to timing that requires multiple devices to operate as part of a system at the exact same time. In transporting time-based data traffic, synchronization of all network elements can be achieved in multiple ways. These elements can be synchronized in the following two key ways:
- Frequency synchronization refers to the need for two network elements (transmitter and receiver) to operate at the same rate—that is, both network elements need to operate at the same rate.
- Phase/Time synchronization refers to the need for two network elements to be able to accurately identify the end of a frame or byte. Phase/time synchronization first requires frequency synchronization.
Jitter
Jitter refers to the short-term fluctuations of a timing signal from their ideal positions in time (variations greater than or equal to 10 Hz). Jitter, which is constant over time, makes a clock source unstable. Figure 7-29 illustrates the effects of jitter.
Figure 7-29 Jitter
Wander
Wander refers to the long-term fluctuations of a timing signal from their ideal positions in time (variations less than 10 Hz). Unlike jitter, wander is not constant over time, and accumulates in a network. This accumulation leads to either incorrect synchronization or loss of synchronization. Figure 7-30 illustrates the effects of wander. Frequency Drift is a specific type of wander where a constant accumulation occurs.
Figure 7-30 Frequency Drift
Timing Architectures
Many different timing architectures have been deployed to all accomplish the same end-goal—maximum accuracy, stability, and precision of timing information to all nodes within the network. These timing architectures are dictated by standards-based hierarchies, with each tier of the hierarchy representing a different level of precision. Once the hierarchy is established, operators have varied in their deployment models for distribution and synchronization of this clock information. This section looks at the various clock hierarchy considerations and network architectures that have been deployed.
Clock Hierarchy
Clock standards have a hierarchy defined by the International Telecommunications Union (ITU) Telecommunications Standardization Sector (ITU-T) and the American National Standards Institute (ANSI). For simplicity, ANSI clock hierarchy is used within this chapter. The hierarchy defines the relationship between every clock within a synchronization domain and the model for distribution across the domain. The hierarchy is based on five quality metrics, as follows:
- Accuracy.
- Holdover Stability, or the ability to continue to preserve accurate time when a clock’s reference signal is lost.
- Pull-In/Hold-In Range, or the largest offset/differential between the reference frequency and nominal frequency for which the clock can still acquire “lock.”
- Wander.
- Time to First Frame (193 bits) Slip, or the length of time that the clock can remain accurate.
The ANSI and ITU-T clock standards are summarized in Table 7-6.
Table 7-6. ANSI/ITU-T Clock Standards
ANSI Stratum |
ITU-T Clock Level |
Accuracy |
Holdover Stability |
Pull-In Range |
Wander |
Time to First Frame Slip |
1 |
PRC |
1x10−11 |
None |
None |
None |
72 days |
2 |
Type II |
+/−0.016 ppm |
+/−1*10−10/day |
0.016 ppm |
0.001 Hz |
7 days |
− |
Type I |
Not Defined |
+/−2.7*10−9/day |
0.01 ppm |
0.003 Hz |
|
3E |
Type III |
+/−4.6 ppm |
+/−1.2*10−8/day |
4.6 ppm |
0.001 Hz |
3.5 hours |
3 |
Type IV |
+/−4.6 ppm |
+/−3.9*10−7/day |
4.6 ppm |
3 Hz |
6 minutes |
− |
Option I |
+/−4.6 ppm |
+/−2*10−6/day |
4.6 ppm |
1–10 Hz |
|
SMC |
Option 2 |
+/−20 ppm |
+/−4.6*10−6/day |
20 ppm |
0.1 Hz |
|
4 |
4 |
+/−32 ppm |
None |
32 ppm |
None |
The network is controlled by a Primary Reference Clock (PRC), or Stratum 1 clock, which is accurate to 1x10−11. Synchronization requires the distribution of the reference signal from the PRC to all network elements. The master-slave method is used for this propagation. The synchronization between hierarchies is unidirectional; that is, synchronization is always transferred from a higher layer to a lower layer. The Stratum 1 clock receives information from any number of Stratum 0 clocks. The Stratum 1 clock provides the reference clock for multiple Stratum 2 clocks, and each Stratum 2 clock provided the reference clock for multiple Stratum 3 clocks. This hierarchy is illustrated in Figure 7-31.
Figure 7-31 Clock Hierarchy
PRC Architectures
A PRC is designed to provide highly-accurate time, and therefore tends to rely on more than one Primary Reference Source (PRS). A Cesium-beam tube is always used in the generation of a PRC signal because of their accuracy in ensuring no aging or frequency drift. Three types of PRCs have emerged (and have been identified by The European Telecommunications Standards Institute [ETSI]), as follows:
- Autonomous PRCs with up to three local Cesium tubes incorporated within the PRC and used as the PRS.
- Radio-controlled PRCs, which use remote Cesium tubes in the radio infrastructure (either satellite-based, like GPS, or land-based, like Long Range Aid to Navigation [LORAN]-C) as the PRS.
- PRCs that use a combination of local Cesium tubes and radio-based Cesium tubes.
In the event of a failure of one of the PRS, the PRC can use one of the other PRS as the reference; however, the failover time must be within the Maximum Time Interval Error (MTIE) defined by ITU-T.
Table 7-7 depicts the MTIE defined by ITU-T for each clock level.
Table 7-7. MTIE by Stratum
ANSI Stratum |
ITU-T Clock Level |
Phase Transient |
1 |
PRC |
− |
2 |
Type II |
MTIE < 150ns |
− |
Type I |
MTIE < 1µs |
3E |
Type III |
MTIE < 150ns |
3 |
Type IV |
MTIE < 1µs |
− |
Option I |
MTIE < 1µs |
SMC |
Option 2 |
MTIE < 1µs |
4 |
4 |
No Requirement |
Figure 7-32 illustrates these three types of PRC architectures.
Figure 7-32 PRS/PRC Architectures
PRCs can be deployed in multiple different architectures. These architectures provide different levels of resiliency, complexity, and cost. In general, the following principles are adhered to in all PRC architectures:
- The synchronization distribution is tree-shaped.
- The synchronization network can be decomposed into multiple synchronization chains.
- Several stratum of slave clocks with different properties/roles exist.
- A higher-quality level is never slaved to a reference signal of a lower-quality.
- The SSU provides timing to a portion of the network. If the SSU’s reference signal is lost, the SSU supplies timing to the network downstream.
- Radio-controlled PRCs use remote Cesium tubes in the radio infrastructure (either satellite-based, like GPS, or land-based, like Long Range Aid to Navigation [LORAN]-C) as the PRS.
- PRCs use a combination of local Cesium tubes and radio-based Cesium tubes.
Figure 7-33 provides an example of a synchronization network, including the Synchronization Supply Unit (SSU).
Figure 7-33 Synchronization Network Example
SSUs are used to provide reliable distribution of clock information. SSUs are part of every synchronization domain, including the PRC. SSUs receive clocking information from higher-layer clocks and distribute the clock information to all local equipment. SSUs also have the ability to provide accurate holdover mode, in the event that their clock source is lost.
The SSU does not belong to the transport network, but only provides the timing for the transport network elements within its synchronization domain.
There are two primary methods for providing clock synchronization, as follows:
Master-slave synchronization, which has a single PRC from which all other clocks are synchronized. Synchronization in this method is achieved by sending timing signals from one clock to the next, in a hierarchical fashion. Figure 7-34 illustrates this master-slave synchronization network architecture.
Figure 7-34 Master-Slave Synchronization Network
Mutual synchronization, in which all clocks are interconnected. In this method, there is no unique PRC or hierarchical structure defined. Figure 7-35 illustrates this mutual synchronization network architecture.
Figure 7-35 Mutual Synchronization Network
In practice, master-slave and mutual synchronization methods may be deployed in combination. In this architecture, the main PRC is usually an autonomous or combined PRC (see Figure 7-32). Synchronization from the main PRC is done in standard master-slave hierarchical fashion. At Level 2, the SSU is connected to both the PRC (primary) and an off-air PRC (backup).
Figure 7-36 illustrates this combined network architecture. Priorities for clock source and synchronization are identified in the figure.
Figure 7-36 Combined Master-Slave and Mutual Synchronization Network
Timing Modes
Timing modes define what a clock is referenced to. Network elements may operate in four different timing modes, as follows:
- External timing, where the reference source signal is received via a local timing interface directly.
- Line timing, where the reference source signal is received from one or more data interfaces that also carries timing information.
- Loop timing, where the reference source signal is received from only one data interface as part of a ring topology.
- Through timing, where the reference source signal is transported transparently across the network element.
These timing modes map to four network architectures—synchronous networks, asynchronous networks, pseudo-synchronous networks, and plesiochronous networks.
Synchronous
A synchronous network is one where all clocks within the network have identical long-term accuracy. These networks require synchronization to avoid jitter and wander. Synchronous networks have a single active PRC source signal and rely on line timing to distribute clock information across the network. Figure 7-37 depicts a synchronous network that relies on line timing for clock source.
Figure 7-37 Synchronous Network
Asynchronous
An asynchronous network is one where not all clocks within the network have identical long-term accuracy due to multiple clock sources. In an asynchronous network, clocks are operating in free-running mode. These networks do not require that all clocks be synchronized to operate properly. Figure 7-38 depicts an asynchronous network.
Figure 7-38 Asynchronous Network
Pseudo-Synchronous
A pseudo-synchronous network is one where not all clocks use the same PRC, but all rely on PRC-level accuracy for their reference source. These networks require synchronization to work properly. Figure 7-39 depicts a pseudo-synchronous network.
Figure 7-39 Pseudo-Synchronous Network
Plesiochronous
A plesiochronous network is one where different parts of the network are not perfectly synchronized with each other. Plesiochronous networks operate within a threshold of acceptable asynchronization; that is, two network elements act as if they are synchronized, but must accept and cope with time slips. A plesiochronous network is depicted in Figure 7-40.
Figure 7-40 Plesiochronous Network
Packet-Based Timing
TDM networks are inherently synchronous. All network components must be synchronized with each other to ensure that data is not lost. In a native TDM network, clock synchronization is performed at the physical layer, and clocking information is carried along with data traffic. Clock slips occur when the receiver and transmitter have clocks that either run faster or slower than the other. These clock slips result in frames being either added or lost from the data stream.
IP networks, by nature, are asynchronous, and therefore cannot provide a constant bitrate. Packets reach their destination with random delay, known as jitter or Packet Delay Variation (PDV), already inserted. It is possible to remove random delay with a “jitter buffer,” which temporarily stores all incoming packets and then forwards them at evenly spaced intervals; however, the original reference time is not available to determine what those evenly spaced intervals should be. Due to this, it is not possible to use the physical layer clock synchronization information from the native TDM frame for accurate clocking over pseudowires.
Although pseudowire endpoints do not need the clock synchronization information directly to implement the packet-switching functions, the constant bitrate applications that leverage the pseudowire transport must receive accurate timing information. This requires that the packet-switched network—that is, the pseudowire itself—provide this information to the applications. In such architecture, the reference clock may be connected directly to the synchronous network elements on each side of the pseudowire (see Figure 7-41) or to the pseudowire interworking function (see Figure 7-42).
Figure 7-41 Pseudowire Network Synchronization—Reference Clock Connected to Sync Network Elements
Figure 7-42 Pseudowire Network Synchronization—Reference Clock Connected to Pseudowire IWF
Although there are a large number of solutions for providing synchronization information, the same models presented previously in the “Timing Modes” section apply to packet-based networks, namely external timing, line timing, and loop timing.
Clock Recovery over Packet
Clock recovery is an important consideration when providing circuit emulation services over a PSN. The receiving Interworking Functions (IWF) must accurately recover the clock source from the sending IWF. There are two methods to provide clock recovery over packet, as follows:
Differential Clock Recovery involves having a reference clock available at both sides of the pseudowire. Only the difference between the reference clock and the IWF service clock is transmitted across the pseudowire. Although this solution provides accurate frequency information and is tolerant to network delay, delay variation (jitter), and packet loss, the differential clock recovery solutions are expensive because they require multiple reference clocks. CESoPSN optionally may use differential clock recovery. Figure 7-43 illustrates differential clock recovery.
Figure 7-43 Differential Clock Recovery
Adaptive Clock Recovery involves having a reference clock available only at one side of the pseudowire. A timestamp is applied to all outbound packets by the sending IWF. The receiving IWF uses the information in the timestamp to recover the original reference clock information. Although this solution is less expensive (only a single reference clock is required), adaptive clock recovery is more susceptible to delay variation. TDMoIP uses adaptive clock recovery. Figure 7-44 illustrates adaptive clock recovery.
Figure 7-44 Adaptive Clock Recovery
Timing over Packet Solutions
There are four technologies for addressing synchronization over a packet network: Synchronous Ethernet (SyncE), Precision Time Protocol (PTP), Network Time Protocol (NTP), and Timing over IP Connection and Transfer of Clock BOF (TICTOC).
Any timing protocol should operate over the generic Internet with little or no intervention or management. Due to the unpredictable nature of the Internet, however, the accuracy of the protocol is greatly diminished. The accuracy of the frequency and time distribution is improved when operated over a managed network.
SyncE
Synchronous Ethernet (SyncE) is a line-timing method for transporting timing information over the Ethernet physical layer. Built on a Layer 1 model similar to SONET/SDH, SyncE provides accurate frequency synchronization, but does not provide time/phase synchronization.
SyncE specifications and requirements rely on four primary standards, as follows:
- ITU-T G.8261: Timing and synchronization aspects in packet network
- ITU-T G.8262: Timing characteristics of Synchronous Ethernet equipment slave clock
- ITU-T G.8264: Distribution of timing through packet networks
- ITU-T G.781: Synchronization layer functions
SyncE standards provide additional functionality to the 802.3 Ethernet standards while maintaining interworking between existing asynchronous Ethernet nodes and synchronous Ethernet nodes.
SyncE uses Synchronization Status Messages (SSMs) to transport timing information. Downstream clocks use the SSM for troubleshooting purposes, as the SSM will communicate if the clock source is a synchronized signal or derived from a free-running oscillator. These SSMs are transmitted using the Ethernet OAM protocol (ITU-T Y.1731 standard).
PTP
IEEE 1588v2, Precision Time Protocol, defined a protocol for precise, real-time, network-wide synchronization accuracy in the sub-millisecond range.
Each PTP domain consists of a number of clocks that synchronize with one another using the PTP protocol. Clocks within a PTP domain may not necessarily be synchronized with clocks within a different PTP domain.
Four types of clocks are defined within PTP, as follows:
- An Ordinary Clock (OC) has a single interface in a single PTP domain. The OC may be a master or slave, and may be responsible for providing time to an end node or application.
- A Boundary Clock (BC) has multiple interfaces in a single PTP domain. These interfaces may consist of multiple master interfaces, but only a single slave interface. The BC transfers all timing on the slave interface to the master interfaces. The BC can only be responsible for providing time to an application, not an end node.
- A Transparent Clock (TC) provides information on the time taken for a PTP message to transit the device and provides this information to all clocks receiving the PTP message. There are two types of transparent clocks:
- A Peer-to-Peer Transparent Clock (P2P TC) also provides corrections for any propagation delay on the link connected to the port receiving PTP messages.
- An End-to-End Transparent Clock (E2E TC) provides only the time taken for a PTP message to transit the device.
The PTP establishes a communications path across the network between all OCs and BCs. TCs may lie within the communications path, but, in general, P2P TCs and E2E TCs cannot be mixed in the same path.
Prior to synchronization, the clocks are organized into a master-slave hierarchy through a series of PTP Announce messages. The hierarchy contains a grandmaster, or PRC, multiple masters, and multiple slaves. This selection process is the Best Master Clock Algorithm (BMCA), which includes a clock class, based on where the clock has synchronized its timing from; clock accuracy, based on maximum accuracy threshold; and time source, based on the type of clock from which the advertising clock has received its timing (Atomic, GPS, Terrestrial Radio, PTP, Internal oscillator, and so on).
Synchronization in PTP
Once the hierarchy is established, each slave then synchronizes with its master using either a Delay Request-Response mechanism or a Peer Delay mechanism. These mechanisms cannot be mixed over the same communications path.
Delay Request-Response Mechanism The Delay Request-Response mechanism consists of four messages: Sync, Follow_Up (optional), Delay_Req, and Delay_Resp. Sync and Follow_Up messages are typically multicast, but may be unicast. Delay_Req and Delay_Resp are typically unicast messages between master and specific slave. Figure 7-45 illustrates this Request-Response mechanism.
Figure 7-45 PTP Delay Request-Response Mechanism
Propagation time, or transit time, and an offset, or processing time, are calculated during this process.
Assuming a symmetrical link:
- The propagation time is [(t2−t1)+(t4−t3)]/2.
- The offset is t2−t1–(propagation time).
Assuming an asymmetrical link:
- The propagation time is the average of the slave-to-master and master-to-slave propagation times.
- The offset is the difference between the actual master-to-slave time and the average propagation times.
Peer Delay Mechanism The Peer Delay mechanism is limited to point-to-point communications paths between two OC, BC, or P2P TC. The Peer Delay mechanism is also symmetric; that is, it operates separately in both directions.
The Peer Delay mechanism consists of five messages: Sync, Follow_Up (optional), Pdelay_Req, Pdelay_Resp, and Pdelay_Resp_Follow_Up (optional). Figure 7-46 illustrates this Request-Response mechanism.
Figure 7-46 PTP Peer Delay Mechanism
A propagation time, or the transit time, and an offset, or the processing time, are calculated during this process.
Assuming a symmetrical link:
- The propagation time is [(t4−t3)+(t6−t5)]/2.
- The offset is t2−t1–(propagation time).
Assuming an asymmetrical link:
- The propagation time is the average of the slave-to-master and master-to-slave propagation times.
- The offset is the difference between the actual master-to-slave time and the average propagation times.
When using an E2E TC in the network, the E2E TC is not synchronized at all. Instead, the E2E TC timestamps the Sync message or Follow_Up message on both ingress and egress, and computes the time taken for the message to traverse the node from these timestamps. This time is the residence time, and is included in the message as a Correction field, such that OC and BC may account for this processing time. Each E2E TC in the chain adds its own residence time to the value already contained in the Correction field.
PTP Profiles and Conformance
PTP supports extensible profiles that allow for transport of optional features and attribute values, including interworking and desired performance levels required for a particular application. These profiles are created by numerous third parties, such as standards or industry organizations and vendors.
Network nodes are required to conform to the normative sections of the IEEE 1588 standards and at least one PTP profile. IEEE 1588 defines two default profiles: Delay Request-Response Default PTP Profile and Peer-to-Peer Default PTP Profile. In addition, a network node may comply with certain optional sections of the standards but must implement the optional section in its entirety.
NTP
The Network Transport Protocol (NTP) is the most predominant method of synchronizing clocks on the Internet. The National Institute of Standards and Technology (NIST) estimates over 10 million NTP servers and clients deployed in the Internet.
The most recent version, NTPv4, extends upon previous versions (NTPv3–RFC 1305) by introducing accuracy to the tens of microseconds (with a precision time source, such as a Cesium oscillator or GPS receiver), dynamic discovery of servers, and includes an extensibility mechanism via options.
A NTP node operates as either a Primary (Stratum 1) server, a Secondary (Stratum 2) server, or a client. Primary servers synchronize to national time standards via radio (terrestrial or satellite). A client synchronizes to one or more upstream servers, but does not provide any synchronization services to downstream nodes. A Secondary server synchronizes to one or more Primary servers and also provides synchronization services to one or more downstream servers or clients.
NTP Protocol Modes
There are three NTP protocol modes: client/server, symmetric, and broadcast.
In client/server mode, clients and servers send unicast packets to each other. Servers provide synchronization services to the clients, but do not accept synchronization from them. In client/server mode, clients are responsible for pulling synchronization from the server.
In symmetric mode, a peer functions as both a client and server. Peers provide synchronization services and accept synchronization from other peers. In symmetric mode, peers push and pull synchronization from each other.
In broadcast mode, a server sends periodic broadcast messages to multiple clients simultaneously. On instantiation of communication, unicast messages are sent between client and server such that the client can accurately calculate propagation delay. Following this unicast exchange, the client listens for broadcast messages generated by the server. In broadcast mode, the broadcast server pushes synchronization to clients.
Offset
The basic operation of NTP synchronization involves determining the offset in clock from one network node to another. This works as follows:
- The NTP client sends a packet to a specified NTP server. In this packet, it stores the time the packet left as defined by its clock (t1).
- The NTP server receives the packet and notes the time it received the packet, according to its clock (t2), and the time the client sent the packet (t1).
- The NTP server sends a packet back to the client and includes what time it was sent according to its clock (t3). The packet sent back contains three timestamps: t1, t2, and t3.
- The client receives the packet from the server and notes what time it receives the packet according to its clock (t4).
Figure 7-47 illustrates this synchronization flow.
Figure 7-47 NTP Offset Calculation
Assuming a symmetrical link:
- The propagation delay is (t4−t1)–(t3−t2).
- The clock offset is [(t2−t1)+(t4−t3)]/2.
Although the basic algorithm seems simple, the NTP architecture is more complex than expected. Once a server sends information to a client, the client uses a combination of clock/data filter, selection, clustering, and combining algorithms to determine its local offset. Figure 7-48 depicts a typical NTP architecture.
Figure 7-48 NTP Architecture
NTP Clock Filter Algorithm
The NTP clock filter algorithm analyzes the stream of NTP data received to determine which samples are most likely to represent accurate time. The algorithm produces the offset, delay, dispersion (maximum error in measurement), jitter, and time of arrival information that is used to calculate the final offset for the system clock. These values are also used to determine if the server is functioning properly and whether it can be used as a reference source. The NTP clock filter algorithm actually consists of four other algorithms, as follows:
- The NTP selection algorithm scans the stream of NTP data and discards samples that are clearly incorrect, known as falsetickers, and keeps only those that appear to be accurate, known as truechimers. Falsetickers may be caused by the long-tail effect of Packet-Delay Variation (PDV) or network degradations, such as congestion and reroutes caused by node failures.
- The NTP cluster algorithm then discards those samples that are statistically furthest from the mean until a minimum number of samples remain.
- The NTP combine algorithm produces the final values based on a weighted average calculation from the samples remaining.
- The NTP clock discipline algorithm takes the final values output from the combine algorithm and uses these to discipline the local clock.
NTP Poll Interval
The NTP poll interval is the term used to define how often a new calculation of offset should be made. The poll interval is determined dynamically by the clock discipline algorithm based on the observed clock offset measurements. The poll interval will increase if the internal oscillator frequency stays constant. If the oscillator frequency changes, the poll interval will decrease in order to track these changes.
NTP Security Considerations
Because NTP broadcast clients are vulnerable to broadcast storms from spoofed or misbehaving NTP broadcast servers, NTP includes an optional authentication field. This optional authentication field supports MD5 encryption. This encryption can be negotiated between a broadcast client and server during instantiation.
TICTOC
The Timing over IP Connection and Transfer of Clock BOF (TICTOC) draft standard was written to provide a robust IP/MPLS-based time and frequency distribution architecture. TICTOC, like other protocols, can be decomposed into two layers corresponding to time and frequency. Implementations may vary depending on the exact need of the application. For example, if an application or network node only needs time synchronization and not frequency synchronization, only the time layer may be present.
Figure 7-49 illustrates the TICTOC layers.
Figure 7-49 TICTOC Layers
TICTOC Clients
TICTOC clients are comprised of up to four modules (illustrated in Figure 7-50)—the frequency acquisition module, the frequency presentation module, the time acquisition module, and the time presentation module.
Figure 7-50 TICTOC Client Modules
Frequency Acquisition Module
The frequency acquisition module retrieves the frequency information distributed over the network. The frequency acquisition module may be divided into the following sub-modules. These sub-modules may not all be present depending on requirements and implementation:
- Local oscillator. Both master and clients in the TICTOC architecture need a local oscillator. The master uses a Cesium clock, whereas the clients may use a lower-accuracy oscillator, such as quartz crystal. The client’s local oscillator must be adjusted to match the master’s oscillator to ensure synchronization. Disciplining the local oscillator is based on arrival time and information received in packets from the frequency distribution protocol.
- Frequency generator.
- Timestamp generator.
- Frequency distribution protocol. The frequency distribution protocol is used to distribute frequency across the network. This protocol may be the same or different than the protocol used to distribute time. Frequency distribution protocols in TICTOC are one-way, and may be unicast, multicast, or broadcast. Although multicast distribution is supported, there is the inherent risk that a multicast replication operation may add variable delay.
The frequency acquisition algorithms are used to re-acquire the source time from the received packets. As with all packets in a PSN, the packet distribution protocol packets are subject to Packet Delay Variation (PDV). The frequency acquisition algorithms are used to filter out the PDV through a two-step process, as follows:
- Packet Selection and Discard Algorithms: These algorithms are similar to those used in NTP to eliminate those packets that would lead to accuracy degradation of the recovered frequency. This packet selection algorithm works by selecting a series of packets that are all similar in result, as long as the sample still represents a relatively high percentage of packets.
- Filtering and control servos: With linear averaging, the time to calculate and eliminate frequency drift effects would be so high that the frequency difference calculated would no longer be relevant. “Control loops” are used to accurately model the frequency drift effects on sampled packets in a non-linear manner.
Frequency Presentation Module
If the frequency is needed by the application, the frequency presentation module formats this information into the application-specific requirements. Presentation methods may include graphical display, clock discipline, and so on.
Time Acquisition Module
The time acquisition module requires a stable frequency reference. Even if frequency is not needed, the time acquisition module may rely on the frequency acquisition module to retrieve information. The time acquisition module may also retrieve information from an external source, such as a GPS receiver. This module allows multiple TICTOC clients to share a common offset. The time acquisition module may be divided into the following sub-modules. These sub-modules may not all be present depending on requirements and implementation:
- Time distribution protocol: The time distribution protocol is used to accurately synchronize a clock based on measured offset between client and master oscillators. Ranging algorithms are used to estimate this offset. Time distribution protocol, unlike frequency distribution protocol, is typically bi-directional, requiring both client and master to send and receive packets.
- Ranging algorithms: Ranging is the estimation of propagation delay within a network. This is done in a manner similar to PTP, where a packet is sent from the master with a timestamp, followed by a second packet with a timestamp. These timestamps on the packets indicate the time that the master injected the packet into the network. The client then has sufficient timestamp information to calculate the propagation delay.
- Clock adjustment techniques
- Timestamp generator
Time Presentation Module
The time presentation module formats information from the time acquisition module into a format that is relevant to the application requiring synchronization.
Generic Modules
TICTOC supports various generic modules that may be applied to frequency distribution, time distribution, or both. These modules include enhanced security (certificate-based), auto-discovery of masters, master clock selection algorithms, OAM, performance monitoring, and network management.
Combining Protocols
SyncE, PTP, NTP, and TICTOC need not be mutually exclusive within a network. A combination of these protocols, along with external means of synchronization, may be leveraged. For instance, because SyncE provides a highly accurate frequency source and TICTOC provides a highly accurate time source, a network may use the SyncE’s physical layer frequency synchronization as the source for TICTOC’s IP layer time synchronization input.