李燕麗,王曉喃
(1.蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215006;2.常熟理工學(xué)院 計(jì)算機(jī)科學(xué)與工程學(xué)院,江蘇 常熟 215500)
隨著交通運(yùn)輸系統(tǒng)的快速發(fā)展和IPv6網(wǎng)絡(luò)的不斷普及與完善,車載網(wǎng)與IPv6網(wǎng)絡(luò)之間實(shí)現(xiàn)全I(xiàn)P通信成為發(fā)展趨勢(shì)[1]。全I(xiàn)P車載網(wǎng)能實(shí)時(shí)監(jiān)控車輛,并通過(guò)事故預(yù)警、合理路線選擇等手段有效降低道路交通事故數(shù)量及提高駕駛效率。為實(shí)現(xiàn)全I(xiàn)P車載網(wǎng)的應(yīng)用,需要為車輛提供互聯(lián)網(wǎng)服務(wù)。地址配置是互聯(lián)網(wǎng)服務(wù)的重要組成部分,而車輛節(jié)點(diǎn)速度通常會(huì)影響地址配置,因此,減少地址配置延遲和地址配置代價(jià)是車輛獲得高質(zhì)量互聯(lián)網(wǎng)服務(wù)的關(guān)鍵[2-3]。
在基于簇的地址配置方案[4]中,簇成員在簇內(nèi)執(zhí)行重復(fù)地址檢測(cè)(Duplicate Address Detection,DAD),并同時(shí)實(shí)現(xiàn)不同簇的地址配置。在基于位置的地址配置方案[5]中,車輛節(jié)點(diǎn)通過(guò)全球定位系統(tǒng)獲得用于構(gòu)造地址的位置信息,并采用分布式DAD服務(wù)器執(zhí)行DAD以確保地址的全球唯一性。但是,移動(dòng)車輛節(jié)點(diǎn)很難為DAD服務(wù)器工作,而且為每個(gè)車輛節(jié)點(diǎn)配備全球定位系統(tǒng)成本較高。
在基于代理的地址配置方案[6]中,采用隨機(jī)編碼(ID)和時(shí)間戳來(lái)標(biāo)識(shí)新節(jié)點(diǎn)。如果ID和時(shí)間戳相同的2個(gè)節(jié)點(diǎn)從代理節(jié)點(diǎn)請(qǐng)求地址,則代理節(jié)點(diǎn)無(wú)法區(qū)分這2個(gè)節(jié)點(diǎn),并無(wú)法正確執(zhí)行地址配置。地址配置方案通常采用鄰居請(qǐng)求和鄰居應(yīng)答進(jìn)行新節(jié)點(diǎn)和代理節(jié)點(diǎn)之間的通信,使用消息傳遞實(shí)現(xiàn)代理節(jié)點(diǎn)和網(wǎng)關(guān)節(jié)點(diǎn)之間的通信。由于代理節(jié)點(diǎn)必須存儲(chǔ)這2種通信消息之間的映射,因此地址配置性能降低。在動(dòng)態(tài)地址配置協(xié)議[7]中,IP地址結(jié)構(gòu)由網(wǎng)絡(luò)ID、節(jié)點(diǎn)ID和端口號(hào)組成。網(wǎng)絡(luò)組織采用樹(shù)結(jié)構(gòu)形式,其中,中間節(jié)點(diǎn)有2個(gè)地址,葉節(jié)點(diǎn)有1個(gè)地址。新節(jié)點(diǎn)通過(guò)加入樹(shù)結(jié)構(gòu)獲取IP地址,且在沒(méi)有DAD情況下地址具有唯一性。基于樹(shù)的動(dòng)態(tài)地址自動(dòng)配置協(xié)議[8]定義了3種節(jié)點(diǎn):作為中繼的普通節(jié)點(diǎn),負(fù)責(zé)地址配置的領(lǐng)導(dǎo)節(jié)點(diǎn)和存儲(chǔ)全部領(lǐng)導(dǎo)節(jié)點(diǎn)信息的根節(jié)點(diǎn)。根節(jié)點(diǎn)負(fù)責(zé)地址回收和網(wǎng)絡(luò)合并,如果根節(jié)點(diǎn)出現(xiàn)故障或被移出網(wǎng)絡(luò),則網(wǎng)絡(luò)無(wú)法正常工作。
在有狀態(tài)分層的地址配置方案[9]中,采用分層尋址可減少地址配置期間的延遲。部分有狀態(tài)地址配置算法在不需要泛洪和全局狀態(tài)感知的情況下進(jìn)行地址分配,使用節(jié)點(diǎn)分層配置地址將網(wǎng)絡(luò)圖構(gòu)建為生成樹(shù)。基于IPv6的車載網(wǎng)跨層移動(dòng)性切換方案[10]提出車載網(wǎng)層次體系結(jié)構(gòu),該結(jié)構(gòu)由路域、路段和簇3個(gè)層次組成。在該體系結(jié)構(gòu)中,車輛節(jié)點(diǎn)選擇最近的接入節(jié)點(diǎn)進(jìn)行通信以減少通信延遲和地址配置代價(jià)。
文獻(xiàn)[11]針對(duì)基于IPv6的城市車載網(wǎng)地址配置方案提出車域內(nèi)和車域間地址配置算法。在車域內(nèi)地址配置算法中,車輛通過(guò)最近接入節(jié)點(diǎn)實(shí)現(xiàn)與IPv6網(wǎng)絡(luò)通信。在車域間地址配置算法中,車輛可以從接入節(jié)點(diǎn)接收從新舊轉(zhuǎn)交地址發(fā)送的數(shù)據(jù)。在IPv6車載網(wǎng)中,車輛節(jié)點(diǎn)只有在獲得唯一的IPv6地址后才能與IPv6網(wǎng)絡(luò)節(jié)點(diǎn)通信,因此,IPv6地址配置成為IPv6車載網(wǎng)需要解決的關(guān)鍵問(wèn)題[12]。由于車載網(wǎng)是一種特殊的移動(dòng)自組網(wǎng),因此IPv6地址配置協(xié)議[13-15]和現(xiàn)有的移動(dòng)自組網(wǎng)IP地址配置方案[16-18]并不適用于IPv6車載網(wǎng)。此外,上述方案采用重復(fù)地址檢測(cè)或者基于多跳訪問(wèn)的有狀態(tài)分配策略來(lái)確保IPv6地址全球唯一性,因而增加了地址配置延遲。
針對(duì)上述問(wèn)題,本文提出一種全I(xiàn)P車載網(wǎng)地址配置方案。采用由接入節(jié)點(diǎn)和車輛節(jié)點(diǎn)組成的全I(xiàn)P車載網(wǎng)層次體系結(jié)構(gòu)以增強(qiáng)網(wǎng)絡(luò)體系結(jié)構(gòu)的穩(wěn)定性,構(gòu)建基于分層機(jī)制的IPv6地址結(jié)構(gòu),通過(guò)鄰近接入節(jié)點(diǎn)和鄰近車輛節(jié)點(diǎn)為車輛節(jié)點(diǎn)分配地址,使多個(gè)接入節(jié)點(diǎn)并行執(zhí)行地址配置,以減少車輛節(jié)點(diǎn)地址配置延遲和代價(jià)。
IPv6車載網(wǎng)由接入節(jié)點(diǎn)和車輛節(jié)點(diǎn)組成,車輛節(jié)點(diǎn)通過(guò)接入節(jié)點(diǎn)與IPv6網(wǎng)絡(luò)進(jìn)行通信。1個(gè)車輛節(jié)點(diǎn)可以與多個(gè)接入節(jié)點(diǎn)相連。IPv6車載網(wǎng)層次體系結(jié)構(gòu)如圖1所示。

