摘 要:工業監控系統中,多通道視頻系統應用越來越廣泛,且其發展趨勢是當然是基于IP協議的互聯網視頻平臺,為此,必須解決基于IP協議棧的流信息傳輸與控制問題。本文重點介紹工業視頻多通道信息在IP網絡中的傳輸技術問題。在確保實時性的前提下,利用多隊列緩沖技術和控制策略,可以盡力控制流信息包丟失和QOS保障。
關鍵詞:工業監控系統;流信息包;時延檢測與控制
中圖分類號:TP273 文獻標識碼:A 文章編號:1674-7712 (2014) 14-0000-02
工業監控系統中,多通道視頻系統應用越來越廣泛,且其發展趨勢是當然是基于IP協議的互聯網視頻平臺,為此,必須解決基于IP協議棧的流信息傳輸與控制問題。工業控制要求實時、穩定和可靠,尤其是實時性是控制系統信息傳輸的關鍵,而對于IP網絡而言,時延最小化是工業系統通信的技術保證。目前視頻技術作為傳感器在工業監控中越來越廣泛,但是有些技術問題還有待解決[1]。本文重點介紹工業視頻多通道信息在IP網絡中的傳輸技術問題。在IP網絡中實時數據傳輸和服務質量保證是目前研究熱點,也是技術難點。IETF針對流信息傳輸與控制,制定了RTP/RTCP等協議,使得IP網絡在實際應用中具有一定的實時傳輸流信息的能力,由于IP網絡固有的分組交換能力,實現多通道流信息傳輸在理論上是可行的[2]。在確保實時性的前提下,利用多隊列緩沖技術和控制策略,可以盡力控制流信息包丟失和QOS保障。
一、RTP/RTCP及應用
RTP為實時傳輸協議,是IP網絡中實現多媒體數據流傳輸與控制的一種協議,在一對一或一對多的流媒體信息傳輸時提供時間信息和實現流同步。RTP多數情況下利用UDP協議傳送數據信息,也可以通過TCP或ATM等其他協議承載。應用進程通過RTP傳輸控制時常分配的端口包括:RTP、RTCP。RTP和RTCP配合使用,通過RTCP完成流信息包的順序控制、可靠性控制,以及流量控制或擁塞控制,RTP則通過UDP協議傳輸數據。
在實際軟件系統開發時,RTP協議實現與控制功能主要是在應用程序中實現的,多媒體流信息在傳輸過程中,各個通道(多通道)的端節點完成端到端流信息傳輸,期間周期性地傳送RTCP包。端節點根據接收到的數據,統計發送或丟失流信息包的情況,并通過RTP傳送到終端節點或服務器,以此信息,各個端節點可以及時調整通信流量和其他控制操作。
二、流信息傳輸網絡QoS
多通道流媒體傳輸網絡中,涉及到的Qos參數很多,這里作為為實時流信息服務時,重點應該考慮實時性、可控性以及多通道服務等指標,在實際設計時,兼顧用戶體驗和網絡動態變化情況,服務器或用戶端節點可以實時做調整。在線采集采集RTCP相關數據,以此來計算和監控QoS參數。發送端根據接收端反饋RTCP流信息包及內容,動態分析網絡狀態,發送端可以及時調整流信息發送窗口,達到控制流量的目的,還可以根據多信道和多隊列信息,以及視頻質量(如分辨率等)經過綜合分析后做調整和控制。
(一)流信息傳輸時延檢測與分析
假設流信息包發送端為Send,流信息接收端為Rec;Pcurrent為最近Rec接收到來自Send的流信息包,Trep為Rec接收到流信息包到Rec發送反饋信息給Send的反饋時間(這段時間主要用來處理相應的RTP/RTCP報文)。Rec還可以從Pcurrent中提取NTP協議的時間戳,得到最近Send發送的Pcurrent是時間戳Tse。
TD=T-Tse-Trep (1)
式中,T為Rec接收到流信息包的時刻,TD網絡傳輸延遲時間。利用網絡傳輸時間的監測可以預測網絡擁塞狀況和信息傳輸狀態,也可以大致估算網絡傳輸的距離。
(二)信息流包延時
假設J為信息流包到達延時,J逐步變大時,說明網絡擁塞可能發生;Send表示發送端流信息通過RTP發送時的時間戳,Rec表示接收端收到該流信息的時刻,對于兩個信息包i,j,則兩個流信息包之間的傳輸延時D為:
D=D(i,j)-(Ri-Rj)-(Sj-Si)=(Rj-Sj)-(Ri-Si) (2)
到達延時J是連續計算的,每收到從源端發來的流信息包i后計算與其到達順序最近的i-1之間的延時差值D,從而有:
J(i)=J(i-1)+(|D(i-1,i)|-J(i-1))/w (3)
式中w為衰減系數。
(三)流信息丟包率分析
因為流信息主要是UDP協議承載,包丟失在所難免,且為了保持相對同步和實時性,發生擁塞時,必須對最老的數據遺棄。為便于描述,設lr為丟包率,Rex為期望得到的流信息包,假設在某時間t之前用戶端接收到RTP流信息包最小的序列號,設為Smin,并設最大序列號為Smax,則發送端發送流信息包所期望得到的信息流包Rex的數量為:
Rex=Smax-Smin (4)
設在某段時間t接收到的RTP流信息包總數為M、累計丟失的流信息包為Rre,則:
Rlost=Rex-Rre (5)
由式(4,5)可得流信息丟包率為
lr=Rlost/Rex (6)
對于接收端,丟失的流信息包也對時延有影響,所以,Rre在統計是可能包含了延遲到達的和重復到達的流信息包,計算是,Rlost可能會出現負值,在參與其他運算時,可以假設為0。
三、多隊列流信息控制策略
為實現多信道緩沖,針對各個多任務節點,有必要建立相應的隊列管理策略[3],利用上文的計算方法,可以推算出流信息包時延和丟包率等QoS參數,為隊列緩沖區長度計算、擁塞控制和流量控制策略提供反饋數據依據;也為隊列中滯留的流信息數據包處理提供了參考依據,目的是利用這些技術和數據為系統服務QoS提供保障。
(一)緩沖區隊列管理
工業監控系統中,客戶端要正確、實時播放來自流信息網絡的視頻信息,尤其是多視頻信道的傳輸,建立一定數量的緩沖區是必須的,這些緩沖區隊列主要用來應對流信息包的丟失和失序,合理配置對系統性能影響很大,如果容量太小,隊列容易滿,尤其是多信道響應時,這樣,隊列擁塞難以避免,緩解的辦法只有遺棄先進到隊列的流信息包;如果容量太大,顯然會造成資源浪費,且接收端流信息播放時會感到時延明顯,實時性和系統性能受到影響,為此,引入一個合理的估算緩沖區長度的模型:
Lbuffer=n*Xmean*Tjitter
式中,n為經驗系數;Xmean為平均流信息傳輸速率;Tjitter為流信息傳輸時延。
(二)狀態信息監測
基于互聯網平臺的工業監控系統在實際應用中,不可避免的一個問題時在IP協議,他是一種盡力而為的網絡技術,本身沒有QoS保證機制,所以,只有在應用層,設計一個端到端的控制機制,用戶端可以周期性地利用RTCP協議向流信息包提供端發送接收者報告RR(Receiver Report),及時將檢測信息、時延以及丟包率等狀態參數反饋給流信息包提供者,流信息提供者可以利用這些狀態信息,管理緩沖區隊列,并及時控制和避免擁塞,可以有效提供流媒體信息播放質量。
(三)主動丟棄控制
多隊列緩沖區中,無論哪個隊列發生緊急狀況,通信系統的每個環節(如路由器,代理服務器等)都可以當緩沖區檢測值超過上溢閾值時完成以下動作:狀態反饋和采取應急措施主動丟棄先進隊列的流信息包,這樣做的目的是保證系統正常工作,盡管有信息報丟失,但是不影響系統的實時性,也不影響其他隊列的正常工作,可以節約緩沖區資源,提高系統效率。
建立一種多緩沖區的流信息包主動隊列管理機制,通過傳輸網絡中間節點,實現信息包主動丟棄排隊時間長的包,可以做到排隊延時較低和有效吞吐量較高。已有的大多數算法在判定分組丟棄時大都沿襲了RED的概率丟棄機制,具有一定計算復雜度的隨機數生成過程不利于路由器性能的優化。可以引入模糊邏輯設計技術,完成智能分組丟棄機制,合成推理使和流信息包丟棄的判定規則,實現是簡單查表操作和比較運算即可完成,為優化路由器的性能提供了便利。以此方法設計的隊列管理機制表現出控制隊列的能力強,魯棒性好,穩定工作域大,能很好地抵抗突發性和非彈性業務的干擾,適合工作在瞬息萬變的動態網絡環境中。
四、結束語
多通道工業監控系統,主要是視頻流信息,在互聯網平臺上傳輸,成本低,實現簡單,但是控制復雜,難以保證QoS。本文提出基于流信息傳輸控制的方法旨在通過對流信息提供者在端節點對接收者反饋的主要信息與丟包率、時延等進行統計分析,可以根據網絡狀況調整緩沖區隊列信息,達到控制發送速率的目的,以此來提高網絡通信效率及流信息的傳輸質量。
參考文獻:
[1]黃鶴,韓笑冬,王執銓.有時延和數據包丟失的網絡控制系統故障檢測[J].南京理工大學學報(自然科學版),2008(04).
[2]汪學舜,余少華,戴錦友.基于累積時延的流媒體傳輸模糊擁塞控制[J].計算機科學,2010(07).
[3]陳瀟,周建國,晏蒲柳.支持流類型優先級處理的主動隊列管理機制[J].計算機工程,2005(07).
[作者簡介]王銀(1984.11-),男,助理工程師,2008年畢業于西安工業大學環境工程專業,主要研究方向:城市生活污水處理、計算機在污水處理中的應用、信息管理等。