專利名稱:用于動(dòng)態(tài)度量和無(wú)線hello協(xié)議的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明大體涉及無(wú)線網(wǎng)絡(luò),更具體地,涉及無(wú)線網(wǎng)狀網(wǎng)絡(luò)(meshnetwork)中使用的動(dòng)態(tài)度量和無(wú)線hello協(xié)議的方法和系統(tǒng)。
背景技術(shù):
隨著最近在計(jì)算機(jī)和無(wú)線通信中的技術(shù)進(jìn)步,移動(dòng)無(wú)線計(jì)算已經(jīng)被越來(lái)越廣泛地使用和應(yīng)用。由于不受導(dǎo)線的限制,具有移動(dòng)計(jì)算設(shè)備的用戶可以方便地自由移動(dòng),并且在沒(méi)有固定基礎(chǔ)設(shè)施的情況下會(huì)經(jīng)常需要相互通信。在這種情況下,他們可以形成移動(dòng)自組織網(wǎng)絡(luò)(MANETmobile ad hoc network)或移動(dòng)無(wú)線網(wǎng)狀網(wǎng)絡(luò)。移動(dòng)無(wú)線網(wǎng)狀網(wǎng)絡(luò)是無(wú)線移動(dòng)路由器(及相關(guān)聯(lián)主機(jī))的自治系統(tǒng),其可以隨意移動(dòng)并且將它們自己重組為沒(méi)有任何基本的基干和基礎(chǔ)設(shè)施的任意網(wǎng)絡(luò)。
除了移動(dòng)無(wú)線網(wǎng)狀網(wǎng)絡(luò)之外,最近還出現(xiàn)了固定無(wú)線網(wǎng)狀網(wǎng)絡(luò)的有意思的商業(yè)應(yīng)用。這種商業(yè)應(yīng)用的一個(gè)示例是“社區(qū)無(wú)線網(wǎng)絡(luò)”,其用于向以前不能進(jìn)行寬帶互聯(lián)網(wǎng)接入的社區(qū)提供這種接入。在這些固定的“社區(qū)無(wú)線網(wǎng)絡(luò)”中,網(wǎng)絡(luò)中的各無(wú)線路由器不僅為關(guān)聯(lián)的用戶提供互聯(lián)網(wǎng)接入,而且也是網(wǎng)絡(luò)基礎(chǔ)設(shè)施的一部分并且可以通過(guò)無(wú)線網(wǎng)狀網(wǎng)絡(luò)將數(shù)據(jù)發(fā)送到其目的地。路由的無(wú)線網(wǎng)狀網(wǎng)絡(luò)高度靈活并且具有固有容錯(cuò)能力。其簡(jiǎn)化了視線問(wèn)題并且利用最小量的網(wǎng)絡(luò)基礎(chǔ)設(shè)施和互連成本而擴(kuò)展了網(wǎng)絡(luò)的到達(dá)和覆蓋范圍。
還存在混合無(wú)線網(wǎng)狀網(wǎng)絡(luò),其中一些網(wǎng)狀路由器是移動(dòng)的,而其他路由器不是移動(dòng)的。在任何情況下(無(wú)論是移動(dòng)的、固定的、還是混合的),無(wú)線網(wǎng)狀網(wǎng)絡(luò)都具有一些顯著的特性,例如高度動(dòng)態(tài)、自治、對(duì)等、多跳、常常有限的帶寬以及計(jì)算能力等等。無(wú)線網(wǎng)狀網(wǎng)絡(luò)高度動(dòng)態(tài)的原因有兩個(gè)第一,路由器本身可以移動(dòng)(例如,位于移動(dòng)或混合無(wú)線網(wǎng)狀網(wǎng)絡(luò)中),導(dǎo)致快速的拓?fù)涓淖儭5诙?,即使路由器本身不移?dòng)(例如,位于固定的無(wú)線網(wǎng)狀網(wǎng)絡(luò)中),無(wú)線鏈路質(zhì)量由于干擾、地理和環(huán)境因素等也會(huì)非??焖俚刈兓橛芯€基礎(chǔ)設(shè)施而設(shè)計(jì)的傳統(tǒng)路由協(xié)議(例如,OSPF、RIP)不能處理這種快速變化。另一方面,許多自組織路由協(xié)議(例如,AODV)缺少靈活地適應(yīng)無(wú)線鏈路質(zhì)量變化的能力。
路由協(xié)議在傳統(tǒng)上集中于尋找具有最少跳數(shù)的路徑。然而,這種路徑會(huì)包括緩慢的或有損耗的鏈路,從而導(dǎo)致較差的吞吐量。這些有損耗的鏈路差到足以削弱包轉(zhuǎn)發(fā)性能,但是還沒(méi)有差到防礙路由協(xié)議使用這些鏈路來(lái)轉(zhuǎn)發(fā)業(yè)務(wù)。
發(fā)明內(nèi)容
本發(fā)明公開(kāi)了用于無(wú)線網(wǎng)狀網(wǎng)絡(luò)的動(dòng)態(tài)度量和無(wú)線hello協(xié)議的方法和系統(tǒng)。在一個(gè)實(shí)施方式中,一種計(jì)算機(jī)實(shí)現(xiàn)方法包括確定包(packet)經(jīng)過(guò)網(wǎng)狀網(wǎng)絡(luò)的路由(route)。估計(jì)網(wǎng)狀網(wǎng)絡(luò)中的第一節(jié)點(diǎn)和第二節(jié)點(diǎn)之間傳送所述包所需的第一時(shí)間段。將所述第一時(shí)間段標(biāo)準(zhǔn)化以生成標(biāo)準(zhǔn)化值。利用所述標(biāo)準(zhǔn)化值來(lái)計(jì)算路徑。
現(xiàn)在來(lái)參照附圖對(duì)包括實(shí)現(xiàn)的各種新穎細(xì)節(jié)和要素的組合的上述和其他優(yōu)選特征進(jìn)行更具體的描述,并在權(quán)利要求中指出??梢岳斫獯颂幟枋龅木唧w方法和系統(tǒng)僅通過(guò)例示的方式示出而不是作為限制。本領(lǐng)域技術(shù)人員可以理解,在不偏離本發(fā)明的范圍的情況下可以在各種大量的實(shí)施方式中采用此處描述的原理和特征。
被包括進(jìn)來(lái)作為本說(shuō)明書(shū)的一部分的附圖示出了本發(fā)明的當(dāng)前優(yōu)選的實(shí)施方式,并且與上面給出的一般描述和下面給出的優(yōu)選實(shí)施方式的詳細(xì)描述一起,用于解釋和教導(dǎo)本發(fā)明的原理。
圖1是示出了建議用于本發(fā)明中的期望傳輸時(shí)間(ETT)的絕對(duì)值和標(biāo)準(zhǔn)化ETT值(路由度量)之間的關(guān)系的圖; 圖2示出了根據(jù)本發(fā)明的無(wú)線hello包狀態(tài)轉(zhuǎn)換圖; 圖3示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性無(wú)線hello包300; 圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性信息包400; 圖5示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的值字段的七個(gè)信息代碼點(diǎn); 圖6示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性單向鄰居請(qǐng)求(1-way Neighbor Request)包600; 圖7示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性雙向鄰居應(yīng)答(2-way Neighbor Reply)包700; 圖8示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性初始鄰居請(qǐng)求(Initial Neighbor Request)包800; 圖9示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性估計(jì)傳輸計(jì)數(shù)(ETX)信息包900; 圖10示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于測(cè)量到相鄰節(jié)點(diǎn)的一對(duì)背對(duì)背單播探針(unicast probe)之間的延遲的示例性小型包1000; 圖11示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的用于測(cè)量到相鄰節(jié)點(diǎn)的一對(duì)背對(duì)背單播探針之間的延遲的示例性大型包1100;以及 圖12示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的包含鄰居包對(duì)(PacketPair)信息和包對(duì)序號(hào)在內(nèi)的示例性信息包1200。
具體實(shí)施例方式 本發(fā)明公開(kāi)了一種在網(wǎng)狀網(wǎng)絡(luò)中用于動(dòng)態(tài)度量和無(wú)線hello協(xié)議的方法和系統(tǒng)。在一個(gè)實(shí)施方式中,該方法包括。
在下面的描述中,出于解釋的目的,對(duì)特定術(shù)語(yǔ)進(jìn)行闡述以提供對(duì)此處公開(kāi)的各種發(fā)明原理的全面理解。然而,對(duì)本領(lǐng)域技術(shù)人員清楚的是,可以不需要這些特定的細(xì)節(jié)來(lái)實(shí)施此處公開(kāi)的各種發(fā)明原理。
下面的詳細(xì)描述的一些部分將從無(wú)線網(wǎng)絡(luò)和計(jì)算機(jī)系統(tǒng)方面來(lái)給出。這些無(wú)線網(wǎng)絡(luò)的描述和表示是無(wú)線聯(lián)網(wǎng)領(lǐng)域的技術(shù)人員所使用的手段,以將他們的工作的實(shí)質(zhì)最有效地傳達(dá)給本領(lǐng)域技術(shù)人員。無(wú)線網(wǎng)絡(luò)在此一般被理解為用于在使用無(wú)線電波作為其載波的兩個(gè)或更多個(gè)計(jì)算機(jī)中進(jìn)行通信的系統(tǒng)。通常,盡管不是必須的,在計(jì)算機(jī)系統(tǒng)之間交換的信息采用包的形式。此外,出于共用的原因,包的成分被稱為位、值、要素、符號(hào)、字符、詞條、數(shù)字等等。
然而,應(yīng)當(dāng)記住,所有這些術(shù)語(yǔ)和相似術(shù)語(yǔ)都與合適的物理量相關(guān)聯(lián),并且僅是應(yīng)用于這些量的方便標(biāo)簽。除非特別規(guī)定或者從下面的討論中顯而易見(jiàn),應(yīng)理解在整個(gè)說(shuō)明書(shū)中,使用了諸如“路由器”或“無(wú)線電”或“頻率”或“信道”或“主干”或“包”或“通信”等等這些術(shù)語(yǔ)的討論,是指網(wǎng)絡(luò)或類似通信系統(tǒng)的部件、動(dòng)作和過(guò)程,所述網(wǎng)絡(luò)或類似通信系統(tǒng)將表示為計(jì)算機(jī)系統(tǒng)的寄存器和存儲(chǔ)器或其他這種信息存儲(chǔ)、傳輸或顯示設(shè)備內(nèi)的物理(電子)量的數(shù)據(jù)從一個(gè)計(jì)算機(jī)系統(tǒng)傳送到另一個(gè)計(jì)算機(jī)系統(tǒng)。
本發(fā)明還涉及用于執(zhí)行此處操作的裝置。可以將該裝置專門(mén)構(gòu)造為用于要求的目的,或者它可以包括由存儲(chǔ)在計(jì)算機(jī)中的計(jì)算機(jī)程序來(lái)選擇性地啟動(dòng)或重新配置的通用計(jì)算機(jī)。這種計(jì)算機(jī)程序可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如是,但不限于,包括軟盤(pán)、光盤(pán)、CD-ROM和磁光盤(pán)的任意類型的盤(pán),只讀存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器,EPROM,EEPROM,磁卡或光卡,或適于存儲(chǔ)電子指令的任意類型的介質(zhì),并且各介質(zhì)被連接到計(jì)算機(jī)系統(tǒng)總線。
此處介紹的方法并非固有地與任何特定的計(jì)算機(jī)或其他裝置相關(guān)。各種通用系統(tǒng)可以根據(jù)此處的教導(dǎo)與程序一起使用,或者它便于構(gòu)造更專業(yè)的裝置來(lái)執(zhí)行所要求的方法步驟。根據(jù)下面的描述中將清楚各種這些系統(tǒng)所需要的結(jié)構(gòu)。此外,未參照任何特定的編程語(yǔ)言來(lái)描述本發(fā)明。可以理解,各種編程語(yǔ)言可以用于實(shí)現(xiàn)此處描述的本發(fā)明的教導(dǎo)。
提議了兩種鏈路質(zhì)量參數(shù)以用作路由度量,其也可以用于計(jì)算用于在無(wú)線網(wǎng)狀網(wǎng)絡(luò)中發(fā)送包的路由路徑。第一鏈路質(zhì)量參數(shù)是標(biāo)準(zhǔn)化的期望傳輸時(shí)間(“標(biāo)準(zhǔn)化ETT”)。期望傳輸時(shí)間通過(guò)回歸分析被“標(biāo)準(zhǔn)化”,從而減少了絕對(duì)ETT值的變動(dòng)性(volatility)。第二參數(shù)是組合加權(quán)鏈路度量,其中每跳丟失率和鏈路吞吐量的影響被疊加以更進(jìn)一步地減少度量變動(dòng)性。提供了無(wú)線hello協(xié)議,其與自適應(yīng)無(wú)線路由(“AWRadaptive wireless routing”)協(xié)議棧相結(jié)合。無(wú)線hello協(xié)議(“WHP”)被配置為在不可靠網(wǎng)絡(luò)中工作,并且便于進(jìn)行例如動(dòng)態(tài)度量計(jì)算、度量報(bào)告和鄰居鄰接維護(hù)的功能。
大多數(shù)現(xiàn)有的無(wú)線網(wǎng)狀網(wǎng)絡(luò)路由協(xié)議選擇最小跳數(shù)路徑。這些路徑趨于包含其中需要以最低傳輸速率來(lái)傳輸包的較長(zhǎng)距離鏈路。
現(xiàn)有的無(wú)線網(wǎng)狀網(wǎng)絡(luò)考慮了無(wú)線鏈路上的丟包的影響,并且使用期望傳輸計(jì)數(shù)度量(ETXexpected transmission count metric),以在多跳無(wú)線網(wǎng)絡(luò)上找到高吞吐量路徑。具有較高丟失率的鏈路需要更多的重傳以成功地傳送包并具有更高的ETX值。Draves等人的另一個(gè)現(xiàn)有系統(tǒng)利用具有不同傳輸速率的無(wú)線節(jié)點(diǎn)多無(wú)線電和多信道。他們介紹了期望傳輸時(shí)間(ETTExpected Transmission Time)的參數(shù),并且解釋了該參數(shù)的值是鏈路的丟失率和帶寬的函數(shù)。他們還提出了另一種路由度量,即,加權(quán)累積ETT(WCETTWeighted CumulativeETT),來(lái)考慮流內(nèi)干擾(由包傳輸所消耗的沿路由路徑的鏈路的帶寬)。
本發(fā)明的系統(tǒng)和方法提供了用于無(wú)線網(wǎng)狀網(wǎng)絡(luò)中的路由協(xié)議的兩種路由度量。所提出的路由度量不會(huì)引起頻繁的路徑改變,確保了網(wǎng)絡(luò)的穩(wěn)定性。第二,路由度量獲取網(wǎng)狀網(wǎng)絡(luò)的特性,確保了路由路徑具有良好性能(即,高的吞吐量和低的包延遲)。第三,高效的算法可以用于基于路由度量來(lái)計(jì)算路由路徑。
路由穩(wěn)定性 路由度量可以是載荷敏感的或是拓?fù)湎嚓P(guān)的。在載荷敏感度量下,路由可以在數(shù)據(jù)包在路由器處到達(dá)或離開(kāi)時(shí)頻繁地變化。另一方面,拓?fù)湎嚓P(guān)的度量基于路徑的拓?fù)涠峙渎酚陕窂?。因此,拓?fù)湎嚓P(guān)的度量通常更穩(wěn)定。
良好性能路徑 為了確保能夠高效地利用網(wǎng)狀網(wǎng)絡(luò)的資源,由路由協(xié)議選擇的路由路徑在高吞吐量和低包延遲方面具有良好的性能。至少有四個(gè)影響路徑性能的網(wǎng)狀網(wǎng)絡(luò)特性路徑長(zhǎng)度、鏈路容量、丟包率和干擾。下面我們對(duì)各個(gè)特性進(jìn)行討論。
路徑長(zhǎng)度 各個(gè)跳引入額外的延遲和潛在更多的丟包。因此,當(dāng)路由路徑長(zhǎng)度增加時(shí)當(dāng)前的路由度量也會(huì)增加。
鏈路容量 通常,隨著兩個(gè)節(jié)點(diǎn)之間的距離增加,信道質(zhì)量劣化。由于IEEE802.11標(biāo)準(zhǔn)提供了傳輸速率根據(jù)信道質(zhì)量而作適應(yīng)性變化,鏈路容量隨著節(jié)點(diǎn)之間的距離增加而減小。因此,雖然路徑長(zhǎng)度的效果似乎支持具有較小跳數(shù)的路徑,但是距離和鏈路容量之間的關(guān)系通過(guò)支持具有較大跳數(shù)的路徑而不是具有較高容量的鏈路來(lái)抵消了這種效果。
包傳輸速率與節(jié)點(diǎn)之間的距離相關(guān),如下所示 丟包率 不同無(wú)線鏈路可能具有不同的丟包率。高丟包率鏈路影響鏈路吞吐量和延遲。因此,本發(fā)明的路由度量緩解了丟包率的影響以確保路由路徑具有良好性能。
干擾 在相鄰節(jié)點(diǎn)之間共享無(wú)線鏈路的帶寬。經(jīng)過(guò)無(wú)線鏈路的數(shù)據(jù)流不僅消耗沿該路徑的鏈路的帶寬(流內(nèi)干擾),而且它還與位于該路徑的相鄰區(qū)域中的鏈路爭(zhēng)奪帶寬(流間干擾)。
這些類型的干擾增加了沿路徑的各個(gè)鏈路處的數(shù)據(jù)流的帶寬消耗。干擾還導(dǎo)致數(shù)據(jù)流的吞吐量急劇劣化,并且導(dǎo)致在各跳的延遲隨著路徑的跳數(shù)增加而急劇地增加。由于相鄰節(jié)點(diǎn)可以使用不同信道使得它們不會(huì)相互干擾,所以信道分配影響干擾級(jí)。鏈路容量也影響干擾級(jí)。較慢的鏈路消耗更多的信道時(shí)間,并且因此導(dǎo)致更多的流內(nèi)干擾和流間干擾。因?yàn)樾枰诼酚陕窂降拈L(zhǎng)度上考慮信道分配的多樣性和鏈路容量,所以難以利用路由度量來(lái)捕獲干擾。
有效的路由路徑生成方法 即使路由度量確保路由路徑具有良好性能,但是如果不存在有效算法來(lái)基于路由度量計(jì)算路由路徑,則路由協(xié)議不會(huì)有效地生成路由路徑。
現(xiàn)有的路由協(xié)議基本上依賴于兩種算法來(lái)計(jì)算路由路徑,即,貝爾曼-福特(Bellman-Ford)算法或迪科斯徹(Dijkstra)算法。同樣,本發(fā)明的系統(tǒng)和方法與這些算法兼容。另外,本發(fā)明的方法和系統(tǒng)確保如果路徑的順序被公共第三路徑附加或作為前綴則保留路徑的順序。
現(xiàn)有的網(wǎng)狀網(wǎng)絡(luò)的路由度量 目前在網(wǎng)狀網(wǎng)絡(luò)中使用六種路由度量,并且每個(gè)都具有其缺點(diǎn)。這六種路由度量是跳數(shù)、每跳往返行程時(shí)間(“RTTper-hop roundtrip time”)、每跳包對(duì)延遲(“PktPairper-hop packet pairdelay”)、期望傳輸計(jì)數(shù)(“ETXexpected transmission count”)、期望傳輸時(shí)間(“ETTexpected transmission time”)以及加權(quán)累計(jì)ETT(“WCETTweighted cumulative ETT”)。下面進(jìn)一步解釋這些現(xiàn)有路由度量。
跳數(shù)(HOP) 跳數(shù)度量與貝爾曼-福特算法和迪科斯徹算法都兼容。然而,跳數(shù)未從網(wǎng)狀網(wǎng)絡(luò)中的節(jié)點(diǎn)之間的距離、丟包率或干擾來(lái)考慮包傳輸速率的差異。因此,使用跳數(shù)度量可能不會(huì)導(dǎo)致良好性能,因?yàn)槠湓噲D通過(guò)考慮長(zhǎng)距離或低質(zhì)量鏈路來(lái)減少跳的數(shù)量,其中需要以最低傳輸速率來(lái)傳輸包。
每跳往返行程時(shí)間(RTT) RTT用于估計(jì)信道質(zhì)量。節(jié)點(diǎn)每500毫秒向其各個(gè)鄰居發(fā)送帶有時(shí)間戳的單播探針包。各個(gè)鄰居立即用探針確認(rèn)來(lái)對(duì)探針做出響應(yīng)。這使得發(fā)送節(jié)點(diǎn)能夠測(cè)量到其各個(gè)鄰居的往返行程時(shí)間。引入被稱為平滑RTT(“SRTTSmoothed RTT”)的加權(quán)平均值來(lái)估計(jì)鏈路的質(zhì)量。SRTT可以根據(jù)下式來(lái)描述 SRTT=αRTTnew+(1-α)SRTT 其中α是_____。
在使用率高的信道上發(fā)送的探針消息可能比在使用率低的信道上發(fā)送的探針花費(fèi)更長(zhǎng)時(shí)間來(lái)獲得對(duì)介質(zhì)的訪問(wèn)。
RTT說(shuō)明了鏈路負(fù)載、帶寬和鏈路丟失率。
每跳包對(duì)延遲(PKTPAIR) 該度量是基于對(duì)從一個(gè)節(jié)點(diǎn)發(fā)送到相鄰節(jié)點(diǎn)的一對(duì)背對(duì)背單播探針之間的延遲進(jìn)行的測(cè)量。其被設(shè)計(jì)為糾正由于排隊(duì)延遲而導(dǎo)致的RTT測(cè)量失真的問(wèn)題。
為了計(jì)算該度量,節(jié)點(diǎn)以周期性間隔(例如,每五秒)向各個(gè)鄰居背對(duì)背地發(fā)送兩個(gè)探針包。第一探針包較小(例如,100字節(jié)),而下一個(gè)探針包較大(例如,1800字節(jié))。相鄰節(jié)點(diǎn)計(jì)算第一和第二探針包的接收之間的延遲。然后將該延遲報(bào)告給發(fā)送節(jié)點(diǎn)。
由于成對(duì)的兩個(gè)包被同等地延遲,所以該度量不受在發(fā)送節(jié)點(diǎn)處的排隊(duì)延遲的影響。該度量說(shuō)明了鏈路負(fù)載和帶寬。其還說(shuō)明了鏈路丟失率。
期望傳輸計(jì)數(shù)(ETX) ETX被定義為需要通過(guò)無(wú)線鏈路成功地傳送包的MAC層傳輸?shù)钠谕麛?shù)量。路徑的ETX被定義為沿路徑的所有鏈路的ETX值的總和。ETX表示為 ETX=1/(df*dr) 其中df,dr分別代表預(yù)定時(shí)間間隔的前向發(fā)送率和反向發(fā)送率。
為了計(jì)算ETX,各個(gè)節(jié)點(diǎn)以短周期性間隔(例如,每一秒)發(fā)送廣播探針包。探針包含來(lái)自各個(gè)相鄰節(jié)點(diǎn)的探針的當(dāng)前傳輸序號(hào)和當(dāng)前接收序號(hào)。
因?yàn)楦鱾€(gè)節(jié)點(diǎn)廣播探針包而不是單播探針包,所以開(kāi)銷顯著減少。因?yàn)闆](méi)有測(cè)量延遲,所以該度量極少受到自身干擾。
該度量的主要缺點(diǎn)是,因?yàn)橐宰畹蛢?yōu)先級(jí)發(fā)送廣播探針包,所以它們不會(huì)經(jīng)歷與以較高優(yōu)先級(jí)發(fā)送的數(shù)據(jù)包相同的丟失率。此外,該度量不直接地說(shuō)明鏈路負(fù)載和鏈路帶寬。所以,重負(fù)載的鏈路會(huì)具有非常低的丟失率,并且具有不同帶寬的兩個(gè)鏈路會(huì)具有相同的丟失率。
期望傳輸時(shí)間(ETT) ETT被定義為用于在鏈路上成功傳輸包的期望MAC層持續(xù)時(shí)間。路徑的ETT是沿路徑的所有鏈路的ETT的簡(jiǎn)單相加。ETT可以表示為 ETT=ETX*(S/B) 其中B是鏈路帶寬,S是包大小。
ETT考慮了各鏈路上的帶寬和丟失率。因此,其清楚地說(shuō)明了由于在同一信道上工作的鏈路當(dāng)中的干擾而導(dǎo)致的吞吐量的減少。
ETT的優(yōu)點(diǎn)是其支持具有高帶寬、低損耗鏈路的短路徑。缺點(diǎn)是其未考慮信道多樣性。
加權(quán)累積ETT(WCETT) WCETT是基于ETT的度量;其被設(shè)計(jì)為利用了多無(wú)線電網(wǎng)狀網(wǎng)絡(luò)。WCETT可以在雙無(wú)線電(雙接入點(diǎn))網(wǎng)狀網(wǎng)絡(luò)中在性能上比HOP增加250%,并比ETX增加80%。
WCETT是基于路徑的度量。其由下式來(lái)描述。
SETT=路徑上的鏈路的ETT的和 BG-ETT=路徑上的“瓶頸組ETT” WCETT=(1-β)*SETT+β*BG-ETT 其中β是可調(diào)參數(shù)。較高的β值更有利于信道多樣性,而較低的β值更有利于較短路徑。
按三個(gè)步驟來(lái)計(jì)算BG-ETT。第一,根據(jù)信道對(duì)路徑上的鏈路進(jìn)行分組。第二,將各組中的所有鏈路的ETT加在一起。第三,確定具有最大和的組并將其指定為BG-ETT。
自適應(yīng)無(wú)線路由(AWRADAPTIVE WIRELESS ROUTING)中的動(dòng)態(tài)度量支持 ETT是在鏈路上成功地傳輸固定長(zhǎng)度S的包所需的期望時(shí)間的度量。其產(chǎn)生高吞吐量路徑,因?yàn)槠溥x擇具有最少延遲的路徑。然而,ETT是變動(dòng)性的、載荷敏感的,并且其強(qiáng)調(diào)在各個(gè)跳上的鏈路吞吐量的影響而不考慮網(wǎng)絡(luò)的整體性能。此外,當(dāng)前使用的鏈路質(zhì)量度量不考慮例如CPU使用的資源以及由沿路由路徑的各個(gè)跳所消耗的內(nèi)部包排隊(duì)。
本發(fā)明用于發(fā)送包的方法和系統(tǒng)結(jié)合了標(biāo)準(zhǔn)化ETT和組合加權(quán)鏈路質(zhì)量度量的使用。這兩種度量考慮了整體網(wǎng)絡(luò)性能并且將鏈路吞吐量的影響降低到合適的水平。
標(biāo)準(zhǔn)化ETT ETT是載荷敏感參數(shù)并且是非常易變的。在表1中示出了典型的ETT值表。
從上面表1可知,ETT的值可以在三個(gè)量級(jí)的幅度上變化。這種過(guò)度的變動(dòng)性會(huì)導(dǎo)致路由波動(dòng)。根據(jù)一個(gè)實(shí)施方式,為了減少路由波動(dòng),將ETT值標(biāo)準(zhǔn)化為10和100之間的值。
這通過(guò)回歸分析和曲線擬合來(lái)實(shí)現(xiàn)。如圖1所示,指數(shù)函數(shù)用作回歸模型以獲得標(biāo)準(zhǔn)化ETT值。
與常規(guī)ETT相比,標(biāo)準(zhǔn)化ETT的效果是減少了有效路徑長(zhǎng)度。例如,考慮兩個(gè)路徑。一個(gè)路徑是一個(gè)跳離(hop away)且具有1Mbit/sec的鏈路吞吐量。路徑的ETT是8192。另一路徑是十個(gè)跳離且具有10Mbit/sec的鏈路吞吐量。各個(gè)跳的ETT是819。所以用常規(guī)ETT,具有十個(gè)10Mbit/sec的跳的路徑具有與一個(gè)1Mbit/sec的跳的路徑相同的度量。然而,在相同的情況下用標(biāo)準(zhǔn)化ETT,具有一個(gè)1Mbit/sec的跳的路徑的標(biāo)準(zhǔn)化ETT度量為95,其大約相當(dāng)于標(biāo)準(zhǔn)化ETT度量各為35的三個(gè)10Mbit/sec的跳。所以,用標(biāo)準(zhǔn)化ETT,不認(rèn)為具有四個(gè)10Mbit/sec的跳的路徑優(yōu)于具有一個(gè)1Mbit/sec的跳的路徑。
組合加權(quán)鏈路質(zhì)量度量 對(duì)于常規(guī)ETT,吞吐量與ETT成反比。因此,鏈路吞吐量的效果可能被夸大,并且它會(huì)導(dǎo)致過(guò)度的路由波動(dòng)。鏈路吞吐量的效果應(yīng)當(dāng)被標(biāo)準(zhǔn)化并且疊加到鏈路度量。組合加權(quán)鏈路質(zhì)量度量(CW-MetricCombinational Weighted Link Quality Metric)可以表示為 CW-Metric=α*ETX+β*(MAX_EFFECTIVE_LINK_THROUGHPUT/B) 其中α+β=10。MAX_EFFECTIVE_LINK_THROUGHPUT是以100Kbit/sec為單位的最大有效鏈路吞吐量。α的默認(rèn)值是6,而β是4。
例如,假設(shè)ETX是1。用所提議的這種度量,在與上述相同的情況下,具有一個(gè)1Mbit/sec的跳的路徑的組合度量為86。具有六個(gè)10Mbit/sec的跳的另一路徑的路徑度量為84,且在各個(gè)跳上的組合度量為14。
本組合加權(quán)鏈路質(zhì)量度量的效果與標(biāo)準(zhǔn)化ETT相似。鏈路度量被標(biāo)準(zhǔn)化成最小值為10。在大多數(shù)條件下,標(biāo)準(zhǔn)化ETT不像絕對(duì)ETT是那么易變動(dòng)。然而,當(dāng)吞吐量(B)小于100Kbit/sec時(shí)或者當(dāng)ETX為較大值時(shí),組合度量可以是易變動(dòng)性的??梢詫⒆钚℃溌吠掏铝吭O(shè)定為100Kbit/sec并將最大每跳ETX設(shè)定為20(在兩個(gè)方向上有大約80%的丟失率),以避免該情形。理想地,ETX和鏈路吞吐量的權(quán)重在組合加權(quán)鏈路質(zhì)量度量?jī)?nèi)部應(yīng)當(dāng)處于同一量級(jí)。
移動(dòng)平均值 對(duì)于各測(cè)量鏈路容量和ETX值,在特定的時(shí)間段內(nèi)對(duì)樣本數(shù)據(jù)進(jìn)行分析。有兩種移動(dòng)平均值,下面將簡(jiǎn)要進(jìn)行描述。
簡(jiǎn)單移動(dòng)平均值(SMASIMPLE MOVING AVERAGE) 通過(guò)計(jì)算在指定數(shù)量的周期內(nèi)的樣本集的平均值(均值)來(lái)形成簡(jiǎn)單移動(dòng)平均值(“SMA”)。當(dāng)新樣本到達(dá)時(shí),扔掉不在指定數(shù)量的周期內(nèi)的舊樣本。簡(jiǎn)單移動(dòng)平均值是滯后指標(biāo)(lagging indicator)并且將總是“落后于”樣本數(shù)據(jù)。它們屬于趨勢(shì)跟蹤指標(biāo)的范疇。當(dāng)樣本數(shù)據(jù)跟隨趨勢(shì)時(shí),移動(dòng)平均值發(fā)揮好的作用。然而,當(dāng)樣本數(shù)據(jù)不跟隨趨勢(shì)時(shí),移動(dòng)平均值可能會(huì)誤導(dǎo)。
指數(shù)移動(dòng)平均值(EMAEXPONENTIAL MOVING AVERAGE) 為了減少簡(jiǎn)單移動(dòng)平均值的滯后,使用指數(shù)移動(dòng)平均值(“EMA”)(也被稱為指數(shù)加權(quán)移動(dòng)平均值)。EMA通過(guò)將相對(duì)于較老的樣本數(shù)據(jù)的更多的權(quán)重應(yīng)用到最近的樣本數(shù)據(jù)上來(lái)減小滯后。應(yīng)用到最近的樣本數(shù)據(jù)的權(quán)重取決于移動(dòng)平均值的指定乘數(shù)。EMA的乘數(shù)越大,應(yīng)用到最近樣本數(shù)據(jù)的權(quán)重也會(huì)越大。
將EMA用于較短時(shí)間段以更快地捕獲變化,而將SMA用于較長(zhǎng)時(shí)間段以識(shí)別長(zhǎng)期趨勢(shì)變化。這是敏感度和可靠性之間的權(quán)衡。指標(biāo)越敏感,則給出的信號(hào)越多。這些信號(hào)可以及時(shí)地但隨著增加的敏感度的出現(xiàn)而證明錯(cuò)誤信號(hào)的增加。指標(biāo)越不敏感,給出的信號(hào)越少。然而,較少的敏感度導(dǎo)致更少的且更可靠的信號(hào),但是這些信號(hào)也可以是晚的。
要在移動(dòng)平均值中使用的周期長(zhǎng)度 因?yàn)橐苿?dòng)平均值跟隨趨勢(shì),當(dāng)樣本跟隨趨勢(shì)時(shí)它們發(fā)揮最好的作用,但是當(dāng)樣本在一定范圍內(nèi)移動(dòng)時(shí)它們是無(wú)效的。要在移動(dòng)平均值中使用的周期長(zhǎng)度根據(jù)樣本變動(dòng)性和“應(yīng)時(shí)性(trendiness)”而變化。變動(dòng)性越大,要求越平滑,并且因此計(jì)算代表性的移動(dòng)平均值所需的時(shí)間段越長(zhǎng)。
計(jì)算傳送率 為了計(jì)算ETX,確定各個(gè)鏈路的前向和反向傳送率(df和dr)。各個(gè)節(jié)點(diǎn)以短周期性間隔(例如,1秒)發(fā)出廣播探針包。廣播包未通過(guò)802.11MAC層重傳。節(jié)點(diǎn)跟蹤從各鄰居接收到的探針的數(shù)量,并且將該信息包括在其自己的探針中。各個(gè)探針包含來(lái)自各相鄰節(jié)點(diǎn)的當(dāng)前發(fā)送的序號(hào)和最后接收到的序號(hào)。以周期性間隔(例如,每60秒)來(lái)計(jì)算EMA傳送率。然而,當(dāng)發(fā)現(xiàn)新的鄰居時(shí),在經(jīng)過(guò)第一周期性間隔(例如,60秒)之前不能計(jì)算傳送率。根據(jù)本發(fā)明,在第一周期性間隔的持續(xù)時(shí)間(例如,第一個(gè)60秒)內(nèi),傳送率將被設(shè)定為100%。
計(jì)算鏈路帶寬 利用來(lái)自無(wú)線電驅(qū)動(dòng)器的反饋來(lái)確定鏈路帶寬B。根據(jù)本發(fā)明,在一個(gè)實(shí)施方式中,反饋間隔優(yōu)選地設(shè)定為五秒。當(dāng)無(wú)線電驅(qū)動(dòng)器不提供速率反饋時(shí),使用包對(duì)法來(lái)估計(jì)帶寬。在包對(duì)法的一個(gè)實(shí)施方式中,一個(gè)小包(例如,100字節(jié))和大包(例如,1800字節(jié))在鏈路的兩個(gè)方向上被以周期性間隔(例如,五秒)背對(duì)背地發(fā)送持續(xù)例如五分鐘的時(shí)間段。只要一接收到較小的包,就啟動(dòng)定時(shí)器來(lái)測(cè)量在接收較大包時(shí)發(fā)生的延遲。
每五分鐘對(duì)可用鏈路帶寬進(jìn)行計(jì)算。根據(jù)一個(gè)實(shí)施方式該過(guò)程如下 1.根據(jù)60次包對(duì)帶寬測(cè)量的樣本來(lái)計(jì)算移動(dòng)平均帶寬。根據(jù)一個(gè)實(shí)施方式該過(guò)程如下 a.將該樣本的包對(duì)帶寬測(cè)量5,10,15,20,25,30,35,40,45,50,55的平均值作為指數(shù)移動(dòng)平均值的初始值。
b.計(jì)算該樣本的帶寬的指數(shù)移動(dòng)平均值。
I.如果帶寬測(cè)量和初始指數(shù)移動(dòng)平均值(根據(jù)a得到)之間的差超出指數(shù)移動(dòng)平均值的初始值的50%,則將α設(shè)定為0.1。
II.如果帶寬測(cè)量和初始指數(shù)移動(dòng)平均值(根據(jù)a得到)之間的差在指數(shù)移動(dòng)平均值的初始值的50%之內(nèi),則將α設(shè)定為0.2。
III.公式是新的移動(dòng)平均帶寬=(1-α)*舊的移動(dòng)平均帶寬+α*測(cè)量。
2.計(jì)算可用鏈路帶寬。根據(jù)一個(gè)實(shí)施方式該過(guò)程如下。
a.新的可用鏈路帶寬=(1-α)*舊的可用鏈路帶寬+α*樣本的移動(dòng)平均帶寬。
b.其中α=0.9。
然而,當(dāng)發(fā)現(xiàn)新相鄰節(jié)點(diǎn)時(shí),將可用鏈路帶寬設(shè)定為鏈路的最大有效鏈路吞吐量的100%。在一個(gè)實(shí)施方式中,是20,000Mbps。
ETX測(cè)量的準(zhǔn)確性 根據(jù)一個(gè)實(shí)施方式,ETX測(cè)量相鄰節(jié)點(diǎn)的對(duì)之間的廣播包的丟失率。以非常低的速率(通常是1/sec)發(fā)出ETX探針包。因?yàn)閺V播包不具有任何可靠性機(jī)制,所以以最低的固定調(diào)制傳輸速率發(fā)出廣播包。因此,ETX不會(huì)經(jīng)歷與以較高速率發(fā)送的數(shù)據(jù)包相同的丟失率。對(duì)于802.11b網(wǎng)絡(luò),因?yàn)橛捎谧詣?dòng)速率回落(ARF)算法[Song-Ching,F(xiàn)uyong-What is purpose of this algorithm?When is it used?]的效果造成的數(shù)據(jù)傳輸速率(1Mbps-11Mbps)的變化在這種情況下不是顯著的,所以ETX工作正常。然而,當(dāng)傳輸速率高得多時(shí)(例如,在802.11a/g的情況下高達(dá)54Mb/sec,并且在802.11n的情況下大于100Mb/sec),如果在WLAN芯片組中實(shí)現(xiàn)ARF算法,則利用廣播包的ETX不會(huì)工作正常。在另一實(shí)施方式中,作出下述調(diào)整 在自動(dòng)速率適應(yīng)算法內(nèi)置于特定MAC層芯片組的情況下,在可用鏈路帶寬本身中已經(jīng)反映了丟失率的效果。因此,如果利用標(biāo)準(zhǔn)化ETT度量則ETX被設(shè)定為恒定值,或者如果使用組合加權(quán)鏈路質(zhì)量度量則將α設(shè)定為零而β設(shè)定為1。
無(wú)線hello協(xié)議 根據(jù)一個(gè)實(shí)施方式,無(wú)線hello協(xié)議(WHP)用于下述目的 1.鄰居發(fā)現(xiàn) 2.鄰居故障檢測(cè) 3.單向鏈路檢測(cè) 4.每跳傳送率計(jì)算 5.每跳鏈路帶寬計(jì)算無(wú)線hello包報(bào)告鏈路上的德耳塔(delta)變化或鄰居狀態(tài)。其調(diào)解了不可靠無(wú)線網(wǎng)絡(luò)中的丟包。而且,其提供了使用戶能夠?qū)⒏嗟墓δ苄?例如,動(dòng)態(tài)度量計(jì)算)添加到無(wú)線hello協(xié)議中的框架。
無(wú)線hello包作為IP廣播包被發(fā)出。分配了公知的端口655以用于傳輸無(wú)線hello協(xié)議包。
鄰居狀態(tài) 圖2示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的無(wú)線hello包狀態(tài)轉(zhuǎn)換圖。針對(duì)各鄰居定義了四種狀態(tài)INIT(初始)、1-WAY(單向)、2-WAY(雙向)和DOWN(停用)?!癟LV”代表存儲(chǔ)在具有三個(gè)參數(shù)(時(shí)間-長(zhǎng)度-值)的數(shù)據(jù)庫(kù)中的信息。
INIT 一旦從新鄰居接收到Hello消息,就創(chuàng)建關(guān)聯(lián)鄰居數(shù)據(jù)結(jié)構(gòu)并且鄰居狀態(tài)被初始化為INIT。當(dāng)相鄰鄰居被重設(shè)時(shí)(通過(guò)明確地發(fā)送/接收初始化鄰居消息或通過(guò)丟失大量的連續(xù)Hello包(例如,30個(gè))或接收意外的狀態(tài)信息),鄰居狀態(tài)也被復(fù)位為INIT狀態(tài)。
1-WAY 已從鄰居接收到Hello消息,其中在1-WAY鄰居消息中未提及路由器。這表示與鄰居的通信不是雙向的。
2-WAY 在該狀態(tài)下,兩個(gè)路由器之間的通信是雙向的。這是鄰居鄰接的最高級(jí)狀態(tài)。在到達(dá)該狀態(tài)之后,路由協(xié)議可以開(kāi)始發(fā)送/接收協(xié)議更新包。
DOWN 當(dāng)一段時(shí)間(例如,30秒)未從鄰居接收到Hello包時(shí),關(guān)聯(lián)的鄰居停用(dead)定時(shí)器計(jì)時(shí)期滿。鄰居數(shù)據(jù)結(jié)構(gòu)被清除。
鄰居發(fā)現(xiàn)(NDNEIGHBOR DISCOVERY) 在無(wú)線hello包源地址中隱含地定義了鄰居。如果無(wú)線hello包和接收包的接口位于不同的子網(wǎng)中,則忽略該包。另外,如果尚不存在鄰居結(jié)構(gòu),則創(chuàng)建鄰居結(jié)構(gòu)。除了鏈路帶寬計(jì)算的一種情況,以短周期性間隔(例如,每秒)發(fā)送無(wú)線hello包。
各個(gè)無(wú)線hello包包含多個(gè)TLV。有三個(gè)與鄰居發(fā)現(xiàn)(“ND”)相關(guān)的TLV ·單向鄰居請(qǐng)求(1_WAY_NBR1-WAY Neighbor Request) ·雙鄰居應(yīng)答(2_WAY_NBR2-WAY Neighbor Reply) ·初始鄰居請(qǐng)求(INIT_NBRINIT Neighbor Request) 當(dāng)節(jié)點(diǎn)i改變節(jié)點(diǎn)j處的鏈路狀態(tài)時(shí),節(jié)點(diǎn)i包括在接口上發(fā)送的至多30個(gè)連續(xù)Hello包中的這些TLV之一中的鄰居j的地址。這確保了節(jié)點(diǎn)j接收一個(gè)Hello包,或者節(jié)點(diǎn)j錯(cuò)過(guò)來(lái)自節(jié)點(diǎn)i的30個(gè)Hello包并且通過(guò)將鄰居i的地址包括在其發(fā)送到節(jié)點(diǎn)i的hello包上的INIT_NBR TLV中來(lái)聲明到節(jié)點(diǎn)i的鄰居鄰接丟失。針對(duì)鄰居地址i的鏈路停用事件被觸發(fā)。
當(dāng)接收到無(wú)線hello包時(shí),如果該包是從未知鄰居接收到的,則創(chuàng)建關(guān)聯(lián)鄰居數(shù)據(jù)結(jié)構(gòu)并且其鄰居狀態(tài)被初始化為INIT狀態(tài)。其隨后將新創(chuàng)建的鄰居包括在位于發(fā)給該鄰居的hello包上的1_WAY_NBRTLV中,并且使鄰居狀態(tài)前移到1-WAY。一旦其從包含2_WAY_NBR_TLV的鄰居接收到hello包并且其地址在TLV列出,則其使鄰居狀態(tài)前移到2-WAY狀態(tài)。2-WAY狀態(tài)是鄰接中的最高級(jí)狀態(tài)。AWR可以僅處理來(lái)自處于2-WAY狀態(tài)的鄰居的路由更新。
鄰居故障檢測(cè)(NFDNEIGHBOR FAILURE DETECTION) 一旦路由器在特定時(shí)間(例如,30秒)內(nèi)從鄰居接收到無(wú)線hello包,則該鄰居停用定時(shí)器被復(fù)位。一旦鄰居停用定時(shí)器計(jì)時(shí)期滿,則鄰居狀態(tài)改變?yōu)镈OWN狀態(tài)并且鄰居數(shù)據(jù)結(jié)構(gòu)被清除。
每跳傳送率計(jì)算 無(wú)線hello包包含估計(jì)傳輸計(jì)數(shù)(“ETXestimated transmissioncount”)TLV。ETX TLV包含當(dāng)前傳輸序號(hào)、當(dāng)前接收序號(hào)和當(dāng)前前向傳送率(forward delivery ratio)。每傳輸一個(gè)ETX TLV,傳輸序號(hào)加1。當(dāng)前傳輸序號(hào)被設(shè)定為1。
每跳鏈路帶寬計(jì)算 有一種每鄰居PKTPAIR定時(shí)器。當(dāng)定時(shí)器計(jì)時(shí)期滿時(shí),一對(duì)無(wú)線hello包被發(fā)送到關(guān)聯(lián)鄰居。這對(duì)無(wú)線hello包包含兩種TLV中的任一種,即小型(例如,100字節(jié))包(PKTPAIR_1)或大型(例如,1800字節(jié))包(PKTPAIR_2)。如果接收了包含大型包TLV的無(wú)線hello包而在該大型包TLV之前沒(méi)有小型包TLV,則忽略該大型包TLV。小型包TLV和大型包TLV包含1和60之間的范圍內(nèi)的循環(huán)序號(hào)。
一旦測(cè)量了鏈路帶寬,則PKTPAIR_REPLY TLV包含序號(hào)和測(cè)量到的帶寬(單位為Kbit/sec)。
無(wú)線hello協(xié)議包 該包具有32位AWR報(bào)頭,接著是32位無(wú)線hello包(PACKET)報(bào)頭和可變長(zhǎng)度的有效載荷。有效載荷由各種類型的TLV組成。圖3示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性無(wú)線hello包。無(wú)線hello包300包括下述信息 版本當(dāng)前自適應(yīng)無(wú)線路由版本號(hào)。
類型Hello代碼點(diǎn)是3。
序列Hello包序列空間。其是
的范圍內(nèi)的循環(huán)序號(hào)。
標(biāo)志該四位標(biāo)志字段被定義為 01234567 +-+-+-+-+-+-+-+-+ ||||||||U| +-+-+-+-+-+-+-+-+ U未檢查的序號(hào) 圖4示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性TLV包400。TLV包400包括類型、長(zhǎng)度和值字段。圖5示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的值字段的七個(gè)TLV代碼點(diǎn)。代碼點(diǎn)包括1_WAY_NBR、2_WAY_NBR、INIT_NBR、ETX、PKTPAIR_1、PKTPAIR_2和PKTPAIR_Reply。
圖6示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性單向鄰居請(qǐng)求包600。單向鄰居請(qǐng)求包600包括鄰居地址。值n是TLV中的鄰居入口的號(hào)碼。
圖7示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性雙向鄰居應(yīng)答包700。雙向鄰居應(yīng)答包700包括鄰居地址。值n是TLV中的鄰居入口的號(hào)碼。前16位表示包700是雙向鄰居應(yīng)答包。
圖8示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性初始鄰居請(qǐng)求包800。初始鄰居請(qǐng)求包800包括鄰居地址。值n是TLV中的鄰居入口的號(hào)碼。前16位表示包800是初始鄰居請(qǐng)求包。
圖9示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性ETX TLV包900。ETX TLV包900包括下述字段和值 nTLV中的鄰居入口的號(hào)碼。
Neighbor address(鄰居地址)關(guān)聯(lián)的鄰居ETX度量信息。
fwd ratio當(dāng)前前向傳送率。
xmt seqETX探針傳輸序號(hào)。
rcv seq最后接收到的序號(hào)。
圖10示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性PKTPAIR_1TLV包1000。PKTPAIR_1TLV包1000包括下述字段和值 seq當(dāng)前包對(duì)序號(hào)。
lengthTLV長(zhǎng)度優(yōu)選地是100字節(jié)。
圖11示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性PKTPAIR_2TLV包1100。PKTPAIR_2TLV包1100包括下述字段和值 seq當(dāng)前包對(duì)序號(hào)。
lengthTLV長(zhǎng)度優(yōu)選地是1800字節(jié)。
圖12示出了根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示例性PKTPAIR_REPLYTLV包1200。PKTPAIR_REPLY TLV包1200包括下述字段和值 nTLV中的鄰居入口的號(hào)碼。
Neighbor address(鄰居地址)關(guān)聯(lián)鄰居包對(duì)信息。
Bandwidth(帶寬)有效鏈路吞吐量(單位為Kbit/sec)。
seq該應(yīng)答TLV所參考的包對(duì)序號(hào)。
已經(jīng)公開(kāi)了用于網(wǎng)狀網(wǎng)絡(luò)的動(dòng)態(tài)度量和無(wú)線hello包的方法和系統(tǒng)。盡管已經(jīng)針對(duì)具體示例和子系統(tǒng)描述了本發(fā)明的方法和系統(tǒng),對(duì)于本領(lǐng)域技術(shù)人員明顯的是,其不限于這些具體示例或子系統(tǒng),而是還可以擴(kuò)展到其他實(shí)施方式。
權(quán)利要求
1、一種計(jì)算機(jī)實(shí)現(xiàn)的方法,該方法包括以下步驟
確定包經(jīng)過(guò)網(wǎng)狀網(wǎng)絡(luò)的路由;
估計(jì)在所述網(wǎng)狀網(wǎng)絡(luò)中的第一節(jié)點(diǎn)和第二節(jié)點(diǎn)之間傳送所述包所需的第一時(shí)間段;
對(duì)所述第一時(shí)間段進(jìn)行標(biāo)準(zhǔn)化而生成標(biāo)準(zhǔn)化值;以及
利用所述標(biāo)準(zhǔn)化值來(lái)計(jì)算路由。
2、根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中無(wú)線網(wǎng)狀路由器計(jì)算所述路由。
3、根據(jù)權(quán)利要求2所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述無(wú)線網(wǎng)狀路由器支持802.11標(biāo)準(zhǔn)。
4、根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,該方法還包括估計(jì)所述包所經(jīng)過(guò)的中間節(jié)點(diǎn)的處理器使用值。
5、根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,該方法還包括對(duì)內(nèi)部包排隊(duì)進(jìn)行補(bǔ)償。
6、一種計(jì)算機(jī)實(shí)現(xiàn)的方法,該方法包括以下步驟
確定包經(jīng)過(guò)網(wǎng)狀網(wǎng)絡(luò)的路由;
估計(jì)用于在所述網(wǎng)狀網(wǎng)絡(luò)中的第一節(jié)點(diǎn)和第二節(jié)點(diǎn)之間傳送所述包的中間節(jié)點(diǎn)的最大有效吞吐量;
對(duì)所述最大有效吞吐量進(jìn)行標(biāo)準(zhǔn)化而生成標(biāo)準(zhǔn)化值;以及
利用所述標(biāo)準(zhǔn)化值來(lái)計(jì)算路由。
7、根據(jù)權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中無(wú)線網(wǎng)狀路由器計(jì)算所述路由。
8、根據(jù)權(quán)利要求7所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述無(wú)線網(wǎng)狀路由器支持802.11標(biāo)準(zhǔn)。
9、根據(jù)權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,該方法還包括估計(jì)所述包所經(jīng)過(guò)的中間節(jié)點(diǎn)的處理器使用值。
10、根據(jù)權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,該方法還包括對(duì)內(nèi)部包排隊(duì)進(jìn)行補(bǔ)償。
11、一種方法,該方法包括以下步驟
在網(wǎng)絡(luò)中的第一節(jié)點(diǎn)處接收來(lái)自相鄰節(jié)點(diǎn)的初始化消息;
創(chuàng)建所述相鄰節(jié)點(diǎn)的鄰居數(shù)據(jù)結(jié)構(gòu),其中所述鄰居數(shù)據(jù)結(jié)構(gòu)包括狀態(tài)字段;
將所述狀態(tài)字段改變?yōu)槌跏蓟癄顟B(tài);
向所述相鄰節(jié)點(diǎn)發(fā)送應(yīng)答消息,所述應(yīng)答消息包括與所述相鄰節(jié)點(diǎn)相關(guān)聯(lián)的單向鄰居請(qǐng)求信息;
將所述狀態(tài)字段改變?yōu)橹甘締蜗蛲ㄐ牛?br>
接收來(lái)自所述相鄰節(jié)點(diǎn)的第二初始化消息;以及
將所述狀態(tài)字段改變?yōu)橹甘倦p向通信。
12、根據(jù)權(quán)利要求1所述的方法,該方法還包括以下步驟
處理從所述相鄰節(jié)點(diǎn)接收到的路由更新。
13、根據(jù)權(quán)利要求1所述的方法,該方法還包括以下步驟
在所述網(wǎng)絡(luò)中的所述第一節(jié)點(diǎn)處從所述相鄰節(jié)點(diǎn)接收到所述初始化消息之后,進(jìn)行檢查以確定是否已創(chuàng)建了所述相鄰節(jié)點(diǎn)的鄰居數(shù)據(jù)結(jié)構(gòu)。
14、一種方法,該方法包括以下步驟
網(wǎng)絡(luò)中的第一節(jié)點(diǎn)在預(yù)定時(shí)幀內(nèi)從相鄰節(jié)點(diǎn)接收hello包;
針對(duì)所述相鄰節(jié)點(diǎn)設(shè)定定時(shí)器;
所述定時(shí)器在經(jīng)過(guò)了預(yù)定時(shí)間段之后期滿;
將所述相鄰節(jié)點(diǎn)的狀態(tài)字段改變?yōu)橹甘就S脿顟B(tài);以及
清除與所述相鄰節(jié)點(diǎn)相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)。
15、一種方法,該方法包括以下步驟
使用包含期望傳輸計(jì)數(shù)值的包,所述期望傳輸計(jì)數(shù)值包括當(dāng)前傳輸序號(hào)、當(dāng)前接收序號(hào)和當(dāng)前前向傳送率;以及
對(duì)于各個(gè)新的期望傳輸計(jì)數(shù)值遞增所述當(dāng)前傳輸序號(hào)。
16、一種方法,該方法包括以下步驟
對(duì)相鄰節(jié)點(diǎn)分配定時(shí)器;
當(dāng)所述定時(shí)器計(jì)時(shí)期滿時(shí)向所述相鄰節(jié)點(diǎn)發(fā)送初始化包對(duì);
所述初始化包對(duì)包括小型包和大型包;
所述小型包和所述大型包包含循環(huán)序號(hào),確定所述相鄰節(jié)點(diǎn)處何時(shí)接收到所述小型包,并設(shè)定第二定時(shí)器;
確定所述相鄰節(jié)點(diǎn)處何時(shí)接收到所述大型包;以及
計(jì)算所述小型包和所述大型包的接收之間的延遲。
17、根據(jù)權(quán)利要求16所述的方法,其中當(dāng)在所述大型包之前未接收到所述小型包時(shí),忽略所述大型包。
18、根據(jù)權(quán)利要求16所述的方法,該方法還包括以下步驟
利用所計(jì)算的延遲來(lái)確定鏈路帶寬。
19、根據(jù)權(quán)利要求18所述的方法,該方法還包括以下步驟
發(fā)送所述序號(hào)和所測(cè)量的帶寬。
全文摘要
本發(fā)明公開(kāi)了用于無(wú)線網(wǎng)狀網(wǎng)絡(luò)的動(dòng)態(tài)度量和無(wú)線hello協(xié)議的方法和系統(tǒng)。在一個(gè)實(shí)施方式中,一種計(jì)算機(jī)實(shí)現(xiàn)的方法包括確定包經(jīng)過(guò)網(wǎng)狀網(wǎng)絡(luò)的路由。估計(jì)所述網(wǎng)狀網(wǎng)絡(luò)中的第一節(jié)點(diǎn)和第二節(jié)點(diǎn)之間傳送所述包所需的第一時(shí)間段。將所述第一時(shí)間段標(biāo)準(zhǔn)化以生成標(biāo)準(zhǔn)化值。利用所述標(biāo)準(zhǔn)化值來(lái)計(jì)算路由。
文檔編號(hào)G06F15/173GK101611392SQ200780041079
公開(kāi)日2009年12月23日 申請(qǐng)日期2007年7月3日 優(yōu)先權(quán)日2007年6月26日
發(fā)明者陳松青, 趙福勇 申請(qǐng)人:阿德利亞網(wǎng)絡(luò)公司