最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

淺談TCP-BM對于異構(gòu)網(wǎng)絡(luò)TCP協(xié)議的重要性

出處:維庫電子市場網(wǎng) 發(fā)布于:2023-06-30 13:54:33

  所謂異構(gòu)網(wǎng)絡(luò)(Heterogeneous Network)是一種類型的網(wǎng)絡(luò),其是由不同制造商生產(chǎn)的計算機(jī),網(wǎng)絡(luò)設(shè)備和系統(tǒng)組成的,大部分情況下運(yùn)行在不同的協(xié)議上支持不同的功能或應(yīng)用?;ヂ?lián)網(wǎng)可以由多個異構(gòu)網(wǎng)絡(luò)互聯(lián)組成。

TCP:Transmission Control Protocol 傳輸控制協(xié)議TCP是一種面向連接(連接導(dǎo)向)的、可靠的、基于字節(jié)流的運(yùn)輸層(Transport layer)通信協(xié)議,由IETF的RFC 793說明(specified)。在簡化的計算機(jī)網(wǎng)絡(luò)OSI模型中,它完成第四層傳輸層所指定的功能,UDP是同一層內(nèi)另一個重要的傳輸協(xié)議。在因特網(wǎng)協(xié)議族(Internet protocol suite)中,TCP層是位于IP層之上,應(yīng)用層之下的運(yùn)輸層。不同主機(jī)的應(yīng)用層之間經(jīng)常需要可靠的、像管道一樣的連接,但是IP層不提供這樣的流機(jī)制,而是提供不可靠的包交換。

應(yīng)用層向TCP層發(fā)送用于網(wǎng)間傳輸?shù)?、?位字節(jié)表示的數(shù)據(jù)流,然后TCP把數(shù)據(jù)流分割成適當(dāng)長度的報文段(通常受該計算機(jī)連接的網(wǎng)絡(luò)的數(shù)據(jù)鏈路層的傳送單元(MTU)的限制)。之后TCP把結(jié)果包傳給IP層,由它來通過網(wǎng)絡(luò)將包傳送給接收端實體的TCP層。TCP為了保證不發(fā)生丟包,就給每個字節(jié)一個序號,同時序號也保證了傳送到接收端實體的包的按序接收。然后接收端實體對已成功收到的字節(jié)發(fā)回一個相應(yīng)的確認(rèn)(ACK);如果發(fā)送端實體在合理的往返時延(RTT)內(nèi)未收到確認(rèn),那么對應(yīng)的數(shù)據(jù)(假設(shè)丟失了)將會被重傳。TCP用一個校驗和函數(shù)來檢驗數(shù)據(jù)是否有錯誤;在發(fā)送和接收時都要計算校驗和。

首先,TCP建立連接之后,通信雙方都同時可以進(jìn)行數(shù)據(jù)的傳輸,其次,他是全雙工的;在保證可靠性上,采用超時重傳和捎帶確認(rèn)機(jī)制。

目前改善TCP協(xié)議在異構(gòu)網(wǎng)絡(luò)環(huán)境下的性能的方法主要分為以下三類:鏈路層方法、分離連接方法和端到端方法。

鏈路層方法是通過本地重傳和前向糾錯屏蔽發(fā)送端與鏈路相關(guān)的丟包。但由于鏈路層協(xié)議與高層協(xié)議都有獨(dú)立的差錯控制功能,存在一定的重復(fù)性,相互競爭會降低無線信道的利用率,導(dǎo)致端到端吞吐量下降。代表性協(xié)議是Snoop[4]。

分離鏈接方法是在基站處將TCP連接分成有線連接和無線連接兩部分:有線連接部分使用傳統(tǒng)的TCP協(xié)議,無線連接部分使用改進(jìn)的TCP協(xié)議。它破壞了端到端的TCP語義連接性。代表性協(xié)議是Indirect-TCP[5]。

端到端方法只修改TCP發(fā)送端和接收端的協(xié)議,保證了端到端的TCP語義連接性。代表性協(xié)議是TCP Westwood[6]。該協(xié)議在發(fā)端監(jiān)視收到的ACK數(shù)據(jù)流,并以此來估計當(dāng)前鏈路的可用帶寬。一旦丟包,發(fā)端將利用估計的帶寬對慢啟動閾值和擁塞窗口進(jìn)行適當(dāng)設(shè)置,保證了網(wǎng)絡(luò)的快速恢復(fù)并可更有效地避免擁塞。

