Abstract— Among the standard time reporting systems, the Network Time Protocol (NTP) provides an easy and accurate way for the accessing the Universal time. The NTP is taking the benefit of the pervasiveness of the computer network during the recent information-oriented modern world. The NTP Pool Project is the project to provide a distributed framework of the NTP servers. As the ever-increasing amounts of the requests of the standard time, the number of the NTP servers provided by the NTP Pool Project will be extended correspondingly. This paper will provide the detailed introduction on the framework of the NTP Pool Project, the development of the NTP Pool Project in Taiwan at the present time, and the followed by the suggestions of the implementation of the NTPpool project.
In order to support the world business running smoothly, the time schedule is becoming the most important components for doing the job right. The stock market, the train schedule, the airplane schedule, and even for the variety of the examinations are needed to be based on the accurate time to function properly. Furthermore, the accurate time recording will be critical on the surveillance system to report the exact time for an event. The withdrawing money for the ATM machine will require the accurate time marked on the transaction report. It is to name just a few. This leads to development of a new way to access the standard time in the reliable fashion.
People used the eyes to read the time from the accurate source and use it to adjust the clock and watch in the old days. Later, the telephone standard time reporting system, the standard time and frequency broadcast, and the signal of the global positioning system (GPS) provide the time reporting information. In the modern days that characterized by the ever-growing network and the easy accessible of the computer, the utilization of the network for the supporting the standard time reporting become a new way for the people to access the accurate standard time. This leads to the development of the NTP. In order to provide the service of the accessing the accurate standard time, the NTP servers will be needed. However, the limited amount of the bandwidth from the scanty of NTP servers will be a bottleneck for the service of the NTP. The establishment of a nonprofit organization to supply the resources for the NTP service is created. This leads to the NTP Pool Project. The following paper will divided up into several sections. The introduction of the NTP and NTP daemon (NTPD) will present first. Then it followed by the presentation of the two experiments conducted in this paper. The first experiment is designed to search all the NTP servers available currently in Taiwan. The second experiment is to analyze the operational processes of NTPD. Finally, experiment results and the suggestions on the utilization of the NTP will be presented.
A.(NTP)Network Time Protocol
The NTP (RFC 1305) is proposed by David L. Mill from University of Delware in 1980 . The original NTP topology is shown in Figure 1. The NTP servers are divided by several layers that begin with Stratum 0 on the top, followed by Stratum 1, Stratum 2, …, and ended with the end user. The NTP server with less Stratum number will provide accessing time closer to the standard time. In general, the time provided by Stratum 0 is utilized by the atomic clock as the standard time generator that is operated by the national research center [6-8]. The standard time created by Stratum 0 will pass it to the Stratum 1, then to the Stratum 2, …, in series then end up with the end user. The end user is limited to access the NTP servers on the Stratum 2 or Stratum 3 level only to avoid the overloading on the servers on the Stratum 1 or the Stratum 0. During the time relay process from the Stratum 0 to the end user, it introduces the time latency to the accessing time. The difference between the accessing time and the standard time will highly depend on the network traffic. In basis, the operational principle of the NTP is to adjust the time difference by measuring the time lateness between the NTP server and the end user from the information provided by the NTP network packets. The user’s accessing time, in general, will be within a reasonable range around the level of several ten milliseconds under the operation of this principle. Figure 2 provides the time latency between the testing PC as the end user and the NTP server after reaching the stable state. The PC runs NTPD and utilizes Unix command crontab to log the data which generated by “ntpq –p” every one minute. “ntpq –p” is a command that will show the status of connected NTP server.
Figure 1. Original NTP Topology.
Figure 2. Time Delay Between Test PC And NTP Server After Stable
B.NTP Pool Project
The NTP Pool Project, a self-voluntary organization, is founded by Adrian von Bidder. The main goal of the NTP Pool Project is to provide the free service of the time synchronization. The sources of the NTP servers mostly are from the person or from the organization that contribute the valuable bandwidth for the free accessing of the NTP service. The union of the assistances from the different sources equips the NTP Pool Project to become a successful project. The operational process of the NTP Pool Project is started with setting on a Domain Name Server (DNS) server on the address of ntp.org. Then, several sub-domains are created under this address according to the geographic location. For example, asia.ntp.org, eroupe.ntp.org. Then, the address is added with the country dependence URL, that is tw.pool.ntp.org, jp.pool.ntp.org, …, etc. Every country is assigned three numbers 0, 1, and 2 to associate with their own NTP servers. For example, the star in the address of *.tw.pool.ntp.org devotes as 0, 1, or 2. These DNS servers store the list of the local NTP servers. When an end user issues a request on NTP service, the DNS server will provided the IP of the local NTP server to respond the request of the end user. The DNS server is utilized the method of the round robin to evenly distribute the request loading among the local NTP servers . According to the report from the web site of the NTP Pool Project, the total amount of the NTP service is around 40 ~ 120 thousand requests pre second . Figure 3 shows the topology of the NTP Pool Project.
The following experiment is designed to search all the IP of the NTP servers provided by the pool project in Taiwan. The environment of the experiment setting is shown on Table 1. After installation of ubuntu Linux operation system and NTP daemon (NTPD) on the testing system, it is needed to modify the default NTP setting “ntp.ubuntu.com” in /etc/ntp.conf to be one of the NTP servers that is assigned to Taiwan by the NPT Pool Project. The available NTP servers are listing following:
The IP associated with the NTP server of the NTP Pool Project is randomly assigned by the DNS server. In order to find all the IP of the NTP server, the information stored inside the DNS cache is needed to be wiped off after each time the request is made by means of running the Name Service Cache Daemon (nscd). After the running nscd, we restart NTPD again. The results of this experiment are shown on Table II. This is included all the NTP servers currently running inside Taiwan.
From the Table 2, we can find that the NTP servers of the NTP Pool Project in Taiwan are all on the Stratum 2 and Stratum 3. The servers of the number 1 to 5 on the top of the list are maintained by the Taiwan National Time & Frequency Standard Laboratory that request the time from the NTP server of the U.S. Naval Observatory. During the experiment period, we observed that other NTP servers utilized Taiwan NTP pool servers as the reference servers. The server to be used in the pool is advised not to use the method provided by the NTP Pool Project (designated 0.tw.pool.org) to be the time extraction source to avoid the problem on the time drifting. The star mark (*) on the Table 2 indicates that the NTP servers are participated in the NTP Pool Project. In the Table 2, we have eight servers form Hinet, four from TANET, two from Seednet, one from GSN, one from Sonet and one from Hoshin Multimedia. The user access the service within the ISP domain normally will have less lateness for the time synchronization. Described by the NTPD operation process (explained on the next section), the NTPD conducts the process of the time synchronization every 60 seconds in order to maintain the time accuracy. Each time the time synchronization take places, every NTP server will update their own “/etc/ntp.conf” file once. This will result in that the user in the Hinet may access the NTP server provided by the Seednet or TANET according to the distribution framework by the pool. This synchronization process may put the extra loading on the network traffic.
B.NTPD Operation Procedure
The second experiment is conducted for the examination of the operational process of the NTPD. In order to record the function of the NTP packets, we install a free netwok monitoring software – Wireshark (previous version is Ethereal). In the purpose of filtering out all the packets but the NTP packets, we add “udp port 123” in the capture filter to retain only the NTP packets. After the study the packets captured by the Wireshark, we can outline the operational procedures of the NTPD as described by Figure 4. A brief explaination of time synchronization by the NTPD is following. After the NTPD is started, the program will read in the information from the text file “/etc/ntpd.conf” where stores the setting parameters of the NTPD. Then, NTPD will issue a request for the IP of the NTP server. Once connected with the NTP server, the NTPD will extract time from the NTP server for the synchronization process. The NTPD will try to choose a NTP server to be its main server for the later accessing and set up a reference pool for the others. The time synchronization process will take place for every 60 seconds..
Figure 4. The operational process of the NTPD
Figure 5. The nowadays topology of NTP pool project
Some suggestions had been proposed here for the effectively utilized NTP server. First, after installation of the NTP software, we need to check the NTP setting to avoid the selection of the NTP server too far away. The NTP Pool Project is a well-designed network system that based on the distributed framework to avoid the network traffic. However, the DNS server as the backbone infrastructure may cost the network traffic for the packets traveling among the inter-domain. In Fig. 5, A, B, and C represents different network, and users may synchronize to the server that is not located in the same network, that causes unnecessary traffic. Next, it could be a better way to setup a designated NTP web site for each local domain (ex: www.ntp.org.tw for Taiwan) . Finally, for the most NTP user, the requirement of the highly accuracy on the time extraction is not the main concern. It can take less amount of effort to process the time synchronization by using a simpler algorithm.
David L. Mills, “Internet Time Synchronization: The Network Time Protocol,” IEEE Transactions on Communications, Vol. 39, No. 10, Oct 1991.
NTP Pool Project, http://www.pool.ntp.org
Valeria Cardellini, Michele Colajanni, and Philip S. Yu, “Request Redirection Algorithms for Distributed Web Systems,” IEEE Trans. On Parallel and distributed systems, Vol. 14, No. 4, Apr. 2003.
Matsakis D.,”Time and Frequency Activities at the U.S. Naval Observatory,” Frequency Control Symposium and Exposition, 2005. Proceedings of the 2005 IEEE International, pp. 271-224.
Matsakis D.,”Time and Frequency Activities at the U.S. Naval Observatory,” Frequency Control Symposium, 2007 Joint with the 21st European Frequency and Time Forum. IEEE International, pp. 88.-888.
R. B. Warrington, P. T. H. Fisk, M. J. Wouters, M. A. Lawn, J. S. Thorn, S. Quigg, A. Gajaweera and S. J. Park, “Time and Frequency Activities at the National Measurement Institute, Australia,” Frequency Control Symposium and Exposition, 2005. Proceedings of the 2005 IEEE International, pp. 231-234, 2005.