欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

節(jié)點的網(wǎng)絡、電池供電節(jié)點及管理電池供電節(jié)點的方法與流程

文檔序號:11291791閱讀:659來源:國知局
節(jié)點的網(wǎng)絡、電池供電節(jié)點及管理電池供電節(jié)點的方法與流程

本發(fā)明總體上涉及無線網(wǎng)絡的管理,并且具體來說,涉及包括電池供電節(jié)點和電網(wǎng)供電(mains-powered)節(jié)點的異構(gòu)多跳無線網(wǎng)絡的管理。



背景技術(shù):

能量有效(energyefficient)管理(諸如對數(shù)據(jù)分組的路由)對于包括具有受限電源的節(jié)點的網(wǎng)絡來說是關(guān)鍵性問題。根據(jù)節(jié)點的電源,可以將節(jié)點分成兩類,即,具有受限電源的節(jié)點(如電池供電節(jié)點(bpn))和具有不受限電源的節(jié)點(如電網(wǎng)供電節(jié)點(mpn)。在某些應用中,電池更換是不切實際的或不可能的。因此,在包括bpn的無線網(wǎng)絡中,延長網(wǎng)絡壽命變得至關(guān)重要。網(wǎng)絡壽命通常由首先耗盡電池電量的電池供電節(jié)點的運行時間來限定。

基于節(jié)點的資源和能力,可以將無線網(wǎng)絡分成同構(gòu)和異構(gòu)。在同構(gòu)無線網(wǎng)絡中,所有節(jié)點具有相同的資源和能力。所有節(jié)點經(jīng)電池供電或者所有節(jié)點經(jīng)電網(wǎng)供電。無線傳感器網(wǎng)絡是所有節(jié)點都典型地經(jīng)電池供電的同構(gòu)無線網(wǎng)絡的示例。智能電表網(wǎng)絡是所有節(jié)點都經(jīng)電網(wǎng)供電的同構(gòu)無線網(wǎng)絡的另一示例。另一方面,在異構(gòu)無線網(wǎng)絡中,節(jié)點具有不同的資源和能力,例如,一些節(jié)點可以經(jīng)電池供電并且具有小的存儲器和有限的計算能力,而其它節(jié)點可以經(jīng)電網(wǎng)供電并且具有較大的存儲器和計算能力。

在具有電池供電節(jié)點的無線網(wǎng)絡中,網(wǎng)絡管理(諸如路由)的關(guān)鍵目標是最大化網(wǎng)絡壽命。節(jié)點消耗其能量用于數(shù)據(jù)發(fā)送、數(shù)據(jù)接收、控制消息發(fā)送以及控制消息接收。這類能耗被認為是必需的能量使用。節(jié)點還在空閑監(jiān)聽、偷聽(overhearing)、沖突以及重新發(fā)送上消耗其能量。這類能耗被認為是能量浪費。節(jié)能管理的主要目標之一是使能量浪費最小化。

然而,對于異構(gòu)無線網(wǎng)絡來說,為同構(gòu)無線網(wǎng)絡設計的能量相關(guān)管理方法不能很好地工作。例如,為同構(gòu)網(wǎng)絡設計的路由方法未考慮和利用異構(gòu)性。另外,一些方法通過同步網(wǎng)絡節(jié)點的操作來減少同構(gòu)網(wǎng)絡的能耗。例如,參見美國專利7,298,716和美國專利7,356.561,其描述了使用集中式休眠控制機制的方法,其中,節(jié)點僅能在預先指定的時段期間休眠。然而,網(wǎng)絡的同步可以減少數(shù)據(jù)分組的沖突,但也會增加空閑時間,從而導致額外的能量浪費。另外,同步分組發(fā)送和接收還導致額外的能量浪費。

因此,需要提供一種用于對包括電池供電節(jié)點和電網(wǎng)供電節(jié)點的異構(gòu)多跳無線網(wǎng)絡進行能量有效管理的系統(tǒng)和方法。



技術(shù)實現(xiàn)要素:

本發(fā)明的各個實施方式的一個目的是,提供一種用于對具有至少一個匯聚節(jié)點和包括電池供電節(jié)點(bpn)與電網(wǎng)供電節(jié)點(mpn)的數(shù)據(jù)節(jié)點的異構(gòu)多跳無線網(wǎng)絡進行能量有效管理的系統(tǒng)和方法。一些實施方式的另一個目的是,提供一種用于以多跳方式發(fā)送分組的能量有效路由機制,其中,至少一個數(shù)據(jù)節(jié)點通過在數(shù)據(jù)節(jié)點與匯聚節(jié)點之間中繼分組的至少一個中間數(shù)據(jù)節(jié)點來與匯聚節(jié)點交換分組。另外或另選的是,本發(fā)明的一些實施方式的一個目的是,提供一種用于這樣的異構(gòu)無線網(wǎng)絡的分布式休眠控制模型,其不需要同步節(jié)點的操作。

本發(fā)明的一些實施方式基于這樣的認識,即,與異構(gòu)網(wǎng)絡相比,集中式管理對同構(gòu)網(wǎng)絡更有利。這是因為網(wǎng)絡的同步導致能量浪費。例如,集中式休眠控制方法可以減少數(shù)據(jù)分組發(fā)送的沖突,而且還可以增加節(jié)點的空閑時間,尤其是在優(yōu)選利用電網(wǎng)供電節(jié)點的數(shù)據(jù)發(fā)送時的情況下。

因此,本發(fā)明的一些實施方式提供了一種分布式休眠管理模型來管理異構(gòu)網(wǎng)絡的數(shù)據(jù)節(jié)點的休眠安排。例如,在一個實施方式中,mpn僅有活動時段,即,節(jié)點沒有休眠時段。與此相反,bpn具有活動時段和休眠時段兩者,但獨立于所述網(wǎng)絡中其它數(shù)據(jù)節(jié)點的活動時段與休眠時段或者由匯聚節(jié)點發(fā)送的命令來確定對活動時段與休眠時段的安排。例如,在一些實施方式中,bpn的處理器利用由bpn感測到的網(wǎng)絡的活動,基于bpn內(nèi)部的信息來確定所述安排。將總是活動的mpn與能量有效路由組合,這種分布式休眠管理模型增加了bpn的休眠時間。

另外或另選的是,一些實施方式基于這樣的認識,即,數(shù)據(jù)分組從特定數(shù)據(jù)節(jié)點到匯聚節(jié)點的電池有效路由應當經(jīng)由消耗最少電池能量的路由路徑。例如,一些實施方式沿著減少發(fā)送或接收所發(fā)送的數(shù)據(jù)分組的電池供電節(jié)點的數(shù)量的路由路徑來發(fā)送數(shù)據(jù)分組。可選的是,一個實施方式確定用于定位能量有效路由路徑的節(jié)能度量(metric)。該節(jié)能度量可以包括以下各項中的一個或組合:標識數(shù)據(jù)節(jié)點是bpn還是mpn的電源(ps)度量、存儲沿著路由路徑的bpn的數(shù)量的電池供電節(jié)點計數(shù)(bnc)度量、存儲在沿著路由路徑的bpn當中的最小電量的最小電池電量(mbl)度量、以及存儲網(wǎng)絡的bpn接收到和/或偷聽到在路由路徑上傳送的數(shù)據(jù)分組的次數(shù)的電池供電偷聽計數(shù)(boc)度量。

因此,本發(fā)明的一個實施方式公開了一種包括數(shù)據(jù)節(jié)點和至少一個匯聚節(jié)點的節(jié)點的網(wǎng)絡,其中,該網(wǎng)絡是無線多希望網(wǎng)絡,在該無線多希望網(wǎng)絡中,分組以多跳方式在匯聚節(jié)點與數(shù)據(jù)節(jié)點之間交換,使得存在如下的至少一個數(shù)據(jù)節(jié)點,即,所述至少一個數(shù)據(jù)節(jié)點通過在該數(shù)據(jù)節(jié)點與匯聚節(jié)點之間中繼分組的至少一個中間數(shù)據(jù)節(jié)點來與匯聚節(jié)點交換分組,數(shù)據(jù)節(jié)點包括具有活動時段與休眠時段的電池供電節(jié)點(bpn)和僅具有活動時段的電網(wǎng)供電節(jié)點(mpn),其中,各數(shù)據(jù)節(jié)點僅在對應的活動時段內(nèi)發(fā)送分組。

bpn包括:收發(fā)器,該收發(fā)器用于發(fā)送和接收數(shù)據(jù)分組;處理器,該處理器用于獨立于所述網(wǎng)絡中的其它數(shù)據(jù)節(jié)點的活動時段與休眠時段并且獨立于由匯聚節(jié)點發(fā)送的命令來確定bpn的活動時段與休眠時段的安排,其中,處理器根據(jù)該安排接通和斷開收發(fā)器;以及電池,該電池用于向收發(fā)器和處理器提供能量。

另一實施方式公開了一種電池供電節(jié)點(bpn),該電池供電節(jié)點用于形成包括數(shù)據(jù)節(jié)點和至少一個匯聚節(jié)點的節(jié)點的異構(gòu)無線多希望網(wǎng)絡,其中,數(shù)據(jù)節(jié)點包括電池供電節(jié)點(bpn)和電網(wǎng)供電節(jié)點(mpn)。bpn包括:收發(fā)器,該收發(fā)器用于發(fā)送和接收數(shù)據(jù)分組;處理器,該處理器用于獨立于網(wǎng)絡中其它數(shù)據(jù)節(jié)點的活動時段與休眠時段并且獨立于由匯聚節(jié)點發(fā)送的命令來確定bpn的活動時段與休眠時段的安排,其中,處理器根據(jù)該安排接通和斷開所述收發(fā)器;以及電池,該電池用于向收發(fā)器和處理器提供能量。

又一實施方式公開了一種用于管理電池供電節(jié)點(bpn)的方法,該電池供電節(jié)點用于形成包括數(shù)據(jù)節(jié)點和至少一個匯聚節(jié)點的節(jié)點的異構(gòu)無線多希望網(wǎng)絡,其中,數(shù)據(jù)節(jié)點包括電池供電節(jié)點(bpn)和電網(wǎng)供電節(jié)點(mpn)。該方法包括:獨立于網(wǎng)絡中的其它數(shù)據(jù)節(jié)點的活動時段與休眠時段并且獨立于由匯聚節(jié)點發(fā)送的命令來確定bpn的活動時段與休眠時段的安排;根據(jù)該安排接通和斷開bpn的收發(fā)器;在各個活動時段開始時發(fā)送喚醒信號;確定從bpn至匯聚節(jié)點的路由路徑,該路由路徑減少了發(fā)送或偷聽在路由路徑上發(fā)送的數(shù)據(jù)分組的bpn的數(shù)量;以及在活動時段期間,將數(shù)據(jù)分組發(fā)送至開始該路由路徑的父節(jié)點。

附圖說明

圖1a是根據(jù)本發(fā)明的一些實施方式的異構(gòu)無線網(wǎng)絡的示意圖。

圖1b是圖1a的網(wǎng)絡中的數(shù)據(jù)節(jié)點的結(jié)構(gòu)的框圖。

圖2a示出了根據(jù)本發(fā)明的一些實施方式的電池供電節(jié)點的休眠間隔配置的示意圖。

圖2b示出了根據(jù)本發(fā)明的一些實施方式的分布式休眠管理模型的示意圖。

圖3a描繪了其中常規(guī)路由算法通過選擇較短路徑來縮短網(wǎng)絡壽命的示例。

圖3b描繪了其中常規(guī)路由算法通過向具有較高電池電量的節(jié)點傳送數(shù)據(jù)分組來縮短網(wǎng)絡壽命的示例。

圖4a例示出了根據(jù)本發(fā)明的一些實施方式的如何計數(shù)沿著路由路徑的電池供電節(jié)點。

圖4b例示出了根據(jù)本發(fā)明的一些實施方式的如何測量沿著路由路徑的最小電池電量。

圖4c例示出了根據(jù)本發(fā)明的一些實施方式的電池供電鄰居(neighbor)偷聽沿著路由路徑的分組發(fā)送的示例。

圖5描繪了根據(jù)本發(fā)明的一些實施方式的具有分布式休眠管理模型的無線網(wǎng)絡中的廣播消息發(fā)送。

圖6示出了其中將電網(wǎng)供電節(jié)點選擇為到匯聚的下一跳節(jié)點實際消耗更多電池電力的示例。

圖7示出了根據(jù)本發(fā)明的一些實施方式的路由路徑發(fā)現(xiàn)的框圖。

圖8例示出了利用分布式休眠管理模型,多跳長延遲是可能的。

具體實施方式

圖1a示出了使用本發(fā)明的實施方式的異構(gòu)無線網(wǎng)絡的示例的示意圖。該網(wǎng)絡包括諸如電池供電節(jié)點(bpn)100和電網(wǎng)供電節(jié)點(mpn)110的數(shù)據(jù)節(jié)點。該網(wǎng)絡還包括匯聚節(jié)點(s)120。這些節(jié)點利用有向無線鏈路130形成無線網(wǎng)狀網(wǎng)絡,其中,一般的數(shù)據(jù)分組的流是從數(shù)據(jù)節(jié)點(電池供電節(jié)點或電網(wǎng)供電節(jié)點)到匯聚節(jié)點,然而控制消息可以沿任一方向傳送。

該網(wǎng)絡是無線多跳網(wǎng)絡,分組在該無線多跳網(wǎng)絡中以多跳方式在匯聚節(jié)點與數(shù)據(jù)節(jié)點之間被交換,使得存在如下這樣的至少一個數(shù)據(jù)節(jié)點,所述至少一個數(shù)據(jù)節(jié)點通過在該數(shù)據(jù)節(jié)點與匯聚節(jié)點之間中繼分組的至少一個中間數(shù)據(jù)節(jié)點與匯聚節(jié)點交換分組。例如,一些節(jié)點(例如,140)可以將數(shù)據(jù)分組直接發(fā)送至匯聚節(jié)點。一些節(jié)點(例如,100和110)不能將數(shù)據(jù)分組直接發(fā)送至任何匯聚節(jié)點。相反的是,首先將數(shù)據(jù)分組發(fā)送至中間節(jié)點或中繼節(jié)點,中間節(jié)點或中繼節(jié)點接著將分組中繼至匯聚節(jié)點。換句話說,以多跳方式進行數(shù)據(jù)收集。因此,必須提供路由算法來路由來自不能與任何匯聚節(jié)點直接通信的節(jié)點的數(shù)據(jù)分組。

圖1b示意性地示出了形成圖1的網(wǎng)絡的數(shù)據(jù)節(jié)點101的結(jié)構(gòu)。該節(jié)點包括用于發(fā)送和接收數(shù)據(jù)分組的收發(fā)器,該收發(fā)器包括接收器150和發(fā)送器160中的一個或組合。該節(jié)點還包括用于為該節(jié)點的部件供電的電源180。根據(jù)電源180的類型,可以將節(jié)點分成兩類,即,bpn和mpn,bpn具有受限電源(諸如電池),而mpn具有不受限電源(例如,從輸電線或電網(wǎng)供電)。在一些實施方式中,對匯聚節(jié)點的電源沒有限制,其可以經(jīng)電網(wǎng)供電或者經(jīng)電池供電。

數(shù)據(jù)節(jié)點101包括用于執(zhí)行該節(jié)點的操作和/或用于確定該節(jié)點的活動時段與休眠時段的安排的處理器170。各數(shù)據(jù)節(jié)點僅在對應的活動時段期間發(fā)送分組。

根據(jù)一些實施方式,bpn具有活動時段與休眠時段,而mpn只有活動時段。如果數(shù)據(jù)節(jié)點101是bpn,即,電源180是電池,則處理器確定bpn的活動時段與休眠時段的安排,并且根據(jù)該安排接通和斷開收發(fā)器。

分布式休眠管理模型

本發(fā)明的一些實施方式基于這樣的認識,即,集中式管理對同構(gòu)網(wǎng)絡(而不是異構(gòu)網(wǎng)絡)來說更有利。這是因為網(wǎng)絡的同步導致能量浪費。例如,集中式休眠控制方法可以減少數(shù)據(jù)分組發(fā)送的沖突,而且還可以增加節(jié)點的空閑時間,尤其是在優(yōu)選通過電網(wǎng)供電節(jié)點的數(shù)據(jù)發(fā)送時的情況下。

在本發(fā)明的各種實施方式中,bpn的處理器獨立于網(wǎng)絡中其它數(shù)據(jù)節(jié)點的活動時段與休眠時段并且獨立于由匯聚節(jié)點發(fā)送的任何命令來確定安排。例如,bpn的處理器利用由bpn觀察到的網(wǎng)絡的活動,基于bpn內(nèi)部的信息來確定安排。例如,數(shù)據(jù)節(jié)點101包括存儲器190,該存儲器190用于緩沖要向匯聚節(jié)點發(fā)送的數(shù)據(jù)分組。在一個實施方式中,處理器基于存儲器中的數(shù)據(jù)分組的數(shù)量來確定安排,例如,活動時段或休眠時段與存儲器中的數(shù)據(jù)分組的數(shù)量成比例。

圖2a示出了根據(jù)本發(fā)明的一些實施方式的分布式休眠管理模型的示意圖。在這些實施方式中,bpn200管理它自己的活動與休眠間隔的安排。時間被分成具有不同長度的休眠間隔。間隔205包括活動時段210,接著是休眠時段215。活動時段與休眠時段的順序針對不同實施方式改變。當bpn200開始休眠時,其收發(fā)器斷開。當bpn200從休眠中醒來時,其收發(fā)器接通,而且bpn發(fā)送喚醒消息220以通知鄰居數(shù)據(jù)節(jié)點該bpn200是活動的。如果鄰居節(jié)點具有要傳送至bpn200的數(shù)據(jù)分組,則該鄰近節(jié)點可以啟動發(fā)送。節(jié)點動態(tài)地確定活動時段210與休眠時段215的長度,即,活動時段與休眠時段的安排不必是周期性的。例如,休眠時段218比休眠時段215短。

圖2b示出了根據(jù)本發(fā)明的一些實施方式的分布式休眠管理模型的示意圖。不同的節(jié)點可以具有不同的活動時段長度與休眠時段長度,其中,電池供電節(jié)點b1225、b2230以及b3235分別具有不同長度的休眠時段240、245以及250。

利用該分布式休眠管理模型,如果電池供電節(jié)點沒有要發(fā)送的數(shù)據(jù),則該節(jié)點安排周期性休眠間隔。例如,節(jié)點b2230和b3235沒有要發(fā)送的數(shù)據(jù),并因此,它們執(zhí)行周期性休眠安排。然而,如在一個實施方式中,如果電池供電節(jié)點具有要發(fā)送至另一電池供電節(jié)點的數(shù)據(jù),則傳送方節(jié)點等待來自接收方電池供電節(jié)點的喚醒消息220。在這種情況下,傳送方節(jié)點延長其活動時段。例如,節(jié)點b1具有要發(fā)送給電池供電節(jié)點b2的數(shù)據(jù)。節(jié)點b1延長其活動時段255,并且等待來自節(jié)點b2的喚醒消息。當接收到來自節(jié)點b2的喚醒消息220時,節(jié)點b1將其數(shù)據(jù)分組260發(fā)送至節(jié)點b2。在發(fā)送數(shù)據(jù)之后,節(jié)點b1執(zhí)行休眠安排。

在一個實施方式中,bpn使用兩個計時器,休眠計時器和喚醒計時器,以管理其休眠安排。休眠計時器用于安排節(jié)點在休眠間隔中休眠多長時間,而喚醒計時器用于安排節(jié)點在休眠間隔中多長時間保持清醒。電池供電節(jié)點動態(tài)確定其活動時段長度與休眠時段長度。當休眠計時器期滿時,電池供電節(jié)點計算活動時間值并開啟活動計時器。當活動計時器期滿時,電池供電節(jié)點計算休眠時間值并開啟休眠計時器。

在一些實施方式中,針對網(wǎng)絡來限制和限定bpn的休眠時段的長度。電池供電節(jié)點必須設置其休眠時段長度小于或等于最大長度。類似的是,還可以針對網(wǎng)絡來限定最小活動時段長度。電池供電節(jié)點必須設置其活動時段長度大于或等于最小長度。

利用分布式休眠管理模型,電網(wǎng)供電節(jié)點始終活動。例如,mpn265具有無限活動時段270。一節(jié)點可以隨時將數(shù)據(jù)分組傳送至電網(wǎng)供電節(jié)點。在一些實施方式中,mpn不發(fā)送喚醒消息。因此,在一些實施方式中,路由算法確定數(shù)據(jù)節(jié)點的類型。

電池能量有效路由

一些實施方式基于這樣的認識,即,數(shù)據(jù)分組從特定數(shù)據(jù)節(jié)點到匯聚節(jié)點的電池有效路由應當經(jīng)由消耗最少能量的路由路徑。例如,一些實施方式沿著減少發(fā)送或接收數(shù)據(jù)分組的電池供電節(jié)點的數(shù)量的路由路徑來發(fā)送數(shù)據(jù)分組。

針對無線網(wǎng)絡,常規(guī)路由度量可以分成兩類,節(jié)點狀態(tài)度量(例如,跳計數(shù)和節(jié)點能量水平)和鏈路度量(例如,鏈路質(zhì)量和預期傳送計數(shù)(etx))。這些常規(guī)路由度量僅考慮兩個節(jié)點之間的測量或節(jié)點本身的狀態(tài)。它們未利用沿著路由路徑的信息。結(jié)果,這些度量對于沒有休眠節(jié)點的同構(gòu)無線網(wǎng)絡來說工作良好,但對于具有休眠節(jié)點的無線網(wǎng)絡來說,那些度量會縮短網(wǎng)絡壽命。

圖3a示出了其中b1-b3是電池供電節(jié)點,而m1-m4是電網(wǎng)供電節(jié)點的示例。匯聚節(jié)點s300通過廣播路徑發(fā)現(xiàn)消息310啟動路徑發(fā)現(xiàn)。節(jié)點n320從兩個鄰居節(jié)點b3330和m4340接收路徑發(fā)現(xiàn)消息。利用常規(guī)路由度量,節(jié)點n選擇經(jīng)由b3的路徑,因為路徑s→b1→b2→b3比路徑s→m1→m2→m3→m4短。然而,路徑s→b1→b2→b3由所有電池供電節(jié)點組成。另一方面,路徑s→m1→m2→m3→m4由所有電網(wǎng)供電節(jié)點組成。因此,節(jié)點n應當選擇經(jīng)由m4的路徑。具有更多電池供電節(jié)點的路徑消耗更多的電池能量,并且還由于電池供電節(jié)點的休眠而具有較高的延遲。

圖3b示出了其中存在一個匯聚節(jié)點s300、六個電池供電節(jié)點b4-b9以及一個節(jié)點n310(電池供電或電網(wǎng)供電)的示例。節(jié)點n發(fā)現(xiàn)去往匯聚節(jié)點s的兩條路徑,一條路徑b8→b6→b4→s和另一條路徑b9→b7→b5→s。節(jié)點n具有要發(fā)送至匯聚節(jié)點s300的數(shù)據(jù)分組。因為節(jié)點n不能直接與匯聚節(jié)點s通信,所以節(jié)點n必須將其分組發(fā)送至節(jié)點b8350或者b9360。因為b8具有較高的能量水平80%370,所以常規(guī)路由度量允許n將其分組發(fā)送到b8。然而,經(jīng)由b8的路徑具有電池供電節(jié)點b6380,b6具有電池電量18%390。如果節(jié)點n經(jīng)由b8將其分組發(fā)送至匯聚節(jié)點s,因為b6必須中繼由節(jié)點n發(fā)送來的數(shù)據(jù)分組,所以節(jié)點b6將較快地耗盡電池電力。相反的是,節(jié)點n應當將其分組發(fā)送給b9。經(jīng)由b9的路徑具有最低電池電量40%395,這遠遠高于b6的電池電量。然而,利用常規(guī)路由度量,節(jié)點n320不知道b6的電池電量。

因此,一個實施方式確定了用于定位能量有效路由路徑的節(jié)能度量。節(jié)能度量可以包括以下各項中的一個或組合:標識一數(shù)據(jù)節(jié)點是bpn還是mpn的電源(ps)度量、存儲沿著一路由路徑的bpn的數(shù)量的電池供電節(jié)點計數(shù)(bnc)度量、存儲在沿著該路由路徑的bpn當中的最小電量的最小電池電量(mbl)度量、以及存儲網(wǎng)絡的bpn偷聽在路由路徑上發(fā)送的數(shù)據(jù)分組的次數(shù)的電池供電偷聽計數(shù)(boc)度量。

路徑的電池供電節(jié)點計數(shù)(bnc)對沿著路徑的電池供電節(jié)點的數(shù)量進行計數(shù)。在路由路徑發(fā)現(xiàn)期間,當匯聚節(jié)點經(jīng)電網(wǎng)供電時,該匯聚節(jié)點設置bnc=0。否則,匯聚節(jié)點設置bnc=1。一電池供電節(jié)點將bnc增加1,并且電網(wǎng)供電節(jié)點不改變bnc的值。

圖4a示出了一個示例,其中,匯聚節(jié)點s300設置bnc=0,電池供電節(jié)點b1、b2以及b3中的每一個都將bnc增加1,而電網(wǎng)供電節(jié)點m1和m2不改變bnc值。當路由路徑發(fā)現(xiàn)消息傳播至節(jié)點n310(電池供電或電網(wǎng)供電)時,n知道沿著該路徑有3個電池供電節(jié)點。

路徑的最小電池電量(mbl)測量在沿著路徑的所有電池供電節(jié)點當中的最小電池電量。在路由路徑發(fā)現(xiàn)期間,當匯聚節(jié)點經(jīng)電網(wǎng)供電時,該匯聚節(jié)點設置mbl=100。否則,匯聚節(jié)點將mbl設置成其電池電量。電池供電節(jié)點將路徑發(fā)現(xiàn)消息中包含的mbl與其自身的電池電量進行比較。如果其電池電量低于接收到的mbl,則該節(jié)點利用其電池電量替代mbl。否則,該節(jié)點不改變mbl的值。電網(wǎng)供電節(jié)點不改變mbl的值。

圖4b示出了一個示例,其中,匯聚節(jié)點s300設置mbl=100,電池供電節(jié)點b1改變mbl=60,電池供電節(jié)點b2改變mbl=50,電池供電節(jié)點b3以及電網(wǎng)供電節(jié)點m1和m2不改變mbl值。當路由路徑發(fā)現(xiàn)消息傳播至節(jié)點n310(電池供電或電網(wǎng)供電)時,節(jié)點n知道沿著該路徑有至少一個電池供電節(jié)點具有50%的電池電量。

路徑的電池供電偷聽計數(shù)(boc)對電池供電鄰居偷聽到沿著該路徑的分組發(fā)送的總次數(shù)進行計數(shù)。如果電池供電節(jié)點是該路徑上多個節(jié)點的鄰居,則該電池供電節(jié)點被多次計數(shù)。在無線網(wǎng)絡中,當發(fā)送器向接收器發(fā)送分組時,傳送方的所有活動鄰居都接收到該分組,即使該分組并不是去往這些鄰居的。因此,路由算法必須最小化偷聽的概率。boc是可以被用于減少在偷聽上的電池能耗的度量。在路由路徑發(fā)現(xiàn)期間,每個節(jié)點都指示其是電網(wǎng)供電還是電池供電。匯聚節(jié)點將boc設置成其電池供電鄰居的數(shù)量(nbn)。

在一個實施方式中,在每一跳處,路徑上的節(jié)點n(電網(wǎng)供電或電池供電)更新boc如下:

1)如果節(jié)點n經(jīng)電池供電,則其將boc減小1,因為前一跳節(jié)點必須將節(jié)點n作為電池供電鄰居進行計數(shù)。

