蔣曉敏
(云南廣播電視臺,云南 昆明 650000)
建設地面數字電視公共節目覆蓋,需要將省、市/州、縣等多套節目傳到全省100多個DTMB發射臺站。為確保信號源的安全傳輸和播出質量,在傳輸結構上,各級播出機構進行視音頻編碼,TS流傳輸匯聚到縣級前端進行單頻網適配后傳輸至發射臺(SFN),也可直接傳輸至發射臺后匯聚(MFN)。按照安全播出的要求,信號傳輸需要有備份,并由不同路由傳輸,故需要規劃兩個不同路由的傳輸鏈路,實現省級節目傳輸至縣、州市節目傳輸至縣以及縣傳輸至各發射臺,實現信號源的有效備份。
一般情況下,主路信號使用有線專網進行傳輸,備路信號可以租用衛星鏈路,也可以租用其他通信網絡公司的專網,使用信號源切換設備進行切換,來確保信號源安全可靠的傳輸。由于目前部分發射臺缺乏可靠的信號備份手段,為節省成本,需要提高傳輸效率,采用性價比較高的方式來完成備份信號源的傳輸。統計實際使用情況發現,主路信號一般設計有線專網保障傳輸,全年鏈路可用度超過99.99%,而使用備路信號的時間全年不足0.01%,故可考慮采用性價比更高的備路傳輸方式。目前互聯網傳輸是較為成熟的信號傳輸方式,已具備傳輸多套節目所需的帶寬,可以作為備份信號源的傳輸途徑。主備路信號源在前端編碼,以TS碼流形式進行傳輸。主路通過省網絡公司有線網等專網傳輸。利用公用網絡傳輸備路信號,有三種方式可以選擇。
(1)節目源前端編碼后將IP信號通過公用網絡分別傳輸至縣級前端,這種方式需要公共前端具備很高的上行帶寬。例如,如果省級節目信號復用后帶寬為10 Mb·s-1,則省級前端傳送到各縣的碼流總帶寬不低于10 Mb·s-1×128個縣=1 280 Mb·s-1, 這就要求省級前端需要租用上行帶寬為2 Gb·s-1的網絡。
(2)利用云模式進行轉發,租用CDN進行轉發。使用云轉發的優點是可以傳輸到多個縣,可以簡單快速地增加接收端。缺點是云轉發需要根據流量收費,24小時傳輸流量巨大,流量成本很高。
(3)進一步優化第一種方式,在主路信號正常的情況下,不向縣前端傳送碼流。一旦發現主路故障,立即向前端申請傳輸備路信號。前端系統在接收到請求后,即向對應終端發送信號。這樣一來,備路信號在同一時間的上行帶寬將大大降低。
要實現第3種模式,有幾個問題需要解決:如何保障能夠知道備路信號隨時可用,備路信號投入使用的時間,操作復雜度。解決了這3個問題,即可使用第3種方式,優化提供的備份信號源,并以自動化的檢測、傳輸和切換手段,實現并確保省、市/州、縣廣電臺和縣發射臺進行信號源備份和自動切換。
根據以上分析,擬采用安全性和可靠性高的傳輸協議。TCP在數據傳輸中會有較高的額外開銷,限制了它對帶寬的有效使用,并且在流式和基于文件的傳輸應用里極大地影響了傳輸性能。在當今存在大量文件傳輸和更高速的網絡連接條件下,使用TCP會引發網絡擁堵,最終引發視頻頻繁緩沖、馬賽克甚至播放中斷等現象。同時,互聯網的網絡條件在不停地變化。這意味著任何單一的算法,在面對抖動、延遲、丟包的所有排列組合時,都無法在單點上做到立刻適應。
這些帶寬干擾因素的存在,無論總體帶寬有多大,都極大降低了網絡的實際性能。對于實時視頻流,目前有2種常用的糾錯技術,分別是前向糾錯(Forward Error Correction,FEC)和自動重發請求(Automatic Repeatre Quest,ARQ)。FEC是在傳輸流中插入攜帶冗余信息的額外數據包,這些冗余信息是從數據流中的其他數據包計算而得。這些冗余信息讓接收端可以在一定錯誤數量下,偵測出錯誤的發生,并且在不需要重傳的情況下,恢復錯誤的數據包。接收端在收到單個矩陣的所有數據包后才開始恢復數據,又引入額外的延遲。在如公共網絡那樣高丟包率和多變的IP網絡里傳輸視頻,它仍舊無法穩定傳輸。ARQ是在接收端檢測丟包,然后發送反饋或應答(ACK)給發送端,發送端隨即重傳丟失的數據包。這個機制在TCP和類似TCP的協議里都在使用,也包括一些開源和私有的協議,比如SRT和IBM的FASPStream。ARQ即使搭配FEC一起使用,仍舊有一些局限性,如在TCP和類似TCP的協議里,當檢測到丟包,發送端會減小擁塞窗口,同時降低傳輸速率。這會引起視頻延遲,占用更大的發送緩沖。當發送緩沖區溢出,那么這些丟包將再也無法恢復。在高擁塞和弱網的條件下,ARQ會顯著增加點到點的延遲。比如,當鏈路丟包率達到30%,將會至少需要10倍于RTT的延遲,才能保證可靠的傳輸。在大跨距的公網傳輸中,這個延遲甚至會超過2 s。即使在網絡條件良好的情況下,上述FEC和ARQ的問題依舊可能發生。任何不可靠的網絡連接更會加重問題,并導致服務質 量的下降。
R2TP(可靠實時傳輸協議)在端到端傳輸鏈路上應用一層管理層,在任何網絡條件下管理抖動,更高效地恢復丟包,降低延遲,并且將額外的負載(等于對帶寬的浪費)降到最低。R2TP不改變傳輸內容的內部封裝,數據輸入將原封不動地到達接收點。R2TP支持持內建的加密,所以數據會被安全平滑的傳輸。同時R2TP采用一套模式匹配算法去分析和適應實時變化的網絡,然后動態地應用當前最合適的算法來進行錯誤檢測和恢復。
為減少丟包的重傳請求的發送,R2TP使用自適應的協議,實時收集網絡狀態數據,重建網絡描述(profifile)。網絡描述會隨著實際網絡條件的改變而動態地更新,極大提高ARQ效率。同時,R2TP使用時鐘同步機制來統計數據包序列號,并使用一套基于數據包間隙和網絡參數的算法,讓發送端能在丟包剛發生時就檢測到(而無需等接收端反饋),即使在連續丟包的場景下也有效。回傳鏈路只需要用來發送否認確定(NACKK),所以回傳帶寬的開銷非常小。
R2TP可以根據實時網絡條件,選擇合適的錯誤恢復算法。即使在延遲和丟包多變的網絡里,也能夠極大增加網絡的可靠性。R2TP在接收端進行實時流量整形,消除抖動(抖動幾乎為0),這將進一步提高在不穩定網絡下的傳輸服務質量(Quality of Service,QoS)。
為進一步實現網絡使用的可靠性,減輕由于公用網絡故障導致的傳輸中斷,接收終端可能同時采用多個運營商的網絡接入。對此,R2TP設計了多徑綁定機制,以克服單條鏈路的低帶寬或不穩定的問題。通過實現一套智能的網絡負載均衡策略,R2TP可以將多條鏈路綁定成一條虛擬鏈路,根據實時傳輸需求和多條鏈路的條件,實現動態的流量均衡。R2TP最初專為視頻傳輸設計,因此在傳輸中會內嵌時間戳分析,按時間和幀的順序劃分糾錯的優先級來保證數據以正確的順序被輸出顯示。在傳輸安全性方面,也支持AES-128和AES-256算法,在整個傳輸過程中對數據加密,提供一個完全安全的數據傳輸通路。
為實現前文提出的功能,并解決可靠性、投入時間等問題,實現自動切換功能,擬采用統一管理、實時監測的互聯網備用信號傳輸系統。為確保網絡傳輸安全,防止替換,使用特殊的傳輸協議。傳輸協議需要高效、可靠,在網絡延時和網絡質量不良、丟包嚴重時,能夠最大限度地保證解碼正常。前端系統應能夠檢測所有解碼節點的網絡情況,如果出現網絡故障或終端設備離線,立即告警,確保網絡和系統的健壯。為實現自動快速備份,終端設備實時檢測主用信號,一旦發現主用信號終端異常,立即啟動備份信號傳輸并報警。系統拓撲如圖1所示。

