移動通信的基石----移動IP

相關專題: 無線
移動通信的基石----移動IP

移動Internet正逐步成為現(xiàn)實。然而,由于Internet的互聯(lián)協(xié)議、IP的地址結構和路由算法,限
制了移動主機在移動Internet中的靈活操作。IP協(xié)議中的網絡地址分為兩層結構:子網號,用來
確定與主機相連的網絡;主機號,用來確定這個子網中的特定主機。如果一個主機改變了與
Internet的連接點,移動到了一個具有不同網絡前綴的子網,那么發(fā)向它的數據包將不能正確地
到達它。另外,固定網、特別是移動通信的引入,IP地址空間也存在著極大的不足。



為了解決這些問題,IETF等組織開始了在移動IP上的研究,并在移動IPv4和移動IPv6方面取得了
一定的成績。



移動IPv4



移動IP定義了三種功能實體移動主機,家鄉(xiāng)代理和外地代理,家鄉(xiāng)代理和外地代理統(tǒng)稱為移動代
理。



基本構架



在移動IP協(xié)議中,每個移動主機在“家鄉(xiāng)鏈路”上有一個唯一的“家鄉(xiāng)地址”。與移動主機通信的
主機被稱為“通信主機”,通信主機可以是移動的,也可以是靜止的。通信主機與移動主機通信
時,通信主機總是把數據包發(fā)送到移動主機的家鄉(xiāng)地址,而不考慮移動主機的當前位置情況。




在家鄉(xiāng)鏈路上每個移動主機必須有一個“家鄉(xiāng)代理”來為自己維護當前位置信息。這個位置由“轉
交地址”來確定,移動主機的家鄉(xiāng)地址與它當前轉交地址的聯(lián)合稱為“移動綁定”,或簡稱為“綁
定”。每當一個移動主機得到一個新的轉交地址時,它必須生成一個新的綁定來向家鄉(xiāng)代理注冊,
以使家鄉(xiāng)代理即時了解移動主機的當前位置信息。一個家鄉(xiāng)代理可以同時為多個移動主機提供服
務。



當一個移動主機連接到家鄉(xiāng)鏈路之外的“外地鏈路” 時,可以通過下述兩種方法來獲得轉交地
址。通常情況下移動主機使用“代理發(fā)現(xiàn)”協(xié)議在外地鏈路上發(fā)現(xiàn)一個“外地代理”,然后移動主
機向這個外地代理進行注冊,并使用此外地代理的IP地址作為自己的轉交地址。外地代理的主要功
能是為這個移動主機轉發(fā)數據包。另外移動主機也可以通過其他方法(如DHCP)在外地鏈路上獲
得一個臨時IP地址來作為自己的轉交地址,在這種情況下移動主機可以作為自己的外地代理。




當移動主機離開家鄉(xiāng)鏈路時,它的家鄉(xiāng)代理把發(fā)往移動主機的所有數據包轉發(fā)到移動主機的當前位
置。家鄉(xiāng)代理可以使用“代理ARP”或其他有效方法在家鄉(xiāng)鏈路上截獲發(fā)往移動主機的數據包。對
于每個截獲的數據包,家鄉(xiāng)代理使用隧道技術把它們發(fā)送到移動主機的當前轉交地址。如果轉交地
址是外地代理的IP地址,那么這個外地代理是隧道的終端,此時外地代理從數據包中移走隧道報
頭,并把剩余部分發(fā)送到移動主機。如果移動主機使用一個臨時地址作為轉交地址,那么數據包將
直接通過隧道傳送到移動主機。



在一個網絡上,一臺路由器可以同時具有家鄉(xiāng)代理和外地代理的功能,也可以用兩臺或多臺路由器
分別提供家鄉(xiāng)代理和外地代理服務。



代理發(fā)現(xiàn)



移動IP通過擴展現(xiàn)有的“ICMP路由器發(fā)現(xiàn)”機制來實現(xiàn)代理發(fā)現(xiàn)。代理發(fā)現(xiàn)機制能夠使移動主機
檢測到自己是否從一個網絡移動到了另外的網絡,并且也能夠檢測到它是否回到了家鄉(xiāng)鏈路。當移
動主機移動到一個新的外地鏈路時,代理發(fā)現(xiàn)機制也能幫助移動主機發(fā)現(xiàn)一個合適的外地代理。




在某些特定類型的網絡上,數據鏈路層可以完成代理發(fā)現(xiàn)的功能。但為了支持在數據鏈路層不具有
此功能的網絡,必須為代理發(fā)現(xiàn)制定標準協(xié)議。通過制定這個標準協(xié)議,可以為移動主機提供一種
適合所有網絡類型的代理發(fā)現(xiàn)機制。



