《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > XCP協(xié)議的仿真分析
XCP協(xié)議的仿真分析
王 昆
(西南科技大學(xué) 計(jì)算機(jī)學(xué)院,四川 綿陽 621010)
摘要: 對(duì)XCP協(xié)議的結(jié)構(gòu)和執(zhí)行算法進(jìn)行了詳細(xì)分析,并對(duì)協(xié)議做了相應(yīng)仿真。仿真結(jié)果表明,在高帶寬時(shí)延乘積網(wǎng)絡(luò)中,XCP協(xié)議能更好地保持效率、公平性和穩(wěn)定性。
Abstract:
Key words :

 摘  要: 對(duì)XCP協(xié)議的結(jié)構(gòu)和執(zhí)行算法進(jìn)行了詳細(xì)分析,并對(duì)協(xié)議做了相應(yīng)仿真。仿真結(jié)果表明,在高帶寬時(shí)延乘積網(wǎng)絡(luò)中,XCP協(xié)議能更好地保持效率、公平性和穩(wěn)定性。
關(guān)鍵詞: XCP;擁塞控制;高帶寬時(shí)延乘積  

   TCP是目前在Internet中使用最廣泛的傳輸協(xié)議。它是針對(duì)當(dāng)時(shí)帶寬時(shí)延乘積較小的網(wǎng)絡(luò)設(shè)計(jì)的,隨著高帶寬和高延遲網(wǎng)絡(luò)越來越普遍的應(yīng)用,TCP算法的效率比較低。實(shí)驗(yàn)和理論推導(dǎo)都證明隨著帶寬時(shí)延乘積的增加,不管是用什么排隊(duì)模式,如RED[1]、REM[2]、PI[3],AVQ[4]等算法都使TCP變得越來越低效和不穩(wěn)定。
  根據(jù)TCP存在的問題和高帶寬時(shí)延乘積網(wǎng)絡(luò)的特點(diǎn),美國麻省理工大學(xué)的Dina Katabi提出了一種新的Internet擁塞控制框架,該協(xié)議稱為顯式控制協(xié)議XCP(eXplicit Control Protocol)[5]。
1  XCP協(xié)議分析
  XCP協(xié)議擴(kuò)展了ECN顯式擁塞指示機(jī)制,它通過在擁塞頭攜帶控制信息極大地改善了因特網(wǎng)的擁塞控制。路由器能通知發(fā)送端瓶頸鏈路的擁塞程度而不是網(wǎng)絡(luò)是否擁塞,發(fā)送端就可以根據(jù)網(wǎng)絡(luò)的狀態(tài)相應(yīng)的增加和減少它的發(fā)送窗口。XCP要求網(wǎng)絡(luò)中的所有路由器和主機(jī)都支持XCP協(xié)議。XCP是基于對(duì)每一個(gè)包的計(jì)算來調(diào)節(jié)流量。
1.1  XCP協(xié)議的框架
  如圖1所示,發(fā)送方維持擁塞窗口cwnd和往返延遲RTT,路由器監(jiān)控流入它的數(shù)據(jù)率,根據(jù)鏈路帶寬和流入的數(shù)據(jù)率的差值,路由器通過修改擁塞頭的反饋值告知共享這個(gè)鏈路的數(shù)據(jù)流增加或減少它的擁塞窗口。

  當(dāng)1個(gè)ACK到達(dá)時(shí),正反饋值將導(dǎo)致發(fā)送方擁塞窗口增加,負(fù)反饋值將隨之減小。可以用式(1)表示:
  

  式中,s為1個(gè)包的大小。
  XCP接收方收到1個(gè)包時(shí),將其數(shù)據(jù)包的H_ feedback復(fù)制到其ACK中。其余行為同TCP相同。
1.2 XCP路由器結(jié)構(gòu)分析
    XCP路由器包含擁塞控制器和公平控制器,這使得協(xié)議的設(shè)計(jì)和分析簡化。
1.2.1 擁塞控制器
    擁塞控制器根據(jù)網(wǎng)絡(luò)中的剩余帶寬和延遲來對(duì)利用率進(jìn)行控制,1個(gè)控制周期的聚合反饋值Φ為:
  
  式中,α、β是根據(jù)定性分析和試驗(yàn)得到的常數(shù),分別為0.4、0.226;d是平均RTT;S是根據(jù)鏈路容量和流入的數(shù)據(jù)率計(jì)算出來的剩余帶寬;Φ是持續(xù)隊(duì)列長度。
1.2.2 公平控制器
    公平控制器的主要任務(wù)是根據(jù)擁塞控制器計(jì)算出來的可用帶寬為每1個(gè)包分配反饋值以達(dá)到公平性。
    如果Φ>0,每個(gè)數(shù)據(jù)流的吞吐量增加相同的值;如果Φ<0,每個(gè)數(shù)據(jù)流減少的數(shù)值與它當(dāng)前吞吐量成正比。
    當(dāng)利用率接近最優(yōu)即Φ≈0時(shí),引入了帶寬重洗概念。在每1個(gè)平均RTT內(nèi),至少10%的數(shù)據(jù)流量要根據(jù)AIMD策略進(jìn)行重新分配。