本文提出了一種適用于異構(gòu)網(wǎng)絡(luò)的TCP算法TCP -BM(TCP Based Measurement),其基本思想是利用往返時延RTT來控制擁塞窗口的增長速度,使發(fā)送窗口穩(wěn)定在一個比較理想的狀態(tài),在網(wǎng)絡(luò)發(fā)生丟包后,通過對RTT的實時分析判斷出丟包原因,從而采取相應(yīng)的控制措施。

1 傳統(tǒng)TCP Reno協(xié)議及分析

  1.1 TCP Reno協(xié)議流程

TCP Reno協(xié)議包括慢啟動、擁塞避免、快速重傳和快速恢復(fù)4個階段:

(a)慢啟動階段:TCP將擁塞窗口值設(shè)為1,發(fā)送端每收到一個新的ACK就把擁塞窗口值增加一個,即W=W+1,W表示擁塞窗口;

(b)擁塞避免階段:發(fā)送端每收到一個新的ACK就把擁塞窗口值增加擁塞窗口值的倒數(shù),即W=W+1/W;

(c)丟包標(biāo)志為3個重復(fù)ACK:發(fā)送端重傳丟失的包,并且在窗口范圍內(nèi)繼續(xù)發(fā)送新的數(shù)據(jù)包,此后發(fā)送端每收到1個重復(fù)的ACK就將擁塞窗口值增加1;

(d)丟包標(biāo)志為計時器超時:發(fā)送端重傳丟失的包,然后將慢啟動閾值設(shè)為當(dāng)前窗口的一半,將擁塞窗口設(shè)為1。

因為TCP協(xié)議是端到端的協(xié)議,因此這里的說明只涉及發(fā)送端和接收端。在連接開始時,發(fā)送端執(zhí)行(a), 直到擁塞窗口值大于(或等于)慢啟動閾值或者出現(xiàn)丟包:(1)如果是出現(xiàn)丟包,發(fā)送端執(zhí)行策略與丟包標(biāo)志相關(guān),如果丟包標(biāo)志為3個重復(fù)ACK,則發(fā)送端執(zhí)行(c), 直到發(fā)送端收到新的ACK為止,然后發(fā)送端TCP將擁塞窗口和慢啟動閾值都設(shè)為快速重傳前擁塞窗口值的一半,重新開始擁塞避免階段;如果丟包標(biāo)志為計時器超時,則發(fā)送端執(zhí)行(d),重新開始慢啟動階段;(2)如果是擁塞窗口大于(或等于)慢啟動閾值,則發(fā)送端執(zhí)行(b),該策略一直持續(xù)到出現(xiàn)丟包為止,一旦出現(xiàn)丟包,發(fā)送端執(zhí)行策略同慢啟動階段出現(xiàn)丟包時采取的策略一樣。

 1.2 TCP Reno協(xié)議分析

快速恢復(fù)算法避免了在快速重傳之后通道為空的現(xiàn)象,從而避免了在單個報文丟失后重新開始慢啟動階段。TCP發(fā)送端在每個往返時延內(nèi)多重傳1個包,因此在只有1個數(shù)據(jù)包丟失的情況下,該協(xié)議性能。當(dāng)1個窗口中有2個報文丟失時,在TCP發(fā)送端快速重傳和快速恢復(fù)就將被執(zhí)行2次,因為在快速恢復(fù)階段窗口的調(diào)整策略為ssthresh=cwnd/2,cwnd=ssthresh,因此慢啟動閾值和擁塞窗口都將被減小2次,這是不必要的。當(dāng)有更多數(shù)據(jù)包丟失時,根據(jù)Reno協(xié)議TCP發(fā)送端就必須等待重發(fā)計時器超時才能恢復(fù)。

2 TCP-BM協(xié)議

該算法的基本思想是在慢啟動階段根據(jù)網(wǎng)絡(luò)的實時狀況來合理地調(diào)節(jié)擁塞窗口的增長速度;將擁塞避免過程分為正增長過程和負(fù)增長過程,從而使發(fā)送窗口穩(wěn)定在比較理想的狀態(tài)而有預(yù)見性地避免擁塞。在網(wǎng)絡(luò)發(fā)生丟包后,通過對RTT的實時分析以及估計的帶寬判斷出丟包原因,從而采取不同的恢復(fù)措施。下面詳細(xì)介紹TCP-BM協(xié)議的幾個階段,未說明部分沿用傳統(tǒng)的TCP Reno協(xié)議。

2.1慢啟動階段

