基于mtpa算法的車聯(lián)網(wǎng)信息廣播的制作方法
【專利摘要】基于MTPA算法的車聯(lián)網(wǎng)信息廣播,屬于汽車移動互聯(lián)網(wǎng)領域,為解決現(xiàn)有信息傳輸不能針對網(wǎng)絡斷連情況的問題。過程為:產(chǎn)生原中繼節(jié)點;中繼節(jié)點廣播信息包;每走2R距離播放一次信息包。中繼節(jié)點查詢到有同向行駛進入本身發(fā)射圈內汽車節(jié)點時,更新計算發(fā)射圈內汽車節(jié)點駛離發(fā)射圈的時間,選擇最小時間的汽車節(jié)點作為后繼同向中繼節(jié)點。并且先廣播一次信息包,然后將權限包發(fā)送給同向后繼中繼節(jié)點。查詢到有反向汽車節(jié)點且信息包中的標志位為0時,中繼節(jié)點將信息包中標志位變?yōu)?,廣播一次信息包,然后在反方向上按照正方向同樣規(guī)則將權限包發(fā)送給反向后繼中繼節(jié)點。本發(fā)明用于網(wǎng)絡斷連狀態(tài)下的車聯(lián)網(wǎng)傳送信息。
【專利說明】基于MTPA算法的車聯(lián)網(wǎng)信息廣播
【技術領域】
[0001]本發(fā)明涉及一種車聯(lián)網(wǎng)信息廣播,屬于汽車移動互聯(lián)網(wǎng)領域。
【背景技術】
[0002]用于汽車領域的電信技術的設計目標為:a)減少事故次數(shù)及其影響;b)在車輛間共享交通有用信息,以減少交通阻塞;c)在沒有基礎設施的情況下進行汽車間信息廣播(如天氣預報等),也可收集不同車輛的信息。
[0003]在實際的道路交通環(huán)境之下,由于汽車節(jié)點運動速度很快,所以車流量變化非常大,有時候會過密,有時候又會過于稀疏。當汽車節(jié)點過于稀疏時,由于節(jié)點之間的距離過大,或節(jié)點受到遮擋等因素,原本連通的車聯(lián)網(wǎng)(Vehicle Adhoc Network, VANET)可能會出現(xiàn)斷連的狀態(tài)。這種情況在城市交通的低峰期,或在遠離城市中心的環(huán)境,如鄉(xiāng)村、城市郊區(qū)等都很有可能出現(xiàn)。然而,針對這種情況,如果汽車節(jié)點仍然需要車聯(lián)網(wǎng)向其提供一些信息服務,車聯(lián)網(wǎng)必須采取新的方法來滿足該項需求,因為之前的網(wǎng)絡協(xié)議及算法大都是基于網(wǎng)絡連通的前提而提出來的,所以已有的基于網(wǎng)絡連通假設的網(wǎng)絡協(xié)議及算法對于車聯(lián)網(wǎng)在斷連的狀態(tài)下繼續(xù)提供服務都失效了。
[0004]為了解決車聯(lián)網(wǎng)在斷連情況下如何繼續(xù)傳送信息的問題,目前采取的較為有效的方法是“存儲——攜帶——轉發(fā)”策略。該策略的具體方案是當節(jié)點之間存在鏈路時,直接通過節(jié)點之間的通信鏈路來傳輸數(shù)據(jù);當節(jié)點之間發(fā)生斷連時,由移動的節(jié)點暫存數(shù)據(jù),并攜帶數(shù)據(jù)進行移動,在能與其他節(jié)點建立鏈路時再將信息轉發(fā)出去。該策略充分利用了汽車節(jié)點高速運動的特點。在“存儲——攜帶——轉發(fā)”策略中,有兩個問題十分重要。第一個問題是在網(wǎng)絡發(fā)生斷連的狀態(tài)下如何選擇合適的節(jié)點對信息進行存儲攜帶再向前行駛;第二個問題是當攜帶有信息的節(jié)點與其他節(jié)點發(fā)生連通時,如何進行信息的發(fā)送。
【發(fā)明內容】
[0005]本發(fā)明目的是為了解決現(xiàn)有信息傳輸不能針對網(wǎng)絡斷連情況的問題,提供了一種基于MTPA算法的車聯(lián)網(wǎng)信息廣播。
[0006]本發(fā)明所述基于MTPA算法的車聯(lián)網(wǎng)信息廣播,其具體過程為:
[0007]步驟一、產(chǎn)生原中繼節(jié)點;
[0008]步驟二、中繼節(jié)點廣播一次信息包;
[0009]步驟三、中繼節(jié)點查詢發(fā)射圈內速度大于本身的汽車節(jié)點,計算該汽車節(jié)點的駛離發(fā)射圈時間,形成一個時間表time_list ;
[0010]步驟四、選擇步驟三獲取的時間表time_list中時間最小的汽車節(jié)點作為下任中繼節(jié)點,將其駛離發(fā)射圈的時間作為minimum_time,啟用計時器timer ;
[0011]步驟五、判斷計時器timer的時間是否小于minimum_time,如果否則執(zhí)行步驟六,如果是則執(zhí)行步驟八;
[0012]步驟六、中繼節(jié)點廣播一次信息包,然后將權限包發(fā)送給同向后繼中繼節(jié)點;[0013]步驟七、產(chǎn)生同向新任中繼節(jié)點,返回步驟二 ;
[0014]步驟八、中繼節(jié)點每走2R距離廣播一次信息包,并且不間斷發(fā)送查詢包檢測是否有新的汽車節(jié)點駛入發(fā)射圈;
[0015]步驟九、中繼節(jié)點判斷是否有新的汽車節(jié)點駛入發(fā)射圈,如果是則執(zhí)行步驟十,如果否則返回步驟五;
[0016]步驟十、中繼節(jié)點判斷新的汽車節(jié)點是否與本身同向,如果是則執(zhí)行步驟十一,如果否則執(zhí)行步驟十二;
[0017]步驟^--、計時器timer重新開始計時timer=0,更新時間表time_list,更新
minimum_time,然后返回步驟五;
[0018]步驟十二、中繼節(jié)點判斷信息包中的方向標志位是否為0,如果否則返回步驟五,如果是則執(zhí)行步驟十三;
[0019]步驟十三、中繼節(jié)點廣播一次信息包,然后將權限包發(fā)送給反向后繼中繼節(jié)點;
[0020]步驟十四、產(chǎn)生反向新任中繼節(jié)點,返回步驟二。
[0021]本發(fā)明的優(yōu)點:本發(fā)明針對在網(wǎng)絡發(fā)生斷連狀態(tài)下如何選擇合適的節(jié)點對信息進行儲存攜帶再向前行駛的問題,利用了最小時間預測法來進行后繼攜帶信息向前行駛的節(jié)點的選擇。針對當攜帶帶有信息的節(jié)點與其他節(jié)點發(fā)生連通時如何進行信息發(fā)送的問題,采用廣播的方式對信息進行發(fā)送。
[0022]1、MTPA算法秉承“存儲一攜帶一轉發(fā)”和“綜合加權”的思想,能夠有效地解決網(wǎng)絡斷連情況下的信息發(fā)布問題;
[0023]2、網(wǎng)絡能達到節(jié)點覆蓋率高、端到端延遲小、網(wǎng)絡抖動率小、網(wǎng)絡吞吐量小的效果,性能較好:只要在時間足夠長的情況下,能達到100%的節(jié)點覆蓋率。就端到端延遲而言,MTPA算法由于端到端延遲主要取決于傳輸時延和處理時延所導致的,而傳輸時延和處理時延主要取決于節(jié)點自身的傳輸速率和處理速率。就網(wǎng)絡抖動率而言,MTPA算法的網(wǎng)絡抖動率很小,網(wǎng)絡很穩(wěn)定。就網(wǎng)絡吞吐量而言,MTPA算法最大吞吐量為200多bit/s左右。
【專利附圖】
【附圖說明】
[0024]圖1是本發(fā)明所述基于MTPA算法的車聯(lián)網(wǎng)信息廣播的流程框圖;
[0025]圖2是利用NS2進行網(wǎng)絡模擬的基本流程框圖;
[0026]圖3是仿真過程的基本流程圖;
[0027]圖4是節(jié)點覆蓋率仿真結果示意圖,橫坐標表示使用的節(jié)點數(shù),縱坐標表示節(jié)點覆蓋率;
[0028]圖5是端到端延遲仿真結果示意圖,橫坐標表示使用的時間,縱坐標表示網(wǎng)絡延遲;
[0029]圖6是網(wǎng)絡抖動率仿真結果示意圖,橫坐標表示使用的時間,縱坐標表示網(wǎng)絡抖動率;
[0030]圖7是網(wǎng)絡吞吐量仿真結果示意圖,橫坐標表示使用的時間,縱坐標表示網(wǎng)絡吞吐率。
【具體實施方式】[0031]【具體實施方式】一:下面結合圖1說明本實施方式,本實施方式所述基于MTPA算法的車聯(lián)網(wǎng)信息廣播,其具體過程為:
[0032]步驟一、產(chǎn)生原中繼節(jié)點;
[0033]步驟二、中繼節(jié)點廣播一次信息包;
[0034]步驟三、中繼節(jié)點查詢發(fā)射圈內速度大于本身的汽車節(jié)點,計算該汽車節(jié)點的駛離發(fā)射圈時間,形成一個時間表time_list ;
[0035]步驟四、選擇步驟三獲取的時間表time_list中時間最小的汽車節(jié)點作為下任中繼節(jié)點,將其駛離發(fā)射圈的時間作為minimum_time,啟用計時器timer ;
[0036]步驟五、判斷計時器timer的時間是否小于minimum_time,如果否則執(zhí)行步驟六,如果是則執(zhí)行步驟八;
[0037]步驟六、中繼節(jié)點廣播一次信息包,然后將權限包發(fā)送給同向后繼中繼節(jié)點;
[0038]步驟七、產(chǎn)生同向新任中繼節(jié)點,返回步驟二 ;
[0039]步驟八、中繼節(jié)點每走2R距離廣播一次信息包,并且不間斷發(fā)送查詢包檢測是否有新的汽車節(jié)點駛入發(fā)射圈;
[0040]步驟九、中繼節(jié)點判斷是否有新的汽車節(jié)點駛入發(fā)射圈,如果是則執(zhí)行步驟十,如果否則返回步驟五;
[0041]步驟十、中繼節(jié)點判斷新的汽車節(jié)點是否與本身同向,如果是則執(zhí)行步驟十一,如果否則執(zhí)行步驟十二;
[0042]步驟^--、計時器timer重新開始計時timer=0,更新時間表time_list,更新
minimum_time,然后返回步驟五;
[0043]步驟十二、中繼節(jié)點判斷信息包中的方向標志位是否為0,如果否則返回步驟五,如果是則執(zhí)行步驟十三;
[0044]步驟十三、中繼節(jié)點廣播一次信息包,然后將權限包發(fā)送給反向后繼中繼節(jié)點;
[0045]步驟十四、產(chǎn)生反向新任中繼節(jié)點,返回步驟二。
[0046]本實施方式中,中繼節(jié)點為攜帶有用的信息包且能對有用的信息包進行發(fā)布的汽車節(jié)點。汽車節(jié)點為滿足一定條件的行駛在道路上的汽車車輛。原中繼節(jié)點為在路上突然產(chǎn)生的中繼節(jié)點。
[0047]【具體實施方式】二:本實施方式對實施方式一作進一步說明,步驟八所述的查詢包包括From_ID數(shù)據(jù)包、Time數(shù)據(jù)包和Check數(shù)據(jù)包;
[0048]From_ID數(shù)據(jù)包的長度為4B,用于指明查詢包的發(fā)出者;
[0049]Time數(shù)據(jù)包的長度為1B,用于指明查詢包產(chǎn)生的時間;
[0050]Check數(shù)據(jù)包的長度為1B,用于指明查詢包的查詢作用。
[0051]【具體實施方式】三:本實施方式對實施方式一作進一步說明,步驟二、步驟六和步驟十三中所述的信息包相同,包括From_ID數(shù)據(jù)包、Time數(shù)據(jù)包、Direction數(shù)據(jù)包和Data數(shù)據(jù)包;
[0052]From_ID數(shù)據(jù)包的長度為4B,用于指明信息包的發(fā)出者;
[0053]Time數(shù)據(jù)包的長度為1B,用于指明信息包產(chǎn)生的時間;
[0054]Direction數(shù)據(jù)包的長度為Ibit,用于指明正反方向是否都有中繼節(jié)點的存在,其中DirectionO表明只有正相有中繼節(jié)點,DirectionO表明正反兩個方向都有中繼節(jié)點的存在;
[0055]Data數(shù)據(jù)包的長度為995B,用于指明信息包要發(fā)送的信息。
[0056]【具體實施方式】四:本實施方式對實施方式一作進一步說明,步驟六和步驟十三所述的權限包相同,包括From_ID數(shù)據(jù)包、To_ID數(shù)據(jù)包和Flag數(shù)據(jù)包;
[0057]From_ID數(shù)據(jù)包的長度為4B,用于指明后繼中繼節(jié)點權限包的發(fā)出者;
[0058]To_ID數(shù)據(jù)包的長度為4B,用于指明后繼中繼節(jié)點權限包的接收者;
[0059]Flag數(shù)據(jù)包的長度為1B,用于指明后繼中繼節(jié)點權限包的作用,第1-4位指示原中繼節(jié)點的中繼權限取消,第5-6位指示新任中繼節(jié)點獲得中繼權限。
[0060]【具體實施方式】五:本實施方式對實施方式一作進一步說明,本實施方式所述為【具體實施方式】一所述過程的仿真,采用NS2仿真軟件。仿真過程如圖2所示。由圖可知,整個模擬過程主要分為三個部分:一是修改源代碼,二是編寫Tcl模擬腳本,三是分析結果。
[0061]此外,NS2只是網(wǎng)絡模擬工具,要想進行一個完整的網(wǎng)絡模擬仿真分析,還必須要有其他的一些工具。首先,必須要有原始的節(jié)點數(shù)據(jù)信息(主要是各節(jié)點初始的位置和速度),在仿真過程中這部分是由作者編寫的一個Java隨機程序生成的。其次,由NS2記錄的網(wǎng)絡數(shù)據(jù)必須要對其進行分析,在仿真過程中這部分是由awk程序完成的。最后,awk程序提取的數(shù)據(jù)應該用圖形的形式來呈現(xiàn)出來以方便觀察網(wǎng)絡的實際情況,在仿真過程中這部分是由gnuplot繪圖工具完成的??偨Y起來,仿真過程的整體流程可以用圖3來呈現(xiàn)。
[0062]仿真結果與分析如下:仿真參數(shù)與場景設置參數(shù)表格如表I所示。
[0063]表I仿真及場景設置主要參數(shù)
[0064]
【權利要求】
1.基于MTPA算法的車聯(lián)網(wǎng)信息廣播,其特征在于,其具體過程為: 步驟一、產(chǎn)生原中繼節(jié)點; 步驟二、中繼節(jié)點廣播一次信息包; 步驟三、中繼節(jié)點查詢發(fā)射圈內速度大于本身的汽車節(jié)點,計算該汽車節(jié)點的駛離發(fā)射圈時間,形成一個時間表time_list ; 步驟四、選擇步驟三獲取的時間表time_list中時間最小的汽車節(jié)點作為下任中繼節(jié)點,將其駛離發(fā)射圈的時間作為minimum_time,啟用計時器timer ; 步驟五、判斷計時器timer的時間是否小于minimum_time,如果否則執(zhí)行步驟六,如果是則執(zhí)行步驟八; 步驟六、中繼節(jié)點廣播一次信息包,然后將權限包發(fā)送給同向后繼中繼節(jié)點; 步驟七、產(chǎn)生同向新任中繼節(jié)點,返回步驟二 ; 步驟八、中繼節(jié)點每走2R距離廣播一次信息包,并且不間斷發(fā)送查詢包檢測是否有新的汽車節(jié)點駛入發(fā)射圈; 步驟九、中繼節(jié)點判斷是否有新的汽車節(jié)點駛入發(fā)射圈,如果是則執(zhí)行步驟十,如果否則返回步驟五; 步驟十、中繼節(jié)點判斷新`的汽車節(jié)點是否與本身同向,如果是則執(zhí)行步驟十一,如果否則執(zhí)行步驟十二; 步驟^--、計時器timer重新開始計時timer=0,更新時間表time_list,更新minimum_time,然后返回步驟五; 步驟十二、中繼節(jié)點判斷信息包中的方向標志位是否為O,如果否則返回步驟五,如果是則執(zhí)行步驟十三; 步驟十三、中繼節(jié)點廣播一次信息包,然后將權限包發(fā)送給反向后繼中繼節(jié)點; 步驟十四、產(chǎn)生反向新任中繼節(jié)點,返回步驟二。
2.根據(jù)權利要求1所述基于MTPA算法的車聯(lián)網(wǎng)信息廣播,其特征在于,步驟八所述的查詢包包括From_ID數(shù)據(jù)包、Time數(shù)據(jù)包和Check數(shù)據(jù)包; From_ID數(shù)據(jù)包的長度為4B,用于指明查詢包的發(fā)出者; Time數(shù)據(jù)包的長度為1B,用于指明查詢包產(chǎn)生的時間; Check數(shù)據(jù)包的長度為1B,用于指明查詢包的查詢作用。
3.根據(jù)權利要求1所述基于MTPA算法的車聯(lián)網(wǎng)信息廣播,其特征在于,步驟六和步驟十三中所述的信息包相同,包括From_ID數(shù)據(jù)包、Time數(shù)據(jù)包、Direction數(shù)據(jù)包和Data數(shù)據(jù)包; From_ID數(shù)據(jù)包的長度為4B,用于指明信息包的發(fā)出者; Time數(shù)據(jù)包的長度為1B,用于指明信息包產(chǎn)生的時間; Direction數(shù)據(jù)包的長度為Ibit,用于指明正反方向是否都有中繼節(jié)點的存在,其中DirectionO表明只有正相有中繼節(jié)點,DirectionO表明正反兩個方向都有中繼節(jié)點的存在; Data數(shù)據(jù)包的長度為995B,用于指明信息包要發(fā)送的信息。
4.根據(jù)權利要求1所述基于MTPA算法的車聯(lián)網(wǎng)信息廣播,其特征在于,步驟六和步驟十三所述的權限包相同,包括From_ID數(shù)據(jù)包、To_ID數(shù)據(jù)包和Flag數(shù)據(jù)包;From_ID數(shù)據(jù)包的長度為4B,用于指明后繼中繼節(jié)點權限包的發(fā)出者; To_ID數(shù)據(jù)包的長度為4B,用于指明后繼中繼節(jié)點權限包的接收者; Flag數(shù)據(jù)包的長度為1B,用于指明后繼中繼節(jié)點權限包的作用,第1-4位指示原中繼節(jié)點的中繼權限取消,第5-6位指示新任中繼節(jié)點獲得中繼權限。
【文檔編號】H04L29/08GK103747063SQ201310737878
【公開日】2014年4月23日 申請日期:2013年12月27日 優(yōu)先權日:2013年12月27日
【發(fā)明者】崔剛, 付忠傳, 暴建民, 潘波, 王秀峰, 鄒炳松, 朱東杰, 張策, 張必英, 季春光 申請人:哈爾濱工業(yè)大學