《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信与网络 > 设计应用 > 基于Spines覆盖网络的流媒体并行传输研究
基于Spines覆盖网络的流媒体并行传输研究
来源:微型机与应用2011年第7期
李瑞睿,周 熙,郑相全,叶久志
(重庆通信学院,重庆 400035)
摘要: 以Spines覆盖网络通用平台为基础,对流媒体数据多流并行传输的相关问题进行了研究。简要介绍了Spines网络,根据流媒体实时并行传输的要求,对Spines网络中的相关协议进行了改进,并引入了具有QoS保证的覆盖网络多路路由策略、DHT技术及LEACH协议。
Abstract:
Key words :

摘  要:Spines覆蓋網(wǎng)絡(luò)通用平臺為基礎(chǔ),對流媒體數(shù)據(jù)多流并行傳輸的相關(guān)問題進(jìn)行了研究。簡要介紹了Spines網(wǎng)絡(luò),根據(jù)流媒體實(shí)時并行傳輸?shù)囊?,對Spines網(wǎng)絡(luò)中的相關(guān)協(xié)議進(jìn)行了改進(jìn),并引入了具有QoS保證的覆蓋網(wǎng)絡(luò)多路路由策略、DHT技術(shù)及LEACH協(xié)議。
關(guān)鍵詞: Spines覆蓋網(wǎng)絡(luò);流媒體;并行傳輸;QoS多路路由;DHT;LEACH協(xié)議

 隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,流媒體技術(shù)(Streaming Media)日益成熟并普及。如今,流媒體技術(shù)被廣泛用于視頻點(diǎn)播、視頻直播和實(shí)時視頻會議等實(shí)時服務(wù)領(lǐng)域,為網(wǎng)絡(luò)的發(fā)展注入了新的活力。但流媒體用戶的急劇增加及其種類繁多的應(yīng)用形式,給現(xiàn)有的網(wǎng)絡(luò)資源也帶來了極大的負(fù)擔(dān)。同時,通用覆蓋網(wǎng)絡(luò)概念的提出,使覆蓋網(wǎng)絡(luò)不再僅針對一項(xiàng)特定的應(yīng)用。根據(jù)服務(wù)要求,利用通用覆蓋網(wǎng)絡(luò)提供的一項(xiàng)或幾項(xiàng)性能保證,并以此為基礎(chǔ)進(jìn)行平臺擴(kuò)展,可適應(yīng)特定的某項(xiàng)應(yīng)用。Spines是目前較常用的一種通用覆蓋網(wǎng)絡(luò)平臺,可支持有較高QoS要求的實(shí)時流媒體服務(wù)。因此,本文選擇在Spines覆蓋網(wǎng)絡(luò)上對流媒體的多流并行傳輸進(jìn)行研究。
1 Spines覆蓋網(wǎng)絡(luò)[1]
 Spines是一種源代碼公開的通用覆蓋網(wǎng)絡(luò),由約翰-霍普金斯大學(xué)的分布式網(wǎng)絡(luò)實(shí)驗(yàn)室開發(fā),常被用于覆蓋網(wǎng)絡(luò)協(xié)議的測試和開發(fā)。