圖1 IPv6車載網(wǎng)層次體系結(jié)構(gòu)Fig.1 Hierarchical architecture of IPv6 vehicular network
基于IPv6車載網(wǎng)層次體系結(jié)構(gòu),IPv6車載網(wǎng)的IPv6地址由位數(shù)為(128-i-n) bit的全局路由前綴、位數(shù)為ibit的接入節(jié)點(diǎn)ID和位數(shù)為nbit的車輛節(jié)點(diǎn)ID 3部分組成。其中,i和n由網(wǎng)絡(luò)規(guī)模和車輛節(jié)點(diǎn)密度確定。接入節(jié)點(diǎn)的IPv6地址需預(yù)先設(shè)置,接入節(jié)點(diǎn)ID設(shè)置區(qū)域?yàn)閇1,2i-1],車輛節(jié)點(diǎn)ID為0。車輛節(jié)點(diǎn)ID設(shè)置區(qū)域?yàn)閇1,2n-1]。在IPv6地址中,1個(gè)接入節(jié)點(diǎn)以及從該接入節(jié)點(diǎn)獲取的IPv6地址全局路由前綴均相同;1個(gè)接入節(jié)點(diǎn)ID只唯一標(biāo)識(shí)1個(gè)接入節(jié)點(diǎn),從該節(jié)點(diǎn)獲取IPv6地址的接入節(jié)點(diǎn)ID相同;1個(gè)車輛階段ID只唯一標(biāo)識(shí)1個(gè)車輛節(jié)點(diǎn)。
基于IPv6車載網(wǎng)層次體系結(jié)構(gòu)和IPv6地址層次結(jié)構(gòu),本文采用分布式機(jī)制設(shè)計(jì)IPv6地址配置方案。車輛節(jié)點(diǎn)X在啟動(dòng)后,從鄰近節(jié)點(diǎn)獲取IPv6地址,無(wú)需執(zhí)行重復(fù)地址檢測(cè)即可實(shí)現(xiàn)地址全球唯一性。車輛節(jié)點(diǎn)IPv6地址配置包括車輛節(jié)點(diǎn)X從鄰近接入節(jié)點(diǎn)AP1處獲取IPv6地址、車輛節(jié)點(diǎn)Y從鄰近車輛節(jié)點(diǎn)X處獲取IPv6地址2種情況(i設(shè)置為16,n設(shè)置為48)。
車輛節(jié)點(diǎn)X偵聽(tīng)一跳范圍內(nèi)鄰近接入節(jié)點(diǎn)的信標(biāo)消息以獲取全局路由前綴、接入節(jié)點(diǎn)ID和車輛節(jié)點(diǎn)ID,再按照以下步驟從鄰近接入節(jié)點(diǎn)AP1處獲取IPv6地址:
1)車輛節(jié)點(diǎn)X向鄰近接入節(jié)點(diǎn)AP1發(fā)送Req_addr消息。
2)接入節(jié)點(diǎn)AP1接收到Req_addr消息后,將地址空間[L,U](L和U為正整數(shù)且L
3)車輛節(jié)點(diǎn)X接收到Rep_addr消息后,將地址L作為車輛節(jié)點(diǎn)ID,與接入節(jié)點(diǎn)AP1全局路由前綴、接入節(jié)點(diǎn)ID相結(jié)合生成唯一的IPv6地址以及可分配地址空間[L+1,U]。車輛節(jié)點(diǎn)X的IPv6地址配置過(guò)程如圖2所示。