家鄉(xiāng)代理和外地代理在自己所連接的網絡上定期地廣播“代理宣告”消息來宣告自己的存在。移動
主機時刻監(jiān)聽代理宣告消息,用來判斷有哪些家鄉(xiāng)代理或外地代理連接在它所在的網絡上。如果一
個移動主機從自己的家鄉(xiāng)代理接收到一個代理宣告消息,它就能夠推斷已經返回家鄉(xiāng)并直接向家鄉(xiāng)
代理進行注冊。否則,移動主機將選擇是保留當前的注冊還是向新的外地代理進行注冊。



當移動主機位于家鄉(xiāng)鏈路或者已經向一個外地代理進行了注冊,那么它仍然希望從它的家鄉(xiāng)代理或
它的當前外地代理繼續(xù)接收定期的宣告消息。如果移動主機在一段時間內沒有接收到一定數量的宣
告消息,那么它就認為自己已經移動或者它的家鄉(xiāng)代理或當前的外地代理發(fā)生了故障。如果移動主
機最近接收到了其他的宣告消息,它就試圖向發(fā)送這個宣告消息的外地代理進行注冊。否則,移動
主機將向它所在的網絡上廣播一條“代理請求”消息,接收到這條請求消息的每個家鄉(xiāng)代理或外地
代理都應當用宣告消息進行應答。



代理宣告消息是ICMP路由器宣告消息的擴展,在ICMP路由器宣告消息之后是“移動代理宣告擴
展”報頭,另外也可以可選地跟隨一個“前綴長度擴展”報頭,“一字節(jié)填充擴展”報頭或者其他
將來需要定義的報頭等。移動主機通過對代理宣告消息的處理,可以得到自己的位置信息和轉交地
址。



注冊



當移動主機發(fā)現(xiàn)它的網絡接入點從一條鏈路切換到另一條鏈路時,它就要進行注冊。另外,由于注
冊信息有一定的生存時間,所以移動主機在沒有發(fā)生移動時也要進行注冊。移動IP的注冊功能是:
移動主機通過注冊可以得到外地鏈路上外地代理的路由服務;移動主機通過注冊可以通知家鄉(xiāng)代理
它的轉交地址;可以使一個要過期的注冊重新生效;移動主機在回到家鄉(xiāng)鏈路時要進行反注冊。




注冊的另外一些功能還包括:同時注冊多個轉交地址,此時家鄉(xiāng)代理將發(fā)往移動主機家鄉(xiāng)地址的數
據包通過隧道發(fā)往移動主機的每個轉交地址;可以在注銷一個轉交地址的同時保留其他轉交地址;
在先前不知道它家鄉(xiāng)代理的情況下,移動主機可以通過注冊動態(tài)地得到家鄉(xiāng)代理的地址。



移動IP的注冊過程一般在代理發(fā)現(xiàn)機制完成之后進行。當移動主機發(fā)現(xiàn)自己返回家鄉(xiāng)鏈路時,它就
向家鄉(xiāng)代理進行注冊,并開始像固定主機或路由器那樣進行通信。當移動主機位于外地鏈路時,它
能夠得到一個轉交地址,并通過外地代理向家鄉(xiāng)代理注冊這個地址。移動IP包括兩種注冊消息:注
冊請求和注冊應答。



隧道技術



隧道技術在移動IP中扮演了一個非常重要的角色。移動IP中使用了三種隧道技術:IP的IP封裝、
最小封裝和通用路由封裝GRE。



IP的IP封裝是一個Internet標準,用于將IPv4包放在另一個IPv4包的凈荷部分。移動IP要求家鄉(xiāng)
代理和外地代理實現(xiàn)IP的IP封裝,以實現(xiàn)從家鄉(xiāng)代理到轉交地址的隧道。IP的IP封裝非常簡單明
了,只需把一個IP包放在一個新IP包的凈荷中。采用IP的IP封裝的隧道對穿過它們的數據包來說
就像一條虛擬鏈路。例如,一個包到達第一臺路由器,通過從第一臺路由器開始的隧道到達第二臺
路由器,并進一步轉發(fā)到它的目的地址,這時這個包的生存時間域會被減小兩次,好象隧道只是連
接這兩臺路由器的一條鏈路一樣。



IP的最小封裝是移動IP中的一種可選隧道方式。目的是減少實現(xiàn)隧道所需的額外字節(jié)數,可通過
將IP的IP封裝中內層IP報頭和外層IP報頭的冗余部分去掉來完成。最小封裝與IP的IP封裝相比可
以節(jié)省一些字節(jié)(一般是8字節(jié))但帶來了一些不利之處,即當原始數據包已經過分片時,最小封
裝就無能為力了。由于在隧道內的每一臺路由器上,原始包的生存時間域的值都會被減小,這使得
家鄉(xiāng)代理在采用最小封裝時,移動主機不可到達的概率增大。



