陳彥如,魏亮雄,郭 兵
(四川大學(xué)計(jì)算機(jī)學(xué)院,四川 成都 610065)
目前,物聯(lián)網(wǎng)呈現(xiàn)井噴發(fā)展趨勢.無線傳感網(wǎng)作為物聯(lián)網(wǎng)的一項(xiàng)重要支撐技術(shù)也備受關(guān)注[1].在無線傳感網(wǎng)中,鄰居發(fā)現(xiàn)是路由和組網(wǎng)的前提,所以它是一個(gè)非常重要的步驟[2].由于傳感網(wǎng)中傳感器節(jié)點(diǎn)的能量(或者電量)非常有限,這些節(jié)點(diǎn)通常工作在低占空比模式.低占空比是指時(shí)間被劃分成時(shí)隙,只有少量的時(shí)隙節(jié)點(diǎn)處于蘇醒狀態(tài),而其余時(shí)隙節(jié)點(diǎn)處于休眠狀態(tài).在低占空比模式下進(jìn)行高效的鄰居發(fā)現(xiàn)非常困難,因?yàn)楣?jié)點(diǎn)同時(shí)蘇醒的機(jī)會(huì)很小.一般而言,給定能量越小,發(fā)現(xiàn)延遲??;給定能量越大,發(fā)現(xiàn)延遲大[3].研究者提出了大量的鄰居發(fā)現(xiàn)算法,旨在給定能量條件下,減小鄰居發(fā)現(xiàn)延遲.研究者提出了兩兩成對(duì)的鄰居發(fā)現(xiàn)算法,該類算法只關(guān)注兩兩節(jié)點(diǎn)的發(fā)現(xiàn).該類算法分為概率性算法和確定性算法.在概率性算法中,節(jié)點(diǎn)的工作狀態(tài)不是事先確定的而是由某個(gè)概率分布確定的.確定性鄰居算法的工作計(jì)劃表是事先確定好的.
最近幾年,又有研究者提出了基于組的鄰居發(fā)現(xiàn)算法.這類算法主要利用鄰居關(guān)系的傳遞性來加速鄰居發(fā)現(xiàn),工作于基于節(jié)點(diǎn)對(duì)的發(fā)現(xiàn)算法之上,所以也可以看作鄰居發(fā)現(xiàn)中間件.基于組的鄰居發(fā)現(xiàn)算法包括 Acc[4],Group-based[5]、EQS[6]和 Wiflock[7].據(jù)我們所知,目前基于組的鄰居發(fā)現(xiàn)算法都沒有充分考慮移動(dòng)傳感網(wǎng)中節(jié)點(diǎn)移動(dòng)速度對(duì)蘇醒時(shí)隙選擇延遲和能耗的影響.在本文中,基于Group-based鄰居發(fā)現(xiàn)算法,我們提出一種高效的基于組的鄰居發(fā)現(xiàn)算法,在對(duì)額外時(shí)隙進(jìn)行選擇時(shí),該算法量化分析節(jié)點(diǎn)移動(dòng)速度對(duì)能耗和發(fā)現(xiàn)延遲的影響,選擇在驗(yàn)證時(shí)刻仍然具有較大概率是鄰居的節(jié)點(diǎn)進(jìn)行驗(yàn)證.
因?yàn)樵趥鞲芯W(wǎng)中,在鄰居發(fā)現(xiàn)之前進(jìn)行時(shí)鐘同步比較困難,所以目前主要的鄰居發(fā)現(xiàn)算法都是異步的.基于發(fā)現(xiàn)延遲是否有界,即能否保證一定時(shí)間內(nèi)兩個(gè)利用低占空比工作的節(jié)點(diǎn)必定能夠?qū)崿F(xiàn)相互發(fā)現(xiàn),現(xiàn)有的異步的兩兩成對(duì)的鄰居發(fā)現(xiàn)算法分為概率性鄰居發(fā)現(xiàn)和確定性鄰居發(fā)現(xiàn).
概率性鄰居發(fā)現(xiàn)算法主要包括Birthday[8],PSBA[9],Panda[10]等.對(duì)于Birthday算法,每個(gè)節(jié)點(diǎn)按照一定概率選擇當(dāng)前時(shí)隙應(yīng)該處于休眠還是蘇醒狀態(tài).PSBA利用概率性和確定性發(fā)現(xiàn)算法的優(yōu)勢,減小了概率性算法發(fā)現(xiàn)延遲的長尾.最近的一個(gè)典型概率性鄰居發(fā)現(xiàn)算法是Panda.在Panda中,每個(gè)傳感器在起初保持睡眠狀態(tài),節(jié)點(diǎn)的休眠時(shí)間服從指數(shù)分布.睡眠之后,傳感器蘇醒并傾聽一段恒定時(shí)間.如果在偵聽狀態(tài)中沒有接收到數(shù)據(jù)包,則節(jié)點(diǎn)向其他鄰近節(jié)點(diǎn)廣播數(shù)據(jù)包.
最初的確定性發(fā)現(xiàn)算法基于Quorum[11].在這類算法中[11-12],時(shí)間被劃分為m2個(gè)等長時(shí)隙.這些時(shí)隙可以看作一個(gè)二維數(shù)組,節(jié)點(diǎn)任意選擇該數(shù)組的一行和一列作為蘇醒時(shí)隙.Quorum算法保證在m2個(gè)時(shí)隙內(nèi)兩個(gè)節(jié)點(diǎn)能夠相互發(fā)現(xiàn).早期的確定性方法還包括基于素?cái)?shù)的算法,包括Disco[13],U-connect[14]等.為了進(jìn)一步提升能效,后來的研究者提出了Searchlight[3].在Searchlight算法中,每個(gè)周期有兩個(gè)蘇醒時(shí)隙:A時(shí)隙和P時(shí)隙.A時(shí)隙固定在每個(gè)周期的第一個(gè)時(shí)隙.由于周期長度相同,兩個(gè)節(jié)點(diǎn)A時(shí)隙的相對(duì)位置是永遠(yuǎn)固定的,這樣P時(shí)隙被引入用來探測另外一個(gè)節(jié)點(diǎn)的A時(shí)隙.后來的研究者發(fā)現(xiàn),采用等長時(shí)隙,在兩個(gè)節(jié)點(diǎn)蘇醒時(shí)隙的重疊之間存在冗余,這對(duì)于提升能效造成不利影響.因此,采用不等長蘇醒時(shí)隙的確定性鄰居發(fā)現(xiàn)算法研究開始興起.這類算法包括Searchlight-Striped[3],Non-integer[15],Lightning[2].
近年來,隨著移動(dòng)無線傳感網(wǎng)的興起,對(duì)鄰居發(fā)現(xiàn)的能效要求越來越嚴(yán)苛.于是,又有研究者提出通過鄰居關(guān)系的傳遞性來加速鄰居發(fā)現(xiàn)過程的中間件鄰居發(fā)現(xiàn)算法.因?yàn)檫@類算法底層仍然采用基于節(jié)點(diǎn)對(duì)的算法,所以也稱作鄰居發(fā)現(xiàn)中間件.中間件鄰居發(fā)現(xiàn)算法在基于節(jié)點(diǎn)對(duì)鄰居發(fā)現(xiàn)的基礎(chǔ)上重新規(guī)劃少量時(shí)隙的工作狀態(tài),即休眠還是蘇醒,來加快鄰居發(fā)現(xiàn)進(jìn)度.中間件該類鄰居發(fā)現(xiàn)算法包括Acc,Groupbased和EQS等.在ACC算法中,節(jié)點(diǎn)選擇增加一些額外蘇醒時(shí)隙,這些額外時(shí)隙在底層的基于節(jié)點(diǎn)對(duì)的發(fā)現(xiàn)算法中處于休眠狀態(tài),但其在ACC中間件層變成了蘇醒狀態(tài).這些額外時(shí)隙的選擇依據(jù)是根據(jù)時(shí)間差異性和空間相似性.兩個(gè)節(jié)點(diǎn)的時(shí)間差異性取決于這兩個(gè)節(jié)點(diǎn)工作表的差異性.兩個(gè)節(jié)點(diǎn)的空間相似性取決于這兩個(gè)節(jié)點(diǎn)的公有鄰居數(shù)量.ACC通過使用少量的額外蘇醒時(shí)隙在一定程度上加速了鄰居發(fā)現(xiàn)進(jìn)度,但問題是其中時(shí)間差異性的獲得需要很多鄰居的信息,在網(wǎng)絡(luò)中節(jié)點(diǎn)密度較低的情況下,ACC在選擇額外的蘇醒時(shí)隙方面顯得低效.Group-based也加入了少量的額外蘇醒時(shí)隙,通過推薦-驗(yàn)證的方式加速鄰居發(fā)現(xiàn),但其在選擇額外蘇醒時(shí)隙方面效率有進(jìn)一步提升的空間.EQS利用Quorum圖論濾除不必要的蘇醒時(shí)隙,提升了鄰居發(fā)現(xiàn)能效.
在本文中,我們?cè)贕roup-based的基礎(chǔ)上提出了一種基于組的高效鄰居發(fā)現(xiàn)算法.特別指出,我們提出的算法與其他算法是相互補(bǔ)充的,而不具有排它性.也就是說不同種類的鄰居發(fā)現(xiàn)中間件可以同時(shí)使用來提高鄰居發(fā)現(xiàn)的性能.比如EQS和我們提出的算法可以同時(shí)使用,分別用于移除低效蘇醒時(shí)隙和增加高效蘇醒時(shí)隙.此外,據(jù)我們所知,在鄰居發(fā)現(xiàn)中間件算法中,我們提出的算法充分考慮了節(jié)點(diǎn)移動(dòng)速度對(duì)于選擇的蘇醒時(shí)隙能效的影響,由此我們提出了節(jié)點(diǎn)移動(dòng)速度對(duì)鄰居關(guān)系影響的定量化分析方法.
基于組的鄰居發(fā)現(xiàn)算法的核心思路是通過在各個(gè)節(jié)點(diǎn)之間共享已經(jīng)發(fā)現(xiàn)的鄰居關(guān)系信息來預(yù)測未來時(shí)間內(nèi)哪個(gè)時(shí)隙節(jié)點(diǎn)蘇醒能夠發(fā)現(xiàn)更多鄰居或者對(duì)鄰居發(fā)現(xiàn)具有最大的信息貢獻(xiàn).上節(jié)已經(jīng)提到,已有的基于組的鄰居發(fā)現(xiàn)算法都只是依據(jù)已有的鄰居表和其對(duì)應(yīng)的工作表信息來推測未來的鄰居關(guān)系但忽略了在移動(dòng)傳感網(wǎng)中移動(dòng)節(jié)點(diǎn)速度對(duì)鄰居關(guān)系的影響.我們?cè)诒疚闹刑岢龅腟FND算法核心思路是基于Group-based方法,考慮節(jié)點(diǎn)移動(dòng)速度對(duì)額外增加的蘇醒時(shí)隙能效的影響,盡可能地選擇在驗(yàn)證時(shí)刻有很大概率仍然是鄰居且在驗(yàn)證時(shí)刻在蘇醒狀態(tài)的潛在節(jié)點(diǎn)進(jìn)行驗(yàn)證.因?yàn)槲覀兲岢龅乃惴ㄊ菍?duì)已有Group-based方法的改進(jìn),所以在接下來的第一小節(jié)我們首先介紹已有的Group-based方法.然后第二小節(jié)給出我們提出算法的詳細(xì)設(shè)計(jì)思路.
圖1表示Group-based的工作過程:灰色小圓A,B,C,D分別表示四個(gè)傳感器節(jié)點(diǎn),它們相互在各自的通信范圍之內(nèi).假定A和B在先前通過某個(gè)基于節(jié)點(diǎn)對(duì)的發(fā)現(xiàn)算法已經(jīng)相互發(fā)現(xiàn),節(jié)點(diǎn)C和D也通過基于節(jié)點(diǎn)對(duì)的算法實(shí)現(xiàn)相互發(fā)現(xiàn).接下來,Groupbased中間件算法按照如下的步驟進(jìn)行工作:
(1)當(dāng)B發(fā)現(xiàn)了一個(gè)新的鄰居C時(shí),B和C分別將自己的所有鄰居信息推薦給對(duì)方,節(jié)點(diǎn)B知道了節(jié)點(diǎn)D的工作時(shí)間表,節(jié)點(diǎn)C知道了節(jié)點(diǎn)A的工作時(shí)間表.我們把推薦者B和C叫做推薦節(jié)點(diǎn),被推薦者A、D叫做被推薦節(jié)點(diǎn).因?yàn)锽接收了C的推薦,所以B叫做C的接收節(jié)點(diǎn).事實(shí)上B和C互為對(duì)方的推薦節(jié)點(diǎn)和接收節(jié)點(diǎn).
(2)由于被推薦者可能不在接收節(jié)點(diǎn)的通信范圍之內(nèi),因此有必要對(duì)被推薦節(jié)點(diǎn)進(jìn)行驗(yàn)證以確認(rèn)是否是接收節(jié)點(diǎn)的鄰居.當(dāng)節(jié)點(diǎn)B接收到推薦信息后,它將對(duì)所有的被推薦節(jié)點(diǎn)進(jìn)行驗(yàn)證.也就是說B會(huì)在D的下一個(gè)蘇醒時(shí)隙主動(dòng)蘇醒,以進(jìn)行鄰居發(fā)現(xiàn),也就是相互確認(rèn).如果B收到了D的數(shù)據(jù)包,則將其加入自己的鄰居表.同理C也在A的下一個(gè)蘇醒時(shí)隙主動(dòng)蘇醒進(jìn)行驗(yàn)證,從而發(fā)現(xiàn)了節(jié)點(diǎn)A.
圖1 Group-based算法發(fā)現(xiàn)過程圖Fig 1 Group-based algorithm discovery process diagram
接收節(jié)點(diǎn)需要對(duì)被推薦節(jié)點(diǎn)進(jìn)行驗(yàn)證,然而當(dāng)被推薦節(jié)點(diǎn)與接收節(jié)點(diǎn)相距較遠(yuǎn)時(shí),被推薦節(jié)點(diǎn)有很大概率不是接收者的鄰居,此時(shí)的驗(yàn)證對(duì)能效的貢獻(xiàn)率很低或者為負(fù).尤其在節(jié)點(diǎn)密度比較大的無線傳感網(wǎng)絡(luò)中,被推薦節(jié)點(diǎn)個(gè)數(shù)很多,如果不對(duì)驗(yàn)證進(jìn)行有效選擇,將導(dǎo)致低效驗(yàn)證過多而給接收節(jié)點(diǎn)乃至整個(gè)網(wǎng)絡(luò)帶來較大的能耗負(fù)擔(dān).因此有必要對(duì)被推薦節(jié)點(diǎn)進(jìn)行篩選,選擇具有潛在較大收益的節(jié)點(diǎn)進(jìn)行驗(yàn)證.在Group-based算法中,主要依據(jù)接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)之間已經(jīng)發(fā)現(xiàn)的公有鄰居作為選擇驗(yàn)證節(jié)點(diǎn)的依據(jù).作者們通過推導(dǎo)得出,兩個(gè)節(jié)點(diǎn)的距離Dxy=其中α表示一個(gè)常數(shù),Nx和Ny分別表示節(jié)點(diǎn)x和節(jié)點(diǎn)y已經(jīng)發(fā)現(xiàn)的鄰居個(gè)數(shù),Nc表示這兩個(gè)節(jié)點(diǎn)的公共鄰居數(shù).
雖然Group-based算法取得了良好性能,尤其在靜態(tài)無線傳感網(wǎng)絡(luò)(靜態(tài)是指其中的節(jié)點(diǎn)位置保持不變)中,其對(duì)驗(yàn)證節(jié)點(diǎn)的選擇效率較高.但在移動(dòng)無線傳感網(wǎng)中,依據(jù)接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)發(fā)現(xiàn)時(shí)刻的公共鄰居數(shù)來預(yù)測驗(yàn)證時(shí)刻的鄰居關(guān)系有時(shí)顯得低效,尤其考慮接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)發(fā)現(xiàn)時(shí)刻與驗(yàn)證時(shí)刻相差很大時(shí),很可能在接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)發(fā)現(xiàn)時(shí)刻具有較多公有鄰居的被驗(yàn)證節(jié)點(diǎn)在驗(yàn)證時(shí)刻已經(jīng)不是接收節(jié)點(diǎn)的鄰居.本文中,我們充分考慮節(jié)點(diǎn)移動(dòng)速度對(duì)驗(yàn)證選擇的影響,力圖選擇在驗(yàn)證時(shí)刻有很大可能仍然是鄰居的節(jié)點(diǎn)進(jìn)行驗(yàn)證,從而提升驗(yàn)證能效而進(jìn)一步加快鄰居發(fā)現(xiàn)進(jìn)度.
我們根據(jù)接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)相互發(fā)現(xiàn)時(shí)刻,接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)的公有鄰居個(gè)數(shù)作為評(píng)估此時(shí)這兩個(gè)節(jié)點(diǎn)距離的依據(jù),就像Group-based算法一樣.此外,我們還要評(píng)估接收節(jié)點(diǎn)和被推薦節(jié)點(diǎn)相互發(fā)現(xiàn)時(shí)刻和驗(yàn)證時(shí)刻,即當(dāng)被推薦節(jié)點(diǎn)的下個(gè)蘇醒時(shí)隙時(shí)刻,這兩個(gè)時(shí)刻的間隔時(shí)間內(nèi),移動(dòng)節(jié)點(diǎn)速度對(duì)這兩個(gè)節(jié)點(diǎn)距離的影響.為簡化分析,假設(shè)所有節(jié)點(diǎn)移動(dòng)速度都相等,值為S.設(shè)Δtxy為接收節(jié)點(diǎn)x和被推薦節(jié)點(diǎn)y的驗(yàn)證時(shí)刻減去x和y相互發(fā)現(xiàn)時(shí)刻.在這段時(shí)間內(nèi),這兩個(gè)節(jié)點(diǎn)距離增加量為速度s和Δtxy的函數(shù),表示為Δl(s,Δtxy).綜合x和y發(fā)現(xiàn)時(shí)刻的距離估計(jì)以及Δtxy時(shí)間內(nèi)的距離增量估計(jì),我們得到驗(yàn)證時(shí)刻x和y的距離估計(jì)lxy=Dxy+Δl(s,Δtxy).
在實(shí)際的移動(dòng)傳感網(wǎng)絡(luò)場景中,Δl(s,Δtxy)的表達(dá)式取決于節(jié)點(diǎn)的移動(dòng)模型.往往獲取Δl(s,Δtxy)的準(zhǔn)確表示比較困難.不過我們能夠通過測試,找到能使驗(yàn)證盡可能高效的Δl(s,Δtxy)的大致估計(jì).例如在下節(jié)的仿真評(píng)估所使用的模型中,我們將Δl(s,Δtxy)的表達(dá)式簡化得到,lxy=Dxy+β1sΔt+β2/,其中β1和β2是與節(jié)點(diǎn)移動(dòng)模型相關(guān)的常數(shù).
對(duì)lxy設(shè)置閾值lu,當(dāng)lxy小于等于 lu時(shí),該驗(yàn)證時(shí)隙被選擇蘇醒,否則認(rèn)為這是低效或者無效的驗(yàn)證而讓其休眠.在選擇閾值lu時(shí),可以依據(jù)給定的額外能量預(yù)算,以及因?yàn)槊總€(gè)節(jié)點(diǎn)剩余能量的不同而對(duì)不同的節(jié)點(diǎn)選擇不同的閾值.比如,當(dāng)節(jié)點(diǎn)剩余能量較少時(shí),可選擇一個(gè)較小的閾值.
在移動(dòng)無線傳感網(wǎng)中,Group-based算法考慮了接收節(jié)點(diǎn)和被推薦節(jié)在相互發(fā)現(xiàn)時(shí)它們是鄰居的概率,但在驗(yàn)證時(shí)刻很可能它們已經(jīng)不再是鄰居.SFND算法直接考慮在驗(yàn)證時(shí)刻,這兩個(gè)節(jié)點(diǎn)是鄰居的概率,并選擇有較大概率是鄰居(即距離較短的鄰居)的驗(yàn)證,有效地過濾了低效驗(yàn)證,從而提升了驗(yàn)證的能效.
我們通過仿真評(píng)估提出的SFND算法,并和其他算法進(jìn)行比較.底層的基于節(jié)點(diǎn)對(duì)的算法采用Searchlight,其余要對(duì)比的中間件算法包括 ACC和Group-based.為了公平比較,將所有算法總的能量預(yù)算即總占空比設(shè)定為2%.我們首先對(duì)比節(jié)點(diǎn)移動(dòng)速度對(duì) Searchlight, ACC+Searchlight, Group-based+Searchlight,SFND+Searchlight的平均發(fā)現(xiàn)延遲的影響.然后,對(duì)比網(wǎng)絡(luò)中節(jié)點(diǎn)密度對(duì)這些算法平均發(fā)現(xiàn)延遲的影響.實(shí)驗(yàn)環(huán)境描述如下:網(wǎng)絡(luò)場地為邊長為500米的矩形區(qū)域,這個(gè)區(qū)域被劃分為2500個(gè)等大小的網(wǎng)格.節(jié)點(diǎn)只能部署于網(wǎng)格頂點(diǎn)并沿著網(wǎng)格邊移動(dòng).當(dāng)移動(dòng)到網(wǎng)格頂點(diǎn),節(jié)點(diǎn)的移動(dòng)方向可向上下左右隨機(jī)改變.
圖2 速度對(duì)平均發(fā)現(xiàn)延遲的影響Fig 2 The effect of velocity on the average discovery delay
圖2顯示了節(jié)點(diǎn)移動(dòng)速度對(duì)平均發(fā)現(xiàn)延遲的影響.我們看到,所有算法包括Searchlight,其平均發(fā)現(xiàn)延遲都隨著速度的增加而減少.這是因?yàn)殡S著速度增加,節(jié)點(diǎn)成為鄰居的時(shí)間減小,那些發(fā)現(xiàn)延遲較大的鄰居發(fā)現(xiàn)沒能成功進(jìn)行.另外,我們看到,隨著速度的變化,我們的算法SFND的發(fā)現(xiàn)延遲總小于其他算法.比如在節(jié)點(diǎn)速度為4m/s時(shí),相比 Group-based,SFND算法降低發(fā)現(xiàn)延遲高達(dá)18.9%.
圖3 節(jié)點(diǎn)密度對(duì)平均發(fā)現(xiàn)延遲的影響Fig 3 Influence of node density on average discovery delay
圖3顯示了節(jié)點(diǎn)密度對(duì)平均發(fā)現(xiàn)延遲的影響.我們看到Searchlight算法的平均發(fā)現(xiàn)延遲幾乎不受節(jié)點(diǎn)密度的影響,而其他算法的平均發(fā)現(xiàn)延遲隨著節(jié)點(diǎn)密度增大而減少.這是因?yàn)楣?jié)點(diǎn)密度越大,節(jié)點(diǎn)之間能夠共享的鄰居信息越多,對(duì)于中間件算法鄰居發(fā)現(xiàn)進(jìn)度加速越明顯.而對(duì)于基于節(jié)點(diǎn)對(duì)的Searchlight算法,因?yàn)椴豢紤]間接鄰居信息,所以其平均發(fā)現(xiàn)延遲不受節(jié)點(diǎn)密度的影響.另外,我們看到隨著節(jié)點(diǎn)密度變化,SFND的發(fā)現(xiàn)延遲總是小于其他算法.
在移動(dòng)無線傳感網(wǎng)中,由于節(jié)點(diǎn)之間的鄰居關(guān)系快速變化,要求低占空比下的鄰居發(fā)現(xiàn)必須更加高效.不同于已有算法,本文中我們提出了一種基于節(jié)點(diǎn)移動(dòng)速度來選擇有效驗(yàn)證的高效鄰居發(fā)現(xiàn)中間件算法SFND.我們量化分析了節(jié)點(diǎn)移動(dòng)速度和時(shí)間對(duì)兩個(gè)節(jié)點(diǎn)期望距離的影響,并將其作為高效驗(yàn)證選擇的依據(jù).最后我們通過仿真評(píng)估驗(yàn)證了SFND的有效性.缺點(diǎn)是節(jié)點(diǎn)移動(dòng)速度和時(shí)間對(duì)兩個(gè)節(jié)點(diǎn)期望距離評(píng)估仍然不夠精確,以后我們將針對(duì)不同的移動(dòng)模型分別考慮更加精確的速度-時(shí)間-距離評(píng)估模型,以進(jìn)一步提升鄰居發(fā)現(xiàn)中間件算法的能效.