1.1 Spines軟件結(jié)構(gòu)
 Spines覆蓋網(wǎng)絡(luò)的每一個Spines節(jié)點(diǎn)由Spines覆蓋網(wǎng)絡(luò)的一個覆蓋節(jié)點(diǎn)與一個Spines的Daemon軟件構(gòu)成。它的結(jié)構(gòu)分為用戶層和覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)層兩個功能層層次,在每項(xiàng)應(yīng)用中具體表現(xiàn)為:會話層、覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)層和覆蓋鏈路層,如圖1所示。

 

 

 會話層是覆蓋網(wǎng)絡(luò)上的應(yīng)用程序接口,Spines會話層為用戶應(yīng)用提供了應(yīng)用程序接口。用戶通過連接到Daemon進(jìn)行會話建立,如果需要與其他的用戶進(jìn)行端到端的可靠通信,Daemon就會初始化端到端的會話模塊,并由TCP提供可靠連接。當(dāng)用戶要求進(jìn)行盡力而為的通信時,數(shù)據(jù)利用UDP傳輸,而控制信息仍通過TCP來傳輸。因此,Spines可利用會話模塊管理兩個終端應(yīng)用之間數(shù)據(jù)的輸入輸出次序、端到端擁塞控制和流擁塞控制,以降低丟包率,提供端到端的可靠通信。
 覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)層則主要用于鏈路資源和網(wǎng)絡(luò)拓?fù)涞墓芾恚瑢?shí)現(xiàn)應(yīng)用層數(shù)據(jù)的路由轉(zhuǎn)發(fā)。每個覆蓋節(jié)點(diǎn)負(fù)責(zé)保證與鄰居節(jié)點(diǎn)的連接,各鄰居節(jié)點(diǎn)間通過不可靠Hell包,定期互相發(fā)送Ping消息來檢測彼此間的連接情況。Hello協(xié)議為Spines相鄰Daemon之間提供了創(chuàng)建、銷毀、檢測虛擬鏈路和測量鏈路的延時特性。同時,覆蓋節(jié)點(diǎn)則需通過虛擬鏈路前向傳輸數(shù)據(jù)包或是傳送信息給其自己的客戶。而Spines虛擬鏈路上的每一個數(shù)據(jù)前向轉(zhuǎn)發(fā)器(Data-Forworder)都會解析消息頭,然后把它傳向下一個鏈路或傳給Daemon接口。為了實(shí)現(xiàn)不同的前向數(shù)據(jù)傳輸機(jī)制,Data-Forworder允許可靠會話和盡力而為會話。
 而覆蓋鏈路層是建立在IP網(wǎng)絡(luò)基礎(chǔ)上,通過UDP連接,可實(shí)現(xiàn)盡力而為數(shù)據(jù)鏈路、可靠數(shù)據(jù)鏈路、實(shí)時數(shù)據(jù)鏈路和控制鏈路四種虛擬鏈路。節(jié)點(diǎn)之間通過虛擬鏈路建立連接和發(fā)送數(shù)據(jù)。由于Data Forworder支持實(shí)時鏈路、可靠鏈路或不可靠鏈路之間的任意結(jié)合使用,用戶可根據(jù)具體的應(yīng)用需求,選擇更合適的鏈路傳輸數(shù)據(jù)。
1.2 Spines主要協(xié)議
 (1)逐跳傳輸協(xié)議
 Spines采用了逐跳傳輸協(xié)議,通過逐跳傳輸?shù)姆绞綄?shí)現(xiàn)逐跳的擁塞控制和丟包恢復(fù),為Spines覆蓋鏈路提供數(shù)據(jù)的可靠傳輸。由于使用存儲轉(zhuǎn)發(fā)的方式,特別在網(wǎng)絡(luò)狀況較差的情況下,當(dāng)發(fā)生丟包時無需從發(fā)送端重傳便能實(shí)現(xiàn)丟包恢復(fù),較好地改進(jìn)了傳輸性能。因此,可通過覆蓋網(wǎng)絡(luò)節(jié)點(diǎn)檢測丟包,并執(zhí)行重發(fā),與端到端傳輸相比,具有較小的傳輸時延,減少了覆蓋路由的開銷,提高了鏈路的吞吐量。
 (2)實(shí)時恢復(fù)協(xié)議
 Spines的實(shí)時恢復(fù)協(xié)議則進(jìn)一步改善了實(shí)時傳輸?shù)臅r延、丟包率和吞吐量等性能,可以支持對QoS有較高要求的實(shí)時多媒體業(yè)務(wù),如VoIP、視頻會議等。
 (3)Spines多播
 Spines結(jié)合IP多播的優(yōu)點(diǎn),實(shí)現(xiàn)了覆蓋多播。Spines多播支持同時有多個發(fā)送者和多個接收者的多播服務(wù),并支持多個多播組。它使用D類的IP地址來定義一個多播組,當(dāng)發(fā)送數(shù)據(jù)到某個多播組時,代表多播組地址作為目的地址。
 (4)Hello協(xié)議
