From <IEEE 802.1AS-2011> Clause 7
Architecture of a time-aware bridged local area network
time-aware bridged LAN 由幾個支持gptp的時間感知系統(tǒng)(time-aware system)組成鞋邑,它們之間用LAN互相連接。
time-aware system 分為2種:
- time-aware end station
- time-aware bridge
一個gptp domain內(nèi)通過BMCA算法選出grandmaster插爹。
這里的BMCA算法相較于1588里的要簡單媚媒。
Time synchronization
General
gptp的time synchronization與1588中的差距不大养泡。
要使得同步的結(jié)果精確,有兩個時間需要精確測量:residence time和pathDelay。
residence time可以在bridge內(nèi)部直接測量出來蚯舱。
而pathDelay則涉及到較多的因素英支,如傳輸媒體佩憾、傳輸長度等。
Delay measurement
計算pathDelay的方式其實和1588中也沒太大區(qū)別,如下圖
只是在gptp中妄帘,根據(jù)底層傳輸協(xié)議不同楞黄,使用的message也不同。
- 對于Ethernet抡驼,message為Pdelay_Req, Pdelay_Resp等
- 對于802.11 WLAN鬼廓,message為timing measurement action frame。
- 對于EPON LAN致盟,message為GATE and REGISTER_REQ
- ...
Logical syntonization
在同步過程中碎税,讓clock的frequency與grandmaster的保持一致(syntonized),可能并不是一個好的選擇馏锡。因為調(diào)整oscillator的頻率較慢且容易產(chǎn)生峰值效應(yīng)(peaking effects)雷蹂。使用grandmaster frequency ratio可能更好。
我們使用累加的neighbor frequency ratio來計算出grandmaster frequency ratio to local clock杯道。這有2個好處匪煌,一是沒有峰值效應(yīng),因為上游的計算誤差不會直接 影響下游党巾,二是當grandmaster更換時萎庭,由于neighbor frequency ratio都算好了,因此計算grandmaster frequency ratio更快齿拂。
這個累加的ratio放在Follow_Up message的TLV中驳规。
在計算synchronized time時,會用到grandmaster frequency ratio署海。
在校正傳播時延時达舒,會用到neighbor frequency ratio。
Grandmaster (best master) selection and network establishment
gptp協(xié)議使用BMCA算法選出best master叹侄,并得到synchronization spanning tree巩搏。
gptp要求domain內(nèi)的所有設(shè)備都是time-aware system,也就是說沒有內(nèi)部時鐘的設(shè)備趾代,如普通的switch贯底、bridge等會被踢出網(wǎng)絡(luò)。
gptp使用peer delay mechanism(對于ethernet來說)來確定鄰近設(shè)備是否符合協(xié)議要求撒强。所有無法處理此message類型的設(shè)備禽捆,以及所有propagation delay不符合要求的設(shè)備,都會被剔除在網(wǎng)絡(luò)外飘哨。
Energy efficiency
在流量很少的情況下高頻次地發(fā)送同步messages胚想,是很不符合節(jié)能的需求的。
gptp協(xié)議定義了一種方式芽隆,可以減少發(fā)送sync/peer delay/announce messages的頻率浊服,并且通知鄰居不要計算它們之間的rate ratio和pathDelay统屈。
此協(xié)議只定義了這種行為,但不介紹應(yīng)該在什么情況下采用這種模式牙躺。
Time-aware system architecture
time-aware system主要由以下幾部分構(gòu)成:
- 若time-aware system中有使用time information的application愁憔,則應(yīng)通過application interfaces來產(chǎn)生/接收gptp information。
- 一個media-independent part孽拷。
由ClockMaster吨掌,ClockSlave,SiteSync logical entities脓恕,一或多個PortSync entities膜宋,一個LocalClock entity組成。
其中 SiteSync entity負責處理BMCA以及time information forwarding between logical ports and ClockSlave and ClockMaster的工作炼幔;
其中 PortSync entities負責計算port-specific delays needed for time synchronization correction秋茫。 - Media-dependent ports,作為media-independent layer與傳輸media之間的中間層江掩,在它們之間傳遞"MDSyncSend" 和 "MDSyncReceive" data structure学辱。
當下層使用Ethernet協(xié)議時乘瓤,使用1588中的Sync环形、Follow-Up messages,并且后面跟上用于通知rate ratio和phase/frequency change的TLV衙傀。
gptp只支持two-step的message mechanism抬吟。
Differences between gPTP and PTP
- gptp只支持layer2,ptp支持layer 2/3/4
- gptp可以兼容多種傳輸介質(zhì)统抬,ptp只支持TCP/IP, Ethernet以及少量協(xié)議火本。
- gptp只支持P2P,ptp支持P2P和E2E
- gptp支持end station(對應(yīng)ordinary clock)和bridges(對應(yīng)boundary clock)聪建,ptp支持ordinary clock, boundary clock, transparent clock钙畔。
- gptp網(wǎng)絡(luò)中只能存在time-aware systems,ptp網(wǎng)絡(luò)中可以存在不帶內(nèi)部時鐘的設(shè)備金麸。
- gptp只支持two-step processing擎析,ptp支持one-step和two-step。
- 穩(wěn)定狀態(tài)下挥下,gptp中揍魂,同一個網(wǎng)絡(luò)內(nèi)只存在一個gptp domain;ptp中棚瘟,支持同一個網(wǎng)絡(luò)內(nèi)多個domain互相重疊现斋。
- gptp domain內(nèi)的所有time-aware systems都是logically syntonized,即它們測量時間用的是相同的frequency(詳見7.3.3)偎蘸,這是強制的庄蹋。ptp中瞬内,syntonization是可選的,并且其性能沒有g(shù)ptp好蔓肯。
- gptp中遂鹊,沒有foreign master驗證,收到別人傳來的anounce message直接就用蔗包。
gptp中秉扑,沒有pre-master state,port要成為master就馬上成為master调限。
gptp中舟陆,沒有uncalibrated state。
gptp中耻矮,所有的time-aware system都必須參加BMCA秦躯,即使它沒有當grandmaster的實力。
上述幾條裆装,使得gptp的BMCA與ptp的有些區(qū)別踱承。除此之外,基本相同哨免。