2)如果前一跳節(jié)點經(jīng)電池供電,則節(jié)點n將其nbn減小1,因為前一跳節(jié)點是節(jié)點n的電池供電鄰居。

3)節(jié)點n將其更新后的nbn添加至更新后的boc,并在路徑發(fā)現(xiàn)消息中包括boc。

圖4c示出了一示例,其中,實線400表示分組發(fā)送,而虛線410表示電池供電節(jié)點的分組偷聽。節(jié)點n310沿著路徑n→m2→b3→m1→b2→b1→s向匯聚節(jié)點s300(在該示例中為電網(wǎng)供電)發(fā)送分組。即使電池供電節(jié)點b4-b9不在該路由路徑上,這些節(jié)點也在這些節(jié)點保持清醒時接收所述分組。結(jié)果,它們的電池被消耗。

在路由路徑發(fā)現(xiàn)期間,匯聚節(jié)點s設置boc=2,因為節(jié)點s具有b1和b4作為其電池供電鄰居。當b1接收到路徑發(fā)現(xiàn)消息時,其將boc減小1,即,設置boc=1。b1具有三個電池供電鄰居b2、b4及b5。因此,b1將boc更新成4。當b2接收到路徑發(fā)現(xiàn)消息時,該節(jié)點將boc減小1,即,boc=3,b2也將其nbn減小1,最后,b2設置boc=boc+1=4。類似的是,m1、b3以及m2更新boc。當路由路徑發(fā)現(xiàn)消息傳播至節(jié)點n310時,節(jié)點n設置boc=10。在這個示例中,節(jié)點b4、b5、b8以及b9被計數(shù)兩次。