最小封裝的包中可能不包含原始源地址域,從而不能保證隧道內的ICMP報文可以到達原始數據包
源,這樣隧道入口只能仍然依靠軟狀態(tài)對報文進行中繼,以便到達原始數據包源。由于以上原因,
移動IP實現(xiàn)者應集中精力保證IP原IP封裝正常工作,而可以不使用最小封裝。通用路由封裝GRE是
移動IP采用的最后一種隧道技術。除了IP協(xié)議,GRE還支持其他網絡層協(xié)議,它允許一種協(xié)議的數
據包封裝在另一種協(xié)議數據包的凈荷中。而前兩種只要求使用IP協(xié)議。另外GRE防止遞歸封裝的機
制在某些應用中也非常有吸引力。



移動IPv6



移動IPv6是在繼承移動IPv4優(yōu)點的基礎上,利用了IPv6的許多新特點進行設計的。協(xié)議中定義了
三種操作實體:移動節(jié)點、通信節(jié)點和家鄉(xiāng)代理;四種新的IPv6目的地選項:綁定更新、綁定認
可、綁定請求和家鄉(xiāng)地址;為了實現(xiàn)“動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)”機制定義了兩種ICMP消息類型:
家鄉(xiāng)代理地址發(fā)現(xiàn)請求消息和家鄉(xiāng)代理地址發(fā)現(xiàn)應答消息;定義了兩種“鄰居發(fā)現(xiàn)”選項:宣告消
息間隔和家鄉(xiāng)代理信息選項。



基本操作



無論移動節(jié)點在家鄉(xiāng)還是在外地,它總是通過家鄉(xiāng)地址來被尋址。當移動節(jié)點在家鄉(xiāng)時,可以使用
通常的路由機制來對發(fā)往移動節(jié)點的數據包進行路由。由于移動節(jié)點的子網前綴是移動節(jié)點家鄉(xiāng)鏈
路的子網前綴,所以發(fā)往移動節(jié)點的數據包將被路由到它的家鄉(xiāng)鏈路。



當一個移動節(jié)點連接在外地鏈路時,它可以通過一個或多個轉交地址或它的家鄉(xiāng)地址來被尋址。轉
交地址是當移動節(jié)點訪問外地鏈路時獲得的一個IP地址,此地址的子網前綴是移動節(jié)點所訪問的外
地鏈路的子網前綴。如果移動節(jié)點使用此轉交地址連接在這個外地鏈路,那么發(fā)往這個轉交地址的
數據包將被直接路由到在這個外地鏈路上的移動節(jié)點。



移動節(jié)點的家鄉(xiāng)地址和轉交地址的關聯(lián)叫做移動節(jié)點的一個綁定。利用IPv6“鄰居發(fā)現(xiàn)”協(xié)議,
移動節(jié)點可以通過有狀態(tài)的或無狀態(tài)的“地址自動配置”機制來獲得轉交地址。另外,其他獲得轉
交地址的方法也是允許的(如由外地鏈路的網絡管理員事先分配一個IP地址給移動節(jié)點)。



當移動節(jié)點離開家鄉(xiāng)鏈路時,它要向家鄉(xiāng)鏈路上的一個路由器注冊自己的一個轉交地址,并要求這
個路由器作為自己的家鄉(xiāng)代理。進行注冊時,移動節(jié)點向家鄉(xiāng)代理發(fā)送“綁定更新”消息;然后家
鄉(xiāng)代理要為移動節(jié)點返回“綁定認可”消息。移動節(jié)點把這個“綁定更新”消息中的轉交地址向家
鄉(xiāng)代理注冊,這個被注冊的轉交地址稱為移動節(jié)點的“主轉交地址”。移動節(jié)點的家鄉(xiāng)代理在家鄉(xiāng)
鏈路上,利用“代理鄰居發(fā)現(xiàn)”來為移動節(jié)點截獲發(fā)往移動節(jié)點的數據包,并且把每個數據包通過
隧道傳送到移動節(jié)點的主轉交地址。為了通過隧道傳送截獲的數據包,家鄉(xiāng)代理利用“IPv6封
裝”協(xié)議來封裝數據包,IPv6封裝的外部報頭的目的地址是移動節(jié)點的“主轉交地址”。



移動節(jié)點可以同時使用多于一個的轉交地址。移動節(jié)點的“主轉交地址”必須是唯一的,因為家鄉(xiāng)
代理只為每個移動節(jié)點維護一個轉交地址,并且通常都是把數據包通過隧道傳送到移動節(jié)點的“主
轉交地址”。這樣的話,家鄉(xiāng)代理使用隧道傳送數據包時就不用采取任何策略來決定要利用哪個轉
交地址作為隧道的出口,而把這項功能留給移動節(jié)點去完成。