開始時數(shù)據(jù)量較少,對帶寬的利用率較低,因此可以使擁塞窗口較快地增長;當(dāng)擁塞窗口增大到一定程度時,減小其增長速度,使其相對緩慢并且平滑地增加;當(dāng)擁塞窗口的大小接近于慢啟動閾值時,再次減小其增加速度,使其更加緩慢且平滑地接近于慢啟動閾值。算法描述如下:

If (cwnd

If (cwnd*(1+(double)(rtt/rttmin))

cwnd+=(double)(rtt/rttmin);

else if (2*cwnd < ssthresh)

cwnd+=1;

else cwnd+=(double)(rttmin/ rtt)

其中,cwnd表示擁塞窗口;ssthresh表示慢啟動閾值,rtt表示當(dāng)前的往返時延值,它反映當(dāng)前的網(wǎng)絡(luò)狀態(tài);rttmin表示往返時延歷史數(shù)據(jù)中的值,它反映歷史上網(wǎng)絡(luò)的狀態(tài)。在連接開始時,擁塞窗口大小設(shè)為1,以后每收到一個ACK,擁塞窗口就增加(double)(rtt/rttmin);擁塞窗口增大到一定程度時降低其增長速度,變?yōu)槊渴盏揭粋€ACK,擁塞窗口就增加1;當(dāng)擁塞窗口接近于慢啟動閾值時,擁塞窗口以更緩慢的方式進(jìn)行增長,cwnd+=(double)(rttmin/rtt), 直到擁塞窗口大于(或等于)慢啟動閾值或者出現(xiàn)丟包為止。

 2.2 擁塞避免階段

當(dāng)擁塞窗口大于(或等于)慢啟動閾值后,TCP發(fā)送端發(fā)送的數(shù)據(jù)量已經(jīng)向網(wǎng)絡(luò)所能容忍的一個限度靠近,此時不能再使擁塞窗口像慢啟動階段那樣快速地增長,因此利用往返時延值將此階段分為正增長和負(fù)增長2個階段,使傳輸過程能更長時間地穩(wěn)定在該階段。算法描述如下:

if((rtt/rttmin)< A

cwnd = cwnd + B1*increment;

else

cwnd = cwnd - B2*increment;

令T=rtt/rttmin,則T表示當(dāng)前往返時延值是往返時延歷史數(shù)據(jù)中的值的多少倍,即當(dāng)前的網(wǎng)絡(luò)狀態(tài)比歷史上網(wǎng)絡(luò)的狀態(tài)差多少;A表示擁塞閾值,即當(dāng)前往返時延值達(dá)到往返時延歷史數(shù)據(jù)中的值的A倍時,網(wǎng)絡(luò)將趨于擁塞。。經(jīng)過多次仿真分析A取1.5,B1取1,B2取0.5能達(dá)到較好的性能。

 2.3快速重傳和快速恢復(fù)

網(wǎng)絡(luò)發(fā)生丟包后,TCP發(fā)送端采取快速重傳措施,重傳丟失的報文,然后根據(jù)丟包標(biāo)志的不同,通過比較的往返時延值和前的往返時延值以及估計的帶寬值來區(qū)分丟包原因,從而采取不同的控制措施。算法描述如下:

If (dupacks)

if(rtt>=lastrtt&&bw2

ssthresh= cwnd /2, cwnd =ssthresh;

if (timeout)

ssthresh=cwnd/2,cwnd=1;

其中,dupacks表示3個重復(fù)ACK的情況,lastrtt表示上的往返時延值,bw2和bw1分別表示第二個重復(fù)ACK時的測量帶寬和第三個重復(fù)ACK時的測量帶寬(bw1=d/(t2-t1),bw2=d/(t3-t2),d表示ACK所確認(rèn)的報文段的長度,t1表示個重復(fù)ACK到來的時間,t2表示第二個重復(fù)ACK到來的時間,t3表示第三個重復(fù)ACK到來的時間),timeout表示計時器超時的情況。當(dāng)丟包標(biāo)志為timeout時,因為計時器超時是比3個重復(fù)ACK更嚴(yán)重的情況,所以此處沿用傳統(tǒng)的方法對擁塞窗口和慢啟動閾值進(jìn)行調(diào)整,其調(diào)整策略見算法描述。

3 性能分析

在ns-2[7]仿真平臺上進(jìn)行仿真,其網(wǎng)絡(luò)拓?fù)?。網(wǎng)絡(luò)拓?fù)溆?段鏈路和4個節(jié)點(diǎn)組成,其中S表示TCP發(fā)送端,R表示路由器,BS表示基站,D表示TCP接收端,有線部分包括從發(fā)送端到路由器,從路由器到基站兩部分,一段為無線部分。其中發(fā)送端與路由器之間的有線鏈路帶寬為100 Mb/s,延遲為1 ms,路由器與基站之間的有線鏈路帶寬為100 Mb/s, 延遲為49 ms,基站與接收端之間的無線鏈路帶寬為1 Mb/s,延遲為0.01 ms。數(shù)據(jù)包的大小采用固定長度,其值設(shè)為1 000 byte,無線誤碼率設(shè)為0,仿真時間設(shè)為200 s,且只采用一個FTP數(shù)據(jù)流,該數(shù)據(jù)流在10 s開始,在200 s結(jié)束。


在上述仿真環(huán)境下比較TCP-BM協(xié)議和TCP Reno協(xié)議擁塞窗口隨時間的變化情況。


橫軸表示時間,單位為s,縱軸表示擁塞窗口大小,單位為packet。不難看出,在整個200 s的仿真過程中,TCP Reno協(xié)議的擁塞窗口大小隨時間的變化非常劇烈,而TCP-BM協(xié)議的擁塞窗口的大小除了出現(xiàn)少數(shù)幾次較為劇烈的波動之外,其余時間變化則較為平緩。對仿真追蹤所得到的實驗數(shù)據(jù)進(jìn)行統(tǒng)計分析,TCP Reno協(xié)議的擁塞窗口值為1,值為26,且變化頻繁,變化范圍集中在10~18;而TCP-BM協(xié)議的擁塞窗口值為1,且只出現(xiàn)了屈指可數(shù)的幾次,值為21,穩(wěn)定之后變化范圍集中在13~17。

對擁塞窗口值在時間上進(jìn)行平均,TCP Reno協(xié)議的擁塞窗口平均值大小為13.10,而TCP-BM協(xié)議的擁塞窗口平均值大小為14.03,這說明TCP-BM協(xié)議發(fā)送量比TCP Reno協(xié)議有明顯增加,這必將會導(dǎo)致業(yè)務(wù)吞吐量的提高。

對擁塞窗口值的方差在時間上進(jìn)行平均可得TCP Reno協(xié)議的擁塞窗口值的平均方差大小為28.86,而TCP-BM協(xié)議的擁塞窗口值的平均方差為1.72,這表明了TCP-BM協(xié)議的擁塞窗口變化情況要比改進(jìn)前緩和得多,說明了TCP-BM協(xié)議的帶寬利用率較為穩(wěn)定。

對TCP Reno協(xié)議和TCP-BM協(xié)議吞吐量變化情況進(jìn)行比較。


橫軸表示時間,單位為s,縱軸表示吞吐量,單位為kb/s??梢悦黠@看出,TCP-BM協(xié)議的吞吐量比TCP Reno協(xié)議有明顯的提高。TCP-BM的擁塞窗口波動也可以說明這一問題。終其吞吐量穩(wěn)定在644 kb/s左右,TCP-BM協(xié)議的吞吐量比TCP Reno協(xié)議提高了大約19.3%。

對丟包率進(jìn)行統(tǒng)計分析,對上述仿真結(jié)果進(jìn)行計算可得,TCP Reno協(xié)議的丟包率為1.65%,而TCP-BM協(xié)議的丟包率為0.21%,對其進(jìn)行比較可發(fā)現(xiàn),TCP-BM協(xié)議的丟包率比TCP Reno協(xié)議的丟包率減小了1.44%,這也從一定程度上說明了TCP-BM協(xié)議的吞吐量比TCP Reno協(xié)議的吞吐量有所提高。

在傳統(tǒng)的TCP Reno協(xié)議的基礎(chǔ)上提出了一種適用于異構(gòu)網(wǎng)絡(luò)的TCP擁塞控制協(xié)議,該協(xié)議在慢啟動階段根據(jù)往返時延值適當(dāng)調(diào)整擁塞窗口的增長速度,在擁塞避免階段利用當(dāng)前的往返時延與往返時延的歷史值的比值來控制擁塞窗口的增加與減小,不但能充分利用網(wǎng)絡(luò)資源。經(jīng)過仿真驗證,改進(jìn)后的TCP算法性能優(yōu)于傳統(tǒng)的TCP Reno協(xié)議。下一步工作是要進(jìn)一步改進(jìn)該算法,使之適用于更復(fù)雜的網(wǎng)絡(luò)環(huán)境。

關(guān)鍵詞:淺談TCP-BM對于異構(gòu)網(wǎng)絡(luò)TCP協(xié)議的重要性TCP協(xié)議異構(gòu)網(wǎng)絡(luò)

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!