在具有休眠節(jié)點的異構(gòu)無線網(wǎng)絡中,路由算法需要頻繁刷新路徑水平(pathlevel)路由度量以反映最近的更新。

新的節(jié)點狀態(tài)路由度量

對于所有節(jié)點都是電池供電的同構(gòu)網(wǎng)絡來說,定義了常規(guī)節(jié)點狀態(tài)度量能量水平。對于具有電網(wǎng)供電節(jié)點和電池供電節(jié)點的異構(gòu)網(wǎng)絡來說,能量水平度量不指示節(jié)點是電網(wǎng)供電還是電池供電,因為在網(wǎng)絡啟動時,所有節(jié)點都具有100%的能量水平。因此,在一些實施方式中,使用稱作電源(ps)的新的節(jié)點狀態(tài)度量。對于節(jié)點n來說,ps(n)=1表示節(jié)點n為電網(wǎng)供電,ps(n)=0表示節(jié)點n為電池供電。

rpl概述

為了設計用于低功耗有損網(wǎng)絡(lln)的可擴展路由協(xié)議,互聯(lián)網(wǎng)工程任務組(ietf)低功耗和有損網(wǎng)絡上的路由(roll)工作組(wg)已經(jīng)將用于低功耗和有損網(wǎng)絡的路由協(xié)議(rpl)標準化為rfc6550。rpl將lln中的節(jié)點組織為有向無環(huán)圖(dag),并將dag分成一個或更多個面向目的的dag(dodag)。每個數(shù)據(jù)匯聚節(jié)點有一個dodag。

