改進(jìn)的無線網(wǎng)絡(luò) TCP 協(xié)議跨層設(shè)計方法_第1頁
改進(jìn)的無線網(wǎng)絡(luò) TCP 協(xié)議跨層設(shè)計方法_第2頁
改進(jìn)的無線網(wǎng)絡(luò) TCP 協(xié)議跨層設(shè)計方法_第3頁
改進(jìn)的無線網(wǎng)絡(luò) TCP 協(xié)議跨層設(shè)計方法_第4頁
改進(jìn)的無線網(wǎng)絡(luò) TCP 協(xié)議跨層設(shè)計方法_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

—145—改進(jìn)的無線網(wǎng)絡(luò)TCP協(xié)議跨層設(shè)計方法龐前娟,李精華,嵆建波,劉曉剛(桂林航天工業(yè)高等??茖W(xué)校電子工程系,廣西桂林541004摘要:針對傳統(tǒng)TCP協(xié)議的擁塞控制機(jī)制在無線網(wǎng)絡(luò)中不能很好地解決數(shù)據(jù)丟失的問題,提出一種改進(jìn)的無線網(wǎng)絡(luò)TCP協(xié)議跨層設(shè)計方法——NTCP。NTCP將傳統(tǒng)TCP功能分割為傳輸速率控制和數(shù)據(jù)完整性控制2個部分,避免使用轉(zhuǎn)發(fā)節(jié)點信息的方法,最大限度地利用無線資源。該方法與傳統(tǒng)TCP-Reno方法相比,能提高無線網(wǎng)絡(luò)的吞吐量,其穩(wěn)定性和速率自適應(yīng)能力也有較好的改善。關(guān)鍵詞:無線網(wǎng)絡(luò);TCP協(xié)議;數(shù)據(jù)擁塞;跨層設(shè)計ImprovedCross-layerDesignMethodofWirelessNetworkTCPProtocolPANGQian-juan,LIJing-hua,JIJian-bo,LIUXiao-gang(DepartmentofElectronicEngineering,GuilinCollegeofAerospaceTechnology,Guilin541004,China【Abstract】Inthetraditionalwirelessnetworkprotocol,TCPcongestioncontrolmechanismcannotbeagoodsolutiontotheproblemofmissingdata.Aimingatthisproblem,thispaperproposesanimprovedcross-layerdesignmethodofwirelessnetworkTCPprotocol——NTCP.NTCPisdividedintothetraditionalfunctionsofTCPtransmissionspeedcontrolanddataintegritycontroloftwoparts.Itavoidstheuseofforwardnodeinformationandmaximizestheuseofwirelessresources.ComparedwiththetraditionalmethodofTCP-Reno,thismethodcanincreasethethroughputofthewirelessnetwork,itsstabilityandrateofadaptivecapacityareimproved.【Keywords】wirelessnetwork;TransmissionControlProtocol(TCP;datagramcongestion;cross-layerdesign計算機(jī)工程ComputerEngineering第36卷第19期Vol.36No.192010年10月October2010·網(wǎng)絡(luò)與通信·文章編號:1000—3428(201019—0145—03文獻(xiàn)標(biāo)識碼:A中圖分類號:TP3931概述TCP協(xié)議是針對有線網(wǎng)絡(luò)設(shè)計的,在有線網(wǎng)中出錯率相當(dāng)?shù)?。一般認(rèn)為丟包是由網(wǎng)絡(luò)擁塞引起的,這時TCP就會啟動它的擁塞控制算法來減小傳輸率。如果將TCP直接應(yīng)用于無線網(wǎng)絡(luò)上,只要丟包一發(fā)生,TCP就會認(rèn)為是擁塞引起的,從而啟動擁塞控制機(jī)制,這將大大降低TCP在無線網(wǎng)絡(luò)上的性能。因此,TCP協(xié)議需要改進(jìn)才能適用于環(huán)境復(fù)雜的無線網(wǎng)絡(luò)。本文提出一種能改善TCP性能的新方法——NTCP,運用跨層設(shè)計[1]將TCP端到端的流量控制功能放在MAC層中,以節(jié)點間的相互監(jiān)督、相互協(xié)調(diào)的方式實現(xiàn)。該方法的特點是降低發(fā)端的數(shù)據(jù)速率控制對于TCP-ACK的依賴,轉(zhuǎn)而充分利用無線信道MAC的特性。它避免了使用節(jié)點轉(zhuǎn)發(fā)信息方法的缺點,降低無線網(wǎng)絡(luò)丟包對網(wǎng)絡(luò)性能的損害。本文用傳統(tǒng)TCP中最常用的版本TCP-Reno作為對照樣本,比較分析了在靜態(tài)場景下兩者的吞吐量、時延特性和速率自適應(yīng)的性能。2改進(jìn)的無線網(wǎng)絡(luò)TCP協(xié)議跨層設(shè)計分析數(shù)據(jù)擁塞在無線和有線網(wǎng)絡(luò)通信中都廣泛存在,但它所造成的影響在無線網(wǎng)絡(luò)尤其是多跳的無線網(wǎng)絡(luò)通信中非常嚴(yán)重。主要由于多跳的無線網(wǎng)絡(luò)中多個MP會使用相同的信道進(jìn)行網(wǎng)絡(luò)連接,當(dāng)一個節(jié)點在傳輸數(shù)據(jù)時,它的相鄰節(jié)點需要延遲發(fā)送,否則會出現(xiàn)嚴(yán)重的本地?fù)砣?從而影響端到端的吞吐率。因此,在無線網(wǎng)絡(luò)中如何解決相鄰鏈路的帶寬問題成為一個關(guān)鍵問題。在傳統(tǒng)的TCP協(xié)議中雖然也有擁塞控策略[2],但已不能完全解決無線網(wǎng)絡(luò)的擁塞控制,目前通過2層來實現(xiàn)擁制以成為必然,特別是處理網(wǎng)絡(luò)突發(fā)性錯誤超成的擁塞,效果尤為顯,并且能減輕TCP層擁塞控制的壓力,本文選取MAC層和TCP層進(jìn)行跨層設(shè)計。2.1MAC層修改為了解決本地?fù)砣麊栴},將流量擁塞控制功能移至MAC層[3],根據(jù)網(wǎng)絡(luò)擁塞狀況實時調(diào)節(jié)發(fā)送速率,通過鄰居節(jié)點的直接反饋來了解網(wǎng)絡(luò)擁塞狀況,避免由于頻繁路由失效引起的TCP長時處于慢啟動狀態(tài),TCP連接始終保持無線資源的最優(yōu)利用,這是NTCP的主要思想。為了達(dá)到以上目標(biāo),在802.11XDCF的MAC層修改時,保證正常數(shù)據(jù)信息在網(wǎng)絡(luò)暢通的條件下,增加進(jìn)行擁塞信息傳遞額外控制包的控制幀開銷,在兼顧協(xié)議系統(tǒng)升級同時,盡量利用現(xiàn)有的協(xié)議系統(tǒng),通過較少的修改完成新協(xié)議的建立。在IEEE802.11現(xiàn)有的RTS/CTS機(jī)制中增加NTR(NotToReceive幀和FRTS(FutureRequestToSend幀,在節(jié)點收到RTS信號包之后由于擁塞無法接收對方即將發(fā)送的包,通知對方停止此次發(fā)送行為,且NTR幀中有變量標(biāo)明當(dāng)前節(jié)點自身處于擁塞狀態(tài)需要發(fā)送數(shù)據(jù),FRTS幀則表明當(dāng)前仍然有多個包需要發(fā)送,待未發(fā)送包發(fā)送完畢之后信道擁塞撤銷,所有受影響的節(jié)點可以開始下一輪競爭[4]。NTR是CTS的變型幀,而FRTS是RTS基金項目:國家自然科學(xué)基金資助項目(10647001,60972031;廣西科學(xué)基金資助項目(0728042作者簡介:龐前娟(1970-,女,講師、碩士,主研方向:電子技術(shù),通信與信息系統(tǒng);李精華、嵇建波,副教授、碩士;劉曉剛,教授、博士—146—的變型幀。這樣的幀設(shè)計不需要對原有的MAC層協(xié)議做過多的修改,比起發(fā)送探測包或明確通知的包這一類需要添加全新幀的設(shè)計,系統(tǒng)升級更容易實現(xiàn)。增加新的NTR和FRTS幀之后,MAC的狀態(tài)機(jī)添加偵聽?wèi)B(tài)和拒絕態(tài)。MAC的狀態(tài)機(jī)共包含空閑、掛起、接收、發(fā)送、請求發(fā)送、允許發(fā)送、沖突、拒絕和偵聽共10種狀態(tài)。MAC層的發(fā)包過程大概分為3類:廣播包直接發(fā)送,數(shù)據(jù)包正常發(fā)送,數(shù)據(jù)包拒絕發(fā)送。前2類完全采用現(xiàn)有IEEE802.11協(xié)議規(guī)定。最后數(shù)據(jù)拒絕發(fā)送過程描述如下:節(jié)點A偵聽到當(dāng)前信道空閑,等待DIFS后向節(jié)點B發(fā)送RTS數(shù)據(jù)發(fā)送請求,節(jié)點B綜合本地?fù)砣畔⒓氨镜負(fù)砣涗浿鬀Q定拒絕節(jié)點A此次請求,隨及發(fā)送NTR數(shù)據(jù)傳輸拒絕信息給節(jié)點A,節(jié)點A收到該拒絕信息之后停止本次數(shù)據(jù)發(fā)送嘗試,等待節(jié)點B首先進(jìn)行數(shù)據(jù)發(fā)送,節(jié)點B轉(zhuǎn)為待發(fā)送數(shù)據(jù)節(jié)點。2.2改進(jìn)的NTCP算法分析首先定義參數(shù)節(jié)點擁塞度來衡量節(jié)點的擁塞程度。網(wǎng)絡(luò)節(jié)點為了預(yù)防短時擁塞或媒體競爭造成的包傳輸時延采用MAC緩存器緩存當(dāng)前接收數(shù)據(jù),當(dāng)流經(jīng)該節(jié)點的數(shù)據(jù)流量過大時,節(jié)點的流入數(shù)據(jù)包個數(shù)將大于流出數(shù)據(jù)包個數(shù),MAC緩存器的占用率將隨之增大。選取緩存器的占用率來表示出節(jié)點間數(shù)據(jù)流的擁塞狀況。假設(shè)節(jié)點緩存器的大小為M,節(jié)點的占用情況滿足以下表達(dá)式:(xMxη=?其中,(xη是節(jié)點當(dāng)前緩存器占用情況;M為該節(jié)點緩存總數(shù);x為節(jié)點緩存器預(yù)留空間。(xη值一旦超過擁塞事件臨界點,判定該節(jié)點發(fā)生擁堵事件。NTCP算法流程如圖1所示,算法要求每個節(jié)點都要以擁塞度作為依據(jù)參與到流量控制中。(a發(fā)送節(jié)點流程(b接收節(jié)點流程圖1NTCP算法流程按照前面MAC層的修改,節(jié)點A競爭空閑信道成功之后向B發(fā)送RTS請求,B收到該RTS請求之后根當(dāng)前節(jié)點的競爭度確認(rèn)應(yīng)對方案。如果B當(dāng)前處于非偵聽?wèi)B(tài),就不再回應(yīng)A的RTS請求,轉(zhuǎn)而向A和周圍節(jié)點廣播發(fā)送NTR(即拒絕幀拒絕此次發(fā)送請求,并在NTR幀中申明當(dāng)前有k個數(shù)據(jù)等待發(fā)送,B發(fā)送完NTR幀后立刻轉(zhuǎn)入數(shù)據(jù)發(fā)送過程。B在發(fā)送NTR之后,待發(fā)送數(shù)據(jù)發(fā)送完畢之前,使用FRTS代替RTS表明當(dāng)前仍然有待發(fā)送數(shù)據(jù)未發(fā)送完畢。周圍節(jié)點偵聽到NTR幀之后,進(jìn)入偵聽?wèi)B(tài),并記錄發(fā)送NTR節(jié)點的節(jié)點信息,包括其MAC地址以及待發(fā)送數(shù)據(jù)個數(shù)。進(jìn)入偵聽?wèi)B(tài)后,偵聽節(jié)點停止發(fā)送數(shù)據(jù),開始監(jiān)控周圍信道信息,關(guān)注發(fā)送NTR節(jié)點的數(shù)據(jù)發(fā)送狀況,一旦該節(jié)點成功發(fā)送它申明的待發(fā)送數(shù)據(jù)量k,各偵聽節(jié)點和之前的發(fā)送節(jié)點共同回到非偵聽?wèi)B(tài)重新開始信道競爭。B也重新使用RTS進(jìn)行數(shù)據(jù)發(fā)送請求。如果B當(dāng)前處于偵聽?wèi)B(tài),B需要查詢本節(jié)點之前是否收到A發(fā)送的NTR幀且A還未發(fā)送完所有待發(fā)數(shù)據(jù)包。如果A確實發(fā)送NTR幀且目前還處于擁塞狀態(tài),按常規(guī)發(fā)送CTS幀允許數(shù)據(jù)發(fā)送請求。TCP鏈路上所有相關(guān)節(jié)點按照點和點之間的競爭方式相互制約自動調(diào)節(jié)。流經(jīng)區(qū)域的網(wǎng)絡(luò)擁塞程度決定了中間節(jié)點的發(fā)送速率,中間節(jié)點的發(fā)送速率決定了源節(jié)點的緩存中的緩存數(shù)據(jù)數(shù)量,當(dāng)中間節(jié)點發(fā)送速率提高,源節(jié)點的發(fā)送速率隨之提高,中間節(jié)點的發(fā)送速率降低源節(jié)點的發(fā)送速率隨之降低,從而達(dá)到平衡網(wǎng)絡(luò)流量的目的。3仿真結(jié)果與分析實驗基于IEEE802.11DCF模式為基礎(chǔ)修改的MAC層,以IEEE802.11b為物理層,采用的路由協(xié)議為AODV[5]協(xié)議。每個節(jié)點的發(fā)射范圍為250m,偵聽范圍550m,基本速率為1Mb/s,數(shù)據(jù)速率11Mb/s,TCP分組的大小為520Byte,傳輸?shù)臉I(yè)務(wù)為FTP數(shù)據(jù),仿真時間為300s,至少保證有大于10000個包的數(shù)據(jù)傳輸,相鄰節(jié)點間距離為200m,TCP連接在整個生存期內(nèi)一直有數(shù)據(jù)需要傳輸。NTCP的k值設(shè)為5,擁塞臨界點取10。運用NS2仿真工具對NTCP的性能與目前使用范圍最廣的TCP-Reno進(jìn)行仿真對比分析。主要仿真參數(shù)包括單位時間網(wǎng)絡(luò)吞吐量、時延特性以及速率自適應(yīng)能力[6]。2種方法的網(wǎng)絡(luò)吞吐量對比如圖2所示,其端到端時—147—從圖2的仿真結(jié)果可以看出,開始TCP-Reno和NTCP的網(wǎng)絡(luò)吞吐量隨著跳數(shù)的增加陡然下降,當(dāng)源節(jié)點到目的節(jié)點間的跳數(shù)增大到一定程度之后吞吐量趨于穩(wěn)定,但NTCP的吞吐量一直優(yōu)于TCP-Reno。根據(jù)圖3的仿真結(jié)果可以發(fā)現(xiàn),隨著源目的節(jié)點間的跳數(shù)增加,TCP-Reno和NTCP的端到端的時延都呈非線性增大的趨勢。開始NTCP的時延小于TCP-Reno的,但是跳數(shù)達(dá)到5跳之后,NTCP的時延超過TCP-Reno,主要由于新方法的端到端時延由兩部分組成即在MAC緩存調(diào)度器中排隊等待服務(wù)的總時間加上在MAC層傳輸服務(wù)的總時間,而仿真場景里等待服務(wù)時間遠(yuǎn)大于傳輸服務(wù)時間。TCP-Reno采用基于窗口和自時鐘的端到端的擁塞控制策略,再加上IEEE802.11自身的不公平性,使得TCP-Reno的爆發(fā)性數(shù)據(jù)增多,空間復(fù)用性較低,特別是當(dāng)目的節(jié)點與源節(jié)點間的跳數(shù)增加之后,往返RTT的波動性使得TCP的發(fā)送窗口調(diào)整具有滯后性,往往呈現(xiàn)出局部數(shù)據(jù)負(fù)載過大,平均數(shù)據(jù)負(fù)載過小的現(xiàn)象。在這種情況下,TCP-Reno的單個節(jié)點的平均緩存占用率反而隨著節(jié)點跳數(shù)增加而銳減。而NTCP為了最大化無線資源的利用率,總是嘗試著將鏈路數(shù)據(jù)流平均分布在途徑的各點上。在大部分時間里,每個節(jié)點都有數(shù)據(jù)需要發(fā)送,一旦無線資源空閑,總有節(jié)點參與到無線資源的競爭中。但由于采用局部點到點的速率控制,相對于TCP-Reno而言,局部爆發(fā)性數(shù)據(jù)流較少出現(xiàn)。因此,一跳的場景中NTCP的平均排隊隊長低于TCP-Reno,而多跳場景中各節(jié)點的平均緩存利用率較穩(wěn)定,不會隨著跳數(shù)增加產(chǎn)生大的波動。NTCP的網(wǎng)絡(luò)速率變化曲線如圖4所示。TCP-Reno的網(wǎng)絡(luò)速率變化曲線如圖5所示。對照圖4和圖5可以發(fā)現(xiàn),NTCP的速率自適應(yīng)能力優(yōu)于TCP-Reno。TCP-Reno采取TCP-ACK作為調(diào)整速率的,按ACK包序的正確性來刺激TCP源端發(fā)送新的數(shù)據(jù)包,ACK在回復(fù)快速的流時占優(yōu)勢。圖4NTCP的網(wǎng)絡(luò)速率變化曲線Flow1在建立連接發(fā)送速據(jù)之前,無線信道中有大量的Flow1的數(shù)據(jù)包和ACK包在進(jìn)行傳輸,Flow2進(jìn)入啟動后很長一段時間內(nèi)要和TCP的數(shù)據(jù)流同時還要和逆向ACK流共同競爭資源,因而速率的適應(yīng)時間比較長。而NTCP的速率調(diào)節(jié)與反向的TCP-ACK數(shù)據(jù)流無關(guān),且由于采用資源公平競爭的機(jī)制,每個競爭節(jié)點的無線資源競爭等級都是相同的,與加入的時間無關(guān)。因此,NTCP體現(xiàn)在流的公平性上有較大的優(yōu)勢,NTCP在速率自適應(yīng)能力上比TCP-Reno的好,流的公平性上也優(yōu)于TCP-Reno。4結(jié)束語本文對傳統(tǒng)IEEE802.11MAC協(xié)議進(jìn)行優(yōu)化修改,充分利用無線信道MAC的特性,采用跨層設(shè)計將TCP端到端的流量控制功能放在MAC層中,以節(jié)點間的相互監(jiān)督、相互協(xié)調(diào)的方式實現(xiàn)通信。從仿真數(shù)據(jù)可以看出,本文提出的NTCP方案相對于傳統(tǒng)的TCP-Reno協(xié)議,在端到端時延方面的改善效果不太明顯,但吞吐量和穩(wěn)定性以及速率自適應(yīng)能力方面都有提高,解決了TCP在無線網(wǎng)絡(luò)中性能下降的問題。參考文獻(xiàn)[1]WangJiantao,LiLun,LowSH,etal.Cross-layerOptimizationinTCP/IPNetworks[J].IEEE/ACMTrans.onNetworking,2005,13(3:582-595[2]朱麗娜,朱東昭.針對TCP擁塞控制的LDOS檢測與防范[J].計算機(jī)工程,2010,36(3:164-166.[3]任勇毛,唐海娜,李俊,等.高速網(wǎng)絡(luò)TCP改進(jìn)協(xié)議NS2仿真性能比較[J].計算機(jī)工程,2009,35(2:6-9.計算機(jī)工程,2009,35(16:101-106.[5]崔健.AdHoc網(wǎng)絡(luò)TCP性能的研究[D].大連:大連理工大學(xué),2007.[6]鐘輝,王鵬.基于NS2的無線網(wǎng)絡(luò)仿真研究[J].計算機(jī)與數(shù)字工程,2008,36(7:57-60.編輯顧姣健~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~(上接第144頁的模擬器基于NDIS框架,具有真實性和動態(tài)性。其系統(tǒng)開發(fā)的綜合成本較低,有較高理論價值和實用價值。參考文獻(xiàn)[1]PeiZheng,NiLM.EMPOWER:ANetworkEmulatorforWirelineandWireless

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論