——Biamp亞太區進階工程師 Kane Zhang
【專業視聽網報道】:[摘要]AVB-Audio Video Bridging(中文“音視訊橋”)是一項新的以太網标準,由IEEE 802.1任務組于2005開始制定。其中包括:帶寬預留(Bandwidth Reservation Protocol)、精準時鐘同步(Precision Time Protocol)、流量控制(Traffic Shaping)以及連接配接和控制(AVDECC)。此任務組于2012年正式更名為TSN-Time Sensitive Network即時間敏感網絡。主要應用于各種支援低延時及基于時間同步資料傳輸的以太網協定。本文主要闡述TSN在專業音視訊領域的應用——AVB。
[關鍵詞]AVB - Audio Video Bridging音視訊橋、TSN – Time Sensitive Network時間敏感網絡
前言:
縱覽過去的十年,得益于統一的行業标準,IT行業的技術飛速進步。從最開始的正常10M網到今天随處可見的10G高速網,網絡幾乎影響着人們日常生活的每個角落。相比之下,音視訊行業的發展卻未盡如人意。為網絡音頻和視訊傳輸設立技術标準,一直是 AV 行業過去二十年來的目标。迄今為止,由于缺乏行業公認的網絡标準造成有關空白,令許多制造商各自為戰,開發專有解決方案試圖填補這一空白。然而付出未必有回報,單一技術無法解決所有數字音視訊網絡的難題。這些解決方案都不可能成為統一的行業标準。自2005年AVB問世以來為包括音視訊行業在内的所有具有實時傳輸需要的應用指明了方向。2012年,AVB網絡正式更名為TSN網絡,從此基于以太網絡的區域網路技術步入了新紀元,TSN時間敏感網絡正式取代傳統以太網登上了曆史的舞台。
1) “傳統以太網”的誕生
我們通常認為以太網是由鮑勃梅特卡夫(Bob Metcalfe)于1973年提出的。并于1982年(Ethernet V2)投入商業市場且很快擊敗了與其同期的令牌環、FDDI和ARCNET等其他區域網路技術被全球普遍采用。以太網技術從根本上解決了在區域網路内的資訊互傳/共享的問題。然而在建立之初,以太網隻考慮了一些非實時的靜态資訊。例如:文字和圖檔。即便是共享音頻和視訊,但隻限于下載下傳和互傳。
1982年,第一台CD機在日本問世。這标志着音視訊從此由純模拟走入了“數字化”。而1996年由網際網路工程任務組(IETF)開發的RTP(Realtime Transport Protocol)則奠定了音視訊在網絡中傳輸的基礎,也就是說音視訊又實作了從“數字化”進化到了“網絡化”。之後的VoIP正是借用了RTP技術實作了在全球網際網路上的“網絡化數字通訊”。
由于本文即将闡述“時間敏感網絡”,是以,為了加以差別,我們将目前大家所熟知的以太網稱為“傳統以太網”。那麼究竟“傳統以太網”是如何工作的呢?
2) “傳統以太網”的基本原理
首先我們先要搞清楚以太網的工作原理。以太網是當今現有區域網路采用的最廣泛的通信協定标準。以太網絡使用CSMA/CD(載波監聽多路通路及沖突檢測)技術,目前通常使用雙絞線(UTP線纜)進行組網。包括标準的以太網(10Mbit/s)、快速以太網(100Mbit/s)、千兆網(1Gbit/s)和10G(10Gbit/s)以太網。它們都符合IEEE802.3。(注:bps=bit/s)
以千兆網(1Gbit/s)為例:假如說交換機的端口帶寬是1Gbps,則說明每秒可傳輸1000,000,000個二進制的“位”。大家一定要注意以太網中所有的傳輸都是串行傳輸,就是說在網卡的實體端口會在每一個機關時間内“寫入”或是“讀取”一個電位值(0或1)。那麼這個機關時間對于1Gbps帶寬來說就是1÷1000,000,000=1ns。如圖一所示:
圖一
每8個位(bit)相當于1個位元組(Byte)。多個位元組(Byte)可以組成一個資料幀。以太網傳輸資料是以幀為機關的。以太網規定每一個資料幀的最小位元組是64byte,最大位元組是1518byte。實際上每個資料幀之間還會有一個12位元組的間隔。如圖二所示:
圖二
3) 如何了解網絡帶寬?
正确了解網絡帶寬是了解“時間敏感網絡”的前提。我們先舉個例子:如果我們有10個資料流(當然每個資料流中會有成千上萬個資料幀),每個資料流的帶寬是100Mbps,那麼這10個資料流可以通過1Gbps的帶寬嗎?我們可以用圖三來表示嗎?
圖三
首先,這種表示方法是錯誤的。因為正如我們前文所說,網絡是串行的,而上圖所表示的方法是并行的。這個例子的正确答案是“不一定”。
如圖四所示才是帶寬的正确表示方法。在這裡,你應該把1G的帶寬想象成在理想情況下,可以有包含總數為109二進制位的資料幀在1秒鐘通過。通常資料幀都不會占用整個帶寬,每一段資料流(包含很多的資料幀)在機關時間内運作,也就是我們所說的每個資料流所占用的帶寬。一定要記住,網絡中所有的資料幀都是串行通訊。
圖四
想通了這個問題,我們假設如果這10個100M的資料流能夠頭尾相連,嚴格按時間順序排列如圖五所示,那麼答案是:“可以”。也就是說在理想情況下,這10個100M的資料流可以在1Gbps的帶寬下順利傳到對端。
圖五
但大多數情況下,由于帶寬通常是由多個裝置共享的,這也是以太網的優勢所在。而且所有的發送端沒有基于時間的流量控制,那麼這些發送端永遠是盡最大可能發送資料幀。這樣來自不同裝置的資料流就會在時間上産生重疊,即我們通常所說的沖突。如圖六所示,在這種情況下,答案就是:“不行”。因為所有資料流重疊/沖突的部分會遵循QoS優先機制進行轉發,一部分的資料包肯定會被丢棄。
圖六
在IT專業裡有一個不成文的規定。當某個交換機的帶寬占用率超過40%時就必須得擴容,其目的就是通過提高網絡帶寬來避免擁堵的産生。
4) 什麼是QoS?
QoS(Quality of Service)即服務品質,它提供了針對不同使用者或者不同資料流采用相應不同的優先級,或者是根據應用程式的要求,保證資料流的性能達到一定的水準。
以太網預設的轉發機制叫做“Best Effort”(盡力而為)。也就是說當資料包抵達端口後,本着先入先出的原則轉發。當網絡的流量稀疏,這本不是一個問題。但在實際環境中,大量的資料包極有可能在一瞬間抵達端口。當然,端口可以在一定程度上緩存并延時轉發,但我們一方面是不能容忍過大的延時轉發,另一方面交換機的實體端口緩存也非常小,不可能有效解決大量資料包瞬間抵達的問題。這種情況下,我們隻能對資料中比較重要或是強調實時性的資料包進行優先轉發。這就要依靠QoS來對所有的資料包進行分類和标注,并依據規則來進行較為智能的轉發。目前市場上較大多數的需要低延時的實時傳輸采用QoS這一技術。但QoS能否徹底解決網絡擁堵的問題嗎?
由于Best Effort的機制,通常具有一定帶寬的一個資料流會在每秒中不同時間段傳輸,盡管所占用的帶寬相等,但在每個時間段上的時間節點卻不同。如圖七所示,這樣在多個資料流共存的時候,就會很容易産生帶寬重疊的現象,進而導緻丢包。
圖七
我們所希望看到的是每一個資料流都盡可能按照時間順序排序進而有效避免不同資料流在同一通道中傳輸時産生重疊,進而提高帶寬的使用率。如圖八所示:
圖八
我們發現實時音視訊流恰好是沿等長的時間間隔釋出資料的。比如說:一個24比特48K采樣的專業音頻通道,每個采樣的時間間隔是20.83 µs。如果我們按照每6個采樣封裝成一個資料包,那麼每個資料包的固定間隔就是125 µs。每個資料包是由兩個部分組成,資料報頭(74位元組)+音頻通道采樣資料(24位元組X通道數)。
圖九
為了避免帶寬重疊,我們所需要做的就是将幾個不同的音頻流進行流量整形(Traffic shaping)。以達到提高可靠傳遞的目的。這裡大家要注意,我指的是流量整形而不是流量控制(Traffic Control)。
比如在一個帶寬裡,有非實時資料和3個實時資料流。未經整形的帶寬,極易産生重疊。
圖十
而經過流量整形每個流所占的帶寬會在同一個時間節點。所有的非實時流可以見縫插針提高對帶寬的占用率。這就是AVB的基本原理。
圖十一
AVB不僅可以對發送端比如各種音視訊裝置的網絡端口進行流量整形,還可以對交換機中的每個轉發節點進行整形。進而確定每個音視訊流隻占用各自相應的帶寬而不對其他資料産生影響。
由于以太網的發明時間太早,并沒有考慮實時資訊的傳輸問題。盡管RTP能在一定程度上保證明時資料的傳輸,但并不能為按順序傳送資料包提供可靠的傳送機制。是以,想要對所有的資料包進行排序,就離不開對資料的緩沖(Buffer)。但一旦采用緩沖的機制就又會帶來新的問題—極大的“延時”。換句話說,當資料包在以太網中傳輸的時候從不考慮延時、排序和可靠傳遞。這時,建立可靠的傳送機制就成了擺在技術人員面前的首要問題。想要解決這些問題,我們可以簡要概括成以下幾點:
1. 必須采用基于MAC位址的傳輸方式即二層傳輸或是基于IP位址UDP的傳輸方式,進而減小資料包的開銷以及降低傳輸延時。
2. 由于二層傳輸和UDP均不屬于可靠傳遞,是以必須依靠QoS來“盡可能”保障可靠傳遞。
3. 所有資料包需要有“時間戳”(Time Stamp),資料抵達後根據資料標頭的“時間戳”進行回放。是以各個網絡終端裝置必需進行“時鐘同步”也就是通常所說的時鐘校準。
4. 資料包被轉發時需采用隊列協定按序轉發,進而盡可能做到低延時。
5) 什麼是AVB?
AVB——以太網音視訊橋接技術(Ethernet Audio Video Bridging)是IEEE的802.1任務組于2005開始制定的一套基于新的以太網架構的用于實時音視訊的傳輸協定集。它有效地解決了資料在以太網傳輸中的時序性、低延時和流量整形問題。同時又保持了100%向後相容傳統以太網,是極具發展潛力的下一代網絡音視訊實時傳輸技術。其中包括:
1. 802.1AS:精準時間同步協定(Precision Time Protocol,簡稱PTP)
2. 802.1Qat:流預留協定(Stream Reservation Protocol,簡稱SRP)
3. 802.1Qav:排隊及轉發協定(Queuing and Forwarding Protocol,簡稱Qav)
4. 802.1BA:音視訊橋接系統(Audio Video Bridging Systems)
5. 1722:音視訊橋接傳輸協定(Audio/Video Bridging Transport Protocol,簡稱AVBTP)
6. 1733:實時傳輸協定(Real-Time Transport Protocol,簡稱RTP)
7. 1722.1:負責裝置搜尋、列舉、連接配接管理、以及基于1722的裝置之間的互相控制。
AVB不僅可以傳輸音頻也可以傳輸視訊。用于音頻傳輸時,在1G的網絡中,AVB會自動通過帶寬預留協定将其中750M的帶寬用來傳輸雙向420通道高品質、無壓縮的專業音頻。而剩下的250M帶寬仍然可以傳輸一些非實時網絡資料。用于視訊傳輸時,可以根據具體應用調節預留帶寬。比如:750M帶寬可以輕松傳輸高清full HD視覺無損的視訊信号。并且可以在AVB網絡中任意路由。
AVB中的802.1AS是1588協定在二層架構下一種具體實作。是AVB協定集中最重要的一部分。有關詳細内容,我會在後續的文章中較長的描述。
6) TSN和 AVB
很多人聽說過AVB,但對于TSN卻有些陌生。實際上,IEEE 802.1任務組在2012年11月的時候正式将AVB更名為TSN – Time Sensitive Network時間敏感網絡。也就是說,AVB隻是TSN中的一個應用。那麼TSN究竟有哪些應用呢?
第一個應用就是我們的專業音視訊(Pro AV)。在這個應用領域裡強調的是主時鐘頻率。也就是說,所有的音視訊網絡節點都必須遵循時間同步機制。
第二個應用是在汽車控制領域。目前大多數的汽車控制系統非常複雜。比如說:刹車、引擎、懸挂等采用CAN總線。而燈光、車門、遙控等采用LIN系統。娛樂系統更是五花八門,有FlexRay和MOST等目前的車載網絡。實際上,所有上述系統都可以用支援低延時且具有實時傳輸機制的TSN進行統一管理。可以降低給汽車和專業的A/V裝置增加網絡功能的成本及複雜性。
第三個應用是商用電子領域。比如說,你坐在家中,可以通過無線WIFI連接配接到任何家中的電子裝置上,實時浏覽任何音視訊資料。
最後一個應用也是未來最廣泛的應用。所有需要實時監控或是實時回報的工業領域都需要TSN網絡。比如:機器人工業、深海石油鑽井以及銀行業等等。TSN還可以用于支援大資料的伺服器之間的資料傳輸。全球的工業已經入了物聯網(Internet of Things,IoT)的時代,毫無疑問TSN是改善物聯網的互聯效率的最佳途徑。
圖十二
7) AVnu聯盟(AVnu Alliance)
AVnu是一個行業聯盟,成立于2009年,一直緻力于建立和推廣IEEE802.1音視訊橋接 (AVB)網絡标準。Broadcom、Intel、Cisco、Biamp、Harman均屬于該組織的成員。該組織建立了一整套一緻性測試流程進而確定所有基于AVB網絡架構的音視訊裝置之間的相容性和互通性。聯盟成員一同緻力于将TSN标準應用于Pro AV、Automotive、Consumer Electronics以及Industrial。一旦廠家的産品通過了AVnu的嚴格測試,就可以在其産品上使用AVnu的logo。
如果大家想更多的了解有關TSN網絡的問題,可以浏覽AVnu聯盟的網站http://avnu.org/
參考文獻:
1. https://en.wikipedia.org/wiki/Audio_Video_Bridging
2. http://avnu.org/faqs/
3. http://www.ieee802.org/1/pages/avbridges.html