本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是指一種聯(lián)合路由度量與部分重疊信道分配方法。
背景技術(shù):
無線通信多使用電磁波來傳輸信息,通常信號都占用較寬頻帶,而能量主要集中在較窄的頻帶范圍內(nèi)。比如2.4GHz ISM(industrial,scientific,medical)頻段802.11b/g共劃分為14條信道,通常只使用前11條信道。相鄰信道的中心頻率間隔為5MHz,而每條信道占用的頻譜帶寬為22MHz,因此信道間隔(即中心頻率所代表的信道號的差值)必須達(dá)到5及以上時頻譜才不會重疊,這樣的信道稱為正交信道(orthogonal channel)。802.11b/g最多可用的正交信道為3條,頻譜之間有交疊的信道稱為部分重疊信道POC(partially overlapped channel)。傳統(tǒng)的無線網(wǎng)絡(luò)設(shè)計認(rèn)為POC帶來的鄰信道干擾(adjacent channel interference)嚴(yán)重影響節(jié)點(diǎn)間的正常通信,因此通常為相隔很近的并行通信的2個節(jié)點(diǎn)分配正交信道。但是頻譜資源的稀缺使得網(wǎng)絡(luò)很難避免為相隔很近的鏈路分配相同信道。由此導(dǎo)致的共信道干擾(co-channel interference)會降低數(shù)據(jù)傳輸速率,減少網(wǎng)絡(luò)中的并行傳輸數(shù),引發(fā)WMN容量下降等性能問題。隨著認(rèn)知無線電(cognitive radio)和軟件定義無線電(software defined radio)的發(fā)展,POC的干擾控制問題能夠得到有效解決,節(jié)點(diǎn)可以根據(jù)自身觀察到的干擾動態(tài)選擇信道,從而增加網(wǎng)絡(luò)中的并行傳輸數(shù),提升網(wǎng)絡(luò)的整體吞吐量性能。
多射頻多信道環(huán)境下的部分重疊信道的信道分配算法(Partially overlapped channel assignment for MRMC-WMN,POCA)是借用加權(quán)沖突圖的概念,根據(jù)節(jié)點(diǎn)的業(yè)務(wù)負(fù)載確定信道分配順序的方法。該方法認(rèn)為,距離網(wǎng)關(guān)越近的鏈路通常負(fù)載越重,在進(jìn)行信道分配時應(yīng)給予優(yōu)先考慮。POCA的不足之處有:
其一,只考慮了利用部分重疊信道的信道分配算法,沒有考慮其與路由度量的結(jié)合,一般在信道分配算法的設(shè)計問題中,路由度量和信道分配算法是具有高度的依賴關(guān)系的,優(yōu)化信道分配順序的衡量公式在障礙物衰減模型下仍可以優(yōu)化;
其二,增強(qiáng)型路由度量中的協(xié)同因子沒有量化成連續(xù)的數(shù)值,不利于計算且容易出現(xiàn)度量值相等的情況。
其三,增強(qiáng)型路由度量的路由開銷過大。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明實施例的目的在于提出一種聯(lián)合路由度量與部分重疊信道分配方法,能夠進(jìn)一步優(yōu)化信道分配順序,并降低路由開銷。
基于上述目的本發(fā)明實施例提供的聯(lián)合路由度量與部分重疊信道分配方法,包括:
確定信道中源節(jié)點(diǎn)與目的節(jié)點(diǎn)的位置;
為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道;
源節(jié)點(diǎn)向其多播發(fā)送路由請求報文,直到到達(dá)到目的節(jié)點(diǎn);
收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地回復(fù)路由應(yīng)答報文;
收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地更新路由表。
在一些可選實施方式中,為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道包括:
根據(jù)物理鏈路的拓?fù)浣Y(jié)構(gòu)計算每個節(jié)點(diǎn)的優(yōu)先度,并按照優(yōu)先度由高到低將每個節(jié)點(diǎn)與其鄰居節(jié)點(diǎn)接口綁定;
確定各接收端的信號強(qiáng)度與每個鏈路上連續(xù)取值的協(xié)同因子,并根據(jù)各協(xié)同因子的取值判斷是否為對應(yīng)鏈路分配信道。
在一些可選實施方式中,所述每個鏈路上連續(xù)取值的協(xié)同因子為:在協(xié)同結(jié)構(gòu)中,為接收節(jié)點(diǎn)的信號接收門限與接收節(jié)點(diǎn)的實際接收功率之比;在非協(xié)同結(jié)構(gòu)中,為1;所述根據(jù)各協(xié)同因子的取值判斷是否為對應(yīng)鏈路分配信道為:僅為大于零小于等于一的協(xié)同因子對應(yīng)的鏈路分配信道。
在一些可選實施方式中,根據(jù)各協(xié)同因子的取值判斷是否為對應(yīng)鏈路分配信道之后,確定各鏈路分配優(yōu)先級,并按照分配優(yōu)先級由高到低,以已分配信道的鏈路對其干擾值最小為目標(biāo)為鏈路分配信道,其中,分配優(yōu)先級為該鏈路兩端點(diǎn)的鄰居節(jié)點(diǎn)數(shù),與距離網(wǎng)關(guān)的最小跳數(shù)與對應(yīng)協(xié)同因子之積之比。
在一些可選實施方式中,所述路由請求報文包括源節(jié)點(diǎn)和目的節(jié)點(diǎn)的網(wǎng)絡(luò)層地址信息;所述源節(jié)點(diǎn)向其多播發(fā)送路由請求報文,直到到達(dá)到目的節(jié)點(diǎn)為:源節(jié)點(diǎn)向鄰居節(jié)點(diǎn)多播發(fā)送路由請求報文,鄰居節(jié)點(diǎn)不斷轉(zhuǎn)發(fā)直到找到目的節(jié)點(diǎn);同時,建立基于轉(zhuǎn)發(fā)過程的反向路由表,并將源節(jié)點(diǎn)到路由鏈路的某一節(jié)點(diǎn)的鏈路值存入該鏈路的反向路由表中。
在一些可選實施方式中,收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地回復(fù)路由應(yīng)答報文包括:
收到路由請求報文的節(jié)點(diǎn)根據(jù)路由請求報文確定上一跳節(jié)點(diǎn)到本節(jié)點(diǎn)的目的地址和路由度量,其中,路由度量為對應(yīng)鏈路的協(xié)同因子與期望發(fā)射次數(shù)之積;
當(dāng)本節(jié)點(diǎn)為目的節(jié)點(diǎn)時,同時計算多條路徑的路由度量,使用反向路由通過路由度量最小的路徑向源節(jié)點(diǎn)發(fā)送路由應(yīng)答報文,并將目的節(jié)點(diǎn)到路由鏈路中的某一節(jié)點(diǎn)的鏈路值存入正向路由表中;若本節(jié)點(diǎn)不是第一次收到路由請求報文且其路由度量小于已回復(fù)路由請求報文的路由度量,則回復(fù)路由應(yīng)答報文,否則丟棄該路由請求報文。
在一些可選實施方式中,收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地回復(fù)路由應(yīng)答報文還包括;
當(dāng)本節(jié)點(diǎn)非目的節(jié)點(diǎn)但路由表中有到目的節(jié)點(diǎn)的路由時,將路由表中本節(jié)點(diǎn)到目的節(jié)點(diǎn)的路由與路由請求報文中源節(jié)點(diǎn)到本節(jié)點(diǎn)的路由相加,得到源節(jié)點(diǎn)到目的節(jié)點(diǎn)路由,并根據(jù)反向路由回復(fù)路由應(yīng)答報文;
當(dāng)本節(jié)點(diǎn)非目的節(jié)點(diǎn)且路由表中沒有到目的節(jié)點(diǎn)的路由時,轉(zhuǎn)發(fā)該路由請求報文,當(dāng) 路由請求報文從源節(jié)點(diǎn)轉(zhuǎn)發(fā)到不同節(jié)點(diǎn)時,所經(jīng)過的節(jié)點(diǎn)均建立到源節(jié)點(diǎn)的反向路由;若本節(jié)點(diǎn)第一次收到路由應(yīng)答報文或該路由請求報文的單跳路由度量小于以前收到的路由請求報文單跳度量,則更新反向路由并將到各鄰居節(jié)點(diǎn)寫入到路由請求報文中同時轉(zhuǎn)發(fā)路由請求報文,否則丟棄該路由請求報文。
在一些可選實施方式中,收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地更新路由表包括:
當(dāng)本節(jié)點(diǎn)為源節(jié)點(diǎn)時,計算路由度量保存到正向路由表項中,并按照路由向目的節(jié)點(diǎn)發(fā)送數(shù)據(jù)分組。若本節(jié)點(diǎn)第一次收到路由應(yīng)答報文,則將該條路由保存到路由表中;如果本節(jié)點(diǎn)不是第一次收到路由應(yīng)答報文且該路由應(yīng)答報文的路由度量小于之前收到的路由應(yīng)答報文的路由度量,則將該條路由更新到路由表中,否則丟棄該路由應(yīng)答報文;
當(dāng)本節(jié)點(diǎn)非源節(jié)點(diǎn)時,將路由應(yīng)答報文中的路由與本節(jié)點(diǎn)中保存的反向路由相減作為本節(jié)點(diǎn)到目的節(jié)點(diǎn)正向路由,并使本節(jié)點(diǎn)按照反向路徑向下一跳節(jié)點(diǎn)轉(zhuǎn)發(fā)路由應(yīng)答報文。
在一些可選實施方式中,收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地更新路由表之后還包括:每個包含路由的節(jié)點(diǎn)定期廣播握手報文來維護(hù)路由,其中,當(dāng)握手報文發(fā)現(xiàn)鏈路開路時,發(fā)送錯誤報文通知因鏈路斷開而不可達(dá)的節(jié)點(diǎn)刪除相應(yīng)記錄、或進(jìn)行修復(fù)。
從上面所述可以看出,本發(fā)明實施例提供的聯(lián)合路由度量與部分重疊信道分配方法,通過為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道、源節(jié)點(diǎn)向其多播發(fā)送路由請求報文、收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量選擇性地回復(fù)路由應(yīng)答報文、收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量選擇性地更新路由表的技術(shù)手段,在保證連通性的情況下,改進(jìn)了路由度量,提高了整體網(wǎng)絡(luò)的靈活性和動態(tài)性,提升了吞吐量,降低了路由開銷。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的聯(lián)合路由度量與部分重疊信道分配方法的流程圖;
圖2為本發(fā)明提供的聯(lián)合路由度量與部分重疊信道分配方法的實施例的詳細(xì)流程圖;
圖3為本發(fā)明提供的聯(lián)合路由度量與部分重疊信道分配方法中,為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道的流程圖;
圖4為本發(fā)明提供的聯(lián)合路由度量與部分重疊信道分配方法中,收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地回復(fù)路由應(yīng)答報文的流程圖;
圖5為本發(fā)明提供的聯(lián)合路由度量與部分重疊信道分配方法中,收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量選擇性地更新路由表的流程圖;
圖6為本發(fā)明提供的執(zhí)行所述聯(lián)合路由度量與部分重疊信道分配方法的裝置的一個實施例的硬件結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實施例,并參照附圖,對本發(fā)明實施例進(jìn)一步詳細(xì)說明。
需要說明的是,本發(fā)明實施例中所有使用“第一”和“第二”的表述均是為了區(qū)分兩個相同名稱非相同的實體或者非相同的參量,可見“第一”“第二”僅為了表述的方便,不應(yīng)理解為對本發(fā)明實施例的限定,后續(xù)實施例對此不再一一說明。
基于上述目的,本發(fā)明實施例的第一個方面,提出了一種能夠針對不同用戶或不同類型的用戶進(jìn)行數(shù)據(jù)推薦的聯(lián)合路由度量與部分重疊信道分配方法的第一個實施例。圖1與圖2所示的是本發(fā)明提供的聯(lián)合路由度量與部分重疊信道分配方法的第一個實施例的流程示意圖。
所述聯(lián)合路由度量與部分重疊信道分配方法,可選的,應(yīng)用于服務(wù)器,包括:
步驟S101,確定信道中源節(jié)點(diǎn)與目的節(jié)點(diǎn)的位置。
當(dāng)源節(jié)點(diǎn)S需要向目的節(jié)點(diǎn)D發(fā)送數(shù)據(jù)時,源節(jié)點(diǎn)S發(fā)起尋路過程。
步驟S103,為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道。
步驟S101與步驟S103的詳細(xì)流程圖如圖3所示。依據(jù)物理拓?fù)浣Y(jié)構(gòu)計算degree值(即前述的優(yōu)先度),擁有較高degree值的節(jié)點(diǎn)優(yōu)先與鄰居節(jié)點(diǎn)進(jìn)行接口綁定。初始化信道,各接收端獲取信號強(qiáng)度,計算并確定協(xié)同因子β;網(wǎng)絡(luò)中任一鏈路β值是否超出閾值(0,1],若某鏈路的β值超出閾值(β值大于1則說明該鏈路不能正確接收分組),則不給該鏈路分配信道。
對于協(xié)同因子βXY,本發(fā)明給出具體的計算方法如下:
其中βXY表示任一鏈路XY(節(jié)點(diǎn)X,節(jié)點(diǎn)Y構(gòu)成的鏈路)的協(xié)同因子,當(dāng)且僅當(dāng)擁有協(xié)同結(jié)構(gòu)(CoS)時βXY才有值,無協(xié)同結(jié)構(gòu)時βXY=1,一般βXY∈(0,1];RxthreshY表示接收節(jié)點(diǎn)Y的信號接收門限,即節(jié)點(diǎn)Y接收到的信號強(qiáng)度高于這個門限值,分組才可以被正確接收;表示節(jié)點(diǎn)Y接收來自節(jié)點(diǎn)X的實際接收信號的功率。
驗證網(wǎng)絡(luò)中任一鏈路β值是否超出閾值βXY∈(0,1],若某鏈路超出閾值,則說明該鏈路上的分組不可以被正確接收,則不為該鏈路分配信道,將其從待分配信道的鏈路集中刨除;接著計算鏈路信道分配順序,本發(fā)明實施例優(yōu)化后的計算公式如下:
其中num_neighbour表示該鏈路兩個端點(diǎn)的鄰居節(jié)點(diǎn)數(shù);min_hop_count表示距離網(wǎng)關(guān)的最小跳數(shù);βXY表示任一鏈路XY(節(jié)點(diǎn)X,節(jié)點(diǎn)Y構(gòu)成的鏈路)的協(xié)同因子,且一般βXY∈(0,1],βXY值越接近1,協(xié)同因子越強(qiáng)同時鏈路XY的傳輸能力越低,Rank(lXY)的 信道分配優(yōu)先級就越低;特別地,βXY→0表示接收節(jié)點(diǎn)Y的實際接收功率很大,可以忽略障礙物對該鏈路上吞吐量的影響,Rank(lXY)→∞表示因其擁有協(xié)同結(jié)構(gòu),干擾問題較為復(fù)雜,故該鏈路分配信道具有最高優(yōu)先級。Rank(lXY)用于量化鏈路阻塞的可能性,擁有越高的Rank(lXY)值的鏈路越可能成為系統(tǒng)容量瓶頸,也因此在分配信道時具有更高的優(yōu)先級。
信道分配順序按Rank(lXY)降序排列,并計算已分配信道的鏈路對其干擾值,選擇最小值進(jìn)行信道分配。
步驟S105,源節(jié)點(diǎn)向其多播發(fā)送路由請求報文,直到到達(dá)到目的節(jié)點(diǎn)。
節(jié)點(diǎn)向鄰居節(jié)點(diǎn)多播RREQ報文(即路由請求報文),其中記錄著源節(jié)點(diǎn)和目的節(jié)點(diǎn)的網(wǎng)絡(luò)層地址信息,鄰居節(jié)點(diǎn)不斷轉(zhuǎn)發(fā)RREQ直到找到目的節(jié)點(diǎn),轉(zhuǎn)發(fā)過程中建立反向路由表,將源節(jié)點(diǎn)到路由鏈路的某一節(jié)點(diǎn)的鏈路值存入該鏈路的反向路由表中。
步驟S107,收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地回復(fù)路由應(yīng)答報文。
步驟S107的詳細(xì)流程圖如圖4所示。節(jié)點(diǎn)收到RREQ報文后的處理方法。節(jié)點(diǎn)從RREQ報文的單跳信息域中找到上一跳節(jié)點(diǎn)到本節(jié)點(diǎn)的目的地址和路由度量。
路由度量計算方法如下:
powerETXXY=βXY·ETXXY (2.4)
其中,powerETXXY表示路由度量,ETXXY表示鏈路XY之間的期望發(fā)射次數(shù)。在OAM下,如果不同鏈路上的ETX相同,可以通過β值來進(jìn)一步度量。
βXY表示任一鏈路XY(節(jié)點(diǎn)X,節(jié)點(diǎn)Y構(gòu)成的鏈路)的協(xié)同因子,且一般βXY∈(0,1],當(dāng)且僅當(dāng)擁有協(xié)同結(jié)構(gòu)(CoS)時βXY才有值,無協(xié)同結(jié)構(gòu)時βXY=1,βXY值越接近1,協(xié)同因子越強(qiáng)同時鏈路XY的傳輸能力越低。
如果本節(jié)點(diǎn)是目的節(jié)點(diǎn),則計算多條路徑的路由度量,比較并選出多條路徑中powerETXXY最小值的路徑,并通過反向路由向源節(jié)點(diǎn)發(fā)送RREP報文(即路由應(yīng)答報文),將目的節(jié)點(diǎn)到路由鏈路中的某一節(jié)點(diǎn)的鏈路β·ETX值存入正向路由表中;如果本節(jié)點(diǎn)不是第一次收到RREQ報文,且其路由度量優(yōu)于已回復(fù)RREQ報文的路由度量,則回復(fù)RREP報文,否則丟棄RREQ報文。
如果本節(jié)點(diǎn)不是目的節(jié)點(diǎn),但其路由表中有到目的節(jié)點(diǎn)的路由,則將路由表中本節(jié)點(diǎn)到目的節(jié)點(diǎn)的路由R與RREQ報文中源節(jié)點(diǎn)到本節(jié)點(diǎn)的路由R相加,得到源節(jié)點(diǎn)到目的節(jié)點(diǎn)路由R;將路由表中本節(jié)點(diǎn)到目的節(jié)點(diǎn)的路由β·ETX和RREQ中源節(jié)點(diǎn)到本節(jié)點(diǎn)的路由β·ETX相加,得到源節(jié)點(diǎn)到目的節(jié)點(diǎn)路由β·ETX,并且根據(jù)反向路由直接回復(fù)RREP報文;如果中間節(jié)點(diǎn)的路由表中沒有到目的節(jié)點(diǎn)的路由,則需要轉(zhuǎn)發(fā)RREQ報文,當(dāng)RREQ報文從一個源節(jié)點(diǎn)轉(zhuǎn)發(fā)到不同節(jié)點(diǎn)時,沿途所經(jīng)過的節(jié)點(diǎn)都要自動建立到源節(jié)點(diǎn)的反向路由;如果本節(jié)點(diǎn)第一次收到RREP報文或該RREQ報文的單跳路由度量優(yōu)于以前收 到的RREQ報文單跳度量,則先更新反向路由,路由R和β·ETX,將到各鄰居節(jié)點(diǎn)β·ETX寫入到RREQ報文中并轉(zhuǎn)發(fā)RREQ報文;本節(jié)點(diǎn)不是第一次收到RREQ報文并且該RREQ報文的單跳度量沒有優(yōu)于以前收到的RREQ報文單跳度量,則丟棄RREQ報文。
步驟S109,收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地更新路由表。
步驟S109的詳細(xì)流程圖如圖5所示。節(jié)點(diǎn)收到RREP報文后的處理流程。如果本節(jié)點(diǎn)是源節(jié)點(diǎn),當(dāng)本節(jié)點(diǎn)收到RREP報文后,計算路由度量powerETXXY=βXY·ETXXY,保存路由到正向路由表項中,按照路由向目的節(jié)點(diǎn)發(fā)送數(shù)據(jù)分組。如果本節(jié)點(diǎn)第一次收到RREP報文,則將該條路由保存到路由表中;如果該節(jié)點(diǎn)不是第一次收到RREP,則當(dāng)該RREP報文的路由度量優(yōu)于之前收到的RREP報文的路由度量,則將該條路由更新到路由表中,否則丟棄該RREP報文。如果本節(jié)點(diǎn)不是源節(jié)點(diǎn),則將RREP報文中的路由R與本節(jié)點(diǎn)中保存的反向路由中的R相減,作為本節(jié)點(diǎn)到目的節(jié)點(diǎn)正向路由的R;將RREP報文中的路由β·ETX與本節(jié)點(diǎn)中保存的反向路由中的β·ETX相減,作為本節(jié)點(diǎn)到目的節(jié)點(diǎn)正向路由的R。本節(jié)點(diǎn)按照反向路徑向下一跳節(jié)點(diǎn)轉(zhuǎn)發(fā)RREP報文。
可選地,每個包含路由的節(jié)點(diǎn)定期廣播hello報文(即握手報文)來維護(hù)路由,一旦發(fā)現(xiàn)某一個鏈路斷開,節(jié)點(diǎn)就發(fā)送ERROR報文通知那些因鏈路斷開而不可達(dá)的節(jié)點(diǎn)刪除相應(yīng)的記錄或者對已存在的路由進(jìn)行修復(fù)。
本發(fā)明實施例的要點(diǎn)在于:一方面,將協(xié)同因子連續(xù)值化,具體定義了協(xié)同因子 在初始化信道時鏈路XY利用驗證β值是否超過閾值來判定是否需要為其分配信道,來確定網(wǎng)絡(luò)的連通性,快速獲取網(wǎng)絡(luò)物理拓?fù)浣Y(jié)構(gòu)的變化;另一方面,在障礙物衰減模型(obstacle attenuation model)下,利用連續(xù)值的協(xié)同因子β優(yōu)化路由度量powerETXXY=βXY·ETXXY來建立路由;同時連續(xù)值的協(xié)同因子β也用來優(yōu)化鏈路信道分配的順序減小了聯(lián)合信道分配和路由度量設(shè)計方法的開銷。
從上述實施例可以看出,本發(fā)明實施例提供的聯(lián)合路由度量與部分重疊信道分配方法,通過為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道、源節(jié)點(diǎn)向其多播發(fā)送路由請求報文、收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量選擇性地回復(fù)路由應(yīng)答報文、收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量選擇性地更新路由表的技術(shù)手段,在保證連通性的情況下,改進(jìn)了路由度量,提高了整體網(wǎng)絡(luò)的靈活性和動態(tài)性,提升了吞吐量,降低了路由開銷。
本發(fā)明實施例還提出了一種能夠針對不同用戶或不同類型的用戶進(jìn)行數(shù)據(jù)推薦的聯(lián)合路由度量與部分重疊信道分配方法的第二個實施例。
所述聯(lián)合路由度量與部分重疊信道分配方法,可選的,應(yīng)用于服務(wù)器,包括:
假設(shè)在一個1000m*1000m的區(qū)域中有9個節(jié)點(diǎn)(3*3網(wǎng)格狀分布),其中1個節(jié)點(diǎn)上安裝4個射頻接口,其他節(jié)點(diǎn)都是3個射頻接口,共有12個部分重疊信道可供分配。信 道帶寬設(shè)為2Mbps,數(shù)據(jù)分組長度為512byte,發(fā)送速率是200kbps。同信道干擾范圍設(shè)置為550m,發(fā)射范圍是250m。該模型中鏈路AD在障礙物的遮擋下,信號衰減嚴(yán)重,兩條路由C-D-A的吞吐量可能比兩跳路由C-B-A要小。
步驟S101,確定信道中源節(jié)點(diǎn)與目的節(jié)點(diǎn)的位置。
節(jié)點(diǎn)S對節(jié)點(diǎn)D有通信需求,節(jié)點(diǎn)S發(fā)起尋路過程。
步驟S103,為源節(jié)點(diǎn)與目的節(jié)點(diǎn)分配信道。
依據(jù)物理拓?fù)浣Y(jié)構(gòu)計算degree值:
degreeC>degreeD=degreeH=degreeF=degreeB>degreeJ=degreeG=degreeA=degreeE
節(jié)點(diǎn)C有四個射頻接口,分別和鄰居節(jié)點(diǎn)B,D,F,H綁定;節(jié)點(diǎn)B有三個射頻接口,分別和鄰居節(jié)點(diǎn)A,C,E綁定;節(jié)點(diǎn)D有三個射頻接口,分別和鄰居節(jié)點(diǎn)A,C,J綁定;節(jié)點(diǎn)H有三個射頻接口,分別和鄰居節(jié)點(diǎn)G,C,J綁定;節(jié)點(diǎn)H有三個射頻接口,分別和鄰居節(jié)點(diǎn)G,C,J綁定;節(jié)點(diǎn)F有三個射頻接口,分別和鄰居節(jié)點(diǎn)E,C,G綁定。
利用信道分配順序度量公式(2.2)在未被分配信道的鏈路集中決定鏈路分配信道順序:
Rank(lHG)=Rank(lFG)>Rank(lHC)=Rank(lFC)
>Rank(lHJ)=Rank(lFE)>Rank(lCD)=Rank(lCB)
>Rank(lJD)=Rank(lEB)>Rank(lBA)=Rank(lDA)
利用公式(2.3)為鏈路l選擇最佳信道c時,鏈路l與其他已經(jīng)分配的信道的鏈路之間干擾和,選擇干擾和Intertot(c)最小值對應(yīng)的信道c分配給對應(yīng)鏈路l。
步驟S105,源節(jié)點(diǎn)向其多播發(fā)送路由請求報文,直到到達(dá)到目的節(jié)點(diǎn)。
節(jié)點(diǎn)G用分配好的信道向鄰居節(jié)點(diǎn)H、F發(fā)送RREQ報文,節(jié)點(diǎn)H、F路由表中沒有目的節(jié)點(diǎn)則用分配好的信道向鄰居節(jié)點(diǎn)C、E、J繼續(xù)轉(zhuǎn)發(fā)RREQ報文。
步驟S107,收到路由請求報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地回復(fù)路由應(yīng)答報文。
1)當(dāng)節(jié)點(diǎn)H收到來自節(jié)點(diǎn)G的RREQ報文后,從RREQ報文的單跳信息域中獲得上一跳節(jié)點(diǎn)到本節(jié)點(diǎn)的β,ETX信息,因為節(jié)點(diǎn)H不是目的節(jié)點(diǎn),且節(jié)點(diǎn)H的路由表中沒有到目的節(jié)點(diǎn)的路由,節(jié)點(diǎn)H需要向鄰居節(jié)點(diǎn)C、J轉(zhuǎn)發(fā)RREQ報文,自動建立節(jié)點(diǎn)C→H、J→H的反向路由;
2)當(dāng)節(jié)點(diǎn)C收到來自節(jié)點(diǎn)H的RREQ報文后,從RREQ報文的單跳信息域中獲得上一跳節(jié)點(diǎn)到本節(jié)點(diǎn)的β,ETX信息,因為節(jié)點(diǎn)C不是目的節(jié)點(diǎn),且節(jié)點(diǎn)C的路由表中沒有到目的節(jié)點(diǎn)的路由,節(jié)點(diǎn)C需要向鄰居節(jié)點(diǎn)D轉(zhuǎn)發(fā)RREQ報文,自動建立節(jié)點(diǎn)D→C的反向路由;
3)當(dāng)節(jié)點(diǎn)A收到來自節(jié)點(diǎn)B的RREQ報文后,從RREQ報文的單跳信息域中獲得節(jié)點(diǎn)B到本節(jié)點(diǎn)的β,ETX信息,節(jié)點(diǎn)A是目的節(jié)點(diǎn),計算整條路徑的路由度量powerETXXY=βXY·ETXXY,并且以反向路由向源節(jié)點(diǎn)回復(fù)RREP報文。
步驟S109,收到路由應(yīng)答報文的節(jié)點(diǎn)根據(jù)路由度量,選擇性地更新路由表。
節(jié)點(diǎn)C收到來自節(jié)點(diǎn)D的RREP報文,判斷節(jié)點(diǎn)C不是源節(jié)點(diǎn),向節(jié)點(diǎn)H轉(zhuǎn)發(fā)RREP報文,同理,節(jié)點(diǎn)H向節(jié)點(diǎn)G轉(zhuǎn)發(fā)RREP報文,判斷節(jié)點(diǎn)G為源節(jié)點(diǎn),計算多條路徑的路由度量powerETXGA比較大小,將值小的路由度量powerETXGA及其路由存入路由表中,丟棄powerETXGA值大的RREP報文,并根據(jù)上述步驟選擇的路徑,建立路由。
可選的,步驟S111,維護(hù)路由。
協(xié)議可以通過定期廣播HELLO報文來維護(hù)路由,一旦發(fā)現(xiàn)某一個鏈路斷開,節(jié)點(diǎn)就發(fā)送ERROR報文通知那些因鏈路斷開而不可達(dá)的節(jié)點(diǎn)刪除相應(yīng)的記錄或者對已存在的路由進(jìn)行修復(fù)。
本發(fā)明實施例重新定義了連續(xù)值的協(xié)同因子β,利用驗證β值是否超過閾值來判定是否需要為其分配信道,來確定網(wǎng)絡(luò)的連通性,快速獲取網(wǎng)絡(luò)物理拓?fù)浣Y(jié)構(gòu)的變化,減小開銷;同時,本發(fā)明實施例聯(lián)合了部分重疊信道分配和路由度量設(shè)計,利用引入的協(xié)同因子β優(yōu)化了路由度量和在障礙物衰減模型下鏈路信道分配的順序,利于計算和比較,一定程度上減小聯(lián)合路由度量和信道分配的路由開銷。
基于上述目的,本發(fā)明實施例的第二個方面,提出了一種執(zhí)行所述聯(lián)合路由度量與部分重疊信道分配方法的裝置的一個實施例。如圖6所示,為本發(fā)明提供的執(zhí)行所述聯(lián)合路由度量與部分重疊信道分配方法的裝置的一個實施例的硬件結(jié)構(gòu)示意圖。
如圖6所示,所述裝置包括:
一個或多個處理器901以及存儲器902,圖6中以一個處理器901為例。
所述執(zhí)行所述聯(lián)合路由度量與部分重疊信道分配方法的裝置還可以包括:輸入裝置903和輸出裝置904。
處理器901、存儲器902、輸入裝置903和輸出裝置904可以通過總線或者其他方式連接,圖6中以通過總線連接為例。
存儲器902作為一種非易失性計算機(jī)可讀存儲介質(zhì),可用于存儲非易失性軟件程序、非易失性計算機(jī)可執(zhí)行程序以及模塊,如本申請實施例中的所述聯(lián)合路由度量與部分重疊信道分配方法對應(yīng)的程序指令/模塊。處理器901通過運(yùn)行存儲在存儲器1002中的非易失性軟件程序、指令以及模塊,從而執(zhí)行服務(wù)器的各種功能應(yīng)用以及數(shù)據(jù)處理,即實現(xiàn)上述方法實施例的聯(lián)合路由度量與部分重疊信道分配方法。
存儲器902可以包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需要的應(yīng)用程序;存儲數(shù)據(jù)區(qū)可存儲根據(jù)數(shù)據(jù)推薦裝置的使用所創(chuàng)建的數(shù)據(jù)等。此外,存儲器902可以包括高速隨機(jī)存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他非易失性固態(tài)存儲器件。在一些實施例中,存儲器902可選包括相對于處理器901遠(yuǎn)程設(shè)置的存儲器,這些遠(yuǎn)程存儲器可以通過網(wǎng)絡(luò)連接至?xí)T用戶行為監(jiān)控裝置。上述網(wǎng)絡(luò)的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。
輸入裝置903可接收輸入的數(shù)字或字符信息,以及產(chǎn)生與數(shù)據(jù)推薦裝置的用戶設(shè)置以及功能控制有關(guān)的鍵信號輸入。輸出裝置904可包括顯示屏等顯示設(shè)備。
所述一個或者多個模塊存儲在所述存儲器902中,當(dāng)被所述一個或者多個處理器901執(zhí)行時,執(zhí)行上述任意方法實施例中的聯(lián)合路由度量與部分重疊信道分配方法。所述執(zhí)行所述聯(lián)合路由度量與部分重疊信道分配方法的裝置的實施例,其技術(shù)效果與前述任意方法實施例相同或者類似。
本申請實施例提供了一種非暫態(tài)計算機(jī)存儲介質(zhì),所述計算機(jī)存儲介質(zhì)存儲有計算機(jī)可執(zhí)行指令,該計算機(jī)可執(zhí)行指令可執(zhí)行上述任意方法實施例中的列表項操作的處理方法。所述非暫態(tài)計算機(jī)存儲介質(zhì)的實施例,其技術(shù)效果與前述任意方法實施例相同或者類似。
最后需要說明的是,本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機(jī)程序來指令相關(guān)硬件來完成,所述的程序可存儲于一計算機(jī)可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory,ROM)或隨機(jī)存儲記憶體(Random Access Memory,RAM)等。所述計算機(jī)程序的實施例,其技術(shù)效果與前述任意方法實施例相同或者類似。
此外,典型地,本公開所述的裝置、設(shè)備等可為各種電子終端設(shè)備,例如手機(jī)、個人數(shù)字助理(PDA)、平板電腦(PAD)、智能電視等,也可以是大型終端設(shè)備,如服務(wù)器等,因此本公開的保護(hù)范圍不應(yīng)限定為某種特定類型的裝置、設(shè)備。本公開所述的客戶端可以是以電子硬件、計算機(jī)軟件或兩者的組合形式應(yīng)用于上述任意一種電子終端設(shè)備中。
此外,根據(jù)本公開的方法還可以被實現(xiàn)為由CPU執(zhí)行的計算機(jī)程序,該計算機(jī)程序可以存儲在計算機(jī)可讀存儲介質(zhì)中。在該計算機(jī)程序被CPU執(zhí)行時,執(zhí)行本公開的方法中限定的上述功能。
此外,上述方法步驟以及系統(tǒng)單元也可以利用控制器以及用于存儲使得控制器實現(xiàn)上述步驟或單元功能的計算機(jī)程序的計算機(jī)可讀存儲介質(zhì)實現(xiàn)。
此外,應(yīng)該明白的是,本文所述的計算機(jī)可讀存儲介質(zhì)(例如,存儲器)可以是易失性存儲器或非易失性存儲器,或者可以包括易失性存儲器和非易失性存儲器兩者。作為例子而非限制性的,非易失性存儲器可以包括只讀存儲器(ROM)、可編程ROM(PROM)、電可編程ROM(EPROM)、電可擦寫可編程ROM(EEPROM)或快閃存儲器。易失性存儲器可以包括隨機(jī)存取存儲器(RAM),該RAM可以充當(dāng)外部高速緩存存儲器。作為例子而非限制性的,RAM可以以多種形式獲得,比如同步RAM(DRAM)、動態(tài)RAM(DRAM)、同步DRAM(SDRAM)、雙數(shù)據(jù)速率SDRAM(DDR SDRAM)、增強(qiáng)SDRAM(ESDRAM)、同步鏈路DRAM(SLDRAM)以及直接RambusRAM(DRRAM)。所公開的方面的存儲設(shè)備意在包括但不限于這些和其它合適類型的存儲器。
本領(lǐng)域技術(shù)人員還將明白的是,結(jié)合這里的公開所描述的各種示例性邏輯塊、模塊、電路和算法步驟可以被實現(xiàn)為電子硬件、計算機(jī)軟件或兩者的組合。為了清楚地說明硬件和軟件的這種可互換性,已經(jīng)就各種示意性組件、方塊、模塊、電路和步驟的功能對其進(jìn)行了一般性的描述。這種功能是被實現(xiàn)為軟件還是被實現(xiàn)為硬件取決于具體應(yīng)用以及施加給整個系統(tǒng)的設(shè)計約束。本領(lǐng)域技術(shù)人員可以針對每種具體應(yīng)用以各種方式來實現(xiàn)所述的 功能,但是這種實現(xiàn)決定不應(yīng)被解釋為導(dǎo)致脫離本公開的范圍。
結(jié)合這里的公開所描述的各種示例性邏輯塊、模塊和電路可以利用被設(shè)計成用于執(zhí)行這里所述功能的下列部件來實現(xiàn)或執(zhí)行:通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或其它可編程邏輯器件、分立門或晶體管邏輯、分立的硬件組件或者這些部件的任何組合。通用處理器可以是微處理器,但是可替換地,處理器可以是任何傳統(tǒng)處理器、控制器、微控制器或狀態(tài)機(jī)。處理器也可以被實現(xiàn)為計算設(shè)備的組合,例如,DSP和微處理器的組合、多個微處理器、一個或多個微處理器結(jié)合DSP核、或任何其它這種配置。
結(jié)合這里的公開所描述的方法或算法的步驟可以直接包含在硬件中、由處理器執(zhí)行的軟件模塊中或這兩者的組合中。軟件模塊可以駐留在RAM存儲器、快閃存儲器、ROM存儲器、EPROM存儲器、EEPROM存儲器、寄存器、硬盤、可移動盤、CD-ROM、或本領(lǐng)域已知的任何其它形式的存儲介質(zhì)中。示例性的存儲介質(zhì)被耦合到處理器,使得處理器能夠從該存儲介質(zhì)中讀取信息或向該存儲介質(zhì)寫入信息。在一個替換方案中,所述存儲介質(zhì)可以與處理器集成在一起。處理器和存儲介質(zhì)可以駐留在ASIC中。ASIC可以駐留在用戶終端中。在一個替換方案中,處理器和存儲介質(zhì)可以作為分立組件駐留在用戶終端中。
在一個或多個示例性設(shè)計中,所述功能可以在硬件、軟件、固件或其任意組合中實現(xiàn)。如果在軟件中實現(xiàn),則可以將所述功能作為一個或多個指令或代碼存儲在計算機(jī)可讀介質(zhì)上或通過計算機(jī)可讀介質(zhì)來傳送。計算機(jī)可讀介質(zhì)包括計算機(jī)存儲介質(zhì)和通信介質(zhì),該通信介質(zhì)包括有助于將計算機(jī)程序從一個位置傳送到另一個位置的任何介質(zhì)。存儲介質(zhì)可以是能夠被通用或?qū)S糜嬎銠C(jī)訪問的任何可用介質(zhì)。作為例子而非限制性的,該計算機(jī)可讀介質(zhì)可以包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲設(shè)備、磁盤存儲設(shè)備或其它磁性存儲設(shè)備,或者是可以用于攜帶或存儲形式為指令或數(shù)據(jù)結(jié)構(gòu)的所需程序代碼并且能夠被通用或?qū)S糜嬎銠C(jī)或者通用或?qū)S锰幚砥髟L問的任何其它介質(zhì)。此外,任何連接都可以適當(dāng)?shù)胤Q為計算機(jī)可讀介質(zhì)。例如,如果使用同軸線纜、光纖線纜、雙絞線、數(shù)字用戶線路(DSL)或諸如紅外線、無線電和微波的無線技術(shù)來從網(wǎng)站、服務(wù)器或其它遠(yuǎn)程源發(fā)送軟件,則上述同軸線纜、光纖線纜、雙絞線、DSL或諸如紅外先、無線電和微波的無線技術(shù)均包括在介質(zhì)的定義。如這里所使用的,磁盤和光盤包括壓縮盤(CD)、激光盤、光盤、數(shù)字多功能盤(DVD)、軟盤、藍(lán)光盤,其中磁盤通常磁性地再現(xiàn)數(shù)據(jù),而光盤利用激光光學(xué)地再現(xiàn)數(shù)據(jù)。上述內(nèi)容的組合也應(yīng)當(dāng)包括在計算機(jī)可讀介質(zhì)的范圍內(nèi)。
公開的示例性實施例,但是應(yīng)當(dāng)注公開的示例性實施例,但是應(yīng)當(dāng)注意,在不背離權(quán)利要求限定的本公開的范圍的前提下,可以進(jìn)行多種改變和修改。根據(jù)這里描述的公開實施例的方法權(quán)利要求的功能、步驟和/或動作不需以任何特定順序執(zhí)行。此外,盡管本公開的元素可以以個體形式描述或要求,但是也可以設(shè)想多個,除非明確限制為單數(shù)。
應(yīng)當(dāng)理解的是,在本文中使用的,除非上下文清楚地支持例外情況,單數(shù)形式“一個”(“a”、“an”、“the”)旨在也包括復(fù)數(shù)形式。還應(yīng)當(dāng)理解的是,在本文中使用的“和/或”是指包括一個或者一個以上相關(guān)聯(lián)地列出的項目的任意和所有可能組合。
上述本公開實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
所屬領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:以上任何實施例的討論僅為示例性的,并非旨在暗示本公開的范圍(包括權(quán)利要求)被限于這些例子;在本發(fā)明實施例的思路下,以上實施例或者不同實施例中的技術(shù)特征之間也可以進(jìn)行組合,并存在如上所述的本發(fā)明實施例的不同方面的許多其它變化,為了簡明它們沒有在細(xì)節(jié)中提供。因此,凡在本發(fā)明實施例的精神和原則之內(nèi),所做的任何省略、修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明實施例的保護(hù)范圍之內(nèi)。