The NTP software distributions include several utility programs that provide remote monitoring, control, and configuration functions. Ordinarily, these programs are used to detect and repair broken servers, find and fix bugs in the software, and monitor timekeeping performance. Two monitoring protocols and programs have been developed: ntpq to monitor the operation and overall performance of selected servers and clients and ntpdc to search for specific causes of failures, improper operation, and misconfiguration. The ntpq program uses the control and monitoring protocol defined in the NTPv3 specification, while the ntpdc program uses a proprietary protocol.
An observer may ask why the Internet standard Simple Network Monitoring Protocol (SNMP) is not used for NTP. The simple answer is that the NTP monitoring protocols preceded SNMP by several years, and the NTP volunteer maintenance corps has resisted making more work than seems necessary. The long answer has two parts. First, the NTP subnet and monitoring protocols have been a valuable Internet monitoring tool since the NTP daemons run continuously, chat with each other, and can record statistics in some detail in local files or send them over the net to remote monitoring programs. On several occasions, these programs and the monitoring data they produce have facilitated the identification and repair of network problems unrelated to NTP. Second, the NTP monitoring tools are designed for the continuous observation of dynamic behavior and intricate statistical variations, not just snapshots of event counters and traps as in SNMP. The real answer is the loss of fidelity with SNMP, which is most useful for machine interpretation, while ntpq is most useful for human interpretation. A project is under way to design a suitable MIB and use it in a remote agent that communicates with NTP using the ntpq protocol.
NTP has other debugging tools as well, including ntptrace to walk the NTP forest from the client to the primary server and display the successive secondary servers. Along the trip, it displays statistics such as time offset, root distance, and reference identifier. Other programs can be used to generate cryptographic keys for both the symmetric key and public key authentication functions.