2  主要仿真腳本分析
    拓?fù)浣Y(jié)構(gòu)通過節(jié)點(diǎn)和鏈路創(chuàng)建API建立,瓶頸鏈路是1個(gè)雙向鏈路,2個(gè)方向都有1個(gè)XCP路由器
    xcp源和sink創(chuàng)建方法和創(chuàng)建TCP源的方法相似,具體方法如下:

  使用該類建立源端節(jié)點(diǎn)中的xcp代理,然后將其與目的節(jié)點(diǎn)中的xcp接收端連接起來。根據(jù)xcp路由器和xcp源端的變量,GeneralSender類的過程trace-xcp使用中變量跟蹤為xcp源建立跟蹤。
3  仿真性能分析
   仿真參數(shù)設(shè)置α=0.4,β=0.266。Bottleneck的鏈路帶寬=200 Mb/s,Bottleneck的延遲時(shí)間delay=10 ms,節(jié)點(diǎn)數(shù)=3,節(jié)點(diǎn)S1…S3~R0的鏈路帶寬為200 Mb/s,鏈路延遲時(shí)間delay=10 ms。
  仿真拓?fù)鋱D如圖2所示,該拓?fù)錇?個(gè)xcp流共享1個(gè)瓶頸鏈路組成的啞鈴型拓?fù)洹?/p>

  主干鏈路和每個(gè)源鏈路都采用200 Mb/s,延遲時(shí)間都是10 ms。由圖3可以看出在開始階段,由于只有1個(gè)源發(fā)送數(shù)據(jù),主干鏈路基本達(dá)到飽和,窗口值成乘式增加。但在5 s時(shí)第2個(gè)流到來,主干鏈路發(fā)生擁塞,擁塞窗口值開始調(diào)整下降,在大概第6 s就穩(wěn)定了。在第10 s時(shí),第3個(gè)流到來,擁塞窗口進(jìn)一步調(diào)整,開始下降,到第12 s時(shí)達(dá)到穩(wěn)定值。由此可以看出,在擁塞發(fā)生時(shí)XCP協(xié)議可以很快地調(diào)整擁塞窗口值,使傳輸達(dá)到穩(wěn)定值,很好地避免了擁塞可能引起的調(diào)整時(shí)間增長。同時(shí)也保持了良好的公平性,使每個(gè)流都獲得了相同的擁塞窗口值。

  圖4所示為帶寬利用率圖,可以看出,在沒有發(fā)生擁塞時(shí)主干鏈路利用率很快就達(dá)到了100%,說明XCP協(xié)議使達(dá)到穩(wěn)定利用率的時(shí)間很快,提高了達(dá)到穩(wěn)定利用率的時(shí)間,同時(shí)在第5 s和第10 s的時(shí)候,第2和3個(gè)流分別開始發(fā)送數(shù)據(jù),主干鏈路發(fā)生擁塞,主干鏈路的利用率有所降低,降低了1~2個(gè)百分點(diǎn)。由此可以看出,XCP協(xié)議對(duì)在擁塞情況下提高鏈路利用率達(dá)到了很好的效果,能充分地利用鏈路帶寬,同時(shí)達(dá)到穩(wěn)定的帶寬利用率的時(shí)間也很快。
 

    由圖5可以看出在第5 s之前,沒有發(fā)生擁塞,緩沖隊(duì)列值為0;第5 s時(shí),第2個(gè)流開始發(fā)送數(shù)據(jù),主干鏈路發(fā)生擁塞,隊(duì)列值有所增加;第10 s開始隨著擁塞的變大緩沖隊(duì)列值又有所增大;緩沖隊(duì)列值隨著擁塞的加劇逐漸增大,但增加的值不大,說明XCP協(xié)議可以保持很小的排隊(duì)隊(duì)列值,這樣相應(yīng)的排隊(duì)時(shí)延值也會(huì)很小。 

  本文在ns2下面對(duì)XCP協(xié)議的公平性和穩(wěn)定性做了相應(yīng)的仿真分析。仿真結(jié)果表明,高帶寬時(shí)延乘積網(wǎng)絡(luò)中XCP協(xié)議不僅能夠保持鏈路的公平性和穩(wěn)定性,而且還能達(dá)到鏈路的高利用率,同時(shí),路由器的平均隊(duì)列值保持得很小。
參考文獻(xiàn)
[1] FLOYD S, JACOBSON V. Random early detection gateways for congestion voidance[J]. IEEE/ACM Transactions on Networking,1993,1(4):397-416
[2] ATHURALIYA S, LI V H, LOW S H,et al. Rem:Active queue management[J]. IEEE Network, 2001,15(3):48-53.
[3] HOLLOT C, MISRA V, TOWSLEY D, et al. On designing improved controllers for aqm routers supporting tcp flows[J]. In Proc. of IEEE INFOCOM, Apr. 2001.
[4] KUNNIYUR S, SRIKANT R. Analysis and design of an adaptive virtual queue[J]. In Proc. Of  ACM SIGCOMM, 2001.
[5] KATABI D. Congestion control for high bandwidth-delay products networks[EB/OL]. In: Proc. ACM SigComm'02, Aug. 2002.
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。