圖2 IPv6地址配置過(guò)程示意圖Fig.2 Schematic diagram of IPv6 address configuration process
如果車輛節(jié)點(diǎn)Y鄰近節(jié)點(diǎn)不包含接入節(jié)點(diǎn),則車輛節(jié)點(diǎn)Y選擇從具有最大鏈路連接時(shí)間的鄰近車輛節(jié)點(diǎn)X處獲取IPv6地址。車輛節(jié)點(diǎn)Y偵聽(tīng)一跳范圍內(nèi)鄰近車輛節(jié)點(diǎn)X的信標(biāo)消息以獲取全局路由前綴、接入節(jié)點(diǎn)ID和車輛節(jié)點(diǎn)ID,再按照以下步驟從鄰近車輛節(jié)點(diǎn)X處獲取IPv6地址:
1)車輛節(jié)點(diǎn)Y向鄰近車輛節(jié)點(diǎn)X發(fā)送Req_addr消息。


在NS-3仿真平臺(tái)[19]上將現(xiàn)有車載網(wǎng)分層地址配置方案(以下稱為現(xiàn)有方案)[11]和全I(xiàn)P車載網(wǎng)地址配置方案(以下稱為本文方案)進(jìn)行對(duì)比,仿真參數(shù)設(shè)置如表1所示。以配置延遲和配置代價(jià)為度量指標(biāo)。其中,配置延遲和配置代價(jià)分別以地址配置中需要消耗的時(shí)間和需要發(fā)送的消息總數(shù)作為評(píng)價(jià)依據(jù)。

