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