(中國西南電子技術(shù)研究所,成都610036)
Internet中,傳輸控制協(xié)議(TCP)基于以下4種假設(shè):源節(jié)點和目的節(jié)點之間經(jīng)過3次握手建立端到端的連接之后才能進(jìn)行通信;源節(jié)點和目的節(jié)點之間較低的鏈路誤碼率;源節(jié)點和目的節(jié)點之間較低的往返時延(Round-Trip Time,RTT);源節(jié)點和目的節(jié)點存在對稱的數(shù)據(jù)鏈路。而在延遲容忍網(wǎng)絡(luò)(Delay Tolerant Network,DTN)中,由于不能滿足其中一種或者多種假設(shè)[1-2],所以TCP不能很好工作在延遲容忍網(wǎng)絡(luò)中,需要設(shè)計新的差錯控制策略。
現(xiàn)有用于延遲容忍網(wǎng)絡(luò)的傳輸控制協(xié)議主要是逐跳的或是端到端的。 文獻(xiàn)[1]提出端到端的傳輸控制協(xié)議,在傳統(tǒng)TCP/IP協(xié)議基礎(chǔ)上,通過在應(yīng)用層和傳輸層之間增加一個捆綁層(Bundle Layer)來保證端到端的可靠傳輸。新增的捆綁層對所有應(yīng)用層和傳輸層都是透明的。它負(fù)責(zé)將接收到的消息存儲在非易失性存儲介質(zhì)中,對接收到的信息進(jìn)行安全檢測,然后可靠地轉(zhuǎn)發(fā)數(shù)據(jù)。同時,捆綁層還用于節(jié)點收到消息后的確認(rèn)回復(fù),實現(xiàn)端到端的傳輸控制。
文獻(xiàn)[3]提出逐跳的傳輸控制協(xié)議(Licklider Transmission Protocol,LTP)工作在鏈路層上,對數(shù)據(jù)采取有區(qū)分的傳輸,保證延遲容忍網(wǎng)絡(luò)可靠地逐跳數(shù)據(jù)傳輸。
現(xiàn)有用于延遲容忍網(wǎng)絡(luò)的傳輸控制協(xié)議沒有自適應(yīng)的,同時無線網(wǎng)絡(luò)中媒體訪問控制(MAC)層差錯控制和傳輸層控制是相互透明的[4],在信道狀況較好的情況下,沒有必要采取雙重差錯控制機(jī)制。本文結(jié)合延遲容忍網(wǎng)絡(luò)的高誤碼特性,提出一種基于MAC層丟包率自適應(yīng)差錯控制方案,該方案能夠有效改善網(wǎng)絡(luò)時延,在一定程度上滿足了對網(wǎng)絡(luò)時延比較敏感而對網(wǎng)絡(luò)丟包不敏感的業(yè)務(wù)要求。
傳統(tǒng)的IEEE 802.11 DCF機(jī)制中間增加了退避重傳策略,MAC層一旦出現(xiàn)數(shù)據(jù)幀丟失,便重傳該數(shù)據(jù)幀。在延遲容忍網(wǎng)絡(luò)中,通常鏈路的誤碼率很高,信道質(zhì)量較差,需要多次重傳,造成網(wǎng)絡(luò)時延增大。該機(jī)制并不適合信道狀況較差且對時延要求比較高的圖像和語音業(yè)務(wù)的要求。
另外一種差錯控制方案是沒有退避重傳策略的MAC層差錯控制方案,MAC層一旦出現(xiàn)數(shù)據(jù)幀丟失,不再重傳該數(shù)據(jù)幀,直接丟棄。由于延遲容忍網(wǎng)絡(luò)中鏈路誤碼率很高,數(shù)據(jù)幀一旦出現(xiàn)錯誤,便丟棄該數(shù)據(jù)幀,造成網(wǎng)絡(luò)的吞吐量過低,不能很好適應(yīng)圖像和語音等實時性業(yè)務(wù)吞吐量的要求。
傳統(tǒng)的IEEE 802.11 DCF因為有退避重傳策略,能夠保證高吞吐量;MAC層無退避重傳策略,由于沒有退避重傳,能保證較低的端到端時延。本文結(jié)合以上兩種差錯控制策略的優(yōu)點,提出一種自適應(yīng)的差錯控制方案。
本文根據(jù)MAC層的丟包率作出自適應(yīng)的調(diào)整。在MAC層設(shè)定一個丟包率門限值Th。若在MAC層出現(xiàn)數(shù)據(jù)幀丟失,并且需要重傳時,用當(dāng)前時刻的MAC層丟包率Ploss跟MAC層設(shè)定的丟包率門限值Th比較。當(dāng)Ploss大于該門限值時,表明信道狀況很差,需要采取MAC層重傳機(jī)制;當(dāng)Ploss小于該門限值時,表明信道狀況較好,不需要采取MAC層重傳機(jī)制。多次實驗分析表明,MAC層丟包率門限值Th為0.09時,網(wǎng)絡(luò)時延性能最好。
圖1 自適應(yīng)差錯控制流程
自適應(yīng)差錯控制方案可以分為競爭信道過程、發(fā)送數(shù)據(jù)過程和重傳判決過程3個階段,具體流程如圖1所示:
(1)發(fā)送主機(jī)監(jiān)聽媒體,如果媒體空閑達(dá)到DIFS時間,主機(jī)立即發(fā)出RTS幀競爭信道,當(dāng)接收主機(jī)接收到RTS幀后,向發(fā)送主機(jī)回復(fù)CTS幀,當(dāng)發(fā)送主機(jī)成功接收到CTS幀后,表明發(fā)送主機(jī)已經(jīng)成功競爭到信道。發(fā)送主機(jī)和接收主機(jī)的鄰居節(jié)點退避;
(2)如果媒體忙,則延遲接入,直到媒體空閑時間達(dá)到DIFS以后,發(fā)送主機(jī)進(jìn)入退避過程;
(3)發(fā)送主機(jī)根據(jù)退避算法選擇一個退避時間,并設(shè)置退避時間計數(shù)器。在媒體空閑時,退避時間計數(shù)器每隔一個時隙減1;在媒體忙時,退避時間計數(shù)器停止計數(shù);
(4)在退避時間計數(shù)器減到零后,發(fā)送主機(jī)立即發(fā)送RTS幀,重新競爭信道;
(5)發(fā)送主機(jī)成功競爭到信道后,開始發(fā)送數(shù)據(jù)幀。發(fā)數(shù)據(jù)幀計數(shù)器加1,其中發(fā)送數(shù)據(jù)幀計數(shù)器為周期計數(shù)器,設(shè)周期為1 s;
(6)發(fā)送主機(jī)發(fā)送數(shù)據(jù)幀后,如果在規(guī)定時間內(nèi)沒有收到ACK回復(fù),表明數(shù)據(jù)幀發(fā)送失敗,然后判斷發(fā)送主機(jī)發(fā)送數(shù)據(jù)幀計數(shù)器是否超時,如果超時,則發(fā)送主機(jī)發(fā)數(shù)據(jù)幀計數(shù)器置零,周期被重置為1 s,接收ACK周期計數(shù)器置零,周期也被重置為1 s,然后轉(zhuǎn)步驟7;如果沒有超時,則直接轉(zhuǎn)步驟7;
(7)發(fā)送主機(jī)根據(jù)式(3)計算丟包率Ploss,根據(jù)式(4)平滑丟包率。如果Ploss大于MAC層丟包率門限值Th,則進(jìn)入重傳退避過程,回到步驟2;否則,直接丟棄需要重傳的數(shù)據(jù)幀,釋放信道;
(8)如果在規(guī)定的時間內(nèi)收到ACK,表明數(shù)據(jù)幀發(fā)送成功,接收ACK周期計數(shù)器加1。
步驟3中的“根據(jù)退避算法選擇一個退避時間”,這里的退避算法由下面的公式?jīng)Q定:
退避時間=[CW×random( )]×slottime
(1)
式中,CW是退避窗口,random()是(0,1)之間的一個隨機(jī)數(shù),?X」代表小于等于X的最大整數(shù),slottime是時隙長度。
設(shè)W是退避窗口的初始值,m是退避級數(shù),m∈[1,mmax],mmax是最大退避級數(shù),則:
CW=W×2m-1,m∈[1,mmax]
(2)
退避窗口初始值W的默認(rèn)值是32,m的默認(rèn)值是6。如果是第一次進(jìn)入退避過程,退避窗口CW采用的默認(rèn)值32。如果是重傳退避過程,退避窗口CW采用的值是由公式(2)計算出的新值。CW值的變化序列為32,64,128,256,512,102 4。
MAC層丟包率Ploss定義如下:
(3)
式中,NTransmittedDATA是當(dāng)前節(jié)點MAC層發(fā)送數(shù)據(jù)幀的個數(shù),NReceivedACK是當(dāng)前節(jié)點MAC層發(fā)送數(shù)據(jù)幀后得到的確認(rèn)ACK個數(shù)。MAC層丟包率Ploss受信道狀況影響,顯然信道狀況較好時,MAC層丟包率較低,反之,MAC層丟包率較高。
由于延遲容忍網(wǎng)絡(luò)鏈路變化劇烈,所以丟包率的值變化很大。為了平滑Ploss的值,根據(jù)如下的公式對Ploss平滑[5]:
Ploss=α×Ploss+(1-α)×PPloss
(4)
式中,α是(0,1)之間的任意值,Ploss是當(dāng)前時刻丟包率,PPloss是上一幀發(fā)送時刻丟包率。
對圖2的網(wǎng)絡(luò)情景進(jìn)行仿真,分析MAC層丟包率和網(wǎng)絡(luò)時延以及吞吐量的關(guān)系、網(wǎng)絡(luò)負(fù)載和網(wǎng)絡(luò)時延以及吞吐量的關(guān)系,其中各個節(jié)點之間鏈路誤碼率是動態(tài)變化的,且誤碼率很高。
圖2 網(wǎng)絡(luò)情景
本文采用NS2仿真平臺[6],UDP協(xié)議,IEEE 802.11 DCF協(xié)議,節(jié)點2和節(jié)點3之間誤碼模型產(chǎn)生的誤碼率動態(tài)變化。CBR速率也是可變的,包長210 byte;節(jié)點之間的帶寬為1 Mbit/s,平滑丟包率α為0.2,仿真時間50 s。仿真有MAC層退避重傳的IEEE 802.11 DCF機(jī)制、在MAC層采取自適應(yīng)重傳機(jī)制和在MAC層無重傳機(jī)制3種方案的性能。
圖2網(wǎng)絡(luò)仿真情景中,節(jié)點2和節(jié)點3之間誤碼率是在1×10-2~9×10-2、1×10-3~9×10-3、1×10-4~9×10-4、1×10-5~9×10-5、1×10-6~9×10-65個不同數(shù)量級誤碼率下動態(tài)變化。5個不同數(shù)量級的誤碼率分別對應(yīng)不同的網(wǎng)絡(luò)時延和網(wǎng)絡(luò)吞吐量。CBR速率448 kbit/s得到的網(wǎng)絡(luò)時延結(jié)果取平均值,如圖3所示;得到的網(wǎng)絡(luò)吞吐量取平均值,如圖4所示。
圖3 MAC層不同誤碼率數(shù)量級下的平均網(wǎng)絡(luò)時延
圖4 MAC層不同誤碼率數(shù)量級下的平均網(wǎng)絡(luò)吞吐量
圖3和圖4中,標(biāo)記為方框的曲線是IEEE 802.11 DCF方案的性能,該方案記為方案1;標(biāo)記為星號的曲線是自適應(yīng)差錯控制方案的性能,該方案記為方案2;標(biāo)記為三角號的曲線是無重傳的差錯控制方案的性能,該方案記為方案3。從圖3和圖4可以得出如下結(jié)論:
(1)方案1平均時延最大。當(dāng)誤碼率大于10-4時,方案2時延略大于方案3時延。 當(dāng)誤碼率小于10-4時,方案2時延略小于方案3時延,方案2和方案3平均時延基本相當(dāng)。隨著MAC層誤碼率降低到10-6時,3種方案的平均時延趨于相同;
(2)方案1平均吞吐量最高,方案2的平均吞吐量次之,方案3的平均吞吐量最低。當(dāng)MAC層誤碼率低于10-6數(shù)量級,3種方案的平均吞吐量趨于相同;
(3)方案2和方案3的網(wǎng)絡(luò)時延基本一致,且均遠(yuǎn)遠(yuǎn)小于方案1的網(wǎng)絡(luò)時延。對于對網(wǎng)絡(luò)時延要求比較敏感、對丟包不太敏感的圖像和語音業(yè)務(wù),方案1表現(xiàn)較差,方案2和方案3都能在一定程度上滿足這類業(yè)務(wù)的要求。但是方案2的平均吞吐量比方案3大,所以方案2更能適應(yīng)這類業(yè)務(wù)的要求,即自適應(yīng)差錯控制方案更能適應(yīng)這類業(yè)務(wù)的要求。
仿真圖2的網(wǎng)絡(luò)情景,得到不同網(wǎng)絡(luò)負(fù)載下的吞吐量和時延的關(guān)系。節(jié)點2和節(jié)點3之間MAC層誤碼率在1×10-2~9×10-2之間動態(tài)變化。網(wǎng)絡(luò)負(fù)載取40 kbit/s的整數(shù)倍,取NS2仿真得到網(wǎng)絡(luò)時延和網(wǎng)絡(luò)吞吐量的平均值,結(jié)果如圖5和圖6所示。
圖5 不同網(wǎng)絡(luò)負(fù)載下的平均網(wǎng)絡(luò)時延
圖6 不同網(wǎng)絡(luò)負(fù)載下的平均網(wǎng)絡(luò)吞吐量
圖5和圖6中,標(biāo)記為方框的曲線是IEEE 802.11 DCF方案的性能,該方案記為方案1;標(biāo)記為星號的曲線是自適應(yīng)差錯控制方案的性能,該方案記為方案2;標(biāo)記為三角號的曲線是無重傳的差錯控制方案的性能,該方案記為方案3。從圖5和圖6可以得出如下結(jié)論:
(1)方案1的平均時延最大,方案2的平均時延次之,方案3的平均時延最低。當(dāng)負(fù)載低于300 kbit/s時,3種方案平均時延均低于正常時延,當(dāng)網(wǎng)絡(luò)負(fù)載高于300 kbit/s時,3種方案平均時延均在正常水平波動;
(2)方案1的平均吞吐量最大,方案2的平均吞吐量次之,方案3的平均吞吐量最低。3種方案在網(wǎng)絡(luò)負(fù)載小于100 kbit/s時,吞吐量均小于正常水平,當(dāng)負(fù)載大于100 kbit/s時,吞吐量達(dá)到正常水平;
(3)方案2隨著負(fù)載的變化和節(jié)點之間誤碼率的動態(tài)變化,能夠根據(jù)信道狀況自適應(yīng)地調(diào)整,當(dāng)信道狀況較好時,不需要進(jìn)行數(shù)據(jù)幀重傳,則它的時延比較靠近方案3的網(wǎng)絡(luò)時延。反之,當(dāng)信道狀況不好時,需要進(jìn)行數(shù)據(jù)重傳,就增加了數(shù)據(jù)包端到端的時延,則此時網(wǎng)絡(luò)時延靠近方案1。方案2能夠根據(jù)信道的狀況自適應(yīng)地調(diào)整差錯控制策略;
(4)方案1雖然網(wǎng)絡(luò)負(fù)載較高,但是它的時延也較高,不適合對時延要求較高的業(yè)務(wù)。雖然方案3時延較低,但是它的平均吞吐量太低,同樣也不符合這類業(yè)務(wù)的要求。方案2在吞吐量和時延上均折衷,能在一定程度上適應(yīng)這類業(yè)務(wù)的要求,改善通信質(zhì)量;
(5)當(dāng)負(fù)載增大時,時延和吞吐量并沒有發(fā)生劇烈的變化。由此可以看出,網(wǎng)絡(luò)的吞吐量和時延與負(fù)載沒有關(guān)系,而與信道質(zhì)量有關(guān)。
綜上所述,MAC層自適應(yīng)差錯控制方案能夠在一定程度上改善對丟包不敏感、對時延比較敏感的業(yè)務(wù)性能。尤其在信道狀況較差的網(wǎng)絡(luò)環(huán)境中,自適應(yīng)差錯控制方案的優(yōu)越性體現(xiàn)得越明顯。
針對延遲容忍網(wǎng)絡(luò)的特點,結(jié)合IEEE 802.11 DCF機(jī)制和MAC層沒有重傳退避機(jī)制的優(yōu)點,本文提出一種基于MAC層丟包率的自適應(yīng)差錯控制方案。在一定程度上改善了對時延敏感的業(yè)務(wù)的性能,減少了中間節(jié)點的開銷,降低了數(shù)據(jù)包的時延,減少了帶寬不必要浪費。
參考文獻(xiàn):
[1] Fall F. A delay-tolerant network architecture for challenged internets[C]//Proceedings of ACM Special Interest Group of Communication(SIGCOMM).karlsruhe,Germany:[s.n.],2003.
[2] 樊秀梅, 單志廣, 張寶賢,等. 容遲網(wǎng)絡(luò)體系結(jié)構(gòu)及其關(guān)鍵技術(shù)研究[J]. 電子學(xué)報, 2008, 36(1): 161-170.
FAN Xiu-mei,SHAN Zhi-guang,ZHANG Bao-xian,et al. State-of-the-Art of the Architecture and Techniques for Delay-Tolerant Networks[J]. Acta Electronica Sinica, 2008, 36(1): 161-170. (in Chinese)
[3] FARRELL, STEPHEN. Transmission protocols for challenging networks: LTP and LTP-T [C]// International Workshop In Satellite and Space Communications.France:IEEE,2007:145-149.
[4] 徐昌彪,隆克平.無線網(wǎng)絡(luò)中差錯控制與擁塞控制策略的分析[J].重慶郵電學(xué)院學(xué)報,2001,13(1):30-33.
XU Chang-biao,LONG Ke-ping.Analyses & Considerations about the policies of error controls and congestion controls in wireless networks[J].Journal of Chongqing University of Posts and Telecommunication,2001,13(1):30-33.(in Chinese)
[5] 溫建偉, 戴瓊海, 金以慧. 無線視頻通信中信道自適應(yīng)差錯控制策略的研究[J]. 控制與決策, 2006, 21(10): 1153-1158.
WEN Jian-wei,DAI Qiong-hai,JIN Yi-hui. On Channel-adaptive Error Control Technique for Wireless Video Communication[J].Control and Decision,2006, 21(10): 1153-1158. (in Chinese)
[6] 于斌, 孫斌, 溫暖,等. NS2與網(wǎng)絡(luò)模擬[M]. 北京: 人民郵電出版社, 2007.
YU Bin,SUN Bin,WEN Ruan. NS2 and Network Simulation[M].Beijing:People′s Post & Telecomm Press,2007.(in Chinese)