Hello協(xié)議實(shí)現(xiàn)的功能主要有:通過類似TCP連接的“三次握手”機(jī)制,建立、拆除、檢測Spines覆蓋網(wǎng)絡(luò)中鄰居節(jié)點(diǎn)之間的連接;通過頻率性的發(fā)送Hello包,測量鄰居節(jié)點(diǎn)間鏈路的往返時間;根據(jù)Hello包所攜帶的丟包信息,計算鏈路的丟包率;使用Hello協(xié)議來更新路由代價。
 (5)State Flood協(xié)議
 State Flood協(xié)議可實(shí)現(xiàn)Spines網(wǎng)絡(luò)拓?fù)浼岸嗖バ畔⒌母?,采?ldquo;洪泛”的方式來向整個網(wǎng)絡(luò)傳播拓?fù)浣Y(jié)構(gòu)信息(Link State)和多播組信息(Grou Pstate)。
1.3 Spines優(yōu)缺點(diǎn)分析
 (1)Spines優(yōu)點(diǎn)
 Spines的主要協(xié)議使其可以支持有較高QoS要求的實(shí)時流媒體業(yè)務(wù),如VoIP和實(shí)時視頻會議等。因此可將其作為通用覆蓋網(wǎng)絡(luò)平臺,研究用于流媒體服務(wù)的覆蓋網(wǎng)絡(luò)性能、QoS路由及多流并行技術(shù)等。Spines與流媒體技術(shù)、QoS路由、多流并行傳輸技術(shù)結(jié)合,可提供質(zhì)量更好的實(shí)時流媒體服務(wù)。
 (2)Spines缺點(diǎn)
 由于每個Daemon連接不同數(shù)量的應(yīng)用,且每個應(yīng)用從Daemon中獲取務(wù)的要求也不同,引起Spines的負(fù)載不均衡問題。而Daemon之間采用的“洪泛”服務(wù)查詢機(jī)制,當(dāng)Daemon較多時,會產(chǎn)生網(wǎng)絡(luò)擁塞問題。且當(dāng)某一Daemon因故退出網(wǎng)絡(luò)時,在它之間獲取服務(wù)的應(yīng)用所需要的服務(wù)并不能被其他Daemon發(fā)現(xiàn),使Spines網(wǎng)絡(luò)不能支持網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)動態(tài)變化的問題。
 目前要在Internet上傳輸流媒體數(shù)據(jù),首先必須解決的三個最重要的問題包括:網(wǎng)絡(luò)帶寬的供不應(yīng)求問題、流媒體數(shù)據(jù)的實(shí)時傳輸問題及多媒體數(shù)據(jù)流的強(qiáng)突發(fā)性問題。針對這些問題,結(jié)合Spines覆蓋網(wǎng)絡(luò)的優(yōu)缺點(diǎn),下面分別介紹基于Spines覆蓋網(wǎng)絡(luò)的流媒體多路路由方案及其改進(jìn)方案。
2 基于Spines覆蓋網(wǎng)絡(luò)的流媒體多路路由方案
 多路路由能有效利用物理網(wǎng)絡(luò)資源,尋找源與目的端之間的多條路徑,使數(shù)據(jù)遵循一定的策略在網(wǎng)絡(luò)中傳輸。所以基于流媒體服務(wù)的覆蓋網(wǎng)絡(luò)采用多路路由方案可以整合不同網(wǎng)絡(luò)信道上的剩余帶寬,使流媒體數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)馁|(zhì)量最大化,并提供比單路徑路由更高的速率來傳輸數(shù)據(jù),同時保證網(wǎng)絡(luò)性能的穩(wěn)定。近年來,國內(nèi)外對覆蓋網(wǎng)絡(luò)及流媒體多路路由的研究逐漸向多元性、復(fù)雜性方向發(fā)展。
