基于優(yōu)先級(jí)的雙路徑路由無線準(zhǔn)入控制方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種計(jì)算機(jī)無線網(wǎng)絡(luò)協(xié)議,特別涉及一種基于優(yōu)先級(jí)的雙路徑路由無 線準(zhǔn)入控制方法。
【背景技術(shù)】
[0002] 準(zhǔn)入控制分為兩種,一種是路由相關(guān)的,另一種是路由無關(guān)的。路由無 關(guān)的準(zhǔn)入控制已經(jīng)提出很多,如:SWAN(Stateless Wireless Ad Hoc Networks)、 MPARC(Multi_Priority Admission and Rate Control)。但是,之前的研究表明:路由相 關(guān)的準(zhǔn)入控制可能要優(yōu)于路由無關(guān)的,所以,路由相關(guān)的準(zhǔn)入控制CACP (Contention-aware Admission Control Protocol)被提出,不過,它們的路由都是基于單條路徑的。平行多 路徑路由是將數(shù)據(jù)流分配到多條節(jié)點(diǎn)不重合的路徑上,相比單路徑路由,它能提供更加穩(wěn) 定的服務(wù)質(zhì)量(QoS)以及更好的負(fù)載均衡。A0DVM(Ad Hoc Distance Vector Routing Multipath Protocol) n MSR(Multipath Source Routing) n MP-DSR(Multi-Path Dynamic Source Routing)等多路徑路由算法都已經(jīng)被提出。
[0003] 目前,路由相關(guān)的準(zhǔn)入控制大多數(shù)都是基于單路徑的且都是不基于優(yōu)先級(jí)的。在 WMN(Wireless Municipal Area Network)網(wǎng)絡(luò)中,多路徑路由通常使用兩條不相交的路徑 來用于路由數(shù)據(jù)包,為了更好地支撐智慧道路系統(tǒng)中的應(yīng)用,本文提出了一種基于優(yōu)先級(jí) 的雙路徑路由準(zhǔn)入控制機(jī)制。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明是針對(duì)路由相關(guān)的無線網(wǎng)絡(luò)準(zhǔn)入控制優(yōu)化的問題,提出了一種基于優(yōu)先級(jí) 的雙路徑路由無線準(zhǔn)入控制方法,來克服單路徑路由可能會(huì)遇到擁塞的缺點(diǎn),并且將數(shù)據(jù) 包的優(yōu)先級(jí)考慮在內(nèi)來支持智慧道路的無線網(wǎng)絡(luò)。
[0005] 本發(fā)明的技術(shù)方案為:一種基于優(yōu)先級(jí)的雙路徑路由無線準(zhǔn)入控制方法,具體包 括如下步驟:
[0006] 1)網(wǎng)絡(luò)中的所有節(jié)點(diǎn)定期地發(fā)送數(shù)據(jù)包來交換和采集本地和鄰居節(jié)點(diǎn)的信息,請(qǐng) 求的數(shù)據(jù)流被分為不同的優(yōu)先級(jí),計(jì)算基于優(yōu)先級(jí)的可用帶寬:
[0007] 每個(gè)優(yōu)先級(jí)配一個(gè)此優(yōu)先級(jí)數(shù)據(jù)流的帶寬預(yù)留總和TBRi,TBRi是優(yōu)先級(jí)i下所有 數(shù)據(jù)流帶寬預(yù)留的總和,每個(gè)優(yōu)先級(jí)有一個(gè)表格來記錄每一個(gè)預(yù)留數(shù)據(jù)流的信息,在節(jié)點(diǎn)X 中,計(jì)算優(yōu)先級(jí)為i的數(shù)據(jù)流的可用帶寬
[0008] 2)路由發(fā)現(xiàn):源節(jié)點(diǎn)創(chuàng)建一個(gè)路由請(qǐng)求RREQ數(shù)據(jù)包,RREQ數(shù)據(jù)包經(jīng)過每個(gè)節(jié)點(diǎn), 都與本地記錄進(jìn)行對(duì)比,沒有記錄的,增加基于該數(shù)據(jù)流優(yōu)先級(jí)的可用帶寬信息,如不能增 加將此數(shù)據(jù)包丟棄,RREQ數(shù)據(jù)包到達(dá)終節(jié)點(diǎn)時(shí),包括了從源節(jié)點(diǎn)到終節(jié)點(diǎn)整條路徑的所有 信息;
[0009] 3)路徑選擇及速率分配:
[0010] 每個(gè)路徑找出最小剩余帶寬,作為瓶頸節(jié)點(diǎn)的剩余帶寬,找出最優(yōu)的兩條路徑 RBPl、RBP],兩條路徑的剩余帶寬都大于等于零,且兩條路徑分配的速率民、R,不僅要大于零 而且兩個(gè)速率相加為請(qǐng)求準(zhǔn)入數(shù)據(jù)流的帶寬需求速率Rraq,然后取兩條剩余帶寬較大者作 為兩條路徑共同的帶寬計(jì)算分配的速率R ;
[0011] 4)路由返回和準(zhǔn)入控制:
[0012] 當(dāng)最優(yōu)的兩條路由路徑和分配的速率求出后,終節(jié)點(diǎn)會(huì)發(fā)送兩個(gè)分別攜帶兩條路 徑信息的RREP數(shù)據(jù)包,并且將它們按原路送回源節(jié)點(diǎn),當(dāng)一個(gè)節(jié)點(diǎn)收到RREP數(shù)據(jù)包后,進(jìn) 行準(zhǔn)入控制,一共分三種情況:
[0013] 首先是第X個(gè)節(jié)點(diǎn)的剩余帶寬¥大于等于零的情況,予以準(zhǔn)入;
[0014] 第二種情況是第X個(gè)節(jié)點(diǎn)的剩余帶寬疋小于零,而基于優(yōu)先級(jí)的可用帶寬(^),+ 大于等于零,此時(shí),節(jié)點(diǎn)X釋放部分低于優(yōu)先級(jí)i的數(shù)據(jù)流的帶寬,以滿足這個(gè)數(shù)據(jù)流的請(qǐng) 求帶寬,然后予以準(zhǔn)入;
[0015] 第三種情況是基于優(yōu)先級(jí)的可用帶寬(盡小于零,不予準(zhǔn)入;
[0016] 如果準(zhǔn)入控制算法判斷出請(qǐng)求數(shù)據(jù)流可以被予以準(zhǔn)入的話,就對(duì)此節(jié)點(diǎn)以及它載 波監(jiān)聽范圍內(nèi)的節(jié)點(diǎn)都進(jìn)行資源預(yù)留,如果不予準(zhǔn)入的話,就從候選路徑中再選出最優(yōu)的 兩條來進(jìn)行路由返回及準(zhǔn)入控制,直到?jīng)]有候選路徑符合要求為止。
[0017] 所述步驟1)中優(yōu)先級(jí)為i的數(shù)據(jù)流的可用帶寬的計(jì)算公式如下:
[0019] 忍^是是節(jié)點(diǎn)X的剩余帶寬,
是所有比優(yōu)先級(jí)為i的數(shù)據(jù)流的優(yōu)先級(jí)小的 數(shù)據(jù)流占用帶寬之和。
[0020] 所述步驟4)中基于優(yōu)先級(jí)的可用帶寬(盡:》大于等于零時(shí)進(jìn)行釋放數(shù)據(jù)流的順序 為:首先是先釋放優(yōu)先級(jí)最低的數(shù)據(jù)流,同一優(yōu)先級(jí)的話,遵循盡可能少地影響數(shù)據(jù)流的原 貝1J,即先釋放占用帶寬大的數(shù)據(jù)流的帶寬,如果數(shù)據(jù)流的占用帶寬相同的話,先釋放預(yù)留資 源晚的數(shù)據(jù)流。
[0021] 本發(fā)明的有益效果在于:本發(fā)明基于優(yōu)先級(jí)的雙路徑路由無線準(zhǔn)入控制方法,通 過路由與準(zhǔn)入控制相結(jié)合,更好地提高了準(zhǔn)入控制的效率,同時(shí)將傳統(tǒng)的單路徑路由準(zhǔn)入 控制擴(kuò)展成雙路徑路由準(zhǔn)入控制,更好地實(shí)現(xiàn)了負(fù)載均衡和提供更好的服務(wù)質(zhì)量(QoS)。通 過與傳統(tǒng)的單路徑路由準(zhǔn)入控制和雙路徑路由算法進(jìn)行比較,可以看出本發(fā)明之基于優(yōu)先 級(jí)的雙路徑路由準(zhǔn)入控制技術(shù)在吞吐量、時(shí)延和抖動(dòng)方面都表現(xiàn)出色,同時(shí)優(yōu)先保障了高 優(yōu)先級(jí)數(shù)據(jù)包的帶寬。
【附圖說明】
[0022] 圖1為本發(fā)明計(jì)算基于優(yōu)先級(jí)的可用帶寬所用到的優(yōu)先級(jí)帶寬預(yù)留索引表示意 圖;
[0023] 圖2為本發(fā)明提出的準(zhǔn)入控制方法實(shí)現(xiàn)的一個(gè)簡(jiǎn)單示例圖。
【具體實(shí)施方式】
[0024] -種基于優(yōu)先級(jí)的雙路徑路由無線準(zhǔn)入控制方法,分析了每個(gè)節(jié)點(diǎn)基于優(yōu)先級(jí)的 可用帶寬,并將可用帶寬通過路徑請(qǐng)求數(shù)據(jù)包傳輸?shù)浇K節(jié)點(diǎn),在收到所有候選路徑后,選出 最優(yōu)的兩條來滿足數(shù)據(jù)流的帶寬請(qǐng)求。最后,終節(jié)點(diǎn)進(jìn)行路由返回,通過對(duì)本節(jié)點(diǎn)以及其周 圍節(jié)點(diǎn)的剩余帶寬以及可用帶寬(基于優(yōu)先級(jí))的預(yù)測(cè)來進(jìn)行準(zhǔn)入控制,以此來保證優(yōu)先 級(jí)高的數(shù)據(jù)流可以被優(yōu)先準(zhǔn)入來保證其帶寬。
[0025] 在本發(fā)明的準(zhǔn)入控制中,請(qǐng)求的數(shù)據(jù)流被分為不同的優(yōu)先級(jí),并且引入了一個(gè)新 的帶寬估算算法來估算節(jié)點(diǎn)的剩余帶寬和基于優(yōu)先級(jí)的可用帶寬,利用這些參數(shù)來進(jìn)行準(zhǔn) 入控制,當(dāng)節(jié)點(diǎn)的剩余帶寬不能滿足請(qǐng)求數(shù)據(jù)流的帶寬需求,而基于優(yōu)先級(jí)的可用帶寬可 以滿足時(shí),我們提出了釋放數(shù)據(jù)流算法來計(jì)算釋放哪些低優(yōu)先級(jí)數(shù)據(jù)流的帶寬以滿足請(qǐng)求 數(shù)據(jù)流的帶寬需求。仿真實(shí)驗(yàn)結(jié)果表明:該準(zhǔn)入控制機(jī)制與基于單路徑的準(zhǔn)入控制算法相 比,有更高的吞吐量,更低的延遲和更低的抖動(dòng),保障了高優(yōu)先級(jí)數(shù)據(jù)流的帶寬需求。
[0026] 本發(fā)明提出的準(zhǔn)入控制是和路由相耦合的,所以,整個(gè)準(zhǔn)入控制的過程包括三個(gè) 步驟:首先,智慧道路無線網(wǎng)絡(luò)的初始化,智慧道路無線網(wǎng)絡(luò)的初始化是指網(wǎng)絡(luò)中的所有節(jié) 點(diǎn)都會(huì)定期地發(fā)送數(shù)據(jù)包來交換和采集本地和鄰居節(jié)點(diǎn)的信息,這樣一來,本地的拓?fù)浣Y(jié) 構(gòu)就可以被采集到并且被記錄下來;接著,進(jìn)行路由發(fā)現(xiàn),找到最優(yōu)的兩條路徑;最后是路 由返回,進(jìn)行準(zhǔn)入控制。
[0027] 由于在智慧道路的無線網(wǎng)絡(luò)中,數(shù)據(jù)流都有不同的優(yōu)先級(jí),所以,優(yōu)先級(jí)高的數(shù)據(jù) 流應(yīng)當(dāng)被優(yōu)先準(zhǔn)入,如果,在一個(gè)特定的節(jié)點(diǎn),有低優(yōu)先級(jí)的數(shù)據(jù)流已經(jīng)被準(zhǔn)入且剩余帶寬 已經(jīng)不能滿足高優(yōu)先級(jí)數(shù)據(jù)流的情況下,低優(yōu)先級(jí)的數(shù)據(jù)流應(yīng)當(dāng)從準(zhǔn)入的隊(duì)列中剔除,釋 放出其占有的帶寬來優(yōu)先滿足高優(yōu)先級(jí)的數(shù)據(jù)流。所以,在同一節(jié)點(diǎn),不同優(yōu)先級(jí)的數(shù)據(jù)流 擁有不同的可用帶寬,對(duì)于高優(yōu)先級(jí)的數(shù)據(jù)流來說,節(jié)點(diǎn)的可用帶寬是節(jié)點(diǎn)目前的剩余帶 寬加上低優(yōu)先級(jí)數(shù)據(jù)流預(yù)留的帶寬。
[0028] 本發(fā)明基于優(yōu)先級(jí)的雙路徑路由無線準(zhǔn)入控制方法中具體每步采用的方法如 下:
[0029] 1、計(jì)算基于優(yōu)先級(jí)的可用帶寬:
[0030] 為了方便計(jì)算某一個(gè)優(yōu)先級(jí)數(shù)據(jù)流的可用帶寬總和,我們?cè)O(shè)計(jì)了一個(gè)基于優(yōu)先級(jí) 的帶寬預(yù)留索引表如圖1所示:每個(gè)優(yōu)先級(jí)都會(huì)有一個(gè)此優(yōu)先級(jí)數(shù)據(jù)流的帶寬預(yù)留總和 TBRi (Total Bandwidth Reseration),是優(yōu)先級(jí)i下所有數(shù)據(jù)流帶寬預(yù)留的總和,每個(gè)優(yōu)先 級(jí)都會(huì)有一個(gè)表格來記錄每一個(gè)預(yù)留數(shù)據(jù)流的信息,以便為后面的準(zhǔn)入控制做準(zhǔn)備。在節(jié) 點(diǎn)X中,優(yōu)先級(jí)為i的數(shù)據(jù)流的可用帶寬(€),的計(jì)算公式如下:
[0032] ^是節(jié)點(diǎn)X的剩余帶寬,是所有比優(yōu)先級(jí)為i的數(shù)據(jù)流的優(yōu)先級(jí)小的數(shù) 據(jù)流占用帶寬之和。
[0033] 2、路由發(fā)現(xiàn)的步驟如下:
[0034] 1)源節(jié)點(diǎn)創(chuàng)建一個(gè)RREQ (Route Request)的數(shù)據(jù)包并將它廣播到所有的鄰居節(jié) 點(diǎn),這個(gè)RREQ數(shù)據(jù)包包含一個(gè)數(shù)據(jù)包ID,用于唯一識(shí)別每個(gè)RREQ數(shù)據(jù)包。
[0035] 2)當(dāng)一個(gè)節(jié)點(diǎn)收到這個(gè)RREQ數(shù)據(jù)包后,首先,將這個(gè)數(shù)據(jù)包的ID與本地的記錄作 對(duì)比,如果在記錄中,沒有找到這個(gè)ID相應(yīng)的記錄,那么,將這個(gè)RREQ數(shù)據(jù)包的ID記錄下 來,并且在這個(gè)數(shù)據(jù)包中加入該節(jié)點(diǎn)以及它的帶寬信息,其中包括該節(jié)點(diǎn)的剩余帶寬信息 以及基于該數(shù)據(jù)流優(yōu)先級(jí)的可用帶寬信息;否則,就把這個(gè)數(shù)據(jù)包直接丟棄。當(dāng)這個(gè)RREQ