姚玉坤,張?jiān)葡?,宋威威,?浩,李 威
(重慶郵電大學(xué)通信與信息工程學(xué)院,重慶400065)
E-mail:332459950@qq.com
多跳無線網(wǎng)絡(luò)中,由于無線鏈路的不可靠傳輸,總是存在數(shù)據(jù)包發(fā)生丟失或出錯(cuò),而重傳方法作為一種有效途徑用于解決上述問題.2003年提出的網(wǎng)絡(luò)編碼[1](Network Coding,NC),允許中間節(jié)點(diǎn)對多個(gè)原始包進(jìn)行編碼后傳輸,目的節(jié)點(diǎn)再解碼,進(jìn)一步提高了無線網(wǎng)絡(luò)的性能、網(wǎng)絡(luò)吞吐量.文獻(xiàn)[2]提出了機(jī)會(huì)網(wǎng)絡(luò)編碼(Opportunity Network Coding,ONC),且給出了具體的編解碼方式.由于ONC簡單且易于實(shí)現(xiàn),因此成為近些年重傳策略研究的重點(diǎn),且取得了許多研究成果[3,4].
文獻(xiàn)[5,6]中將ONC與ARQ相結(jié)合的重傳策略在重傳速率及重傳次數(shù)上明顯優(yōu)于傳統(tǒng)的ARQ機(jī)制.肖瀟[7]等人提出了能相對減少平均傳輸次數(shù)的網(wǎng)絡(luò)編碼廣播重傳策略(Network coding wireless broadcasting retransmission,NCWBR),但該算法存在有些編碼包無法完全解碼的問題.針對NCWBR不可解碼問題,孫偉,張更新[8]等人提出一種改進(jìn)的編碼重傳策略(Improved network coding based broadcasting retransmission,INCBR).文獻(xiàn)[9]提出了加權(quán)廣播重傳算法(Weighted opportunistic network coding retransm-ission,WONCR),該算法將減少重傳次數(shù)的問題轉(zhuǎn)化為了鏈路質(zhì)量加權(quán)的最大增益問題.文獻(xiàn)[10,11]提出應(yīng)用漢明重量的丟包選擇的重傳方法.文獻(xiàn)[12-16]中,通過結(jié)合協(xié)作通信和網(wǎng)絡(luò)編碼技術(shù)以快速恢復(fù)丟包.上述重傳算法均是分批進(jìn)行數(shù)據(jù)傳輸,且在不同批間無法進(jìn)行丟包的編碼重傳,因此可稱為塊內(nèi)編碼重傳(Intra-Buffer Network Coding based ARQ,INCARQ).對此,文獻(xiàn)[17]提出了一種基于哈希搜索和網(wǎng)絡(luò)編碼的連續(xù)重傳算法(Hash Searching and Network Coding Based Continuous Retransmission,HSNCR),該算法將固定大小的原始包傳輸替換為逐包的連續(xù)傳輸,且優(yōu)先重傳最優(yōu)丟包組合以最大化每一次重傳的效率,充分利用了塊間編碼機(jī)會(huì),最大化每次的重傳增益,減少了重傳次數(shù).但該算法存在著重傳性能并非最優(yōu)和發(fā)送緩存浪費(fèi)的問題,且該算法并未考慮鏈路丟失率不同的情況.
在各接收節(jié)點(diǎn)處鏈路丟失率不同的情況下,為了更有效的減少重傳次數(shù),并保證每次重傳編碼包增益最大,在上述理論成果的基礎(chǔ)上提出了一種改進(jìn)的應(yīng)用網(wǎng)絡(luò)編碼的動(dòng)態(tài)連續(xù)協(xié)作重傳(Improved Dynamic Continuous Cooperative Retransmission,IDCCR)算法.該算法的基本思想是在完成首次數(shù)據(jù)發(fā)送緩存區(qū)的包傳輸之后,動(dòng)態(tài)選擇一個(gè)最佳協(xié)作節(jié)點(diǎn),由該節(jié)點(diǎn)恢復(fù)目的節(jié)點(diǎn)的丟包,且在第一次重傳完成后,源節(jié)點(diǎn)更新數(shù)據(jù)發(fā)送緩存區(qū),并采用不固定大小的連續(xù)策略傳輸原始包.在重傳過程中,優(yōu)先重傳編碼增益最大的編碼包.
如圖1所示,該網(wǎng)絡(luò)模型為單源多目的的多跳無線網(wǎng)絡(luò)模型,源節(jié)點(diǎn)S發(fā)送原始數(shù)據(jù)包P={P1,P2,…,PM}給N個(gè)目的節(jié)點(diǎn)R={R1,R2,…,RN},在該原始數(shù)據(jù)發(fā)送的過程中由中繼節(jié)點(diǎn)F1轉(zhuǎn)發(fā)數(shù)據(jù)包給多個(gè)目的節(jié)點(diǎn).
圖1 網(wǎng)絡(luò)模型圖Fig.1 Wireless network model
在初始傳輸時(shí),源節(jié)點(diǎn)S廣播發(fā)送數(shù)據(jù)包,中繼節(jié)點(diǎn)將接收到的包轉(zhuǎn)發(fā)給目的節(jié)點(diǎn).目的節(jié)點(diǎn)接收到數(shù)據(jù)包后反饋發(fā)送ACK/NACK(接收/丟失)確認(rèn)消息.假設(shè)反饋信道是可靠的,反饋確認(rèn)消息不會(huì)發(fā)生丟失.源節(jié)點(diǎn)根據(jù)接收到的確認(rèn)消息創(chuàng)建數(shù)據(jù)包加權(quán)接收狀態(tài)矩陣Φ,該矩陣為一個(gè)N×M的矩陣,N為目的節(jié)點(diǎn)數(shù),M為原始包數(shù),矩陣元素用ωij表示,ωij=0表示目的節(jié)點(diǎn)Ri成功接收到數(shù)據(jù)包Pj;0<ωij<1表示目的節(jié)點(diǎn)Ri未成功接收到數(shù)據(jù)包Pj,且在目的節(jié)點(diǎn)Ri處數(shù)據(jù)包傳輸成功率為1-pi,pi為目的節(jié)點(diǎn)Ri處的包丟失率.如表1所示,加權(quán)接收狀態(tài)矩陣Φ中有3個(gè)目的節(jié)點(diǎn)丟失10個(gè)數(shù)據(jù)包.
表1 加權(quán)接收狀態(tài)矩陣ΦTable 1 Packet receiving state matrix
在丟包重傳階段,采用哈希漢明搜索選擇多個(gè)丟包生成編碼包,并重傳以恢復(fù)目的節(jié)點(diǎn)丟包.重復(fù)上述過程,直到所有的數(shù)據(jù)包被全部目的節(jié)點(diǎn)正確接收.
當(dāng)全部目的節(jié)點(diǎn)均正確接收到數(shù)據(jù)包Pi時(shí),認(rèn)為數(shù)據(jù)包Pi正確接收.當(dāng)存在至少一個(gè)目的節(jié)點(diǎn)沒有接收到數(shù)據(jù)包Pi時(shí),則認(rèn)為數(shù)據(jù)包Pi未被正確接收.根據(jù)加權(quán)接收狀態(tài)矩陣Φ,協(xié)作節(jié)點(diǎn)對丟包進(jìn)行編碼操作并發(fā)送給目的節(jié)點(diǎn).編解碼操作采用異或(XOR)編碼.
在選擇最佳協(xié)作節(jié)點(diǎn)的過程中綜合考慮節(jié)點(diǎn)與下一跳節(jié)點(diǎn)之間的鏈路質(zhì)量和與上一跳節(jié)點(diǎn)之間的鏈路質(zhì)量,能夠減小傳輸時(shí)延且使傳輸成功率更高.假設(shè)協(xié)作節(jié)點(diǎn)為 Ci,D(F1)表示節(jié)點(diǎn)F1的鄰居節(jié)點(diǎn)集;L(n)表示節(jié)點(diǎn)F1的上一跳節(jié)點(diǎn)的鄰居節(jié)點(diǎn)集;N(n)表示節(jié)點(diǎn)F1的下一跳節(jié)點(diǎn)的鄰居節(jié)點(diǎn)集;PS,Ci表示源節(jié)點(diǎn)與節(jié)點(diǎn)Ci之間的鏈路丟包率;PCi,Ri表示節(jié)點(diǎn)Ci與目的節(jié)點(diǎn)Ri之間的鏈路丟包率.則節(jié)點(diǎn)Ci為最佳協(xié)作節(jié)點(diǎn)的條件如下所示:
1)Ci∈L(n)且 Ci∈N(n),且有 Ci∈D(F1),即該節(jié)點(diǎn)既在上一跳節(jié)點(diǎn)的一跳范圍內(nèi),又在下一跳節(jié)點(diǎn)的一跳范圍內(nèi);
2)Ci=arg min(PS,Ci)且 Ci=arg min(PCi,Ri),即該節(jié)點(diǎn)與源節(jié)點(diǎn)之間和目的節(jié)點(diǎn)之間的鏈路質(zhì)量均是最佳的.
證明:假定上述條件1)和條件2)均成立.即節(jié)點(diǎn)Ci既是源節(jié)點(diǎn)的鄰居又是目的節(jié)點(diǎn)的鄰居,且節(jié)點(diǎn)Ci與S以及Ri之間的鏈路丟失率均為最小,則節(jié)點(diǎn)Ci可以偵聽到越多的信息,從而有利于充當(dāng)協(xié)作節(jié)點(diǎn),充分性得證.
假設(shè)節(jié)點(diǎn)Ci為協(xié)作節(jié)點(diǎn),則該節(jié)點(diǎn)既是源節(jié)點(diǎn)S的鄰居又是目的節(jié)點(diǎn)Ri的鄰居,滿足條件1).且Ci接收到最多的原始包和確認(rèn)信息,即該節(jié)點(diǎn)與S和Ri的鏈路質(zhì)量均為最好,鏈路丟失率最小,從而滿足條件2),必要性得證.
當(dāng)存在唯一節(jié)點(diǎn)滿足上述條件時(shí),選擇該節(jié)點(diǎn)作為協(xié)作節(jié)點(diǎn);當(dāng)存在兩個(gè)及以上節(jié)點(diǎn)滿足上述條件時(shí),選擇多個(gè)鄰居節(jié)點(diǎn)中擁有最多目的節(jié)點(diǎn)丟包的節(jié)點(diǎn)作為協(xié)作節(jié)點(diǎn).
定義1.最優(yōu)重傳組合(Optimized Retransmission Combination,ORC),可以使得所有目的節(jié)點(diǎn)至少恢復(fù)一個(gè)丟包的編碼包.
定義2.最大重傳組合(Maximum Retransmission Combination,MRC),可以使得最多目的節(jié)點(diǎn)至少恢復(fù)一個(gè)丟包的編碼包.
本文提出了動(dòng)態(tài)連續(xù)NC-ARQ策略,其基本思想是在首次完成前M個(gè)原始包的初始傳輸后,包傳輸采用數(shù)目動(dòng)態(tài)的連續(xù)傳輸方式來代替數(shù)目固定的塊傳輸方式.如圖2所示為動(dòng)態(tài)連續(xù)NC-ARQ策略描述圖,假設(shè)原始數(shù)據(jù)發(fā)送緩存空間為M,首先,源節(jié)點(diǎn)發(fā)送數(shù)據(jù)發(fā)送緩存中的原始包給目的節(jié)點(diǎn),目的節(jié)點(diǎn)接收數(shù)據(jù)包并反饋發(fā)送ACK/NACK;其次,協(xié)作節(jié)點(diǎn)搜索并重傳ORC或者滿足特定條件的MRC組合,目的節(jié)點(diǎn)接收編碼包后解碼并反饋發(fā)送ACK/NACK;然后,源節(jié)點(diǎn)更新數(shù)據(jù)發(fā)送緩存,并計(jì)算第1次數(shù)據(jù)傳輸過程中發(fā)送緩存中目的成功接受到的原始包數(shù)Li;最后,源節(jié)點(diǎn)繼續(xù)發(fā)送Li個(gè)原始數(shù)據(jù)包,目的反饋確認(rèn)信息,然后重復(fù)上述過程直到所有原始數(shù)據(jù)包被全部目的節(jié)點(diǎn)成功接收.
在IDCCR中,原始丟失數(shù)據(jù)包的選擇調(diào)度采用哈希漢明搜索.用表示丟失數(shù)據(jù)包Pj的漢明重量,該值為加權(quán)接收狀態(tài)矩陣Φ中對應(yīng)Pj所在列的元素取整之和,該值越大,Pj發(fā)生丟失越多,需要該包的目的節(jié)點(diǎn)越多,則該包對編碼的影響越大.記加權(quán)接收狀態(tài)矩陣Φ的列向量為WP1,WP2,…,WPM,若數(shù)據(jù)包 P1,P2,…Pn同時(shí)滿足下述兩式:
式中&表示元素進(jìn)行“與”運(yùn)算,則數(shù)據(jù)包P1,P2,…Pn是一組可解的編碼組合.公式(1)為編碼包的解碼條件,即允許目的節(jié)點(diǎn)在該編碼組合中沒有或僅有一個(gè)丟包;公式(2)為編碼性能判斷條件,值越大則越多的目的節(jié)點(diǎn)需要該編碼組合,編碼效率越高.
圖2 動(dòng)態(tài)連續(xù)NC-ARQ策略Fig.2 Illustration of dynamic continuous NC-ARQ strategy
定義3.若數(shù)據(jù)包P1,P2,…,Pn的漢明重量分別為 W1,W2,…,Wn,則 W1,W2,…,Wn的漢明鄰域可用集合 Uw表示:
根據(jù)漢明思想的定義,哈希漢明搜索的操作步驟如下所示:
步驟
1.計(jì)算加權(quán)接收狀態(tài)矩陣Φ中所有丟包的漢明重量;
步驟2.根據(jù)漢明重量從大到小的順序建立丟包的哈希漢明列表,列表中第二行為相同漢明重量的丟包個(gè)數(shù);
步驟3.在每次搜索中總是搜索漢明重量最大的丟包.首先從哈希漢明列表中選擇漢明重量最大的丟包,然后計(jì)算該值的漢明鄰域,并按大小順序從中找到下一個(gè)可組合的丟包;再根據(jù)這兩個(gè)丟包的漢明重量和計(jì)算其漢明鄰域,并按從大到小從中找到下一個(gè)可組合的丟包.不斷重復(fù)該過程,直至當(dāng)前搜索到的丟包組合的漢明重量和已經(jīng)達(dá)到N或哈希表已被搜索完畢,最后把本次搜索的結(jié)果進(jìn)行編碼重傳;
步驟4.根據(jù)目的節(jié)點(diǎn)的重傳反饋信息,源節(jié)點(diǎn)即時(shí)更新加權(quán)狀態(tài)矩陣,同時(shí)更新丟包哈希漢明列表;
步驟5.重復(fù)執(zhí)行步驟3和步驟4,直至全部目的節(jié)點(diǎn)成功接收到所有原始數(shù)據(jù)包.
IDCCR采用哈希漢明搜索方式選擇ORC和MRC組合,如果哈希漢明列表已被全部遍歷但所選的丟包組合漢明重量和沒達(dá)到N,那么本次搜索到編碼組合為MRC組合;否則是ORC組合.如表2所示為表1中矩陣Φ對應(yīng)的哈希漢明列表,編碼包 P1P3、P4P5、P2P6和 P7P10均可恢復(fù)所有目的的其中一個(gè)丟包,則這些丟包組合為ORC組合.
表2 哈希漢明列表Table 2 Hash hamming list
IDCCR算法采用不固定大小的動(dòng)態(tài)重傳策略代替固定大小的重傳機(jī)制,不僅能夠在塊內(nèi)進(jìn)行編碼操作,而且與現(xiàn)有基于網(wǎng)絡(luò)編碼的重傳策略相比傳輸效率更優(yōu).此外,為了更加快速有效的搜索原始丟失數(shù)據(jù)包組合,采用哈希漢明搜索方式搜索原始丟包.IDCCR算法流程圖如圖3所示.
圖3 IDCCR算法流程圖Fig.3 Flow chart of IDCCR algorithm
在HSNCR算法中,除初次的M個(gè)原始數(shù)據(jù)傳輸外,每發(fā)送一個(gè)原始包且該包在目的節(jié)點(diǎn)處存在丟失時(shí),將立刻進(jìn)入重傳過程,且僅重傳符合條件的最優(yōu)分組組合或最大分組組合.因此,在HSNCR中,總的重傳包數(shù)(T2)為:
當(dāng)采用INC-ARQ機(jī)制時(shí),重傳中編碼包的個(gè)數(shù)等于某接收節(jié)點(diǎn)處的最大丟包數(shù).假定源節(jié)點(diǎn)處原始數(shù)據(jù)發(fā)送緩存大小為M,需要傳輸?shù)脑紨?shù)據(jù)包總數(shù)為TN,Nij表示目的節(jié)點(diǎn)Ri在第j個(gè)緩存數(shù)據(jù)傳輸過程中的丟包數(shù),則總的重傳包數(shù)(T1)為:
采用IDCCR機(jī)制時(shí),除首次固定發(fā)送M個(gè)原始數(shù)據(jù)包外,每傳送Li(1≤Li≤M)個(gè)原始包時(shí)即開始重傳,且只重傳ORC或滿足條件的MRC.當(dāng)目的節(jié)點(diǎn)Ri有ni個(gè)原始丟包時(shí),接收到ni個(gè)重傳編碼包時(shí)就可以恢復(fù)其全部ni個(gè)丟包.因此,重傳包數(shù)等于某個(gè)目的節(jié)點(diǎn)處的最大丟包數(shù).則總的重傳包數(shù)(T3)為:
由公式(4)、公式(5)和公式(6)可以看出,T1總是大于等于T2和T3,因此與傳統(tǒng)的NC-ARQ機(jī)制相比,IDCCR算法與HSNCR算法的總重傳次數(shù)相對較少,且從公式(7)可以看出,IDCCR算法的總重傳次數(shù)相比HSNCR算法更少,則IDCCR算法性能更優(yōu).
在實(shí)際中,接收節(jié)點(diǎn)處的鏈路丟包率決定了原始丟包的平均數(shù)量.因此,當(dāng)原始數(shù)據(jù)包數(shù)足夠多時(shí),丟包率最大的節(jié)點(diǎn)決定了網(wǎng)絡(luò)的重傳性能.目的節(jié)點(diǎn)數(shù)為N,總的原始包數(shù)為TN,目的節(jié)點(diǎn)Ri處的丟包率為pi.則總的數(shù)據(jù)包傳輸次數(shù)(記為TTN)可表示為:
則TN個(gè)原始包的總重傳次數(shù)為:
假設(shè)目的節(jié)點(diǎn)處的丟包率均相同,即p1=p2,…,=p.則每一個(gè)原始數(shù)據(jù)包的平均重傳次數(shù)(記為ANR):
本文利用OPNET Modeler 14.5的仿真工具對IDCCR算法進(jìn)行仿真實(shí)驗(yàn),網(wǎng)絡(luò)模型設(shè)計(jì)為設(shè)計(jì)400m×400m的平面區(qū)域內(nèi),無線網(wǎng)絡(luò)模型包括一個(gè)源節(jié)點(diǎn)、一個(gè)中繼節(jié)點(diǎn)和N各目的節(jié)點(diǎn).MAC層協(xié)議采用IEEE 802.11.b標(biāo)準(zhǔn),數(shù)據(jù)傳輸速率最高為11Mb/s.原始數(shù)據(jù)包初始傳輸階段和丟包編碼重傳階段,原始數(shù)據(jù)包發(fā)送間隔為1s,發(fā)送的原始數(shù)據(jù)包總數(shù)用TN表示.
5.2.1 平均重傳次數(shù)的仿真及分析
為了驗(yàn)證IDCCR算法的有效性,本節(jié)對未編碼的ARQ、EONCR、HSNCR和IDCCR四種算法的平均重傳次數(shù)分別在鏈路丟失率、目的節(jié)點(diǎn)數(shù)不同取值的情況下進(jìn)行仿真實(shí)驗(yàn),固定原始數(shù)據(jù)包總數(shù)TN為5×105個(gè).
當(dāng)M=50,N=5,鏈路丟包率p以步長0.05的規(guī)律從0.2遞增到0.7,由圖4可知,當(dāng)p逐漸增大的時(shí)候,四種算法的重傳性能均有所提升.其主要原因是當(dāng)丟包率逐漸增大的時(shí)候,目的節(jié)點(diǎn)接收數(shù)據(jù)成功率均有所降低.從圖4中可看出IDCCR算法的重傳次數(shù)相比HSNCR算法略好一點(diǎn).其主要原因是IDCCR算法的連續(xù)重傳機(jī)制優(yōu)于HSNCR算法的連續(xù)重傳機(jī)制,IDCCR算法在完成原始數(shù)據(jù)包的首次傳輸后,用動(dòng)態(tài)數(shù)目的原始包傳輸來替代固定數(shù)目的原始包傳輸源,且在重傳時(shí)優(yōu)先重傳ORC和滿足條件的MRC,從而提升了重傳性能.
圖4 重傳次數(shù)VS鏈路丟失率Fig.4 Retransmission efficiency against PER
當(dāng)M=50,鏈路丟包率p=0.2,目的節(jié)點(diǎn)數(shù)N從2遞增到10.如圖5所示,當(dāng)目的節(jié)點(diǎn)數(shù)逐漸增多的時(shí)候,IDCCR算法、EONCR算法和HSNCR算法的ANR相對比較平穩(wěn),且IDCCR算法的ANR優(yōu)于HSNCR和EONCR算法,而未編碼的ARQ機(jī)制ANR趨于急速上升的趨勢.其主要原因是IDCCR算法中原始數(shù)據(jù)傳輸階段結(jié)束時(shí)將立刻進(jìn)入重傳階段,降低了目的節(jié)點(diǎn)數(shù)目增多對重傳次數(shù)的影響.另外從圖5中可以看出,目的節(jié)點(diǎn)數(shù)越多,未采用網(wǎng)絡(luò)編碼的ARQ機(jī)制的重傳次數(shù)增速極快,而其他三種算法的上升相對比較慢,說明后三種算法性能優(yōu)于未編碼的ARQ機(jī)制.
圖5 目的節(jié)點(diǎn)數(shù)VS重傳性能Fig.5 Retransmission efficiency against number of receivers
5.2.2 發(fā)送緩存及原始包數(shù)對重傳性能影響的仿真及分析
本節(jié)將對編碼的ARQ、EONCR、HSNCR和IDCCR四種算法的發(fā)送緩存大小和原始數(shù)據(jù)包總數(shù)對平均重傳次數(shù)的影響進(jìn)行仿真實(shí)驗(yàn).
當(dāng) N=4,p=0.2,TN=5 ×105,數(shù)據(jù)發(fā)送緩存 M 從 10 增大到400,三種算法的平均重傳次數(shù)仿真對比如圖6所示.由圖6可知,在M逐漸增大的過程中,相比其他三種算法,塊內(nèi)編碼的ARQ機(jī)制的ANR明顯較低,但是塊內(nèi)編碼的ARQ機(jī)制的ANR逐漸的貼近其他三種算法.當(dāng)M增大到100的時(shí)候,M值對IDCCR算法的影響已經(jīng)很小,其ANR值已無線逼近理論值.對于上述四種算法,發(fā)送緩存越大,則重傳效率越高.IDCCR算法中,由于每次僅重傳 ORC或 MRC,M越大,則MRC重傳機(jī)會(huì)越小,ORC重傳機(jī)會(huì)越大,從而單次重傳效率均會(huì)提升,重傳次數(shù)減少;且由于其采用了動(dòng)態(tài)連續(xù)重傳策略,新的丟包不斷的進(jìn)入下一次重傳中,當(dāng)M足夠大的時(shí)候,ORC的搜索要求已能夠完全滿足,即每次重傳基本都能找到ORC組合,從而使得重傳性能無線逼近理論值.明顯低于其他三種算法.這是因?yàn)橄鄬τ谄渌麕追N機(jī)制,IDCCR具有可利用的編碼機(jī)會(huì)更多,且單次重傳效率更優(yōu).EONCR算法和應(yīng)用編碼的ARQ機(jī)制僅在塊內(nèi)執(zhí)行重傳過程,因此重傳效率的影響因素僅僅是每批原始數(shù)據(jù)包的數(shù)量,而不是原始數(shù)據(jù)包總數(shù).在IDCCR和HSNCR算法中,在發(fā)送緩存空間的數(shù)據(jù)首次傳輸完成之后,分別進(jìn)入單個(gè)包傳輸方式和動(dòng)態(tài)傳輸方式,從而其平均傳輸次數(shù)并不會(huì)受到原始包數(shù)的影響.
當(dāng) N=4,p=0.2,M=100,原始數(shù)據(jù)包總數(shù) TN 從 105個(gè)增長為106個(gè),如圖7所示,IDCCR算法的ANR指標(biāo)總體上
圖6 重傳性能VS發(fā)送數(shù)據(jù)緩存大小Fig.6 Retransmission efficiency against the size of transfer buffer
圖7 重傳性能VS原始包總數(shù)Fig.7 Retransmission efficiency against number of original packets
本文通過分析及研究現(xiàn)有協(xié)作重傳算法,提出了一種改進(jìn)的協(xié)作重傳算法,以提高傳輸效率,優(yōu)化網(wǎng)絡(luò)性能.IDCCR算法避免了INC-ARQ方案的塊隔離問題,且解決了HSNCR算法的緩存空間浪費(fèi)問題并考慮了鏈路丟失率不同的情況,從而為丟失數(shù)據(jù)包提供了更多的編碼可能性.IDCCR算法是基于哈希漢明搜索的快速丟包選擇調(diào)度算法.此外,該新算法通過僅重傳ORC或MRC來最大程度地提高每一次的重傳增益.通過對不同條件下重傳性能的仿真實(shí)驗(yàn)結(jié)果表明,IDCCR方案在減少重傳次數(shù)上確實(shí)優(yōu)于以往方案.在今后的工作中,我們將對多節(jié)點(diǎn)協(xié)作的這一方案做一些研究.