時間同步(Time Synchronization)在任何網路中都扮演著基礎性的角色,但它往往是事後才添加的。然而,時間同步可在幾分鐘內正確排除衝突故障,也可讓使用者對伺服器著火的原因一無所知。對於金融和科學研究機構來說,時間同步必須精確到十億分之一秒,在某些特定情況下甚至是萬億分之一秒,但即使是商業和工業組織,也開始要求同步精度達到亞毫秒級(Sub-Millisecond)。
為什麼我們不能把電腦更新至NIST(National Institute of Standards and Technology - 美國國家標準暨技術研究院)的公共NTP(Network Time Protocol - 網路時間協定)伺服器上,然後就搞定呢?NIST運行著世界上最精確的時鐘之一。不幸的是,延遲無處不在,它使得完美同步成為不可能。光速很快 - 在真空中,一個光子每秒可繞地球七圈以上 - 儘管它在典型的光纖網路中的傳送速率要慢31%,但你可在不到十分之一秒的時間內,輕鬆的將一個資料位元(bit)傳輸至半個地球。
然而,我們都知道,理想世界是不存在的。再加上交換機(Switch)、路由器(Router)和其他網路基礎設施,十分之一秒的誤差就會翻幾倍。如果沒有專用設備,你的網路與美國的NIST或英國的NPL(英國國家物理實驗室 - National Physical Laboratory)相比,就會突然出現一秒的差距。
更令人擔憂的是,同一網路內不同用戶端的同步問題。試想一家金融機構正好有100股XX公司的股票。有關XX公司的重大新聞爆出後,該金融機構在一秒鐘內出售了這100股股票,而且不是只賣給一個投資者,而是賣給了多個投資者,但由於該機構的伺服器之間沒有同步,因此無法分辨是哪一個訂單先下。
什麼是網路時間協定?
NTP或網路時間協定(Network Time Protocol)已被廣泛採用為網路計時的方式,目前已是第四個主要版本。分層系統(Hierarchical System)有不同的層(Layer),稱為Strata(階層,英文複數為Stratum)。位於最頂層的第0層(Stratum 0)設備包括原子鐘(Atomic Clock),如:全球導航衛星系統(Global Navigation Satellite System - GNSS)衛星中的原子鐘。
第1層(Stratum 1),即主時間伺服器(Primary Time Server),與第0層時鐘一對一直接連接,與第0層時鐘進行微秒級(Microsecond)同步,並與其他第1層伺服器連接,進行快速正確性測試和資料備份。Stratum 2伺服器可連接至多個主時間伺服器,以進行更緊密的同步及更高的精確度,以此類推、不一而足。NTP最多支援15個階層,但每個層級都會略微降低用戶端與第0層的同步性。
目前實施的64-bit時間戳記(Timestamp)被分成兩個相等的32-bit:
前半部分計算秒數,最長超過136年
後半部分表示零點幾秒,直至皮秒級(Picosecond Scale)
將128-bit時間戳記更新為NTPv4的提議,將把時間尺度提高至略低於6000億年,時間解析度提高至小於飛秒(Femtosecond)。
什麼是精確時間協議?
PTP(Precision Time Protocol - 精確時間協定)是另一種基於網路(Network-Based)的時間同步標準,但PTP網路的目標不是毫秒級同步,而是進行納秒級(Nanosecond)、甚至皮秒級同步。對於大多數商業和工業應用來說,NTP已經足夠精確,但如果你需要更嚴格的同步及時間戳記,則需要使用PTP伺服器。
為什麼PTP時間戳記如此精確?它使用的是硬體時間戳記而不是軟體,就像其他精密科學儀器一樣,PTP設備專用於一個特殊目的:保持設備同步。僅憑這一點,PTP網路的時間解析度就高得多,而與NTP不同的是,PTP設備會對同步資訊在每個設備中的停留時間進行實際時間戳記,進而考慮到設備的延遲(Device Latency)。
每個PTP序列(Sequence)涉及主站(Master)和從站(Slave)之間的一系列四條訊息:
從主站到從站的初始同步訊息(Initial Sync)
從主站到從站的後續同步訊息(Followup Sync)
從站發送給主站的延遲請求訊息(Delay Request)
主站發送給從站的最終延遲回應訊息(Final Delay Response)
此序列會產生四個不同的時間戳記:
T1 當主站發送初始同步資訊時
T2 當從站收到初始同步資訊時
T3 當從站發送延遲請求時
T4 當主站收到延遲請求時
主站在延遲回應階段(Delay Response Phase)向從站發送所有四個時間戳記,從站能計算出主站與從站之間的雙向網路延遲。透過專用硬體從本地(Local)時鐘獲取時間戳記,從站可避免本地作業系統所帶來的額外延遲。
NTP網路具有額外的延遲和較低的準確性,原因很簡單,因為它們是基於軟體,所有時間戳記請求都必須等待本地作業系統。對於大多數公司來說,NTP提供了足夠清晰的時間解析度,可及時解決衝突,但包括上述物理實驗室在內的一些機構,需要更高精準的同步,就必須採用Masterclock的:GMR1000及GMR5000 PTP Grandmaster Time Server,兩者皆完全遵循IEEE 1588標準:
支援多種輸出,包括:PTP、NTP、PPS、PPO、10MHz、SMPTE、IRIG-B、IRIG-A、IRIG-E、NMEA 0183、NENA
提供精確到15納秒以內的UTC(Coordinated Universal Time - 世界協調時間)精確度
提供帶AES256加密的SSH規劃
與IPv4/IPv6網路相容
可作為NTP用戶端 和/或 伺服器
為什麼要使用時間伺服器?
時間戳記(Timestamp)及用戶端同步(Client Synchronization)對網路來說非常重要,但一些網路工程師仍然認為,只需將伺服器與公共網際網路時鐘同步就可以了。雖然網際網路時鐘對於智慧手機等消費類設備來說完全沒有問題,但對於企業網路來說卻很不合適,原因很簡單:安全性(Security)。
要將伺服器連接至網際網路時鐘,首先需要打開防火牆上的123埠。其結果會發生什麼可怕的事情嗎?你不知道!就像你不知道小偷會不會因為你沒鎖門,而闖入你家一樣。為什麼要冒險呢?專用NTP伺服器可確保網路安全,同時提供更準確的時間戳記。
如果我的時間伺服器斷開連接,會發生什麼事?
沒有一個網路是完美的,你所能做的只是儘量減少停機時間(Downtime),而不是消除停機時間。如果你的NTP或PTP時間伺服器因任何原因無法連接到GPS衛星或其他輸入,你可以放心,它將繼續同步你的設備,並保持準確的時間戳記。
例如,GMR1000 NTP伺服器具有維持每年3秒的穩定性,這意味著你的伺服器在黑暗中運行一整年後,仍能與UTC保持3秒的同步。配備烤箱控制晶體振盪器(Oven-Controlled Crystal Oscillator)高穩定性型號的維持穩定性就更高了,達到每年250毫秒,即每天不到1毫秒。可選購的HSO-3振盪器(Oscillator),適用於GRM5000 NTP Server及PTP Grandmaster,可更進一步將漂移偏差(Drift)減少到每年最多1毫秒。
堅達公司 為美國 Masterclock 台灣獨家代理,歡迎致電(02)7720-9899洽詢。我們將有專人竭誠解答你的疑問。
getop.tv/13n17b
Comments