為了構(gòu)建dodag的拓撲和從節(jié)點到數(shù)據(jù)匯聚節(jié)點的向上路由,數(shù)據(jù)匯聚節(jié)點充當dodag的根節(jié)點(root),并將dodag信息對象(dio)消息廣播至相鄰節(jié)點。dio消息包含用于構(gòu)建dodag的信息。例如,附上三個參數(shù)rplinstanceid、dodagid以及dodagversionnumber以標識dodag版本。節(jié)點的等級針對dodag的根節(jié)點限定了該節(jié)點相對于其它節(jié)點的各個位置。數(shù)據(jù)匯聚節(jié)點附近的節(jié)點接收dio消息,當節(jié)點決定加入dodag時確定它們的等級,并將更新的dio消息發(fā)送給相鄰節(jié)點。節(jié)點的等級包含在dio消息中。dio消息沿所有方向傳播,使得dodag拓撲以波前方式構(gòu)造,直到每個節(jié)點加入dodag為止。rpl使用目的地通告對象(dao)消息來構(gòu)建從數(shù)據(jù)匯聚節(jié)點到其它目的地的向下路由。dao消息從節(jié)點向上發(fā)送至其父節(jié)點(parents)或根節(jié)點。dodag信息請求(dis)消息用于從rpl節(jié)點請求dio,即,發(fā)現(xiàn)新路由。

