潘 艷
[摘要]目前,基于IPv4的移動IPv4技術在實際應用中越來越暴露出其不足之處,因而IETF制定了下一代網絡協議IPv6,而移動IPv6作為IPv6協議不可分割的一部分,解決移動IPv4的地址和“三角路由”等問題。
[關鍵詞]IPv6MIPv4MIPv6
中圖分類號:TN92文獻標識碼:A文章編號:1671-7597(2009)0710050-01
一、MIPv6的產生
近年來,隨著移動通信和網絡技術的迅猛發展,使這兩個技術正在走向融合,而基于IPv4的移動IPv4(MIPv4)技術在實際應用中越來越暴露出其不足之處,因而IETF制定了下一代網絡協議IPv6,從本質上解決了地址問題,而移動IPv6(MIPv6)作為IPv6協議不可分割的一部分,通過對IPv6協議的添加和修改,基本解決了MIPv4的“三角路由”問題。
二、MIPv6對IPv6的添加和修改
(一)新增的IPv6擴展頭
1.新的移動擴展報頭(MH)。移動擴展頭是一個新定義的擴展頭。移動節點、通信節點、和家鄉代理使用移動擴展頭來攜帶那些用于注冊、建立綁定的消息。移動擴展頭可以攜帶的消息有:家鄉測試初始、轉交測試初始、家鄉測試、轉交測試等4個消息,用于返回路徑可達過程;綁定更新消息,用于移動節點通知通信節點或者家鄉代理它當前獲得的轉交地址;綁定確認消息,用于對移動節點發出的綁定更新進行確認;綁定刷新請求消息,用于請求移動節點發送新的綁定,當生存期接近過期時使用;綁定錯誤消息,通信節點使用它來通知和移動性相關的錯誤。
2.新的家鄉地址選項。MIPv6定義了一個新的家鄉地址選項,該選項包含在IPv6的目的地選項擴展頭中,用在離開家鄉的移動節點所發送的分組中通告接受者移動節點的家鄉地址。
3.第二類路由頭。MIPv6定義的第二類路由頭是一個新的路由頭類型。通信節點使用第二類路由頭直接發送分組到移動節點,把移動節點的轉交地址放在IPv6報頭的目的地址字段中,而把移動節點的家鄉地址放在第二類路由頭中。當分組到達移動節點時,移動節點從第二類路由頭中提取出家鄉地址,作為這個分組的最終目的地址。
(二)新增加的ICMPv6報文
1.新增的家鄉代理發現請求。移動節點使用該報文來啟動家鄉代理地址的動態發現過程,在網絡上離移動節點最近的家鄉代理會接收到這個請求報文。
2.新增的家鄉代理地址發現應答。家鄉代理用家鄉代理地址發現應答報文來回應家鄉代理地址發現請求報文,并在此報文中給出移動節點家鄉鏈路上作為家鄉代理的路由器的列表。
3.新增的移動前綴請求。當移動節點離開家鄉時,發送移動前綴請求消息給其家鄉代理。消息的目的是從家鄉代理請求移動前綴通告,使移動節點收集關于它的家鄉網絡的前綴信息。
4.新增的移動前綴廣播。當移動節點離開家鄉鏈路時,家鄉代理發送移動前綴廣播消息,用于通知移動節點家鄉鏈路的前綴信息。

(三)對鄰居發現協議的修改
1.修改了路由器通告消息。增加了一個指示發送者是否是本鏈路上家鄉代理的標志位H。
2.修改了路由器通告消息中的前綴信息選項。為了使家鄉代理知道本鏈路上所有其他家鄉代理的地址,從而建立家鄉代理地址發現機制所需的家鄉代理列表,使移動節點可以給它以前轉交地址所在鏈路的路由器發送綁定更新消息,從而建立從舊轉交地址到新轉交地址的轉發路徑,這時MIPv6需要知道路由器的全球地址,但是,鄰居發現僅僅通告路由器的鏈路局部地址。因此,在前綴信息選項中增加了一個路由地址位(R位),如該位被設置,那么,發送該路由器通告的路由器必須在前綴信息選項的前綴字段中包含一個該路由器的完整的全球地址。
3.新的通告間隔選項。用在路由器通告消息中指示路由器周期性發送非請求組播路由器通告的間隔。
4.新的家鄉代理信息選項。用在家鄉代理發送的路由器通告消息中,通告關于本家鄉代理的信息。
5.路由器通告發送規則的修改。鄰居發現協議標準限定,路由器從任何給定網絡接口發送非請求組播路由器通告的最小周期是3秒。為了對移動節點提供更好的支持,在MIPv6協議中放寬了這個限制,使路由器對非請求組播路由器通告的發送更為頻繁。
6.對路由器請求發送規則的修改。鄰居發現協議規定節點不能發送超過3次路由器申請,并且每次申請之間應該間隔4秒以上。在移動IPv6協議中同樣放寬了該限制,允許離開家鄉的移動節點以更高的頻率發送路由器請求。
7.對重復地址檢測的修改。鄰居發現使用重復地址檢測過程檢查IP地址的唯一性。如果重復地址檢測過程失敗,IPv6節點應該停止使用相關IP地址,等待重新配置。MIPv6允許移動節點在外地鏈路上遇到重復地址檢測失敗后,只是在完成下一次移動前在接口上停止使用這個地址,并不等待重新配置或放棄使用接口。
三、MIPv6工作原理
MIPv6的工作過程如上圖所示。移動節點MN移動到外地網絡時(如線1所示),進行移動檢測,并通過路由搜索和自動配置機制確定轉交地址。當MN得到轉交地址后,就向家鄉代理HA發送綁定更新信息(如線2所示)。當HA收到綁定更新消息后,就在綁定緩存中添加一個相應的條目,記錄MN的綁定信息。之后,HA向MN發送綁定確認(如線3所示)表示注冊成功。當通信節點CN發送數據包給MN的家鄉地址時,路由到MN的家鄉鏈路被MN的家鄉代理截獲(如線4所示),家鄉代理通過隧道方式將數據包傳送到MN當前的轉交地址上(如線5所示)。MN接收到CN通過HA隧道轉發來的數據包后,立即和CN進行注冊綁定過程(如線6-7所示)。當注冊完畢后,CN與MN之間的通信就可以利用MN的轉交地址進行通信了。
由上圖可知,通過路由優化,CN和MN就能夠直接進行通信而無須經過HA的轉發。這樣減少了數據包轉發的次數,縮短了轉發延遲,同時減輕了HA的工作負載,保持了移動透明性,從而極大的解決了“三角路由問題”。
參考文獻:
[1]Perkins C,IP Mobility Support,RFC2002,Oct 1996.
[2]R.Hinden,Internet Protocol Version 6 (IPv6) Specification,RFC2460,December 1998.
[3]D.Johnson,C.Perkins,J.Arkko,Mobility Support in IPv6,RFC3775,June 2004.
作者簡介:
潘艷(1980-),遼寧省錦州人,碩士研究生畢業,渤海大學教師。