當移動節(jié)點離開家鄉(xiāng)時,家鄉(xiāng)鏈路上的一些節(jié)點可能被重新配置,如原來作為移動節(jié)點家鄉(xiāng)代理的
路由器可能被別的路由器所替換。在這種情況下,移動節(jié)點可能不再知道它自己家鄉(xiāng)代理的IP地
址。為了解決這個問題,移動IPv6提供了“動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)”機制來允許移動節(jié)點動態(tài)地
在家鄉(xiāng)鏈路上發(fā)現(xiàn)一個家鄉(xiāng)代理的IP地址,發(fā)現(xiàn)之后,移動節(jié)點可以向這個家鄉(xiāng)代理注冊自己的轉
交地址。



“綁定更新”、“綁定認可”和“綁定請求”這三個目的地選項用于IPv6節(jié)點與移動節(jié)點之間進
行通信,也能夠使IPv6節(jié)點了解和緩存移動節(jié)點的綁定。



移動IPv6定義了一個附加的IPv6目的地選項叫“家鄉(xiāng)地址”選項。當移動節(jié)點在外地發(fā)送數據包
時,通常它將使用當前的轉交地址作為數據包報頭中的源地址,并且在數據包中包含一個“家鄉(xiāng)地
址”目的地選項,用于給出移動節(jié)點的家鄉(xiāng)地址。許多路由器都有“入口過濾功能”,這種路由器
不允許“源地址”不正確的數據包通過。通過使用轉交地址作為IPv6報頭的源地址,數據包將能
正常地通過這些路由器,這些入口過濾規(guī)則也同樣能夠得到正確的拓撲源結構。通過在每個數據包
中包含“家鄉(xiāng)地址”選項,移動節(jié)點可以利用包含在“家鄉(xiāng)地址”選項中的家鄉(xiāng)地址與通信節(jié)點進
行通信,這樣就使轉交地址對IP層之上是透明的。在數據包中包含“家鄉(xiāng)地址”選項僅僅影響通信
節(jié)點對這個數據包的接收;接收這樣的數據包將不在通信節(jié)點中產生任何狀態(tài)或修改任何狀態(tài)。




綁定管理



當一個移動節(jié)點配置了一個新的轉交地址并且決定要使用這個新的地址作為它的主轉交地址時,移
動節(jié)點通過發(fā)送給家鄉(xiāng)代理一個“綁定更新”消息來注冊這個新的綁定。移動節(jié)點指出這個“綁定
更新”消息是需要應答的,并且它不斷的周期性地重發(fā)這個消息直到得到認可為止。家鄉(xiāng)代理通過
向移動節(jié)點返回一個“綁定認可”消息來應答綁定更新消息。



當一個移動節(jié)點接收到一個由它的家鄉(xiāng)代理通過隧道發(fā)送給它的數據包時,移動節(jié)點就認為發(fā)送這
個數據包的通信節(jié)點沒有它的綁定緩存條目。如果有的話,通信節(jié)點就可以利用“路由報頭”直接
向移動節(jié)點發(fā)送數據包,而不必經過移動節(jié)點的家鄉(xiāng)鏈路。因此,移動節(jié)點向通信節(jié)點返回一個
“綁定更新”消息,允許通信節(jié)點為這個移動節(jié)點緩存一個綁定,以后通信節(jié)點就可以利用這個綁
定來發(fā)送以后的數據包。盡管移動節(jié)點可以要求這個“綁定更新”消息被應答,但這個應答不是必
須的,因為從這個通信節(jié)點發(fā)出的后續(xù)的數據包如果繼續(xù)被移動節(jié)點的家鄉(xiāng)代理所截獲并且通過隧
道發(fā)送到通信節(jié)點,那么將激發(fā)移動節(jié)點向通信節(jié)點重發(fā)“綁定更新”消息。當某個綁定的生存時
間將要到期時,具有這個“綁定緩存”條目的通信節(jié)點可以更新此綁定條目。通信節(jié)點通過發(fā)送一
個“綁定請求”消息到移動節(jié)點,來要求移動節(jié)點向它發(fā)送“綁定更新”消息。例如,如果通信節(jié)
點正在與移動節(jié)點進行通信,并且正有一個打開的TCP連接,并且以后還要繼續(xù)這個通信,那么在
這種情況下移動節(jié)點可以刷新這個條目。當移動節(jié)點接收到一個“綁定請求”消息時,它向發(fā)送這
個“綁定請求”消息的節(jié)點返回一個“綁定更新”消息。



移動節(jié)點同時可以有一個或多個轉交地址,盡管僅僅有一個轉交地址被注冊為它的“主轉交地
址”。移動節(jié)點使用多于一個的轉交地址是非常有用的。比如,當移動節(jié)點從一個無線鏈路移動到
另外一個無線鏈路時,可以提高切換的性能。現(xiàn)實世界中有與Internet通過單獨基站相聯(lián)的無線
鏈路,這樣的兩個鏈路的覆蓋范圍有可能重疊,在這種情況下,當移動節(jié)點在重疊區(qū)域的時候可能
與兩個鏈路同時保持連接。當移動節(jié)點移出舊鏈路的覆蓋范圍并與它斷開連接之前,移動節(jié)點可以
在新的鏈路上獲得一個新的轉交地址。這樣當移動節(jié)點更新家鄉(xiāng)代理和通信節(jié)點的“綁定緩存”的
時候,它仍然可以繼續(xù)使用舊的轉交地址來接收數據包。



