《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > TCP Vegas擁塞避免機制的改進算法
TCP Vegas擁塞避免機制的改進算法
來源:電子技術應用2013年第6期
曹 新, 董 瑋, 譚一酉, 倪長寶
大連東軟信息學院 計算機科學與技術系,遼寧 大連116023
摘要: TCP Vegas協(xié)議在許多方面的性能比傳統(tǒng)的TCP協(xié)議優(yōu)越,但是TCP Vegas在擁塞避免機制上存在一些問題,包括與TCP Reno競爭時性能較差、對先前的連接不公平等問題。針對上述問題提出了一種改進的擁塞避免算法TCP Vegas-N,該算法不依賴于其他因素,可在端節(jié)點上運行。仿真實驗結(jié)果表明,改進的算法在有線網(wǎng)絡中能獲得更好的性能,對解決上述Vegas存在的問題達到了良好的效果。
中圖分類號: TP393
文獻標識碼: A
文章編號: 0258-7998(2013)06-0100-03
Enhanced TCP Vegas congestion avoidance mechanism
Cao Xin, Dong Wei, Tan Yiqiu, Ni Changbao
Dalian Neusoft Institue of Information, Computer Science and Technical Department, Dalian 116023, China
Abstract: TCP Vegas’performance is better than the traditional TCP protocol in many ways.However,studies have shown that TCP Vegas has some defects in its congestion avoidance mechanism.They include that TCP Vegas has a poor performance when it competes with TCP Reno and it is not fair to the previous connections.To solve these problems,the authors proposed an improved congestion avoidance algorithm called TCP Vegas-N.The algorithm did not depend on the other factors and hence could be implemented solely at the end host.The experimental results show that the improved algorithm can get better performance in the wired network and it is a good solution to the problems of the Vegas.
Key words : congestion control;TCP Vegas; round trip time; fairness; NS2

    目前在Internet中廣泛使用且較為成熟的算法是TCP Reno,它通過觀測發(fā)送端數(shù)據(jù)包的丟失來估計當前網(wǎng)絡的可用帶寬,調(diào)整擁塞控制窗口以調(diào)節(jié)發(fā)送速率。TCP Vegas是TCP Reno的改進算法,其在發(fā)生丟包之前就可以根據(jù)往返時間RTT(Round Trip Time)來調(diào)整窗口大小。TCP Vegas比TCP Reno能夠更好地利用帶寬,且吞吐量穩(wěn)定[1]。但是其自身也存在一些無法解決的問題,如公平性、響應不及時以及為保持吞吐量的穩(wěn)定而不能最大限度地利用帶寬等問題,從而很大程度地限制了它的實際應用性。

    以往的研究中,大多只對TCP Vegas的某一方面進行了改進[2-3],雖然效果有所提升,但不能從根本上改變TCP Vegas存在的問題。本文通過建立TCP Vegas網(wǎng)絡的數(shù)學模型,從理論上分析了TCP Vegas在擁塞避免階段的競爭能力處于明顯劣勢的原因,并提出一種TCP Vegas擁塞避免機制的改進算法,分別從數(shù)學模型分析與網(wǎng)絡狀況仿真等兩個方面驗證了改進算法,該算法可以改變TCP Vegas擁塞避免機制所帶來的固有問題。

    TCP Vegas根據(jù)預期傳送率和實際傳送率之間的差異值來調(diào)整cwnd的大小。當diff的值大于β時,意味著傳送速率太快,應該減小cwnd的值以減緩傳送的速率。反之,當diff的值小于α時,則表明傳送速率較慢,應該加大cwnd的值,以增加傳送的速率。
2 TCP Vegas存在的不足及原因分析
    (1)路徑變更問題。由于Base_rtt是最小的回路響應延時。當文件傳輸過程中路徑發(fā)生變化時,如果新的路徑有一個較長的延時,TCP Vegas連接不能推斷這個長的rtt是由擁塞還是變更路徑造成的。由于TCP Vegas把rtt的增大都視為擁塞造成的,因此減少了擁塞窗口,進而導致吞吐量退化。
   (2)不公平性問題。 由于期望吞吐量的計算是基于
Base_rtt的測量。當新的連接開始發(fā)送數(shù)據(jù)而其他的連接仍然存在時,其Base_rtt必定會大于其他連接的Base_rtt,因此它比其他的連接更容易增加擁塞窗口。新的連接能夠獲得更高的帶寬,從而導致在TCP Vegas連接中帶寬的不公平分配。
   (3)帶寬利用問題。由于TCP Vegas為了保證其發(fā)送速率的穩(wěn)定性,將rtt中的最小值作為Base_rtt來計算期望吞吐量,在很大程度上限制了發(fā)送窗口的增大,從而不能最大限度地利用有效帶寬,在保持穩(wěn)定性的同時,犧牲了帶寬利用率。
    (4)響應不及時問題。由于TCP Vegas擁塞避免階段所使用的rtt為所有rtt的平均值,因此rtt的變化不能隨著實時rtt的變化而及時變化,導致TCP Vegas對現(xiàn)有網(wǎng)絡擁塞狀況感知比較遲緩,不能對網(wǎng)絡變化及時做出響應。
    (5)不兼容性問題。當TCP Vegas和TCP Reno共享一個瓶頸連接的時候,TCP Reno持續(xù)地增加窗口大小直到檢測到一個包的丟失。隨著TCP Reno窗口的不斷增大,鏈路中rtt的值會迅速增大,而TCP Vegas則認為這是擁塞信號,減少擁塞窗口,因此,TCP Reno會竊取TCP Vegas的帶寬,這種不兼容性限制了Vegas的采用。
