一種適用于IP視頻會議的混合式組播技術研究
ip視頻會議是利用視頻技術和ip數(shù)據(jù)通信技術通過ip網絡在兩點或多點之間建立可視通信,實現(xiàn)圖像、語音及數(shù)據(jù)交流的一種會議形式。ip視頻會議系統(tǒng)因其效率高、成本低、業(yè)務提供方式靈活等優(yōu)勢將代替?zhèn)鹘y(tǒng)的基于電路交換的視頻會議系統(tǒng)。然而要解決視音頻數(shù)據(jù)在ip網絡上實時傳輸?shù)膯栴},并為視頻會議系統(tǒng)提供一定的qos是一個技術難題,也是目前的研究熱點。
本文把ip組播與應用層組播結合起來并采用分層排列圖結構,提出了一種適用于ip視頻會議的混合式組播方式——基于分層排列圖的混合式組播。
1 混合式組播
1.1 問題的提出
ip視頻會議屬于傳輸數(shù)據(jù)量大、對帶寬要求高的服務,為實現(xiàn)它的即時通信和互動溝通功能必須保證音視頻等數(shù)據(jù)在ip網絡上的實時傳輸。ip組播技術能夠有效地解決多點對多點數(shù)據(jù)通信的網絡帶寬問題。相對于單播和廣播方式來說,它能顯著節(jié)省網絡帶寬,提高數(shù)據(jù)傳輸?shù)男?同時提高服務的質量,因而它較適合于ip視頻會議系統(tǒng)。當前最流行的ip視頻會議標準h.323就采用了ip組播技術。然而,由于技術、市場、需求等原因,ip組播并沒有在internet上得到廣泛應用[1],使得目前只有少數(shù)用戶在局域范圍(稱為ip組播島)內可以使用
ip 組播技術。因此基于ip組播技術的視頻會議只能在這些相互孤立的組播島上進行,與會成員受到很大的限制。
正是因為ip組播未能在internet上廣泛應用,近年來人們提出了十幾種應用層組播方案,其中適用于ip視頻會議的系統(tǒng)有narada[2]和almi[3]。narada只能應用于與會成員很少的情況。almi中,當有多人發(fā)言時易形成網絡瓶頸,故在一定程度上限制了視頻會議的規(guī)模。
相對于應用層組播來說,ip組播能更多地節(jié)約網絡帶寬[4]、可靠性更好且數(shù)據(jù)轉發(fā)速率更高。而相對于ip組播來說,應用層組播與現(xiàn)今網絡結構相符合,使用時不需變動現(xiàn)有的網絡協(xié)議與硬件,部署相對容易,同時具有較好的擴展性,可以適應網絡條件的動態(tài)變化。它已成為目前最可能解決ip組播中的路由器瓶頸問題的方案。為了在ip視頻會議中充分利用應用層組播和ip組播的優(yōu)勢,在此把二者結合起來,稱為混合式組播。本文以后所提到的混合式組播均以ip視頻會議這種特殊應用場合為例。
1.2 拓撲結構
在采用混合式組播的ip視頻會議中,與會成員組成如圖1所示的拓撲結構。在每個ip組播島內,與會成員之間的數(shù)據(jù)傳輸使用ip組播,并選定一個與會成員作指定成員(designate
member,dm),把島內除dm外的與會成員稱為其他成員(pertinent member,pm),dm是島內成員與島外成員之間通信的橋梁。島外成員與dm參加應用層組播疊加網[5](包括一個控制拓撲和一個數(shù)據(jù)拓撲)的構建,將其稱為應用層組播成員(alm
member,am),am之間的數(shù)據(jù)傳輸使用應用層組播。ip組播島中pm通過dm與疊加網相連,dm與島外成員之間的數(shù)據(jù)傳輸采用應用層組播方式,與島內的成員之間的數(shù)據(jù)傳輸使用ip組播的方式。dm負責將來自疊加網的數(shù)據(jù)以ip組播方式傳送給組播島中pm,pm的數(shù)據(jù)也通過ip組播方式傳送到dm,由dm以應用層組播的方式發(fā)送給疊加網上的其他與會成員。
dm的選取原則:島中第一個參加會議的成員被設為dm,以后可以根據(jù)某種策略(如參加會議的時間最長者或物理位置“中心”點成員,或剩余帶寬資源最多者等)選定某個成員作為dm。如果dm離開,則根據(jù)某種策略從島內的pm中選擇一個作dm。
圖1 混合式組播拓撲結構圖
2 基于分層排列圖的混合式組播
2.1 控制拓撲構建
在數(shù)學上,(n,k)維排列圖[6](用an,k表示,其中n和k是自然數(shù),1≤k≤n-1。令表示集合{1,2,……n}中k個符號的排列,an,k定義為無向圖(v,e),其中:
一個排列圖實例a4,2的拓撲結構如圖2所示。排列圖an,2僅能容納n(n-1)個主機。為使系統(tǒng)可容納任意多主機,可將參與主機組合成多個an,2結構,這些an,2按照樹形結構連接在一起,稱為分層排列圖結構[6]。
圖2 排列圖a4,2的拓撲結構圖
圖3 以與會主機為單位的拓撲結構圖
圖4 以排列圖
混合式組播的核心任務是為am完成拓撲(包括數(shù)據(jù)拓撲和控制拓撲)的構建。由于網絡狀況的動態(tài)性,以及客戶端數(shù)量與客戶端加入系統(tǒng)時間的不確定性,當前的應用層組播方案一般需要每個結點定期與其他全部或一定比例的結點交換控制信息,以了解其他結點的狀態(tài),形成控制拓撲,保障數(shù)據(jù)拓撲的健壯性。在結點個數(shù)逐漸增加時,網絡上的控制信息數(shù)量會占用大量的帶寬資源。應用層組播的數(shù)據(jù)拓撲可分為二大類:信源樹和共享樹。信源樹必須為每個組播源保存路由信息,這樣會占用大量的系統(tǒng)資源。共享樹傳輸延時較大。ip視頻會議系統(tǒng)屬于實時交互應用,視音頻數(shù)據(jù)占據(jù)很大的帶寬,并且對端到端傳輸延遲和網絡抖動的要求很高,需要尋找一種既可以減少交換控制信息又可以保證視音頻數(shù)據(jù)實時傳輸?shù)耐負錁嫿ǚ绞健槔门帕袌D的優(yōu)越特性(如結點和邊的對稱性、故障恢復能力和容錯能力、可以嵌入獨立的組播樹等),這里采用分層排列圖的結構來組織混合式組播中的am。
本文先按照文獻[6]中的協(xié)議設計方法把參與ip視頻會議所有主機中的am組織成分層排列圖結構,作為混合式組播的控制拓撲,并在主機申請加入會議時根據(jù)其帶寬處理能力和一定的算法規(guī)定它的入度最大值和出度最大值,它們分別也是剩余入度和剩余出度的初始值。每個分層排列圖都對應一棵以排列圖為結點單位的樹。如圖3所示的以與會主機為單位的拓撲結構是一個由3個a4,2結構(ag1、ag2和ag3)所組成的分層排列圖。圖3也可以看作如圖4所示的以排列圖為單位的樹結構,即以排列圖ag2為根、以ag1和ag3為葉子的一棵樹狀拓撲。設在分層排列圖中,父排列圖agi中的結點i1和i2分別是子排列圖agj的數(shù)據(jù)源結點和備用數(shù)據(jù)源結點,agj中的結點j1和j2分別是i1和i2對應的根結點,則在樹拓撲中父排列圖agi與子排列圖agj的連線實際上包括2條:(1)i1與j1之間的連線;(2)i2與j2之間的連線。圖4中父排列圖ag2與其子排列圖ag1之間的連線有2條:(1)圖3中ag2的a14與ag1的a31之間的連線;(2)圖3
中ag2的a24與ag1的a41之間的連線。各排列圖之間的連線在混合式組播中并不一定作為數(shù)據(jù)傳輸路徑。
2.2 數(shù)據(jù)拓撲構建
基于分層排列圖的混合式組播的控制拓撲是分層排列圖,其數(shù)據(jù)拓撲在此基礎上構建,具體算法如下:
設某排列圖中的與會成員主機ai,j發(fā)言,首先把分層排列圖對應的樹結構轉換為以ai,j所在的排列圖為根的樹結構,然后執(zhí)行步驟(1)~(2)。
把ai,j所處的排列圖作為當前排列圖,在當前排列圖中用文獻[6]中的算法生成以ai,j為根的組播樹,并修改當前排列圖中所有結點的剩余入度值和剩余出度值。
(1)為當前排列圖的所有子排列圖選擇數(shù)據(jù)源、備用數(shù)據(jù)源和根結點(為描述方便起見,這里分別把它們記為s1、s2和r)。為某個子排列圖選擇數(shù)據(jù)源s1、備用數(shù)據(jù)源s2和根結點r的算法如下:
①令與會成員主機結點子集a={am,n|am,n屬于當前排列圖,ai,j與am,n相鄰接并且am,n的剩余出度值大于0}。
·若|a|>1,則在a中選擇剩余出度值最大者作為數(shù)據(jù)源s1,次大者作為備用數(shù)據(jù)源s2,此時一定可以選取合適的根結點使得組播樹獨立。
·若|a|=0,則選擇在當前排列圖中選擇最大剩余出度結點作為數(shù)據(jù)源s1,次大者作為備用數(shù)據(jù)源s2。
·若|a|=1,則選擇a中的結點作為數(shù)據(jù)源s1,選擇當前排列圖中其他成員中最大剩余出度結點作為備用數(shù)據(jù)源s2。
②s1和s2的剩余出度值分別減1。
③在此子排列圖中先后選取數(shù)據(jù)源s1對應的根結點r,并把選出的根結點的剩余入度值減1。當s1不能正常工作或失效時,s2作為r的數(shù)據(jù)源結點。選取根結點時既要考慮結點的剩余出度值和剩余入度值,又要注意盡量保證組播樹的獨立性。如果能保證組播樹獨立性的結點的剩余入度值全為零,則選取子排列圖中的剩余入度值最大者。
④在此子排列圖內根據(jù)文獻[6]中的算法生成以r為根的組播樹,并修改相應結點的剩余出度值和剩余入度值。
(2)如果還有再下一級的子排列圖,則令ai,j=當前排列圖的相應子排列圖的根結點的r,轉(1);否則,結束。
圖3給出了ag1中的a31和ag2中的a41發(fā)言時根據(jù)以上算法為實現(xiàn)應用層組播建立的組播樹,分別以虛線和實線表示。在ag1、ag2和ag3中分別由三個dm(a34、a42、a41)作為ip組播島的數(shù)據(jù)源結點,組播島內的ip組播樹分別以它們?yōu)楦?由它們傳輸?shù)絠p組播島中的pm。ip組播島中對應的ip組播樹在圖3中沒有畫出。
2.3 性能分析
與當前其他的應用層組播相比,在ip視頻會議中采用基于分層排列圖的混合式組播技術,有以下優(yōu)點:
(1)增強了系統(tǒng)的可擴展性。系統(tǒng)只需維護樹形式的分層排列圖即可,它就是應用層組播的控制拓撲,由它生成數(shù)據(jù)拓撲。ip組播島內的數(shù)據(jù)傳輸由ip組播技術實現(xiàn),系統(tǒng)只需選定dm,由dm來作為島內成員與島外成員之間通信的橋梁??刂菩畔?shù)量大大減少,節(jié)約了網絡帶寬,使更多的用戶可以加入會議。
(2)提高了系統(tǒng)的容錯能力,減少了網絡抖動。由于在an,2中可以建立n-2個獨立的組播樹,在用戶帶寬資源足夠豐富的情況下只要發(fā)言用戶數(shù)≤n-2就可以保證組播樹的獨立,使得每個用戶只在最多一棵組播樹上作為中間結點。這樣一個用戶出現(xiàn)故障最多影響一個組播樹中的數(shù)據(jù)傳輸。分層排列圖的這一性質使基于分層排列圖的混合式組播能提高視頻會議系統(tǒng)的容錯能力,減少數(shù)據(jù)傳輸過程中的網絡抖動。
(3)縮短了用戶加入會議的時間。由于am組織為分層排列圖結構,ip組播島外的用戶加入會議的復雜度為o(log(n)),其中n表示ip視頻會議系統(tǒng)中am數(shù)目。組播島內的用戶加入更簡單,它不需要了解島外am的任何信息就可以加入它所屬的ip組播島,通過該島上的dm與島外與會成員傳輸數(shù)據(jù),因而一個申請加入會議的主機可迅速地完成加入過程。
本文為ip視頻會議系統(tǒng)提供了一種簡單、可靠的混合式組播方案。一方面能充分利用參與會議的主機資源,使系統(tǒng)能支持更多的用戶參加會議,另一方面也為視頻會議系統(tǒng)中視音頻數(shù)據(jù)在internet上的實時傳輸提供較好服務質量保障。
評論