由于通信節(jié)點能夠緩存綁定,所以通信節(jié)點能夠直接把數據包路由到移動節(jié)點的轉交地址,因此家
鄉(xiāng)代理很少參與對移動節(jié)點數據包的傳送。這對于系統(tǒng)的可擴展性和穩(wěn)定性是非常重要的,另外也
減少了網絡的負擔。通過緩存移動節(jié)點的轉交地址能夠得到從通信節(jié)點到移動節(jié)點的數據包的優(yōu)化
路徑。直接把數據包路由到移動節(jié)點的轉交地址也減輕了家鄉(xiāng)代理和家鄉(xiāng)鏈路的交通阻塞。另外由
于家鄉(xiāng)鏈路上的節(jié)點和家鄉(xiāng)鏈路參與很少的對移動節(jié)點數據包的轉發(fā),所以這些節(jié)點和家鄉(xiāng)鏈路的
失敗很少影響移動節(jié)點的通信。



動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)



當移動節(jié)點向家鄉(xiāng)代理注冊“主轉交地址”時,它可能不知道它的家鄉(xiāng)鏈路上能夠具有家鄉(xiāng)代理功
能的路由器的地址。舉例說明,當移動節(jié)點離開家鄉(xiāng)鏈路之后,原來的家鄉(xiāng)代理可能被其他的路由
器所替代。



在這種情況下,移動節(jié)點可以使用“動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)”機制,在自己的家鄉(xiāng)鏈路上來發(fā)現(xiàn)一
個合適的家鄉(xiāng)代理的地址。為了完成這項工作,移動節(jié)點向“移動IPv6家鄉(xiāng)代理”的“任意發(fā)
送”地址發(fā)送“ICMP家鄉(xiāng)代理地址發(fā)現(xiàn)請求”消息。這個數據包不能夠使用“家鄉(xiāng)地址”選項,
而必須在數據包的IP報頭的源地址字段中使用移動節(jié)點的轉交地址(這個數據包通過轉交地址發(fā)
送,而不使用移動IP)。在家鄉(xiāng)鏈路上接收到請求消息的家鄉(xiāng)代理將返回“家鄉(xiāng)代理地址發(fā)現(xiàn)應
答”消息,在消息中給出自己的全球唯一地址,另外也給出了家鄉(xiāng)鏈路上其他家鄉(xiāng)代理的列表。家
鄉(xiāng)鏈路上的每個家鄉(xiāng)代理都維護這樣一個列表。由于每個家鄉(xiāng)代理都周期性地廣播非請求“路由器
宣告”消息,而在這個消息中如果“家鄉(xiāng)代理”位被置位,那么發(fā)送這個消息的路由器就被認為是
家鄉(xiāng)代理,所以根據這個消息每個家鄉(xiāng)代理都能了解自己所在鏈路上哪些路由器是家鄉(xiāng)代理。




移動節(jié)點在接收到“ICMP家鄉(xiāng)代理地址發(fā)現(xiàn)應答”消息之后,就向發(fā)送此消息的源地址發(fā)送“綁
定更新”以進行家鄉(xiāng)注冊;另外,由于移動節(jié)點能夠從應答消息中得到家鄉(xiāng)鏈路上其他家鄉(xiāng)代理的
地址,所以移動節(jié)點也可以向其他家鄉(xiāng)代理發(fā)送“綁定更新”消息。例如移動節(jié)點可以向所有的家
鄉(xiāng)代理進行家鄉(xiāng)注冊,然后等待能夠匹配的“綁定認可”消息,直到它的注冊動作被其中一個家鄉(xiāng)
代理所接受。移動節(jié)點在試著向每個家鄉(xiāng)代理的地址發(fā)送“綁定更新”消息時,應當按著家鄉(xiāng)代理
的列表順序來發(fā)送。如果返回“家鄉(xiāng)代理地址發(fā)現(xiàn)應答”消息的家鄉(xiāng)代理沒有出現(xiàn)在家鄉(xiāng)代理列表
中,那么它應該首先被發(fā)送“綁定更新”消息,否則,移動節(jié)點就要按照家鄉(xiāng)代理列表中的順序去
發(fā)送。



