移動IP技術研究(邱新平、阮傳概、張振濤)
[摘要]為了滿足移動計算機用戶對Internet移動接人需求的急劇增長,IETF設計了移
動IP協(xié)議。本文介紹了移動IP的基本特點和工作原理,并提出了當前存在的問題。
[關鍵詞]移動IP;歸屬代理;外區(qū)代理;隧道技術
1移動 IP出現(xiàn)的背景
隨著Internet五的飛速發(fā)展和移動計算機日益廣泛的應用,推動了對移動計算機無
線接入的研究,即移動 Internet的研究。象其它臺式機用戶一樣,移動計算機用戶希望
接入同樣的網絡,共享資源和服務,而不局限于某一固定區(qū)域。且當它移動時,也能方
便地斷開原來的連接,并建立新的連接。IETF(Internet工程任務組)為了迎合這種需
求,制定了移動IP協(xié)議,從而使Internet上的移動接入成為可能。
目前IETF正在開發(fā)一套用于移動IP的技術規(guī)范,這主要是:
RFC2002(IP移動性支持)、RFC2003(IP內的IP封裝)、RFC2004 (IP內的最小封
裝)、RFC2290(用于 PPP IPCP的移動IVv4配置選項)。
傳統(tǒng)IP技術的主機使用固定的IP地址和TCP(傳統(tǒng)控制協(xié)議)端口進行相互通信。
在通信期間,它們的IP地址和TCP端口號必須保持不變,否則IP主機之間的通信將無法
繼續(xù)。而移動IP主機在通信期間可能需要在網絡上移動,它的IP地址也許會經常發(fā)生變
化。若采用傳統(tǒng)方式,IP地址的變化會導致通信中斷。為解決這一問題,移動IP技術引
用了處理蜂窩移動電話呼叫的原理,使移動節(jié)點采用固定不變的IP地址,一次登錄即可
實現(xiàn)在任意位置上保持與IP主機的單一鏈路層連接,使通信持續(xù)進行。
2與移動IP技術相關的重要術語及工作原理
(1)重要術語
·歸屬代理(Home Agent)
一個在移動節(jié)點歸屬網上的路由器,它至少有一個接口在歸屬網上,當移動節(jié)點離
開歸屬網時,它通過“IP通道(IP TUnnel)”把數(shù)據(jù)包傳給移動節(jié)點,并且負責維護
移動節(jié)點的當前位置信息。
·外區(qū)代理(Foreign Agent)
移動節(jié)點當前所在網絡上的路由器,它向已登記的移動節(jié)點提供選路服務。當使用
外區(qū)代理轉變地址時,外區(qū)代理負責解除原始數(shù)據(jù)包的隧道封裝,取出原始數(shù)據(jù)包,并
將其轉發(fā)到該移動節(jié)點。對于那些由移動節(jié)點發(fā)出的數(shù)據(jù)包而言,外區(qū)代理可作為已登
記的移動節(jié)點的缺省路由器使用。
·歸屬地址(Home Address)
這是用來識別端到端連接的靜態(tài)地址,也是移動節(jié)點與歸屬網連接時使用的地址。
不管移動節(jié)點連至網絡何處,其歸屬地址保持不變。
·轉交地址(Care of Address)
轉交地址即隧道終點地址。它可能是外區(qū)代理轉變地址,也可能是駐留本地的轉變
地址。外區(qū)代表轉交地址是外區(qū)代理的一個地址,移動節(jié)點利用它進行登記。在這種地
址模式中,外區(qū)代理就是隧道的終點,它接收隧道數(shù)據(jù)包,解除數(shù)據(jù)包的隧道封裝,然
后將原始數(shù)據(jù)包發(fā)到移動節(jié)點。由于這種地址模式可使很多移動節(jié)點共享同一個轉交地
址,而且不對有限的IPv4地址空間提出不必要的要求,所以這種地址模式被優(yōu)先使用。
駐留本地的轉交地址是一個臨時分配給移動節(jié)點的地址。它由外部獲得(如通過DHCP),
移動節(jié)點將其與自身的一個網絡接口相關聯(lián)。當使用這種地址模式時,移動節(jié)點自身就
是隧道的終點,執(zhí)行解除隧道功能,取出原始數(shù)據(jù)包。一個駐留本地的轉變地址僅能被
一個移動節(jié)點使用。轉交地址是僅供數(shù)據(jù)包選路使用的動態(tài)地址,也是移動節(jié)點與外區(qū)
網連接時使用的臨時地址,每當移動節(jié)點接入到一個新的網絡,轉交地址就發(fā)生變化。
·位置登記(Registration)
移動節(jié)點必須將其位置信息向其歸屬代理進行登記,以便被找到。在移動IP技術中,
依不同的網絡連接方式,有兩種不同的登記規(guī)程。一種是通過外區(qū)代理進行登記。即移
動節(jié)點向外區(qū)代理發(fā)送登記請求報文,外區(qū)代理接收并處理登記請求報文,然后將報文
中繼到移動節(jié)點的歸屬代理;歸屬代理處理完登記請求報文后向外區(qū)代理發(fā)送登記答復
報文(接受或拒絕登記請求),外區(qū)代理處理登記答復報文,并將其轉發(fā)到移動節(jié)點。
另一種是直接向歸屬代理進行登記,即移動節(jié)點向其歸屬代理發(fā)送登記請求報文,歸屬
理處理后向移動節(jié)點發(fā)送登記答復報文(接受或拒絕登記請求)。登記請求和登記答復
報文使用用戶數(shù)據(jù)報協(xié)議(UDP)進行傳送。當移動節(jié)點收到來自其歸屬代理的代理通
告報文時,它可判斷其已返回到歸屬網絡。此時,移動節(jié)點應向歸屬代理撤銷登記。在
撤銷登記之前,移動節(jié)點應配置適用于其歸屬網絡的路由表。
·代理發(fā)現(xiàn)(Ag6nt Discoery)
為了隨時隨地與其他節(jié)點進行通信,移動節(jié)點必須首先找到一個移動代理。移動IP
定義了兩種發(fā)現(xiàn)移動代理的方法:一是被動發(fā)現(xiàn),即移動節(jié)點等待本地移動代理周期性
地廣播代理通告報文;二是主動發(fā)現(xiàn),即移動節(jié)點廣播一條請求代理的報文。移動 IP
使用擴展的“ICMP Router Discovery”機制作為代理發(fā)現(xiàn)的主要機制。要注意的是,
使用以上任何一種方法都可使移動節(jié)點識別出移動代理并獲得轉交地址,從而獲悉移動
代理可提供的任何服務,并確定其連至歸屬網還是某一外區(qū)網上。使用代理發(fā)現(xiàn)可使移
動節(jié)點檢測到它何時從一個IP網絡(或子網)漫游(或切換)到另一個IP網絡(或子網)。
所有移動代理(不管其能否被鏈路層協(xié)議所發(fā)現(xiàn))都應具備代理通告功能,并對代
理請求作出響應。所有移動節(jié)點必須具備代理請求功能。但是,移動節(jié)點只有在沒有收
到移動代理的代理通告,并且無法通過鏈路層協(xié)議或其他方法獲得轉交地址的情況下,
方可發(fā)送代理請求報文。
·隧道技術(Tunneling)
當移動節(jié)點在外區(qū)網上時,歸屬代理需要將原始數(shù)據(jù)包轉發(fā)給已登記的外區(qū)代理。
這時,歸屬代理使用IP隧道技術,將原始IP數(shù)據(jù)包(作為凈負荷)封裝在轉發(fā)的IP數(shù)據(jù)
包中,從而使原始IP數(shù)據(jù)包原封不動地轉發(fā)到處于隧道終點轉交地址處。在轉交地址處
解除隧道,取出原始數(shù)據(jù)包,并將原始數(shù)據(jù)包發(fā)送到移動節(jié)點。當轉交地址為駐留本地
的轉交地址時,移動節(jié)點本身就是隧道的終點,它自身進行解除隧道,取出原始數(shù)據(jù)包
的工作。IETFRFC2003和RFC2004各自定義了一種利用隧道封裝數(shù)據(jù)包的技術。
在RFC2003中規(guī)定,為了實現(xiàn)在IP數(shù)據(jù)包中封裝作為凈負荷的原始IP數(shù)據(jù)包,需要
在原始數(shù)據(jù)包的現(xiàn)有頭標前插入一個外層IP頭標。外層頭標中的源地址和目的地址分別
標識隧道的兩個邊界節(jié)點。內層IP頭標(即原始IP頭標)中的源地址和目的地址則分別
標識原始數(shù)據(jù)包的發(fā)送節(jié)點和接收節(jié)點。除了減小TTL值之外,封裝節(jié)點不改變內層的
IP頭標。內層IP頭標在被傳送到隧道出口節(jié)點期間保持不變。從而使原始IP數(shù)據(jù)包原封
不動地轉發(fā)到處于隧道終點的轉交地址。
使用RFC2004定義的W內最小封裝有一個前提條件,就是當原始數(shù)據(jù)包被分片時,不
能使用這種封裝技術,也就是說,數(shù)據(jù)包在封裝之前不能被分片。因此,對移動IP技術
來講,最小封裝技術是可選的。為了使用最小封裝技術來封裝數(shù)據(jù)包,移動IP技術需要
在原始數(shù)據(jù)包經修改的IP頭標和未修改的凈負荷之間插入最小轉發(fā)頭標。顯然,這種最
小封裝技術比RFC2003定義的封裝技術節(jié)省開銷。
當拆裝數(shù)據(jù)包時,隧道的出口節(jié)點將最小轉發(fā)頭標的字段保存到IP頭標中,然后移
走這個轉發(fā)頭標。
(2)工作原理
工作原理分以下步驟:
①歸屬代理和外區(qū)代理不停地向網上發(fā)送代理通告(Agent Advertisement)消息,
以聲明自己的存在。
②移動節(jié)點接到這些消息,確定自己是在歸屬網還是在外區(qū)網上。
③如果移動節(jié)點發(fā)現(xiàn)自己仍在歸屬網上,即收到的是歸屬代理發(fā)來的消息,則不啟
動移動功能。如果是從外區(qū)重新返回的,則向歸屬代理發(fā)出注冊取消的功能消息,聲明
自己已回到歸屬網中。
④當移動節(jié)點檢測到它移到外區(qū)網,它則獲得一個關聯(lián)地址,這個地址有兩種類型:
一種即是外區(qū)代理的IP地址;另一種是通過某種機制與移動節(jié)點暫時對應起來的網絡地
址,也即是移動節(jié)點在外區(qū)暫時獲得的新的IP地址。
⑤然后移動節(jié)點向歸屬代理注冊,表明自己已離開歸屬網,把所獲的關聯(lián)地址通知
歸屬代理。
⑥注冊完畢后,所有通向移動節(jié)點的數(shù)據(jù)包將歸屬代理經由“IP通道”發(fā)往外區(qū)代
理(如使用第一類關聯(lián)地址)或移動節(jié)點本身(如使用第二類關聯(lián)地址),外區(qū)代理收
到后,再把數(shù)據(jù)包轉給移動節(jié)點,這樣,即使移動節(jié)點已由一個子網移到另一個子網,
移動節(jié)點的數(shù)據(jù)傳輸仍能繼續(xù)進行。
⑦移動節(jié)點發(fā)往外地的數(shù)據(jù)包按一般的IP尋徑方法送出,不必通過歸屬代理。
3移動IP存在的問題
一個是三角形路徑問題。移動IP協(xié)議執(zhí)行時常會遇到三角形路徑問題,即通信節(jié)點
發(fā)送數(shù)據(jù)包到移動節(jié)點時,需要通過其歸屬代理,而移動節(jié)點根據(jù)標準IP路由規(guī)則將數(shù)
據(jù)包直接發(fā)送到通信節(jié)點。三角形路徑問題會引起一些潛在的危害,例如增加引入流量
的時延容易引起歸屬代理處的路由瓶頸。如果通信節(jié)點知道移動節(jié)點的轉交地址,通信
節(jié)點就能通過隧道技術直接發(fā)送數(shù)據(jù)包到移動節(jié)點,不需要歸屬代理的幫助。現(xiàn)在的問
題是Inter net上的通信節(jié)點一般不能提供接收和存儲移動節(jié)點轉交地址的信息,也就
是不能執(zhí)行任何隧道技術。對基本移動IP協(xié)議的改進將有助于這個問題的解決。
另一個問題是外區(qū)代理間的光滑切換。由于移動主機的頻率可能很高,與移動節(jié)點
通信的每個主機可能來不及收到移動主機的地址更新消息,在主機離開一個子網而進入
另一個子網期間,有可能在網絡上有以移動節(jié)點為目的的分組。因此保證這些分組的安
全是網絡實現(xiàn)在子網間光滑漫游的主要問題。
另外移動節(jié)點連至Internet的鏈路通常是無線鏈路,這種鏈路與傳統(tǒng)的有線網絡相
比,其帶寬明顯低得多,誤碼率高得多;某些防火墻也可能會阻斷IP隧道,因為它們檢
驗每個數(shù)據(jù)包的源地址,而移動節(jié)點的數(shù)據(jù)包歸屬地址與外區(qū)網的網絡地址不一樣,從
而導致防火墻阻截IP隧道數(shù)據(jù)包;且移動節(jié)點可能是電池供電,如何減小功耗是一個急
需解決的問題。
4結束語
本文介紹了移動IP的基本特點和工作原理,并提出了當前存在的問題。目前移動IP
協(xié)議不是很成熟,一些相關的機制還需要進~步完善。但可以確信的是它是解決全面移
動接入的最有前途的方法,因此受到業(yè)內人士的廣泛關注。
摘自《移動通信》