摘 要:移動P2P數(shù)據(jù)分發(fā)技術(shù)將P2P模型應(yīng)用到移動網(wǎng)絡(luò)中,通過節(jié)點(diǎn)間的相互配合來提高系統(tǒng)的可靠性、傳輸速度和擴(kuò)展性,目前已成為無線通信的重點(diǎn)研究領(lǐng)域。但是由于移動網(wǎng)絡(luò)的復(fù)雜性,現(xiàn)有的移動P2P數(shù)據(jù)分發(fā)技術(shù)在實(shí)際應(yīng)用中仍然存在很多問題。對近年來該領(lǐng)域的一些重點(diǎn)技術(shù)如Gossip算法、網(wǎng)絡(luò)編碼、糾錯碼進(jìn)行了介紹,并在可靠性、傳輸速度和擴(kuò)展性方面對它們進(jìn)行了分析,針對其在網(wǎng)絡(luò)動態(tài)適應(yīng)性、網(wǎng)絡(luò)融合、節(jié)點(diǎn)合作度等方面的不足提出了今后的研究方向。
關(guān)鍵詞:移動自組織網(wǎng)絡(luò);數(shù)據(jù)分發(fā);Gossip算法;網(wǎng)絡(luò)編碼;糾錯碼
中圖分類號:TP393 文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2008)09-2586-06
Survey on mobile P2P data dissemination technique
MENG Chun1,SONG Meina1,SONG Junde1,JIA Junmin2
(1.School of Electronic Engineering, Beijing University of Posts Telecommunications, Beijing 100876, China;2.School of Electronic Information Engineering, North China Electric Power University, Baoding Hebei 071000, China)Abstract:Mobile P2P data dissemination technique applies P2P model to mobile networks. It utilizes mutual cooperation between nodes to improve reliability, transmission speed and scalability of the system and has recently become an important area of research in the field of wireless communication. However, due to complexity of mobile networks, the existing mobile P2P data dissemination techniques have many problems when they are applied to practical networks. This paper presented an introduction on some important techniques emerging recently in this area, such as Gossip algorithm, network coding and erasure codes. Then it analyzed these techniques in terms of reliability, transmission speed and scalability. In conclusion, it pointed out the future direction of research considering their insufficiency in adaptation to network dynamics, network convergence and node cooperation degree, etc.
Key words:mobile P2P; data dissemination; Gossip algorithm; network coding; erasure codes
近幾年,移動網(wǎng)絡(luò)出現(xiàn)了快速增長的趨勢,涌現(xiàn)了多種網(wǎng)絡(luò)技術(shù),如移動自組織網(wǎng)、無線局域網(wǎng)、移動蜂窩網(wǎng)、無線Mesh網(wǎng)絡(luò)、無線傳感器網(wǎng)絡(luò)等。移動網(wǎng)絡(luò)在可靠性、網(wǎng)絡(luò)拓?fù)浞€(wěn)定性、節(jié)點(diǎn)能力方面都要比有線網(wǎng)絡(luò)差,這使得開發(fā)基于移動網(wǎng)絡(luò)的應(yīng)用要比有線網(wǎng)絡(luò)困難得多。P2P作為一種分布式計算模型,在互聯(lián)網(wǎng)中的應(yīng)用已獲得了成功。在P2P網(wǎng)絡(luò)中,所有節(jié)點(diǎn)的地位都是相同的,它們之間通過相互配合來完成資源發(fā)現(xiàn)、數(shù)據(jù)分發(fā)等任務(wù)。與傳統(tǒng)的C/S模式相比,它避免了對服務(wù)器的依賴,從而具有更好的可靠性、傳輸效率、容錯性和擴(kuò)展性,這些特點(diǎn)也使得它尤其適合移動網(wǎng)絡(luò)。
移動P2P數(shù)據(jù)分發(fā)技術(shù)正是在這種背景下發(fā)展起來的。它將P2P模型引入到移動網(wǎng)絡(luò)中,通過節(jié)點(diǎn)間的相互配合將數(shù)據(jù)從一個或多個源節(jié)點(diǎn)分發(fā)給目的節(jié)點(diǎn)。由于移動網(wǎng)絡(luò)具有許多與有線網(wǎng)絡(luò)不同的特點(diǎn),其數(shù)據(jù)分發(fā)機(jī)制與有線網(wǎng)絡(luò)有很大不同。例如,有線網(wǎng)絡(luò)大多采用TCP協(xié)議,但在移動網(wǎng)絡(luò)中,網(wǎng)絡(luò)拓?fù)涞念l繁變化將會導(dǎo)致TCP連接經(jīng)常中斷,使TCP的傳輸效率嚴(yán)重下降;此外,TCP協(xié)議的慢啟動特性、擁塞控制機(jī)制都不能適應(yīng)移動網(wǎng)絡(luò)環(huán)境。因此必須根據(jù)移動網(wǎng)絡(luò)的特點(diǎn),對數(shù)據(jù)分發(fā)涉及的各種技術(shù)如路由選擇技術(shù)、請求響應(yīng)機(jī)制、擁塞控制機(jī)制等進(jìn)行改進(jìn),才能提高系統(tǒng)的整體性能。移動P2P數(shù)據(jù)分發(fā)技術(shù)的應(yīng)用范圍非常廣泛,包括文件共享、流媒體、數(shù)據(jù)聚集、緊急消息發(fā)布等。目前,尚無文獻(xiàn)對當(dāng)前移動P2P數(shù)據(jù)分發(fā)技術(shù)進(jìn)行總結(jié)和研究。
1 概述
1.1 移動P2P數(shù)據(jù)分發(fā)技術(shù)的主要組成構(gòu)件
移動P2P數(shù)據(jù)分發(fā)技術(shù)是一門綜合性較強(qiáng)的技術(shù),它通過多種技術(shù)來協(xié)調(diào)節(jié)點(diǎn)間的相互配合,以提高系統(tǒng)的可靠性、傳輸速度和擴(kuò)展性,降低節(jié)點(diǎn)的能耗。從網(wǎng)絡(luò)協(xié)議層次上看,移動P2P數(shù)據(jù)分發(fā)技術(shù)居于傳輸層之上、應(yīng)用層之下,一般稱為覆蓋層。圖1顯示了移動P2P數(shù)據(jù)分發(fā)模塊的基本結(jié)構(gòu)。
圖1中,自適應(yīng)模塊可以根據(jù)網(wǎng)絡(luò)變化情況以及節(jié)點(diǎn)自身情況自動調(diào)整協(xié)議參數(shù),從而減小網(wǎng)絡(luò)拓?fù)鋭討B(tài)變化對系統(tǒng)性能的影響。路由選擇模塊用來選擇下一跳節(jié)點(diǎn),它可以利用底層路由協(xié)議來優(yōu)化路由選擇。發(fā)送/接收控制模塊則用來控制數(shù)據(jù)的發(fā)送次數(shù)、發(fā)送頻率等,并且可以根據(jù)節(jié)點(diǎn)緩存情況來決定是否接收數(shù)據(jù)包。數(shù)據(jù)編/解碼模塊主要負(fù)責(zé)對數(shù)據(jù)編碼和解碼。成員管理模塊負(fù)責(zé)維護(hù)成員列表,路由選擇模塊利用該列表中的信息來選擇下一跳節(jié)點(diǎn)。請求響應(yīng)模塊則用來生成和響應(yīng)請求消息。
1.2 移動P2P數(shù)據(jù)分發(fā)技術(shù)面臨的主要困難
由于移動P2P系統(tǒng)具有許多與有線網(wǎng)絡(luò)不同的特點(diǎn),使得移動P2P數(shù)據(jù)分發(fā)技術(shù)面臨著更多的困難。
1)無線信道的物理局限 移動P2P系統(tǒng)中,數(shù)據(jù)大多通過無線信道傳輸。由于無線信道所固有的易受干擾、誤碼率高等缺點(diǎn),移動P2P數(shù)據(jù)分發(fā)的可靠性要比有線網(wǎng)絡(luò)低得多。如何提高數(shù)據(jù)分發(fā)的可靠性一直是移動P2P數(shù)據(jù)分發(fā)技術(shù)的一個主要問題。
2)網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化 移動P2P系統(tǒng)中,節(jié)點(diǎn)不僅可以隨時加入或離開,而且節(jié)點(diǎn)本身還可能在不斷移動。網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化給成員管理、路由選擇等帶來較大的困難。這就要求節(jié)點(diǎn)具有一定的自適應(yīng)機(jī)制,能夠根據(jù)網(wǎng)絡(luò)的具體情況動態(tài)地調(diào)整分發(fā)策略。
3)節(jié)點(diǎn)自身的限制 很多移動終端的計算能力較低,存儲器容量和能量也有限。因此,如何保證數(shù)據(jù)分發(fā)技術(shù)的輕量化是移動P2P數(shù)據(jù)分發(fā)技術(shù)的一個重要課題。
4)缺少基礎(chǔ)設(shè)施的支持 很多移動P2P系統(tǒng)都缺少基礎(chǔ)設(shè)施的支持,這就要求移動P2P系統(tǒng)具有一定的自組織能力,通過節(jié)點(diǎn)間的相互配合來保證數(shù)據(jù)分發(fā)的效率和可靠性。
5)移動設(shè)備的異構(gòu)性 移動設(shè)備在能量、緩存容量和帶寬上往往存在很大差異,其對數(shù)據(jù)分發(fā)的貢獻(xiàn)度也不同。數(shù)據(jù)分發(fā)技術(shù)只有充分考慮這種異構(gòu)性,才能提高數(shù)據(jù)分發(fā)的效率和可靠性。
1.3 研究進(jìn)展情況
當(dāng)前移動P2P數(shù)據(jù)分發(fā)技術(shù)研究呈現(xiàn)出如下特點(diǎn):
a)新的體系結(jié)構(gòu)不斷涌現(xiàn)。當(dāng)前研究者大多通過設(shè)計全新的體系結(jié)構(gòu)來滿足移動網(wǎng)絡(luò)發(fā)展的需要,它們在響應(yīng)機(jī)制、緩存管理機(jī)制、路由機(jī)制等方面都與有線網(wǎng)絡(luò)有較大差異。
b)多種技術(shù)的綜合應(yīng)用。影響移動P2P數(shù)據(jù)分發(fā)的因素很多,單純依賴一種技術(shù)是無法提高系統(tǒng)整體性能的,因此當(dāng)前提出的移動P2P數(shù)據(jù)分發(fā)技術(shù)都綜合應(yīng)用了多種技術(shù),如數(shù)據(jù)編碼、路由選擇、擁塞控制等。
c)控制機(jī)制簡單化。現(xiàn)有的移動P2P數(shù)據(jù)分發(fā)技術(shù)在控制機(jī)制上都要比有線網(wǎng)絡(luò)簡單,這樣不僅可以降低節(jié)點(diǎn)的負(fù)擔(dān),還使節(jié)點(diǎn)能夠快速地適應(yīng)網(wǎng)絡(luò)的動態(tài)變化。
早期移動P2P數(shù)據(jù)分發(fā)技術(shù)研究主要集中于移動自組織網(wǎng)和無線傳感器網(wǎng)絡(luò),現(xiàn)在已有研究者開始將它應(yīng)用到無線Mesh網(wǎng)絡(luò)、車輛自組織網(wǎng)等網(wǎng)絡(luò)中。由于移動P2P數(shù)據(jù)分發(fā)技術(shù)具有廣泛的應(yīng)用前景,國外許多大學(xué)和研究機(jī)構(gòu)如加州大學(xué)、普林斯頓大學(xué)、微軟研究院、瑞士理工學(xué)院等都開展了這方面的研究。我國的浙江大學(xué)、華中科技大學(xué)也開始了這方面的研究,但總體來講還處于起步階段,與國外還存在很大差距。
2 Gossip算法
2.1 簡介
Gossip算法又稱為傳染病算法,最早由E. A. Demers等人[1]于1987年提出。由于其實(shí)現(xiàn)非常簡單,而且具有良好的可靠性、容錯性和擴(kuò)展性,引起了很多研究者的興趣。其應(yīng)用范圍非常廣泛,包括流媒體[2]、錯誤檢測[3]、數(shù)據(jù)聚合[4]等。Gossip算法在移動P2P中的應(yīng)用還處于初始階段,目前大部分研究主要集中于移動自組織網(wǎng)和無線傳感器網(wǎng)絡(luò),對于移動蜂窩網(wǎng)、無線Mesh網(wǎng)等網(wǎng)絡(luò)還鮮有涉及。
在Gossip算法中,數(shù)據(jù)分發(fā)是按照一輪一輪的方式進(jìn)行的。在每一輪中,每個節(jié)點(diǎn)隨機(jī)地選擇f個其他節(jié)點(diǎn),而后將數(shù)據(jù)包發(fā)送給它們。每個數(shù)據(jù)包都以這種方式發(fā)送t輪。其中f和t是兩個重要的參數(shù),f又稱為扇出數(shù)(fanout)。這個過程與傳染病的傳播過程很相似。圖2顯示了Gossip算法的工作過程。
Gossip算法主要通過兩條途徑來保證數(shù)據(jù)分發(fā)的可靠性:一條途徑是通過數(shù)據(jù)分發(fā)路徑的多樣性,數(shù)據(jù)包一次分發(fā)給多個節(jié)點(diǎn),即使有一些節(jié)點(diǎn)失效,其他沒有失效的節(jié)點(diǎn)仍然可以接收到數(shù)據(jù);另一條途徑是通過數(shù)據(jù)包的重復(fù)多次分發(fā),這樣即使某些節(jié)點(diǎn)在第一輪中沒有接收到數(shù)據(jù),它們?nèi)匀豢梢栽谝院蟮臄?shù)據(jù)分發(fā)中接收到數(shù)據(jù)。由于采用隨機(jī)路由機(jī)制,Gossip算法對網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化具有一定的適應(yīng)性。
2.2 研究現(xiàn)狀
2.2.1 AG[7]
AG是較早的一種移動自組織網(wǎng)Gossip算法。它的最大特點(diǎn)是數(shù)據(jù)分發(fā)過程分為兩個階段:第一階段先利用多播協(xié)議MAODV將數(shù)據(jù)分發(fā)給多播組成員;第二階段再使用Gossip算法來保證所有組成員都接收到數(shù)據(jù)。它的第二個特點(diǎn)是在使用Gossip算法時無須知道其他組成員,節(jié)點(diǎn)從鄰居中隨機(jī)地選擇一個節(jié)點(diǎn),而后向該節(jié)點(diǎn)發(fā)送一條Gossip消息。該消息中包含源節(jié)點(diǎn)地址、組地址和節(jié)點(diǎn)所缺少的數(shù)據(jù)包編號等信息。接收到該消息的節(jié)點(diǎn)如果是組成員,它可以選擇響應(yīng)該消息,也可以選擇將該消息繼續(xù)傳遞給其他節(jié)點(diǎn)。AG還考慮了網(wǎng)絡(luò)拓?fù)涞挠绊憽B酚杀碇械拿總€節(jié)點(diǎn)都有一項(xiàng)nearest_member,它表示該節(jié)點(diǎn)到下一跳節(jié)點(diǎn)的最短距離。當(dāng)選擇下一跳時,節(jié)點(diǎn)的nearest_member越小,被選中的概率越大,這樣,不僅可以減少網(wǎng)絡(luò)流量,還可以提高數(shù)據(jù)分發(fā)的效率。AG的最大缺點(diǎn)是它需要依賴底層多播協(xié)議,而且它只能提供概率可靠的數(shù)據(jù)分發(fā),這就限制了它在實(shí)際網(wǎng)絡(luò)中的應(yīng)用。
2.2.2 ̄ RDG[5]
與AG不同,RDG使用單播路由協(xié)議DSR來進(jìn)行數(shù)據(jù)傳輸,從而避免了對底層多播協(xié)議的依賴。為了減小系統(tǒng)開銷,RDG在每個數(shù)據(jù)包都附加了三條信息:將要離開的一個節(jié)點(diǎn)ID、節(jié)點(diǎn)列表中隨機(jī)選取的一個節(jié)點(diǎn)ID、節(jié)點(diǎn)所缺少的數(shù)據(jù)包編號。接收到數(shù)據(jù)包的節(jié)點(diǎn)則根據(jù)數(shù)據(jù)包中附加的信息更新節(jié)點(diǎn)列表與緩存,并響應(yīng)發(fā)送節(jié)點(diǎn)的數(shù)據(jù)請求。文獻(xiàn)[5]中還提到了TARDG,與AG類似,路由表中的每個節(jié)點(diǎn)都根據(jù)其路徑長度分配一個權(quán)值,路徑越長,權(quán)值越小,在選擇下一跳時,節(jié)點(diǎn)的權(quán)值越大,被選中的概率也越大。RDG的主要缺點(diǎn)是沒有考慮擁塞控制,只適合網(wǎng)絡(luò)規(guī)模較小的場合;此外,它需要事先指定f和t,不能適應(yīng)網(wǎng)絡(luò)的動態(tài)變化。
2.2.3 EraMobile[8]
EraMobile最大的特點(diǎn)是利用廣播分發(fā)數(shù)據(jù),這樣不僅可以簡化分發(fā)算法,而且不需要維護(hù)節(jié)點(diǎn)列表。在EraMobile中,節(jié)點(diǎn)首先將自己的數(shù)據(jù)摘要廣播給附近節(jié)點(diǎn),接收到數(shù)據(jù)摘要的節(jié)點(diǎn)將該摘要與本地緩存中的內(nèi)容進(jìn)行比較,并根據(jù)比較結(jié)果響應(yīng)廣播摘要的節(jié)點(diǎn)。EraMobile還能夠根據(jù)節(jié)點(diǎn)密度動態(tài)調(diào)整協(xié)議參數(shù)。它主要有四個參數(shù):每一輪中可以發(fā)送的最大數(shù)據(jù)包數(shù)N、最大請求消息數(shù)Q、每個數(shù)據(jù)包發(fā)送的最大次數(shù)T、每一輪的時間P。它把節(jié)點(diǎn)密度分為高、中、低三個等級。當(dāng)節(jié)點(diǎn)密度較低時,它通過增加N、Q和T,同時減少P來提高數(shù)據(jù)分發(fā)的可靠性;而當(dāng)節(jié)點(diǎn)密度較高時,它則會減小N、Q和T,同時增加P,以減少網(wǎng)絡(luò)擁塞對數(shù)據(jù)分發(fā)可靠性的影響。
2.2.4 CREW[9]
CREW將Gossip算法應(yīng)用到flash分發(fā)中。所謂flash分發(fā),即將信息在短時間內(nèi)分發(fā)給很多用戶。CREW通過兩種方法來提高數(shù)據(jù)分發(fā)的速度:a)通過拉的方式減少重復(fù)數(shù)據(jù)。首先將包含所有數(shù)據(jù)塊id的元數(shù)據(jù)廣播到整個網(wǎng)絡(luò)中,節(jié)點(diǎn)再根據(jù)元數(shù)據(jù)向其他節(jié)點(diǎn)請求數(shù)據(jù)塊。b)通過隨機(jī)走動技術(shù)來減少維護(hù)網(wǎng)絡(luò)拓?fù)涞拈_銷。為了解決節(jié)點(diǎn)帶寬的異構(gòu)問題,CREW使用節(jié)點(diǎn)的吞吐率來動態(tài)地計算帶寬。當(dāng)帶寬用盡時,將不再響應(yīng)其他節(jié)點(diǎn)的請求消息。此外,當(dāng)節(jié)點(diǎn)沒有多余帶寬時,它會響應(yīng)一條忙消息來通知請求節(jié)點(diǎn)調(diào)整分發(fā)策略。CREW的不足是使用TCP協(xié)議來維護(hù)覆蓋層網(wǎng)絡(luò)拓?fù)洌瑥亩拗屏怂趧討B(tài)網(wǎng)絡(luò)拓?fù)渲械膽?yīng)用。
2.2.5 Gossip算法在錯誤檢測中的應(yīng)用[3]
文獻(xiàn)[3]將Gossip算法應(yīng)用到無線自組織網(wǎng)及Mesh網(wǎng)絡(luò)的錯誤檢測中。每個節(jié)點(diǎn)v周期性地廣播心跳消息,其中包含兩個數(shù)組:Alivev存儲節(jié)點(diǎn)v已接收到的心跳計數(shù);Hopsv存儲v與其他節(jié)點(diǎn)間的跳數(shù)。節(jié)點(diǎn)u接收到v的心跳消息后,將根據(jù)Alivev和Hopsv估算節(jié)點(diǎn)v的下一個心跳消息到來的時間τ;如果時間τ之后沒有接收到心跳消息,節(jié)點(diǎn)將繼續(xù)等待一段時間Δ;如果仍沒有接收到心跳消息,則認(rèn)為v已經(jīng)發(fā)生故障。該方法的主要不足是沒有對廣播進(jìn)行有效控制,容易導(dǎo)致網(wǎng)絡(luò)擁塞。
2.3 小結(jié)
表1對以上Gossip算法進(jìn)行了總結(jié)。
表1 Gossip算法總結(jié)
比較項(xiàng)AGRDGEraMobileCREW錯誤檢測
請求響?yīng)?yīng)機(jī)制使用Gossip消息請求數(shù)據(jù)在數(shù)據(jù)包中附加NAK數(shù)據(jù)摘要、拉方式相結(jié)合元數(shù)據(jù)、拉方式相結(jié)合
底層路由協(xié)議MAODVDSR廣播廣播與單播結(jié)合廣播
成員管理由MAODV負(fù)責(zé)管理成員列表包含系統(tǒng)隨機(jī)局部視圖無須維護(hù)成員列表采用隨機(jī)走動方法維護(hù)成員列表
拓?fù)洫じ兄紤]未考慮未考慮未考慮未考慮
自適應(yīng)機(jī)制無無根據(jù)節(jié)點(diǎn)密度調(diào)整協(xié)議參數(shù)根據(jù)節(jié)點(diǎn)剩余帶寬調(diào)整分發(fā)策略無
異構(gòu)性未考慮未考慮未考慮考慮未考慮
2.3.1 可靠性
從表1可以看出,為了提高數(shù)據(jù)分發(fā)的可靠性,Gossip算法大多采用了請求響應(yīng)機(jī)制。其中EraMobile、CREW在進(jìn)行請求響應(yīng)之前都要廣播一個數(shù)據(jù)摘要(元數(shù)據(jù)),這樣就使得節(jié)點(diǎn)請求數(shù)據(jù)時更有針對性。這種方式的一個缺點(diǎn)是會增加節(jié)點(diǎn)的能耗,而且大量的請求消息和數(shù)據(jù)摘要還會造成網(wǎng)絡(luò)擁塞,從而降低數(shù)據(jù)分發(fā)的可靠性。
Gossip算法大多使用UDP協(xié)議,這就要求在設(shè)計算法時考慮擁塞控制。EraMobile采用被動方式,節(jié)點(diǎn)通過感知周圍環(huán)境來調(diào)整協(xié)議參數(shù)。該方法的缺點(diǎn)是:當(dāng)網(wǎng)絡(luò)拓?fù)渥兓l繁時,節(jié)點(diǎn)可能來不及收集足夠的信息,從而容易造成分發(fā)策略與網(wǎng)絡(luò)實(shí)際情況的失配。CREW則采用主動方式,由節(jié)點(diǎn)主動通知請求節(jié)點(diǎn)調(diào)整分發(fā)策略,因而實(shí)時性較強(qiáng)。
2.3.2 傳輸速度
底層路由協(xié)議對于數(shù)據(jù)傳輸速度具有重要影響。當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)數(shù)目增加時,底層路由協(xié)議的開銷就會增大。另外,節(jié)點(diǎn)的頻繁移動還會導(dǎo)致很多路由錯誤,這些錯誤將會重新啟動路由發(fā)現(xiàn)過程,從而使網(wǎng)絡(luò)擁塞情況惡化,對數(shù)據(jù)傳輸速度帶來不利影響。使用廣播傳輸數(shù)據(jù)的最大優(yōu)點(diǎn)是:它充分利用了無線信道的廣播特性,一次分發(fā)就可以使多個節(jié)點(diǎn)接收到數(shù)據(jù)。但是使用廣播也會帶來重復(fù)數(shù)據(jù)問題。
AG和TARDG都考慮了網(wǎng)絡(luò)拓?fù)鋵鬏斔俣鹊挠绊懀鼈兊墓餐攸c(diǎn)是優(yōu)先選擇距離較近的節(jié)點(diǎn),于是數(shù)據(jù)分發(fā)將主要集中在節(jié)點(diǎn)附近進(jìn)行,從而提高了數(shù)據(jù)分發(fā)的效率。但是它們都需要依賴底層路由協(xié)議,這就限制了其應(yīng)用范圍。
2.3.3 擴(kuò)展性
成員列表是影響Gossip算法擴(kuò)展性的重要因素。RDG和CREW都只需要維護(hù)系統(tǒng)的部分視圖,這就降低了維護(hù)成員列表的開銷,但是這樣無法保證節(jié)點(diǎn)選擇的均勻性。EraMobile采用廣播傳輸數(shù)據(jù),因此無須維護(hù)節(jié)點(diǎn)列表,從而避免了維護(hù)節(jié)點(diǎn)列表所帶來的開銷。
3 網(wǎng)絡(luò)編碼
3.1 簡介
網(wǎng)絡(luò)編碼是21世紀(jì)通信領(lǐng)域的一項(xiàng)重要變革。它的主要思想是網(wǎng)絡(luò)中的所有節(jié)點(diǎn)都對數(shù)據(jù)進(jìn)行編碼,如進(jìn)行異或和線性組合等操作,再將編碼后的結(jié)果傳遞給其他節(jié)點(diǎn)。網(wǎng)絡(luò)編碼首先由Ahlswede等人[10]于2000年提出;隨后,Li 等人[11]證明了使用線性網(wǎng)絡(luò)編碼能夠達(dá)到網(wǎng)絡(luò)多播容量的最優(yōu)值。2003年Tracey Ho等人[12]提出了隨機(jī)網(wǎng)絡(luò)編碼,拓寬了網(wǎng)絡(luò)編碼的適用性。分析和實(shí)驗(yàn)表明,網(wǎng)絡(luò)編碼不僅可以提高網(wǎng)絡(luò)吞吐量[12],而且可以降低節(jié)點(diǎn)的能耗[13];使用隨機(jī)網(wǎng)絡(luò)編碼還可以提高系統(tǒng)的可靠性。然而,雖然經(jīng)過幾年的發(fā)展,大多數(shù)研究仍然局限在數(shù)學(xué)分析和仿真階段,網(wǎng)絡(luò)編碼在實(shí)際中的應(yīng)用還面臨著諸多問題。
3.2 研究現(xiàn)狀
3.2.1 實(shí)際網(wǎng)絡(luò)編碼[15]
文獻(xiàn)[15]對如何將隨機(jī)網(wǎng)絡(luò)編碼應(yīng)用到實(shí)際網(wǎng)絡(luò)中進(jìn)行了研究。為了減少收集編碼塊的時間。文獻(xiàn)[15]提出應(yīng)用優(yōu)先級編碼傳輸技術(shù)(PET)[16]來減少收集編碼包的時間。在PET中,h個數(shù)據(jù)塊按照重要程度被分成h層。當(dāng)節(jié)點(diǎn)接收到編碼向量組的秩為k時,它就可以恢復(fù)前k層的數(shù)據(jù)塊。為了解決大文件的分發(fā)問題,文獻(xiàn)[15]還提出將文件分成若干段,每一段又稱為輩(generation),每一輩都有一個輩編號,再使用隨機(jī)網(wǎng)絡(luò)編碼分發(fā)每一輩中的數(shù)據(jù)。節(jié)點(diǎn)在接收到編碼包后隨即進(jìn)行高斯消去,以減少解碼和判斷編碼向量是否線性無關(guān)的時間。
3.2.2 隨機(jī)網(wǎng)絡(luò)編碼與Gossip算法的結(jié)合[17]
文獻(xiàn)[17]分別為基于網(wǎng)絡(luò)編碼和存儲轉(zhuǎn)發(fā)的Gossip算法建立了數(shù)學(xué)模型,并通過仿真證實(shí)了網(wǎng)絡(luò)編碼可以大幅度減小傳輸延遲。該文還提出了緩存替代策略。當(dāng)節(jié)點(diǎn)b接收到一個編碼包xa時,如果緩存中沒有空閑空間,b就會將xa與緩存中的編碼包一起共同編碼:xi′=xi+λxa。其中:xi代表節(jié)點(diǎn)b緩存中的第i個編碼塊;λ是從有限域中隨機(jī)選取的元素。此外該文還提出了優(yōu)先級編碼協(xié)議,K個原始數(shù)據(jù)包首先被分成M個優(yōu)先級,再按照優(yōu)先級由高到低的順序分別進(jìn)行編碼,優(yōu)先級高的數(shù)據(jù)最先被解碼。其不足是假設(shè)每次接收到的編碼包都是可用的。事實(shí)上,一個擁有n個編碼包的節(jié)點(diǎn)A最多只能為其他節(jié)點(diǎn)貢獻(xiàn)n個線性無關(guān)的編碼包,如果某個節(jié)點(diǎn)B已經(jīng)從A接收到n個線性無關(guān)的編碼包,那么以后從A接收到的編碼包對B來說都是沒有用的。
3.2.3 CodeTorrent[18]
CodeTorrent將隨機(jī)網(wǎng)絡(luò)編碼應(yīng)用到車輛自組織網(wǎng)中(VANET)。它采用廣播傳輸數(shù)據(jù),還利用節(jié)點(diǎn)的移動來提高數(shù)據(jù)分發(fā)速度。它采用拉的方式來分發(fā)數(shù)據(jù)。源節(jié)點(diǎn)首先廣播一個文件描述消息,接收到該消息的節(jié)點(diǎn)如果對文件感興趣,就會廣播一條請求消息,接收到請求消息的節(jié)點(diǎn)向請求節(jié)點(diǎn)發(fā)送編碼包。為了幫助節(jié)點(diǎn)選擇編碼包,每條請求消息中還包含一個無效空間向量。
3.3.1 可靠性
緩存管理策略是影響網(wǎng)絡(luò)編碼可靠性的重要因素。文獻(xiàn)[15]采用了傳統(tǒng)的FIFO策略,當(dāng)新的數(shù)據(jù)段到來時就將舊數(shù)據(jù)段清除出緩存,這樣就無法響應(yīng)其他節(jié)點(diǎn)對舊數(shù)據(jù)段的請求。與文獻(xiàn)[15]不同,文獻(xiàn)[19]采用了逐漸減少編碼向量秩的方法。這樣,當(dāng)刪除編碼包時,節(jié)點(diǎn)仍然可以響應(yīng)其他節(jié)點(diǎn)對舊數(shù)據(jù)段的請求。文獻(xiàn)[17]使用了緩存替代策略,它在提高數(shù)據(jù)有用性的同時還提高了緩存的利用效率。
3.3.2 傳輸速度
提高網(wǎng)絡(luò)數(shù)據(jù)傳輸速度的方法可分為兩類:
a)對網(wǎng)絡(luò)編碼的各階段進(jìn)行優(yōu)化。文獻(xiàn)[15,17]分別提出利用PET和優(yōu)先級編碼協(xié)議來減小編碼包的收集時間,它們的共同特點(diǎn)是都需要對數(shù)據(jù)進(jìn)行預(yù)處理。PET的主要不足是增加了數(shù)據(jù)的冗余度;優(yōu)先級編碼協(xié)議的主要缺點(diǎn)是不能保證按文件原始順序進(jìn)行解碼。
b)利用節(jié)點(diǎn)的移動性。節(jié)點(diǎn)的移動不僅造成網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化,也增加了節(jié)點(diǎn)相遇的機(jī)會,因而利用移動性可以提高網(wǎng)絡(luò)編碼的傳輸速度。該類方法的最大缺點(diǎn)是傳輸速度受節(jié)點(diǎn)運(yùn)動速度和運(yùn)動方向的影響比較大,節(jié)點(diǎn)不能對傳輸速度進(jìn)行預(yù)期。
3.3.3 擴(kuò)展性
提高網(wǎng)絡(luò)編碼擴(kuò)展性的一個措施是通過請求響應(yīng)機(jī)制來減少無用編碼包的發(fā)送次數(shù)。在文獻(xiàn)[20]中,節(jié)點(diǎn)首先計算可以從其他節(jié)點(diǎn)獲取的編碼包數(shù)目,再根據(jù)該數(shù)值請求編碼包,從而減少了接收到無用編碼包的概率。CodeTorrent則在請求消息中包含了無效空間向量,接收到請求消息的節(jié)點(diǎn)可以通過該向量來判斷是否響應(yīng)請求消息。兩者的主要不足是它們都需要在發(fā)送請求消息前進(jìn)行復(fù)雜的計算,因而增加了傳輸延遲和節(jié)點(diǎn)負(fù)擔(dān)。
4 糾錯碼
4.1 簡介
將糾錯碼應(yīng)用于移動P2P系統(tǒng),不僅可以提高數(shù)據(jù)傳輸?shù)目煽啃院蛡鬏斔俣龋€能夠減少響應(yīng)消息的數(shù)目,從而減輕系統(tǒng)的負(fù)擔(dān),提高系統(tǒng)的擴(kuò)展性。糾錯碼的應(yīng)用領(lǐng)域包括文件共享、流媒體等。近年來,隨著P2P流媒體的日益普及,糾錯碼引起了很多研究者的興趣。
糾錯碼的基本原理是:文件被分成k塊,k個數(shù)據(jù)塊被編碼為n個編碼塊(n>k),節(jié)點(diǎn)將這n個編碼塊發(fā)送給目標(biāo)節(jié)點(diǎn),目標(biāo)節(jié)點(diǎn)只要接收到任意(1+ε)k個編碼塊,就可以通過解碼恢復(fù)原始文件。其中:ε是一個與具體編碼有關(guān)的參數(shù)(對MDS編碼,ε=0;對其他編碼,ε>0)。常用的糾錯碼包括ReedSolomon編碼、Vander Monde編碼、Tornado編碼、分層編碼和MDC編碼等。其中分層編碼和MDC編碼主要應(yīng)用于流媒體領(lǐng)域。
糾錯碼只要求接收到n個編碼塊中的任意(1+ε)k個編碼塊就可以恢復(fù)原始文件,因此,即使中間丟失了一些編碼塊,仍然可以通過其他編碼塊恢復(fù)原始文件。這樣就大大提高了系統(tǒng)的可靠性。一般在使用糾錯碼時,都要求n遠(yuǎn)大于k,這樣可以大大減小接收到重復(fù)數(shù)據(jù)的概率,從而提高傳輸速度。
4.2 研究現(xiàn)狀
4.2.1 Tornado編碼在移動自組織網(wǎng)中的應(yīng)用[21]
文獻(xiàn)[21]將Tornado編碼應(yīng)用到移動自組織網(wǎng)數(shù)據(jù)分發(fā)中。它的實(shí)現(xiàn)方法非常簡單,源節(jié)點(diǎn)將編碼后的數(shù)據(jù)段隨機(jī)廣播到網(wǎng)絡(luò)中,接收到編碼塊的節(jié)點(diǎn)繼續(xù)將編碼塊廣播給其他節(jié)點(diǎn)。該過程將無限制地進(jìn)行下去。這種方法只適合所有用戶請求同一個文件的有限場合,但它無須建立任何邏輯網(wǎng)絡(luò)和節(jié)點(diǎn)連接,便可在高度移動性的P2P網(wǎng)絡(luò)中高效地分發(fā)文件,其路由機(jī)制也很簡單。
4.2.2 MDC在P2P流媒體中的應(yīng)用[22,23]
近年來,一些研究者將MDC編碼應(yīng)用在P2P流媒體領(lǐng)域,結(jié)合多路徑和多數(shù)據(jù)源的分發(fā)機(jī)制,不僅可以提高傳輸速度,還可以提高系統(tǒng)的可靠性。在MDC編碼中,多媒體文件中的幀被分成很多組,每組幀中的位按照其重要程度進(jìn)行排序;再將新形成的位流進(jìn)行編碼,生成M個相互獨(dú)立的編碼包,接收到的編碼包越多,失真就越小。
CoopNet[22]采用多個數(shù)據(jù)分發(fā)樹來分發(fā)MDC編碼包,服務(wù)器為新加入的節(jié)點(diǎn)分配父親節(jié)點(diǎn),每個節(jié)點(diǎn)都擁有多個父親節(jié)點(diǎn),文件經(jīng)過編碼后沿多個分發(fā)樹傳遞給目標(biāo)節(jié)點(diǎn)。此外,CoopNet還可以根據(jù)編碼包的接收情況對編碼策略進(jìn)行優(yōu)化,使系統(tǒng)能夠適應(yīng)網(wǎng)絡(luò)的動態(tài)變化。
文獻(xiàn)[23]將MDC編碼應(yīng)用于無線Mesh網(wǎng)絡(luò)。它采用多路徑和多數(shù)據(jù)源的分發(fā)機(jī)制,由媒體服務(wù)器負(fù)責(zé)為請求節(jié)點(diǎn)分配源節(jié)點(diǎn)和傳輸路徑。文獻(xiàn)[23]還建立了路徑選擇的數(shù)學(xué)模型,并使用遺傳算法來選擇最優(yōu)路徑。
4.2.3 PeerFecT[24]
PeerFecT將糾錯碼應(yīng)用在并行文件下載中。文件先被分成k個數(shù)據(jù)塊,然后使用糾錯碼對其進(jìn)行編碼,生成n個編碼塊,它們隨即被散布到網(wǎng)絡(luò)的多個節(jié)點(diǎn)上。下載文件時,節(jié)點(diǎn)利用系統(tǒng)提供的資源發(fā)現(xiàn)服務(wù)找到最近存儲編碼塊的節(jié)點(diǎn),并從這些節(jié)點(diǎn)下載編碼塊。
4.2.4 糾錯碼在機(jī)會網(wǎng)絡(luò)中的應(yīng)用[25]
文獻(xiàn)[25]將糾錯碼應(yīng)用到節(jié)點(diǎn)移動頻繁的機(jī)會網(wǎng)絡(luò)中。與文獻(xiàn)[24]類似,文獻(xiàn)[25]將編碼包平均分布在mr個中間節(jié)點(diǎn)上。其中:m為一個常數(shù);r=n/k。節(jié)點(diǎn)只要從其中m個中間節(jié)點(diǎn)上成功下載了編碼塊,就可以恢復(fù)原始文件。通過數(shù)學(xué)分析,文獻(xiàn)[25]證明了使用這種方法可以減小最差情況下的傳輸延遲,當(dāng)m很大時,傳輸延遲的分布接近一個常數(shù)。
4.3 小結(jié)
由上可見,在應(yīng)用糾錯碼時,一般要結(jié)合多路徑、多數(shù)據(jù)源的方法來提高系統(tǒng)的可靠性和傳輸速度。CoopNet的主要不足是采用了樹型網(wǎng)絡(luò)拓?fù)洌?dāng)父親節(jié)點(diǎn)發(fā)生故障或者移動時,它的所有子樹都將無法接收到數(shù)據(jù),因而CoopNet只能適用于網(wǎng)絡(luò)拓?fù)漭^為穩(wěn)定的場合。文獻(xiàn)[23]、PeerFecT和文獻(xiàn)[25]都采用了多數(shù)據(jù)源、多路徑相結(jié)合的傳輸方式,從而避免了單點(diǎn)故障。
CoopNet和文獻(xiàn)[23]都采用了集中式的控制機(jī)制,由中央服務(wù)器負(fù)責(zé)為節(jié)點(diǎn)分配傳輸路徑和數(shù)據(jù)源,當(dāng)系統(tǒng)規(guī)模增大時,中央服務(wù)器的負(fù)擔(dān)也將增大,因此它們都只適合網(wǎng)絡(luò)規(guī)模較小的場合。PeerFecT和文獻(xiàn)[25]則采用了將編碼塊預(yù)先分配到多個節(jié)點(diǎn)的方法。這種方法的一個缺點(diǎn)是源節(jié)點(diǎn)必須事先了解整個網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),才能保證編碼包在網(wǎng)絡(luò)中的合理分布,因而它不能適應(yīng)網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化。
5 結(jié)束語
移動P2P的網(wǎng)絡(luò)環(huán)境與有線網(wǎng)絡(luò)有很大不同,不僅可靠性比較差,而且節(jié)點(diǎn)的移動還會造成網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化,這給數(shù)據(jù)分發(fā)帶來很大困難。因此,在移動P2P數(shù)據(jù)分發(fā)技術(shù)發(fā)展初期,研究者的注意力主要集中在如何提高數(shù)據(jù)分發(fā)的可靠性上。隨著通信技術(shù)的發(fā)展,許多研究者開始將網(wǎng)絡(luò)編碼、糾錯碼等技術(shù)應(yīng)用在移動P2P數(shù)據(jù)分發(fā)中,通過與其他技術(shù)如傳染病算法、多路徑多數(shù)據(jù)源的數(shù)據(jù)分發(fā)技術(shù)相結(jié)合,提高了數(shù)據(jù)分發(fā)的速度和可靠性。雖然經(jīng)過多年的發(fā)展,移動P2P數(shù)據(jù)分發(fā)技術(shù)在實(shí)際應(yīng)用中仍然存在很多問題,這也是今后移動P2P數(shù)據(jù)分發(fā)技術(shù)的主要研究方向。
1)能夠適應(yīng)網(wǎng)絡(luò)動態(tài)變化和節(jié)點(diǎn)異構(gòu)性的自適應(yīng)P2P數(shù)據(jù)分發(fā)技術(shù)。在實(shí)際的移動P2P系統(tǒng)中,網(wǎng)絡(luò)不僅處于動態(tài)變化狀態(tài),而且每個節(jié)點(diǎn)自身的狀態(tài)也存在很大差異。然而,目前大部分移動P2P數(shù)據(jù)分發(fā)技術(shù)都沒有考慮自適應(yīng)機(jī)制和節(jié)點(diǎn)異構(gòu)性,這就限制了它們在實(shí)際網(wǎng)絡(luò)中的應(yīng)用。因此,如何根據(jù)網(wǎng)絡(luò)動態(tài)變化和節(jié)點(diǎn)的異構(gòu)性動態(tài)調(diào)整數(shù)據(jù)分發(fā)策略將是今后研究的重點(diǎn)和難點(diǎn)問題。
2)適應(yīng)網(wǎng)絡(luò)編碼和糾錯碼特點(diǎn)的數(shù)據(jù)分發(fā)技術(shù)。網(wǎng)絡(luò)編碼和糾錯碼在數(shù)據(jù)分發(fā)機(jī)制上與傳統(tǒng)存儲轉(zhuǎn)發(fā)機(jī)制存在很大差異,因此,必須對數(shù)據(jù)分發(fā)技術(shù)的各個組件如請求響應(yīng)機(jī)制、緩存管理機(jī)制、擁塞控制技術(shù)等進(jìn)行改進(jìn),使之適應(yīng)網(wǎng)絡(luò)編碼和糾錯碼的特點(diǎn),才能真正發(fā)揮它們的優(yōu)勢。
3)移動性在數(shù)據(jù)分發(fā)中的應(yīng)用。移動性不僅可以造成網(wǎng)絡(luò)拓?fù)涞膭討B(tài)變化,也可以加速數(shù)據(jù)分發(fā)的速度。目前,移動性在移動P2P數(shù)據(jù)分發(fā)中的應(yīng)用還處于開始階段,仍然存在很多問題需要解決,如節(jié)點(diǎn)運(yùn)動速度的差異對數(shù)據(jù)分發(fā)的影響、如何感知節(jié)點(diǎn)運(yùn)動速度、如何調(diào)整算法參數(shù)以適應(yīng)節(jié)點(diǎn)的運(yùn)動等。
4)適合多種網(wǎng)絡(luò)的數(shù)據(jù)分發(fā)技術(shù)。目前移動P2P數(shù)據(jù)分發(fā)的研究都局限于單一網(wǎng)絡(luò),不能適應(yīng)未來多種網(wǎng)絡(luò)融合的發(fā)展趨勢。因此,研究適應(yīng)多種網(wǎng)絡(luò)的移動P2P數(shù)據(jù)分發(fā)技術(shù)將是一個很有前途的方向。
5)考慮節(jié)點(diǎn)合作度的數(shù)據(jù)分發(fā)技術(shù)。當(dāng)前移動P2P數(shù)據(jù)分發(fā)技術(shù)在設(shè)計時大多沒有考慮節(jié)點(diǎn)合作度問題,這也是限制其在實(shí)際網(wǎng)絡(luò)中應(yīng)用的一個重要因素。因此,如何在數(shù)據(jù)分發(fā)技術(shù)中考慮節(jié)點(diǎn)合作度問題將是未來的一個重要研究課題。
參考文獻(xiàn):
[1]DEMERS E A,GREENE D,HAUSER C,et al.Epidemic algorithms for replicated database maintenance[C]//Proc of the 6th Annual ACM Symposium on Principles.New York:ACM Press,1987:112.
[2]ZHANG Xinyan,LIU Jiangchuan,LI Bo,et al.CoolStreaming/DONet: a datadriven overlay network for peertopeer live media streaming[C]//Proc of the 24th Annual Joint Conference of the IEEE Computer and Communications Societies.2005:2102-2111.
[3]ELHADEF M,BOUKERCHEA.A Gossipstyle crash faults detection protocol for wireless Ad hoc and mesh networks[C]//Proc of Performance, Computing, and Communications Conference.New Orleans:[s.n.],2007:600-605.
[4]JELASITY M,MONTRESOR A,BABAOGLUO.Gossipbased aggregation in large dynamic networks[J].ACM Trans on Computer Systems,2005,23(3):219-252.
[5]LUO Jun,EUGSTER P T,HUBAUX J.Route driven Gossip: probabilistic reliable multicast in Ad hoc networks[C]//Proc of the 22nd Annual Joint Conference of the IEEE Computer and Communications Societies.2003:2229-2239.
[6]KERMARREC A,MASSOULIE L,GANESH A J.Probabilistic reliable dissemination in largescale systems[J]. IEEE Trans on Parallel and Distributed Systems,2003,14(3): 248-258.
[7]CHANDRA R, RAMASUBRAMANIAN V, BIRMAN K.Anonymous Gossip:improving multicast reliability in mobile Ad hoc networks[C]//Proc of the 21st International Conference on Distributed Computing Systems.New York:Cornell University,2001:275-283.
[8]ZKASAP ,GENC Z,ATSAN E.Epidemicbased approaches for reliable multicast in mobile Ad hoc networks[J].ACM SIGOPS Operating Systems Review,2006,40(3): 7379. [9]DESHPANDE M,BO Xing,LAZARDIS I,et al.CREW:a Gossipbased flashdissemination system[C]//Proc of the 26th IEEE International Conference on Distributed Computing Systems.2006.
[10]AHLSWEDE R,CAI Ning,LI S Y R,et al.Network information flow[J].IEEE Trans on Information Theory,2000,46(4):12041206.
[11]LI S Y R,YEUNG R W,CAI Ning.Linear network coding[J].IEEE Transon Infomation Theory,2003,49(2):371-381.
[12]HO T,MDARD M,SHI Jun,et al.On randomized network coding[C]//Proc of the 41st Annual Allerton Conference on Communication Control and Computing.2003.
[13]WIDMER J,F(xiàn)RAGOULI C,BOUDEC J L.Lowcomplexity energyefficient broadcasting in wireless Ad hoc networks using network coding[C]//Proc of Workshop on Network Coding, Theory, and Applications.2005.
DEB S,MDARD M,CHOUTE C.Algebraic Gossip:a network coding approach to optimal multiple rumor mongering[J].IEEE/ACM Trans on Networking,2006,49(SI): 2486-2507.
[15]CHOU P A,WU Yunnan,JAIN K.Practical network coding[C]//Proc of Allerton Conference on Communication, Control, and Computing.2003.
[16]ALBANESE A,BLOMER J,EDMONDS J,et al.Priority encoding transmission[J].IEEE Trans on Information Theory,1996,42(6):17371744.
[17]LIN Yunfeng,LIANG Ben,LI Baochun.Performance modeling of network coding in epidemic routing[C]//Proc of the 1st International MobiSys Workshop on Mobile Opportunistic Networking.New York:ACM Press,2007:6774.
[18]LEE U,PARK J S,YEH J,et al.CodeTorrent:content distribution using network coding in VANET[C]//Proc of the 1st International Workshop on Decentralized Resource Sharing in Mobile Computing and Networking.New York:ACM Press,2006:1-5.
[19]WIDMER J,BOUDEC J L.Network coding for efficient communication in extreme networks[C]//Proc of ACM SIGCOMM Workshop on Delaytolerant Networking.New York:ACM Press,2005:284-291.
[20]LIU Yajie,PENG Yuxing,DOU Wenhua,et al.Network coding for peertopeer live media streaming[C]//Proc of the 5th International Conference on Grid and Cooperative Computing.2006:149155.
[21]GOEL S K,SINGH M,XU Dongyan,et al.Efficient peertopeer data dissemination in mobile Ad hoc networks[C]//Proc of International Conference on Parallel Processing Workshops.Washington DC:IEEE Computer Society,2002:152158.
[22]PADMANABHAN V N,WANG H J,CHOU P A.Resilient peertopeer streaming[C]//Proc of the 11th IEEE International Conference on Network Protocols.2003:16-27. [23]LI Danjue,ZHANG Qian,CHUAH C N,et al.Error resilient concurrent video streaming over wireless mesh networks[J].浙江大學(xué)學(xué)報A:英文版,2006,7(5): 684-695.
[24]DAIRAINE L,LANCRICA L,LACAN J.Enhancing peertopeer parallel data access with PeerFec[C]//Proc of the 5th International Workshop on Networked Group Communications and Charges.2003:254-261.
[25]WANG Yong,JAIN S,MARTONOSI M,et al.Erasure coding based routing for opportunistic networks[C]//Proc of ACM SIGCOMM Workshop on Delaytolerant Networking.New York:ACM Press,2005:229-236.