如果家鄉(xiāng)鏈路上的某個家鄉(xiāng)代理上有一個合法的注冊,那么移動節(jié)點在進行新的注冊時,必須首先
對這個家鄉(xiāng)代理進行注冊更新。如果這個注冊過程失敗或者被拒絕,那么移動節(jié)點就要向家鄉(xiāng)鏈路
上其他的家鄉(xiāng)代理進行注冊。如果移動節(jié)點不知道家鄉(xiāng)鏈路上其他家鄉(xiāng)代理的地址,那么它就要執(zhí)
行“動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)”機制。



對所有IPv6節(jié)點的要求



移動IPv6作為IPv6不可分割的一部分,對不同的IPv6節(jié)點提出了一些特殊要求。



由于每個IPv6節(jié)點在任何時刻都可以成為一個移動節(jié)點的通信節(jié)點,所以對所有的IPv6節(jié)點來說
都必須滿足以下要求:



每個IPv6節(jié)點必須能夠處理包含在IPv6數據包中的“家鄉(xiāng)地址”選項;



每個IPv6節(jié)點應能處理接收到的“綁定更新”選項,并且能返回“綁定認可”選項來作為對“綁
定更新”的應答(如果這個“綁定更新”需要應答的時候);



每個IPv6節(jié)點應能為接收到“綁定更新”維護一個“綁定緩存”條目。



所有的IPv6路由器應能滿足以下要求,即使不是移動IPv6中的“家鄉(xiāng)代理”:



每個IPv6路由器應能在它的“路由器宣告”消息中包含一個“宣告時間間隔”選項,來幫助移動
節(jié)點進行移動檢測且必須是可配置的;



每個IPv6路由器應當能夠以更快的速率發(fā)送非請求“路由器宣告”廣播消息,這個速率的使用必
須是可配置的。



為了使移動節(jié)點離開家鄉(xiāng)時能夠正確地工作,在移動節(jié)點的家鄉(xiāng)鏈路上至少應該有一個路由器作為
它的家鄉(xiāng)代理。以下的要求應用到作為家鄉(xiāng)代理的所有IPv6路由器上:



每一個家鄉(xiāng)代理必須能夠在它的綁定緩存中為它所服務的每一個移動節(jié)點維護一個條目。每一個綁
定緩存條目中記錄了移動節(jié)點的綁定,在這個綁定中記錄有移動節(jié)點的主轉交地址并且這個條目被
標識為“家鄉(xiāng)注冊”的記號;



當移動節(jié)點離開家鄉(xiāng)時,在移動節(jié)點家鄉(xiāng)鏈路上的家鄉(xiāng)代理必須能夠為移動節(jié)點截獲發(fā)往移動節(jié)點
的數據包;



每個家鄉(xiāng)代理必須能夠封裝被截獲的數據包,然后把它們通過隧道發(fā)往移動節(jié)點的“主轉交地
址”;



當家鄉(xiāng)代理接收到一個“應答位”被設置的“綁定更新”消息時,它必須能夠向這個移動節(jié)點返回
一個“綁定認可”消息;



每個家鄉(xiāng)代理必須能夠為它所服務的每個鏈路上的所有家鄉(xiāng)代理維護多個單獨的家鄉(xiāng)代理列表;




每個家鄉(xiāng)代理必須能夠接收發(fā)往“移動IPv6家鄉(xiāng)代理”任意發(fā)送地址的數據包,并且它必須能夠
參與到“動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)”機制中;



每個家鄉(xiāng)代理應該支持一個可配置機制來允許系統(tǒng)管理員手動地設置“家鄉(xiāng)代理信息”選項中“家
鄉(xiāng)代理優(yōu)先選擇權”字段的值。



移動IPv4與

移動IPv6的比較



移動IPv6的設計汲取了移動IPv4的設計經驗,并且利用了IPv6的許多新的特征,所以提供了比移
動IPv4更多的、更好的特點。移動IPv6成為了IPv6協(xié)議不可分割的一部分。本文總結一下移動
IPv6和移動IPv4的主要的不同之處:



在移動IPv4的基本協(xié)議中存在有“三角路由”問題,對此“路由優(yōu)化”問題的解決是由另外的協(xié)
議完成的,是基本協(xié)議的可選擴展,并且不被移動IPv4中的所有節(jié)點所支持;在移動IPv6中,對
這個問題的解決已經成為協(xié)議的一個主要部分,并被所有的IPv6節(jié)點所支持。對這種路由優(yōu)化問
題的整合允許任何通信節(jié)點和移動節(jié)點之間直接路由數據包,而不再經過移動節(jié)點的家鄉(xiāng)網絡,也
不再需要家鄉(xiāng)代理的轉發(fā)功能,因此解除了在基本的移動IPv4協(xié)議中存在的“三角路由”問題。
這種整合也允許移動IPv4中的“注冊”功能和路由優(yōu)化功能在單獨一個協(xié)議中完成,而不是在兩
個不同的協(xié)議中完成。