為了實現(xiàn)可靠的路由,rpl允許節(jié)點具有利用dodag結(jié)構(gòu)的多個父節(jié)點,以確定數(shù)據(jù)分組轉(zhuǎn)發(fā)的下一跳。父節(jié)點之一被選擇為優(yōu)選父節(jié)點,而其它父節(jié)點作為備用父節(jié)點。該優(yōu)選父節(jié)點被用作分組轉(zhuǎn)發(fā)的默認下一跳。如果優(yōu)選父節(jié)點不可用,則可以使用備用父節(jié)點。rpl使用目標函數(shù)(of)來幫助節(jié)點確定等級并選擇父節(jié)點。

路由算法使用控制消息來發(fā)現(xiàn)路由路徑。例如,aodv使用路由請求(req)消息和路由回復(rep)消息進行路由發(fā)現(xiàn)。rpl使用dio消息進行向上路由路徑發(fā)現(xiàn),并使用dao消息進行向下路由路徑發(fā)現(xiàn)。傳播路由路徑發(fā)現(xiàn)消息在由休眠節(jié)點組成的異構(gòu)無線網(wǎng)絡中是挑戰(zhàn)性的。在沒有休眠節(jié)點的網(wǎng)絡中,一節(jié)點廣播路由發(fā)現(xiàn)消息,所有鄰居都接收到所廣播的消息。然而,在具有分布式休眠節(jié)點的網(wǎng)絡中,一些鄰居休眠,而一些鄰點醒著。休眠的鄰居不能接收任何消息。

利用集中式休眠控制,控制節(jié)點確定節(jié)點何時休眠,何時活動。然而,利用分布式休眠模型,這種安排的休眠和活動信息不可用??捎玫男畔H是休眠節(jié)點在喚醒時發(fā)送喚醒消息。對于單播分組來說,傳送方可以等待直到其接收到來自接收方的喚醒消息為止。但廣播和多播消息是不同的。它們?nèi)ネ鄠€接收器。大多數(shù)路由路徑發(fā)現(xiàn)消息(諸如rpl中的dio)是廣播消息。對于網(wǎng)絡連接來說,每個節(jié)點都必須接收這種廣播消息。否則,該節(jié)點與網(wǎng)絡隔離。因此,對于重要的廣播消息來說,傳送方必須保證將消息遞送至所有鄰居。

利用分布式休眠管理模型向所有鄰居遞送廣播消息的一種方法是發(fā)送廣播消息達

次。這些rtx發(fā)送在稱作廣播間隔的時段內(nèi)均勻分布。廣播間隔的長度為minactiveperiodlength+maxsleepperiodlength。在這些發(fā)送期間,發(fā)送節(jié)點可以在每次重新發(fā)送之后進入休眠并且針對下一次重新發(fā)送而喚醒。在喚醒時,發(fā)送節(jié)點可以不發(fā)送喚醒消息。利用rtx重新發(fā)送,保證每個鄰居接收到廣播消息的至少一個副本。對于復制檢測來說,發(fā)送節(jié)點在廣播消息中包括序列號,并且所有rtx重新發(fā)送具有相同的序列號,使得接收節(jié)點可以確定該廣播消息是否被復制。當minactiveperiodlength相對較大而使rtx相對較小時,這種廣播消息傳送方法更有效。圖5示出了一個示例,其中,節(jié)點n500(電網(wǎng)供電或電池供電)是dio發(fā)送節(jié)點,并且節(jié)點b1510和b2520是節(jié)點n的兩個電池供電鄰居。節(jié)點b1的休眠時段540比節(jié)點b2的休眠時段550長。在這個示例中,maxsleepperiodlength=2*minactiveperiodlength,因此,rtx=4。四個dio發(fā)送560均勻地分布在廣播間隔570上。節(jié)點b1接收到dio消息的兩個副本,而節(jié)點b2接收dio消息的一個副本。

