摘要 文章介紹了移動(dòng)IPv4和移動(dòng)IPv6的工作原理,比較了兩者的技術(shù)優(yōu)劣。筆者的結(jié)論是,IPv4已經(jīng)不能滿足日益增長的網(wǎng)絡(luò),而IPv6作為新一代協(xié)議,具備著先天的優(yōu)勢(shì),有替代IPv4的必然性。
為了支持互聯(lián)網(wǎng)上的移動(dòng)設(shè)備,并使其保留不變的永久IP地址,IETF推出了移動(dòng)IP的標(biāo)準(zhǔn),即移動(dòng)IP。移動(dòng)IP是一種在全球互聯(lián)網(wǎng)上提供移動(dòng)功能的方案,具有可擴(kuò)展性、可靠性和安全性的特點(diǎn),并可以使節(jié)點(diǎn)在鏈路切換時(shí)仍可保持正在進(jìn)行的通信。移動(dòng)IP有兩種:一種是基于IPv4的移動(dòng)IPv4,一種是基于IPv6的移動(dòng)IPv6。
1、移動(dòng)IP的工作原理
1.1 移動(dòng)IPv4的工作原理
通過周期性地組播或廣播一個(gè)被稱為代理廣播的消息,家鄉(xiāng)代理(HA)和外地代理(FA)宣告它們與鏈路的連接關(guān)系,移動(dòng)節(jié)點(diǎn)(MN)收到這些代理廣播消息后,檢查其中的內(nèi)容以確定自己是連在家鄉(xiāng)鏈路還是外地鏈路上。當(dāng)它連在家鄉(xiāng)鏈路上時(shí),移動(dòng)節(jié)點(diǎn)就可像固定節(jié)點(diǎn)一樣工作,即它不再利用移動(dòng)IP的其他功能,如果移動(dòng)節(jié)點(diǎn)連接在外地鏈路上,其通信過程則如圖1所示。
圖1 MN在外地鏈路上時(shí)的通信過程
(1)連在外地鏈路上的移動(dòng)節(jié)點(diǎn)需要一個(gè)轉(zhuǎn)交地址。它可以從外地代理廣播的代理廣播消息中找到外地代理轉(zhuǎn)交地址,配置轉(zhuǎn)交地址必須通過一個(gè)配置規(guī)程得到,比如用動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP,Dynamic Host Configuration Protocol)、PPP的IP控制協(xié)議(IPCP,Internet Protocol Control Protocol)或手工配置。
(2)移動(dòng)節(jié)點(diǎn)向家鄉(xiāng)代理注冊(cè)轉(zhuǎn)交地址,可以通過移動(dòng)IP中定義的消息交換來完成。在注冊(cè)過程中,如果鏈路上有一個(gè)外地代理,移動(dòng)節(jié)點(diǎn)就向它請(qǐng)求服務(wù)。為阻止拒絕服務(wù)攻擊,注冊(cè)消息要求進(jìn)行認(rèn)證。
(3)家鄉(xiāng)代理或者是在家鄉(xiāng)鏈路上的其他一些路由器廣播對(duì)移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址的網(wǎng)絡(luò)前綴的可達(dá)性,從而吸引發(fā)往移動(dòng)節(jié)點(diǎn)家鄉(xiāng)地址的數(shù)據(jù)包,家鄉(xiāng)代理截取這個(gè)包(可能用代理ARP),并根據(jù)移動(dòng)節(jié)點(diǎn)注冊(cè)的轉(zhuǎn)交地址,通過隧道將數(shù)據(jù)包傳送給移動(dòng)節(jié)點(diǎn);在轉(zhuǎn)交地址處——可能是外地代理或移動(dòng)節(jié)點(diǎn)的一個(gè)端口,原始數(shù)據(jù)包被從隧道中提取出來送給移動(dòng)節(jié)點(diǎn)。
(4)相反,由移動(dòng)節(jié)點(diǎn)發(fā)出的數(shù)據(jù)包被直接選路到目的節(jié)點(diǎn)上,無需隧道技術(shù)。對(duì)所有來訪的移動(dòng)節(jié)點(diǎn)發(fā)出的包來說,外地代理完成路由器的功能。
1.2 移動(dòng)IPv6的工作原理
移動(dòng)IPv6節(jié)點(diǎn)通過因特網(wǎng)控制信息協(xié)議(ICMP)路由器搜索消息(Router Discovery)來確定自己的位置。IPv6的路由器搜索包括兩條報(bào)文:路由器請(qǐng)求和路由器廣播。路由器廣播由家鄉(xiāng)代理和路由器在他們所連接的鏈路上周期性地進(jìn)行廣播,路由器請(qǐng)求則是由那些沒有足夠耐心等待下一個(gè)送到的路由器廣播報(bào)文的移動(dòng)節(jié)點(diǎn)發(fā)出的。路由器搜索報(bào)文不需要認(rèn)證。
在ICMPv6路由器廣播報(bào)文中,如果路由器的生存時(shí)間域非零,那么發(fā)送這個(gè)廣播的路由器就可被移動(dòng)節(jié)點(diǎn)當(dāng)作缺省路由。移動(dòng)節(jié)點(diǎn)檢查接收到的廣播中的網(wǎng)絡(luò)前綴,如果其中的一個(gè)前綴與移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址相匹配,移動(dòng)節(jié)點(diǎn)就連接到它的家鄉(xiāng)鏈路,此時(shí)移動(dòng)節(jié)點(diǎn)直接向家鄉(xiāng)代理進(jìn)行注冊(cè)。如果沒有與移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址相匹配的前綴,移動(dòng)節(jié)點(diǎn)就連接到一個(gè)外地鏈路,此時(shí)移動(dòng)節(jié)點(diǎn)向該路由器所在鏈路上的一個(gè)服務(wù)器申請(qǐng)一個(gè)地址作為自己的轉(zhuǎn)交地址,再將這個(gè)地址通知自己的家鄉(xiāng)代理并進(jìn)行注冊(cè)。
當(dāng)移動(dòng)節(jié)點(diǎn)采用移動(dòng)IPv6進(jìn)行通信時(shí),如果它連接在家鄉(xiāng)鏈路上,便與固定主機(jī)和路由器一樣工作。如果移動(dòng)節(jié)點(diǎn)連接在外地鏈路上,其通信過程則如圖2所示。
圖2 MN在外地鏈路上時(shí)的通信過程
(1)移動(dòng)節(jié)點(diǎn)采用路由器搜索的方法,通過無狀態(tài)自動(dòng)配置、有狀態(tài)自動(dòng)配置或手工方式得到外地鏈路上的轉(zhuǎn)交地址;
(2)移動(dòng)節(jié)點(diǎn)向家鄉(xiāng)代理發(fā)送綁定更新,家鄉(xiāng)代理向移動(dòng)節(jié)點(diǎn)發(fā)送綁定確認(rèn);
(3)不知道移動(dòng)節(jié)點(diǎn)轉(zhuǎn)交地址的通信伙伴(CN)送出的數(shù)據(jù)包先被路由到移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)鏈路,再從家鄉(xiāng)代理那里將這些數(shù)據(jù)包經(jīng)過隧道送到移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址;
(4)知道移動(dòng)節(jié)點(diǎn)轉(zhuǎn)交地址的通信伙伴送出的數(shù)據(jù)包可以利用IPv6選路報(bào)頭直接送到移動(dòng)節(jié)點(diǎn),選路報(bào)頭將移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址作為一個(gè)中間目的地址;
(5)移動(dòng)節(jié)點(diǎn)送出的數(shù)據(jù)包采用特殊的機(jī)制被直接路由到目的地。
在轉(zhuǎn)交地址和家鄉(xiāng)代理的幫助下,移動(dòng)節(jié)點(diǎn)經(jīng)過以上過程,將數(shù)據(jù)發(fā)送到目的地,從而完成了數(shù)據(jù)發(fā)送的全部過程。
2、移動(dòng)IPv4和移動(dòng)TPv6的異同
移動(dòng)IPv6從移動(dòng)IPv4中借鑒了許多概念和術(shù)語,但兩者還是有差別的,具體比較如表1所示:
表1 移動(dòng)IPv4和移動(dòng)IPv6的比較
[table]
移動(dòng)IPv4概念
等效的移動(dòng)IPv6概念
移動(dòng)節(jié)點(diǎn)、家鄉(xiāng)代理、家鄉(xiāng)鏈路、外地鏈路
相同
移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)地址
全球可路由的家鄉(xiāng)地址和鏈路一局部地址
外地代理、外地轉(zhuǎn)交地址
外地鏈路上的一個(gè)“純”IPv6路由器。不再需要外地代理,只有配置轉(zhuǎn)交地址
配置轉(zhuǎn)交地址,通過代理搜索、DHCP或手工得到轉(zhuǎn)交地址
通過主動(dòng)地址自動(dòng)配置、DHCP或手工得到轉(zhuǎn)交地址
代理搜索
路由器搜索
向家鄉(xiāng)代理的經(jīng)過認(rèn)證的注冊(cè)
向家鄉(xiāng)代理和其他通信節(jié)點(diǎn)的帶認(rèn)證的通知
到移動(dòng)節(jié)點(diǎn)的數(shù)據(jù)傳送采用隧道
到移動(dòng)節(jié)點(diǎn)的數(shù)據(jù)傳送可采用隧道和源路由
由其他協(xié)議完成路由優(yōu)化
集成了路由優(yōu)化
[/table]
它們的區(qū)別如下:
(1)轉(zhuǎn)交地址的確定
移動(dòng)IPv4:采用代理搜索的方式判斷節(jié)點(diǎn)是否連在外地鏈路上,是否切換了鏈路,如果在外地鏈路上則可得到一個(gè)轉(zhuǎn)交地址;
移動(dòng)IPv6:利用ICMPv6路由器搜索確定自己的位置,當(dāng)在外地鏈路上時(shí)得到一個(gè)轉(zhuǎn)交地址。
(2)轉(zhuǎn)交地址的通告
移動(dòng)IPv4:移動(dòng)節(jié)點(diǎn)將它的轉(zhuǎn)交地址通知家鄉(xiāng)代理,進(jìn)行注冊(cè);
移動(dòng)IPv6:移動(dòng)節(jié)點(diǎn)將它的轉(zhuǎn)交地址通知家鄉(xiāng)代理,如果可以保證操作的安全性,移動(dòng)節(jié)點(diǎn)則同時(shí)將它的轉(zhuǎn)交地址布告給幾個(gè)通信伙伴。
(3)數(shù)據(jù)包的選路
◆通信伙伴向移動(dòng)節(jié)點(diǎn)發(fā)送數(shù)據(jù)包
移動(dòng)IPv4:數(shù)據(jù)包被送往移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)鏈路,即移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)代理。家鄉(xiāng)代理截獲這些數(shù)據(jù)包之后,通過隧道向每一個(gè)轉(zhuǎn)交地址發(fā)送一個(gè)數(shù)據(jù)包的拷貝。在每一個(gè)轉(zhuǎn)交地址上,原始數(shù)據(jù)包從隧道中取出拆封后送往移動(dòng)節(jié)點(diǎn)。
移動(dòng)IPv6:如果通信節(jié)點(diǎn)不知道移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址,那么它就像移動(dòng)IPv4那樣,向移動(dòng)節(jié)點(diǎn)發(fā)送數(shù)據(jù)包。知道移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址的通信節(jié)點(diǎn)可以利用IPv6選路報(bào)頭直接將數(shù)據(jù)包發(fā)送給移動(dòng)節(jié)點(diǎn),這些包不需要經(jīng)過移動(dòng)節(jié)點(diǎn)的家鄉(xiāng)代理,它們將經(jīng)過從始發(fā)點(diǎn)到移動(dòng)節(jié)點(diǎn)的一條優(yōu)化路由。
◆移動(dòng)節(jié)點(diǎn)向通信伙伴發(fā)送數(shù)據(jù)包
移動(dòng)IPv4和移動(dòng)IPv6移動(dòng)節(jié)點(diǎn)一樣,采用特殊的機(jī)制將數(shù)據(jù)包送出,并被直接路由到通信伙伴(目的地)。
3、移動(dòng)IPv6的技術(shù)優(yōu)勢(shì)
移動(dòng)IPv6使得IPv6主機(jī)在離開其家鄉(xiāng)鏈路時(shí)仍能保持所有當(dāng)前的連接,并始終能夠連接到互聯(lián)網(wǎng)上,這是由于無論移動(dòng)節(jié)點(diǎn)當(dāng)前在互聯(lián)網(wǎng)上的連接點(diǎn)如何,移動(dòng)IPv6都通過靜態(tài)的家鄉(xiāng)地址來識(shí)別每個(gè)節(jié)點(diǎn)。從以上論述可以看出移動(dòng)IPv6的優(yōu)勢(shì):
(1)地址數(shù)量:移動(dòng)IPv6為每個(gè)移動(dòng)節(jié)點(diǎn)分配了全球唯一的IP地址,無論它們?cè)诤翁庍B接到互聯(lián)網(wǎng)上,為移動(dòng)節(jié)點(diǎn)服務(wù)的外地鏈路都要預(yù)留足夠多的IP地址來給移動(dòng)節(jié)點(diǎn)分配一套(至少一個(gè))轉(zhuǎn)交地址,在IPv4地址短缺的情況下,要預(yù)留足夠多的全球IPv4地址是不太可能的。
(2)代理發(fā)現(xiàn)機(jī)制:IPv6的泛播地址的特點(diǎn)是,以泛播地址為目的地址的數(shù)據(jù)包會(huì)被轉(zhuǎn)發(fā)到根據(jù)路由協(xié)議測(cè)量的距離最近的接口上。移動(dòng)IPv6有效利用這一原理實(shí)現(xiàn)動(dòng)態(tài)家鄉(xiāng)代理發(fā)現(xiàn)機(jī)制,通過發(fā)送綁定更新給家鄉(xiāng)代理的泛播地址,來從幾個(gè)家鄉(xiāng)代理中獲得最合適一個(gè)的響應(yīng),IPv4則無法提供類似的方法。
(3)地址自動(dòng)配置:移動(dòng)IPv6繼承了IPv6的特征。使用無狀態(tài)地址自動(dòng)配置和鄰居發(fā)現(xiàn)機(jī)制之后,移動(dòng)IPv6既不需要DHCP也不需要外地代理來配置移動(dòng)節(jié)點(diǎn)的轉(zhuǎn)交地址。
(4)安全機(jī)制:移動(dòng)IPv6可以為所有安全的要求使用IPSec,如注冊(cè)、授權(quán)、數(shù)據(jù)完整性保護(hù)和重發(fā)保護(hù)。通過IPv6中的IPsec可以對(duì)IP層上(也就是運(yùn)行在IP層上的所有應(yīng)用)的通信提供加密/授權(quán)。通過移動(dòng)IPv6還可以實(shí)現(xiàn)遠(yuǎn)程企業(yè)內(nèi)部網(wǎng)和虛擬專用網(wǎng)絡(luò)的無縫接入,并且可以實(shí)現(xiàn)永遠(yuǎn)連接。
(5)路由優(yōu)化:為了避免移動(dòng)IPv4由于三角路由造成的帶寬的浪費(fèi),移動(dòng)IPv6指定了路由優(yōu)化的機(jī)制,路由優(yōu)化是移動(dòng)IPv4的一個(gè)附加功能,但卻是移動(dòng)IPv6的組成部分之一。
(6)入口過濾Ingress-Filtering:移動(dòng)IPv6能夠與這種入口過濾方式毫無問題地并存,一個(gè)在外區(qū)鏈路上的移動(dòng)節(jié)點(diǎn)使用其轉(zhuǎn)交地址作為數(shù)據(jù)包的源地址,并將其家鄉(xiāng)地址包含在其家鄉(xiāng)地址目標(biāo)選項(xiàng)中,由于在外區(qū)鏈路中的轉(zhuǎn)交地址是一個(gè)有效地址,所以數(shù)據(jù)包將順利通過入口過濾。
(7)服務(wù)質(zhì)量(QoS):服務(wù)質(zhì)量是一個(gè)各種因素的綜合問題,從協(xié)議的角度來看,與IPv4相比,IPv6的新增優(yōu)點(diǎn)是能提供差別服務(wù),這是因?yàn)镮Pv6的頭標(biāo)增加了一個(gè)流標(biāo)記域,共有20位長,這使得網(wǎng)絡(luò)的任何中間點(diǎn)都能夠確定并區(qū)別對(duì)待某個(gè)IP地址的數(shù)據(jù)流。另外,提供永遠(yuǎn)連接、防止服務(wù)中斷以及提高網(wǎng)絡(luò)性能,也提高了網(wǎng)絡(luò)服務(wù)質(zhì)量。
4、小結(jié)
移動(dòng)IP結(jié)合了目前最熱門的兩項(xiàng)技術(shù):因特網(wǎng)和移動(dòng)通訊。本文介紹了移動(dòng)IPv4和移動(dòng)IPv6的技術(shù)。同時(shí),比較了兩者的技術(shù)優(yōu)劣,IPv6作為下一代互聯(lián)網(wǎng)協(xié)議,具備著先天的優(yōu)勢(shì)。移動(dòng)IPv6繼承了移動(dòng)IPv4的許多基本特征,并吸取了IPv6的優(yōu)點(diǎn)。當(dāng)一個(gè)移動(dòng)節(jié)點(diǎn)移動(dòng)到另一個(gè)網(wǎng)絡(luò),移動(dòng)IPv6解決方案可保持該節(jié)點(diǎn)的通訊暢通并且保有原有的IP地址。
移動(dòng)IPv6是一個(gè)龐雜的協(xié)議,包含的內(nèi)容非常多,而且目前還在繼續(xù)發(fā)展。移動(dòng)IPv6又是一個(gè)設(shè)計(jì)精巧的協(xié)議,雖然目前還有一些缺陷,但我們可以看到,移動(dòng)IPv6協(xié)議的前景是非常光明的。在可以預(yù)見的未來,移動(dòng)IPv6和無線技術(shù)(GPRS、3G等)的緊密結(jié)合必然會(huì)給電信業(yè)的發(fā)展帶來明媚的春光,必然會(huì)使IP承載網(wǎng)的內(nèi)容更加豐富,更加方便。
作者:周旭 丁巖軍 來源:中國聯(lián)通網(wǎng)站