在移動IPv6中可以允許移動節(jié)點與具有“入口過濾”功能的路由器同時存在并有效工作而不互相
影響。在移動IPv4中,當連接在外地鏈路的移動節(jié)點向通信節(jié)點發(fā)送數據包時,在某些情況下為
了保證位置的透明性,移動節(jié)點對所要發(fā)送數據包的源地址必須設置成自己的家鄉(xiāng)地址。由于家鄉(xiāng)
地址具有與外地鏈路不同的子網前綴,所以當這些數據包通過具有“入口過濾”功能的路由器時,
將被路由器過濾掉。在在移動IPv6中移動節(jié)點可以使用轉交地址作為它所發(fā)送數據包的IP報頭中
的源地址,這樣,數據包就能正常的通過具有“入口過濾”功能的路由器。移動節(jié)點的家鄉(xiāng)地址被
攜帶在數據包的“家鄉(xiāng)地址”目的地選項中,當通信節(jié)點接收到包含這樣選項的數據包時,能夠自
動地把數據包的源地址替換成“家鄉(xiāng)地址”目的地選項中的家鄉(xiāng)地址,這樣就使得轉交地址的使用
對IP以上各層是透明的。所有IPv6節(jié)點都必須能夠正確處理數據包中的“家鄉(xiāng)地址”選項,無論
這個節(jié)點是移動的還是靜止的,是主機還是路由器。



在數據包的報頭中使用“轉交地址”作為源地址也簡化了移動節(jié)點發(fā)送廣播數據包的路由。在移動
IPv4中,移動節(jié)點不得不把廣播數據包通過隧道發(fā)送到家鄉(xiāng)代理,從而在家鄉(xiāng)鏈路上利用家鄉(xiāng)地
址作為廣播數據包的源地址。在移動IPv6中,“家鄉(xiāng)地址“目的地選項的使用允許在廣播數據包
中使用“家鄉(xiāng)地址”作為源地址,這樣使得可以與依賴于數據包源地址的廣播路由相兼容。



在移動IPv6中不再有“外地代理”的概念。移動節(jié)點在離開家鄉(xiāng)鏈路時可以利用IPv6的增強功能
(如“鄰居發(fā)現(xiàn)”和“地址自動配置”機制)進行獨立操作,而不需要任何來自于當地路由器的特
殊支持。實質上,移動IPv6中“外地代理”與“家鄉(xiāng)代理”具有相同的功能,所以為了實現(xiàn)上的
方便在外地鏈路上也使用“家鄉(xiāng)代理”的概念。在移動IPv4中,一般情況下“外地代理”具有為
移動節(jié)點轉發(fā)數據包的功能。其實在移動IPv6中也需要此功能,如當移動節(jié)點從外地鏈路A移動到
外地鏈路B時,如果在外地鏈路A上沒有一個路由器具有“家鄉(xiāng)代理”的功能,那么發(fā)往外地鏈路A
的數據包將丟失。在這種情況下,已經移動到外地鏈路B的移動節(jié)點應該向外地鏈路A上的某個路由
器發(fā)送“綁定更新”消息,來要求這個路由器作為自己臨時的“家鄉(xiāng)代理”,從這種意義上來說,
外地鏈路上也應該具有“外地代理”,只是在移動IPv6中這個“外地代理”具有與“家鄉(xiāng)代理”
相同的功能。



在安全性方面,移動IPv6使用IPSec來滿足更新綁定時的所有安全需求(發(fā)送者認證,數據完整性
保護,重傳保護等),也就是說移動IPv6的安全性是建立在IPv6的安全機制之上的,這樣對移動
IPv6就可以省去很多用來應付安全性的工作。在移動IPv4中必須依賴自己的安全機制,通過靜態(tài)
地配置“移動安全關聯(lián)”來完成這些功能,增加了負擔。



當移動節(jié)點在當前位置與它的缺省路由器進行通信時,移動IPv6的“移動檢測”機制為移動節(jié)點
提供了雙向認證的能力(雙向是指從路由器向移動節(jié)點發(fā)送數據包和從移動節(jié)點向路由器發(fā)送數據
包)。這種認證對于“黑洞”問題提供了一種檢測方法,在某些鏈路上路由器和移動節(jié)點之間的鏈
路在雙向上工作狀況可能不一樣,這種情形可能存在于某些無線環(huán)境中,如移動節(jié)點已經移出了好
的無線傳輸范圍。如果移動節(jié)點到它當前路由器的鏈路工作狀況不是很好,那么移動節(jié)點可以試圖
發(fā)現(xiàn)一個新的路由器并使用一個新的轉交地址。相反,在移動IPv4中僅僅“前向”(從路由器向
移動節(jié)點發(fā)送數據包)的消息傳送被認可;例如,如果移動節(jié)點接收不到從路由器發(fā)送過來的數據
包,而移動節(jié)點發(fā)送到路由器的數據包即使路由器接收到,也不能對移動節(jié)點進行認可,所以這樣
就允許“黑洞”現(xiàn)象存在,即移動節(jié)點與路由器失去了聯(lián)系。



