NVIDIA 自收購 Mellanox 後,也成為全球重要的關鍵網路技術供應商,而 Facebook 在其開源的開放運算計畫 ( OCP TAP )當中,導入 NVIDIA 的 NVIDIA ConnectX-6 Dx 網路介面卡,使多數商用現成伺服器化身精確的計時設備,搭配精確時間協定後,使各資料中心能夠具備精確的計時與時間同步。
對 TAP 計畫有興趣的使用者可見官方網站看詳盡的說明: OCP TAP
▲分散式伺服器需透過精確的時間同步避免事件順序的誤判
對於現在的全球化趨勢,作為網路服務業者不可能再如同過去採用集中單一區域的伺服器服務全球業務,皆會在全球各區架設或是租用資料中心提供不同國家與地區用戶迅速且低延遲的使用者體驗,而各資料中心之間也需要進行時間同步,然而對於分散式資料庫結構,需要追蹤事件的正確順序以判讀因果關係,此時在這些遍佈全球各地的資料中心提供精確的計時與時間同步就格外的重要。
而保持資料同步的方式之一是使每個資料中心進行交換後,將更新傳給其它資料中心,但這種傳統作法由於資料中心的傳輸存在延遲,難以符合當前每小時持續發生的數百萬次事件;更進一步的做法則是使每個伺服器與資料中心進行時間同步,且將誤差降低至一微秒以下,使每個資料中心的共享事件時,皆有正確的事件順序。
▲ Facebook 的計時卡透過接收與處理 GPS 時間訊號方式提供穩定的對時
如此一來,時間同步越精確,也能使事件判讀更為正確;而近日的一項測試顯示,若能使計時的準確度的誤差降低 80 倍,分散式資料庫的執行速度在相同的硬體之下能夠提升 3 倍;而 Facebook 的 OCP TAP 專案即準確定義計時卡以及如何接收與處理 GPS 衛星時間訊號的方式,縱使是在失去衛星訊號下仍能維持時間的精確性。
而 OCP TAP 並不光只仰賴計時卡與 GPS 時間訊號,也需搭配網路與使用的網路介面卡;在時間設備的網路介面卡須具備 PPS 每秒脈波數連接埠,藉此提供計時卡與網路卡的精確時間同步,才能用於連接計時卡; ConnectX-6 Dx 是當前首波支援 PPS 連接埠的 25/50/100/200 GB 的新一代網路卡,同時具備篩選與檢察 PPS 訊號、與透過 ASIC 的硬體處理保持時間的準確性與一致性。
在藉由 NTP 網路時間協定,使數百台常規伺服器能共享時間,或是透過 PTP 精確時間擴展到千台伺服器共享時間;同時藉由 NTP 與 PTP 的時間標記封包測量雙向的傳輸時間、干擾與延遲等因素,進一步解決網路時間訊號延遲產生的同步問題,同時 PTP 也由於具備更精確的時間逐漸取代 NTP 。
▲ PTP 是目前主流的網路時間協定
另一種時間同步的作法則是透過軟體方式進行時間標記,但若以現今的速度採用軟體標記則會使結果難以預測且不準確,也會由於壅塞或 CPU 干擾產生數毫秒的誤差,故使用硬體方式進行時間標記是更為可靠的做法。而 ConnectX-6 Dx 網路介面卡與 BlueField-2 DPU 在傳入與傳出的封包到達前,就會以速度達每秒 100GB 的效能透過硬體時間標記,縱使在高負載情況, Connect-6 Dx 仍能將時間標記差異控制在 4 奈秒內,且對比其它具時間標記的網路介面卡能夠更完整的為每個封包加入標記,有更準確的時間校準。
OCP TAP 秉持開源的模式,不論規模大小,任何組織皆可使用來自 Facebook 與 NVIDIA 技術的 OCP 開放計時伺服器與開放管理工具; NVIDIA 在此計畫中提供精確計時功能的網路介面卡與 DPU ,可提供精確計時設備所需的精確時間標記與網路同步,若搭配 BlueField DPU ,還可在 Arm 核心執行 PTP 堆疊,使時間堆疊與其它伺服器軟體隔離,並不斷驗證伺服器的時間準確性與持續計算資料中心綁定的最大時間誤差。