1趋距、數(shù)字音頻傳輸?shù)膬?yōu)點(diǎn)
傳統(tǒng)的模擬音頻傳輸存在信號(hào)損耗粒氧、電磁干擾和接地干擾等問(wèn)題;而數(shù)字音頻傳輸抗干擾能力強(qiáng)节腐,整個(gè)系統(tǒng)的信噪比及失真與傳輸距離無(wú)關(guān)外盯,保真度更高摘盆。
2、數(shù)字音頻傳輸?shù)陌l(fā)展
1.1 IEC 60958
IEC 60958標(biāo)準(zhǔn)包含AES3(IEC 60958 type I)與S/PDIF(IEC 60958 type II)饱苟。
1.1.1 AES3
AES3也稱(chēng)為AES/EBU孩擂,全稱(chēng)為Audio Engineering Society/European Broadcasting Union
(錄音師協(xié)會(huì)/歐洲廣播系統(tǒng)聯(lián)盟) ,是由AES和EBU一起開(kāi)發(fā)的數(shù)字音頻傳輸標(biāo)準(zhǔn)箱熬,傳輸媒介有:
- 110歐姆屏蔽雙絞線+XLR 3線接口
- 75歐姆同軸電纜+BNC接口(稱(chēng)為AES-3id类垦,是AES3標(biāo)準(zhǔn)的一個(gè)子集)
1.1.2 S/PDIF
S/PDIF全稱(chēng)為Sony/Philips Digital Interconnect Format,Sony和Philips為主要設(shè)計(jì)者城须,是以AES3為基礎(chǔ)針對(duì)消費(fèi)級(jí)音頻設(shè)備短距離傳輸場(chǎng)景設(shè)計(jì)的標(biāo)準(zhǔn)蚤认,可以使用成本較低的硬件實(shí)現(xiàn)數(shù)字信號(hào)傳輸。傳輸媒介有:
- 75歐姆同軸電纜+RCA接口
-
光纖傳輸+TOSLINK光纖接口糕伐。
圖1 AES/EBU與S/PDIF
1.2 AES10(也稱(chēng)為MADI)
AES3只能傳輸兩通道數(shù)字音頻砰琢,為了解決此問(wèn)題,AES10被制訂良瞧。AES10使用了多路時(shí)分復(fù)用技術(shù)陪汽,可以傳輸56通道(48kHz)或32(96kHz)24bit的數(shù)字音頻信號(hào)。
1.3 AoIP(Audio over IP)
上述的格式都是點(diǎn)對(duì)點(diǎn)傳輸莺褒,存在以下缺點(diǎn):
- 需要使用專(zhuān)用的接口和線纜掩缓,價(jià)格昂貴
- 只能傳輸音頻信號(hào),并需要專(zhuān)門(mén)的時(shí)鐘源進(jìn)行同步
- 只能點(diǎn)對(duì)點(diǎn)傳輸遵岩,應(yīng)用間傳輸需要大量布線你辣,難以管理,檢修與操作都很麻煩
而AoIP成本低尘执,部署簡(jiǎn)單舍哄,易于管理。
目前音頻網(wǎng)絡(luò)標(biāo)準(zhǔn)主要集中在OSI網(wǎng)絡(luò)體系的第二層和第三層誊锭。
二層音頻標(biāo)準(zhǔn) | 三層音頻標(biāo)準(zhǔn) |
---|---|
AES51 | Ravenna |
AVB | Dante |
Cobranet | AES67 |
RAVE | Q-Lan |
Ethersound | WheatNet-IP |
REAC | Livewire |
第二層音頻標(biāo)準(zhǔn)的弊端在于構(gòu)建音頻網(wǎng)絡(luò)時(shí)需要專(zhuān)用的交換機(jī)表悬,無(wú)法利用現(xiàn)有的以太網(wǎng)絡(luò),導(dǎo)致費(fèi)用增加丧靡,限制了這類(lèi)標(biāo)準(zhǔn)的使用范圍蟆沫。而第三層音頻標(biāo)準(zhǔn)能讓音頻數(shù)據(jù)在標(biāo)準(zhǔn)的路由器中傳輸,從而大大提高了經(jīng)濟(jì)性温治。目前主流的音頻網(wǎng)絡(luò)標(biāo)準(zhǔn)為Dante饭庞、Ravenna和AES67。
1.3.1 Dante
Dante是Audinate公司開(kāi)發(fā)的專(zhuān)利技術(shù)熬荆,是一個(gè)封閉式標(biāo)準(zhǔn)舟山。其相位同步基于IEEE1588標(biāo)準(zhǔn),采用Zeroconf協(xié)議。它的優(yōu)勢(shì)在于硬件工作穩(wěn)定累盗,大部分主流音頻設(shè)備生產(chǎn)商都采用Dante寒矿。
1.3.2 Livewire
Livewire由Axia Audio公司開(kāi)發(fā),與Dante類(lèi)似若债,Livewire是一個(gè)綜合性的音頻網(wǎng)絡(luò)符相,除了音頻,Livewire網(wǎng)絡(luò)中還傳輸Livewire網(wǎng)絡(luò)同步信號(hào)拆座、控制信號(hào)主巍、狀態(tài)檢測(cè)信號(hào)等。
1.3.3 AES67
由于上述的協(xié)議互不兼容挪凑,無(wú)法互通孕索,限制了AoIP的發(fā)展,因此AES67被制訂躏碳。AES67并不是要建立一種全新的標(biāo)準(zhǔn)搞旭,而是要在現(xiàn)有標(biāo)準(zhǔn)的基礎(chǔ)上定義一個(gè)讓不同類(lèi)型協(xié)議互通的規(guī)范。目前Ravenna菇绵,Dante肄渗,Q-Lan,Liveware等協(xié)議均已實(shí)現(xiàn)對(duì)AES67的兼容咬最。
1.3.4 Ravenna
Ravenna是一種免費(fèi)開(kāi)放的標(biāo)準(zhǔn)翎嫡,無(wú)需專(zhuān)門(mén)進(jìn)行標(biāo)準(zhǔn)認(rèn)證。其整體架構(gòu)與AES67類(lèi)似永乌,不過(guò)增加了更多選擇惑申。譬如采樣率方面,Ravenna除了可以選擇48kHz翅雏,還可以選擇192kHz與384kHz圈驼;AES67規(guī)定荷載為PCM,而Ravenna還可以傳輸DSD/DXD碼流望几。
技術(shù)標(biāo)準(zhǔn) | Dante | Livewire+ | AES67 | Ravenna |
---|---|---|---|---|
研發(fā)公司 | Audinate | Telos/Axia | AES | Ravenna |
同步協(xié)議 | PTPv1 | PTPv2 | PTPv2 | PTPv2 |
授權(quán)方式 | 銷(xiāo)售統(tǒng)一的硬件和軟件產(chǎn)品 | 授權(quán)Telos聯(lián)盟旗下公司使用 | 技術(shù)標(biāo)準(zhǔn) | 由RAVENNA授權(quán)免費(fèi)使用 |
最小延時(shí)時(shí)間 | 小于150us | 小于1ms | 小于10ms | 小于1ms |
發(fā)現(xiàn)協(xié)議 | Bonjour/SAP | Axial Discovery | 無(wú) | SAP |
Qos | DiffServ | DiffServ | DiffServ | DiffServ |
3 AES67
AES67協(xié)議的目標(biāo)是實(shí)現(xiàn)不同音頻網(wǎng)絡(luò)協(xié)議的互通绩脆,它僅關(guān)注傳輸部分。
AES67對(duì)同步靴迫、媒體時(shí)鐘、網(wǎng)絡(luò)傳輸楼誓、編碼矢劲、會(huì)話描述和連接管理方面做出了相應(yīng)的規(guī)定,它包含3個(gè)現(xiàn)有的標(biāo)準(zhǔn):PTP精確時(shí)鐘協(xié)議慌随、RTP協(xié)議和SDP協(xié)議。
3.1 同步
3.1.1 為什么需要嚴(yán)格的時(shí)鐘同步?
在AoIP中阁猜,時(shí)鐘頻率同步和相位同步是不同音頻信號(hào)在不同設(shè)備間協(xié)同工作的前提丸逸。
溫度(容易受cpu負(fù)載影響)、大氣壓與時(shí)鐘振蕩器的差異導(dǎo)致每個(gè)設(shè)備的時(shí)鐘信號(hào)都會(huì)有一定量的偏差剃袍,這種偏差就會(huì)導(dǎo)致數(shù)字信號(hào)不精確黄刚,從而影響到音頻的質(zhì)量。
時(shí)鐘惡化通常來(lái)自抖動(dòng)與漂移民效。
3.1.1.1 抖動(dòng)
抖動(dòng)會(huì)引起數(shù)字信號(hào)的失真,如下圖4所示:
這種失真也被稱(chēng)為數(shù)字信號(hào)的相位噪聲畏邢,它在高頻信號(hào)上更加明顯业扒。抖動(dòng)引起的失真會(huì)導(dǎo)致多聲道的空間感丟失。
3.1.1.2 漂移
當(dāng)設(shè)備間的時(shí)鐘頻率不一致(一個(gè)走得慢一個(gè)走得快)便會(huì)導(dǎo)致漂移舒萎。隨著時(shí)間的推移程储,漂移導(dǎo)致的差異會(huì)變得越發(fā)顯著,最終導(dǎo)致同步失敗臂寝。同時(shí)章鲤,播放與采集設(shè)備間的時(shí)鐘漂移也會(huì)導(dǎo)致AEC算法無(wú)法收斂。
3.1.2 如何實(shí)現(xiàn)時(shí)鐘同步咆贬?
不同設(shè)備同步到一個(gè)公共時(shí)鐘能確保所有流以相同速率采樣和還原败徊,同一速率的多個(gè)流可以被接受端輕易合成。在AES67中掏缎,通過(guò)PTP(IEEE 1588-2008)實(shí)現(xiàn)時(shí)鐘頻率和相位的同步皱蹦。
- 相位同步(Phase synchronization):信號(hào)之間的相位差恒為零
-
頻率同步(Frequency synchronization):信號(hào)之間保持恒定相位差
圖5 相位同步與頻率同步
3.1.2.1 PTP基本概念
1、PTP域
我們將應(yīng)用了PTP協(xié)議的網(wǎng)絡(luò)稱(chēng)為PTP域御毅。PTP域內(nèi)有且只有一個(gè)同步時(shí)鐘根欧,域內(nèi)的所有設(shè)備都與該時(shí)鐘保持同步。
2端蛆、PTP端口
我們將設(shè)備上運(yùn)行了PTP協(xié)議的端口稱(chēng)為PTP端口凤粗。如下面圖6所示,PTP端口的角色可分為以下三種:
- 主端口(Master Port):發(fā)布同步時(shí)間的端口今豆,可存在于BC或OC上嫌拣。
- 從端口(Slave Port):接收同步時(shí)間的端口,可存在于BC或OC上呆躲。
- 被動(dòng)端口(Passive Port):既不接收同步時(shí)間异逐、也不對(duì)外發(fā)布同步時(shí)間的端口,只存在于BC上插掂。
3灰瞻、時(shí)鐘節(jié)點(diǎn)
PTP域中的節(jié)點(diǎn)稱(chēng)為時(shí)鐘節(jié)點(diǎn)腥例,PTP協(xié)議定義了以下三種類(lèi)型的基本時(shí)鐘節(jié)點(diǎn):
- OC(Ordinary Clock,普通時(shí)鐘):該時(shí)鐘節(jié)點(diǎn)在同一個(gè)PTP域內(nèi)只有一個(gè)PTP端口參與相位同步酝润,并通過(guò)該端口從上游時(shí)鐘節(jié)點(diǎn)同步時(shí)間燎竖。此外,當(dāng)時(shí)鐘節(jié)點(diǎn)作為時(shí)鐘源時(shí)要销,可以只通過(guò)一個(gè)PTP端口向下游時(shí)鐘節(jié)點(diǎn)發(fā)布時(shí)間构回,我們也稱(chēng)其為OC。
- BC(Boundary Clock疏咐,邊界時(shí)鐘):該時(shí)鐘節(jié)點(diǎn)在同一個(gè)PTP域內(nèi)擁有多個(gè)PTP端口參與相位同步纤掸。它通過(guò)其中一個(gè)端口從上游時(shí)鐘節(jié)點(diǎn)同步時(shí)間,并通過(guò)其余端口向下游時(shí)鐘節(jié)點(diǎn)發(fā)布時(shí)間浑塞。此外借跪,當(dāng)時(shí)鐘節(jié)點(diǎn)作為時(shí)鐘源時(shí),可以通過(guò)多個(gè)PTP端口向下游時(shí)鐘節(jié)點(diǎn)發(fā)布時(shí)間的缩举,我們也稱(chēng)其為BC垦梆,如圖6中的BC 1。
- TC(Transparent clock仅孩,透明時(shí)鐘):與BC/OC相比托猩,BC/OC需要與其它時(shí)鐘節(jié)點(diǎn)保持相位同步,而TC則不與其它時(shí)鐘節(jié)點(diǎn)保持相位同步辽慕。TC有多個(gè)PTP端口京腥,但它只在這些端口間轉(zhuǎn)發(fā)PTP協(xié)議報(bào)文并對(duì)其進(jìn)行轉(zhuǎn)發(fā)延時(shí)校正,而不會(huì)通過(guò)任何一個(gè)端口同步時(shí)間溅蛉。TC包括以下兩種類(lèi)型:
- E2ETC(End-to-End Transparent Clock公浪,端到端透明時(shí)鐘):直接轉(zhuǎn)發(fā)網(wǎng)絡(luò)中非P2P(Peer-to-Peer,點(diǎn)到點(diǎn))類(lèi)型的協(xié)議報(bào)文船侧,并參與計(jì)算整條鏈路的延時(shí)欠气。
-
P2PTC(Peer-to-Peer Transparent Clock,點(diǎn)到點(diǎn)透明時(shí)鐘):只直接轉(zhuǎn)發(fā)Sync報(bào)文镜撩、Follow_Up報(bào)文和Announce報(bào)文预柒,而終結(jié)其它PTP協(xié)議報(bào)文,并參與計(jì)算整條鏈路上每一段鏈路的延時(shí)袁梗。
圖6 時(shí)鐘節(jié)點(diǎn)示意圖
4宜鸯、PTP域網(wǎng)絡(luò)拓?fù)?/h5>
PTP域有邊界時(shí)鐘和透?jìng)鲿r(shí)鐘兩種組網(wǎng)模式。
邊界時(shí)鐘模式下的網(wǎng)絡(luò)中間節(jié)點(diǎn)設(shè)備有多個(gè)1588端口遮怜,其中一個(gè)端口作為從時(shí)鐘和上級(jí)時(shí)鐘保持同步淋袖,其他端口則作為下一級(jí)網(wǎng)元的主時(shí)鐘。設(shè)備收到1588v2報(bào)文之后進(jìn)行終結(jié)锯梁,然后生成新的報(bào)文再向下游傳遞即碗。
透?jìng)鲿r(shí)鐘下的網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備接收到來(lái)自時(shí)鐘源的1588v2報(bào)文之后不進(jìn)行終結(jié)焰情,而是根據(jù)報(bào)文的駐留時(shí)間和鏈路時(shí)延,修正報(bào)文的時(shí)間戳信息剥懒,并將其傳送給下游設(shè)備烙样。
- 精度對(duì)比:邊界時(shí)鐘模式下,由于分組網(wǎng)絡(luò)的不穩(wěn)定性蕊肥,中間節(jié)點(diǎn)不可能百分之百地恢復(fù)原始時(shí)鐘,而是存在或多或少的誤差蛤肌,這樣傳遞給下游的時(shí)鐘就產(chǎn)生了漂移壁却,并且這樣的漂移還會(huì)隨著跳數(shù)的增加而不斷累積。而透?jìng)鲿r(shí)鐘模式下裸准,中間節(jié)點(diǎn)只修正時(shí)延展东,對(duì)跳數(shù)并不敏感,故其理論上的精度高于邊界時(shí)鐘炒俱。然而在實(shí)際使用中盐肃,由于邊界時(shí)鐘模式下的漂移是不定向的,可能不斷累積增大权悟,也可能多個(gè)節(jié)點(diǎn)之間產(chǎn)生的漂移可能相互抵消砸王,所以實(shí)際上兩種模式的精度相當(dāng)。
- 性能對(duì)比:邊界時(shí)鐘模式下峦阁,BC交換機(jī)收到PTP信號(hào)后就作為時(shí)鐘的邊界以主鐘Master方式將同步信號(hào)分散到下面鏈路上的終端設(shè)備中去谦铃,交換機(jī)完全承擔(dān)了同步負(fù)載壓力,頂層同步機(jī)的壓力就會(huì)很小榔昔。在大規(guī)模系統(tǒng)中為確保上百個(gè)鎖相終端的同步安全驹闰,BC交換機(jī)是首選。而透?jìng)鲿r(shí)鐘模式下撒会,透?jìng)鲿r(shí)鐘交換機(jī)鏈接的所有終端都得透過(guò)交換機(jī)去和同步機(jī)鎖相握手嘹朗,當(dāng)同步終端眾多時(shí)同步機(jī)的負(fù)載壓力加大會(huì)導(dǎo)致崩潰。
5诵肛、主從關(guān)系
主從關(guān)系(Master-Slave)是相對(duì)而言的屹培,對(duì)于相互同步的一對(duì)時(shí)鐘節(jié)點(diǎn)來(lái)說(shuō),存在如下主從關(guān)系:
- 發(fā)布同步時(shí)間的節(jié)點(diǎn)稱(chēng)為主節(jié)點(diǎn)曾掂,而接收同步時(shí)間的節(jié)點(diǎn)則稱(chēng)為從節(jié)點(diǎn)惫谤。
- 主節(jié)點(diǎn)上的時(shí)鐘稱(chēng)為主時(shí)鐘,而從節(jié)點(diǎn)上的時(shí)鐘則稱(chēng)為從時(shí)鐘珠洗。
- 發(fā)布同步時(shí)間的端口稱(chēng)為主端口溜歪,而接收同步時(shí)間的端口則稱(chēng)為從端口。
6许蓖、最優(yōu)時(shí)鐘
如圖6所示蝴猪,PTP域中所有的時(shí)鐘節(jié)點(diǎn)都按一定層次組織在一起调衰,整個(gè)域的參考時(shí)間就是最優(yōu)時(shí)鐘(Grandmaster Clock,GM)自阱,即最高層次的時(shí)鐘嚎莉。通過(guò)各時(shí)鐘節(jié)點(diǎn)間PTP協(xié)議報(bào)文的交互,最優(yōu)時(shí)鐘的時(shí)間最終將被同步到整個(gè)PTP域中沛豌,因此也稱(chēng)其為時(shí)鐘源趋箩。
最優(yōu)時(shí)鐘可以通過(guò)手工配置靜態(tài)指定,也可以通過(guò)BMC(Best Master Clock加派,最佳主時(shí)鐘)協(xié)議動(dòng)態(tài)選舉叫确。
手工配置指手動(dòng)將目標(biāo)節(jié)點(diǎn)的priority1值設(shè)置成最小,BMC算法首先比對(duì)信號(hào)發(fā)生器的priority1參數(shù)芍锦,誰(shuí)的數(shù)值最小誰(shuí)的PTP優(yōu)先級(jí)就最高誰(shuí)就是BMC最佳主時(shí)鐘竹勉。
如果系統(tǒng)中存在多個(gè)priority1數(shù)值相同的GM時(shí)鐘,那么交換機(jī)就進(jìn)行動(dòng)態(tài)BMC推舉算法娄琉。
動(dòng)態(tài)選舉的過(guò)程:
1次乓、各時(shí)鐘節(jié)點(diǎn)之間通過(guò)交互的Announce報(bào)文中所攜帶的最優(yōu)時(shí)鐘優(yōu)先級(jí)、時(shí)間等級(jí)孽水、時(shí)間精度等信息票腰,最終選出一個(gè)節(jié)點(diǎn)作為PTP域的最優(yōu)時(shí)鐘,與此同時(shí)匈棘,各節(jié)點(diǎn)之間的主從關(guān)系以及各節(jié)點(diǎn)上的主從端口也確定了下來(lái)丧慈。通過(guò)這個(gè)過(guò)程,整個(gè)PTP域中建立起了一棵無(wú)環(huán)路主卫、全連通逃默,并以最優(yōu)時(shí)鐘為根的生成樹(shù)。
2簇搅、此后完域,主節(jié)點(diǎn)會(huì)定期發(fā)送Announce報(bào)文給從節(jié)點(diǎn),如果在一段時(shí)間內(nèi)瘩将,從節(jié)點(diǎn)沒(méi)有收到主節(jié)點(diǎn)發(fā)來(lái)的Announce報(bào)文吟税,便認(rèn)為該主節(jié)點(diǎn)失效,于是重新進(jìn)行最優(yōu)時(shí)鐘的選擇姿现。
7肠仪、PTP報(bào)文
PTP通過(guò)主從節(jié)點(diǎn)間交互報(bào)文,實(shí)現(xiàn)主從關(guān)系的建立备典、相位和頻率同步异旧。根據(jù)報(bào)文是否攜帶時(shí)間戳,可以將PTP報(bào)文分為兩類(lèi)提佣,事件報(bào)文和通用報(bào)文吮蛹。
- 事件報(bào)文:時(shí)間概念報(bào)文荤崇,進(jìn)出設(shè)備端口時(shí)打上精確的時(shí)間戳,PTP根據(jù)事件報(bào)文攜帶的時(shí)間戳潮针,計(jì)算鏈路延遲术荤。事件報(bào)文包含以下4種:Sync、Delay_Req每篷、Pdelay_Req和Pdelay_Resp瓣戚。
- 通用報(bào)文:非時(shí)間概念報(bào)文,進(jìn)出設(shè)備不會(huì)產(chǎn)生時(shí)間戳焦读,用于主從關(guān)系的建立带兜、時(shí)間信息的請(qǐng)求和通告。通用報(bào)文包含以下6種:Announce吨灭、Follow_Up刑巧、Delay_Resp喧兄、Pdelay_Resp_Follow_Up、Management和Signaling啊楚,目前設(shè)備不支持Management吠冤、Signaling報(bào)文。
3.1.2.2 PTP同步原理
PTP通過(guò)記錄主從設(shè)備之間事件報(bào)文交換時(shí)產(chǎn)生的時(shí)間戳恭理,計(jì)算出主從設(shè)備之間的路徑延遲和時(shí)間偏移拯辙,實(shí)現(xiàn)主從設(shè)備之間的時(shí)間和頻率同步,設(shè)備支持兩種攜帶時(shí)間戳的模式颜价,分別為:
- 單步時(shí)鐘模式(One step)涯保,指事件報(bào)文Sync和Pdelay_Resp帶有本報(bào)文發(fā)送時(shí)刻的時(shí)間戳,報(bào)文發(fā)送和接收的同時(shí)也完成了時(shí)間信息的通告周伦。
- 兩步時(shí)鐘模式(Two step)夕春,指事件報(bào)文Sync和Pdelay_Resp不帶有本報(bào)文發(fā)送時(shí)刻的時(shí)間戳,而分別由后續(xù)的通用報(bào)文Follow_Up和Pdelay_Resp_Follow_Up帶上該Sync和PDelay_Resp報(bào)文的發(fā)送時(shí)間信息专挪。兩步時(shí)鐘模式中及志,時(shí)間信息的產(chǎn)生和通告分兩步完成,這樣可以兼容一些不支持給事件報(bào)文打時(shí)間戳的設(shè)備寨腔。
1速侈、頻率同步
假設(shè)時(shí)鐘節(jié)點(diǎn)A要同步到時(shí)鐘節(jié)點(diǎn)B。不考慮路徑延時(shí)和駐留時(shí)間的變化迫卢,如果A和B的時(shí)鐘頻率相等倚搬,則在相同的時(shí)間間隔內(nèi),A和B的時(shí)間累積的偏差應(yīng)該是一樣的靖避,也就是說(shuō)潭枣。如果
大于
比默,說(shuō)明A的時(shí)鐘頻率比B快侵状,要調(diào)慢A的時(shí)鐘頻率汤求;如果
小于
此虑,說(shuō)明A的時(shí)鐘頻率比B慢跷跪,則要調(diào)快A的時(shí)鐘頻率抗碰。(
為B點(diǎn)的第n個(gè)Sync報(bào)文發(fā)送的時(shí)間澡屡,
為A點(diǎn)接收第n個(gè)Sync報(bào)文的時(shí)間點(diǎn)贱纠。)
2伊佃、相位同步
PTP相位同步有兩種延時(shí)測(cè)量機(jī)制:請(qǐng)求應(yīng)答機(jī)制和端延時(shí)機(jī)制窜司, 且這兩種機(jī)制都以網(wǎng)絡(luò)對(duì)稱(chēng)為前提。
請(qǐng)求應(yīng)答機(jī)制(End to End)
- 主設(shè)備在時(shí)刻
發(fā)送Sync報(bào)文航揉。如果主設(shè)備為one-step模式塞祈,
隨Sync報(bào)文傳送到從設(shè)備;如果主設(shè)備為two-step模式帅涂,則
在隨后的Follow_Up報(bào)文中傳送到從設(shè)備议薪;
- 從設(shè)備在時(shí)刻
接收到Sync報(bào)文,并從Sync報(bào)文(one-step)或者Follow_Up報(bào)文(two-step)中獲取
媳友。
- 從設(shè)備在時(shí)刻
發(fā)送延時(shí)請(qǐng)求報(bào)文Delay_Req給主設(shè)備斯议。
- 主設(shè)備在時(shí)刻
接收到Delay_Req報(bào)文。
- 主設(shè)備隨后通過(guò)延時(shí)回答報(bào)文Delay_Resp將
發(fā)送給從設(shè)備醇锚。
此時(shí)哼御,從時(shí)鐘便擁有了~
這四個(gè)時(shí)間戳,由此可計(jì)算出主焊唬、從時(shí)鐘間的往返總延時(shí)為
恋昼,由于網(wǎng)絡(luò)是對(duì)稱(chēng)的,所以主赶促、從時(shí)鐘間的單向延時(shí)為
焰雕,
。 因此芳杏,從時(shí)鐘相對(duì)于主時(shí)鐘的時(shí)鐘偏差為:
矩屁。
端延時(shí)機(jī)制(Peer to Peer)
在端延時(shí)機(jī)制中爵赵,主設(shè)備依然會(huì)發(fā)送Sync和Follow_Up報(bào)文給從設(shè)備吝秕,從設(shè)備通過(guò)以下公式和主設(shè)備保持同步:
從設(shè)備能通過(guò)Sync或Follow_Up報(bào)文獲取,但它是如何得知網(wǎng)絡(luò)延遲(
)的呢空幻?
請(qǐng)求應(yīng)答機(jī)制是在主從設(shè)備之間交換測(cè)量消息烁峭,從而計(jì)算出主從設(shè)備之間整體的路徑延時(shí)時(shí)間,這些操作是在主從設(shè)備上完成,即使鏈路中的交換機(jī)不支持ptp也能正常運(yùn)行约郁,因此叫End to End缩挑。
而端延時(shí)機(jī)制是根據(jù)主從時(shí)鐘之間的每一條鏈路延時(shí)時(shí)間計(jì)算時(shí)間差,要求鏈路中的交換機(jī)支持ptp(邊界時(shí)鐘節(jié)點(diǎn)或透明時(shí)鐘節(jié)點(diǎn))鬓梅,網(wǎng)絡(luò)中的每臺(tái)設(shè)備都會(huì)定期交換peer-delay測(cè)量信息供置,因此每臺(tái)設(shè)備都知道到相鄰設(shè)備的延遲,如下圖12所示绽快。
通過(guò)peer-delay測(cè)量相鄰設(shè)備間延遲的步驟如圖13所示芥丧。
通過(guò)上述步驟活孩,A知道到B的鏈路延遲物遇。B執(zhí)行一次同樣的步驟就能知道到A的延遲。
注意雖然peer-delay測(cè)量步驟和請(qǐng)求應(yīng)答機(jī)制的測(cè)量步驟一樣憾儒,但往往peer-delay結(jié)果的精度更高挎挖。因?yàn)閮煞N方法都基于往返時(shí)間相同這一假設(shè),peer-delay只測(cè)量一條鏈路的延遲航夺,而且不存在隊(duì)列,這個(gè)假設(shè)是成立的崔涂,而后者要測(cè)量主從設(shè)備之間整體的路徑延時(shí)時(shí)間阳掐,往返時(shí)間則不一定相同,導(dǎo)致偏差較大冷蚂。
PTP網(wǎng)絡(luò)中鏈路延遲的非對(duì)稱(chēng)會(huì)導(dǎo)致同步誤差缭保,在用來(lái)補(bǔ)償延遲非對(duì)稱(chēng)的方法中,最值得一提的是IEEE Std 1588的擴(kuò)展版本蝙茶,這種方法被稱(chēng)為白兔法(White Rabbit)艺骂,由歐洲核子研究委員會(huì)(CERN)開(kāi)發(fā)而成。
White Rabbit使用一根單模光纖連接主從節(jié)點(diǎn)隆夯,采用波分復(fù)用技術(shù)實(shí)現(xiàn)全雙工通信钳恕,主節(jié)點(diǎn)發(fā)出的光的波長(zhǎng)為1490 nm,從節(jié)點(diǎn)發(fā)出的光的波長(zhǎng)為1310 nm蹄衷。由于單根光纖里的往返鏈路長(zhǎng)度完全一致忧额,延時(shí)不對(duì)稱(chēng)性完全由不同波長(zhǎng)的光在光纖中的折射率決定。因此利用光纖的非對(duì)稱(chēng)性系數(shù)愧口,可以從往返光纖鏈路的延時(shí)精確計(jì)算出主從鏈路的單向延時(shí)
主從節(jié)點(diǎn)間每段鏈路的鏈路延時(shí)和TC駐留時(shí)間累計(jì)在Sync和Follow_Up報(bào)文的correction filed中睦番,向下游傳遞。通過(guò)這種方式,從設(shè)備就可以得知網(wǎng)絡(luò)延遲()托嚣,并通過(guò)
和主設(shè)備保持同步巩检。
3、時(shí)間戳精度
在網(wǎng)絡(luò)通訊過(guò)程中示启,被傳遞的信息要在發(fā)送端的本地協(xié)議棧中進(jìn)行封裝兢哭,從協(xié)議棧的頂層開(kāi)始,每下降一層就將原有數(shù)據(jù)打包丑搔,增加包頭厦瓢、包尾信息,運(yùn)算處理時(shí)間的不確定性導(dǎo)致棧內(nèi)的滯留時(shí)間也有不確定性啤月。要降低不確定性煮仇,需要盡可能的將時(shí)間戳獲取點(diǎn)向協(xié)議棧的底層移動(dòng),時(shí)間戳的獲取點(diǎn)越靠近傳輸介質(zhì)谎仲,獲取的發(fā)送和接收時(shí)間戳的精度就越高浙垫。
系統(tǒng)各時(shí)鐘對(duì)時(shí)時(shí),如果沒(méi)有硬件支持郑诺,只能達(dá)到亞毫秒級(jí)的同步精度夹姥;如果有專(zhuān)用硬件(如美國(guó)NS的DP83640 PHY芯片)支持時(shí),可以達(dá)到亞微妙級(jí)的同步精度辙诞。
3.2 媒體時(shí)鐘
AES67中發(fā)送端使用媒體時(shí)鐘進(jìn)行采樣辙售,接收端用它來(lái)播放媒體流。媒體時(shí)鐘與網(wǎng)絡(luò)時(shí)鐘有固定關(guān)系飞涂。媒體時(shí)鐘的速率應(yīng)該和音頻采樣頻率一致旦部,媒體時(shí)鐘在IEEE 1588 epoch時(shí)間點(diǎn)為0,每經(jīng)過(guò)一個(gè)采樣周期较店,媒體時(shí)鐘的值加1士八。
AES67支持三種采樣率,44.1kHz梁呈、48kHz和96kHz婚度。
3.3 網(wǎng)絡(luò)傳輸
AES67規(guī)定用RTP傳輸音頻數(shù)據(jù)信息,用RTCP傳輸控制信息官卡,用UDP傳輸RTP包蝗茁。AES67不支持IP包分片,因此要控制包的大小不要超過(guò)MTU寻咒。
AES67要求支持通過(guò)多播傳輸音頻流评甜,為了避免多播引起的網(wǎng)絡(luò)洪泛,所有AES67節(jié)點(diǎn)都需要支持IGMPv2仔涩。接收端通過(guò)IGMP請(qǐng)求接收多播數(shù)據(jù)忍坷,支持IGMP嗅探的交換機(jī)只會(huì)轉(zhuǎn)發(fā)被請(qǐng)求的多播包到指定端口。發(fā)送端發(fā)送多播數(shù)據(jù)前需要通過(guò)IGMP請(qǐng)求接收自己要發(fā)送的多播數(shù)據(jù),這樣做并不會(huì)導(dǎo)致發(fā)送端收到自己發(fā)送的多播數(shù)據(jù)佩研,這樣做的原因是某些支持IGMP嗅探的交換機(jī)會(huì)將未被訂閱的多播包轉(zhuǎn)發(fā)到所有端口柑肴,引起網(wǎng)絡(luò)洪泛。
3.4 Qos
AES67中的Qos指按優(yōu)先級(jí)對(duì)數(shù)據(jù)包進(jìn)行處理旬薯。本標(biāo)準(zhǔn)中晰骑,設(shè)備需要支持DiffServ,DiffServ用DSCP field在每個(gè)IP包的頭部加上類(lèi)型標(biāo)記绊序,因此IP包能按指定的優(yōu)先級(jí)被處理硕舆。設(shè)備至少要支持三種通信類(lèi)型,即時(shí)鐘(Clock)骤公、媒體(Media)抚官、盡力而為(Best effort)。
3.5 編碼
AES67支持的載荷格式包括L16和L24阶捆。L16是一種非壓縮音頻數(shù)據(jù)的編碼格式凌节。L24是L16的一種擴(kuò)展。16位或24位非壓縮音頻數(shù)據(jù)采樣值是以整形的二進(jìn)制補(bǔ)碼來(lái)表示的洒试。
包時(shí)間指媒體包中的媒體數(shù)據(jù)實(shí)際持續(xù)時(shí)間倍奢。短的包時(shí)間雖然可以使延遲更低,但會(huì)引入開(kāi)銷(xiāo)垒棋。發(fā)送端和接受端應(yīng)該支持一個(gè)或多個(gè)以下包時(shí)間卒煞,如125μs、250μs叼架、333μs畔裕、1ms、4ms等碉碉。其中,1ms的包時(shí)間提供了最廣泛的音頻和網(wǎng)絡(luò)設(shè)備間的互操作性以及兼容性淮韭。
3.6 會(huì)話描述
為了正確建立連接和處理音頻數(shù)據(jù)垢粮,AES67節(jié)點(diǎn)需要一種方法獲取流的信息,這種描述流的方法就是SDP靠粪,它包含流的多播地址蜡吧、編碼格式和音頻數(shù)據(jù)包的描述(位寬、采樣率占键、通道數(shù)昔善、每個(gè)包的采樣點(diǎn)數(shù)、參考時(shí)鐘)畔乙。
雖然AES67清晰地規(guī)定了SDP的屬性和支持的參數(shù)范圍君仆,但是標(biāo)準(zhǔn)有意排除了會(huì)話發(fā)現(xiàn)的規(guī)定(為了讓更多廠商接受AES67,標(biāo)準(zhǔn)只聚焦于傳輸)。實(shí)際應(yīng)用中設(shè)備可以通過(guò)Bonjour返咱、SAP等方法實(shí)現(xiàn)會(huì)話發(fā)現(xiàn)钥庇。
參考文章
DRAFT REVISED AES67
Why is IEEE 1588 so accurate?
無(wú)壓縮4K超高清EFP系統(tǒng)中PTP精確時(shí)鐘同步技術(shù)解析
PTP簡(jiǎn)介
數(shù)字音頻時(shí)鐘、同步咖摹、抖動(dòng)评姨,以及他們對(duì)聲音的影響
數(shù)字定時(shí): 時(shí)鐘信號(hào)、抖動(dòng)萤晴、遲滯和眼圖
PTP技術(shù)介紹
1588v2吐句,是怎樣實(shí)現(xiàn)時(shí)鐘同步的?