2.1 覆蓋網(wǎng)絡(luò)及流媒體多路由研究現(xiàn)狀
 參考文獻(xiàn)[2]提出了利用多路徑代替單路徑的方法提高覆蓋網(wǎng)絡(luò)QoS性能;參考文獻(xiàn)[3]提出了提高覆蓋網(wǎng)絡(luò)多路徑路由吞吐量的方法;參考文獻(xiàn)[4]分析了多路徑路由的多路徑相關(guān)性,提出了提高網(wǎng)絡(luò)QoS應(yīng)注意的幾個問題,并以網(wǎng)絡(luò)SNR(Signal to Noise Ratio)為例提出了優(yōu)化方法;參考文獻(xiàn)[5]提出了如何使用多網(wǎng)絡(luò)路徑,利用合成帶寬尋找最好的路徑,從而提高媒體流可靠性的方法。而目前,對流媒體多路路由算法的研究主要有:MDC[6-7]、FGS[8]、MIRO[9]和一種新的覆蓋網(wǎng)絡(luò)視頻流多路選擇方案[10]等,但這些方案都沒有綜合考慮多路路由時路徑之間的相關(guān)性問題。
2.2 基于Spines覆蓋網(wǎng)絡(luò)的流媒體多路路由
 Spines覆蓋網(wǎng)絡(luò)能穩(wěn)定地提供較好的流媒體服務(wù),但是其靈活性和動態(tài)性較差,無法滿足網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的動態(tài)變化。Spines中任一節(jié)點(diǎn)加入、退出或是失效都可能會引起整個網(wǎng)絡(luò)的癱瘓,網(wǎng)絡(luò)的可擴(kuò)展性也較差。這也將無法滿足日益增加的流媒體用戶需求。相比之下,同樣具有自組織結(jié)構(gòu)的P2P網(wǎng)絡(luò)則具有很高的耐攻擊性和容錯性。由于采用自組織的方式,P2P網(wǎng)絡(luò)可支持節(jié)點(diǎn)的動態(tài)加入和離開,且一般的P2P架構(gòu)在出現(xiàn)節(jié)點(diǎn)失效時能夠自動調(diào)整拓?fù)浣Y(jié)構(gòu),保持其連通性。
 而分布式哈希表(DHT)路由算法是P2P的核心技術(shù),可高效合理地實(shí)現(xiàn)網(wǎng)絡(luò)資源的索引及管理。在Spines網(wǎng)絡(luò)的覆蓋節(jié)點(diǎn)層中引入DHT技術(shù),可提供一個具有高擴(kuò)展性的節(jié)點(diǎn)命名、路由發(fā)現(xiàn)和更新機(jī)制。它通過為每一個實(shí)體指定唯一的標(biāo)識,并通過路由表來確定本節(jié)點(diǎn)的鄰節(jié)點(diǎn),再向其鄰節(jié)點(diǎn)傳遞消息。依此逐一通過多個節(jié)點(diǎn)的逐跳傳輸后到達(dá)目標(biāo)節(jié)點(diǎn),實(shí)現(xiàn)任意兩節(jié)點(diǎn)間的通信。因此,在Spines覆蓋網(wǎng)絡(luò)中引入P2P核心技術(shù)DHT可實(shí)現(xiàn)一種完全自組織的分布式覆蓋網(wǎng)絡(luò)。
 同時,為了合理地利用剩余帶寬資源,解決網(wǎng)絡(luò)資源貧乏的問題,在自組織的Spines覆蓋網(wǎng)絡(luò)中引入多路并行方案,可從源節(jié)點(diǎn)同時并行傳輸流媒體數(shù)據(jù)的多條數(shù)據(jù)流到目的節(jié)點(diǎn),實(shí)現(xiàn)具有一定QoS保證的實(shí)時流媒體服務(wù)。