3 TCP Vegas擁塞避免機制的算法改進
    在TCP Vegas-N中,對Base_rtt和rtt的值選取方式做了改進,使其能夠與網(wǎng)絡情況動態(tài)聯(lián)系起來,并改進了diff的計算方法,使其更能及時準確地反應網(wǎng)絡狀況,從而較好地彌補了上述缺點,改進部分的代碼如下:
     將rtt的取值由平均值改為實時值:
     rtt = currentTime - v_begtime_;
     將Base_rtt由最小值改為rtt的加權(quán)值,使Base_rtt隨著rtt變化而及時變化:
     if (rttLen ≤ 1)
         Base_rtt = rtt;
    else
        Base_rtt = Base_rtt*a+rtt*(1-a);
    其中a為0~1的加權(quán)因子,a值越小,Base_rtt隨rtt的變化越及時(本文實驗中a的取值為0.3)。
    用新的計算公式來計算diff值:
  b= Base_rtt/rtt;
     diff=(1-b*b*b)*cwnd(t)+c;
其中c為常數(shù),本文實驗中取值為0.999 999 999。α取1, β取3。
4 仿真實驗和性能分析
    為了驗證改進算法的有效性,本文利用網(wǎng)絡仿真軟件NS2基于圖1中的拓撲結(jié)構(gòu)對原始擁塞控制算法和改進算法進行了仿真實驗對比。

    實驗2:驗證公平性問題。建立兩條鏈路,兩條鏈路相隔5 s開始,時間設為100 s。
    圖4為TCP Vegas兩條鏈路相隔5 s后出發(fā)的擁塞窗口情況,后開始的鏈路的Base_rtt大于先前的Base_rtt,從而將會更大地增加發(fā)送窗口,導致了不公平性的發(fā)生。圖5為改進后的TCP Vegas擁塞窗口情況,保持了良好的公平性。

    實驗3:驗證響應不及時問題。建立三條鏈路,兩條鏈路在0秒同時開始,第三條鏈路在第100秒開始,第200秒結(jié)束,總時間設為300秒。
    在圖6中,當?shù)谌龡l鏈路在第100 s開始時,TCP Vegas只有第一條鏈路感知到了網(wǎng)絡擁塞變化,并降低了發(fā)送窗口。在第200秒時,當?shù)谌龡l鏈路結(jié)束發(fā)送,前兩條鏈路仍然保持原來發(fā)送窗口不變。而在圖7中,TCP Vegas-N可以根據(jù)網(wǎng)絡擁塞情況及時做出反應,既保證了各條鏈路的公平性,同時又充分利用了有效帶寬。

 

 

    本文從Base_rtt和rtt的值選取方式入手,通過改進TCP Vegas擁塞避免算法,立足于解決TCP Vegas的固有問題。仿真實驗表明,改進后的算法有效地解決了TCP Vegas本身所存在的公平性、路由更換、帶寬利用和響應不及時等問題。本文給出了詳細的算法描述,該算法只需在發(fā)送端進行修改,不需要修改中間路由器,易于網(wǎng)絡實施。
參考文獻
[1] Chan Yicheng, LIN C L,CHAN C T,et al. Improving  performance of TCP Vegas for high bandwidth-delay product networks[C]. Proc of the 8th International Conference  on Advanced Communication Technology.2006:464.
[2] 李鵬,陳元琰,羅曉署.無線異構(gòu)網(wǎng)絡環(huán)境中基于擁塞狀態(tài)區(qū)分的TCP Vegas改進算法[J].計算機應用,2010,30(2):309-311.
[3] 王云濤,方建安,張曉輝.基于TCP Vegas的網(wǎng)絡擁塞控制改進算法[J].計算機應用研究,2009,26(12):4645-4647.
[4]  BRAKMO L S, O′MALLEY S W, PETERSON L. TCP  Vegas:New techniques for congestion detection and avoidance[J].IEEE/ACM Transactions on Networking,1994,24(4):1024-1035.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: bl男男文肉高h | 草视频在线 | 亚洲国产片高清在线观看 | 婷婷伊人久久 | 日本久久精品免视看国产成人 | 亚洲国产模特在线播放 | 黄色一级视频免费观看 | 亚洲第一页在线播放 | 污宅男666在线永久免费观看 | 一区二区三区四区国产精品 | 国产99免费视频 | 精产国品一区 | 噜噜噜狠狠夜夜躁精品 | 日日日日日 | 在线观看麻豆精品国产不卡 | 小雪婷的性欢日记h全文 | 国产日韩精品一区在线不卡 | 久久精视频| 久久黄色小视频 | 日本高清不卡码 | 国产色丁香久久综合 | 精品国产免费观看一区高清 | 男生插女生阴道视频 | 宠溺高h共妻 | 波多野吉衣在线多野结衣 | 午夜五月天 | 久久久久国产视频 | 午夜三级福利 | 在线免费看黄的网站 | 久久精品视频久久 | 国产色爽女小说免费看 | 国产黄色一级大片 | 欧美激情视频二区三区 | 免费一级毛片清高播放 | 樱花aⅴ一区二区三区四区 影音先锋色69成人资源 | 国产综合成人久久大片91 | 国产丝袜护土调教在线视频 | 国产精品免费在线播放 | 国产japanese孕妇孕交 | 婷婷影院在线观看 | 中文字幕小明 |