移動IP技術
移動IP技術
移動IP是移動通信和IP的深層融合,也是對現有移動通信方式的深刻變革,它將真正實現話音和數據的業務融合,它的目標是將無線話音和無線數據綜合到一個技術平台上傳輸,這一平台就是IP協議。
如何讓人們能夠隨時、隨地訪問Internet,是當前Internet技術研究的一個熱點,也是下一代真正的個人通信技術的目標。無線接入中的移動IP技術使得人們一直夢想的無處不在的多媒體全球網路連接成為可能,它適應了普遍計算時代的需求。
現有的移動通信採用的是電路交換方式,用戶通話時一直佔用固定的帶寬資源。這種通信方式適合話音業務,但對IP類型的業務則不是最適合的。為適應快速增長的數據型業務需求,現有的電路交換的移動通信網路必須進行改造,人們需要的是一個以包交換為基礎的無線網路,這種新型網路結構正是移動IP未來的結構。
移動IP不是移動通信技術和網際網路技術的簡單疊加,也不是無線話音和無線數據的簡單疊加,它是移動通信和IP的深層融合,也是對現有移動通信方式的深刻變革。它將真正實現話音和數據的業務融合,移動IP的目標是將無線話音和無線數據綜合到一個技術平台上傳輸,這一平台就是IP協議。未來的移動網路將實現全包交換,包括話音和數據都由IP包來承載,話音和數據的隔閡將消失。在IMT-2000中已明確規定,第三代移動通信系統必須支持移動IP分組業務。而IETF(Internet工程任務組)也正在擴展網際網路協議,開發一套用於移動IP的技術規範,目前已制訂完成了RFC2002(IP移動性支持)、RFC2003(IP內的IP封裝)、RFC2004(IP內的最小封裝)、RFC2290(用於PPP IPCP的移動IPv4配置選項),其他協議正在制訂中。移動通信的IP化進程將分為三個階段:首先是移動業務的IP化;之後是移動網路的分組化演進;最後是在第三代移動通信系統中實現全IP化。
使用傳統IP技術的主機使用固定的IP地址和TCP埠號進行相互通信,在通信期間它們的IP地址和TCP埠號必須保持不變,否則IP主機之間的通信將無法繼續。而移動IP的基本問題是IP主機在通信期間可能需要在網路上移動,它的IP地址也許經常會發生變化。而IP地址的變化最終會導致通信的中斷。
如何解決因節點移動(即IP地址的變化)而導致通信中斷的問題?蜂窩行動電話提供了一個非常好的解決問題的先例。因此,解決移動IP問題的基本思路與處理蜂窩行動電話呼叫相似,它將使用漫遊、位置登記。隧道技術、鑒權等技術。從而使移動節點使用固定不變的IP地址,一次登錄即可實現在任意位置(包括移動節點從一個IP(子)網漫遊到另一個IP(子)網時)上保持與IP主機的單一鏈路層連接,使通信持續進行。
移動代理分歸屬代理(HomeAgent)和外區代理(ForeignAgent)兩類,它們是移動的IP伺服器或路由器,能知道移動節點實際連接在何處。
其中,歸屬代理是歸屬網上的移動IP代理,它至少有一個介面在歸屬網上。其責任是當移動節點離開歸屬網,連至某一外區網時,截收發往移動節點的數據包,並使用隧道技術將這些數據包轉發到移動節點的轉交節點。歸屬代理還負責維護移動節點的當前位置信息。
外區網代理位於移動節點當前連接的外區網路上,它向已登記的移動節點提供選路服務。當使用外區代理轉交地址時,外區代理負責解除原始數據包的隧道封裝,取出原始數據包,並將其轉發到該移動節點。對於那些由移動節點發出的數據包而言,外區代理可作為已登記的移動節點的預設路由器使用。
移動IP節點擁有兩個IP地址。一個是歸屬地址,是移動節點與歸屬網連接時使用的地址,不管移動節點移至網路何處,其歸屬地址保持不變。二是轉交地址,就是隧道終點地址,轉交地址可能是外區代理轉交地址,也可能是駐留本地的轉交地址。通常用的是外區代理轉交地址。在這種地址模式中,外區代理就是隧道的終點,它接收隧道數據包,解除數據包的隧道封裝,然後將原始數據包轉發到移動節點。
一是被動發現,即移動節點等待本地移動代理周期性的廣播代理通告報文;二是主動發現,即移動節點廣播一條請求代理的報文。
當移動節點在外區網上時,歸屬代理需要將原始數據報轉發給已登記的外區代理。這時,歸屬代理使用IP隧道技術,將原始IP數據包封裝在轉發的IP數據包中,從而使原始IP數據包原封不動的轉發到處於隧道終點的轉交地址處。在轉交地址處解除隧道,取出原始數據包,並將原始數據包發送到移動節點。當轉交地址為主流本地的轉交地址時,移動節點本身就是隧道的終點,它自身進行解除隧道,取出原始數據包的工作。RFC2003和RFC2004中分別定義了兩種隧道封裝技術,見圖1。
1)移動代理(即外區代理和歸屬代理)通過代理通告報文廣播其存在。移動節點通過代理請求報文,可有選擇的向本地移動代理請求代理通告報文。
2)移動節點收悉這些代理通告后,分辨其在歸屬網上,還是在某一外區網上。
3)當移動節點檢測到自己位於歸屬網上時,那麼它不需要移動服務就可工作。假如移動節點從登記的其他外區網返回歸屬網時,通過交換其隨帶的登記請求和登記答覆報文,移動節點需要向其歸屬代理撤銷其外區網登記信息。
4)當移動節點檢測到自己已漫遊到某一外區網時,它獲得該外區網上的一個轉交地址。這個轉交地址可能通過外區代理的通告獲得,也可能通過外部分配機制獲得,如DHCP(一個駐留本地的轉交地址)。
5)離開歸屬網的移動節點通過交換其隨帶的登記請求和登記答覆報文,向歸屬代理登記其新的轉交地址,另外它也可能藉助於外區代理向歸屬代理進行登記。
6)發往移動節點歸屬地址的數據包被其歸屬代理接收,歸屬代理利用隧道技術封裝該數據包,並將封裝后的數據包發送到移動節點的轉交地址,由隧道終點(外區代理或移動節點本身)接收,解除封裝,並最終傳送到移動節點。
在相反方向,使用標準的IP選路機制,移動節點發出的數據包被傳送到目的地,無需通過歸屬代理轉發。無論移動節點在歸屬網內還是在外區網中,IP主機與移動節點之間的所有數據包都是用移動節點的歸屬地址,轉交地址僅用於與移動代理的聯繫,而不被IP主機所覺察。
1)IP主機經過標準的IP選路,發往移動節點的數據包抵達歸屬網。
2)數據包被歸屬代理接收,由註冊表可知移動節點的關聯地址。
3)採用"隧道技術"送到移動節點的轉交地址,即外區代理。
4)外區代理解除隧道,取出原始數據包,並將原始數據包轉發給移動節點。
5)移動節點發出的數據包通過標準的IP選路規程發送到目的地(本圖中外區代理為移動節點的預設路由器)。
1.解決移動節點在子網間漫遊時在尋徑上卻存在如下不足
考慮一個漫遊至外地網的用戶A,正與用戶B進行通信,根據以上尋徑方式,用戶A的數據必將按照傳統IP尋徑方法,以某種最佳尋徑方式達到用戶B;而從用戶B發出的數據,由於目的地址是用戶A,數據必將先到達用戶A的歸屬代理,在由歸屬代理傳到外地代理,最後才到達用戶A。這顯然不是最佳路徑,特別是當用戶A漫遊到用戶B所在的歸屬網時,這種尋徑方式的傳輸延遲很大,對實時語音、圖像等會造成極大的損害;也增加了網路負擔,數據包在網路中運行的時間大大增加。
為了解決這個不足,可以引入一種新的代理——通信代理,它是與移動節點通信的IP節點的路由器。新結構的工作過程如下:三個代理都發送代理通告報文聲明自己的存在,不同的是,通信代理針對的是本範圍內的所有用戶。用戶B要發數據給用戶A,他並不知道用戶A已移動,仍向用戶A所在的子網發數據,被本地代理截獲,本地代理一方面將該數據包轉發到外區代理,一方面分析源地址,向數據包源端反向發送一條消息,該消息包括用戶A目前的狀態,如它的關聯地址等等,用戶B收到本地代理髮來的消息后,得知用戶A已移動,則向通信代理進行登記,告訴其關於用戶A的關聯地址,請求建立通信代理至外區代理的通道,建立成功后,由於這是通信兩點直接建立的,所以路徑最佳,然後用戶B把發往用戶A的數據包發給通信代理,通信代理截獲後由"隧道"發往外區代理,再由外區代理髮給用戶A。示意圖如圖3。
通過這種改進,大大減小了時延,更好的滿足了第三代移動通信系統IMT-2000中對於傳輸和尋徑時延的要求。
2.由於採用了IP隧道封裝技術,使得封裝后的數據包大於源路由數據包,這樣不但增加了路由上的負擔,還必然的增加了消息處理時延。為了解決這一問題,就要對數據包的包頭進行合理的設計或是對包頭進行壓縮。
3.移動IP節點的成本要高於有線IP網的節點成本,而目前Internet上的大多數設備和ISP不支持移動IP業務。增設外區代理、歸屬代理、通信代理都需要更大的資金投入,且技術含量更高。
4.移動IP的接入對Internet網的安全性提出了更高的要求;反過來,Internet網中的防火牆檢驗每個數據包的源地址時,當發現數據包的歸屬地址與外區網的網路地址不一樣時,會阻截IP隧道數據包。
5.IPv4和IPv6。在安全性方面,在移動IPv4中必須依賴自己的安全機制,通過靜態地配置“移動安全關聯”來完成這些功能,增加了負擔。移動IPv6使用IPSec來滿足更新綁定時的所有安全需求(發送者認證,數據完整性保護,重傳保護等),也就是說移動IPv6的安全性是建立在IPv6的安全機制之上的,這樣對移動IPv6就可以省去很多用來應付安全性的工作。IPv6在解決路由的低效性、入口過濾等問題方面也較IPv4有自己考慮的解決的方案。
1.IP業務與移動通信結合的第一步:在電路交換的移動通信網路中引入IP電話業務
IP電話是一種新的電話業務,是在IP網路承載話音技術創新的產物。它把話音進行壓縮編碼,打包分組,路由分配,存儲交換,解包解壓縮等變換處理,在IP網路上實現話音通信。因為它的分組特性有效地利用了網路資源,降低了話音傳輸的成本,所以與傳統電話相比有成本價格上的優勢。在固定網中,IP電話業務正在崛起。基於成本上的考慮,在移動網路中引入IP電話業務也是頗有發展前景的新業務。在我國,GSM移動網路中引入IP電話是用戶關注的新業務,也是運營商需要解決的技術問題。
2.在GSM網路中引入IP分組數據業務:GPRS
GPRS是移動通信網路向分組化發展的一個里程碑。GPRS是一個從空中介面到地面接入網再到核心網路部分都分組化的數據通信網路。GPRS的分組化實質,使得空中介面頻譜利用率與地面接入網帶寬利用效率都得到極大地提高。同時誕生了“按流量計費”這種更加合理的資費政策,使得運營商可以宣稱:讓用戶24小時在線,只有點擊的時候才計費。GPRS掃除了阻礙無線網際網路應用得到普及在技術和成本兩方面的障礙,必將加快移動網際網路應用的普及和推廣。GPRS的骨幹網將藉助於IP網路和網際網路路能夠無縫互通互聯。對用戶來說,移動終端使得原先需要龐大昂貴的PC才能使用的網際網路以一種更為簡單便捷、親切易用和廉價實用的方式出現,也更加易於為廣大普通百姓所接受。移動性將大大促進網際網路應用的普及。可以大膽地預言,網際網路和移動通信的結合,會使得以前曲高和寡的數據業務以廉價實用的方式進入尋常百姓家。
3.第三代移動通信網路的發展方向將是一個全IP的分組網路
第三代移動通信的發展是在固定網路向寬頻電信級IP網路發展的大背景下進行的。第三代移動通信的核心網路將採用寬頻IP網路。在此IP網上,承載著從實時話音、視頻到Web瀏覽、電子商務等多種業務,是電信級的多業務統一網路。寬頻的IP網路將是分層的:物理承載可以是IP over DWDM、IP over SDH、IP over ATM等多種方式,IP協議是主導的網路路由與定址協議,網路控制由Call Server伺服器實現,而網上的業務則由眾多的第三方智能業務提供商提供。實現了傳輸網路、網路控制、業務提供的分離。相對與傳統網路、網路安全性、業務質量保證、新業務提供的便利性、業務種類的豐富性以及開放系統帶來的廣闊商業機會都是無可比擬的。
第三代移動網路發展的初期將繼承現有移動網路的基礎設施,如移動交換機(MSC/VLR),歸屬位置登記(HLR)資料庫等;在業務發展初期,電路型業務如話音,電路型多媒體業務將仍然由MSC網路承載,而分組數據業務將由GSN分組交換機承載,形成電路和分組兩套網路並存的局面。但隨著分組業務量的急劇增長和IP技術的完全成熟,所有的業務將會統一到IP網路,形成一個真正的綜合業務網路。
——隨著Internet的飛速發展和移動計算機日益廣泛的應用,推動了對移動計算機無線接入的研究,即移動Internet的研究。象其它台式機用戶一樣,移動計算機用戶希望接入同樣的網路,共享資源和服務,而不局限於某一固定區域。且當它移動時,也能方便地斷開原來的連接,並建立新的連接。IETF(Internet工程任務組)為了迎合這種需求,制定了移動IP協議,從而使Internet上的移動接入成為可能。
——目前IETF正在開發一套用於移動IP的技術規範,這主要是:
——RFC2002(IP移動性支持)、RFC2003(IP內的IP封裝)、RFC2004(IP內的最小封裝)、RFC2290(用於PPP IPCP的移動IVv4配置選項)。
——傳統IP技術的主機使用固定的IP地址和TCP(傳統控制協議)埠進行相互通信。在通信期間,它們的IP地址和IP埠號必須保持不變,否則IP主機之間的通信將無法繼續。而移動IP主機在通信期間可能需要在網路上移動,它的IP地址也許會經常發生變化。若採用傳統方式,IP地址的變化會導致通信中斷。為解決這一問題,移動IP技術引用了處理蜂窩行動電話呼叫的原理,使移動節點採用固定不變的IP地址,一次登錄即可實現在任意位置上保持與IP主機的單一鏈路層連接,使通信持續進行。移動IP網路結構示於圖1。
與移動IP技術相關的重要術語及工作原理
——.歸屬代理(Home Agent)
——一個在移動節點歸屬網上的路由器,它至少有一個介面在歸屬網上,當移動節點離開歸屬網時,它通過“IP通道(IP Tunnel)”把數據包傳給移動節點,並且負責維護移動節點的當前位置信息。
——.外區代理(Foreign Agent)
——移動節點當前所在網路上的路由器,它向已登記的移動節點提供選路服務。當使用外區代理轉交地址時,外區代理負責解除原始數據包的隧道封裝,取出原始數據包,並將其轉發到該移動節點。對於那些由移動節點發出的數據包而言,外區代理可作為已登記的移動節點的預設路由器使用。
——.歸屬地址(Home Address)
——這是用來識別端到端連接的靜態地址,也是移動節點與歸屬網連接時使用的地址。不管移動節點連至網路何處,其歸屬地址保持不變。
——.轉交地址(Care of Address)
——轉交地址即隧道終點地址。它可能是外區代理轉交地址,也可能是駐留本地的轉交地址。外區代錶轉交地址是外區代理的一個地址,移動節點利用它進行登記。在這種地址模式中,外區代理就是隧道的終點,它接收隧道數據包,解除數據包的隧道封裝,然後將原始數據包發到移動節點。由於這種地址模式可使很多移動節點共享同一個轉交地址,而且不對有限的IPv4地址空間提出不必要的要求。所以這種地址模式被優先使用。駐留本地的轉交地址是一個臨時分配給移動節點的地址。它由外部獲得(如通過DHCP),移動節點將其與自身的一個網路介面相關聯。當使用這種地址模式時,移動節點自身就是隧道的終點,執行解除隧道功能,取出原始數據包。一個駐留本地的轉交地址僅能被一個移動節點使用。轉交地址是僅供數據包選路使用的動態地址,也是移動節點與外區網連接時使用的臨時地址。每當移動節點接入到一個新的網路,轉交地址就發生變化。
——.位置登記(Registration)
——移動節點必須將其位置信息向其歸屬代理進行登記,以便被找到。在移動IP技術中,依不同的網路連接方式,有兩種不同的登記規程。一種是通過外區代理進行登記。即移動節點向外區代理髮送登記請求報文,外區代理接收並處理登記請求報文,然後將報文中繼到移動節點的歸屬代理;歸屬代理處理完登記請求報文後向外區代理髮送登記答覆報文(接受或拒絕登記請求),外區代理處理登記答覆報文,並將其轉發到移動節點。另一種是直接向歸屬代理進行登記,即移動節點向其歸屬代理髮送登記請求報文,歸屬代理處理後向移動節點發送登記答覆報文(接受或拒絕登記請求)。登記請求和登記答覆報文使用用戶數據報協議(UDP)進行傳送。當移動節點收到來自其歸屬代理的代理通告報文時,它可判斷其已返口到歸屬網路。此時,移動節點應向歸屬代理撤銷登記。在撤銷登記之前,移動節點應配置適用於其歸屬網路的路由表。
——.代理髮現(Agent Discoery)
——為了隨時隨地與其他節點進行通信,移動節點必須首先找到一個移動代理。移動IP定義了兩種發現移動代理的方法:一是被動發現,即移動節點等待本地移動代理周期性地廣播代理通告報文;二是主動發現,即移動節點廣播一條請求代理的報文。移動IP使用擴展的“ICMP Router Discovery”機製作為代理髮現的主要機制。要注意的是,使用以上任何一種方法都可使移動節點識別出移動代理並獲得轉交地址,從而獲悉移動代理可提供的任何服務,並確定其連至歸屬網還是某一外區網上。使用代理髮現可使移動節點檢測到它何時從一個IP網路(或子網)漫遊(或切換)到另一個IP網路(或子網)。
——所有移動代理(不管其能否被鏈路層協議所發現)都應具備代理通告功能,並對代理請求作出響應。所有移動節點必須具備代理請求功能。但是,移動節點只有在沒有收到移動代理的代理通告,並且無法通過鏈路層協議或其他方法獲得轉交地址的情況下,方可發送代理請求報文。
——.隧道技術(Tunneling)
——當移動節點在外區網上時,歸屬代理需要將原始數據包轉發給已登記的外區代理。這時,歸屬代理使用IP隧道技術,將原始IP數據包(作為凈負荷)封裝在轉發的IP數據包中,從而使原始IP數據包原封不動地轉發到處於隧道終點轉交地址處。在轉變地址處解除隧道,取出原始數據包,並將原始數據包發送到移動節點。當轉交地址為駐留本地的轉交地址時,移動節點本身就是隧道的終點,它自身進行解除隧道,取出原始數據包的工作。IETF RFC2003和RFC2004各自定義了一種利用隧道封裝數據包的技術,詳見圖2所示。
——在RFC2003中規定,為了實現在IP數據包中封裝作為凈負荷的原始IP數據包,需要在原始數據包的現有頭標前插入一個外層IP頭標。外層頭標中的源地址和目的地址分別標識隧道的兩個邊界
節點。內層IP頭標(即原始IP頭標)中的源地址和目的地址則分別標識原始數據包的發送節點和接收節點。除了減小TTL值之外,封裝節點不改變內層的IP頭標。內層IP頭標在被傳送到隧道出口節點期間保持不變。從而使原始IP數據包原封不動地轉發到處於隧道終點的轉交地址。
——使用RFC2004定義的IP內最小封裝有一個前提條件,就是當原始數據包被分片時,不能使用這
種封裝技術,也就是說,數據包在封裝之前不能被分片。因此,對移動IP技術來講,最小封裝技術是可選的。為了使用最小封裝技術來封裝數據包,移動IP技術需要在原始數據包經修改的IP頭標和未修改的凈負荷之間插入最小轉發頭標。顯然,這種最小封裝技術比RFC2003定義的封裝技術節省開銷。
——當拆裝數據包時,隧道的出口節點將最小轉發頭標的欄位保存到IP頭標中,然後移走這個轉發頭標。
——工作原理分以下步驟:
——①歸屬代理和外區代理不停地向網上發送代理通告(Agent Advertisement)消息,以聲明自己的存在。
——②移動節點接到這些消息,確定自己是在歸屬網還是在外區網上。
——③如果移動節點發現自己仍在歸屬網上,即收到的是歸屬代理髮來的消息,則不啟動移動功能。如果是從外區重新返回的,則向歸屬代理髮出註冊取消的功能消息,聲明自己已回到歸屬網中。
——④當移動節點檢測到它移到外區網,它則獲得一個關聯地址,這個地址有兩種類型:一種即是外區代理的IP地址;另一種是通過某種機制與移動節點暫時對應起來的網路地址,也即是移動節點在外區暫時獲得的新的IP地址。
——⑤然後移動節點向歸屬代理註冊,表明自己已離開歸屬網,把所獲的關聯地址通知歸屬代理。
——⑥註冊完畢后,所有通向移動節點的數據包將歸屬代理經由“IP通道”發往外區代理(如使用第一類關聯地址)或移動節點本身(如使用第二類關聯地址),外區代理收到后,再把數據包轉給移動節點,這樣,即使移動節點已由一個子網移到另一個子網,移動節點的數據傳輸仍能繼續進行。
——⑦移動節點發往外地的數據包按一般的IP尋徑方法送出,不必通過歸屬代理。
——圖3說明了移動節點在外區網上時,移動IP的工作過程。
——一個是三角形路徑問題。移動IP協議執行時常會遇到三角形路徑問題,即通信節點發送數據包到移動節點時,需要通過其歸屬代理,而移動節點根據標準IP路由規則將數據包直接發送到通信節點。三角形路徑問題會引起一些潛在的危害,例如增加引入流量的時延容易引起歸屬代理處的路由瓶頸。如果通信節點知道移動節點的轉交地址,通信節點就能通過隧道技術直接發送數據包到移動節點,不需要歸屬代理的幫助。現在的問題是Internet上的通信節點一般不能提供接收和存儲移動節點轉交地址的信息,也就是不能執行任何隧道技術。對基本移動IP協議的改進將有助於這個問題的解決。
——另一個問題是外區代理間的光滑切換。由於移動主機的頻率可能很高,與移動節點通信的每個主機可能來不及收到移動主機的地址更新消息,在主機離開一個子網而進入另一個子網期間,有可能在網路上有以移動節點為目的的分組。因此保證這些分組的安全是網路實現在於網間光滑漫遊的主要問題。
——另外移動節點連至Internet的鏈路通常是無線鏈路,這種鏈路與傳統的有線網路相比,其帶寬明顯低得多,誤碼率高得多;某些防火牆也可能會阻斷IP隧道,因為它們檢驗每個數據包的源地址,而移動節點的數據包歸屬地址與外區網的網路地址不一樣,從而導致防火牆阻截IP隧道數據包;且移動節點可能是電池供電,如何減小功耗是一個急需解決的問題。