孫文勝 王宇飛
(杭州電子科技大學(xué)通信工程學(xué)院 浙江 杭州 310018)
?
一種層次型移動IPv6的MAP選擇機(jī)制的研究
孫文勝 王宇飛
(杭州電子科技大學(xué)通信工程學(xué)院 浙江 杭州 310018)
在MIPv6(Mobile IPv6,移動IPv6)的基礎(chǔ)上,學(xué)者們提出了HMIPv6 (Hierarchical MIPv6,層次移動IPv6)。但是HMIPv6的移動錨點MAP(Mobile Anchor Point)選擇機(jī)制存在MAP負(fù)載過于集中、MAP中路徑過長等問題。在HMIPv6的基礎(chǔ)上,提出一種基于位置區(qū)域的MAP選擇機(jī)制,使MN(Mobile Node)主動選擇最適合自己的MAP。仿真結(jié)果顯示,負(fù)載不再集中在某一MAP上,MN選擇了最適合的MAP,縮短了MAP到MN的路徑。
HMIPv6 MAP 負(fù)載均衡
隨著IPv6的普及和移動互聯(lián)網(wǎng)的迅速發(fā)展,互聯(lián)網(wǎng)工程共建組織IETF(Internet Engineering Task Force)在MIPv4和IPv6[3]的基礎(chǔ)上提出了MIPv6,滿足人們對于移動上網(wǎng)的需求。但是由于MIPv6還是存在著切換時延高、協(xié)議復(fù)雜等缺點,學(xué)者們相繼提出了FMIPv6快速移動IPv6(Fast-handover MIPv6)HMIPv6[10]等。FMIPv6的基本思想是在二層切換時提前配置轉(zhuǎn)交地址,因為提早進(jìn)行檢測因此縮短了重復(fù)地址檢測DAD(Duplicate Address Detection)的時間,達(dá)到了減小切換延時的目的。同時在原先的接入路由器PAR(Previous Access Router)和新的接入路由器NAR(New Access Router)之間建立隧道傳輸切換過程中緩存的數(shù)據(jù)分組,降低了丟包率[5]。HMIPv6的基本思想是引入MAP對MN的移動進(jìn)行管理,對于MN在MAP域內(nèi)的移動能夠減少網(wǎng)絡(luò)中信令的傳輸,達(dá)到減小切換時延的目的?,F(xiàn)在移動IP切換的研究熱點主要集中在DAD檢測時延的縮小[1]和MAP選擇機(jī)制的改進(jìn)[2,7],都是為了達(dá)到MN在切換過程中減少延時和減少丟包率的目的。
在MIPv6的基礎(chǔ)上,HMIPv6引入了MAP進(jìn)行域的管理。
MAP的作用就是幫助MN向HA(Home Agent,歸屬代理)進(jìn)行注冊,并充當(dāng)HA的角色進(jìn)行數(shù)據(jù)的轉(zhuǎn)發(fā),每個域中都有一個MAP或者多個MAP,每個MAP都有自己的管理域范圍。在HMIPv6中每個MN都有兩個轉(zhuǎn)交地址,即區(qū)域轉(zhuǎn)交地址RCoA(Regional Care-of Address,)和鏈路轉(zhuǎn)交地址LCoA(Link Care-of Address)。MN的LCoA是MAP內(nèi)部的轉(zhuǎn)交地址,是MN根據(jù)AR的子網(wǎng)前綴進(jìn)行計算出來的,而RCoA是MN向HA和通信對端CN(Correspondent Node)注冊的地址。LCoA和RCoA的綁定關(guān)系存儲在MN所選擇的MAP的緩存中,MAP根據(jù)綁定關(guān)系轉(zhuǎn)發(fā)數(shù)據(jù)分組到相應(yīng)的MN。
HMIPv6對于MIPv6的改進(jìn)主要體現(xiàn)在減少了綁定更新的報文,縮短了域內(nèi)切換的時間。當(dāng)MN在同一MAP管理域內(nèi)的不同接入路由器AR(Access Router)之間進(jìn)行微移動時,MN只需要重新配置LCoA就可以了。由于MN還在同一個MAP管理域內(nèi),因此MN的RCoA值不變,只需要更新相應(yīng)MAP緩存中的綁定就可以,不需要向HA或者CN進(jìn)行相應(yīng)的綁定更新,減少了網(wǎng)絡(luò)中的信令負(fù)載。特別是當(dāng)MN處于離HA或者CN的位置特別遠(yuǎn)的情況時,能夠極大地縮短切換所需的時間[9]。
當(dāng)MN接入到新的AR時,MN能夠接收到AR發(fā)出的路由通告RA(Router Advertisement)消息。RA消息包含了MAP的分層列表和各層MAP的信息。MN選擇不同的MAP,對于MAP的負(fù)載影響巨大,甚至能夠進(jìn)一步影響到MN的通信延時和丟包率,因此MAP選擇機(jī)制的選擇是一項非常重要的課題。學(xué)者們也對MAP選擇機(jī)制進(jìn)行了研究,現(xiàn)階段的MAP選擇機(jī)制主要有基于距離的MAP選擇機(jī)制、基于速度的MAP選擇機(jī)制和基于拓?fù)涞腗AP選擇機(jī)制。其中HMIPv6草案中規(guī)定的MAP選擇是基于距離的選擇機(jī)制,為了減少M(fèi)AP域間切換的次數(shù),選擇了距離MN最遠(yuǎn)的MAP[6]。但是這樣就導(dǎo)致了最高級MAP的負(fù)載過于集中,同時MN到MAP之間的距離過長,增加了MN的延時。
2.1 改進(jìn)的RA消息
根據(jù)HMIPv6標(biāo)準(zhǔn),當(dāng)MN進(jìn)入AR的范圍內(nèi)時,能夠接收到AR發(fā)送的RA消息[8]。AR的RA消息包含了該AR所屬的MAP分層列表。
由于MAP大多數(shù)是固定的,所以MAP的相關(guān)信息,比如MAP的所在位置、該MAP所管理域的大小基本是固定不變?;谖恢脜^(qū)域的自適應(yīng)選擇算法就是將MAP的這些相關(guān)消息存儲在AR中,利用RA消息發(fā)送到MN。MN可以接收到該AR所屬各層級的MAP的管理區(qū)域大小,應(yīng)用于MAP的初選擇。
但是網(wǎng)絡(luò)的覆蓋有時也會進(jìn)行優(yōu)化,所以MAP的覆蓋區(qū)域可能會變化,這就需要MAP對AR中存儲的管理域范圍進(jìn)行更新。但是這種變化不會是經(jīng)常性的,當(dāng)網(wǎng)絡(luò)的覆蓋變化時,MAP可以根據(jù)最新的覆蓋廣播報文,將AR中的MAP覆蓋區(qū)域進(jìn)行更新,使得MN能夠獲得更準(zhǔn)確的MAP覆蓋區(qū)域的信息。
2.2 基于速度的MAP初選擇
(1) MN當(dāng)前速度、方向的獲取
(2) MN運(yùn)動模式的判斷
當(dāng)下一個時刻來臨的時候,我們可以根據(jù)實測地點和預(yù)測地點之間的距離,判斷MN是否屬于運(yùn)動方向和速度大致不變。如果實測和預(yù)測地點之間距離大于預(yù)測半徑R,則判斷MN的運(yùn)動是隨機(jī)的,否則判斷MN的運(yùn)動方向、速度大致不變。
圖1 MN運(yùn)動模式判斷
(3) MAP的初選擇模式
當(dāng)MN的運(yùn)動模式是隨機(jī)時,由于不能很好地預(yù)測MN下一時刻的移動方向和移動速度,該MN的MAP的選擇根據(jù)HMIPv6規(guī)定的,基于距離最遠(yuǎn)的選擇模式,選擇最高層級的MAP。這意味著MAP的管理域能夠盡可能覆蓋大的范圍,對于隨機(jī)運(yùn)動的MN來說是非常好的選擇,能夠盡可能減少M(fèi)AP管理域間的域間切換,縮短了延時和丟包。
當(dāng)MN的運(yùn)動模式是移動方向和速度大致不變時,根據(jù)GPS測算出的MN的速度和運(yùn)動方向,結(jié)合MN從RA消息中得到各層級MAP管理的域的范圍,能夠算出MN以當(dāng)前速度、當(dāng)前方向在各層級MAP的管理域中停留多少時間。綜合n級MAP停留時間,MN選擇停留時間大于Tthreshold-min的最小的那一級MAP,Tthreshold-min表示停留時間最小閾值,即MN能夠停留MAP的最短時間,停留時間過短會導(dǎo)致第二次MAP域間切換,多次切換會帶來嚴(yán)重的丟包和時延。
2.3 MN停留時間更新
MN能夠接收到AR發(fā)出RA消息,因此能夠通過RA消息知道當(dāng)前各級MAP的具體情況。此時,MN會將各個層級的MAP相關(guān)信息保存下來,記錄的主要是用途是計算MN在該MAP的停留時間。
當(dāng)MN進(jìn)入一個新的AR時,能夠?qū)κ盏降母鲗蛹塎AP的消息和本地保存的上一個AR的各層級MAP消息進(jìn)行對比。MN先保存新收到的MAP信息,將MAP的停留時間清零,然后遍歷上一個停留的AR記錄,如果和當(dāng)前新接入的AR有相同的MAP,就在新的表更新這個MAP的停留時間,繼續(xù)在上一個AR的記錄基礎(chǔ)上統(tǒng)計停留時間。更新完MAP的停留時間,就可以丟棄上一個AR的MAP的相關(guān)消息,此時停留時間更新完成。如圖2所示。
圖2 MAP停留時間更新流程圖
2.4 根據(jù)MN停留時間的MAP再選擇
MN的MAP初選擇只是單純根據(jù)MN當(dāng)時時刻的移動速度和移動方向進(jìn)行判斷,根據(jù)當(dāng)前數(shù)據(jù)估算在MAP內(nèi)的停留時間。特別是當(dāng)MN的移動速度或者方向隨機(jī)的時候,MN的MAP選擇只是單純的選擇最高層級的MAP,因此,MAP的初選擇是比較粗糙的選擇,單純從減少M(fèi)AP域間切換的次數(shù)出發(fā),選擇盡可能層級高的MAP,并沒有很好的從適合該MN或者M(jìn)AP負(fù)載均衡方面進(jìn)行考慮。
當(dāng)MN在MAP域內(nèi)停留一定時間后,MN就需要對MAP進(jìn)行再次的選擇。這主要的根據(jù)是MN在各層級MAP域內(nèi)的停留時間,因為MN內(nèi)部保存著在當(dāng)前MAP域內(nèi)停留的具體時間。
MN根據(jù)RA消息更新當(dāng)前MAP的停留時間,如果存在比當(dāng)前層級MAP低層級的MAP的停留時間大于Tthreshold-max,即表示MN可以切換到更低層級的MAP。Tthreshold-max表示MN在某一層級MAP中停留的最大時間閾值,停留時間大于Tthreshold-max即可認(rèn)為MN比較穩(wěn)定。MN切換到更低層次的MAP的有利于緩解高層級的負(fù)載,同時使MN到MAP的距離變短,使MN選擇更適合自己的MAP。
2.5 MAP再選擇的切換優(yōu)化
MAP的再選擇,由于是在不同的MAP進(jìn)行注冊,屬于MAP域間的宏移動,而HMIPv6對于MAP間的宏移動相對于MIPv6,并沒有改進(jìn)多少,甚至擁有比MIPv6更多的切換時延[4]。HMIPv6的宏移動的切換過程的延時主要在LCoA和RCoA的DAD檢測。要縮短MAP域間切換的延時和丟包,關(guān)鍵是要減少DAD檢測的時間。
雖然MAP再選擇的過程是屬于MAP的域間切換,但是MAP再選擇的切換過程和HMIPv6的切換過程不同。MAP再選擇過程由于不涉及二層切換,只是三層的切換,故可以省略二層切換的過程。本文改進(jìn)的方案就是將DAD檢測提前到切換之前,使DAD檢測不再成為延時的主要原因。
當(dāng)MN經(jīng)過計算在各層MAP的停留時間,發(fā)現(xiàn)底層MAP的停留時間滿足Tthreshold-max的界限時,MN就決定進(jìn)行MAP的再選擇過程。MN根據(jù)RA消息預(yù)先配置自己的LCoA和RCoA,并將結(jié)果發(fā)送給MAP進(jìn)行DAD檢測,并等待返回檢測結(jié)果。如果檢測地址結(jié)果不沖突,即按照HMIPv6進(jìn)行MAP切換,切換到低層級MAP,切換完成。
3.1 MAP選擇方式的分析
基于HMIPv6標(biāo)準(zhǔn)的MAP選擇方式是簡單選擇最高層級的MAP管理域,這帶來的好處是能夠盡可能減少M(fèi)N在MAP管理域內(nèi)的切換次數(shù),但是帶來的不足也是顯而易見的,高層級MAP的負(fù)載會越來越大,最后甚至可能高層級MAP會成為整個網(wǎng)絡(luò)的瓶頸。
基于區(qū)域的MAP初選擇過程中,利用MN自帶的GPS功能,進(jìn)行初步的MAP選擇。當(dāng)MN移動的速度、方向基本保持不變的時候,我們可以根據(jù)MN當(dāng)前的速度、方向進(jìn)行預(yù)測,基于停留時間選擇最適合的MAP;但是還是存在著MN的速度、方向不穩(wěn)定的情況,這時我們還是基于標(biāo)準(zhǔn)HMIPv6,選擇距離最遠(yuǎn)的MAP,達(dá)到減少M(fèi)AP域間切換的目的。
MAP再選擇中,利用MAP的停留時間更新,能夠計算出在各MAP管理域中停留的時間,當(dāng)MN趨于穩(wěn)定后,MN進(jìn)行MAP的再選擇,能夠選擇更低層級的MAP進(jìn)行通信。這樣能夠緩解高層級MAP的負(fù)載,同時又能夠縮短MAP到MN之間的距離。
3.2 MAP切換方式的分析
HMIPv6的切換延時主要由以下幾個方面組成:
Tdelay=TL2+TMD+TDAD+TLBU+TBU
(1)
其中,TL2表示二層切換的時間,TMD表示移動檢測的時間,TDAD表示DAD檢測的時間,TLBU本地綁定更新的時間,TBU是MN向HA或者CN綁定更新的時間。
在MAP再選擇切換的過程中,由于只需要三層切換,二層的連接并沒有斷開,所以二層切換時間和移動檢測時間可以不計算在內(nèi)。因此,可以用以下的公式表示:
Tdelay=TDAD+TLBU+TBU
(2)
其中,DAD檢測所造成的延時最大,能夠達(dá)到1000 ms。因此本文提出了一種提前進(jìn)行DAD檢測的方法,當(dāng)MN檢測到在某個MAP域內(nèi)停留時間大于閾值后,隨即進(jìn)行DAD檢測,如果檢測結(jié)果顯示沒有沖突,然后進(jìn)行MN的三層切換,因此切換時延主要由以下組成:
Tdelay=TLBU+TBU
(3)
因為DAD檢測是造成切換延時的主要原因,在提前檢測完后,切換的時候就不需要再進(jìn)行DAD檢測,達(dá)到減小切換時延的目的。
3.3 仿真結(jié)果
本文使用NS2對提出的方案進(jìn)行仿真,圖3為仿真拓?fù)鋱D。最高層級MAP為MAP0,第二層級MAP為MAP1、MAP3,最低層級MAP為MAP2。相鄰AR之間的距離為80米,AR的覆蓋范圍為45米,無線鏈路的帶寬為2 Mbps。
圖3 仿真拓?fù)鋱D
在MAP選擇機(jī)制仿真中,一共50個MN,在AR覆蓋范圍內(nèi)進(jìn)行隨機(jī)運(yùn)動(即最遠(yuǎn)不超出MAP0的管理域),MN不收發(fā)數(shù)據(jù),只進(jìn)行移動性管理的注冊和更新。圖4和圖5是HMIPv6標(biāo)準(zhǔn)和本文提出的改進(jìn)方案的MAP選擇機(jī)制的比較。仿真結(jié)果顯示,HMIPv6標(biāo)準(zhǔn)的MAP選擇方案缺乏靈活性,高層級的MAP負(fù)載太重,并且不能自動調(diào)整,在經(jīng)過一段時間后MN還是集中在最高層級的MAP上,缺乏靈活性。本文提出的方案在MN剛接入MAP域的時候雖然大部分選擇了高層級的MAP,但是在MN逐漸穩(wěn)定下來以后,MN能夠選擇適合自己的較低層級的MAP,分擔(dān)了高層級MAP的負(fù)載,使得網(wǎng)絡(luò)更加健地運(yùn)行。
圖4 HMIPv6的MAP選擇機(jī)制的MAP負(fù)載情況
圖5 改進(jìn)的MAP選擇機(jī)制的MAP負(fù)載隨時間變化
在MAP再選擇的切換優(yōu)化的仿真中,CN以不同的速率持續(xù)發(fā)送大小為512字節(jié)的UDP包到MN。為了創(chuàng)造MAP再選擇的條件,使MN移動速度突然降至0,觀察MN再選擇過程中收包的時延情況。圖6是MAP再選擇的時候MAP切換機(jī)制的對比,可以看出本文提出的提前進(jìn)行DAD檢測能夠有效減少切換過程中的時延。
圖6 MAP再選擇切換優(yōu)化
本文提出了一種新的MAP選擇機(jī)制,通過MN的運(yùn)動速度、方向進(jìn)行MAP的初步選擇,通過MN記錄的MAP停留時間,判斷MN是否處于穩(wěn)定階段,然后進(jìn)行MAP的再選擇。達(dá)到均衡MAP負(fù)載的目的。在MAP的再選擇中,提出了一種新的切換方案,將MN的DAD檢測時延提前,達(dá)到減小切換延時的目的。
[1] Manoj K R,Swarup M,Bhaskar S.Applications and Innovations in Mobile Computing:AIMoC 2015:Optimized HMIPv6 (O-HMIPv6):Reducing Handoff Latency in HMIPv6 Networks,Kolkata,Feb 12-14,2015[C].India:Kolkata,2015.
[2] 范祚至,張曦煌.基于動態(tài)負(fù)載均衡的層次性移動IPv6路由優(yōu)化方案[J].計算機(jī)軟件與應(yīng)用,2014:31(4):128-132.
[3] Joseph Davies.深入解析IPv6[M].汪海霖,譯.北京:人民郵電出版社,2014.
[4] 孫文勝,黃吉.基于一種新的移動錨點選擇算法的分層移動IPv6策略[J].計算機(jī)應(yīng)用,2013,33(1):112-114,119.
[5] 李淵.基于Ad Hoc網(wǎng)絡(luò)的跨層移動IPv6切換技術(shù)的研究[D].杭州:杭州電子科技大學(xué),2013.
[6] 白鑫茹.一種分級移動IPv6的MAP選擇機(jī)制[D].廣州:華南理工大學(xué),2013.
[7] 陶銘.移動IPv6網(wǎng)絡(luò)智能切換管理技術(shù)研究[D].廣州:華南理工大學(xué),2012.
[8] 黃吉.移動IPv6快速切換策略的研究[D].杭州:杭州電子科技大學(xué),2012.
[9] 肖長水,姒茂新,沈萍萍,移動IPv6切換技術(shù)綜述[J].計算機(jī)軟件與應(yīng)用,2010:27(4):158-161.
[10] Soliman H,Castelluccia C,El Malki K,et al. RFC4140 Hierarchical Mobile IPv6 Mobility Management (HMIPv6)[S],2005.
RESEARCH ON AN MAP SELECTION MECHANISM IN HIERARCHICAL MOBILE IPv6
Sun Wensheng Wang Yufei
(SchoolofCommunicationEngineering,HangzhouDianziUniversity,Hangzhou310018,Zhejiang,China)
On the basis of MIPv6 (Mobile IPv6) the scholars proposed HMIPv6 (Hierarchical MIPv6).But the selection mechanism of MAP (mobile anchor point) in HMIPv6 has some weakness,such as the load of MAP is too concentrated,and the path of MAP is too long,etc.Based on HMIPv6 we propose a location region-based MAP selection mechanism,it makes the MN (mobile node) actively select the MAP suitable for itself the most.Simulation result shows that the loads are no longer to concentrate on a certain MAP,the MN selects the most suitable MAP and shortens the path between the MAP and MN.
HMIPv6 MAP Load-balancing
2015-09-20。孫文勝,副教授,主研領(lǐng)域:網(wǎng)絡(luò)通信。王宇飛,碩士生。
TP393
A
10.3969/j.issn.1000-386x.2016.11.024