基于車載短距離通信網(wǎng)的車載節(jié)點(diǎn)ip地址動(dòng)態(tài)配置方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種基于車載短距離通信網(wǎng)的車載節(jié)點(diǎn)IP地址動(dòng)態(tài)配置方法,屬于車載通信網(wǎng)技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002]車載短距離通信(Vehicle to X:V2X)網(wǎng)絡(luò)是通過(guò)無(wú)線通信、GPS / GIS、傳感等短距離通信技術(shù)實(shí)現(xiàn)的車內(nèi)(CAN-Controller Area Network)、車路(Vehicle-2-RSU)、車間(Vehicle-2-Vehicle)、車外(vehicle-2-1nfrastructure)、人車(Vehicle-2-Person)之間的通信。
[0003]在V2X網(wǎng)絡(luò)中,車載節(jié)點(diǎn)之間直接通信的范圍限制在有限區(qū)域之內(nèi)(車載節(jié)點(diǎn)之間的傳輸距離為304.8米,以下稱局域網(wǎng)),因此,車輛在行車途中從一個(gè)局域網(wǎng)切換至另一個(gè)局域網(wǎng)的頻率較高,切換網(wǎng)絡(luò)時(shí),車載節(jié)點(diǎn)的IP地址需要進(jìn)行動(dòng)態(tài)配置更新,才能保證其與本局域網(wǎng)內(nèi)其它車載節(jié)點(diǎn)的正常通信。
[0004]若借鑒移動(dòng)自組織網(wǎng)絡(luò)(mobile ad hoc network:MANET)的IP地址動(dòng)態(tài)配置方法,將MANETconf、Prophet配置方法應(yīng)用于V2X網(wǎng)絡(luò)中,尚存在以下問(wèn)題:
[0005]MANETconf配置方法是通過(guò)維護(hù)一個(gè)全網(wǎng)所有已用的IP地址,依賴于多播與廣播來(lái)解決IP地址沖突問(wèn)題。網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都維護(hù)一張已使用IP地址的列表,當(dāng)新節(jié)點(diǎn)加入時(shí),其鄰居節(jié)點(diǎn)依據(jù)IP地址列表為新節(jié)點(diǎn)分配一個(gè)列表中不存在的IP地址,但是,當(dāng)鄰居節(jié)點(diǎn)也是新節(jié)點(diǎn)時(shí),其IP地址尚未更新,依該鄰居節(jié)點(diǎn)配置的IP地址并不能保證在本局域網(wǎng)內(nèi)進(jìn)行正常通信;另外,為了避免多個(gè)節(jié)點(diǎn)同時(shí)加入時(shí)IP地址沖突的問(wèn)題,MANETconf通過(guò)全網(wǎng)泛洪進(jìn)行沖突地址檢測(cè),極大地加重了網(wǎng)絡(luò)的通信開銷,降低了網(wǎng)絡(luò)性能。
[0006]Prophet配置方法是利用一個(gè)特定的f (η)函數(shù)來(lái)分配IP地址,以保證IP地址的唯一性。f(n)函數(shù)的初始狀態(tài)稱為種子,不同的種子在某個(gè)整數(shù)集合R上產(chǎn)生不同的整數(shù)序列,當(dāng)R足夠大時(shí),該函數(shù)產(chǎn)生的序列可以滿足在一個(gè)序列中出現(xiàn)相同數(shù)字之間的間隔相當(dāng)長(zhǎng)。但是,這種配置方法并不檢測(cè)兩個(gè)節(jié)點(diǎn)之間的IP地址是否重復(fù),因此,該方法產(chǎn)生的IP地址仍有可能發(fā)生沖突。
【發(fā)明內(nèi)容】
[0007]鑒于上述原因,本發(fā)明的目的在于提供一種基于車載短距離通信網(wǎng)的IP地址動(dòng)態(tài)配置方法,該方法既可以保證車載短距離通信網(wǎng)內(nèi)車載節(jié)點(diǎn)IP地址的唯一性,進(jìn)而可保證車載節(jié)點(diǎn)之間的正常通信,同時(shí),可有效減少網(wǎng)絡(luò)中為配置IP地址而發(fā)送的廣播包數(shù)量,減小了網(wǎng)絡(luò)壓力,改善了網(wǎng)絡(luò)性能。
[0008]為實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案:
[0009]基于車載短距離通信網(wǎng)的車載節(jié)點(diǎn)IP地址動(dòng)態(tài)配置方法,其特征在于:
[0010]車載節(jié)點(diǎn)將攜帶節(jié)點(diǎn)性質(zhì)、IP地址及節(jié)點(diǎn)唯一標(biāo)識(shí)等自身狀態(tài)信息的心跳信息定時(shí)廣播到網(wǎng)絡(luò)中;車載節(jié)點(diǎn)接收其它車載節(jié)點(diǎn)的心跳信息,并將其它各車載節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)、IP地址及節(jié)點(diǎn)唯一標(biāo)識(shí)等信息保存到一環(huán)境信息隊(duì)列中;
[0011]車載節(jié)點(diǎn)依據(jù)該環(huán)境信息隊(duì)列中節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)配置、更新IP地址的網(wǎng)絡(luò)號(hào),然后通過(guò)隨機(jī)函數(shù)產(chǎn)生的隨機(jī)數(shù)作為主機(jī)號(hào),以配置、更新車載節(jié)點(diǎn)的IP地址;并通過(guò)查找該環(huán)境信息隊(duì)列保證生成的IP地址不重復(fù);
[0012]車載節(jié)點(diǎn)從該環(huán)境信息隊(duì)列中查找到存在沖突節(jié)點(diǎn)時(shí),車載節(jié)點(diǎn)與該沖突節(jié)點(diǎn)依據(jù)各自IP地址的修改時(shí)間協(xié)商修改IP地址。
[0013]進(jìn)一步的,
[0014]車載節(jié)點(diǎn)配置IP地址的具體步驟是:
[0015]S10:車載節(jié)點(diǎn)接收周圍其它車載節(jié)點(diǎn)的所述心跳信息,并依據(jù)各節(jié)點(diǎn)的心跳信息,將其它各節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)、IP地址、節(jié)點(diǎn)唯一標(biāo)識(shí)等信息保存到所述環(huán)境信息隊(duì)列中;
[0016]Sll:車載節(jié)點(diǎn)依據(jù)所述環(huán)境信息隊(duì)列中各節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)確定其IP地址的網(wǎng)絡(luò)號(hào),若所述環(huán)境信息隊(duì)列中存在路側(cè)節(jié)點(diǎn),則執(zhí)行步驟S110,否則跳轉(zhuǎn)至步驟Slll ;
[0017]SllO:車載節(jié)點(diǎn)將路側(cè)節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)作為自身IP地址的網(wǎng)絡(luò)號(hào),跳轉(zhuǎn)至步驟 S12 ;
[0018]Slll:車載節(jié)點(diǎn)查看所述環(huán)境信息隊(duì)列中的節(jié)點(diǎn)數(shù),如果僅有一個(gè)節(jié)點(diǎn)則執(zhí)行步驟SI 12,否則跳轉(zhuǎn)至步驟SI 13 ;
[0019]S112:所述環(huán)境信息隊(duì)列中僅有一個(gè)節(jié)點(diǎn),取該節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)作為自身IP地址的網(wǎng)絡(luò)號(hào),跳轉(zhuǎn)至步驟S12 ;
[0020]S113:所述環(huán)境信息隊(duì)列中有多個(gè)節(jié)點(diǎn),計(jì)算出多個(gè)節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)的眾數(shù),作為自身IP地址的網(wǎng)絡(luò)號(hào);
[0021]S12:通過(guò)隨機(jī)函數(shù)生成隨機(jī)數(shù)作為主機(jī)號(hào),配置出由網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)組成的IP地址;
[0022]S13:將配置的IP地址與環(huán)境信息隊(duì)列中節(jié)點(diǎn)的IP地址作比較,若配置的IP地址與周圍某一車載節(jié)點(diǎn)的IP地址重復(fù),跳轉(zhuǎn)至步驟S12,通過(guò)更改主機(jī)號(hào)重新配置IP地址;
[0023]S14:將配置好的IP地址、節(jié)點(diǎn)性質(zhì)以及節(jié)點(diǎn)唯一標(biāo)識(shí)等信息以心跳信息廣播到網(wǎng)絡(luò)中。
[0024]車載節(jié)點(diǎn)更新IP地址的具體步驟是:
[0025]S20:車載節(jié)點(diǎn)接收周圍其它車載節(jié)點(diǎn)的心跳信息,并依據(jù)各節(jié)點(diǎn)的心跳信息,將其它各節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)、IP地址、節(jié)點(diǎn)唯一標(biāo)識(shí)等信息保存到所述環(huán)境信息隊(duì)列中;
[0026]S21:車載節(jié)點(diǎn)依據(jù)所述環(huán)境信息隊(duì)列中各節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)更新其IP地址的網(wǎng)絡(luò)號(hào),若所述環(huán)境信息隊(duì)列中存在路側(cè)節(jié)點(diǎn),執(zhí)行步驟S211,否則跳轉(zhuǎn)至步驟S213 ;
[0027]S211:車載節(jié)點(diǎn)將自身IP地址的網(wǎng)絡(luò)號(hào)與路側(cè)節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)相比較,若相同跳轉(zhuǎn)至步驟S20 ;否則執(zhí)行步驟212 ;
[0028]S212:車載節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)與路側(cè)節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)不相同,取路側(cè)節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)作為自身IP地址的網(wǎng)絡(luò)號(hào),跳轉(zhuǎn)至步驟S22 ;
[0029]S213:計(jì)算出所述環(huán)境信息隊(duì)列中各節(jié)點(diǎn)IP地址的網(wǎng)絡(luò)號(hào)的眾數(shù),車載節(jié)點(diǎn)將自身IP地址的網(wǎng)絡(luò)號(hào)與該眾數(shù)相比較,若相同跳轉(zhuǎn)至步驟S20,否則執(zhí)行步驟S214 ;
[0030]S214:車載節(jié)點(diǎn)自身IP地址的網(wǎng)絡(luò)號(hào)與該眾數(shù)不相同,取該眾數(shù)作為自身IP地址的網(wǎng)絡(luò)號(hào);
[0031]S22:通過(guò)隨機(jī)函數(shù)生成隨機(jī)數(shù)作為主機(jī)號(hào),更新后的IP地址由網(wǎng)絡(luò)號(hào)和主機(jī)號(hào)組成;
[0032]S23:將更新后的IP地址與所述環(huán)境信息隊(duì)列中節(jié)點(diǎn)的IP地址作比較,若更新的IP地址與周圍某一車載節(jié)點(diǎn)的IP地址重復(fù),跳轉(zhuǎn)至步驟S22,通過(guò)更改主機(jī)號(hào)重新配置IP地址;
[0033]S24:將更新后的IP地址、節(jié)點(diǎn)性質(zhì)以及節(jié)點(diǎn)唯一標(biāo)識(shí)等信息以心跳信息廣播到網(wǎng)絡(luò)中。
[0034]車載節(jié)點(diǎn)進(jìn)行IP地址沖突檢測(cè)的步驟是:
[0035]S30:車載節(jié)點(diǎn)接收周圍其它車載節(jié)點(diǎn)的心跳信息,并依據(jù)各節(jié)點(diǎn)的心跳信息,將其它各節(jié)點(diǎn)的節(jié)點(diǎn)性質(zhì)、IP地址、節(jié)點(diǎn)唯一標(biāo)識(shí)等信息保存到所述環(huán)境信息隊(duì)列中;
[0036]S31:車載節(jié)點(diǎn)將自身IP地址與所述環(huán)境信息隊(duì)列中各節(jié)點(diǎn)的IP地址相比較以確定是否存在IP地址重復(fù)的沖突節(jié)點(diǎn);若不存在沖突節(jié)點(diǎn),跳轉(zhuǎn)至步驟S30,若存在沖突節(jié)點(diǎn),執(zhí)行步驟S32 ;
[0037]S32:車載節(jié)點(diǎn)將攜帶IP地址及IP地址修改時(shí)間的地址重復(fù)訊問(wèn)數(shù)據(jù)包廣播到網(wǎng)絡(luò)中;
[0038]S33:沖突節(jié)點(diǎn)收到該地址重復(fù)訊問(wèn)數(shù)據(jù)包,將沖突節(jié)點(diǎn)自身IP地址的修改時(shí)間與車載節(jié)點(diǎn)IP地址的修改時(shí)間相比較;若沖突節(jié)點(diǎn)自身IP地址的修改時(shí)間晚于車載節(jié)點(diǎn)IP地址的修改時(shí)間,執(zhí)行步驟S34,否則跳轉(zhuǎn)至步驟S36
[0039]S34:沖突節(jié)點(diǎn)通過(guò)隨機(jī)函數(shù)生成隨機(jī)數(shù)作為主機(jī)號(hào),網(wǎng)絡(luò)號(hào)不變,重新配置IP地址,并通過(guò)查找所述環(huán)境信息隊(duì)列以保證重新配置的IP地址不重復(fù);
[0040]S35:沖突節(jié)點(diǎn)將攜帶重新配置的IP地址、節(jié)點(diǎn)唯一標(biāo)識(shí)的地址重復(fù)應(yīng)答數(shù)據(jù)包以點(diǎn)對(duì)點(diǎn)方式發(fā)送給車載節(jié)點(diǎn),以通知車載節(jié)點(diǎn)其IP地址已經(jīng)重新配置,沖突檢測(cè)結(jié)束;
[0041]S36:沖突節(jié)點(diǎn)將攜帶其自身IP地址及IP地址修改時(shí)間的地址重復(fù)應(yīng)答數(shù)據(jù)包廣播到網(wǎng)絡(luò)中;
[0042]S37:車載節(jié)點(diǎn)收到該地址重復(fù)應(yīng)答數(shù)據(jù)包,通過(guò)隨機(jī)函數(shù)生成隨機(jī)數(shù)作為主機(jī)號(hào),網(wǎng)絡(luò)號(hào)不變,重新配置IP地址,并通過(guò)查找所述環(huán)境信息隊(duì)列以保證重新配置的IP地址不重復(fù),然后將攜帶重新配置的IP地址的數(shù)