摘要:針對多接口移動節(jié)點在無線異構(gòu)網(wǎng)絡(luò)環(huán)境下的切換問題,將移動IPv6水平切換與垂直切換相結(jié)合,提出了一個無線異構(gòu)網(wǎng)絡(luò)環(huán)境下的移動IPv6集成切換框架,使移動節(jié)點在網(wǎng)絡(luò)側(cè)實體的支持下能夠自主選擇切換目標(biāo)網(wǎng)絡(luò)并進(jìn)行水平或垂直切換。為改進(jìn)移動IPv6的切換性能,為該框架設(shè)計了水平及垂直切換協(xié)議,并進(jìn)行了實驗驗證。
關(guān)鍵詞:移動IPv6; 水平切換; 垂直切換; 異構(gòu)網(wǎng)絡(luò)
中圖分類號:TN915.04文獻(xiàn)標(biāo)志碼:A
文章編號:1001-3695(2008)04-1233-04
0引言
當(dāng)裝備有多種網(wǎng)絡(luò)接入設(shè)備的移動節(jié)點在無線異構(gòu)網(wǎng)絡(luò)中漫游時,根據(jù)切換的網(wǎng)絡(luò)類型進(jìn)行劃分,可將移動節(jié)點的網(wǎng)絡(luò)切換分為水平切換和垂直切換兩種。水平切換是指移動節(jié)點在采用同一技術(shù)的網(wǎng)絡(luò)內(nèi)部不同子網(wǎng)之間進(jìn)行的切換;垂直切換是指移動節(jié)點在采用不同技術(shù)的網(wǎng)絡(luò)之間所進(jìn)行的切換[1]。
對于具有多種網(wǎng)絡(luò)接口的移動節(jié)點,同構(gòu)子網(wǎng)和異構(gòu)子網(wǎng)是具有相同地位的備選網(wǎng)絡(luò)。如圖1所示,移動節(jié)點在漫游過程中可以選擇進(jìn)入802.11g網(wǎng)絡(luò),也可以選擇進(jìn)入GPRS網(wǎng)絡(luò)。前者發(fā)生的是水平切換,而后者則發(fā)生垂直切換。可見,異構(gòu)網(wǎng)絡(luò)環(huán)境下的移動IPv6(MIPv6)切換研究應(yīng)將水平切換與垂直切換結(jié)合起來,為移動節(jié)點提供一個集成的切換解決方案。針對這一問題,本文提出了無線異構(gòu)網(wǎng)絡(luò)環(huán)境下的MIPv6集成切換框架,使移動節(jié)點在網(wǎng)絡(luò)側(cè)實體的支持下,當(dāng)切換事件觸發(fā)時能夠根據(jù)相關(guān)網(wǎng)絡(luò)信息自主選擇切換目
標(biāo)網(wǎng)絡(luò),并無縫地進(jìn)行水平及垂直切換,為移動節(jié)點上層應(yīng)用提供優(yōu)化的MIPv6移動性支持。
1介質(zhì)獨立的切換服務(wù)
異構(gòu)網(wǎng)絡(luò)環(huán)境下MIPv6切換技術(shù)研究所面臨的一個主要障礙在于不同低層網(wǎng)絡(luò)介質(zhì)間的差異。為解決這一問題,IEEE于2004年成立了802.21 工作小組來研究介質(zhì)獨立的切換服務(wù)(MIH),其工作內(nèi)容是開發(fā)制定出能夠向高層(鏈路層以上)提供鏈路層(包括IEEE 802、3GPP、3GPP2等系列)智能和其他相關(guān)網(wǎng)絡(luò)信息的標(biāo)準(zhǔn)規(guī)范,從而輔助優(yōu)化在異構(gòu)網(wǎng)絡(luò)之間進(jìn)行的切換。
MIH 將整個系統(tǒng)從功能的角度分為網(wǎng)絡(luò)側(cè)和終端側(cè),其思想是引入一個新的協(xié)議層——MIH layer。它介于網(wǎng)絡(luò)層與數(shù)據(jù)鏈路層之間,通過與不同低層介質(zhì)間的相互作用以及與對等MIH 層的通信來屏蔽介質(zhì)異構(gòu)性,使高層無須了解低層網(wǎng)絡(luò)的差異,簡化了網(wǎng)絡(luò)的操作和管理。對于高層而言,MIH 只需定義統(tǒng)一的服務(wù)訪問點(MIH_SAP)以獲得對MIH 功能實體各種服務(wù)的訪問。本文采用MIH提供的鏈路層事件服務(wù)作為系統(tǒng)的低層網(wǎng)絡(luò)觸發(fā)事件,從而屏蔽不同低層網(wǎng)絡(luò)介質(zhì)間的差異。
2系統(tǒng)架構(gòu)
本框架內(nèi)包括移動節(jié)點(MN)、服務(wù)訪問點(POS)和信息服務(wù)器(IS)三種實體。其中:POS和IS是位于網(wǎng)絡(luò)側(cè)的切換支持實體。每個無線子網(wǎng)中部署一個POS,它既可以部署在接入路由器上,也可為減輕接入路由器的負(fù)擔(dān)而部署在獨立設(shè)備上,負(fù)責(zé)為MN的切換決策提供被請求子網(wǎng)的相關(guān)網(wǎng)絡(luò)信息,以及為MN的切換執(zhí)行提供網(wǎng)絡(luò)側(cè)支持。物理位置上彼此鄰近的多個無線子網(wǎng)劃分為一個域,域的范圍可以參照自治系統(tǒng)(autonomous system,AS)的組織[2]進(jìn)行劃分。每個域內(nèi)部署一個IS,負(fù)責(zé)為發(fā)出詢問的POS提供其他子網(wǎng)POS的地址信息,以完成不同子網(wǎng)POS間的鄰居發(fā)現(xiàn)。
2.1MN體系結(jié)構(gòu)設(shè)計
MN體系結(jié)構(gòu)設(shè)計如圖2所示。其中:事件檢測模塊負(fù)責(zé)獲取由MIH鏈路層事件服務(wù)提供的網(wǎng)絡(luò)事件,包括Link_Detected(新鏈路發(fā)現(xiàn))、Link_Going_Down(鏈路將斷)、Link_Parameter_Change(鏈路參數(shù)改變)、Signal_Detected(新信號發(fā)現(xiàn))、Link_Down(鏈路已斷)、Link_Up(鏈路已連接)等。切換控制模塊負(fù)責(zé)對事件檢測模塊獲取的網(wǎng)絡(luò)事件進(jìn)行處理;如需要,切換控制模塊根據(jù)從POS處獲取的相關(guān)網(wǎng)絡(luò)信息進(jìn)行切換決策,并依據(jù)決策的結(jié)果發(fā)送水平切換或垂直切換命令給切換執(zhí)行模塊。切換執(zhí)行模塊遵循本文設(shè)計的水平及垂直切換協(xié)議完成MN在不同子網(wǎng)間的切換。遠(yuǎn)程消息管理模塊負(fù)責(zé)MN與POS間交互消息的接收、發(fā)送和管理。圖2中MN僅配備了兩個異構(gòu)網(wǎng)絡(luò)接口,實際環(huán)境下允許MN有多個接口。
2.2POS體系結(jié)構(gòu)設(shè)計
POS的體系結(jié)構(gòu)設(shè)計如圖3所示。其中:網(wǎng)絡(luò)信息管理模塊負(fù)責(zé)本子網(wǎng)和相鄰子網(wǎng)網(wǎng)絡(luò)信息的獲取、維護(hù)以及對發(fā)自本子網(wǎng)MN或相鄰子網(wǎng)POS的網(wǎng)絡(luò)信息請求進(jìn)行回應(yīng)。切換支持模塊負(fù)責(zé)對MN的水平及垂直切換行為提供支持,包括為MN提供切換關(guān)聯(lián)信息,在MN切換過程中為MN緩存轉(zhuǎn)發(fā)數(shù)據(jù)包等。遠(yuǎn)程消息管理模塊負(fù)責(zé)POS與MN間以及相鄰子網(wǎng)POS間交互消息的接收、發(fā)送和管理。
3網(wǎng)絡(luò)事件處理
如前所述,MN切換控制模塊需要處理來自MIH鏈路層事件服務(wù)的網(wǎng)絡(luò)事件包括新鏈路發(fā)現(xiàn)、鏈路將斷、鏈路參數(shù)改變、新信號發(fā)現(xiàn)、鏈路已斷和鏈路已連接六種。針對每一種網(wǎng)絡(luò)事件,本文設(shè)計了一套相應(yīng)的事件處理流程。以處理流程相對簡單的Signal_Detected(新信號發(fā)現(xiàn))事件為例,說明MN的切換控制模塊如何對網(wǎng)絡(luò)事件進(jìn)行處理。
a)MN的事件檢測模塊檢測到Signal_Detected事件,說明在某網(wǎng)絡(luò)接口上檢測到了新的網(wǎng)絡(luò)信號,事件檢測模塊將其發(fā)往切換控制模塊。
b)切換控制模塊首先判斷發(fā)現(xiàn)新信號的是否是當(dāng)前使用接口。若是,轉(zhuǎn)至流程c);若不是,轉(zhuǎn)至流程e)。
c)切換控制模塊比較新發(fā)現(xiàn)信號與當(dāng)前所用網(wǎng)絡(luò)信號。若新發(fā)現(xiàn)信號差于當(dāng)前所用網(wǎng)絡(luò)信號,處理流程結(jié)束;若新發(fā)現(xiàn)信號優(yōu)于當(dāng)前所用網(wǎng)絡(luò)信號,切換控制模塊從當(dāng)前子網(wǎng)POS處獲取新發(fā)現(xiàn)信號對應(yīng)網(wǎng)絡(luò)的相關(guān)網(wǎng)絡(luò)信息,包括網(wǎng)絡(luò)協(xié)議類型、位錯誤率、包丟失率、網(wǎng)絡(luò)帶寬、信號強度等。
d)切換控制模塊向切換執(zhí)行模塊發(fā)送水平切換命令,指示后者執(zhí)行自MN當(dāng)前使用網(wǎng)絡(luò)至新發(fā)現(xiàn)網(wǎng)絡(luò)的水平切換。切換完成后,切換控制模塊更新網(wǎng)絡(luò)信息表中當(dāng)前使用接口項為切換目標(biāo)網(wǎng)絡(luò),處理流程結(jié)束。
e)切換控制模塊比較新發(fā)現(xiàn)信號與該接口當(dāng)前連接網(wǎng)絡(luò)信號。若新發(fā)現(xiàn)信號差于當(dāng)前連接網(wǎng)絡(luò)信號,處理流程結(jié)束;若新發(fā)現(xiàn)信號優(yōu)于該接口當(dāng)前連接網(wǎng)絡(luò)信號,切換控制模塊從當(dāng)前子網(wǎng)POS處獲取新發(fā)現(xiàn)信號對應(yīng)網(wǎng)絡(luò)的相關(guān)網(wǎng)絡(luò)信息。
f)切換控制模塊依據(jù)相關(guān)網(wǎng)絡(luò)信息對新發(fā)現(xiàn)網(wǎng)絡(luò)和MN當(dāng)前使用網(wǎng)絡(luò)(其相關(guān)網(wǎng)絡(luò)信息記錄在網(wǎng)絡(luò)信息表中)進(jìn)行切換決策。
g)若決策選出的最優(yōu)網(wǎng)絡(luò)是MN當(dāng)前使用網(wǎng)絡(luò),切換控制模塊使用新發(fā)現(xiàn)網(wǎng)絡(luò)的相關(guān)網(wǎng)絡(luò)信息更新網(wǎng)絡(luò)信息表中對應(yīng)的接口項,并將該備用接口連接至新發(fā)現(xiàn)網(wǎng)絡(luò);如決策選出的最優(yōu)網(wǎng)絡(luò)是新發(fā)現(xiàn)網(wǎng)絡(luò),切換控制模塊向切換執(zhí)行模塊發(fā)送垂直切換命令,指示后者執(zhí)行自MN當(dāng)前使用網(wǎng)絡(luò)至新發(fā)現(xiàn)網(wǎng)絡(luò)的垂直切換。切換完成后,切換控制模塊更新網(wǎng)絡(luò)信息表中當(dāng)前使用接口項為切換目標(biāo)網(wǎng)絡(luò),處理流程結(jié)束。
與新信號發(fā)現(xiàn)事件處理流程相似,在處理新鏈路發(fā)現(xiàn)、鏈路將斷和鏈路參數(shù)改變事件時,根據(jù)切換決策的結(jié)果,MN切換控制模塊可能會向切換執(zhí)行模塊發(fā)送水平或垂直切換命令,指示后者執(zhí)行水平或垂直切換。
4切換協(xié)議設(shè)計
本文針對標(biāo)準(zhǔn)MIPv6協(xié)議在切換中存在的丟包、延時等問題[3],在芬蘭赫爾辛基大學(xué)實現(xiàn)的MIPv6協(xié)議棧基礎(chǔ)上設(shè)計了優(yōu)化水平及垂直切換協(xié)議,以保證切換平滑快速進(jìn)行。
4.1水平切換協(xié)議
水平切換協(xié)議工作流程如圖4所示。子網(wǎng)1和子網(wǎng)2是兩個相鄰的同構(gòu)無線子網(wǎng),POS-01和POS-02分別部署在子網(wǎng)1和子網(wǎng)2中。MN初始時位于子網(wǎng)1,通過該流程,MN完成自子網(wǎng)1至子網(wǎng)2的水平切換。其主要步驟如下:
a)MN的切換執(zhí)行模塊接收到切換控制模塊發(fā)送的自子網(wǎng)1至子網(wǎng)2的水平切換命令后,通過與POS-01進(jìn)行水平切換初始化消息交互,獲取子網(wǎng)2的關(guān)聯(lián)信息,包括POS-02的地址和子網(wǎng)2的IPv6地址前綴。
b)MN根據(jù)子網(wǎng)2的地址前綴,采用IPv6無狀態(tài)地址配置[4]主動生成在子網(wǎng)2的轉(zhuǎn)交地址,并將其附在水平切換執(zhí)行請求消息中發(fā)送給POS-01,通知POS-01開始進(jìn)行切換準(zhǔn)備工作。
c)POS-01收到水平切換執(zhí)行請求消息后,通過與POS-02進(jìn)行水平切換預(yù)備消息交互,由后者代理完成MN轉(zhuǎn)交地址在子網(wǎng)2的地址沖突檢測。如地址沖突檢測成功,POS-02為MN開辟緩存并建立隧道,準(zhǔn)備接收POS-01為MN轉(zhuǎn)發(fā)的數(shù)據(jù)包。
d)POS-01通過水平切換執(zhí)行應(yīng)答消息將地址沖突檢測的結(jié)果發(fā)送給MN,如地址沖突檢測成功,POS-01開始截獲發(fā)往MN的數(shù)據(jù)包,并通過隧道轉(zhuǎn)發(fā)至POS-02。
e)MN收到地址沖突檢測結(jié)果后,如沖突檢測失敗,MN重新生成在子網(wǎng)2的轉(zhuǎn)交地址并再次發(fā)起地址沖突檢測;如沖突檢測成功,MN將當(dāng)前接口連接切換至子網(wǎng)2,并通過與家鄉(xiāng)代理(HA)和支持路由優(yōu)化[3]的通信對端(CN)進(jìn)行綁定更新(BU)/綁定應(yīng)答(BA)消息交互完成新子網(wǎng)轉(zhuǎn)交地址與MN家鄉(xiāng)地址的綁定。此后,MN請求POS-02轉(zhuǎn)發(fā)為其緩存的數(shù)據(jù)。
f)POS-02收到緩存轉(zhuǎn)發(fā)請求后,通過切換完成通告消息告知POS-01停止為MN截獲轉(zhuǎn)發(fā)數(shù)據(jù)包,并將其緩存的數(shù)據(jù)包全部轉(zhuǎn)發(fā)給MN。
g)完成數(shù)據(jù)包轉(zhuǎn)發(fā)后,POS-02向MN發(fā)送緩存轉(zhuǎn)發(fā)應(yīng)答消息。至此,水平切換流程結(jié)束。
相比標(biāo)準(zhǔn)MIPv6切換流程,本協(xié)議通過MN在切換前預(yù)先生成轉(zhuǎn)交地址并由POS代理完成地址沖突檢測,減少了切換的時延;通過MN在切換過程中由POS為其緩存數(shù)據(jù)包,解決了切換過程中的數(shù)據(jù)包丟失問題,從而保證了切換平滑快速地進(jìn)行。
4.2垂直切換協(xié)議
垂直切換協(xié)議工作流程如圖5所示。子網(wǎng)1和子網(wǎng)2是兩個重疊的異構(gòu)無線子網(wǎng),POS-01和POS-02分別部署在子網(wǎng)1和子網(wǎng)2中。MN的接口1連接至子網(wǎng)1,接口2連接至子網(wǎng)2,初始時MN通過接口1進(jìn)行通信。通過該流程,MN完成自子網(wǎng)1至子網(wǎng)2的垂直切換。與水平切換相比,垂直切換流程主要有以下幾點不同:
a)MN無須由POS-02代理進(jìn)行地址沖突檢測,而是在收到切換初始化應(yīng)答消息后,直接通過接口2利用無狀態(tài)地址配置主動生成在子網(wǎng)2的轉(zhuǎn)交地址并完成地址沖突檢測,進(jìn)一步縮短了切換的時延。
b)MN收到切換執(zhí)行應(yīng)答消息后,直接通過接口2與家鄉(xiāng)代理和支持路由優(yōu)化的通信對端進(jìn)行BU/BA消息交互,完成接口2轉(zhuǎn)交地址與MN家鄉(xiāng)地址的綁定,接口1的轉(zhuǎn)交地址隨即失效,從而使MN的當(dāng)前通信接口由接口1切換至接口2。
5實驗結(jié)果及分析
實驗通過本系統(tǒng)與芬蘭赫爾辛基大學(xué)實現(xiàn)的MIPv6協(xié)議棧(MIPL)在切換時延和切換丟包兩方面進(jìn)行對比分析,闡釋本系統(tǒng)對MIPv6切換性能的改進(jìn)。鑒于當(dāng)前操作系統(tǒng)還未提供對IEEE 802.21標(biāo)準(zhǔn)的支持,實驗時采取了直接獲取鏈路層網(wǎng)絡(luò)事件的方式;同時考慮到當(dāng)前版本MIPL沒有完整實現(xiàn)MIPv6垂直切換,因此切換性能比較主要圍繞MIPv6水平切換展開。測試環(huán)境的網(wǎng)絡(luò)拓?fù)淙鐖D6所示。測試環(huán)境包括兩個無線子網(wǎng)(子網(wǎng)1和2),每個子網(wǎng)由一個接入路由器(AR-01和AR-02)、一個服務(wù)訪問點(POS-01和POS-02)和一個支持802.11g 的無線訪問點(AP-01和AP-02)組成。子網(wǎng)1是MN的家鄉(xiāng)子網(wǎng)。AR-01和AR-02通過上一級路由器(R-00)與三層交換機(jī)(Nortel-470)相連。其中AR-01配備了HA功能。
5.1時延特性
實驗場景如下:
場景1在MN自子網(wǎng)1向子網(wǎng)2切換的過程中,CN持續(xù)以512 kbps的速率向MN發(fā)送UDP數(shù)據(jù)包,針對本系統(tǒng)和MIPL,實驗分別被重復(fù)20次。
場景2在MN自子網(wǎng)1向子網(wǎng)2切換的過程中,CN持續(xù)以2Mbps的速率向MN發(fā)送UDP數(shù)據(jù)包,針對本系統(tǒng)和MIPL,實驗分別被重復(fù)20次。
圖7和8顯示了兩種場景下本系統(tǒng)與MIPL切換時延的對比。
標(biāo)準(zhǔn)MIPv6協(xié)議的切換時延由三部分組成:MN在斷開舊鏈路后的移動檢測時間T1,找到新鏈路信號后的轉(zhuǎn)交地址配置以及重復(fù)地址檢測時間T2和利用新轉(zhuǎn)交地址向HA/CN發(fā)送綁定更新消息恢復(fù)通信時間T3。 因此總體切換時延T可表示為T = T1 +T2 +T3。
在MIPv6中,T1主要是由路由廣播(RA)消息的廣播間隔時間決定的,通常為30~70ms[5];T2主要是由地址沖突檢測時間構(gòu)成,其統(tǒng)計平均值為1 500ms[6];T3則是從MN發(fā)出BU消息到第一個數(shù)據(jù)包到來所經(jīng)歷的時間。
本文提出的水平切換協(xié)議在MN斷開與舊鏈路連接之前完成移動檢測和轉(zhuǎn)交地址生成,節(jié)省了T1+T2的時間。實驗結(jié)果表明,本系統(tǒng)的切換時延明顯低于MIPL。
5.2丟包特性
前述場景下本系統(tǒng)和MIPL進(jìn)行水平切換時的包丟失率如表1所示。
表1包丟失率對比
發(fā)送速率本系統(tǒng)MIPL
512 kbps0.07%23.1%
2Mbps0.09%37.5%
為確保切換過程中的零丟包率,本系統(tǒng)由POS在MN切換過程中為其緩存數(shù)據(jù)包。實驗數(shù)據(jù)表明,本系統(tǒng)已大幅降低了包丟失率,然而在切換過程中仍存在少量分組丟失,分析認(rèn)為這主要是由無線鏈路的信號噪聲引
起的。
6結(jié)束語
本文針對無線異構(gòu)網(wǎng)絡(luò)環(huán)境下的移動節(jié)點切換問題,提出了綜合MIPv6水平切換與垂直切換的集成切換框架。該框架利用網(wǎng)絡(luò)側(cè)實體POS和IS輔助MN在無線子網(wǎng)之間進(jìn)行切換。針對每一種低層網(wǎng)絡(luò)事件,該框架遵循一套獨立的事件處理流程進(jìn)行處理。為解決標(biāo)準(zhǔn)MIPv6切換過程中存在的問題,本文設(shè)計了優(yōu)化的MIPv6水平及垂直切換協(xié)議。實驗表明,該協(xié)議顯著減少了切換過程中的延時及丟包,改善了移動節(jié)點的切換性能。
參考文獻(xiàn):
[1]STEMM M, KATZ R H. Vertical handoffs in wireless overlay networks[J]. Mobile Networks and Applications, 1998, 3(4):335-350.
[2]REKHTER Y, CHINOY B. Injecting inter-autonomous system routes into intra-autonomous system routing: a performance analysis[J]. ACM SIGCOMM Computer Communication Review, 1992, 22(1):7-27.
[3]JOHNSON D, PERKINS C, ARKKO J. RFC3775. Mobility support in IPv6[S]. 2004.
[4]THOMSON S, NARTEN T. RFC2462. IPv6 Stateless AddressAutoconfiguration[S].1998.
[5]SHIM E, WEI Hung-yu,CHANG Yu-sun. Low latency handoff for wireless IP QoS with neighborcasting[C]//Proc of ICC 2002. New York:IEEE, 2002: 3245-3249.
[6]CHIRANJEEv K, NEERAJ T, RAJEEV T. Performance of mobile IP with new route optimisation technique[C]//Proc of ICPWC 2005. New Delhi:IEEE, 2005: 522-526.
“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文”