利用分布式休眠管理模型向所有鄰居遞送廣播消息的另一方法是發(fā)送節(jié)點在廣播間隔保持喚醒。在該廣播間隔開始時,發(fā)送節(jié)點發(fā)送廣播消息一次,以確保所有電網(wǎng)供電鄰點接收到該廣播消息。在廣播間隔期間,每當發(fā)送節(jié)點接收到來自電池供電鄰點的喚醒消息時,該節(jié)點就發(fā)送一次廣播消息。利用該方法,發(fā)送節(jié)點發(fā)送廣播消息達nbn+1次。類似的是,對于復制檢測來說,發(fā)送節(jié)點在廣播消息中包括序列號,并且所有重新發(fā)送具有相同的序列號。如果發(fā)送節(jié)點具有較少電池供電鄰居,則該廣播消息傳送方法更有效。

路由算法可以通過比較rtx和nbn來自適應地針對不同節(jié)點使用任一方法。rtx對于網(wǎng)絡中所有節(jié)點是相同的,而nbn是取決于節(jié)點的,因為不同的節(jié)點可能具有不同數(shù)量的電池供電鄰居。電網(wǎng)供電鄰居接收同一廣播消息的rtx個或nbn+1個副本。

具有休眠節(jié)點的異構(gòu)網(wǎng)絡中的路由路徑發(fā)現(xiàn)

在具有電網(wǎng)供電和電池供電的異構(gòu)無線網(wǎng)絡中,選擇電網(wǎng)供電節(jié)點作為下一跳節(jié)點并不總是能量有效的。圖6是一個示例,其中,匯聚節(jié)點是s600。因為m1是電網(wǎng)供電節(jié)點,電池供電節(jié)點b5610選擇電網(wǎng)供電節(jié)點m1620作為下一跳節(jié)點。所選擇的路徑b5→m1→b6→b2→s實際上消耗了更多的電池電力,因為兩個電池供電節(jié)點b2630和b6640處于該路徑上。相反的是,b5應當選擇b2作為其下一跳節(jié)點,即使b2是電池供電節(jié)點。路徑b5→b2→s比路徑b5→m1→b6→b2→s更加能量有效。

現(xiàn)有路由算法未被設計用于具有電網(wǎng)供電和電池供電節(jié)點兩者的異構(gòu)網(wǎng)絡,尤其是未被設計用于分布式休眠管理模型。必須提供新的路由功能。

以rpl為例,rpl不支持休眠節(jié)點。為了支持休眠節(jié)點,除了由rpl定義的常規(guī)路由度量以外,必須在dio消息中攜帶新的度量bnc、mbl、boc以及ps。利用這些度量,可以將許多方法用作選擇父節(jié)點和計算等級的標準。下列段落中提供了能量有效的方法。rpl使用dio消息傳播來發(fā)現(xiàn)向上路由路徑。dio消息源自匯聚節(jié)點。在dio傳播期間,如果這些備用父節(jié)點可用,則每個節(jié)點選擇一個默認父節(jié)點和多個備用父節(jié)點。

圖7示出了提供有支持新引入的電池能量有效路由度量的路由路徑發(fā)現(xiàn)方法的rpl。當節(jié)點接收到dio消息700時,它檢查705該dio是用于新的dodag還是現(xiàn)有的dodag。如果dio用于新的dodag,則節(jié)點決定710其是否加入該dodag。如果節(jié)點不加入新的dodag,則丟棄715dio消息。如果節(jié)點加入dodag,則處理720dio。如果bnc等于零725,則該節(jié)點將dio傳送方設置為其默認父節(jié)點730,為自己計算等級,安排735dao發(fā)送,并且通過利用上面提供的廣播消息發(fā)送方法之一開始740發(fā)送dio。如果bnc不為零,則該節(jié)點選擇dio傳送方745作為父節(jié)點,但不計算等級。相反的是,該節(jié)點開啟750計時器以等待更優(yōu)選的dio。如果dio用于現(xiàn)有的dodag,則該節(jié)點已經(jīng)選擇了一個父節(jié)點。因而,它檢查755是否計算了等級。如果是,則它檢查758其等級是否大于dio消息中包含的等級。如果不是,則丟棄715dio。如果是,則它檢查760是否選擇了足夠的父節(jié)點,如果不是,則該節(jié)點將dio傳送方添加765至其父節(jié)點集,如果是,則如果該dio包含更好的路由路徑,該節(jié)點通過替換其中一個父節(jié)點來更新770其父節(jié)點集。如果未計算等級且該dio具有775bnc=0,則該節(jié)點將dio傳送方設置780為默認父節(jié)點,取消785dio等待計時器,如果選擇了足夠的父節(jié)點,則通過替換現(xiàn)有父節(jié)點之一來計算790等級并更新父節(jié)點集,安排735dao發(fā)送,并開始740廣播dio。如果dio具有bnc>0,則如果沒有選擇足夠的父節(jié)點,該節(jié)點將dio傳送方760添加至其父節(jié)點集,而如果選擇了足夠的父節(jié)點,則更新770其父節(jié)點集。當計時器期滿795時,節(jié)點從父節(jié)點集中選擇798一個父節(jié)點作為默認父節(jié)點并計算等級,安排735dao發(fā)送并開始740dio消息發(fā)送。

為了更新父節(jié)點集,需要定義標準來確定一條路徑比另一條路徑好。存在不同的方法來定義一條路徑比其它路徑好。如果其它度量相似,則具有較小bnc的路徑被認為比具有大bnc的路徑好。如果其它度量相似,則具有較大mbl的路徑被認為比具有大的較小mbl的路徑好。如果其它度量相似,則具有較小boc的路徑被認為比具有大boc的路徑好。如果其它度量相似,則其中第一跳節(jié)點經(jīng)電網(wǎng)供電的路徑被認為比其中第一跳節(jié)點經(jīng)電池供電的路徑好。

所公開的發(fā)明提供了一種用于確定更好路徑的方法。對于每個父節(jié)點候選p來說,節(jié)點計算父節(jié)點資格值q(p)如下

較小的q(p)值指示更好的路徑。節(jié)點使用等式(2)來更新其父節(jié)點集。當dio計時器期滿時,節(jié)點選擇具有最小q(p)值的父節(jié)點作為默認父節(jié)點。在平局(tie)的情況下,節(jié)點使用ps來打破該平局。如果ps不能打破該平局,則使用由rpl定義的常規(guī)路由度量來打破該平局。

使用常規(guī)的和新的路由度量,存在許多方法來計算一節(jié)點的等級。以下是將四個新的度量并入常規(guī)等級計算中的等級計算方法:

r=rd+ri+cbnc*bnc+cmbl*mbl+cboc

*boc+cps*(1-ps(dp))(3),

其中,rd是默認父節(jié)點(dp)的等級,ri是通過利用常規(guī)rpl路由度量和對象函數(shù)計算出的等級增加,cbnc、cmbl、cboc以及cps分別是用于反映bnc、mbl、boc以及ps的重要性的系數(shù)。這些系數(shù)應當被選擇為使得如果節(jié)點發(fā)現(xiàn)較好的默認路徑,則該節(jié)點具有較小的等級。否則,該節(jié)點具有較大的等級。

利用所提供的父節(jié)點選擇方法,節(jié)點選擇多個父節(jié)點。換句話說,節(jié)點發(fā)現(xiàn)朝向匯聚節(jié)點的多個路由路徑。節(jié)點在其dio消息中通告所發(fā)現(xiàn)的最佳路由路徑。例如,如果節(jié)點發(fā)現(xiàn)到匯聚節(jié)點的兩條路由路徑,一條路徑具有bnc=0,而另一條路徑具有bnc=2,則該節(jié)點將通告具有bnc=0的路徑。

盡管使用了rpl作為示例來發(fā)現(xiàn)電池能量有效路由路徑,所提供的方法還可以被應用于任何路由算法。

空閑監(jiān)聽時間減少

圖8示出了一個示例,其中,電池供電節(jié)點b0、b1、b2、…、bn使用相同的活動時段長度和休眠時段長度。節(jié)點b1具有要發(fā)送至節(jié)點b0的數(shù)據(jù)分組,但b1剛剛錯過來自b0的第一喚醒消息800,b1等待來自節(jié)點b0的下一喚醒消息810并將分組820發(fā)送至b0。類似的是,節(jié)點b2具有要發(fā)送至節(jié)點b1的數(shù)據(jù)分組,但b2也剛剛錯過來自b1的第一喚醒消息800,因而節(jié)點b2等待來自b1的下一喚醒消息810并將分組820發(fā)送至b1,等等。按此順序,b1的等待時間≒activeperiodlength+sleepperiodlength、b1的等待時間≒activeperiodlength+2*sleepperiodlength、…、bn的等待時間≒activeperiodlength+n*sleepperiodlength。如果活動時段長度為10秒,并且休眠時段長度為90秒,則節(jié)點b5等待大約460秒。

在本發(fā)明的一些實施方式中,路由算法管理bpn的活動時段與休眠時段的安排,以使還減少導致更多能耗的空閑監(jiān)聽時間。為了減少分布式休眠模型中的空閑監(jiān)聽時間,在一些實施方式中,發(fā)送節(jié)點不需要等待直到接收到來自接收方節(jié)點的喚醒消息。不同的實施方式使用不同方法中的一種或組合來減少空閑監(jiān)聽時間。

例如,緩沖區(qū)中的分組的數(shù)量是可以被用于減少空閑監(jiān)聽的一個參數(shù)。如果緩沖區(qū)中有更多的分組要發(fā)送,則發(fā)送節(jié)點可以等待較長的定時器。否則,發(fā)送節(jié)點等待較短的時間,而如果沒有接收到喚醒,則發(fā)送節(jié)點進入休眠。因此,可以將空閑監(jiān)聽時間設置成與緩沖區(qū)中的分組的數(shù)量成比例。

偷聽是用于減少空閑監(jiān)聽時間的另一方法。無線介質(zhì)是共享介質(zhì)。從接收節(jié)點偷聽到的任何發(fā)送都表示接收節(jié)點喚醒,因此發(fā)送節(jié)點可以向接收節(jié)點發(fā)送分組。例如,根據(jù)rpl協(xié)議,rpl節(jié)點基于涓流計時器算法發(fā)送dio。其是偽周期性發(fā)送。如果發(fā)送節(jié)點偷聽到來自接收節(jié)點的dio消息,則接收節(jié)點被醒來。而且,網(wǎng)絡中的節(jié)點需要將其數(shù)據(jù)發(fā)送至匯聚節(jié)點。

活動通知是用于減少空閑監(jiān)聽時間的另一方法。當發(fā)送節(jié)點在等待來自其接收方的喚醒消息時,可能存在正等待來自該發(fā)送節(jié)點的喚醒消息的其它節(jié)點。因此,如果發(fā)送節(jié)點等待了一段時間,則它可以動態(tài)地發(fā)送一活動通知信號,以讓其鄰居知道該發(fā)送節(jié)點是醒著的,使得鄰居可以將它們的分組發(fā)送至該發(fā)送節(jié)點(如果鄰居具有這樣的分組)。

在空閑監(jiān)聽時間管理中還需要考慮電池電量。定義電池電量閾值blth。如果電池節(jié)點的電池電量低于blth,則該電池節(jié)點處于危急狀態(tài)。因此,電池節(jié)點應將其活動時段設置成最小活動時段,并將其休眠時段設置成最大休眠時段。然而,如果電池供電節(jié)點的電池電平遠高于其收集到的mbl,那么該電池供電節(jié)點可以將空閑監(jiān)聽時間設置得較長。

電池能量有效數(shù)據(jù)分組發(fā)送

利用休眠節(jié)點,數(shù)據(jù)分組的發(fā)送與沒有休眠節(jié)點的情況不同,在沒有休眠節(jié)點的情況中,接收器總是醒著的,而且發(fā)送節(jié)點可以在任何定時器向接收器發(fā)送分組。利用休眠節(jié)點,發(fā)送器必須確保接收器是醒著的,以便發(fā)送分組。利用常規(guī)集中式休眠控制,發(fā)送方和接收方被安排成使得它們同時休眠和喚醒,即,如果發(fā)送器醒著,則接收器必須醒著。因此,只要接收器醒著,發(fā)送器就可以向接收器發(fā)送分組。然而,利用分布式休眠模型,發(fā)送器和接收器獨立地休眠和喚醒,即,當發(fā)送器醒著時,接收器可能是休眠的。因此,路由算法必須有效地管理數(shù)據(jù)分組發(fā)送,以避免分組丟失并節(jié)省電池電力。

在常規(guī)rpl中,節(jié)點總是將數(shù)據(jù)分組發(fā)送至它的默認父節(jié)點。然而,利用分布式休眠模型,節(jié)點不能總是將數(shù)據(jù)分組發(fā)送至它的默認父節(jié)點,因為該默認父節(jié)點可能是休眠的。該節(jié)點可以等待它的默認父節(jié)點喚醒,但等待消耗能量而且也增加了數(shù)據(jù)延遲。有效的方式是節(jié)點可以向醒著的任何父節(jié)點發(fā)送數(shù)據(jù)分組。如果沒有父節(jié)點是醒著的,則該節(jié)點可以通過利用上述休眠管理方法進入休眠或等待。

對于電池電力效率來說,如果多個父節(jié)點是醒著的,則發(fā)送節(jié)點必須確定其應當向哪個父節(jié)點發(fā)送分組。為了確定優(yōu)選父節(jié)點,必須估計沿著經(jīng)由各活動父節(jié)點的路徑中的電池能耗。然后,發(fā)送節(jié)點選擇經(jīng)由消耗最少電池能量的活動父節(jié)點的路徑。以下段落描述估計沿著路由路徑的電池電力消耗。