3 基于Spines覆蓋網(wǎng)絡(luò)的流媒體多路路由改進(jìn)方案
 隨著分布式技術(shù)的發(fā)展,人們將更多的注意力投向分布式網(wǎng)絡(luò)的可靠性及可用性。對分布式數(shù)據(jù)的管理問題成為分布計算領(lǐng)域的又一熱點(diǎn)。本文引入了LEACH(Low Energy Adaptive Clustering Hierarchy)[11]協(xié)議,利用聚類首領(lǐng)機(jī)制有效抗擊惡意攻擊,增強(qiáng)網(wǎng)絡(luò)的抗毀性,從而提高網(wǎng)絡(luò)的可靠性。
3.1 LEACH協(xié)議
 LEACH是MIT的Chandrakasan等人為無線傳感器網(wǎng)絡(luò)設(shè)計的低功耗自適應(yīng)聚類路由算法。相比一般的平面多跳路由協(xié)議和靜態(tài)聚類算法,LEACH可以將網(wǎng)絡(luò)生命周期延長15%。LEACH定義了“輪(Round)”的概念,一輪由初始化和穩(wěn)定工作兩個階段組成。它主要通過隨機(jī)機(jī)制選擇聚類首領(lǐng),平均分擔(dān)中繼通信業(yè)務(wù)來實(shí)現(xiàn)。為了避免額外的處理開銷,穩(wěn)定工作狀態(tài)一般持續(xù)的時間相對較長。聚類首領(lǐng)選擇機(jī)制為:在初始化階段,將傳感器節(jié)點(diǎn)生成0~1之間的隨機(jī)數(shù),若大于閾值T(n),則選該節(jié)點(diǎn)為聚類首領(lǐng)。T(n)的定義如下:

 其中,p為節(jié)點(diǎn)中成為聚類首領(lǐng)的百分?jǐn)?shù),r是當(dāng)前的輪數(shù),G是在過去的1/p輪沒有被選擇為聚類首領(lǐng)的節(jié)點(diǎn)的集合。
 當(dāng)聚類首領(lǐng)被選定,它們便主動向所有節(jié)點(diǎn)廣播這一消息。依據(jù)接收信號的強(qiáng)度,節(jié)點(diǎn)選擇它所要加入的組,并告知相應(yīng)的聚類首領(lǐng)。
 在穩(wěn)定工作階段,節(jié)點(diǎn)持續(xù)采集監(jiān)測數(shù)據(jù),傳給聚類首領(lǐng),進(jìn)行必要的融合處理之后,發(fā)送到Sink節(jié)點(diǎn)。因此,這是一種減小通信業(yè)務(wù)量的合理工作模式。在持續(xù)一段時間后,整個網(wǎng)絡(luò)進(jìn)入下一輪工作周期,重新選擇聚類首領(lǐng)。由于節(jié)點(diǎn)是根據(jù)信號的強(qiáng)弱來加入相應(yīng)的組,所以當(dāng)惡意攻擊者采用Hello Flood大功率進(jìn)行廣播時,大量的節(jié)點(diǎn)都想加入到該組中。接著惡意節(jié)點(diǎn)采用諸如選擇重發(fā)、修改數(shù)據(jù)包等其他的攻擊方法,來達(dá)到攻擊的目的。但采用這種聚類首領(lǐng)的產(chǎn)生機(jī)制,節(jié)點(diǎn)可以通過Svbil攻擊增加自己被選擇為首領(lǐng)的機(jī)會,從而抵制惡意攻擊。
