ms a similar loop in software for the case of PTP and phase-the PLL (a hardware component) recovering frequency is emulated by the servo software algorithm to recover phase. To achieve this, the servo algorithm is assisted by another special hardware element known as a soft- ware-controlled PLL. This PLL is also known as a numerically-controlled oscillator (NCO) be- cause the output signal from this PLL can be adjusted numerically (via software). This is just like adjusting a clock with numbers, such as increasing the frequency by some specific number (in parts per million) or adjusting the phase by a certain degree. Figure 12-6 illustrates this loop in a simplified manner. The main functionality of the servo al- gorithm is to detect the difference between the phase information (received from the master) and the phase of its own clock. Depending on the difference, it adjusts the NCO to narrow the alignment of its clock to the master clock. The phase information received from the master is in the form of timestamps and the phase difference is calculated by the slave clock with the formula that calculates the offset from master. Local oscillator Timestamps from master (t1 and 4 Adjust "Offset from master phase/frequency Calculated (from ty, t2 Servo PTP PLL (NCO) t3. t4 timestamps) Local timestamps (t2 and t3) Figure 12-6 PTP Servo Loop Note that Figure 12-6 is only for illustration purposes, and a lot more goes into the servo algorithm than shown here. In fact, improving the implementations of servo algorithms is an area of active re- search. For example, Figure 12-6 does not mention the filtering capabilities (like the loop filter in a VCO-based PLL) and other basic efficiency features. However, a few of the factors that can impact the servo algorithm accuracy (and hence the eventual node accuracy) are as follows: Imperfect compensation of the propagation delay (for example, due to propagation path asym- metries inside the network element) Timestamping jitter at both the transmitter and receiver ends, such as res