專利名稱:特定網(wǎng)中的路由更新的制作方法
背景本發(fā)明涉及特定網(wǎng)中的路由選擇。更具體而言,本發(fā)明涉及特定網(wǎng)中的路由更新。
傳統(tǒng)的網(wǎng)絡(luò)協(xié)議是基于固定網(wǎng)的特征和/或特性。在固定網(wǎng)中,網(wǎng)絡(luò)配置典型地不改變。盡管節(jié)點(diǎn)在固定網(wǎng)中可以被添加和刪除,但是數(shù)組分組在兩個節(jié)點(diǎn)之間經(jīng)過的路由通常不改變。缺點(diǎn)是固定網(wǎng)無法被容易地重新配置以解決數(shù)據(jù)業(yè)務(wù)量中的增加,也稱作系統(tǒng)加載。因此,當(dāng)系統(tǒng)加載對于一個節(jié)點(diǎn)增加時,周圍節(jié)點(diǎn)可能在數(shù)據(jù)的發(fā)送和接收中經(jīng)歷增加的延遲。
與固定網(wǎng)相反,特定網(wǎng)是動態(tài)的。當(dāng)多個節(jié)點(diǎn)決定一起加入以構(gòu)成一個網(wǎng)絡(luò)時,一個特定網(wǎng)被構(gòu)成。由于特定網(wǎng)中的節(jié)點(diǎn)作為主機(jī)和路由器操作,所以特定網(wǎng)不需要固定網(wǎng)所需要的基礎(chǔ)結(jié)構(gòu)。因此,特定網(wǎng)協(xié)議是基于節(jié)點(diǎn)可能總是在相同的物理位置的這樣一個假設(shè)。
藍(lán)牙是示范的特定網(wǎng)技術(shù)。藍(lán)牙是對于話音以及數(shù)據(jù)的無線通信的開放規(guī)范。它基于短程、通用無線電鏈路,并且它提供一種機(jī)制,用于構(gòu)成被連接設(shè)備的小型特定群,而無需一個固定網(wǎng)基礎(chǔ)結(jié)構(gòu),所述被連接設(shè)備包括諸如打印機(jī)、PDA、臺式計算機(jī)、FAX機(jī)器、鍵盤、操縱桿、電話或者實際上的任何設(shè)備。藍(lán)牙工作在未注冊的2.4GHz的工業(yè)-科學(xué)-醫(yī)療(ISM)頻段。
圖1示出一個藍(lán)牙微微網(wǎng)。微微網(wǎng)是使用藍(lán)牙技術(shù)以特定形式連接的諸如任何以上提及的數(shù)字設(shè)備的集合。微微網(wǎng)最初是由兩個連接設(shè)備構(gòu)成的,這里稱作藍(lán)牙設(shè)備。一個微微網(wǎng)可以包括最多到8個藍(lán)牙設(shè)備。在每個微微網(wǎng)中,例如微微網(wǎng)100中,有一個主藍(lán)牙單元和一個或多個從藍(lán)牙單元。在圖1中,藍(lán)牙單元101是主單元,而單元102是一個藍(lán)牙從單元。
根據(jù)藍(lán)牙技術(shù),一個從單元只能夠直接與一個主單元通信。圖2示出了一個具有一個主單元201和多個從單元202-208的以星型網(wǎng)絡(luò)拓?fù)渑帕械奈⑽⒕W(wǎng)。如果從單元202希望與從單元206通信,則從單元202不得不發(fā)送它希望傳送到主單元201的信息。然后,主單元201將信息發(fā)送到從單元206。
一個散射網(wǎng)是由多個獨(dú)立的并且不同步的微微網(wǎng)構(gòu)成的。圖3示出了一個示范的散射網(wǎng)300。在圖3中,微微網(wǎng)1包括一個主節(jié)點(diǎn)303和從節(jié)點(diǎn)301、302和304;微微網(wǎng)2包括主節(jié)點(diǎn)305和從節(jié)點(diǎn)304、306、307和308;以及微微網(wǎng)3包括主節(jié)點(diǎn)309和從節(jié)點(diǎn)308、310和311。為了實現(xiàn)一個散射網(wǎng),需要使用作為一個以上微微網(wǎng)的成員的節(jié)點(diǎn)。這種節(jié)點(diǎn)在這里稱作轉(zhuǎn)發(fā)節(jié)點(diǎn)。如果例如節(jié)點(diǎn)301希望與節(jié)點(diǎn)310通信,則節(jié)點(diǎn)304和308可以通過在兩個微微網(wǎng)之間并且特別是在節(jié)點(diǎn)301和310之間轉(zhuǎn)發(fā)分組而作為轉(zhuǎn)發(fā)節(jié)點(diǎn)。例如,節(jié)點(diǎn)301將信息傳送到微微網(wǎng)1的主節(jié)點(diǎn)303。主節(jié)點(diǎn)303將信息傳送到轉(zhuǎn)發(fā)節(jié)點(diǎn)304。然后,轉(zhuǎn)發(fā)節(jié)點(diǎn)304將信息轉(zhuǎn)發(fā)到主節(jié)點(diǎn)305,后者進(jìn)而又將信息發(fā)送到轉(zhuǎn)發(fā)節(jié)點(diǎn)308。轉(zhuǎn)發(fā)節(jié)點(diǎn)308將信息轉(zhuǎn)發(fā)到主節(jié)點(diǎn)309,主節(jié)點(diǎn)309將信息發(fā)送到目的節(jié)點(diǎn)310。
一般而言,在特定網(wǎng)中管理路由的形成和/或更新的協(xié)議可以被分類成為主動型(proactive)或者反應(yīng)型(reactive)。主動型路由選擇協(xié)議試圖更新和維持節(jié)點(diǎn)之間的路由,包括目前未在使用的路由。典型地,主動型路由選擇協(xié)議對網(wǎng)絡(luò)拓?fù)渥兓龀龇磻?yīng),即使沒有受拓?fù)渥兓绊懙漠?dāng)前業(yè)務(wù)量。為了在采用主動型路由選擇的特定網(wǎng)中更新和維持節(jié)點(diǎn)之間的路由,每個節(jié)點(diǎn)周期地將控制信息發(fā)送到網(wǎng)絡(luò)中的其它節(jié)點(diǎn)。但是,這需要大量的信令,其消耗寶貴的帶寬并且導(dǎo)致網(wǎng)絡(luò)擁塞。網(wǎng)絡(luò)擁塞進(jìn)而又導(dǎo)致對于傳輸通過網(wǎng)絡(luò)的分組的更大的傳輸延遲。
與主動型路由選擇協(xié)議相反,反應(yīng)型路由選擇協(xié)議只有當(dāng)存在對于發(fā)送分組的立即需要時才建立路由。此外,反應(yīng)型路由選擇協(xié)議只維持關(guān)于目前被用于發(fā)送數(shù)據(jù)分組的路由的信息。因此,與主動型路由選擇協(xié)議相比,反應(yīng)型協(xié)議導(dǎo)致較少的網(wǎng)絡(luò)信令以及因此較少的網(wǎng)絡(luò)擁塞和較少的由于擁塞而導(dǎo)致的延遲。
為了使用反應(yīng)型協(xié)議建立從一個源節(jié)點(diǎn)到目的節(jié)點(diǎn)的路由,一個請求消息被從源節(jié)點(diǎn)發(fā)送到目的節(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),除了它從中接收請求消息的節(jié)點(diǎn)之外。在使用反應(yīng)型路由選擇協(xié)議工作的網(wǎng)絡(luò)中,如果一個相鄰節(jié)點(diǎn)正在將數(shù)據(jù)分組路由到對于另一個源節(jié)點(diǎn)的目的節(jié)點(diǎn),則該相鄰節(jié)點(diǎn)可以有一個到高速緩存在一個路由選擇表中的目的地的有效路由。
目的節(jié)點(diǎn)或者具有到目的節(jié)點(diǎn)的一條有效高速緩存的路由的一個節(jié)點(diǎn)一旦接收到請求消息,就不重新廣播請求消息。這限制了由重新廣播請求消息而引起的網(wǎng)絡(luò)擴(kuò)散量。此外,目的節(jié)點(diǎn)產(chǎn)生一個單播應(yīng)答消息并且將該應(yīng)答消息發(fā)送回源節(jié)點(diǎn)。盡管源節(jié)點(diǎn)可以接收一個以上的應(yīng)答消息,但是源節(jié)點(diǎn)使用第一個被接收的應(yīng)答消息來開始將數(shù)據(jù)分組發(fā)送到目的節(jié)點(diǎn)。根據(jù)反應(yīng)型路由,源節(jié)點(diǎn)將只有在被使用的實際路由斷掉時才請求一條新路由。
特定網(wǎng)中的路由選擇可以作為源路由選擇執(zhí)行也可以作為距離矢量路由選擇執(zhí)行。在源路由選擇中,從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的一條完整路由在應(yīng)答消息中被接收到。因此,只有源需要跟蹤源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由。當(dāng)分組被從源節(jié)點(diǎn)發(fā)送到目的節(jié)點(diǎn)時,整個路由被在每個分組中指定。
在距離矢量路由選擇中,隨著應(yīng)答消息被從目的節(jié)點(diǎn)發(fā)送到源節(jié)點(diǎn),每個中間節(jié)點(diǎn)將路由信息存儲在路由選擇表中。因此,源節(jié)點(diǎn)將只需要將目的節(jié)點(diǎn)地址放置在每個分組中用于該分組到達(dá)目的節(jié)點(diǎn)。
傳統(tǒng)的反應(yīng)型特定路由選擇協(xié)議尤其是諸如藍(lán)牙網(wǎng)絡(luò)的無線特定網(wǎng)有幾個缺點(diǎn)。典型地,一旦源節(jié)點(diǎn)已經(jīng)建立到目的節(jié)點(diǎn)的路由,源節(jié)點(diǎn)就繼續(xù)使用相同的路由直到節(jié)點(diǎn)移動導(dǎo)致網(wǎng)絡(luò)拓?fù)渲械淖兓?,從而?dǎo)致源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的路由斷掉為止。因此,傳統(tǒng)的反應(yīng)型特定路由選擇協(xié)議不適應(yīng)不導(dǎo)致實際鏈路斷開的拓?fù)渥兓@?,盡管在源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間有一條有效路由,但是在源和目的節(jié)點(diǎn)之間的跳數(shù)以及由該跳數(shù)所導(dǎo)致的延遲方面,所述路由實際上可能不是最佳的。此外,傳統(tǒng)的反應(yīng)型特定路由選擇協(xié)議不對業(yè)務(wù)量模式中的變化做出反應(yīng)。例如,沿著路由的某些節(jié)點(diǎn)可能結(jié)束處理比當(dāng)路由首先被建立時多的業(yè)務(wù)量。沿著所述路由的業(yè)務(wù)量中的增長將導(dǎo)致丟下的分組以及源和目的節(jié)點(diǎn)之間的較高延遲。此外,即使沒有網(wǎng)絡(luò)拓?fù)渲械淖兓?,在源?jié)點(diǎn)和目的節(jié)點(diǎn)之間構(gòu)成的初始路由也可能不是最佳路由。
因此,希望允許反應(yīng)型特定路由選擇協(xié)議來判定在源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間是否存在更佳路由。這些路由在源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的較少跳數(shù)或者在沿著初始路由被丟下的分組以及網(wǎng)絡(luò)延遲方面可能比初始路由更優(yōu)化。
發(fā)明內(nèi)容
根據(jù)本發(fā)明克服了傳統(tǒng)技術(shù)的這些以及其它問題、缺點(diǎn)和限制,其中根據(jù)反應(yīng)型路由選擇協(xié)議工作的網(wǎng)絡(luò)中的一個源節(jié)點(diǎn)將根據(jù)預(yù)定事件來更新路由。發(fā)明的方法和設(shè)備可以在使用源路由選擇以及使用距離矢量路由選擇的網(wǎng)絡(luò)中實現(xiàn)。此外,根據(jù)某些實施例,具有到目的節(jié)點(diǎn)的被高速緩存的路由的一個節(jié)點(diǎn)能夠為源節(jié)點(diǎn)提供一條被更新的路由。
因此,本發(fā)明的一個目的是允許反應(yīng)型特定路由選擇協(xié)議來判定在源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間是否存在更佳路由。
本發(fā)明的另一個目的是提供裝置,用于當(dāng)出現(xiàn)一個預(yù)定事件時,在使用反應(yīng)型路由選擇協(xié)議的網(wǎng)絡(luò)中的一個源節(jié)點(diǎn)判定是否存在到目的節(jié)點(diǎn)的更佳路由。
本發(fā)明的另一個目的是提供裝置,用于一個中間節(jié)點(diǎn)使用一條高速緩存的路由來通知一個源節(jié)點(diǎn)是否存在到目的節(jié)點(diǎn)的更佳路由。
根據(jù)本發(fā)明的一個方面,通過在使用反應(yīng)型路由選擇協(xié)議的特定網(wǎng)中更新源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間路由的一種方法和/或設(shè)備來達(dá)到上述以及其它目的。源節(jié)點(diǎn)判定一個預(yù)定時間是否發(fā)生。如果預(yù)定事件發(fā)生了,則廣播一個對于被更新路由的請求消息。對于被更新路由的請求消息在一個相鄰節(jié)點(diǎn)被接收到。該相鄰節(jié)點(diǎn)判定它是否是目的節(jié)點(diǎn)。如果相鄰節(jié)點(diǎn)是目的節(jié)點(diǎn),則一個應(yīng)答消息被產(chǎn)生并從該相鄰節(jié)點(diǎn)發(fā)送。
通過下面連同附圖所做的詳細(xì)描述可以理解本發(fā)明的目的和優(yōu)點(diǎn),其中圖1說明一個示范微微網(wǎng);圖2說明一個示范星型拓?fù)渚W(wǎng);圖3說明由多個微微網(wǎng)構(gòu)成的一個示范散射網(wǎng);圖4說明用于在實現(xiàn)源路由選擇的網(wǎng)絡(luò)中進(jìn)行路由更新的示范方法;圖5說明用于在實現(xiàn)源路由選擇的網(wǎng)絡(luò)中的中間節(jié)點(diǎn)中使用高速緩存路由進(jìn)行路由更新的示范方法;圖6說明用于在使用距離矢量路由選擇的網(wǎng)絡(luò)中進(jìn)行路由更新的示范方法;圖7說明用于實現(xiàn)發(fā)明的距離矢量反應(yīng)型路由選擇更新的示范網(wǎng)絡(luò);以及圖8說明用于在實現(xiàn)距離矢量路由選擇的網(wǎng)絡(luò)中的中間節(jié)點(diǎn)中使用高速緩存路由進(jìn)行路由更新的示范方法。
具體實施例方式
本發(fā)明涉及特定網(wǎng)中的路由更新。更明確地,本發(fā)明涉及反應(yīng)型特定網(wǎng)中的更新路由。
盡管以下論述在特定網(wǎng)中使用路由更新的實現(xiàn)方面描述了本發(fā)明,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)認(rèn)識到,本發(fā)明也可以應(yīng)用于固定網(wǎng)或者包括有線和無線網(wǎng)絡(luò)的任何類型的網(wǎng)絡(luò)。
圖4說明了用于在實現(xiàn)源路由選擇的網(wǎng)絡(luò)中更新源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的路由的示范方法。在步驟405中,源節(jié)點(diǎn)判定是否發(fā)生一個預(yù)定事件。該預(yù)定事件可以是一個預(yù)定時間周期期滿。例如,有一條激活路由的每個節(jié)點(diǎn)可以周期地廣播一個對于被更新路由的請求消息,以找到源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的一條新的并且更佳的路由。所述周期可以被設(shè)置,以便源節(jié)點(diǎn)在對于被更新路由的一個當(dāng)前請求傳輸通過網(wǎng)絡(luò)之前,不請求一條被更新路由。此外,本領(lǐng)域技術(shù)人員可以認(rèn)識到,所述時間周期可以被設(shè)置為一個大值,根據(jù)每隔多久到目的節(jié)點(diǎn)的路由被斷掉一次來遞增地縮短所述大值。
另一個預(yù)定事件可以基于業(yè)務(wù)量負(fù)載。如果沿著源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的路由的業(yè)務(wù)量負(fù)載達(dá)到一個預(yù)定等級,其中沿著所述路由的吞吐量下降到一個預(yù)定閾值之下,則源節(jié)點(diǎn)將觸發(fā)一個對于被更新路由的請求。另一個示范預(yù)定事件是沿著路由的延遲。如果沿著源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的路由的延遲超過一個預(yù)定閾值,則源節(jié)點(diǎn)將觸發(fā)對于被更新路由的一個請求。
一個高的跳數(shù),即源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的中間節(jié)點(diǎn)數(shù)還可以被用來觸發(fā)對于被更新路由的請求。如果源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的初始路由的跳數(shù)大于一個確定的跳數(shù),則在源節(jié)點(diǎn)開始使用初始路由的同時,源節(jié)點(diǎn)將觸發(fā)對于被更新路由的請求。
另一個預(yù)定事件是基于源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的熱點(diǎn)。當(dāng)許多不同路由通過相同節(jié)點(diǎn)時,熱點(diǎn)出現(xiàn)。因此,如果通過一個節(jié)點(diǎn)的路由數(shù)超過一個閾值等級,則源節(jié)點(diǎn)觸發(fā)對于被更新路由的一個請求。為了實現(xiàn)熱點(diǎn)預(yù)定事件,中間節(jié)點(diǎn)將通知源節(jié)點(diǎn)關(guān)于該熱點(diǎn),以便源節(jié)點(diǎn)觸發(fā)對于被更新路由的請求。
如果根據(jù)出自405的“否”分支,預(yù)定事件未發(fā)生,則根據(jù)步驟410,源節(jié)點(diǎn)繼續(xù)在其當(dāng)前路由上發(fā)送分組。然后,方法返回到步驟405來判定一個預(yù)定事件是否發(fā)生。如果根據(jù)出自405的“是”分支,一個預(yù)定事件發(fā)生,則根據(jù)步驟415,源節(jié)點(diǎn)廣播對于被更新路由的請求消息。這樣,對于被更新路由的請求消息將區(qū)別于網(wǎng)絡(luò)中的普通請求,源節(jié)點(diǎn)可以在請求消息的頭中放置一個一比特更新標(biāo)記??商娲?,源節(jié)點(diǎn)能夠使用對于更新請求的一個新消息類型區(qū)分這些消息,其中新消息類型碼被放置在路由選擇頭中。如連同圖5更詳細(xì)描述的,源節(jié)點(diǎn)可能不需要從源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的一個中間節(jié)點(diǎn)接收一條高速緩存的路由。因此,通過將對于被更新路由的請求消息與對于路由的其它請求消息區(qū)分來保證被高速緩存的路由不返回到源節(jié)點(diǎn)。當(dāng)然,本領(lǐng)域技術(shù)人員將認(rèn)識到,如果中間節(jié)點(diǎn)被允許高速緩存路由,則只需要將對于被更新路由的請求消息與其它消息進(jìn)行區(qū)分。
在步驟418中,對于被更新路由的請求消息被在一個相鄰節(jié)點(diǎn)接收到。在步驟420中,該相鄰節(jié)點(diǎn)判定它是否是目的節(jié)點(diǎn)。如果根據(jù)出自420的“否”分支,該節(jié)點(diǎn)不是目的節(jié)點(diǎn),則根據(jù)步驟425,該節(jié)點(diǎn)將其地址添加到對于被更新路由的請求消息中并且將該消息重新廣播到相鄰節(jié)點(diǎn)。然后,方法返回到步驟418和425,用于每個相鄰節(jié)點(diǎn)判定它是否是目的節(jié)點(diǎn)。
如果根據(jù)出自420的“是”分支,接收到消息的節(jié)點(diǎn)是目的節(jié)點(diǎn),則根據(jù)步驟430,該節(jié)點(diǎn)產(chǎn)生含有源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的整個路由的一個單播應(yīng)答消息。在步驟435,源節(jié)點(diǎn)判定它想使用新路由還是想繼續(xù)在當(dāng)前激活路由上傳送。源節(jié)點(diǎn)可以根據(jù)路由中的跳數(shù)來進(jìn)行該判定??商娲?,應(yīng)答消息可以收集關(guān)于在回到源節(jié)點(diǎn)的路上的網(wǎng)絡(luò)條件的信息,并且源節(jié)點(diǎn)將使用所收集的信息來判定使用哪條路由。然后,方法返回到步驟405,用于源節(jié)點(diǎn)判定一個預(yù)定事件是否發(fā)生。
圖5說明用于使用在中間節(jié)點(diǎn)中的被高速緩存的路由實現(xiàn)發(fā)明的源路由選擇更新方案的示范方法。本領(lǐng)域的技術(shù)人員將認(rèn)識到,即使在源路由選擇中,中間節(jié)點(diǎn)也可以將路由高速緩存在節(jié)點(diǎn)的路由選擇表中。不過,由于更新請求被用于根據(jù)當(dāng)前網(wǎng)絡(luò)條件來判定新路由,所以可能不希望使用這些被高速緩存的路由。如果源節(jié)點(diǎn)能夠保證被高速緩存的路由具有確定程度的可靠性,即路由相當(dāng)“新”,則被高速緩存的路由可以用于發(fā)明的路由更新方案中。用于實現(xiàn)高速緩存路由的一種方法是存儲當(dāng)路由被創(chuàng)建或更新時存儲時的一個時間值。如果被高速緩存的路由被在一個預(yù)定時間周期中創(chuàng)建或者更新,則不是目的節(jié)點(diǎn)的一個節(jié)點(diǎn)只以該被高速緩存的路由應(yīng)答。可替代地,路由上次被用來傳送分組的時間周期可以被存儲。在這種情況下,如果自從路由上次被使用以來小于一個預(yù)定時間周期,則該被高速緩存的路由將只被發(fā)送回源節(jié)點(diǎn)。
因此,在圖5中,步驟420被步驟520代替。在步驟520中,判定接收到對于被更新路由的請求消息的節(jié)點(diǎn)是否是目的節(jié)點(diǎn)或者是否具有一個到目的節(jié)點(diǎn)的被高速緩存的路由。如果根據(jù)出自520的“否”分支,所述節(jié)點(diǎn)不是目的節(jié)點(diǎn)并且沒有到目的節(jié)點(diǎn)的被高速緩存的路由,則根據(jù)步驟425,所述節(jié)點(diǎn)將其地址添加到對于被更新路由的請求消息中,并且將重新廣播該消息。如果根據(jù)判定塊520的“被高速緩存的路由”的分支,所述節(jié)點(diǎn)不是目的節(jié)點(diǎn),但是該節(jié)點(diǎn)具有到目的節(jié)點(diǎn)的被高速緩存的路由,則根據(jù)步驟522,判定被高速緩存的路由是否符合確定的標(biāo)準(zhǔn)。這些標(biāo)準(zhǔn)在上面已經(jīng)描述并且可以在步驟522中實現(xiàn)用于判定被高速緩存的路由是否可接受的任一方法。如果根據(jù)出自522的“否”分支,判定被高速緩存的路由不符合標(biāo)準(zhǔn),則根據(jù)步驟425,所述節(jié)點(diǎn)將其地址添加到對于被更新路由的請求消息中并且重新廣播該消息。
如果根據(jù)出自522的“是”分支,判定所述節(jié)點(diǎn)具有一條滿足標(biāo)準(zhǔn)的被高速緩存的路由,或者根據(jù)出自520的“目的節(jié)點(diǎn)”分支,判定所述節(jié)點(diǎn)是目的節(jié)點(diǎn),則根據(jù)步驟430,所述節(jié)點(diǎn)產(chǎn)生一個含有從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的整個路由的單播應(yīng)答消息。在步驟435中,源節(jié)點(diǎn)接收應(yīng)答消息并且判定是否使用新路由。
圖6說明用于在實現(xiàn)距離矢量路由選擇的網(wǎng)絡(luò)中的源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間更新路由的示范方法。在步驟605中,源節(jié)點(diǎn)判定預(yù)定事件是否發(fā)生。如果根據(jù)出自605的“否”分支,預(yù)定事件沒有發(fā)生,則根據(jù)步驟610,源節(jié)點(diǎn)繼續(xù)在其當(dāng)前路由上發(fā)送分組。
如果根據(jù)出自605的“是”分支,預(yù)定事件發(fā)生,則根據(jù)步驟615,源節(jié)點(diǎn)廣播一個對于被更新路由的請求消息。如上所述,這樣被更新路由消息就能夠與網(wǎng)絡(luò)中的普通請求區(qū)別開來,源節(jié)點(diǎn)能夠?qū)⒁粋€一比特更新標(biāo)志放置在請求消息的頭中??商娲?,源節(jié)點(diǎn)能夠使用對于更新請求的新消息類型來區(qū)分這些消息,其中新消息類型碼被放置在路由選擇頭中。
在步驟620中,作為源節(jié)點(diǎn)的鄰節(jié)點(diǎn)的一個節(jié)點(diǎn)接收到對于被更新路由的請求消息。在步驟622中,節(jié)點(diǎn)將一條回到源的臨時路由存儲在一個與節(jié)點(diǎn)正常路由選擇表分開的表中。臨時路由被存儲在一個分開的表中以保證該路由不被激活直到應(yīng)答消息已經(jīng)從目的節(jié)點(diǎn)發(fā)送為止??商娲?,臨時路由可以存儲在與激活路由相同的表中,臨時路由被以一個特殊記號來區(qū)分。另一個替代方案是將沒有特殊記號的臨時路由放置在與激活路由相同的路由選擇表中,并且令節(jié)點(diǎn)激活臨時路由供使用。
在步驟625中,接收到廣播消息的節(jié)點(diǎn)判定它是否是目的節(jié)點(diǎn)。如果根據(jù)出自625的“否”分支,該節(jié)點(diǎn)不是目的節(jié)點(diǎn),則根據(jù)步驟630,該節(jié)點(diǎn)將其地址添加到消息中并且將對于被更新路由的請求消息重新廣播到相鄰節(jié)點(diǎn)??商娲?,如果協(xié)議提供用于將地址信息提供給相鄰節(jié)點(diǎn)的另一個機(jī)制,則節(jié)點(diǎn)不需要將其地址添加到消息中。根據(jù)從步驟630到步驟620的路徑,每個相鄰節(jié)點(diǎn)判定它是否是目的節(jié)點(diǎn)。
如果根據(jù)出自625的“是”分支,所述節(jié)點(diǎn)判定它是目的節(jié)點(diǎn),則該節(jié)點(diǎn)產(chǎn)生應(yīng)答更新消息,該消息包括一個一比特更新標(biāo)志在應(yīng)答頭中或者一個具有新消息類型碼的新消息類型在路由選擇頭中。在步驟640中,應(yīng)答更新消息被在臨時路由上從目的節(jié)點(diǎn)發(fā)送回源節(jié)點(diǎn)。隨著應(yīng)答更新消息沿著路由傳輸,每個節(jié)點(diǎn)根據(jù)步驟645判定它是否是源節(jié)點(diǎn)。如果根據(jù)出自645的“是”分支,該節(jié)點(diǎn)是源節(jié)點(diǎn),則根據(jù)步驟650,該節(jié)點(diǎn)開始在新路由上發(fā)送分組。方法返回到步驟605,并且源節(jié)點(diǎn)判定預(yù)定事件是否發(fā)生。
如果根據(jù)出自645的“否”分支,所述節(jié)點(diǎn)不是源節(jié)點(diǎn),則根據(jù)步驟655,在節(jié)點(diǎn)的路由選擇表中,該節(jié)點(diǎn)用被更新的臨時路由代替當(dāng)前路由。應(yīng)答消息將激活在節(jié)點(diǎn)的臨時路由的前向和反向。當(dāng)節(jié)點(diǎn)用臨時路由代替激活路由之后,節(jié)點(diǎn)將發(fā)送消息到臨時路由中的下一個節(jié)點(diǎn)。這持續(xù)到應(yīng)答消息到達(dá)源節(jié)點(diǎn)為止。可替代地,如果臨時路由未被存儲在一個分開的路由選擇表中,則步驟655將只激活臨時路由的前向和反向。
如上所述,在步驟655中,中間節(jié)點(diǎn)不用臨時路由代替路由選擇表中的當(dāng)前路由,直到應(yīng)答更新消息在從目的節(jié)點(diǎn)傳輸?shù)皆垂?jié)點(diǎn)時被節(jié)點(diǎn)接收到為止。這是為了保證源變化不會影響傳輸中的數(shù)據(jù)分組。例如,圖7說明包括一個源節(jié)點(diǎn)S、中間節(jié)點(diǎn)1-3和目的節(jié)點(diǎn)D的一個示范特定網(wǎng)。虛線表示源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的當(dāng)前路由。當(dāng)前路由在源節(jié)點(diǎn)S開始,通過中間節(jié)點(diǎn)1-3并且在目的節(jié)點(diǎn)D終止。
現(xiàn)在假設(shè)對于被更新路由的請求消息從源節(jié)點(diǎn)傳輸通過中間節(jié)點(diǎn)1和2,并且在目的節(jié)點(diǎn)D終止。中間節(jié)點(diǎn)2將繼續(xù)從源節(jié)點(diǎn)發(fā)送分組到節(jié)點(diǎn)3,直到中間節(jié)點(diǎn)2接收到來自目的節(jié)點(diǎn)D的更新應(yīng)答消息為止。
圖8說明用于使用中間節(jié)點(diǎn)中的被高速緩存的路由實現(xiàn)發(fā)明的距離矢量路由更新方案的示范方法。在圖8中,步驟625被步驟825代替。在步驟825中,判定接收到對于更新路由的請求消息的節(jié)點(diǎn)是否是目的節(jié)點(diǎn)或者具有到目的節(jié)點(diǎn)的被高速緩存的路由。如果根據(jù)出自825的“否”分支,該節(jié)點(diǎn)不是目的節(jié)點(diǎn)并且沒有到目的節(jié)點(diǎn)的高速緩存的路由,則根據(jù)步驟630,該節(jié)點(diǎn)將其地址添加到對于被更新路由的請求消息中并且將重新廣播該消息。如果所述節(jié)點(diǎn)不是目的節(jié)點(diǎn),但是根據(jù)判定塊825的“被高速緩存的路由”分支,該節(jié)點(diǎn)具有到目的節(jié)點(diǎn)的被高速緩存的路由,則根據(jù)步驟827,判定被高速緩存的路由是否符合確定的標(biāo)準(zhǔn)。這些標(biāo)準(zhǔn)與上面參考圖5描述的標(biāo)準(zhǔn)相同,并且可以在步驟827中實現(xiàn)用于判定被高速緩存的路由是否可以接受的任一方法。如果根據(jù)出自827的“否”分支,判定被高速緩存的路由不符合標(biāo)準(zhǔn),則根據(jù)步驟630,節(jié)點(diǎn)將其地址添加到對于被更新路由的請求消息中,并且重新廣播該消息。被高速緩存的路由不符合標(biāo)準(zhǔn),則根據(jù)步驟630,節(jié)點(diǎn)將其地址添加到對于被更新路由的請求消息中,并且重新廣播該消息。
如果根據(jù)出自判定步驟827的“是”分支,判定節(jié)點(diǎn)具有符合標(biāo)準(zhǔn)的被高速緩存的路由,或者根據(jù)出自判定步驟825的“目的節(jié)點(diǎn)”分支,判定節(jié)點(diǎn)是目的節(jié)點(diǎn),則根據(jù)步驟635,該節(jié)點(diǎn)將產(chǎn)生一個包括指示它是一個應(yīng)答消息的特殊標(biāo)記的單播應(yīng)答消息。圖8的方法的其余部分以類似于圖6的方法的方式操作。
通過提供用于在使用反應(yīng)型路由選擇協(xié)議的特定網(wǎng)中更新路由的機(jī)制,更有效的路由能夠被發(fā)現(xiàn)。此外,使用發(fā)明的路由更新機(jī)制的反應(yīng)型路由選擇需要比主動型路由選擇協(xié)議少的信令以及因此網(wǎng)絡(luò)上的較少負(fù)載。與上述路由發(fā)現(xiàn)相關(guān)的技術(shù)和硬件實現(xiàn)提供識別源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的替代路由的簡單、有效和準(zhǔn)確的方法。因此,本發(fā)明與現(xiàn)有技術(shù)相比保存了有價值的網(wǎng)絡(luò)資源。
以上參考幾個示范實施例描述了本發(fā)明。但是,對于本領(lǐng)域的技術(shù)人員來說顯而易見,可能以不同于上述示范實施例的形式的特定形式來實現(xiàn)本發(fā)明。在不偏離本發(fā)明精神的條件下可以實現(xiàn)上述目的。這些示范實施例只是說明性的,并且不應(yīng)當(dāng)被以任何方式認(rèn)為是限制性的。本發(fā)明的范圍由所附的權(quán)利要求而不是前面的描述給出,并且所有落在權(quán)利要求范圍內(nèi)的變化以及等價物都應(yīng)當(dāng)包括在其中。
權(quán)利要求
1.一種在特定網(wǎng)中用于更新源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的路由的方法,該方法包括步驟在源節(jié)點(diǎn)中判定一個預(yù)定事件是否發(fā)生;如果預(yù)定事件發(fā)生,則廣播對于被更新路由的請求消息;在一個相鄰節(jié)點(diǎn)中接收所述對于被更新路由的請求消息;判定所述相鄰節(jié)點(diǎn)是否是目的節(jié)點(diǎn);以及如果所述相鄰節(jié)點(diǎn)是目的節(jié)點(diǎn),則從所述相鄰節(jié)點(diǎn)產(chǎn)生并發(fā)送一個應(yīng)答消息;其中網(wǎng)絡(luò)使用一個反應(yīng)型路由選擇協(xié)議。
2.如權(quán)利要求所述的方法,其中網(wǎng)絡(luò)根據(jù)源路由選擇工作,并且產(chǎn)生和發(fā)送一個應(yīng)答消息的步驟還包括步驟將源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的整個路由插入到應(yīng)答消息中。
3.如權(quán)利要求2所述的方法,還包括步驟將應(yīng)答消息通過中間節(jié)點(diǎn)轉(zhuǎn)發(fā)到源節(jié)點(diǎn);以及在中間節(jié)點(diǎn)將關(guān)于網(wǎng)絡(luò)條件的信息插入到應(yīng)答消息中。
4.如權(quán)利要求3所述的方法,其中源節(jié)點(diǎn)根據(jù)網(wǎng)絡(luò)條件信息判定使用哪條路由。
5.如權(quán)利要求1所述的方法,其中網(wǎng)絡(luò)根據(jù)距離矢量路由選擇來工作,該方法還包括步驟存儲一條從相鄰節(jié)點(diǎn)到源節(jié)點(diǎn)的臨時路由。
6.如權(quán)利要求5所述的方法,還包括步驟在一個節(jié)點(diǎn)接收應(yīng)答消息;判定所述節(jié)點(diǎn)是否是源節(jié)點(diǎn);用臨時路由替代源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的當(dāng)前路由;以及如果所述節(jié)點(diǎn)是源節(jié)點(diǎn),則在臨時路由上發(fā)送消息。
7.如權(quán)利要求1所述的方法,還包括步驟判定相鄰節(jié)點(diǎn)是否有到目的節(jié)點(diǎn)的被高速緩存的路由;以及如果相鄰節(jié)點(diǎn)有到目的節(jié)點(diǎn)的符合預(yù)定標(biāo)準(zhǔn)的被高速緩存的路由,則從相鄰節(jié)點(diǎn)中產(chǎn)生和發(fā)送一個應(yīng)答消息。
8.如權(quán)利要求7所述的方法,還包括步驟存儲一條路由被創(chuàng)建或者更新時的一個時間值,其中如果在接收到對于被更新路由的請求消息之前,被高速緩存的路由已經(jīng)被創(chuàng)建或者更新小于一個預(yù)定時間,則預(yù)定標(biāo)準(zhǔn)被滿足。
9.如權(quán)利要求7所述的方法,還包括步驟存儲一條路由上次被用于傳送分組時的一個時間值,其中如果在接收到對于被更新路由的請求消息之前,被高速緩存的路由上次被用于傳送分組小于一個預(yù)定時間,則預(yù)定標(biāo)準(zhǔn)被滿足。
10.如權(quán)利要求1所述的方法,其中特定網(wǎng)是藍(lán)牙散射網(wǎng)。
11.如權(quán)利要求1所述的方法,其中預(yù)定事件是一個預(yù)定時間周期的期滿。
12.如權(quán)利要求11所述的方法,其中預(yù)定時間周期被設(shè)置為長于對于被更新路由的請求消息到達(dá)目的節(jié)點(diǎn)所需要的時間以及應(yīng)答消息到達(dá)源節(jié)點(diǎn)所需要的時間之和的一個時間周期。
13.如權(quán)利要求11所述的方法,其中預(yù)定時間周期被設(shè)置為根據(jù)到目的節(jié)點(diǎn)的路由多久被斷掉一次而遞增縮短的一個第一值。
14.如權(quán)利要求1所述的方法,其中預(yù)定事件被從由以下事件組成的預(yù)定事件組中選擇沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的業(yè)務(wù)量負(fù)載,沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的延遲量,沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的跳數(shù),沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的熱點(diǎn)。
15.一種在特定網(wǎng)中用于更新源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的設(shè)備,該設(shè)備包括一個源節(jié)點(diǎn),包括用于確定一個預(yù)定事件是否發(fā)生的裝置;以及如果預(yù)定事件發(fā)生,則用于廣播對于被更新路由的請求消息的裝置;一個相鄰節(jié)點(diǎn),包括用于接收對于被更新路由的請求消息的裝置;用于確定相鄰節(jié)點(diǎn)是否是目的節(jié)點(diǎn)的裝置;以及如果相鄰節(jié)點(diǎn)是目的節(jié)點(diǎn),則用于從相鄰節(jié)點(diǎn)產(chǎn)生并發(fā)送一個應(yīng)答消息的裝置,其中網(wǎng)絡(luò)使用反應(yīng)型路由選擇協(xié)議。
16.如權(quán)利要求15所述的設(shè)備,其中網(wǎng)絡(luò)根據(jù)源路由選擇工作,并且用于產(chǎn)生和發(fā)送應(yīng)答消息的裝置還包括用于將源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的整個路由插入到應(yīng)答消息中的裝置。
17.如權(quán)利要求16所述的設(shè)備,還包括中間節(jié)點(diǎn),包括用于將應(yīng)答消息轉(zhuǎn)發(fā)到源節(jié)點(diǎn)的裝置;以及用于將關(guān)于網(wǎng)絡(luò)條件的信息插入到應(yīng)答消息中的裝置。
18.如權(quán)利要求17所述的設(shè)備,其中源節(jié)點(diǎn)還包括用于根據(jù)網(wǎng)絡(luò)條件信息來判定使用哪條路由的裝置。
19.如權(quán)利要求15所述的設(shè)備,其中網(wǎng)絡(luò)根據(jù)距離矢量路由選擇工作,其中相鄰節(jié)點(diǎn)還包括用于存儲從相鄰節(jié)點(diǎn)到源節(jié)點(diǎn)的一條臨時路由的裝置。
20.如權(quán)利要求19所述的設(shè)備,還包括用于在一個節(jié)點(diǎn)接收應(yīng)答消息的裝置;用于確定所述節(jié)點(diǎn)是否是源節(jié)點(diǎn)的裝置;用于用臨時路由代替源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的當(dāng)前路由的裝置;以及如果所述節(jié)點(diǎn)是源節(jié)點(diǎn),則用于通過臨時路由發(fā)送消息的裝置。
21.如權(quán)利要求15所述的設(shè)備,其中相鄰節(jié)點(diǎn)還包括用于確定相鄰節(jié)點(diǎn)是否有一條到目的節(jié)點(diǎn)的被高速緩存的路由的裝置;以及如果相鄰節(jié)點(diǎn)具有到目的節(jié)點(diǎn)的符合預(yù)定標(biāo)準(zhǔn)的一條被高速緩存的路由,則用于從所述相鄰節(jié)點(diǎn)產(chǎn)生并發(fā)送一個應(yīng)答消息的裝置。
22.如權(quán)利要求21所述的設(shè)備,其中相鄰節(jié)點(diǎn)還包括裝置,用于存儲一條路由被創(chuàng)建或更新時的一個時間值,其中如果在接收到對于被更新路由的請求消息之前,被高速緩存的路由已經(jīng)被創(chuàng)建或者更新小于一個預(yù)定時間,則預(yù)定標(biāo)準(zhǔn)被滿足。
23.如權(quán)利要求21所述的設(shè)備,其中相鄰節(jié)點(diǎn)還包括裝置,用于存儲一條路由上次被使用來傳送分組的一個時間值,其中如果在接收到對于被更新路由的請求消息之前,被高速緩存的路由上次被用于傳送分組小于一個預(yù)定時間,則預(yù)定標(biāo)準(zhǔn)被滿足。
24.如權(quán)利要求15所述的設(shè)備,其中特定網(wǎng)是藍(lán)牙散射網(wǎng)。
25.如權(quán)利要求15所述的設(shè)備,其中預(yù)定事件是一個預(yù)定時間周期的期滿。
26.如權(quán)利要求25所述的設(shè)備,其中預(yù)定時間周期被設(shè)置為長于對被更新路由的請求消息到達(dá)目的節(jié)點(diǎn)所需要的時間與應(yīng)答消息到達(dá)源節(jié)點(diǎn)所需要的時間之和的一個時間周期。
27.如權(quán)利要求25所述的設(shè)備,其中預(yù)定時間周期被設(shè)置為根據(jù)到目的節(jié)點(diǎn)的路由多久被斷掉一次而遞增縮短的一個第一值。
28.如權(quán)利要求15所述的設(shè)備,其中預(yù)定事件被從由以下事件構(gòu)成的事件組中選擇沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的業(yè)務(wù)量負(fù)載,沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的延遲量,沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的跳數(shù),以及沿著源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間的路由的熱點(diǎn)。
全文摘要
在傳統(tǒng)的使用反應(yīng)型路由選擇協(xié)議的特定網(wǎng)中,源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的路由直到該路由實際上斷掉時才被更新。響應(yīng)于預(yù)定事件,對于被更新路由的請求消息能夠被發(fā)送到目的節(jié)點(diǎn),以判定另一個節(jié)點(diǎn)是否存在于源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間。對于被更新路由的請求的響應(yīng)可以或者由目的節(jié)點(diǎn)提供或者由具有源節(jié)點(diǎn)和目的節(jié)點(diǎn)之間的一條被高速緩存的路由的一個節(jié)點(diǎn)提供。所述被更新路由請求方案可以實現(xiàn)于使用源路由選擇的網(wǎng)絡(luò)中以及使用距離矢量路由選擇的網(wǎng)絡(luò)中。
文檔編號H04L12/28GK1408160SQ00816760
公開日2003年4月2日 申請日期2000年11月17日 優(yōu)先權(quán)日1999年12月6日
發(fā)明者T·拉松, P·約翰松, J·舍倫森 申請人:艾利森電話股份有限公司