摘 要: 目前移動(dòng)IPv6中對移動(dòng)節(jié)點(diǎn)" title="移動(dòng)節(jié)點(diǎn)">移動(dòng)節(jié)點(diǎn)的切換過程進(jìn)行優(yōu)化的方法均著眼于加速切換時(shí)的信令" title="信令">信令重建過程。通過介紹移動(dòng)IPv6實(shí)驗(yàn)床上進(jìn)行的一系列切換測試,提出了測量移動(dòng)節(jié)點(diǎn)切換時(shí)信令重建過程延遲的方法,并評估了此過程對ICMPv6和TCP業(yè)務(wù)性能的影響。
關(guān)鍵詞: 移動(dòng)IPv6 切換 信令重建
在移動(dòng)IPv6中,移動(dòng)節(jié)點(diǎn)的切換可以分為移動(dòng)檢測和信令重建兩個(gè)階段。在移動(dòng)檢測階段,移動(dòng)節(jié)點(diǎn)利用ICMPv6路由器發(fā)現(xiàn)機(jī)制來判定移動(dòng)節(jié)點(diǎn)當(dāng)前的位置是位于家鄉(xiāng)鏈路" title="鏈路">鏈路還是外地鏈路,從而判斷移動(dòng)節(jié)點(diǎn)是否發(fā)生了鏈路切換。如果發(fā)生了鏈路切換,移動(dòng)節(jié)點(diǎn)就需要進(jìn)行信令重建。在信令重建階段,移動(dòng)節(jié)點(diǎn)通過IPv6鄰居發(fā)現(xiàn)機(jī)制,以無狀態(tài)的地址自動(dòng)配置方式獲得一個(gè)或多個(gè)轉(zhuǎn)交地址,然后向家鄉(xiāng)代理發(fā)送“綁定更新”消息,得到家鄉(xiāng)代理的應(yīng)答消息后,將一個(gè)轉(zhuǎn)交地址注冊到家鄉(xiāng)代理上。
當(dāng)前對移動(dòng)節(jié)點(diǎn)切換的研究主要集中在信令重建階段,例如層次化移動(dòng)IPv6[1]減少了切換時(shí)需要重建的鏈路長度和在移動(dòng)停靠點(diǎn)MAP(Mobility Anchor Point)域外發(fā)送信令的數(shù)量,而快速切換[2]機(jī)制更是提前進(jìn)行了信令重建。雖然現(xiàn)有的提高切換性能的方案可以減少切換對移動(dòng)節(jié)點(diǎn)通信的影響,但是在切換時(shí)仍然會(huì)丟包。這必然會(huì)對業(yè)務(wù)性能產(chǎn)生影響,尤其對使用傳輸控制協(xié)議TCP的業(yè)務(wù)影響較大。
當(dāng)前大多數(shù)對移動(dòng)IPv6中移動(dòng)節(jié)點(diǎn)切換的分析都是基于模擬仿真來進(jìn)行的。為了更真實(shí)、更準(zhǔn)確地分析切換時(shí)信令重建過程對業(yè)務(wù)性能的影響,本文在移動(dòng)IPv6實(shí)驗(yàn)床上對移動(dòng)節(jié)點(diǎn)和通信對端之間的ICMPv6業(yè)務(wù)和TCP業(yè)務(wù)進(jìn)行了測試。從測試數(shù)據(jù)可以看出:移動(dòng)節(jié)點(diǎn)切換時(shí)信令重建延遲具有非對稱性;隨著無線信道" title="無線信道">無線信道速率的提高,信令重建延遲有所減少;切換時(shí)移動(dòng)節(jié)點(diǎn)和無線接入點(diǎn)" title="無線接入點(diǎn)">無線接入點(diǎn)的距離與信令重建延遲沒有明顯的聯(lián)系。
1 測試環(huán)境和測試方案
1.1 移動(dòng)IPv6實(shí)驗(yàn)床
本測試中使用的移動(dòng)IPv6環(huán)境是安裝了芬蘭赫爾辛基技術(shù)大學(xué)開發(fā)的基于Linux操作系統(tǒng)的移動(dòng)IPv6 MIPL(Mobile IPv6 for Linux)實(shí)驗(yàn)床[3],使用的MIPL系統(tǒng)版本為mipv6-1.1-v2.4.26,配套使用的Linux操作系統(tǒng)的內(nèi)核版本為Linux 2.4.26。實(shí)驗(yàn)床的拓?fù)浣Y(jié)構(gòu)如圖1所示。
節(jié)點(diǎn)CN、HA和AR是安裝了MIPL軟件的Linux主機(jī),它們之間通過純IPv6有線網(wǎng)絡(luò)互聯(lián)。AP1和AP2為無線接入點(diǎn)AP(Access Point),型號為Linksys Wap11。移動(dòng)節(jié)點(diǎn)MN安裝了Linux操作系統(tǒng)和MIPL軟件的Acer Notepad,它通過使用802.11b協(xié)議的無線網(wǎng)卡與AP1、AP2進(jìn)行通信。
1.2 測試方案
1.2.1 切換過程
在正常的切換過程中,移動(dòng)節(jié)點(diǎn)發(fā)生切換是因?yàn)橐苿?dòng)節(jié)點(diǎn)移出了原來的無線接入點(diǎn)的信號覆蓋范圍,或是移動(dòng)節(jié)點(diǎn)檢測到了信號更好的無線接入點(diǎn)。這樣的切換過程包括本文前面提到的移動(dòng)檢測和信令重建兩個(gè)過程。為了單獨(dú)分析移動(dòng)節(jié)點(diǎn)切換時(shí)的信令重建過程,本測試中通過在移動(dòng)節(jié)點(diǎn)上執(zhí)行iwconfig命令,將移動(dòng)節(jié)點(diǎn)的無線網(wǎng)卡連接到新的無線接入點(diǎn)。之后,移動(dòng)節(jié)點(diǎn)就可以從新的無線接入點(diǎn)處接收路由器通告,獲得轉(zhuǎn)交地址,向家鄉(xiāng)代理進(jìn)行注冊,從而完成切換。整個(gè)切換過程排除了移動(dòng)檢測階段,因此測試中所有涉及到的切換過程均只包括信令重建過程。
1.2.2 測試業(yè)務(wù)
本文對使用ICMPv6協(xié)議和TCP協(xié)議的業(yè)務(wù)進(jìn)行了測試。選擇這兩種業(yè)務(wù),主要是基于如下考慮:
(1)ICMPv6中的PING6命令被用于檢測遠(yuǎn)程節(jié)點(diǎn)是否可達(dá),以及測試本地節(jié)點(diǎn)與遠(yuǎn)程節(jié)點(diǎn)間的通信延遲。在本文的實(shí)驗(yàn)中,節(jié)點(diǎn)CN使用PING6命令連續(xù)向移動(dòng)節(jié)點(diǎn)MN發(fā)送ICMPv6 回顯請求(Echo Request)消息,通過對ICMPv6消息中斷時(shí)間的觀測給出移動(dòng)節(jié)點(diǎn)MN切換時(shí)信令重建過程的延遲。
(2)在有線網(wǎng)絡(luò)中,由于誤碼率非常低,TCP協(xié)議將數(shù)據(jù)包丟失看作是網(wǎng)絡(luò)發(fā)生擁塞的信號,啟動(dòng)擁塞控制機(jī)制。但是,在無線移動(dòng)網(wǎng)絡(luò)中,數(shù)據(jù)包丟失主要是由無線信道高誤碼率和移動(dòng)節(jié)點(diǎn)的切換造成的。當(dāng)移動(dòng)節(jié)點(diǎn)發(fā)生切換時(shí),TCP 協(xié)議誤認(rèn)為網(wǎng)絡(luò)發(fā)生了擁塞而采取擁塞控制措施。這樣不但不能改善性能,反而降低了吞吐量,導(dǎo)致性能下降。本文通過對TCP擁塞窗口CWND(Congestion Window)的觀測,嘗試對TCP業(yè)務(wù)在信令重建過程中受到的影響進(jìn)行分析。
1.2.3 通信速率
本文測試中通過設(shè)定無線網(wǎng)卡固定傳輸速率的方法來限定無線信道的傳輸速率。由于移動(dòng)節(jié)點(diǎn)MN的無線網(wǎng)卡是使用802.11b協(xié)議,因此本文的測試中只使用1Mbps、2Mbps、5.5Mbps和11Mbps四種速率。
1.2.4 測試內(nèi)容
ICMPv6業(yè)務(wù)測試分為兩種情況:一種是移動(dòng)節(jié)點(diǎn)MN由家鄉(xiāng)鏈路切換到外地鏈路,另一種是移動(dòng)節(jié)點(diǎn)MN從外地鏈路切換回家鄉(xiāng)鏈路。節(jié)點(diǎn)CN使用PING6命令檢測移動(dòng)節(jié)點(diǎn)MN的家鄉(xiāng)地址是否可達(dá),通過tcpdump命令收集數(shù)據(jù)包,并分析移動(dòng)節(jié)點(diǎn)切換對于ICMPv6業(yè)務(wù)的影響。
TCP業(yè)務(wù)的測試過程與ICMPv6業(yè)務(wù)基本相同,所不同的是節(jié)點(diǎn)CN使用TCP協(xié)議與移動(dòng)節(jié)點(diǎn)MN進(jìn)行通信。為了得到TCP連接的擁塞窗口大小,使用getsockopt命令來得到TCP連接的詳細(xì)信息。
2 實(shí)驗(yàn)數(shù)據(jù)及分析
2.1 切換對ICMP業(yè)務(wù)的影響
表1給出了從tcpdump命令收集的數(shù)據(jù)中得到的移動(dòng)節(jié)點(diǎn)切換延遲。
在表1中,距離指發(fā)生切換時(shí)MN距離無線接入點(diǎn)的距離;速率指設(shè)定的移動(dòng)節(jié)點(diǎn)MN無線網(wǎng)卡的最高速率;OUT表示移動(dòng)節(jié)點(diǎn)MN切換到外地鏈路時(shí)的切換延遲;IN表示移動(dòng)節(jié)點(diǎn)MN切換回家鄉(xiāng)鏈路時(shí)的切換延遲。
可以看出,移動(dòng)節(jié)點(diǎn)切換時(shí)的信令重建延遲是非對稱的,移動(dòng)節(jié)點(diǎn)從家鄉(xiāng)鏈路切換到外地鏈路時(shí)的信令重建過程延遲為2~2.5秒,而從外地鏈路切換回家鄉(xiāng)鏈路時(shí)的信令重建過程延遲約為1~1.5秒。這是因?yàn)橐苿?dòng)節(jié)點(diǎn)從家鄉(xiāng)鏈路切換到外地鏈路時(shí)需要通過自動(dòng)配置獲得轉(zhuǎn)交地址COA(Care-Of-Address),而從外地鏈路切換回家鄉(xiāng)鏈路時(shí)則沒有地址自動(dòng)配置過程。
受無線信道質(zhì)量的限制,移動(dòng)節(jié)點(diǎn)實(shí)際很難達(dá)到11Mbps的通信速率。在去掉11Mbps的測試數(shù)據(jù)后不難發(fā)現(xiàn),在切換測試中,移動(dòng)節(jié)點(diǎn)使用5.5Mbps的通信速率時(shí)信令重建延遲普遍較小,特別是在MN距離無線接入點(diǎn)距離較大時(shí)??梢?,移動(dòng)節(jié)點(diǎn)的信令重建延遲與無線信道速率有一定聯(lián)系,隨著無線信道速率的提高,信令重建延遲有所減少。由于實(shí)際測試中對無線信道的干擾因素較多,因此在測試數(shù)據(jù)中不可避免地會(huì)出現(xiàn)一些異常數(shù)據(jù),例如1米距離的測試數(shù)據(jù)中5.5Mbps的延遲要高于2Mbps和1Mbps的延遲。為了保證數(shù)據(jù)的真實(shí)性,本文保留了這些數(shù)據(jù)。
受實(shí)驗(yàn)條件的限制,無法進(jìn)行更遠(yuǎn)距離的切換測試。從現(xiàn)有的測試數(shù)據(jù)來看,移動(dòng)節(jié)點(diǎn)與無線接入點(diǎn)間的距離和移動(dòng)節(jié)點(diǎn)的信令重建延遲沒有明顯的聯(lián)系。
2.2 切換對TCP業(yè)務(wù)的影響
2.2.1 相同通信速率和距離
圖2是移動(dòng)節(jié)點(diǎn)MN使用5.5Mbps的速率與節(jié)點(diǎn)CN進(jìn)行通信時(shí)TCP擁塞窗口報(bào)文段個(gè)數(shù)(CWND)的變化曲線。發(fā)生切換時(shí)MN與無線接入點(diǎn)的距離為3米。
從圖2中可以看出,在沒有切換發(fā)生時(shí),擁塞窗口CWND的變化較為規(guī)則,擁塞窗口最小為7,切換過程中擁塞窗口保持為1,而且在切換完成后重新啟動(dòng)了慢啟動(dòng)過程??梢奣CP協(xié)議將移動(dòng)節(jié)點(diǎn)的切換誤判斷為網(wǎng)絡(luò)擁塞,啟動(dòng)了擁塞控制機(jī)制。其結(jié)果就是降低了TCP協(xié)議的性能。
OUT曲線中CWND值為1的時(shí)間為6.006秒,IN曲線中CWND值為1的時(shí)間為2.942秒。由于CWND保持值為1的時(shí)間包括切換的信令重建時(shí)間和TCP協(xié)議的操作時(shí)間,因此這一時(shí)間要長于表1中的切換時(shí)間。MN切換到外地鏈路時(shí)通信中斷時(shí)間較長,對TCP業(yè)務(wù)性能的影響也較大。
2.2.2 相同距離不同通信速率
圖3和圖4分別是移動(dòng)節(jié)點(diǎn)距離無線接入點(diǎn)3米處切換回家鄉(xiāng)鏈路和距離無線接入點(diǎn)1米處切換到外地鏈路時(shí)擁塞窗口CWND的變化曲線。移動(dòng)節(jié)點(diǎn)分別以1Mbps、2Mbps、5.5 Mbps和11 Mbps的速率與節(jié)點(diǎn)CN進(jìn)行通信。
圖3中CWND值為1的時(shí)間分別為3.483秒(1Mbps)、2.909秒(2Mbps)、2.942秒(5.5Mbps)和3.665秒(11Mbps)。圖4中CWND值為1的時(shí)間分別為4.951秒(1Mbps)、5.183秒(2Mbps)、3.023秒(5.5Mbps)和5.134秒(11Mbps)??梢钥闯?,當(dāng)去掉通信速率為11Mbps的數(shù)據(jù)后,隨著無線信道的速率提高,切換所需的時(shí)間有所減少。
3 總結(jié)與展望
從測試數(shù)據(jù)可以看出,移動(dòng)節(jié)點(diǎn)切換時(shí)的信令重建延遲是非對稱的,移動(dòng)節(jié)點(diǎn)切換到外地鏈路時(shí)的信令重建延遲要大于切換回家鄉(xiāng)鏈路時(shí)的信令重建延遲。隨著無線信道速率的提高,切換延遲有所減少。但是僅從測試收集的數(shù)據(jù)來看,切換時(shí)MN與無線接入點(diǎn)的距離對切換延遲并無明顯的影響。對于使用TCP協(xié)議的業(yè)務(wù),由于還存在TCP協(xié)議自身的操作過程,業(yè)務(wù)中斷時(shí)間要長于信令重建延遲。
由于測試均在實(shí)際環(huán)境中進(jìn)行,存在一些如無線信道干擾等難以控制的客觀因素,因此造成實(shí)驗(yàn)中存在一些異常數(shù)據(jù)。受實(shí)驗(yàn)條件限制,測試中未考慮同一AP下多個(gè)移動(dòng)節(jié)點(diǎn)競爭的情況和通信對端為移動(dòng)節(jié)點(diǎn)的情況,這也是今后將要深入研究的內(nèi)容。
本文客觀、準(zhǔn)確地對信令重建延遲進(jìn)行了測量和分析,對如何加速信令重建過程、減少信令重建延遲具有一定的指導(dǎo)意義。雖然在移動(dòng)節(jié)點(diǎn)發(fā)生切換后仍能保持TCP連接,但是由于TCP協(xié)議啟動(dòng)了擁塞控制機(jī)制,且切換所需的時(shí)間較長,因此不可避免地降低了業(yè)務(wù)性能。如何使得TCP協(xié)議能夠區(qū)分網(wǎng)絡(luò)擁塞丟包、切換丟包和無線信道誤碼丟包,避免TCP協(xié)議在切換和無線誤碼丟包時(shí)進(jìn)入擁塞控制階段,以加速TCP業(yè)務(wù)的切換過程,提高TCP協(xié)議性能是值得深入研究的課題。
參考文獻(xiàn)
1 Soliman H,Castelluccia C,Malki K E et al.Hierarchical mobile IPv6 mobility management (HMIPv6).RFC4140,2005
2 Koodli R.Fast handovers for mobile IPv6.RFC4068,2005
3 Mobile IPv6 for Linux(MIPL).http://www.mobile-ipv6.org/