專利名稱:選擇性先驗(yàn)反應(yīng)式路由的制作方法
技術(shù)領(lǐng)域:
本公開(kāi)一般涉及計(jì)算機(jī)網(wǎng)絡(luò),并且,更具體地,涉及計(jì)算機(jī)網(wǎng)絡(luò)中的反應(yīng)式路由。
背景技術(shù):
利用主動(dòng)路由協(xié)議,在計(jì)算機(jī)網(wǎng)絡(luò)中的路由器針對(duì)“所有”地址先驗(yàn)地計(jì)算其路由 表(即,在需要路由之前)。在存儲(chǔ)器方面,主動(dòng)路由協(xié)議是更昂貴的,但是,在在網(wǎng)絡(luò)中從 任意節(jié)點(diǎn)向其他任意節(jié)點(diǎn)發(fā)送流量之前,路由是已知的,因此,當(dāng)通過(guò)網(wǎng)絡(luò)發(fā)送數(shù)據(jù)時(shí),可 避免計(jì)算路由的延遲。相反地,反應(yīng)式(reactive)路由是“按需”的路由協(xié)議,其中,路由 當(dāng)利用請(qǐng)求/應(yīng)答技術(shù)被需要時(shí),路由才被計(jì)算。通常,反應(yīng)式路由可被用于資源有限(例 如,低功率設(shè)備和/或存儲(chǔ)器少或處理能力低的設(shè)備)的地方。因此,根據(jù)反應(yīng)式路由協(xié)議 的操作,僅有到目的地的路由的子集,特別是當(dāng)前正被利用的那些路由,被維護(hù)在節(jié)點(diǎn)/設(shè) 備處。因此,當(dāng)在反應(yīng)式路由中被需要時(shí),存在確定到具體目的地的路由的延遲,特別是由 于請(qǐng)求和應(yīng)答消息的傳播以及針對(duì)被發(fā)起到目的地的流量的每個(gè)流所必須的路徑計(jì)算。
結(jié)合附圖,通過(guò)參照以下說(shuō)明,將可以更好地理解本發(fā)明的優(yōu)勢(shì),其中,相似的參 考標(biāo)號(hào)指示同樣的或功能相似的元件,其中圖1示出了示例性計(jì)算機(jī)網(wǎng)絡(luò);圖2示出了示例性設(shè)備;圖3示出了顯示選擇性先驗(yàn)反應(yīng)式路由的示例性網(wǎng)絡(luò);圖4示出了顯示用于選擇性先驗(yàn)反應(yīng)式路由的備用技術(shù)的示例性網(wǎng)絡(luò);以及圖5示出了用于選擇性先驗(yàn)反應(yīng)式路由的示例性流程。
具體實(shí)施例方式概述根據(jù)本公開(kāi)的實(shí)施例,在計(jì)算機(jī)網(wǎng)絡(luò)中的強(qiáng)能力設(shè)備(MCD)可確定一個(gè)或多個(gè)關(guān) 鍵目的地(CD),并且可向每個(gè)CD發(fā)送主動(dòng)提供的反應(yīng)式選路路由請(qǐng)求(RREQ)消息。MCD 可然后從具有從MCD到CD的路由的CD接收路由應(yīng)答(RREP)消息,并且在MCD處存儲(chǔ)該 路由。然后,MCD可向一個(gè)或多個(gè)弱能力設(shè)備(LCDs)發(fā)送其自身的RREP消息,以提供經(jīng)由 MCD從每個(gè)各自IXD到⑶的路由。說(shuō)明計(jì)算機(jī)網(wǎng)絡(luò)是地理分布的節(jié)點(diǎn)的集合,該節(jié)點(diǎn)由通信鏈路和通信段互聯(lián)以用于在 終端節(jié)點(diǎn)間傳輸數(shù)據(jù),例如,個(gè)人計(jì)算機(jī)和工作站,或其他設(shè)備,例如傳感器,等等。存在多 種類型的網(wǎng)絡(luò),類型范圍從局域網(wǎng)(LANs)到廣域網(wǎng)(WANs)。LAN通常經(jīng)由位于同一一般物 理地址處(諸如,建筑物或校園)的專用私通信鏈路來(lái)連接節(jié)點(diǎn)。在另一方面,WAN通常經(jīng) 由長(zhǎng)距離通信鏈路(諸如,通用承載者電話線、光學(xué)光通道、同步光網(wǎng)絡(luò)(S0NET),或同步數(shù)字式層次(SDH)鏈路)來(lái)連接地理上分散的節(jié)點(diǎn)。具體地,傳感器網(wǎng)絡(luò)是一種具體類型的網(wǎng)絡(luò),該網(wǎng)絡(luò)包括諸如傳感器之類的空間 上分布的自主設(shè)備,該設(shè)備協(xié)同地監(jiān)控在不同位置處的物理或環(huán)境條件,諸如,例如,溫度、 壓力、震動(dòng)、聲音、輻射、動(dòng)作,污染物等。盡管有線連接是可用的,但是,傳感器網(wǎng)絡(luò)通常是 無(wú)線網(wǎng)絡(luò)。即,除了一個(gè)或多個(gè)傳感器以外,在傳感器網(wǎng)絡(luò)中的每個(gè)傳感器設(shè)備(節(jié)點(diǎn))可 一般配有無(wú)線收發(fā)機(jī)或其他通信端口、小的微控制器,以及能量源,諸如,電池。一般而言, 在傳感器節(jié)點(diǎn)上的大小和花銷的限制導(dǎo)致在諸如能量、存儲(chǔ)器、計(jì)算速度和帶寬之類的資 源上的相應(yīng)的限制。相應(yīng)地,雖然不不需,備用路由協(xié)議可被使用以替代用于傳感器網(wǎng)絡(luò)的 主動(dòng)路由協(xié)議。在某些配置中,在傳感器網(wǎng)絡(luò)中的傳感器向一個(gè)或多個(gè)中心化數(shù)據(jù)庫(kù)管理節(jié)點(diǎn)發(fā) 送其數(shù)據(jù),該中心化數(shù)據(jù)庫(kù)管理節(jié)點(diǎn)獲取數(shù)據(jù)以用于一個(gè)或多個(gè)與之相關(guān)聯(lián)的應(yīng)用。在“推 模式(push mode)”中,傳感器向傳感器匯聚點(diǎn)發(fā)送其數(shù)據(jù)而無(wú)需提示,例如,在規(guī)則的間隔 /頻率處或響應(yīng)于外部觸發(fā)。相反地,在“拉模式(pull mode)”中,傳感器匯聚點(diǎn)可明確地 請(qǐng)求傳感器(例如,特定的傳感器或所有傳感器)向傳感器匯聚點(diǎn)發(fā)送其當(dāng)前的數(shù)據(jù)(或 做測(cè)試,并將該結(jié)果發(fā)送到傳感器匯聚點(diǎn))。圖1是示例性計(jì)算機(jī)網(wǎng)絡(luò)100的示意性框圖,該計(jì)算機(jī)網(wǎng)絡(luò)闡釋性地包括節(jié)點(diǎn)/ 設(shè)備,例如,一個(gè)或多個(gè)由鏈路(為了簡(jiǎn)單,一般未示出)互聯(lián)的設(shè)備130(例如,A,B,C等)。 例如,如此處所述,某些設(shè)備130可以是強(qiáng)能力設(shè)備(more capable devices) (MCD)、弱能力 設(shè)備(less capable devices) (LCD),或關(guān)鍵目的地或設(shè)備(CD)。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理 解,任意數(shù)目的節(jié)點(diǎn)、設(shè)備、鏈路等可被用于計(jì)算機(jī)網(wǎng)絡(luò)中,并且此處示出的視圖是為了簡(jiǎn) 單。鏈路(未示出)可以是用于電子和/或光傳輸?shù)挠芯€連接,或可以包括無(wú)線通信介質(zhì), 如本領(lǐng)域技術(shù)人員所理解的,某些節(jié)點(diǎn)130可與其他節(jié)點(diǎn)130通信,例如,基于距離、信號(hào)強(qiáng) 度、當(dāng)前的操作狀態(tài),位置等。數(shù)據(jù)分組(例如,在設(shè)備/節(jié)點(diǎn)間發(fā)送的流量和/或消息)可利用預(yù)定的網(wǎng)絡(luò)通 信協(xié)議(諸如,傳輸控制協(xié)議/因特網(wǎng)協(xié)議(TCP/IP)、用戶數(shù)據(jù)報(bào)文協(xié)議(UDP)、異步傳輸 模式(ATM)協(xié)議、幀中繼協(xié)議、因特網(wǎng)分組交換(IPX)協(xié)議、多協(xié)議標(biāo)簽交換(MPLS),多種專 有協(xié)議等)被在計(jì)算機(jī)網(wǎng)絡(luò)100的節(jié)點(diǎn)/設(shè)備間交換。在此上下文中,協(xié)議包括一組定義 了節(jié)點(diǎn)如何彼此交互的規(guī)則。圖2是示例性節(jié)點(diǎn)/設(shè)備200的示意性框圖,該節(jié)點(diǎn)/設(shè)備可有利地被用于此處 描述的一個(gè)或多個(gè)實(shí)施例,例如,設(shè)備130。該設(shè)備包括一個(gè)或多個(gè)網(wǎng)絡(luò)接口 210、處理器 220 (例如,8-64比特微控制器),和由系統(tǒng)總線250互聯(lián)的存儲(chǔ)器M0,以及電源260 (例如, 電池,插件,等)。一個(gè)或多個(gè)網(wǎng)絡(luò)接口 210包括用于經(jīng)由與網(wǎng)絡(luò)100相耦合的物理和/或 無(wú)線鏈路來(lái)傳送數(shù)據(jù)的機(jī)械的、電子的,和信令電路。網(wǎng)絡(luò)接口可被配置用于利用多種不同 的通信協(xié)議(包括,尤其是,TCP/IP、UDP、ATM、無(wú)線協(xié)議(例如,IEEE標(biāo)準(zhǔn)802. 14. 5、WiFi, 藍(lán)牙 )、幀中繼、以太網(wǎng),功率線轉(zhuǎn)換器(PCL)協(xié)議等)來(lái)發(fā)送和/或接收數(shù)據(jù)。存儲(chǔ)器240包括多個(gè)存儲(chǔ)位置,其可由處理器220和網(wǎng)絡(luò)接口 210尋址,以用于 存儲(chǔ)與此處說(shuō)明的實(shí)施例相關(guān)聯(lián)的軟件程序和數(shù)據(jù)結(jié)構(gòu)。如下所述,處理器220可包括適 用于執(zhí)行軟件程序和操控?cái)?shù)據(jù)結(jié)構(gòu)(例如,路由表對(duì)9)的必要的元件或邏輯。操作系統(tǒng)
其中部分通常駐于存儲(chǔ)器240并被處理器所執(zhí)行)尤其通過(guò)調(diào)用支持執(zhí)行在設(shè)備上的軟件處理和/或服務(wù)的操作來(lái)功能性地組織設(shè)備。如此處所說(shuō)明的,這些軟件處理和/或 服務(wù)可包括反應(yīng)式路由處理對(duì)4,和示例性子集,選擇性先驗(yàn)反應(yīng)式路由處理M6。其對(duì)本 領(lǐng)域技術(shù)人員而言是很明顯的,其他處理器和存儲(chǔ)器類型(包括多種計(jì)算機(jī)可讀介質(zhì))可 被用于存儲(chǔ)和執(zhí)行關(guān)于此處說(shuō)明的創(chuàng)造性技術(shù)的程序指令。如本領(lǐng)域技術(shù)人員將可理解的,根據(jù)慣常的反應(yīng)式路由協(xié)議,反應(yīng)式路由處理 (服務(wù))244包括由處理器220所執(zhí)行的計(jì)算機(jī)可執(zhí)行指令,以執(zhí)行由一個(gè)或多個(gè)路由協(xié) 議所提供的功能。這些功能可被配置用于管理路由表其包括用于作出路由決定的數(shù) 據(jù))。具體地,與主動(dòng)路由不同,其中,在計(jì)算到網(wǎng)絡(luò)中的任意目的地的路由之前,連接性被 發(fā)現(xiàn)并且是已知的(例如,最優(yōu)鏈路狀態(tài)路由,“0LSR”),在另一方面,反應(yīng)式路由發(fā)現(xiàn)鄰接 點(diǎn)(即,一般并不具有對(duì)網(wǎng)絡(luò)拓?fù)涞南闰?yàn)知識(shí)),并且響應(yīng)于到目的地的所需路由,向網(wǎng)絡(luò) 中發(fā)送路由請(qǐng)求,以確定哪些鄰接節(jié)點(diǎn)可被用于到達(dá)所希望的目的地。示例性的反應(yīng)式路 由協(xié)議可包括,尤其是,自組織按需距離向量(AODV)、動(dòng)態(tài)源路由(DSR),動(dòng)態(tài)MANET按需路 由(DYMO)等。一般而言,反應(yīng)式路由被用于降低節(jié)點(diǎn)130(例如,小型、分布、低功率設(shè)備, 諸如,傳感器)上的存儲(chǔ)和處理要求,并且由于網(wǎng)路的自組織變化特性,反應(yīng)式路由被用于 限制對(duì)已存儲(chǔ)拓?fù)涞母聰?shù)量。例如,AODV是反應(yīng)式路由協(xié)議(僅按需建立到目的地的路由),其為距離向量路由 協(xié)議(并且在路由更新上利用序列號(hào)以避免距離向量協(xié)議的多種已知問(wèn)題)。在AODV中, 直到需要連接以向目的地發(fā)送數(shù)據(jù)分組為止,網(wǎng)路是安靜的,在此時(shí),需要連接的節(jié)點(diǎn)廣播 用于連接的請(qǐng)求(路由請(qǐng)求,或“RREQ”消息)。其他節(jié)點(diǎn)轉(zhuǎn)發(fā)此請(qǐng)求,記錄請(qǐng)求被接收的節(jié) 點(diǎn),直到達(dá)到目的地為止,或直到到達(dá)節(jié)點(diǎn)為止,該節(jié)點(diǎn)具有之前獲知的到目的地的路由。 在那時(shí),應(yīng)答(路由應(yīng)答,或“RREP”消息)沿著已記錄的路由被反向返回到請(qǐng)求源節(jié)點(diǎn),并 且請(qǐng)求節(jié)點(diǎn)(和任意中間節(jié)點(diǎn))由此獲知到目的地的路由(即,下一跳節(jié)點(diǎn)),并且將此信 息(下一跳節(jié)點(diǎn))存儲(chǔ)在路由表249中。(注意,通常,多個(gè)路由被獲知,并且請(qǐng)求節(jié)點(diǎn)被配 置用于基于諸如跳數(shù)、花銷等來(lái)選擇“最佳”路由。)當(dāng)在網(wǎng)絡(luò)中的鏈路失敗時(shí),路由錯(cuò)誤被 傳遞回發(fā)送節(jié)點(diǎn),并且重復(fù)獲知到目的地的路由的處理。由于自組織網(wǎng)絡(luò)常常變更拓?fù)?,?列號(hào)可被用于確定最新近的路由。在另一方面,DSR是類似于AODV的又一反應(yīng)式路由協(xié)議,但是,在每個(gè)中間設(shè)備 處,DSR利用源路由而非依靠路由表。利用路由請(qǐng)求和應(yīng)答的類似技術(shù)被再次使用,但是, 現(xiàn)在,源節(jié)點(diǎn)包括在發(fā)送到目的地的數(shù)據(jù)分組中的整個(gè)路徑。通過(guò)這種方式,中間節(jié)點(diǎn)無(wú)需 存儲(chǔ)(或更新)在路由表中的信息。注意,每個(gè)中間節(jié)點(diǎn)可仍舊緩存到目的地的整個(gè)路徑 (在路由表M9中),其可被用于快速應(yīng)答路由請(qǐng)求,因?yàn)橹虚g節(jié)點(diǎn)知道(至少暫時(shí)地)到 所請(qǐng)求的目的地的一條路徑。換言之,不管用于反應(yīng)式路由的具體協(xié)議(AODV、DSR, DYMO等),相似的技術(shù)可被 用于獲得到達(dá)具體目的地的路由,不論該路由是本地存儲(chǔ)在中間節(jié)點(diǎn)上,還是與數(shù)據(jù)分組 一起被傳輸(源路由)。如本領(lǐng)域技術(shù)人員可理解的,具體地,“路由請(qǐng)求”消息和“路由應(yīng) 答”消息的一般用處可被利用,相應(yīng)地,用于通過(guò)網(wǎng)絡(luò)100獲得所希望的路徑。如上所述,反應(yīng)式路由協(xié)議是“按需”路由協(xié)議,其中,當(dāng)被需要時(shí)通過(guò)利用請(qǐng)求/ 應(yīng)答范式(paradigm)路由被計(jì)算。因此,僅有路由的子集(例如,請(qǐng)求節(jié)點(diǎn)所需的那些) 被維護(hù)。即,反應(yīng)式協(xié)議允許最優(yōu)化存儲(chǔ)器消耗,但是當(dāng)需要路由時(shí),暗示了一些非期望的延遲(即,發(fā)送請(qǐng)求和接收應(yīng)答路由所需的時(shí)間)。(注意,雖然存在其他區(qū)分主動(dòng)和反應(yīng) 式路由協(xié)議的方面,但是此處指出的一個(gè)具體擔(dān)心是利用反應(yīng)式路由協(xié)議與獲得路由相關(guān) 聯(lián)的延遲。)通常,網(wǎng)絡(luò)可包括具有不同特質(zhì)和能力的多種節(jié)點(diǎn)。但是,為了在所有節(jié)點(diǎn)維護(hù) 協(xié)議的操作,一般需要使用“最小分母(least denominator)”方式(其基于在弱能力設(shè)備 (less capable devices)上操作協(xié)議)。這相應(yīng)地導(dǎo)致在某些帶有弱能力設(shè)備的網(wǎng)絡(luò)(例 如,傳感器網(wǎng)絡(luò))中部署反應(yīng)式協(xié)議,其暗示了與上述詳述的反應(yīng)式路由相關(guān)聯(lián)的延遲。詵擇件先驗(yàn)反應(yīng)式路由根據(jù)本公開(kāi)的實(shí)施例,網(wǎng)絡(luò)100中一組較強(qiáng)能力(或最強(qiáng)能力)設(shè)備(more (or most capable devices)) (MCD)可以被系統(tǒng)地填充到關(guān)鍵目的地(⑶)的路由,而一組較弱 能力(或最弱能力)設(shè)備(LCD)可繼續(xù)使用慣常的(最慣常的)反應(yīng)式路由方式。具體地, 機(jī)制被在此處說(shuō)明以動(dòng)態(tài)確定CD的集。不同于僅計(jì)算主動(dòng)和反應(yīng)式路由,此處說(shuō)明的實(shí)施 例僅利用反應(yīng)式路由協(xié)議。但是,針對(duì)某些CD,反應(yīng)式機(jī)制被在之前使用,由此改善了收斂 時(shí)間而無(wú)需管理兩個(gè)路由協(xié)議。換言之,此處說(shuō)明的技術(shù)涉及一種方式,其中,反應(yīng)式路由 協(xié)議被普遍地實(shí)現(xiàn)在網(wǎng)絡(luò)100中,同時(shí)最小化關(guān)鍵路由的響應(yīng)延遲(與在同一網(wǎng)絡(luò)中對(duì)主 動(dòng)和反應(yīng)式路由協(xié)議的復(fù)雜和笨拙的組合相反)。闡釋性地,此處說(shuō)明的技術(shù)可由硬件、軟件,和/或固件執(zhí)行,諸如根據(jù)選擇性先 驗(yàn)反應(yīng)式路由的處理器M6,該處理器可包括由處理器220執(zhí)行的計(jì)算機(jī)可執(zhí)行指令,以 執(zhí)行與此處說(shuō)明的新技術(shù)相關(guān)的功能,例如,關(guān)于以慣常方式運(yùn)行的反應(yīng)式路由處理對(duì)4。 (注意,雖然示出了兩個(gè)處理244和M6,但是,本領(lǐng)域技術(shù)人員將理解,這僅是代表性的, 并且更改后的單獨(dú)處理或多個(gè)小型處理可被實(shí)現(xiàn)以達(dá)到由此處說(shuō)明的實(shí)施例所提供的結(jié) 果。)例如,選擇性先驗(yàn)反應(yīng)式路由處理246可具體操作于MCD或CD上(或,如下所述,在 一般能夠成為L(zhǎng)CD或MCD的設(shè)備130上),并且可根據(jù)此處說(shuō)明的設(shè)備的責(zé)任來(lái)執(zhí)行一個(gè)或 多個(gè)選擇性先驗(yàn)反應(yīng)式路由技術(shù)。值得注意,如此處所使用的,MCD—般是網(wǎng)絡(luò)中被配置用于根據(jù)以下關(guān)于MCD的技 術(shù)操作的任意設(shè)備130。闡釋性地,例如,MCD可以是比LCD具有更強(qiáng)能力(例如,存儲(chǔ)器、 處理,等等)的設(shè)備,盡管這種區(qū)別是不必要的。因此,術(shù)語(yǔ)MCD和LCD僅指設(shè)備的操作配 置,而非能力程度。操作性地,MCD (例如,如本領(lǐng)域技術(shù)人員所理解的,網(wǎng)絡(luò)中的所有MCD,或MCD的 “主要子集”)可首先確定網(wǎng)絡(luò)100中的一個(gè)或多個(gè)CD。例如,關(guān)鍵目的地可利用輕型泛洪 (flood)(通告)機(jī)制被標(biāo)記和通知,或被存儲(chǔ)在中央政策引擎(例如,設(shè)備)中,該設(shè)備在 啟動(dòng)時(shí)(例如,注冊(cè))可被MCD輪詢。一般而言,關(guān)鍵目的地在利用“多對(duì)少”或“多對(duì)一” 拓?fù)涞木W(wǎng)絡(luò)中是常見(jiàn)的,其中,大量設(shè)備向相同的少量設(shè)備發(fā)送大量的流量。這種網(wǎng)絡(luò)的一 個(gè)示例是傳感器網(wǎng)絡(luò),其中,潛在的上百萬(wàn)的傳感器向同一匯聚設(shè)備(例如,管理服務(wù)器、3 層網(wǎng)關(guān),等等)發(fā)送其數(shù)據(jù)。相應(yīng)地,在這種網(wǎng)絡(luò)中,針對(duì)最多到99%的流量,網(wǎng)絡(luò)中最少到 1 %的設(shè)備是目的地。(因此,“選擇性”先驗(yàn)反應(yīng)式路由暗示僅某些節(jié)點(diǎn)、MCD需要協(xié)作,并 且僅有到某些目的地、CD的路由需要被獲得)。關(guān)鍵目的地,或⑶可由此通過(guò)對(duì)哪里是“重要的”目的地(例如,服務(wù)器、網(wǎng)關(guān),等 等)的知識(shí)和該知識(shí)到網(wǎng)絡(luò)中的傳播來(lái)被確定。例如,如所述,泛洪廣告可由CD自身(或其他管理節(jié)點(diǎn)/設(shè)備)向樹(shù)的所有葉子發(fā)起(或在網(wǎng)路中廣播),其中,樹(shù)的每一葉子是MCD。 可替換地,每個(gè)MCD可注冊(cè)到網(wǎng)絡(luò),并且可接收⑶集作為響應(yīng)。例如,參照?qǐng)D1,假定節(jié)點(diǎn)C 是MCD,并且節(jié)點(diǎn)E和F是⑶。節(jié)點(diǎn)A和B是IXD,并且節(jié)點(diǎn)D可以是或可以不是MCD。注意,根據(jù)可替換的實(shí)施例,MCD可基于對(duì)在網(wǎng)絡(luò)100中的流量的分析來(lái)確定CD。 例如,MCD可能夠確定高百分比的流量正被發(fā)送到網(wǎng)絡(luò)中的同一目的地或目的地集,并且可 動(dòng)態(tài)確定那些目的地是關(guān)鍵的,由此將其標(biāo)記為CD。通過(guò)這種方式,MCD可單獨(dú)行動(dòng),并且 無(wú)需CD參與(泛洪廣告)或用于中心化的政策引擎(來(lái)發(fā)送CD列表)。一旦CD集被確定(例如,節(jié)點(diǎn)E),MCD (例如,節(jié)點(diǎn)C)可利用反應(yīng)式路由協(xié)議向所 有CD (先驗(yàn)的)觸發(fā)主動(dòng)提供的(unsolicited)路由請(qǐng)求(RREQ)消息,并且將結(jié)果存儲(chǔ)在 路由表M9中。具體地,慣常的RREQ消息可被生成,并且被發(fā)送到所希望的目的地,但是, 該消息是“主動(dòng)提供的”,因?yàn)槠洳⒎琼憫?yīng)于實(shí)際的要發(fā)送流量的需要。而是,根據(jù)此處的新 技術(shù),RREQ是先驗(yàn)請(qǐng)求,因?yàn)楹苡锌赡茉诰W(wǎng)絡(luò)中存在發(fā)送到該目的地的流量。圖3示出了根據(jù)此處說(shuō)明的選擇性先驗(yàn)反應(yīng)式路由的在圖1的網(wǎng)絡(luò)100中的示例 性消息交換。例如,如上所述,主動(dòng)提供的RREQ消息305可從MCD節(jié)點(diǎn)C發(fā)送到⑶節(jié)點(diǎn)E。 如此,慣常路由應(yīng)答(RREP)消息310可從⑶發(fā)出以響應(yīng)RREQ消息,由此向MCD返回從MCD 到CD(例如,節(jié)點(diǎn)C到節(jié)點(diǎn)D到節(jié)點(diǎn)E)的路由(或路徑)。然后,MCD可存儲(chǔ)(或緩存)先 驗(yàn)路由條目,例如,在路由表249中,假定接收到的路由是先前未知的,或比當(dāng)前存儲(chǔ)在CD 中的路由(即,仍有效的路由)好。可選地,多個(gè)路徑可從單個(gè)CD返回,諸如,針對(duì)不同的路徑,路徑帶有不同的屬性 (例如,帶寬、資源、延遲、跳數(shù),等等)等。接收MCD可由此存儲(chǔ)/緩存帶有不同權(quán)重的(例 如,可能由于源路由,針對(duì)非對(duì)稱負(fù)載共享)每個(gè)路由或路由的子集(例如,在選擇少量最 佳、主要/備用對(duì)等之后)。在MCD已經(jīng)存儲(chǔ)/緩存了先驗(yàn)路由,MCD(例如,節(jié)點(diǎn)C)可隨后從MCD向一個(gè)或多 個(gè)弱能力設(shè)備(LCD)(例如,節(jié)點(diǎn)A和B)發(fā)送RREP消息315,以經(jīng)由MCD提供從各個(gè)LCD到 ⑶的路由。例如,已發(fā)送的RREP消息15可以是主動(dòng)提供的RREP消息,并且IXD可希望或 不希望存儲(chǔ)該信息(即,存儲(chǔ)該路由或丟棄主動(dòng)提供的RREP消息)。通過(guò)這種方式,LCD可 僅通過(guò)存儲(chǔ)/緩存到⑶的路由來(lái)與⑶路由的先驗(yàn)分布相協(xié)作??商鎿Q地,此處的一個(gè)或多個(gè)實(shí)施例維護(hù)IXD的慣常反應(yīng)式路由操作,使得IXD僅 依賴按需路由。如此,MCD可首先從具體IXD接收慣常RREQ消息以請(qǐng)求道⑶的路由。然 后,作為響應(yīng),帶有到⑶的已知路由的RREP消息315被發(fā)送給具體的IXD。值得注意,根據(jù)此處說(shuō)明的一個(gè)或多個(gè)實(shí)施例,在RREP消息315中承載的路由可 作為到目的地⑶之前的一跳可選地呈現(xiàn)MCD,使得IXD的事件范圍主要限制于最近的MCD。 換言之,RREP消息315可示例性地包括將發(fā)送MCD (例如,節(jié)點(diǎn)C)作為到⑶(例如,節(jié)點(diǎn)E) 的最后一跳的路由,而不管在MCD和CD (例如,節(jié)點(diǎn)D)間的額外跳。相應(yīng)地,當(dāng)LCD經(jīng)由 MCD發(fā)送源路由分組(將路徑包含在分組的頭部中)時(shí),MCD可將分組的頭部置換為到達(dá)目 的地的完整路徑,因此,將在MCD和⑶間的額外跳插入到源路由分組的路徑中。通過(guò)在被需要前獲得到達(dá)關(guān)鍵目的地的路由,并且將那些路由存儲(chǔ)在MCD (例如, 并且可選地某些IXD),此處的新技術(shù)減少了與反應(yīng)式路由協(xié)議相關(guān)聯(lián)的大部分延遲,但是, 通過(guò)修改選擇性先驗(yàn)反應(yīng)式路由,維護(hù)了“純的”反應(yīng)式路由網(wǎng)絡(luò)。但是,與主動(dòng)路由不同,反應(yīng)式路由并不一般配置用于監(jiān)控或檢測(cè)拓?fù)渥兏驗(yàn)樾碌穆酚梢话忝慨?dāng)其被需要時(shí)即 被計(jì)算。相應(yīng)地,存儲(chǔ)了先前獲得的路由的選擇性先驗(yàn)反應(yīng)式路由技術(shù)可由此周期性地從 MCD向⑶重新發(fā)送主動(dòng)提供的RREQ消息305,以更新從MCD到⑶的路由。例如,刷新定時(shí) 器可被配置,使得在其過(guò)期之后,新的RREQ消息305被發(fā)起以更新到達(dá)每個(gè)關(guān)鍵目的地的 路由(例如,每5到10分鐘)。(值得注意,對(duì)此處的技術(shù)的增強(qiáng)是,在告警消息的事件中, 設(shè)備130可在先驗(yàn)已知路由上向CD發(fā)送分組,并且然后重新請(qǐng)求到達(dá)CD的全程路由,以確 保該路由仍舊是有效的。)除了以上說(shuō)明的技術(shù)以外,主動(dòng)提供的RREP消息可被用于備用目的。例如,如圖 4所示(示出了另一示例性消息交換),考慮在傳感器網(wǎng)絡(luò)中的典型的主要和次要匯聚點(diǎn) (CD)的情形,例如,分別是節(jié)點(diǎn)E和F。備用CD (節(jié)點(diǎn)F)可監(jiān)視主CD (節(jié)點(diǎn)E)的狀態(tài),諸 如通過(guò)?;顓f(xié)議(例如,將可被理解,BFD、ICMP等)。一旦檢測(cè)到主⑶故障,備用⑶可生 成主動(dòng)提供的RREP消息410以向所有MCD通告自己(并且由此,生成到次⑶的路由),同 時(shí)指示MCD使用次CD (例如,標(biāo)簽,操作碼等)。當(dāng)MCD接收到主動(dòng)提供的RREP消息410 時(shí),已存儲(chǔ)的到達(dá)主⑶的路由可被變更為到次⑶的路由。通過(guò)這種方式,當(dāng)IXD請(qǐng)求到主 CD的路由時(shí),MCD可簡(jiǎn)單地回應(yīng)以到次CD的路由,或甚至可回應(yīng)以道主CD的路由,并且,在 接收到目的地為主CD的分組時(shí),置換該路徑以將分組轉(zhuǎn)發(fā)到次CD (由此保持LCD對(duì)變更未 知)。這種技術(shù)比經(jīng)典的方式更快(更有效),其中,到達(dá)次⑶的新路由在在網(wǎng)絡(luò)中檢測(cè)到 故障之后被重新計(jì)算(例如,迫使節(jié)點(diǎn)重新請(qǐng)求到達(dá)次CD的路由)。還應(yīng)注意,根據(jù)此處的一個(gè)或多個(gè)實(shí)施例,無(wú)需主動(dòng)提供的RREQ消息,主動(dòng)提供 的RREP消息還可被用于針對(duì)任意感興趣的MCD,從任意CD分配到其自身的先驗(yàn)路由。例 如,⑶可生成主動(dòng)提供的RREP消息410,將其自身通告給所有MCD,使得當(dāng)MCD接收到主動(dòng) 提供的RREP消息410時(shí),其可相應(yīng)地存儲(chǔ)到達(dá)⑶的路由。另外,通過(guò)此處說(shuō)明的體系結(jié)構(gòu),設(shè)備1300XD或MCD)的特質(zhì)可可選地被定義為 動(dòng)態(tài)屬性。即,一旦節(jié)點(diǎn)/設(shè)備被初始插入到網(wǎng)絡(luò)中時(shí),其可基于屬性集(例如,網(wǎng)絡(luò)中的 多個(gè)CD、設(shè)備的可用存儲(chǔ)器;以及設(shè)備的能量級(jí),等等)來(lái)動(dòng)態(tài)地確定其角色。例如,由于 在網(wǎng)絡(luò)中的CD的數(shù)目非常有限,節(jié)點(diǎn)(例如,節(jié)點(diǎn)A或B)可確定其能夠扮演MCD的角色。 另外,如果其在某個(gè)時(shí)間點(diǎn)運(yùn)行至資源稀缺,則節(jié)點(diǎn)(例如,節(jié)點(diǎn)C)可決定釋放器MCD狀態(tài) 并變成LCD。因此,設(shè)備狀態(tài)的動(dòng)態(tài)特質(zhì)提供了高程度的靈活性,并帶有最少的配置。圖5示出了根據(jù)此處說(shuō)明的一個(gè)或多個(gè)實(shí)施例的用于選擇性地應(yīng)用先驗(yàn)反應(yīng)式 路由的示例性流程。該流程開(kāi)始于步驟505,并且繼續(xù)到步驟510,其中,設(shè)備130可動(dòng)態(tài)地 基于多種屬性或手動(dòng)地基于配置來(lái)確定其為MCD還是LCD。假定該設(shè)備是MCD (例如,節(jié)點(diǎn) C),在步驟515,MCD可確定網(wǎng)絡(luò)中的一個(gè)或多個(gè)⑶,諸如,通過(guò)接收泛洪通告、分析網(wǎng)絡(luò)中 的流,或其他配置(例如,輪詢中央殷勤)。相應(yīng)地,在步驟50,MCD可然后向一個(gè)或多個(gè)CD 發(fā)送主動(dòng)提供的RREQ消息,例如,向節(jié)點(diǎn)E。響應(yīng)于主動(dòng)提供的一個(gè)或多個(gè)RREQ消息,MCD然后可在步驟525接收來(lái)自一個(gè)或 多個(gè)⑶的RREP消息,該消息帶有從MCD到⑶的返回路由。在步驟530,這些路由可被存儲(chǔ) 在MCD處(假定,該路由比任意已被MCD存儲(chǔ)的路由都好)(例如,在路由表M9中),并且 然后在步驟535,向一個(gè)或多個(gè)LCD (例如,節(jié)點(diǎn)A和節(jié)點(diǎn)B)發(fā)送作為RREP消息315的消 息,以提供經(jīng)由MCD從每個(gè)各自IXD到⑶的路由。
如上所述,所發(fā)送的一個(gè)或多個(gè)RREP消息315可以是主動(dòng)提供的或響應(yīng)于來(lái)自 IXD的RREQ消息。相應(yīng)地,在步驟M0,取決于此處說(shuō)明的多種因素,IXD可存儲(chǔ)已接收的 路由,其中,其為非主動(dòng)提供的,或?qū)χ鲃?dòng)提供的路由感興趣,或可丟棄主動(dòng)提供的路由。然 后,按照需要,IXD可利用來(lái)自MCD的路由(例如,經(jīng)由MCD)向⑶發(fā)送分組。在步驟M5,在 分組是在MCD處接收到的源路由分組的情形下,并且如果MCD宣布其自身為最后一跳(如 上所述),則在步驟550,MCD可將分組路由到⑶,例如,通過(guò)將在MCD和⑶間的額外跳插入 到源路由分組的路徑中(例如,節(jié)點(diǎn)D)。流程500可在步驟565結(jié)束,示例性地,可選擇在步驟555周期性地重新發(fā)送從 MCD到一個(gè)或多個(gè)CD的主動(dòng)提供的RREQ消息,以更新路由(返回到步驟525)。并且,如上 所述,流程可額外地允許在步驟560從次CD (例如,節(jié)點(diǎn)F)接收主動(dòng)提供的RREP消息410, 以使用到達(dá)次CD的路由,(返回到步驟530)。(本領(lǐng)域技術(shù)人員將理解,雖然某些事件被 以具體次序示出,但是,流程500的步驟僅是示例,并且可包括進(jìn)一步的細(xì)節(jié)或可被省略。)有利地,此處說(shuō)明的新技術(shù)有選擇地將先驗(yàn)反應(yīng)式路由應(yīng)用到計(jì)算機(jī)網(wǎng)絡(luò)中。通 過(guò)將先驗(yàn)分布路由的主動(dòng)提供的反應(yīng)式路由RREQ和RREP消息發(fā)送到關(guān)鍵目的地,新技術(shù) 減少了到達(dá)這些關(guān)鍵目的地的路由確定時(shí)間(例如,在某些網(wǎng)絡(luò)中的大量網(wǎng)絡(luò)流量),但仍 舊保持反應(yīng)式路由協(xié)議的操作。具體地,新技術(shù)因此提供某些主動(dòng)路由典型的益處,但是無(wú) 需利用復(fù)雜的技術(shù)來(lái)合并主動(dòng)和反應(yīng)式路由協(xié)議。同時(shí),以上技術(shù)可有助于避免RREQ風(fēng) 暴,從LCD泛洪到CD全程以響應(yīng)網(wǎng)絡(luò)范圍內(nèi)的事件,例如,告警等。另外,此處說(shuō)明的一個(gè) 或多個(gè)實(shí)施例的動(dòng)態(tài)方面減少了對(duì)笨拙和低效的手動(dòng)配置的需要。值得注意,現(xiàn)存的提議使用混合的方式,該方式包括在最強(qiáng)能力設(shè)備的“核心”處 部署主動(dòng)路由協(xié)議,而在最弱節(jié)點(diǎn)和核心節(jié)點(diǎn)間的網(wǎng)絡(luò)的邊界處部署反應(yīng)式協(xié)議。雖然技 術(shù)上很吸引人,但是,該方式管理起來(lái)很復(fù)雜,因?yàn)槠湫枰诰W(wǎng)絡(luò)中部署重要的混合路由協(xié) 議(主動(dòng)的和反應(yīng)式的),并且由于此問(wèn)題而未被廣泛采納。換言之,雖然這種當(dāng)前的實(shí)現(xiàn) 是非常有問(wèn)題的,特別是從操作的觀點(diǎn)看,但是,在網(wǎng)絡(luò)的某部分利用主動(dòng)路由協(xié)議而在網(wǎng) 路的其他部分使用反應(yīng)式路由協(xié)議的混合方法是已知的。但是,在此處所描述的實(shí)施例中, 僅由反應(yīng)式路由協(xié)議被在整個(gè)網(wǎng)絡(luò)中使用,*但是*,針對(duì)某些關(guān)鍵目的地,在有選擇性的 節(jié)點(diǎn)集(例如,MCD和CD)間使用更改的反應(yīng)式路由機(jī)制(先驗(yàn)主動(dòng)提供的路由請(qǐng)求和應(yīng) 答)。相應(yīng)地,此處說(shuō)明的新技術(shù)有利地改善了在反應(yīng)式網(wǎng)絡(luò)中的收斂時(shí)間,而無(wú)需管理兩 個(gè)獨(dú)立的路由協(xié)議,其中,在先驗(yàn)反應(yīng)式路由和慣常反應(yīng)式路由間的界限由LCD到MCD的連 接被動(dòng)態(tài)維護(hù),如此處所說(shuō)明的,其也為動(dòng)態(tài)狀態(tài)。雖然已經(jīng)示出并說(shuō)明了有選擇地將先驗(yàn)反應(yīng)式路由應(yīng)用到計(jì)算機(jī)網(wǎng)絡(luò)中的闡釋 性實(shí)施例,應(yīng)當(dāng)理解,在本發(fā)明的精神和范圍內(nèi),可做出多種其他適應(yīng)例和修改例。例如,此 處,實(shí)施例已被示出并說(shuō)明用于具體的反應(yīng)式路由協(xié)議請(qǐng)求/應(yīng)答消息。但是,本發(fā)明的實(shí) 施例在其更廣泛的范圍內(nèi)并不限制于此,并且,實(shí)際上,可被與任意類似的操作性反應(yīng)式路 由技術(shù)一起使用。另外,雖然已經(jīng)做出了多種參考傳感器或傳感器網(wǎng)絡(luò)的示例性網(wǎng)絡(luò),該網(wǎng) 絡(luò)受益于反應(yīng)式路由協(xié)議,但是,任意類型的利用反應(yīng)式路由的網(wǎng)絡(luò)科受益于此處的教導(dǎo), 并且,實(shí)施例并不限于傳感器網(wǎng)絡(luò)。上述說(shuō)明涉及本發(fā)明的具體實(shí)施例。但是,將很明顯,可以向所說(shuō)明的實(shí)施例進(jìn)行 其他變更和修改,并獲得一些或所有其優(yōu)勢(shì)。例如,很清楚地構(gòu)想此處所說(shuō)明的組件/或元件能夠被實(shí)現(xiàn)為存儲(chǔ)在有形計(jì)算機(jī)可讀介質(zhì)(例如,磁盤/CD等)上的軟件,該介質(zhì)具有執(zhí) 行在計(jì)算機(jī)、硬件、固件,或其組合之上的程序指令。相應(yīng)地,本說(shuō)明將僅作為示例,并且不 限制本發(fā)明的范圍。因此,所附權(quán)利要求的目的是覆蓋所有這些在本發(fā)明的真正精神和范 圍內(nèi)的變形例和修改例。
權(quán)利要求
1.一種方法,包括通過(guò)強(qiáng)能力設(shè)備MCD在計(jì)算機(jī)網(wǎng)絡(luò)中確定關(guān)鍵目的地⑶; 從MCD向CD發(fā)送主動(dòng)提供的反應(yīng)式選路路由請(qǐng)求RREQ消息; 在所述MCD處接收來(lái)自所述CD的第一路由應(yīng)答RREP消息,所述第一 RREP消息具有從 所述MCD到所述CD的路由;在所述MCD處存儲(chǔ)所述路由;以及從所述MCD向一個(gè)或多個(gè)弱能力設(shè)備LCD發(fā)送第二 RREP消息,以提供經(jīng)由所述MCD從 各個(gè)相應(yīng)LCD到所述CD的路由。
2.如權(quán)利要求1所述的方法,還包括在所述MCD處接收來(lái)自具體LCD的RREQ消息,以請(qǐng)求到所述CD的路由,其中,響應(yīng)于 接收到的RREQ消息,所述第二 RREP消息從所述MCD被發(fā)送到所述具體的LCD。
3.如權(quán)利要求1所述的方法,其中,所述第二RREP消息是響應(yīng)于將所述路由存儲(chǔ)在所 述MCD處的主動(dòng)提供的RREP消息。
4.如權(quán)利要求3所述的方法,還包括在所述LCD處,存儲(chǔ)來(lái)自所述主動(dòng)提供的RREP消息的到所述CD的路由,或丟棄所述主 動(dòng)提供的RREP消息。
5.如權(quán)利要求1所述的方法,其中,所述第二RREP消息將所述MCD表示為到所述CD的 最后一跳,而不管所述MCD和所述CD間的額外跳。
6.如權(quán)利要求5所述的方法,還包括在所述MCD處,在從LCD到所述CD的路由上,接收源路由分組,所述源路由分組具有路 徑;以及將所述MCD和所述CD間的額外跳插入到所述源路由分組的路徑中。
7.如權(quán)利要求1所述的方法,其中,所述⑶是主⑶,所述方法還包括從次CD在所述MCD處接收主動(dòng)提供的RREP消息,所述主動(dòng)提供的RREP消息具有從所 述MCD到所述次CD的路由和使用所述次CD的指示;以及作為響應(yīng),將已存儲(chǔ)的到所述主CD的路由變更為到所述次CD的路由。
8.如權(quán)利要求1所述的方法,還包括在所述MCD處從所述CD接收主動(dòng)提供的RREP消息,所述主動(dòng)提供的RREP消息具有從 所述MCD到所述CD的路由;以及響應(yīng)于對(duì)所述CD的興趣,在所述MCD處存儲(chǔ)到所述CD的路由。
9.如權(quán)利要求1所述的方法,還包括 由所述MCD確定多個(gè)CD ;從所述MCD向所述多個(gè)CD中的每一個(gè)發(fā)送主動(dòng)提供的RREQ消息;在所述MCD處從每個(gè)CD接收第一 RREP消息;以及在所述MCD處針對(duì)每個(gè)CD存儲(chǔ)來(lái)自所述第一 RREP消息的路由。
10.如權(quán)利要求1所述的方法,其中,所述主動(dòng)提供的RREQ消息向所述CD返回多個(gè)路
11.如權(quán)利要求10所述的方法,還包括 在所述MCD處選擇和存儲(chǔ)到所述CD的多個(gè)路由的子集。
12.如權(quán)利要求1所述的方法,還包括將設(shè)備的狀態(tài)從MCD或LCD分別變更為L(zhǎng)CD或MCD。
13.如權(quán)利要求12所述的方法,還包括基于在所述設(shè)備處的一個(gè)或多個(gè)屬性,動(dòng)態(tài)變更所述狀態(tài)。
14.如權(quán)利要求13所述的方法,其中,所述屬性是從如下組中選擇的計(jì)算機(jī)網(wǎng)路中的 CD數(shù)量;所述設(shè)備的可用存儲(chǔ)器;所述設(shè)備的能量級(jí)。
15.如權(quán)利要求1所述的方法,還包括基于對(duì)網(wǎng)絡(luò)中的流量的分析,在所述MCD處確定所述CD。
16.如權(quán)利要求1所述的方法,還包括基于在計(jì)算機(jī)網(wǎng)絡(luò)中接收到的泛洪通告,在所述MCD處確定所述CD。
17.如權(quán)利要求1所述的方法,還包括在所述MCD啟動(dòng)時(shí),通過(guò)由所述MCD輪詢中央政策引擎來(lái)在所述MCD處確定所述CD。
18.如權(quán)利要求1所述的方法,還包括從所述MCD周期性地向所述CD重新發(fā)送所述主動(dòng)提供的RREQ消息,以更新從所述MCD 到所述⑶的路由。
19.一種裝置,包括一個(gè)或多個(gè)網(wǎng)絡(luò)接口,適合于根據(jù)反應(yīng)式路由協(xié)議在計(jì)算機(jī)網(wǎng)絡(luò)中與節(jié)點(diǎn)通信; 處理器,該處理器與所述網(wǎng)絡(luò)接口相耦合,并且適合于執(zhí)行一個(gè)或多個(gè)處理;以及 存儲(chǔ)器,該存儲(chǔ)器適合于存儲(chǔ)可由所述處理器執(zhí)行的選擇性先驗(yàn)反應(yīng)式路由處理,所 述處理當(dāng)被執(zhí)行時(shí)可操作用于在計(jì)算機(jī)網(wǎng)絡(luò)中確定關(guān)鍵目的地CD ;向所述CD發(fā)送主動(dòng)提供的反應(yīng)式選路路由請(qǐng)求RREQ消息;從所述CD接收第一路由應(yīng)答RREP消息,所述第一 RREP消息具有從所述MCD到所述CD 的路由;存儲(chǔ)所述路由;以及向一個(gè)或多個(gè)弱能力設(shè)備LCD發(fā)送第二 RREP消息,以提供經(jīng)由所述裝置從各個(gè)相應(yīng)的 IXD到所述⑶的路由。
20.一種計(jì)算機(jī)可讀介質(zhì),該介質(zhì)上編碼有軟件,所述軟件當(dāng)在設(shè)備上執(zhí)行時(shí)可操作用于在計(jì)算機(jī)網(wǎng)絡(luò)中確定關(guān)鍵目的地CD ;向所述CD發(fā)送主動(dòng)提供的反應(yīng)式選路路由請(qǐng)求RREQ消息;從所述CD接收第一路由應(yīng)答RREP,所述第一 RREP消息具有從所述MCD到所述CD的路由;存儲(chǔ)所述路由;以及向一個(gè)或多個(gè)弱能力設(shè)備LCD發(fā)送第二 RREP消息,以提供經(jīng)由所述設(shè)備從各個(gè)相應(yīng)的 IXD到所述⑶的路由。
全文摘要
在一個(gè)實(shí)施例中,計(jì)算機(jī)網(wǎng)絡(luò)中的強(qiáng)能力設(shè)備(MCD)可確定一個(gè)或多個(gè)關(guān)鍵目的地(CD),并且向每個(gè)CD發(fā)送主動(dòng)提供的反應(yīng)式選路路由請(qǐng)求(RREQ)消息。然后,MCD可從CD接收路由具有從MCD到CD的路由的應(yīng)答(RREP)消息,并且可將該路由存儲(chǔ)在MCD處。隨后,MCD可向一個(gè)或多個(gè)弱能力設(shè)備(LCD)發(fā)送其自身的RREP消息,以提供經(jīng)由MCD從各個(gè)相應(yīng)LCD到CD的路由。
文檔編號(hào)H04W40/26GK102084689SQ200980125686
公開(kāi)日2011年6月1日 申請(qǐng)日期2009年11月16日 優(yōu)先權(quán)日2008年11月17日
發(fā)明者帕斯卡爾·蒂貝爾特, 文森特·讓·瑞比爾, 讓-菲利普·瓦瑟爾 申請(qǐng)人:思科技術(shù)公司