范玉宇
隨著移動(dòng)網(wǎng)絡(luò)的迅速發(fā)展和IPv6技術(shù)的部署實(shí)施,各項(xiàng)基于移動(dòng)網(wǎng)絡(luò)上新的數(shù)據(jù)應(yīng)用層出不窮。當(dāng)移動(dòng)節(jié)點(diǎn)在不同的子網(wǎng)間隨意移動(dòng)時(shí),移動(dòng)IPv6技術(shù)如何保障其正在通信的業(yè)務(wù)不中斷,在網(wǎng)絡(luò)層上完成平滑快速無(wú)縫切換,成為移動(dòng)IP的關(guān)鍵技術(shù)之一。
一、標(biāo)準(zhǔn)MIPv6切換工作原理
1.1 MIPv6中的基本概念
在標(biāo)準(zhǔn)移動(dòng)IPv6技術(shù)術(shù)語(yǔ)中,常用到以下幾個(gè)專有名詞:(1)移動(dòng)節(jié)點(diǎn)(Mobile Node):物理上能夠從一個(gè)鏈路接入點(diǎn)移動(dòng)到另一個(gè)接入點(diǎn)的移動(dòng)主機(jī)節(jié)點(diǎn)。(2)家鄉(xiāng)鏈路(Home Link):對(duì)應(yīng)于移動(dòng)節(jié)點(diǎn)家鄉(xiāng)子網(wǎng)前綴的子網(wǎng)鏈路。(3)家鄉(xiāng)地址(Home Address):在家鄉(xiāng)鏈路上分給移動(dòng)節(jié)點(diǎn)的唯一可路由單播地址。當(dāng)移動(dòng)節(jié)點(diǎn)有多個(gè)家鄉(xiāng)鏈路網(wǎng)絡(luò)前綴時(shí),一個(gè)移動(dòng)節(jié)點(diǎn)可以使用多個(gè)家鄉(xiāng)地址。(4)家鄉(xiāng)代理(Home Agent):移動(dòng)節(jié)點(diǎn)家鄉(xiāng)鏈路上的某臺(tái)指定路由器。當(dāng)移動(dòng)節(jié)點(diǎn)離開(kāi)家鄉(xiāng)時(shí),負(fù)責(zé)截獲家鄉(xiāng)鏈路上發(fā)往移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址的數(shù)據(jù)包,封裝后再通過(guò)隧道轉(zhuǎn)發(fā)到移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址。(5)外地鏈路(Foreign Link):除了其家鄉(xiāng)鏈路之外的任何鏈路。(6)通信節(jié)點(diǎn)(Correspondent Node):所有與移動(dòng)節(jié)點(diǎn)通信的對(duì)端節(jié)點(diǎn)。(7)綁定(Binding):移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址和轉(zhuǎn)交地址的關(guān)聯(lián)以及關(guān)聯(lián)相應(yīng)的生存時(shí)間。(8)注冊(cè)(Register):移動(dòng)節(jié)點(diǎn)向家鄉(xiāng)代理或者通信節(jié)點(diǎn)注冊(cè)移動(dòng)節(jié)點(diǎn)的綁定,通過(guò)綁定更新和綁定應(yīng)答實(shí)現(xiàn)。進(jìn)一步分為家鄉(xiāng)代理注冊(cè)和通信節(jié)點(diǎn)注冊(cè)。
1.2 MIPv6的標(biāo)準(zhǔn)切換過(guò)程
如果移動(dòng)節(jié)點(diǎn)處于家鄉(xiāng)鏈路中,配置方式與位置固定的主機(jī)相同。當(dāng)移動(dòng)節(jié)進(jìn)入外地網(wǎng)絡(luò)時(shí),切換的過(guò)程主要包括兩個(gè)階段:首先是通過(guò)底層協(xié)議進(jìn)行L2鏈路層切換;之后是網(wǎng)絡(luò)層即IP層的切換,由于IP層切換技術(shù)相對(duì)復(fù)雜,這個(gè)過(guò)程也是MIPv6的主要研究對(duì)象,包括以下步驟:(1)移動(dòng)節(jié)點(diǎn)通過(guò)路由通告消息中的子網(wǎng)前綴獲得一個(gè)或多個(gè)轉(zhuǎn)交地址,并進(jìn)行重復(fù)地址檢測(cè)(DAD)。(2) 如果測(cè)得轉(zhuǎn)交地址可用,移動(dòng)節(jié)點(diǎn)向家鄉(xiāng)代理申請(qǐng)注冊(cè),建立綁定。家鄉(xiāng)代理此后用鄰居通告消息,截獲所有發(fā)往移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址的數(shù)據(jù)包,通過(guò)隧道發(fā)往移動(dòng)節(jié)點(diǎn)。(3)移動(dòng)節(jié)點(diǎn)直接發(fā)送分組給通信對(duì)端。當(dāng)通信節(jié)點(diǎn)也支持MIPv6時(shí),使用路由優(yōu)化方法,移動(dòng)節(jié)點(diǎn)與通信節(jié)點(diǎn)直接注冊(cè)自己的轉(zhuǎn)交地址,此后移動(dòng)節(jié)點(diǎn)和通信節(jié)點(diǎn)直接相互通信,不需要經(jīng)過(guò)家鄉(xiāng)代理轉(zhuǎn)發(fā),解決了MIPv4中三角路由的問(wèn)題。(4)對(duì)端通信節(jié)點(diǎn)給移動(dòng)節(jié)點(diǎn)發(fā)送數(shù)據(jù)包時(shí),先根據(jù)目的IP地址查詢綁定緩存,如存在綁定匹配,則直接發(fā)給移動(dòng)節(jié)點(diǎn)。如果沒(méi)有綁定匹配,則發(fā)給移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址,仍然將數(shù)據(jù)送到移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)鏈路上,經(jīng)其家鄉(xiāng)代理通過(guò)隧道方式轉(zhuǎn)發(fā)給移動(dòng)節(jié)點(diǎn)。(5)移動(dòng)節(jié)點(diǎn)通過(guò)收到家鄉(xiāng)代理轉(zhuǎn)發(fā)來(lái)的數(shù)據(jù)包,判斷通信節(jié)點(diǎn)沒(méi)有自己轉(zhuǎn)交地址的綁定緩存,進(jìn)而可以向通信節(jié)點(diǎn)發(fā)送綁定更新。
二、F-MIPv6切換技術(shù)
為了解決MIPv6中切換延時(shí)過(guò)長(zhǎng)的問(wèn)題,IETF工作組在RFC4068中提出了F-MIPv6協(xié)議即快速切換技術(shù)。包括預(yù)先注冊(cè)快速切換方法和過(guò)后注冊(cè)快速切換方法。
在標(biāo)準(zhǔn)MIPv6的設(shè)計(jì)中,鏈路層與網(wǎng)絡(luò)層分割明確,只有在完成二層切換后才能進(jìn)行三層切換工作,導(dǎo)致了移動(dòng)IP的固有時(shí)延。預(yù)先注冊(cè)快速切換方法允許移動(dòng)節(jié)點(diǎn)在還沒(méi)有完成L2層的切換時(shí)就可以啟用L3層切換的部分操作,可以由移動(dòng)節(jié)點(diǎn)或先前接入路由器(PAR)發(fā)起。
以移動(dòng)節(jié)點(diǎn)發(fā)起切換為例,切換流程如下:(1)移動(dòng)節(jié)點(diǎn)向先前接入路由器(PAR)發(fā)起路由器代理請(qǐng)求消息。(2)PAR返回路由器代理通告消息,在消息中含帶了新的接入路由器(NAR)的消息,包括網(wǎng)絡(luò)地址、前綴、鏈路層地址等信息。(3)移動(dòng)節(jié)點(diǎn)生成新的轉(zhuǎn)交地址,向PAR發(fā)出快速綁定更新消息。(4)PAR收到該消息后在新、舊轉(zhuǎn)交地址間建立隧道,向NAR發(fā)切換發(fā)起消息。(5)NAR對(duì)新的轉(zhuǎn)交地址進(jìn)行重復(fù)地址檢測(cè)(DAD),若重復(fù)則重新分配新轉(zhuǎn)交地址并在切換確認(rèn)消息中將結(jié)果告知PAR。(6)PAR向NAR和移動(dòng)節(jié)點(diǎn)回復(fù)快速綁定確認(rèn)消息,然后通過(guò)隧道把發(fā)往原轉(zhuǎn)交地址的數(shù)據(jù)送到NAR,NAR將這些數(shù)據(jù)暫存。(7)移動(dòng)節(jié)點(diǎn)到達(dá)新的子網(wǎng),向NAR發(fā)送快速鄰居通告消息,從NAR接受緩存和新來(lái)的數(shù)據(jù)。
在L2的切換完成之前,預(yù)先注冊(cè)快速切換方法不一定保證能夠完成,此時(shí)可以采用過(guò)后注冊(cè)快速切換方法。該機(jī)制允許PAR和NAR之間通過(guò)二層信息,建立雙向隧道,移動(dòng)節(jié)點(diǎn)在新的子網(wǎng)中仍然使用舊的轉(zhuǎn)交地址建立連接,減少對(duì)實(shí)時(shí)應(yīng)用的影響。過(guò)后注冊(cè)快速切換方法是對(duì)預(yù)先注冊(cè)快速切換方法的備份和必要補(bǔ)充。
三、H- MIPv6切換技術(shù)
H-MIPv6即層次型移動(dòng)IPv6,它的主要思想是將區(qū)域劃分,在每個(gè)區(qū)域中由一個(gè)指定的“移動(dòng)錨點(diǎn)”(MAP)進(jìn)行管理。MAP是移動(dòng)節(jié)點(diǎn)在外地鏈路中的路由器,它可以位于移動(dòng)網(wǎng)絡(luò)的任意層次中。
支持H-MIPv6的移動(dòng)節(jié)點(diǎn)以無(wú)狀態(tài)自動(dòng)配置方式獲取鏈路轉(zhuǎn)交地址(LCoA)和區(qū)域轉(zhuǎn)交地址(RCoA)。LCoA是基于當(dāng)前接入路由器默認(rèn)的路由器通告產(chǎn)生的移動(dòng)節(jié)點(diǎn)地址,RCoA是基于錨點(diǎn)的網(wǎng)絡(luò)前綴配置形成的地址。移動(dòng)節(jié)點(diǎn)在同一MAP域的不同接入路由器鏈路下,具有相同的RCoA和不同的LCoA。
只有當(dāng)移動(dòng)節(jié)點(diǎn)在不同的MAP域間進(jìn)行切換時(shí),才需要更換RCoA,向MAP、家鄉(xiāng)代理、通信節(jié)點(diǎn)進(jìn)行綁定更新。
應(yīng)用H- MIPv6技術(shù),當(dāng)移動(dòng)節(jié)點(diǎn)進(jìn)行MAP域內(nèi)切換時(shí),網(wǎng)絡(luò)上總開(kāi)銷減少,數(shù)據(jù)傳輸?shù)难舆t和丟包率都有所減小。但由于增加了網(wǎng)絡(luò)邏輯結(jié)構(gòu)的復(fù)雜度,當(dāng)移動(dòng)節(jié)點(diǎn)進(jìn)行MAP域間切換時(shí),總開(kāi)銷、延時(shí)和丟包率反而高于標(biāo)準(zhǔn)MIPv6。在部署了多MAP的H-MIPv6網(wǎng)絡(luò)中,如果MAP點(diǎn)設(shè)計(jì)得不合理,將使MAP成為數(shù)據(jù)傳輸?shù)钠款i。因此,人們又提出了基于自適應(yīng)算法的MAP自動(dòng)選擇機(jī)制。
四、F-H-MIPv6切換技術(shù)
以上兩種技術(shù)各有優(yōu)缺點(diǎn),F(xiàn)-MIPv6比標(biāo)準(zhǔn)MIPv6減少切換的時(shí)間,但注冊(cè)過(guò)程仍產(chǎn)生較多額外開(kāi)銷。H-MIPv6雖然減少了部分切換的開(kāi)銷,但增大了網(wǎng)絡(luò)邏輯結(jié)構(gòu)和路由算法復(fù)雜度,甚至增加了切換時(shí)間。人們將兩者優(yōu)點(diǎn)相結(jié)合,提出了F-H-MIPv6技術(shù),既在結(jié)構(gòu)上分層,又在切換時(shí)采取預(yù)判注冊(cè)及緩存隧道機(jī)制,將F-MIPv6的預(yù)注冊(cè)方法應(yīng)用于H-MIPv6的結(jié)構(gòu)之上。F-H-MIPv6技術(shù)在不同的MAP區(qū)域之間進(jìn)行切換時(shí),與F-MIPv6的區(qū)別是:在建立快速存貯轉(zhuǎn)發(fā)隧道時(shí),是在MAP與新的接入路由器(NAR)之間建立隧道,即原MAP起到PAR的作用。
五、小結(jié)與展望
以MIPv6為基礎(chǔ)的下一代移動(dòng)互聯(lián)網(wǎng)技術(shù),吸取了IPv4移動(dòng)技術(shù)的經(jīng)驗(yàn),通過(guò)改進(jìn)和拓展,滿足大規(guī)模移動(dòng)用戶發(fā)展的需求,解決有關(guān)網(wǎng)絡(luò)和訪問(wèn)技術(shù)的移動(dòng)性問(wèn)題,支持異構(gòu)網(wǎng)絡(luò)環(huán)境下固網(wǎng)和移動(dòng)接入網(wǎng)絡(luò)之間的隨時(shí)切換。
隨著移動(dòng)IP技術(shù)研究的不斷深入,不僅切換過(guò)程中的時(shí)延和丟包率會(huì)趨近于固網(wǎng)水平,切換過(guò)程中信令交互帶來(lái)的的額外負(fù)載開(kāi)銷也將盡量減少,對(duì)移動(dòng)IP的管理水平也將精細(xì)化,為各項(xiàng)移動(dòng)通信業(yè)務(wù)的QOS保障提供更加合理均衡的服務(wù)。