PTP 使用一種算法和方法在基于數(shù)據(jù)包的網(wǎng)絡(luò)上同步各種設(shè)備上的時(shí)鐘,以提供亞微秒精度。 NVIDIA Spectrum 支持一步和兩步模式的 PTP ,可以用作邊界或透明時(shí)鐘。
以下是交換機(jī)作為透明時(shí)鐘時(shí),如何在一步模式下計(jì)算和同步時(shí)間。在這篇文章的后面,我回顧了 PTP 的整體準(zhǔn)確性。
一步模式下計(jì)算和同步時(shí)間
在一步模式下,當(dāng)用作透明時(shí)鐘時(shí),交換機(jī)必須實(shí)時(shí)計(jì)算 PTP 數(shù)據(jù)包的駐留時(shí)間。它通過(guò)比較數(shù)據(jù)包到達(dá)的時(shí)間( t1 )和數(shù)據(jù)包離開(kāi)的時(shí)間( t2 )來(lái)實(shí)現(xiàn)這一點(diǎn)。然后,交換機(jī)相應(yīng)地更改數(shù)據(jù)包的校正字段。
要執(zhí)行此計(jì)算,交換機(jī)使用多個(gè)硬件功能:
ASIC 上的同步時(shí)鐘
數(shù)據(jù)包進(jìn)入交換機(jī)時(shí)的準(zhǔn)確時(shí)間戳
數(shù)據(jù)包離開(kāi)交換機(jī)的時(shí)間計(jì)算
ASIC 上的同步時(shí)鐘
由于入口處的 t1 和出口處的 t2 位于兩個(gè)不同的交換機(jī)端口上, ASIC 不同部分之間的時(shí)間同步必須具有高分辨率,以保持準(zhǔn)確的比較。
在有時(shí)工作于不同頻率的不同硬件單元之間同步時(shí)間戳是一項(xiàng)挑戰(zhàn)。頻譜系列 ASIC 可以保持小于 4 納秒的同步誤差。
數(shù)據(jù)包進(jìn)入交換機(jī)時(shí)的準(zhǔn)確時(shí)間戳
為了實(shí)現(xiàn)準(zhǔn)確的一步 PTP ,交換機(jī)必須記錄其接收數(shù)據(jù)包的準(zhǔn)確時(shí)間。
當(dāng)交換機(jī)從線(xiàn)路接收比特時(shí),它必須將它們組合起來(lái),然后將數(shù)據(jù)包解析并識(shí)別為 PTP 。這個(gè)過(guò)程需要時(shí)間,必須加以考慮,以便數(shù)據(jù)包上的時(shí)間戳和位進(jìn)入交換機(jī)的實(shí)際時(shí)間之間沒(méi)有差異。
為了解決這個(gè)問(wèn)題,交換機(jī)包括一個(gè)指定的硬件計(jì)數(shù)器,用于計(jì)算線(xiàn)路和數(shù)據(jù)包程序集之間的位數(shù)。該計(jì)數(shù)器可以根據(jù)協(xié)議轉(zhuǎn)換為延遲,然后從 t1 時(shí)間戳中減去,以確定數(shù)據(jù)包的準(zhǔn)確到達(dá)時(shí)間。
數(shù)據(jù)包離開(kāi)交換機(jī)的時(shí)間計(jì)算
計(jì)算數(shù)據(jù)包提前離開(kāi)交換機(jī)的時(shí)間也是一個(gè)挑戰(zhàn)。這是因?yàn)檠舆t通常會(huì)受到隊(duì)列和交換機(jī)計(jì)算時(shí)間戳?xí)r無(wú)法訪(fǎng)問(wèn)的其他參數(shù)的影響。
為了解決這個(gè)挑戰(zhàn),交換機(jī)為數(shù)據(jù)包安排一個(gè)未來(lái)的出口時(shí)間,然后根據(jù)這個(gè)時(shí)間給數(shù)據(jù)包加時(shí)間戳。然后, PTP 數(shù)據(jù)包必須等待確切的出口時(shí)間。
圖 1.交換機(jī)中的 PTP 包修改
PTP 量表
其他供應(yīng)商使用該軟件來(lái)匹配 PTP 數(shù)據(jù)包及其時(shí)間戳。 NVIDIA Spectrum-2 和更高版本的 ASIC 采用了不同的方法。它們完全通過(guò)硬件處理 PTP 流;軟件不需要任何東西。這種實(shí)現(xiàn)有很多優(yōu)點(diǎn)。
頻譜方法可以更好地?cái)U(kuò)展 PTP 流,并且交換機(jī)有限的計(jì)算資源沒(méi)有負(fù)擔(dān)。當(dāng)用作邊界時(shí)鐘時(shí),規(guī)模僅受 CPU 主機(jī)功能的限制。對(duì)于一個(gè)不涉及軟件的透明時(shí)鐘,在技術(shù)上沒(méi)有規(guī)模限制。
軟件處理是串行的,比硬件慢。因此,如果需要軟件干預(yù), PTP 數(shù)據(jù)包在交換機(jī)上的駐留時(shí)間會(huì)更長(zhǎng)。該過(guò)程增加了網(wǎng)絡(luò)中主要實(shí)體和跟隨實(shí)體之間的延遲,并可能間接破壞同步過(guò)程,該過(guò)程假定網(wǎng)絡(luò)中點(diǎn)到點(diǎn)的遍歷時(shí)間恒定。
PTP 精度
NVIDIA Spectrum 交換機(jī)的總 PTP 精度約為 10 納秒。對(duì)于所有速度和 FEC 配置,均保持此精度。
下圖顯示了 Spectrum-3 交換機(jī)上的 PTP 精度。
圖 2.用于測(cè)量 PTP 精度的設(shè)置
圖 3.與主設(shè)備的偏移量(納秒)
這些結(jié)果來(lái)自于一個(gè)小時(shí)的測(cè)試,測(cè)試速度為 50 Gbps ,其中 IXIA 作為連接到 NVIDIA Spectrum-3 交換機(jī)的先導(dǎo)時(shí)鐘。交換機(jī)用作邊界時(shí)鐘。另一個(gè) IXIA 端口充當(dāng)跟隨器,測(cè)量每個(gè)數(shù)據(jù)包與主端口相比的時(shí)間偏移。
關(guān)于作者
Yam Gellis 是 NVIDIA 網(wǎng)絡(luò)小組的芯片架構(gòu)師,負(fù)責(zé)以太網(wǎng)和 InfiniBand 交換機(jī)。任志剛目前在特拉維夫大學(xué)攻讀電氣和電子工程學(xué)士學(xué)位,已進(jìn)入最后一年。
審核編輯:郭婷
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5460瀏覽量
172405 -
asic
+關(guān)注
關(guān)注
34文章
1206瀏覽量
120663 -
交換機(jī)
+關(guān)注
關(guān)注
21文章
2656瀏覽量
99995
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論