圖1 方案拓撲圖
圖1 中,中繼服務器RRS實現邊緣數據處理,支持行業所需要的各種協議,如UDP、HTTP、RTMP、SRT等,并可以做協議轉換,以兼容不同數據源。在傳輸和分發的過程中,任何格式(SD、HD、4K、8K)的視頻流都可以使用中繼服務器進行傳輸和分發。同時,支持每一路流的原始數據的滾動錄制。用戶可以對錄制的文件進行 管理。
中繼服務器遠程控制管理部署復雜的視頻分發網絡,實時、完整地統計關鍵的網絡連接數據,如帶寬、抖動、連接狀態及運行時間等。中繼服務器在視頻傳輸過程中也需要支持高度安全的連接。視頻輸出可以設置密鑰,僅針對指定的接收者接收,以提高在公網中傳輸的安全性。
為實現靈活機動的網絡管理,設置一個統一的網絡管理系統(Netware Management System,NMS)是必要的。NMS是一個可以同時監控中繼服務器軟件和硬件的管理應用軟件,記錄每一臺中繼服務器的數據,并且把數據合并起來給網絡智能管理使用。NMS可以在云上部署也可以在本地部署,提供全天候的監控。當發生某些異常如碼率發生大幅變化,或者丟包率偏高、RTT增大時,NMS主動發送警告。這樣將有效地監控各中繼服務器的網絡狀態,確保備份的有效。同時,NMS實時監控分布于各接收點的終端狀態,一旦接收終端Xchange檢測到主用專網的ASI信號出現中斷等故障后,立即向該節點發送直播流。
接收終端Xchange是一個檢測、分析ASI接口以及接收IP信號的跨平臺設備。Xchange內置TS流分析器,具有實時碼流監視功能,可記錄碼流同步丟失、同步字節和連續性計數錯誤。Xchange基本邏輯如圖2所示。

