?

實時視頻傳輸的代理服務器技術

2009-10-19 09:07
新媒體研究 2009年17期

秦 超

[摘要]網絡實時視頻系統一般分為4大模塊:采集系統、壓縮編碼系統、傳輸控制系統和輸出系統。其中傳輸控制系統是實時視頻流的一項關鍵核心技術。設計一個網絡實時視頻傳輸控制系統,分析代理服務器的運行原理,并針對CBR和VBR兩種傳輸方法說明緩存的控制機制。

[關鍵詞]實時視頻流 傳輸控制 代理服務器

中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0910023-01

一、引言

網絡視頻給人們的學習、生活帶來了極大的便利,實時視頻流傳輸技術應運而生。網絡實時視頻系統一般分為4大模塊:采集系統、壓縮編碼系統、傳輸控制系統和輸出系統。其中傳輸控制系統是實時視頻流的一項關鍵核心技術。視頻流傳輸所需的資源包括:中央服務器存儲空間和存儲系統的I/O存取能力帶寬;帶寬管理是視頻流傳輸控制的一個重點。如何使有限的帶寬資源更好的分配,是決定視頻播放是否流暢的關鍵;另外,各種視頻壓縮技術也廣泛應用于流媒體傳輸,大大減少了有效數據的傳輸數量。

二、實時視頻傳輸系統

一般視頻流媒體系統的基本組成部分包括:存儲視頻庫的中央服務器,流傳輸網絡,一組客戶端,如圖1所示。

傳統的視頻流媒體系統是基于客戶-服務器模式的,客戶端向服務器發出請求,視頻服務器根據其要求,訪問數據庫并傳送視頻幀到用戶端,這種系統被稱為視頻點播服務。

我們將要構建的是一個實時視頻傳輸系統??蛻舳酥苯訌拇矸掌鳙@取視頻,從而避免直接從廣域網傳輸,代理服務器可以緩存視頻數據,這樣可以降低對中心服務器的I/ O存取能力和網絡帶寬的負荷。另外,代理服務器和客戶端之間的通常有豐富的低成本的帶寬資源,提供了良好的可擴展能力。

流共享技術主要應用于服務器端資源管理。一次傳送一個視頻流到多個客戶端,而不是分別傳輸多個視頻流到多個客戶端,這種方式大大提高了系統的性能。對服務器資源的要求減少,相應的對客戶端資源需求增加??蛻舳私邮諗祿r,前面接收到的幀存儲在磁盤上,緩沖供日后使用,這樣一個過程,需要一定的存儲空間和I/O讀寫能力??蛻舳诉€可以同時接收多個視頻片段,這樣就進一步增加了客戶端的帶寬要求。流共享技術還降低了帶寬的占用,如果多個請求客戶端之間的位置接近,那么這種對帶寬占用的降低將自動產生。另一方面用于視頻流分裂的組播機制中,分裂點應盡量遠離服務器,以達到盡量減少服務器段帶寬占用的目的。

三、視頻傳輸控制

在上一部分提到的視頻實施傳輸模型中添加一個輔助服務器作為代理服務器,擴展模型的視頻流媒體系統如圖2。

代理服務器位于中央服務器和客戶端的網絡路徑中靠近客戶端的位置,將服務器和客戶端之間的網絡路徑分隔成兩個部分,前一部分屬于廣域網,成本相對較高,后一部分屬于本地網絡,其特點是豐富的網絡和低成本的帶寬。此外,后者傳輸速度快,與代理服務器和中央服務器件的網絡延遲相比,代理服務器和客戶端之間的網絡延遲是微不足道的。通常代理服務器與相近的多個客戶群體相連,這樣的群體被稱為客戶組。

代理服務器的主要功能之一是緩存全部或部分視頻。當視頻被訪問時,客戶端接收存儲于代理服務器中的部分視頻,同時向中央服務器請求其余部分,代理服務器還可以作為接收后一部分視頻的中間件來緩存來自中央服務器的數據。

代理服務器所需的資源包括:存儲空間和存取緩存數據的I/O帶寬。代理提供服務的客戶數量和視頻數量通常遠小于中央服務器的總客戶數量和視頻量,因此,代理服務器是存儲資源有限并且成本較低的服務器,它可能無法緩存客戶想要訪問的全部影片。解決這一問題的方法,一種是存儲視頻片斷,代理服務器根據當地用戶的請求數據選擇緩存哪些視頻,即對某一視頻的請求數越多,代理服務器緩存這一視頻的可能性和數據量越大。由于視頻存儲往往需要大量空間,因此如果不加選擇的緩存視頻,可能造成緩存空間的大量浪費。只緩存視頻的初始部分可以減少啟動延遲,而緩存整個視頻可以平滑傳輸率。另外,還要考慮到代理服務器I/O存取能力的限制。

(一)帶寬平滑的VBR(Variable Bit rate)視頻傳輸。代理緩存可以減少廣域網帶寬消耗,不僅減少通過廣域網傳輸的數據量,而且還有助于平滑帶寬。壓縮視頻的特點是幀大小變異率高,這一變化可以利用緩存技術降低。在[4]中,根據固定閾值緩存幀,如果幀小于閾值,整個幀將從中央服務器下載,否則視頻幀的一部分從中央服務器下載,而閾值和實際幀大小之間的部分將緩存于代理服務器。這樣的方法可以減少傳輸中峰值出現的頻率。

(二)視頻的CBR(Constants Bit Rate)傳輸。VBR視頻以固定速率傳輸,傳輸速率必須足夠高才可確保每一幀都能及時的傳輸,在這種情況下,緩沖空間用來補充傳輸速率和播放速率之間的差異。CBR傳輸中,對某一特定傳輸速率,代理緩存機制可以減少對存儲空間的需求。此時選定的緩存幀會分布于整個視頻,客戶端收到代理服務器發送的緩存幀然后播放,其余幀通過中央服務器利用CBR發送到客戶端。這里有一種減少緩沖區的方法:只緩存較大的幀。在[5]中,選擇緩存的幀的方式為客戶端的緩沖區設定閾值,超過這個閾值的幀將被緩存。

代理緩存也可以解決基于CBR的傳輸序列問題。由于客戶端緩沖區空間大小不同,有時緩沖空間很低并可能達到緩沖底。當客戶端達到緩沖底時,會發生某些視頻幀延遲或停止,緩存機制可以減少系統的這種脆弱性。這種方法在[2]中提出,如果客戶端資源有限,增加客戶端的存儲空間,并暫停該緩沖服務器的傳輸。

四、總結

在實時視頻傳輸中,本文基于視頻廣播技術,使用了代理服務器技術和傳輸控制的幾種方法,在解決視頻傳輸的數據延遲,帶寬平滑等方面有很好的效果。實時視頻傳輸協議是我們未來研究的方向。

參考文獻:

[1]W.Ma and D.H.C.Du.Design a progressive video caching policy for video proxy server.In IEEE Transactions of Multimedia,To appear.

[2]范新南、邢超,基于Internet的端到端視頻傳輸技術研究,計算機工程[J].2007年03期.

作者簡介:

秦超(1982-),男,山東日照人,四川大學電子信息學院圖像信息研究所電路與系統專業,在讀研究生,主要研究方向為:圖像處理。

91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合