表1 仿真參數(shù)設(shè)置Table 1 Simulation parameters setting
當(dāng)車輛節(jié)點(diǎn)數(shù)量為250時(shí),在不同車輛節(jié)點(diǎn)速度下現(xiàn)有方案和本文方案的地址配置延遲、地址配置代價(jià)分別如圖3和圖4所示。可見(jiàn),隨著車輛節(jié)點(diǎn)速度的增加,2種方案的地址配置延遲和代價(jià)均增加,本文方案的地址配置延遲和代價(jià)均比現(xiàn)有方案更低。這是因?yàn)殡S著車輛節(jié)點(diǎn)速度的增加,鏈路穩(wěn)定性減弱,地址配置中斷次數(shù)增加。在現(xiàn)有方案中,車輛節(jié)點(diǎn)通過(guò)分析車域間、車域內(nèi)地址配置,并經(jīng)過(guò)多跳獲取IPv6地址后,需執(zhí)行重復(fù)地址檢測(cè),地址配置延遲和代價(jià)較多;在本文方案中,車輛節(jié)點(diǎn)的地址配置通過(guò)分析鄰近車輛節(jié)點(diǎn),經(jīng)過(guò)單跳獲取IPv6地址,無(wú)需執(zhí)行重復(fù)地址檢測(cè),且車輛節(jié)點(diǎn)從鄰近接入節(jié)點(diǎn)和鄰近車輛節(jié)點(diǎn)獲取IPv6地址,鏈路穩(wěn)定性較高,地址配置延遲和代價(jià)較少。

圖3 不同車輛節(jié)點(diǎn)速度下2種方案地址配置延遲對(duì)比Fig.3 Comparison of address configuration delay between two schemes under different vehicle node speeds

圖4 不同車輛節(jié)點(diǎn)速度下2種方案地址配置代價(jià)對(duì)比Fig.4 Comparison of address configuration cost between two schemes under different vehicle node speeds
當(dāng)車輛節(jié)點(diǎn)速度為50 km/h時(shí),在不同車輛節(jié)點(diǎn)數(shù)量下現(xiàn)有方案和本文方案的地址配置延遲、地址配置代價(jià)分別如圖5和圖6所示。可見(jiàn),隨著車輛節(jié)點(diǎn)數(shù)量的增加,2種方案的地址配置延遲和代價(jià)均增加,本文方案的地址配置延遲和代價(jià)均比現(xiàn)有方案更低。這是因?yàn)殡S著車輛數(shù)量的增加,網(wǎng)絡(luò)流量增加,地址配置延遲與代價(jià)也增加。在現(xiàn)有方案中,車輛節(jié)點(diǎn)通過(guò)分析車輛間、車輛內(nèi)地址配置,并經(jīng)過(guò)多跳獲取IPv6地址后,需要執(zhí)行重復(fù)地址檢測(cè),地址配置延遲和代價(jià)較多;在本文方案中,車輛節(jié)點(diǎn)從鄰近接入節(jié)點(diǎn)和鄰近車輛節(jié)點(diǎn)獲取IPv6地址,地址配置延遲和代價(jià)較少。

圖5 不同車輛節(jié)點(diǎn)數(shù)量下2種方案地址配置延遲對(duì)比Fig.5 Comparison of address configuration delay between two schemes under different number of vehicle nodes

圖6 不同車輛節(jié)點(diǎn)數(shù)量下2種方案地址配置代價(jià)對(duì)比Fig.6 Comparison of address configuration cost between two schemes under different number of vehicle nodes
本文提出一種全I(xiàn)P車載網(wǎng)地址配置方案,并建立全I(xiàn)P車載網(wǎng)層次體系結(jié)構(gòu)和基于分層機(jī)制的IPv6地址結(jié)構(gòu)。在此基礎(chǔ)上,采用分布式機(jī)制IPv6地址配置方案,使車輛節(jié)點(diǎn)從鄰近接入節(jié)點(diǎn)或鄰近車輛節(jié)點(diǎn)處獲取全球唯一的IPv6地址。仿真結(jié)果表明,該方案較現(xiàn)有車載網(wǎng)分層地址配置方案的地址配置延遲和代價(jià)更少。下一步將利用車輛節(jié)點(diǎn)自身資源進(jìn)行地址配置,并在此基礎(chǔ)上研究車載網(wǎng)路由通信切換,以減少地址配置延遲與代價(jià)。