圖2 Xchange基本邏輯框圖
在設計中,Arm Core與FPGA Core之間有一段共享內存,用于ARM與FPGA之間進行高速的數據交互。IP In數據經過ARM接收后,發送到共享內存Memory B地址段上,FPGA將會從MemoryB地址上讀取數據并通過ASI OUT輸出;對于ASI IN數據通過FPGA送到共享內存Memory A地址段上,Arm會從共享地址Memory A上讀取到數據,再將讀取的數據送到共享內存Memory B上,由FPGA從共享內存Memory B上讀取并通過ASI OUT輸出。ASI數據流向為ASI IN→Memory A→Arm Core→Memory B→ASI OUT;IP數據流向為IP IN→Arm Core→Memory B→ASI OUT。此過程中,Arm可以監控ASI IN及IP IN是否有數據通過,以此判斷是否需要做切換。
在每個縣發射臺部署3臺終端設備(簡稱接收終端),分別接收省、市/州、縣平臺傳入的主路ASI信號,做24 h監測。在省、市/州平臺部署管理服務器,用于從公網備份取流;在縣平臺只需要對應一個發射臺,部署另一個接收終端用于公網備份取流。省平臺部署NMS服務器,所有接收終端和管理都會與NMS服務器通信,可以查看全省所有設備狀態并進行管理。
正常情況下,各終端接收有線網絡公司的專網信號,同時,備份信號源傳輸系統實時監控主用信號的工作狀態以及備份信號源傳輸系統承載互聯網的連接狀態。當檢測到主路斷流,接收終端向斷流的廣電平臺請求備路視頻流,備路視頻流通過公網以私有的可靠傳輸協議R2TP傳入對應接收終端。3路主路ASI信號和3路備路ASI信號共同進入具備1+1熱備份功能的復用器,在復用器中選擇當前存在的3個流復用生成MPTS給發射機激勵器。當主路ASI信號恢復,接收終端自動停止公網取流。整個備份信號源投入和退出過程都是自動進行的,無需值守人員參與。
備份信號源傳輸系統可用于由節目分發中心至多個接收點的信號傳輸系統的備份信號,以解決由于主用鏈路和設備故障導致主用信號中斷的應急保障;也可作為現場活動直播的信號備份,能夠大大提高網絡直播的安全性和可靠性;還可用于應急廣播等應用場景,在應急狀態下,可按照應急廣播發布區域要求對相應的區域發送應急信息內容,實現平戰結合的應急廣播目標。該系統可依據使用場景靈活調度,能夠簡化傳輸系統的環節,節約 成本。