3.2 基于Spines覆蓋網(wǎng)絡(luò)的流媒體多流并行傳輸
 基于LEACH協(xié)議的原理,通過周期性的選擇聚類首領(lǐng),將集中的數(shù)據(jù)訪問合理地分布到不同的節(jié)點(diǎn)和網(wǎng)絡(luò)路徑上,利用不同的聚類首領(lǐng)平衡網(wǎng)絡(luò)的負(fù)載,從而有效地解決熱點(diǎn)問題,提高系統(tǒng)性能。
 根據(jù)以上分析,提出了基于Spines覆蓋網(wǎng)絡(luò)平臺的流媒體端對端的多流并行實(shí)時傳輸方案,以改進(jìn)流媒體服務(wù)系統(tǒng)并行傳輸?shù)腝oS,如圖2所示。

 圖2中,以現(xiàn)有Internet設(shè)施為基礎(chǔ),在應(yīng)用層的主機(jī)上運(yùn)行Spines節(jié)點(diǎn)軟件,構(gòu)建Spines覆蓋網(wǎng)絡(luò),通過覆蓋網(wǎng)絡(luò)的協(xié)調(diào)工作,實(shí)現(xiàn)了具有一定QoS保證的流媒體實(shí)時應(yīng)用。其中結(jié)合了DHT技術(shù)、LEACH協(xié)議及QoS多路路由方案等。
 本文以Spines覆蓋網(wǎng)絡(luò)為基礎(chǔ)網(wǎng)絡(luò)平臺,對流媒體實(shí)時并行傳輸?shù)腝oS多路路由進(jìn)行了研究。一方面,引入DHT技術(shù),有效提高了Spines覆蓋網(wǎng)絡(luò)的可擴(kuò)展性;另一方面,引入LEACH協(xié)議的聚類首領(lǐng)機(jī)制,有效提高了網(wǎng)絡(luò)的可靠性和可用性。但Spines的實(shí)時傳輸要求逐跳的時延不能太大,否則就難以發(fā)揮逐跳傳輸?shù)膬?yōu)勢。這里就有一個參數(shù)折衷的問題。同時節(jié)點(diǎn)的加入、離開造成鏈路性能的動態(tài)變化,覆蓋網(wǎng)絡(luò)QoS多路路由算法對可用帶寬的測量也是一個問題。隨著寬帶網(wǎng)絡(luò)及3G網(wǎng)絡(luò)的普及,對基于覆蓋網(wǎng)絡(luò)的流媒體傳輸?shù)腝oS問題的研究也越來越重要。
參考文獻(xiàn)
[1] The Spines Overlay Network. http:// www. spines. Org. com.[2010-12-01].
[2] Pi Renjie, Song Junde. Multi-path transmission based on overlay network[C]. Proceedings of the 18th International Conference on AINA, IEEE, 2004.
[3] MARK B L, Zhang Shidong. A multipath flow routing approach for increasing throughput in the Internet[C]. IEEE Pacific Rim Conference on Communications, Computers and Signal Processing, PacRim 2007,2007:21-24.
[4] MAURO A D, SCHONFELD D, CASETTI C. A peer-to-peer overlay network for real time video communication using multiple paths[C]. IEEE International Conference on Multimedia and Expo, 2006:921-924.
[5] JURCA D, PETROVIC S, FROSSARD P. Media aware routing in large scale networks with overlay[C]. IEEE International Conference on Multiniedia and Expo, 2005.
[6] APOSTOLOPOULOS J G. Reliable video communication over lossy packet networks using multiple state encoding and path diversity[C]. Video Communication and Image Processing. VCIP’01, 2001.
[7] Lin Shuna, Wang Yao, Mao Shiwen. Video transport over ad hoc networks using multiple paths[C]. IEEE International Symposium on Circuits and Systems, 2002.
[8] Zhou Jian, Shao Huairoug, Chia Shen, et al. Multi-path transport of FGS video[C]. Proceeding of Packet Video Work shop, 2003.
[9] Xu Wen, REXFORD J. MIRO: multi-path interdomain routing[C]. Proceedings of the 2006 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, SIGCOMM’06, New York, USA, 2006.
[10] Ma Zheng, Shao Huairong, Shen Chia. A new multi-path selection scheme for video streaming on overlay networks[C]. Proceeding of IEEE International Conference on Communication, 2004.
[11] HEINZELMAN W, CHANDRAKASAN A, BALAKRISHNAN H. Energy-efficient communication protocols for wireless microsensor networks[C]. Proceedings of Hawaaian International Conference on Systems Science, January, 2000.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。

相關(guān)內(nèi)容