陳 曄,楊 華
(常州紡織服裝職業(yè)技術(shù)學(xué)院,江蘇 常州 213164)
移動自組網(wǎng)絡(luò)結(jié)構(gòu)一般分為兩種:平面式體系和分級式體系。平面式體系可擴展性較差,適合中小規(guī)模網(wǎng)絡(luò);分級式體系結(jié)構(gòu)可以減小那些由于拓撲變化對路由產(chǎn)生的影響,具有很好的可擴充性。
移動自組網(wǎng)絡(luò)有單點跳躍路由與多點跳躍路由兩種路由方式。單點跳躍路由是指來源端到目的端只需要跳躍1次就可將封包送至目的端。多點跳躍路由是封包從來源端到目的端,需要經(jīng)過多個節(jié)點路由[1]。一般而言,多點跳躍路由比較常用,因為節(jié)點的傳輸范圍有限,若來源端與目的端距離過遠,彼此不在對方的傳輸范圍內(nèi),那么勢必要經(jīng)由其他的節(jié)點轉(zhuǎn)送。
目前,在移動自組網(wǎng)絡(luò)中,大部分分層路由以距離當作選擇路徑的依據(jù)。雖然距離也是能量消耗的一個參考依據(jù),但是對于在無線網(wǎng)絡(luò)的傳輸媒介下,能量的耗損受到氣候、地形、距離等的影響,所以只是將距離當作選擇路徑的依據(jù),不足以反映一個最佳路徑[2]。以能量的消耗總和作為一個路徑選擇時的參考依據(jù),可以準確地評估路徑所需要花費的功率。同時,將功率作為選擇路徑的基準,建立一個以功率為基礎(chǔ)的網(wǎng)絡(luò)模型。
模擬環(huán)境可分為網(wǎng)絡(luò)平臺的建立、移動式主機特性的定義以及路由算法3個部分。
本文設(shè)計1個50×50矩陣來作為網(wǎng)絡(luò)平臺。該平臺一共有2 500個點,每個點均可有1個移動終端。另外,本文假設(shè)泛洪時所需要的功率遠比傳送數(shù)據(jù)所需要的功率小得多,主要是因為泛洪時的數(shù)據(jù)包大小很小,而且量也不多,在此可以忽略。
在本文模擬環(huán)境里,每一個移動式主機的坐標(x,y)為隨機,每個移動式主機具有移動特性,如圖1所示,每次移動后的新位置為(x+△x,y+△y),-2≤△x≤2,-2≤△y≤2。另外,本文假設(shè)主機每5秒移動1次,也就是說網(wǎng)絡(luò)拓撲每5秒會改變1次。另外,每個主機分為5個功率位階。假設(shè)傳輸?shù)哪芰颗c傳輸?shù)木嚯x平方成正比,功率位階1到位階5所需消耗的功率分別為1,4,9,16,25單位,每個主機電池的功率為隨機。另外,本文假設(shè)主機能量單位小于1 000時,則主機功率位階5將會被關(guān)閉;能量單位小于800時,主機功率位階4將會被關(guān)閉,以此類推。當主機功率單位小于200時,本文則定義該主機不可再使用。假設(shè)主機擁有2個數(shù)據(jù)封包需要傳送,1個使用功率位階2,1個使用功率位階3,則在1秒后,主機一共消耗4+9=13個功率單位。
圖1 主機移動特性及功率位階示意
本文模擬6種不同的路由算法,分別為不包含Power Control機制的Shortest Path(SP)路由算法,以及包含Power Control機制的Shortest Path(SPPC),Energy Based(EB),Energy Based with Route-Based Reroute(EBRB),Energy Based with Local-Based Reroute(EBLR)以及Energy Based with Route-Based and Local-Based Reroute(EBRBLR)等6種路由算法。
本文模擬以上6種路由算法在不同的主機密度環(huán)境下所表現(xiàn)的效率并進行分析。
在100,200,300,400,500等不同個數(shù)的主機環(huán)境下來模擬6種路由算法的效率[12]。不同主機密度的模擬環(huán)境,會有50%的主機需要傳送數(shù)據(jù)給其他主機,而數(shù)據(jù)傳送的起始時間為1到30秒內(nèi),數(shù)據(jù)傳送的時間會大于180秒,并且在模擬過程中,不會有新的數(shù)據(jù)被傳送。本文分別就路徑功率總消耗、重新尋找路徑次數(shù)及所有傳送路徑的長度來做本文比較的依據(jù)。
路徑功率總和代表的是在t秒時,所有路徑所花費的功率總和。在模擬結(jié)果圖中的X軸均以秒為單位,而0~30秒為一個Cold Start,可省略;Y軸則代表主機電池消耗的功率。另外,EBRB、EBRBLR兩個路由算法的β值為0.8。圖2至圖4為非功率和功率為基礎(chǔ)的路由算法分別在100,300,500個主機環(huán)境下執(zhí)行路徑的功率[3]。就算法而言,沒有Power Control機制的Shortest Path路由算法所需要花費的功率為最大,其次為有Power Control機制的Shortest Path路由算法,而以功率為基礎(chǔ)的路由算法EB有最佳的效率。
圖2 有100Mobile Hosts時,功率和非功率算法路徑所消耗的功率
圖4 有500Mobile Hosts時,功率和非功率算法路徑所消耗的功率
圖5至圖7為以能量為基礎(chǔ)的路由算法EB,EBRB,EBLR以及EBRBLR路徑所消耗的功率比較圖。由這3個圖,本文可以看出以EBRBLR算法所節(jié)省的功率量多。
圖3 有300Mobile Hosts時,功率和非功率算法路徑所消耗的功率
圖5 有100個主機時,以功率為基礎(chǔ)路由算法路徑所消耗的功率
圖6 有300個主機時,以功率為基礎(chǔ)路由算法路徑所消耗的功率
圖7 有500個主機時,以功率為基礎(chǔ)路由算法路徑所消耗的功率
另外,當有100個主機時,以功率為基礎(chǔ)的路由算法所消耗的路徑功率總和差不多,主要是因為主機數(shù)目少的時候,主機可以尋找的路徑就會減少,即使重新繞送的路徑,其路徑所需能量也只能節(jié)省少量的能量。因此,以功率為基礎(chǔ)的路由算法所能節(jié)省的功率有限。反之,當有500個主機時,節(jié)點密度大,節(jié)點間的連接功率位階也變小,使路徑消耗的功率也變小。
重新尋找替代路徑對于網(wǎng)絡(luò)的負擔有著很大的影響。重新尋找路徑機制啟動過渡頻繁將會造成網(wǎng)絡(luò)的負擔過重[4]。當主機數(shù)少時,每一種路由算法路徑重新尋找的平均次數(shù)較為接近,依次數(shù)多到少依序為SP,SPPC,EBRBLR,EBRB,EB,EBLR。在主機數(shù)目變多時,可以發(fā)現(xiàn)非功率和功率為基礎(chǔ)的路由算法路徑重新尋找的次數(shù)差距較大,由多到少的順序和主機數(shù)目小時相同。這個模擬結(jié)果可以發(fā)現(xiàn)以功率為基礎(chǔ)的路由算法有較高的路徑穩(wěn)定性,可以降低路徑重新尋找的次數(shù),間接降低網(wǎng)絡(luò)的負擔。另外,EBRBLR以及EBRB兩種算法的路徑重新尋找的次數(shù)之所以會較EB,EBLR多,是因為EBRBLR,EBRB的一個路徑變動率過高時,會啟動路徑重新尋找機制。雖然路徑重新尋找的次數(shù)較高,EBRBLR,EBRB可找到較節(jié)省功率的路徑。EBLR路由算法路徑重新尋找的次數(shù)為6種算法中最少,是因為EBLR包含一個Local Based Reroute機制,可以延長一條路徑傳送的時間。因此,路徑重新尋找機制較少被啟動,但相對的其路徑所消耗的功率較EB,EBRB,EBRBLR高[5-6]。
影響一個網(wǎng)絡(luò)的穩(wěn)定性有許多的因素,其中包含網(wǎng)絡(luò)是否分裂、路徑中斷的頻率過高等,都會影響到網(wǎng)絡(luò)的穩(wěn)定性。造成路徑中斷的原因有2個:一個是因終端跨網(wǎng)移動所造成的路徑中斷,這種中斷是無可避免的;另一個原因是因為某些主機因功率消耗過快而無法再傳送數(shù)據(jù),導(dǎo)致路徑中斷。本研究認為,模擬環(huán)境可以由節(jié)省主機功率的消耗來適當減少路徑中斷。因為有相應(yīng)的網(wǎng)絡(luò)協(xié)議支撐,移動自組網(wǎng)絡(luò)已經(jīng)從實驗室理論逐步走向現(xiàn)實環(huán)境。在傳輸數(shù)據(jù)時,路徑因為主機移動而中斷的故障會時有發(fā)生。因此,路徑維護機制將成為后期研究的難點。