利用該分布式休眠管理模型,電池供電節(jié)點b是醒著的概率是

假定用于發(fā)送和接收數(shù)據(jù)分組的電力消耗分別為pt和pr,用于發(fā)送和接收喚醒消息的電力消耗分別為wt和wr。對于電池供電節(jié)點b來說,pi(b)表示與在分組發(fā)送之前等待來自電池供電接收節(jié)點的喚醒消息的空閑監(jiān)聽有關(guān)的電池電力消耗。

有三個步驟來估計沿著用于發(fā)送節(jié)點向匯聚節(jié)點遞送數(shù)據(jù)分組的路徑的電池電力消耗。

步驟1:計算將分組從一節(jié)點發(fā)送至另一節(jié)點所消耗的電池電力。

a)將分組從電池供電節(jié)點bt發(fā)送至電池供電節(jié)點br所消耗的電池電力為

其中,nr是節(jié)點br的不包括節(jié)點bt的電池鄰居的總數(shù)量,bbrk(k=1至nr)是節(jié)點br的不包括節(jié)點bt的電池鄰居,nt是節(jié)點bt的不包括節(jié)點br的電池鄰居的總數(shù)量,并且bbtj(j=1至nt)是節(jié)點bt的不包括節(jié)點br的電池鄰居。

b)將分組從電網(wǎng)供電節(jié)點mt發(fā)送至電池供電節(jié)點br所消耗的電池電力為

其中,nr是節(jié)點br的電池鄰居的總數(shù)量,bbrk(k=1至nr)是節(jié)點br的電池鄰居,nt是節(jié)點mt的不包括節(jié)點br的電池鄰居的總數(shù)量,而bmtj(j=1至nt)是節(jié)點mt的不包括節(jié)點br的電池鄰居。

c)將分組從電池供電節(jié)點bt發(fā)送至電網(wǎng)供電節(jié)點mr所消耗的電池電力為

其中,nt是節(jié)點bt的電池鄰居的總數(shù)量,而是節(jié)點bt的電池鄰居。

d)將分組從電網(wǎng)供電節(jié)點mt發(fā)送至電網(wǎng)供電節(jié)點mr所消耗的電池電力為

其中,nt是節(jié)點mt的電池鄰居的總數(shù)量,而是節(jié)點mt的電池鄰居。

步驟2:計算將分組從源節(jié)點發(fā)送至匯聚節(jié)點所消耗的電池電力。

沿著從源節(jié)點n(電網(wǎng)供電或電池供電)至匯聚節(jié)點s(電網(wǎng)供電或電池供電)的路徑,假定存在從電池供電節(jié)點至電池供電節(jié)點的b2b發(fā)送、從電網(wǎng)供電節(jié)點至電池供電節(jié)點的m2b發(fā)送、從電池供電節(jié)點至電網(wǎng)供電節(jié)點的b2m發(fā)送,以及從電網(wǎng)供電節(jié)點至電網(wǎng)供電節(jié)點的m2m發(fā)送。利用等式(5)-等式(8),將分組從源節(jié)點n發(fā)送至匯聚節(jié)點s所消耗的電池電力通過下式給出:

步驟3:計算沿一路徑的p(n,s)的最大值和最小值。

對于從源n至匯聚節(jié)點s的特定路由路徑來說,即使電池供電節(jié)點的數(shù)量和電網(wǎng)供電節(jié)點的數(shù)量是固定的,這些節(jié)點的布局也會影響電池能耗。包括源節(jié)點n和匯聚節(jié)點s,假定在該路徑上存在nb個電池供電節(jié)點b1、b2、…、bnb和nm個電網(wǎng)供電節(jié)點m1、m2、…、mnm。如果所有電網(wǎng)供電節(jié)點處于該路徑的開始,接著是所有電池供電節(jié)點,即,m1→m2→…→mnm→b1→b2→…→bnb,則出現(xiàn)最大電池能耗。因此,

在電池供電節(jié)點和電網(wǎng)供電節(jié)點交錯時,出現(xiàn)最小電池能耗。如果nm>=nb,則最小電池電力消耗布局是b1→m1→b2→m2→…→bnb→mnb→mnb+1→…→mnm,而如果nm<nb,則最小電池電力消耗布局是b1→m1→b2→m2→…→bnm→mnm→bnm+1→…→bnb。因此,如果nm>=nb,則

而如果nm<nb,則

利用計算出的最大電池能耗和最小電池能耗,從源節(jié)點n至匯聚節(jié)點s的路由路徑的平均電池電力消耗由下式給出

因此,如果存在多個父節(jié)點活動,則發(fā)送節(jié)點將以最小avg(p(n,s))將其數(shù)據(jù)分組轉(zhuǎn)發(fā)至父節(jié)點。然而,如果路由路徑的mbl達到blth,則不使用該路徑,除非沒有選擇。

對于節(jié)點n來說,為了實際上計算沿著一路徑的avg(p(n,s)),其需要知道該路徑上的各個節(jié)點的電池供電鄰居的數(shù)量和該路徑上的電網(wǎng)供電節(jié)點的數(shù)量,以及各個電池供電鄰居醒著的概率。

跳計數(shù)被用于計算沿著一路徑的電網(wǎng)供電節(jié)點(nmn)的數(shù)量如下。

nmn=hopcount-bnc+1(13)。

因此,路徑上的節(jié)點的總的數(shù)量為nmn+bnc。平均起來,該路徑上的每個節(jié)點都有

個電池供電偷聽鄰居。

可以使用典型的活動時段長度和典型的休眠時段長度來估計電池供電鄰居醒著的概率。

本發(fā)明的上述實施方式可以以許多方式中的任一種來實現(xiàn)。例如,這些實施方式可以利用硬件、軟件或其組合來實現(xiàn)。當以軟件來實現(xiàn)時,軟件代碼可以在任何合適的處理器或處理器的集合上執(zhí)行,而不管是設置在單一計算機中還是分布在多個計算機當中。這種處理器可以被實現(xiàn)為集成電路,在集成電路部件中具有一個或更多個處理器。然而,處理器可以利用采用任何合適形式的電路來實現(xiàn)。處理器可以連接至如本領域已知的存儲器、收發(fā)器以及輸入/輸出接口。

盡管已經(jīng)參照某些優(yōu)選實施方式描述了本發(fā)明,應當理解在本發(fā)明的精神和范圍內(nèi)可以做出各種其他調(diào)整和修改。因此,所附權(quán)利要求的目的在于覆蓋進入本發(fā)明的真實精神和范圍內(nèi)的所有這樣的改變和修改。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
泊头市| 陕西省| 盘山县| 连平县| 屏东市| 宜州市| 茂名市| 宁晋县| 江油市| 伊宁县| 报价| 隆子县| 谷城县| 青冈县| 繁峙县| 三明市| 武清区| 仪陇县| 石渠县| 巴青县| 太康县| 雅安市| 崇礼县| 麟游县| 塘沽区| 库尔勒市| 泰兴市| 宜宾县| 从江县| 乐昌市| 东平县| 临洮县| 宁德市| 彰化县| 济源市| 衡南县| 衡山县| 奉新县| 即墨市| 黄龙县| 穆棱市|