在移動IPv6中,對于發(fā)往離開家鄉(xiāng)鏈路的移動節(jié)點的數據包,使用IPv6的“路由報頭”進行傳
送,而不使用IP封裝;在移動IPv4中對于所有的數據包必須使用封裝技術。使用“路由報頭”需
要較少的附加報頭字節(jié),從而減少了移動IP分發(fā)數據包的負擔。但是,為了防止在數據包發(fā)送的過
程中被修改,在移動IPv6中,由移動節(jié)點的家鄉(xiāng)代理截獲并通過隧道發(fā)送到移動節(jié)點的數據包必
須仍然使用封裝技術。



當移動節(jié)點離開家鄉(xiāng)時,它的家鄉(xiāng)代理使用IPv6的“鄰居發(fā)現(xiàn)”機制來截獲發(fā)往移動節(jié)點的數據
包,而不是使用IPv4中的ARP協(xié)議。為了截取數據包,家鄉(xiāng)代理必須代表這個移動節(jié)點在家鄉(xiāng)鏈路
上廣播一條“無理由”的“鄰居廣播”消息。家鄉(xiāng)鏈路上接收到這樣一個“鄰居宣告”消息的任何
節(jié)點,將修改自己的“鄰居緩存”,使移動節(jié)點的地址與家鄉(xiāng)代理的鏈路層地址進行關聯(lián),這樣將
來發(fā)向移動節(jié)點的數據包直接發(fā)送到移動節(jié)點IP地址,而不發(fā)向移動節(jié)點的家鄉(xiāng)代理。“鄰居發(fā)
現(xiàn)”的使用提高了協(xié)議的健壯性并且簡化了移動IP的實現(xiàn),因為在移動IPv6中不需要再考慮與ARP
相關的特定數據鏈路層的性質。



在移動IPv4中由于ICMP協(xié)議的局限性必須使用“隧道軟狀態(tài)”的概念,而在移動IPv6中,由于使
用了“IPv6封裝”和“路由報頭”,從而不再需要“隧道軟狀態(tài)”。根據ICMPv6的定義,無論如
何都可以把“ICMP錯誤消息”正確的傳送到數據包的初始發(fā)送者。



在移動IPv6中,“動態(tài)家鄉(xiāng)代理地址發(fā)現(xiàn)”機制使用IPv6的“任意發(fā)送”地址,并且家鄉(xiāng)鏈路上
只有一個家鄉(xiāng)代理向移動節(jié)點返回一個應答消息;由于在移動IPv4中使用直接的廣播地址,所以
移動節(jié)點家鄉(xiāng)鏈路上的每個家鄉(xiāng)代理均返回一個獨立的應答消息。因為僅僅只有一個數據包從家鄉(xiāng)
鏈路返回到移動節(jié)點,所以移動IPv6的這種機制更加有效和可靠。



移動IPv6中在“路由器宣告”消息(相當于移動IPv4中的“代理宣告”消息)中定義了一個“宣
告時間間隔”選項,允許移動節(jié)點自己可以決定在宣布它的當前路由器不可達消息之前,可以略過
多少個“路由器宣告”消息。



由于使用了IPv6協(xié)議的“目的地選項”,所以允許移動IPv6的流量控制消息附加在任何的IPv6數
據包中,這樣可以減少網絡的通信量;而在移動IPv4中,對于每個控制消息都必須使用獨立的UDP
數據包進行發(fā)送。



總之,移動IPv6生逢其時,剛好迎合了IP協(xié)議更新?lián)Q代的時機,也滿足了移動信息社會的需求。
它必將在IPv6時代,為人們帶來無時無地不在的網絡通信。 (闞志剛 羅軍 馬建 王剛)


   

微信掃描分享本文到朋友圈
掃碼關注5G通信官方公眾號,免費領取以下5G精品資料
  • 1、回復“YD5GAI”免費領取《中國移動:5G網絡AI應用典型場景技術解決方案白皮書
  • 2、回復“5G6G”免費領取《5G_6G毫米波測試技術白皮書-2022_03-21
  • 3、回復“YD6G”免費領取《中國移動:6G至簡無線接入網白皮書
  • 4、回復“LTBPS”免費領取《《中國聯(lián)通5G終端白皮書》
  • 5、回復“ZGDX”免費領取《中國電信5GNTN技術白皮書
  • 6、回復“TXSB”免費領取《通信設備安裝工程施工工藝圖解
  • 7、回復“YDSL”免費領取《中國移動算力并網白皮書
  • 8、回復“5GX3”免費領取《R1623501-g605G的系統(tǒng)架構1
  • 本周熱點本月熱點

     

      最熱通信招聘

      最新招聘信息