專(zhuān)利名稱(chēng):一種基于車(chē)流密度的物聯(lián)網(wǎng)單播數(shù)據(jù)傳輸方法
技術(shù)領(lǐng)域:
本發(fā)明屬于物聯(lián)網(wǎng)通信領(lǐng)域,涉及一種基于車(chē)流密度的物聯(lián)網(wǎng)單播數(shù)據(jù)傳輸方法,用于從運(yùn)動(dòng)的車(chē)輛向固定目標(biāo)節(jié)點(diǎn)投遞數(shù)據(jù)。本發(fā)明中,目標(biāo)節(jié)點(diǎn)與信宿節(jié)點(diǎn)、信宿,三個(gè)術(shù)語(yǔ)具有相同的含義。在該技術(shù)中提出了一種基于車(chē)流密度的物聯(lián)網(wǎng)端到端投遞代價(jià)的計(jì)算方法,以及相應(yīng)基于代價(jià)的路由選擇算法。應(yīng)用該技術(shù)能夠以有限開(kāi)銷(xiāo)有效提高物聯(lián)網(wǎng)中數(shù)據(jù)多跳轉(zhuǎn)發(fā)的成功率、并縮短端到端投遞延時(shí)。
背景技術(shù):
本發(fā)明涉及的物聯(lián)網(wǎng)特指由多個(gè)具有車(chē)載短距離無(wú)線(xiàn)通信設(shè)備的車(chē)輛自組織形成的移動(dòng)自組網(wǎng)。在物聯(lián)網(wǎng)中,節(jié)點(diǎn)移動(dòng)速度快,拓?fù)渥兓l繁,同時(shí)車(chē)輛運(yùn)動(dòng)受城市道路約束,這些特點(diǎn)使物聯(lián)網(wǎng)顯著區(qū)別于一般的移動(dòng)無(wú)線(xiàn)自組網(wǎng)絡(luò)。物聯(lián)網(wǎng)中的數(shù)據(jù)傳輸可以通過(guò)無(wú)線(xiàn)方式多跳傳輸,也可以通過(guò)車(chē)輛攜帶方式,也可以“多跳方式”、“車(chē)輛攜帶”兩種方式交替進(jìn)行。目前由車(chē)輛組成的物聯(lián)網(wǎng)路由算法,可以分作三類(lèi):基于地理位置的路由,基于洪泛的路由和基于交通流信息的路由。在基于地理位置的路由中,數(shù)據(jù)包一直由持有車(chē)輛發(fā)送給鄰居車(chē)輛中最接近目標(biāo)位置的車(chē)輛。在這種路由方式下,道路拓?fù)渲械木植繕O點(diǎn),或稀疏車(chē)輛都會(huì)導(dǎo)致數(shù)據(jù)轉(zhuǎn)發(fā)過(guò)程中出現(xiàn)沒(méi)有可用鏈路的情況,數(shù)據(jù)包投遞延時(shí)因此增加,甚至是因超時(shí)而丟棄。在基于洪泛的路由中,數(shù)據(jù)包以直接擴(kuò)散方式進(jìn)行轉(zhuǎn)發(fā),數(shù)據(jù)包的攜帶車(chē)輛會(huì)將數(shù)據(jù)拷貝復(fù)制 給鄰居車(chē)輛中任意尚未持有該拷貝的車(chē)輛?;诤榉旱穆酚赡苋〉幂^高的投遞成功率與較小的投遞延時(shí),但是由于網(wǎng)絡(luò)開(kāi)銷(xiāo)大,通常不適用于繁忙網(wǎng)絡(luò)。基于交通流信息的路由是近年來(lái)物聯(lián)網(wǎng)路由領(lǐng)域的研究熱點(diǎn),該類(lèi)路由通常基于交通流量信息估算數(shù)據(jù)包沿路徑多跳轉(zhuǎn)發(fā)的代價(jià),從而選擇具有較小轉(zhuǎn)發(fā)代價(jià)的路徑進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)?,F(xiàn)有的基于交通流信息的路由算法中,大多要求精確的實(shí)時(shí)交通流信息用于計(jì)算道路轉(zhuǎn)發(fā)的代價(jià),在高度動(dòng)態(tài)的路面交通環(huán)境中難以取得理想效果,且一般有較高的計(jì)算復(fù)雜度。
發(fā)明內(nèi)容
為克服上述方案缺陷與不足,本發(fā)明涉及一種輕量級(jí)的物聯(lián)網(wǎng)單播數(shù)據(jù)傳輸方法,通過(guò)量化路段車(chē)流密度,估算路段傳輸代價(jià)以及沿不同路徑轉(zhuǎn)發(fā)數(shù)據(jù)包的端到端傳輸代價(jià),以作為數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí)確定下一跳節(jié)點(diǎn)的選擇依據(jù)。本發(fā)明涉及的技術(shù)使用雙向車(chē)流轉(zhuǎn)發(fā)數(shù)據(jù),使路段上具備短距離無(wú)線(xiàn)通信能力的車(chē)輛可參與該路段上任意方向的數(shù)據(jù)發(fā)送。與僅依賴(lài)單向車(chē)流的數(shù)據(jù)轉(zhuǎn)發(fā)機(jī)制相比較而言,車(chē)輛間有更充分的通信機(jī)會(huì),從而提高數(shù)據(jù)投遞成功率,以及縮短數(shù)據(jù)投遞延時(shí)。此外,本發(fā)明假設(shè)車(chē)輛能通過(guò)某種定位技術(shù)(如裝配GPS接收設(shè)備)獲取其當(dāng)前位置,并能通過(guò)電子地圖獲取城市中的道路實(shí)時(shí)車(chē)流密度情況或最近的歷史統(tǒng)計(jì)數(shù)據(jù)信息。每個(gè)節(jié)點(diǎn)具有全向通信天線(xiàn),所有節(jié)點(diǎn)的通信半徑記做R。一般來(lái)說(shuō),R的取值范圍50米至200米。一種基于車(chē)流密度的物聯(lián)網(wǎng)單播數(shù)據(jù)傳輸方法,根據(jù)每個(gè)路段上雙向車(chē)流密度及其路段長(zhǎng)度信息計(jì)算該路段的代價(jià),并結(jié)合信源S位置、信宿t位置和地圖構(gòu)造擴(kuò)展圖;由該擴(kuò)展圖得到網(wǎng)絡(luò)中各節(jié)點(diǎn)間的最短路徑;單播數(shù)據(jù)包根據(jù)所計(jì)算的路徑逐路段、逐跳端到端轉(zhuǎn)發(fā)。所述的傳輸方法,沿最短路徑轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí),包括數(shù)據(jù)包的路段轉(zhuǎn)發(fā)階段和路口轉(zhuǎn)發(fā)階段,路段轉(zhuǎn)發(fā)中優(yōu)先將數(shù)據(jù)包轉(zhuǎn)發(fā)給最短路徑中最接近下一跳路口的車(chē)輛;路口轉(zhuǎn)發(fā)中優(yōu)先將到所有鄰居路口路徑代價(jià)最小、且當(dāng)前路口有車(chē)輛向該鄰居路口行使的路口作為數(shù)據(jù)包轉(zhuǎn)發(fā)的下一跳路口,一個(gè)路口距信宿的投遞代價(jià)為該路口到信宿的最小投遞代價(jià)。在本發(fā)明中,由于僅使用路段平均車(chē)流密度進(jìn)行路徑和鏈路代價(jià)估計(jì),并在計(jì)算過(guò)程中進(jìn)行了量化處理,因此對(duì)交通流信息的精度及實(shí)時(shí)性要求較低,減少了路由開(kāi)銷(xiāo)。另一方面,由于車(chē)輛在路口處僅需要將數(shù)據(jù)發(fā)往相對(duì)最優(yōu)(相對(duì)最小的端到端路徑代價(jià))的鄰居路口,因此本發(fā)明的量化機(jī)制在大部分情況下足夠保證車(chē)輛進(jìn)行正確轉(zhuǎn)發(fā)決策。
圖1是數(shù)據(jù)包傳輸轉(zhuǎn)發(fā)實(shí)施例。
具體實(shí)施例方式I)路段代價(jià)計(jì)算方法:將城市路網(wǎng)拓?fù)浣3蔁o(wú)向加權(quán)圖G(V,E),每個(gè)路口作為一個(gè)頂點(diǎn),V(G)表示路口的集合,E (G)表示路段的集合,則當(dāng)路口 X與路口 y為相鄰路口時(shí),有(x,y) e E(G)。令rxy代表路段(X,y)上的車(chē)流密度值,Lxy代表路段(X,y)的長(zhǎng)度,Numxy代表路段(x,y)的雙向車(chē)輛總數(shù)(包括路段(x,y)上,從路口 X到路口 y和從路口 y到路口 X兩個(gè)方向上的所有車(chē)輛),有rxy=Numxy/Lxy。假設(shè)車(chē)輛密度按照從疏到密劃分為N個(gè)等級(jí),對(duì)應(yīng)密度區(qū)間集合為{[O, rj, (r1; r2],…,(rN_2, Tn^1 ], (^1, °o ) },(Kr1Cr2〈…,00,其中
= - ,將道路上的車(chē)輛密度信息量化后并編號(hào),記做 <,當(dāng)rxy e
時(shí),<=1;當(dāng)
rxy e (Γι, r2]時(shí),.¢=2;…;當(dāng)rxye Ov1,⑴)時(shí),< =N。在道路密度信息量化以后,定義
網(wǎng)絡(luò)中的每個(gè)路段(X,y)的路段代價(jià)權(quán)值如下:
—1 Twxy— ~r2)基于信源和信宿的擴(kuò)展圖生成方法:給定信源s位置和信宿t位置和基于流量的拓?fù)鋱DG,構(gòu)造新的擴(kuò)展圖G’,具體方法如下:.V (G,) =V (G),E (G,)=E (G); 如果s處于圖G中某路段(x,y)之中,則在s所在位置加一個(gè)新的虛擬路口 0,HG’ )=V(G,) + {0},E(G,)=E(G’ ) + {(x, O), (O, y)}-{(x, y)},其中 “ + ” 代表集合的合并運(yùn)算,代表集合的減運(yùn)算,rx() = r0y = rxy ;否則,如果信源s正處于原圖G中的某一路口,這時(shí),則直接將該路口記做為O ; 如果t處于圖G中某路段(i,j)之中,則在t所在位置加一個(gè)新的虛擬路口 D,V(G,)=V(G,) + {D},E(G’ )=E(G’ ) + {(i,D), (D,j)} - {(i,j)},令 riD = rDJ = r^.;否則,如果信宿t正處于原圖G中的某一路口,則直接將該路口記做為D ; 構(gòu)造擴(kuò)展圖完畢G’。3)結(jié)合擴(kuò)展圖的最短路徑計(jì)算方法:根據(jù)道路拓?fù)鋱DG’和G’中每一個(gè)路段的代價(jià),則可根據(jù)Dijkstra最短路算法計(jì)算從圖中任意路口 i到目標(biāo)路口 D的最短路徑及其路徑代價(jià)CiD,i將隨數(shù)據(jù)包的逐路段轉(zhuǎn)發(fā)而變。4)結(jié)合上述路徑計(jì)算方法的數(shù)據(jù)包轉(zhuǎn)發(fā)方法:數(shù)據(jù)轉(zhuǎn)發(fā)過(guò)程包括兩階段:路段轉(zhuǎn)發(fā)階段和路口轉(zhuǎn)發(fā)階段。 在路段轉(zhuǎn)發(fā)中,對(duì)于每個(gè)持有數(shù)據(jù)包的車(chē)輛來(lái)說(shuō),如果鄰居節(jié)點(diǎn)中存在更接近下一跳路口的車(chē)輛,則將數(shù)據(jù)包轉(zhuǎn)發(fā)給該車(chē)輛,如果存在多個(gè)這樣的鄰居,則轉(zhuǎn)發(fā)給最靠近下一跳路口的車(chē)輛,如果不存在這樣的鄰居,該車(chē)輛則自己攜帶該數(shù)據(jù)包,直至到達(dá)下一跳路口,或直到遇到比自己更靠近下一跳路口的車(chē)輛,如果行進(jìn)過(guò)程中遇到數(shù)據(jù)包的信宿,則直接將數(shù)據(jù)包轉(zhuǎn)交給信宿,路段上的中間轉(zhuǎn)發(fā)節(jié)點(diǎn)不允許改變數(shù)據(jù)包的下一跳路口方向。 在路口轉(zhuǎn)發(fā)中,當(dāng)持有數(shù)據(jù)包m的車(chē)輛V位于路口 X時(shí),X e V(G’),會(huì)首先確定X的鄰居路口集N(X),然后根據(jù)量化后的車(chē)流密度擴(kuò)展圖G’計(jì)算每個(gè)鄰居路口 y到信宿t所在路口的最小投遞代價(jià)Cyt,其中y e N(X),隨后根據(jù)計(jì)算得到每個(gè)鄰居路口的Cyt值對(duì)N(X)集合中的路口按端到端最小投遞代價(jià)從小到大的順序進(jìn)行排序,得到有序排序后的路口集合N*(x);在獲取N*(x)以后,車(chē)輛V將選擇N* (X)中最高優(yōu)先級(jí)且當(dāng)前路口正有車(chē)輛行駛的方向作為數(shù)據(jù)包轉(zhuǎn)發(fā)方向,將該方向上另一端路口作為數(shù)據(jù)包的下一跳路口存入數(shù)據(jù)包頭中,并將數(shù)據(jù)包發(fā)往該方向上的最接近下一跳路口的鄰居車(chē)輛。具體實(shí)例一:I)車(chē)輛密度量化參數(shù)r” Iv1, N的選擇方法示例。首先對(duì)路段長(zhǎng)度進(jìn)行歸一化,路段(X,y)的長(zhǎng)度歸一化為L(zhǎng)xy=Lxy/R。如果rxy〈l/3,則認(rèn)為車(chē)輛太稀疏,很難進(jìn)行多跳傳輸,因此,一種可能的方式是設(shè)定r^lO, r2=20, r3=30, N=402)下面結(jié)合附圖及實(shí)例對(duì)本發(fā)明作進(jìn)一步的說(shuō)明。在附圖1中,左圖表示道路拓?fù)湟约跋鄳?yīng)路段上的車(chē)流密度,為方便描述,設(shè)路段等長(zhǎng),且長(zhǎng)度為I。設(shè)密度量化區(qū)間集合為{[O, 10], (10, 20], (20, 30], (30,⑴)},則可將路段車(chē)流密度量化為1、2、3、4四個(gè)等級(jí)。通過(guò)將量化值取倒數(shù)后,可計(jì)算得到路段代價(jià)如附圖1中右圖所示。假設(shè)有位于路口 X處的車(chē)輛有數(shù)據(jù)發(fā)往目標(biāo)節(jié)點(diǎn)T,該車(chē)輛將會(huì)基于最短路徑算法計(jì)算鄰居路口 A、B、C向T投遞數(shù)據(jù)的最小估計(jì)代價(jià)。根據(jù)計(jì)算結(jié)果,路口 B具有最小代價(jià)估計(jì),因此被選作下一跳路口。當(dāng)下一跳路口選定后,路口 X處的車(chē)輛則會(huì)將數(shù)據(jù)包發(fā)送給在路段XB上行駛的車(chē)輛。當(dāng)`數(shù)據(jù)包到達(dá)路口 B后,則會(huì)重復(fù)上述過(guò)程,直至數(shù)據(jù)包被最終投遞給目標(biāo)節(jié)點(diǎn)T。
權(quán)利要求
1.一種基于車(chē)流密度的物聯(lián)網(wǎng)單播數(shù)據(jù)傳輸方法,其特征在于: 根據(jù)每個(gè)路段上雙向車(chē)流密度及其路段長(zhǎng)度信息計(jì)算該路段的代價(jià),并結(jié)合信源S位置、信宿t位置和地圖構(gòu)造擴(kuò)展圖;由該擴(kuò)展圖得到網(wǎng)絡(luò)中各節(jié)點(diǎn)間的最短路徑;單播數(shù)據(jù)包根據(jù)所計(jì)算的路徑逐路段、逐跳端到端轉(zhuǎn)發(fā)。
2.根據(jù)權(quán)利要求1所述的傳輸方法,其特征在于: 沿最短路徑轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí),包括數(shù)據(jù)包的路段轉(zhuǎn)發(fā)階段和路口轉(zhuǎn)發(fā)階段,路段轉(zhuǎn)發(fā)中優(yōu)先將數(shù)據(jù)包轉(zhuǎn)發(fā)給最短路徑中最接近下一跳路口的車(chē)輛;路口轉(zhuǎn)發(fā)中優(yōu)先將到所有鄰居路口中距信宿投遞代價(jià)最小、且當(dāng)前路口有車(chē)輛向該鄰居路口行使的路口作為數(shù)據(jù)包轉(zhuǎn)發(fā)的下一跳路口,一個(gè)路口距信宿的投遞代價(jià)為該路口到信宿的最小投遞代價(jià)。
3.根據(jù)權(quán)利要求1所述的傳輸方法,其特征在于其中根據(jù)每個(gè)路段上雙向車(chē)流密度及其路段長(zhǎng)度信息計(jì)算該路段的代價(jià)包括如下步驟: 將城市路網(wǎng)拓?fù)浣3蔁o(wú)向加權(quán)圖G(V,E),每個(gè)路口作為一個(gè)頂點(diǎn),V(G)表示路口的集合,E(G)表示路段的集合,則當(dāng)路口 X與路口 y為相鄰路口時(shí),有(X,y) e E(G); 籲令rxy代表路段(X,y)上的車(chē)流密度值,Lxy代表路段(X,y)的長(zhǎng)度,Numxy代表路段(X,y)的雙向車(chē)輛總數(shù),有rxy=Numxy/Lxy ; 將車(chē)輛密度按照從疏到密劃分為N個(gè)等級(jí),對(duì)應(yīng)密度區(qū)間集合為{[O, rj, (r1; r2],…,(rN_2, Tn^1 ], (^1, °ο )},(Kr1Cr2〈…,00,其中=IV1-1V2,將道路上的車(chē)輛密度信息量化后并編號(hào),記做4,當(dāng)rxy e [O1T1]時(shí),<=1;當(dāng)rxy e (r1; r2]時(shí),r: =2;…;當(dāng) rxy e (rN_1; )時(shí)計(jì)算每個(gè)路段(X,y) e E(G)的路徑代價(jià)權(quán)值W。
4.根據(jù)權(quán)利要求3所述的傳輸方法,其特征在于,所述結(jié)合信源s和信宿t位置和地圖構(gòu)造道路拓?fù)鋽U(kuò)展圖G’包括: V(G’)=V(G),E(G’ ) =E(G); 如果s處于圖G中某路段(x,y)之中,則在s所在位置加一個(gè)新的虛擬路口 O,HG’ )=V(G,) + {0},E(G,)=E(G’ ) + {(x, O), (O,y)} - {(x,y)},其中 “ + ” 代表集合的合并運(yùn)算,代表集合的減運(yùn)算,令rx() = r0y = rxy ;否則,如果信源s正處于原圖G中的某一路口,這時(shí),則直接將該路口記做為O ; 如果t處于圖G中某路段(i,j)之中,則在t所在位置加一個(gè)新的虛擬路口 D,V(G,)=V(G’)+ {D},E(G’)=E(G’)+ {(i,D),(D,j)} - {(i,j)},令 riD = rDJ = 否則,如果信宿 t正處于原圖G中的某一路口,則直接將該路口記做為D ; 構(gòu)造擴(kuò)展圖G’完畢。
5.根據(jù)權(quán)利要求4所述的傳輸方法,其特征在于,所述由擴(kuò)展圖得到網(wǎng)絡(luò)中各節(jié)點(diǎn)間的最短路徑包括: 根據(jù)道路拓?fù)鋽U(kuò)展圖G’和G’中每一個(gè)路段的路徑代價(jià)權(quán)值,利用Dijkstra最短路算法計(jì)算從拓?fù)鋱D中從任意路口 i到目標(biāo)路口 D的最短路徑及其路徑代價(jià)CiD,i將隨數(shù)據(jù)包的逐路段轉(zhuǎn)發(fā)而變。
6.根據(jù)權(quán)利要求5所述的傳輸方法,其特征在于,所述單播數(shù)據(jù)包根據(jù)所計(jì)算的路徑逐路段、逐跳端到端轉(zhuǎn)發(fā)包括路段轉(zhuǎn)發(fā)階段和路口轉(zhuǎn)發(fā)階段: 在路段轉(zhuǎn)發(fā)中,對(duì)于每個(gè)持有數(shù)據(jù)包的車(chē)輛來(lái)說(shuō),如果鄰居節(jié)點(diǎn)中存在更接近下一跳路口的車(chē)輛,則將數(shù)據(jù)包轉(zhuǎn)發(fā)給該車(chē)輛,如果存在多個(gè)這樣的鄰居,則轉(zhuǎn)發(fā)給最靠近下一跳路口的車(chē)輛,如果不存在這樣的鄰居,該車(chē)輛則自己攜帶該數(shù)據(jù)包,直至到達(dá)下一跳路口,或遇到比自己更靠近下一跳路口的車(chē)輛,如果行進(jìn)過(guò)程中遇到信宿t,則直接將數(shù)據(jù)包轉(zhuǎn)交給信宿,路段上的中 間轉(zhuǎn)發(fā)節(jié)點(diǎn)不允許改變數(shù)據(jù)包的下一跳路口方向; 在路口轉(zhuǎn)發(fā)中,當(dāng)持有數(shù)據(jù)包m的車(chē)輛V位于路口 X時(shí),X e V(G’),會(huì)首先確定X的鄰居路口集N (X),然后根據(jù)車(chē)流密度量化后的擴(kuò)展圖G’計(jì)算每個(gè)鄰居路口 y到信宿t所在路口的最小投遞代價(jià)Cyt,其中y e N(X),隨后根據(jù)計(jì)算得到每個(gè)鄰居路口的Cyt值對(duì)N(X)集合中的路口按端到端最小投遞代價(jià)從小到大的順序進(jìn)行排序,得到有序排序后的路口集合N*(x);在獲取N*(x)以后,車(chē)輛V將選擇N* (X)中最高優(yōu)先級(jí)且當(dāng)前路口正有車(chē)輛行駛的方向作為數(shù)據(jù)包轉(zhuǎn)發(fā)方向,將該方向上另一端路口作為數(shù)據(jù)包的下一跳路口存入數(shù)據(jù)包頭中,并將數(shù)據(jù)包發(fā)往該方向上的最接近下一跳路口的鄰居車(chē)輛。
全文摘要
本發(fā)明屬于無(wú)線(xiàn)傳感網(wǎng)絡(luò)協(xié)議技術(shù)領(lǐng)域,具體涉及一種基于車(chē)流密度的物聯(lián)網(wǎng)單播數(shù)據(jù)傳輸方法,根據(jù)每個(gè)路段上雙向車(chē)流密度及其路段長(zhǎng)度信息計(jì)算該路段的代價(jià),并結(jié)合信源s位置、信宿t位置和地圖構(gòu)造擴(kuò)展圖;由該擴(kuò)展圖得到網(wǎng)絡(luò)中各節(jié)點(diǎn)間的最短路徑;單播數(shù)據(jù)包根據(jù)所計(jì)算的路徑逐路段、逐跳端到端轉(zhuǎn)發(fā)。
文檔編號(hào)H04W40/18GK103079250SQ201210546689
公開(kāi)日2013年5月1日 申請(qǐng)日期2012年12月16日 優(yōu)先權(quán)日2012年12月16日
發(fā)明者趙壯, 賀靜, 梅武鋼, 尹崇祿 申請(qǐng)人:北京泛聯(lián)至誠(chéng)科技有限公司