NTP

NTP

NTP是網路時間協定(Network Time Protocol),它是用來同步網路中各個計算機的時間的協定。 在計算機的世界裡,時間非常地重要,例如對於火箭發射這種科研活動,對時間的統一性和準確性要求就非常地高,是按照A這台計算機的時間,還是按照B這台計算機的時間?NTP就是用來解決這個問題的,NTP(Network Time Protocol,網路時間協定)是用來使網路中的各個計算機時間同步的一種協定。它的用途是把計算機的時鐘同步到世界協調時UTC,其精度在區域網路內可達0.1ms,在網際網路上絕大多數的地方其精度可以達到1-50ms。 它可以使計算機對其伺服器或時鐘源(如石英鐘,GPS等等)進行時間同步,它可以提供高精準度的時間校正,而且可以使用加密確認的方式來防止病毒的協定攻擊。

原理

NTP要提供準確的時間,就必須有準確的時間來源,那可以用格林尼治時間嗎?答案是否定的。因為格林尼治時間是以地球自轉為基礎的時間計量系統,但是地球每天的自轉是有些不規則的,而且正在緩慢加速,因此,格林尼治時間已經不再被作為標準時間使用。

新的標準時間,是由原子鐘報時的國際標準時間UTC(Universal Time Coordinated,世界協調時)。所以NTP獲得UTC的時間來源可以是原子鐘、天文台、衛星,也可以從Internet上獲取。

有了準確而可靠的的時間源,那這個時間如何傳播呢?在NTP中,定義了時間按照伺服器的等級傳播,按照離外部UTC源遠近將所有的伺服器歸入不同的Stratum(層)中,例如把通過GPS(Global Positioning System,全球定位系統)取得傳送標準時間的伺服器叫Stratum-1的NTP伺服器,而Stratum-2則從Stratum-1獲取時間,Stratum-3從Stratum-2獲取時間,以此類推,但Stratum層的總數限制在15以內。所有這些伺服器在邏輯上形成階梯式的架構相互連線,而Stratum-1的時間伺服器是整個系統的基礎,這種階梯式的架構示意圖如圖1所示。

圖1 NTP階梯式的架構示意圖 圖1 NTP階梯式的架構示意圖

計算機主機一般同多個時鐘伺服器連線,利用統計學的算法過濾來自不同伺服器的時間,以選擇最佳的路徑和來源以便校正主機時間。即使在主機長時間無法與某一時鐘伺服器聯繫的情況下,NTP服務依然可以有效運轉。

為了防止對時鐘伺服器的惡意破壞,NTP使用了識別機制,檢查傳送來的信息是否是真正來自所宣稱的時鐘伺服器並檢查信息的返迴路徑,以提供對抗干擾的保護機制。

NTP時間同步報文中包含的時間是格林威治時間,是從1900年開始計算的秒數。

發展

NTP首次記載是在Internet Engineering Note之中,其精確度為百毫秒。稍後出現了首個時間協定的規範,即RFC-778,它被命名為DCNET網際網路時間服務,而它提供這種服務還是藉助於ICMP(Internet Control Message Protocol,Internet控制報文協定),即網際網路控制訊息協定中的時間戳訊息和時間戳應答訊息作為NTP。

NTP名稱的首次出現是在RFC-958之中,該版本也被稱為NTP Version0,其目的是為ARPA(Advanced Research Projects Agency,美國國防部高級研究計畫署)的網路提供時間同步。它已完全脫離ICMP,是作為獨立的協定以便完成更高要求的時間同步功能。它對於本地時鐘的誤差估算和精密度等基本運算、參考時鐘的特性、網路上的分組數據包及其訊息格式者進行了描述。但是不對任何頻率誤差進行補償,也沒有規定濾波和同步的算法。

美國德拉瓦大學(University of Delaware)的David L .Mills主持了由DARPA(Defense Advanced Research Projects Agency,美國國防部高級研究計畫局)、NSF(National Science Foundation,美國國家科學基金)和NSWC(Naval Surface Warfare Center,美國海軍水面武器中心)資助的網路時間同步項目,成功的開發出了NTP協定的Version1、Version2和Version3 三個版本。

NTP Version1出現於1988年6月,在RFC-1059中描述了首個完整的NTP規範和相關算法。這個版本已經採用了客戶端/伺服器端(Client/Server)模式以及對稱操作,但是它不支持授權鑑別和NTP的控制訊息。

1989年9月推出了取代RFC-958和RFC-1059的NTP Version2版本即RFC-1119。

幾乎同時,DEC公司也推出了一個時間同步協定DTSS(Digital Time Synchronization Service,數字時間同步服務)。在1992年3月,NTP Version3版本RFC-1305問世,該版本總結和綜合了NTP之前的所有版本和DTSS,正式引入了校正原則,並改進了時鐘選擇和時鐘濾波的算法,而且還引入了時間訊息傳送的廣播模式,這個版本取代了NTP的先前版本。

NTP Version3發布後,一直在不斷地進行改進,NTP實現的一個重要功能是對計算機作業系統的時鐘調整。在NTP Version3研究和推出的同時,有關在作業系統核心中改進時間保持功能的研究也在並行地進行。

1994年推出了RFC-1589,名為A KernelModel for Precision Time keening,即精密時01保持的核心模式,這個實現可以把計算機作業系統的時間精確度保持在微秒數量級。

截止到2010年6月,最新的NTP版本是第4版(NTP Version 4),其標準化文檔為RFC 5905,它繼承自RFC 1305所描述的NTP Version3。網路時間同步技術也將向更高精度、更強的兼容性和多平台的適應性方向發展。

其他含義

1、NTP是RNA的合成原料,即核苷三磷酸。

2、2002--2005 ntp 是大連東軟信息技術學院著名的CS戰隊名。

3、NTP是冷等離子技術簡稱。

4、NTP是標準溫度和壓力(normal temperature and pressure )的簡寫。

相關詞條

相關搜尋

熱門詞條

聯絡我們