國立宜蘭大學資訊工程研究所 碩士論文 Institute of Computer Science and Information Engineering National Ilan University Master Thesis

全文

(1)

國立宜蘭大學資訊工程研究所 碩士論文

Institute of Computer Science and Information Engineering

National Ilan University Master Thesis

以相對鄰居圖之變異為基礎的 無線隨意網路分散式廣播演算法

Distributed Broadcast Algorithms Based on Variants of Relative Neighborhood Graphs for Wireless Ad Hoc Networks

研究生:林家寶 撰 Jia-Bao Lin

指導教授:王煌城博士

Advisor: Hwang-Cheng Wang, Ph. D.

中華民國 九十九 年 九 月

September, 2010

(2)
(3)
(4)
(5)

誌謝

古人云:「學海無涯」,攻讀研究所就像在尋找那一份只屬於自己的寶 藏─智慧與知識。兩年,說長不長、說短不短,從一開始如同造船般的建 立基礎、出航尋找題目、直到取得學位,過程中難免有些迷惘與挫折,在 這時候恩師─王煌城教授就如迷霧中的燈塔般指引學生方向,每當遇到問 題和老師討論後,問題總是迎刃而解,而且經由和老師的對談也學到許多 未來出社會後必備的觀念和態度,在探索題目並往前邁進的過程中,郭芳 璋教授、丁國章教授和曾志成教授也給予學生許多寶貴的意見,使學生受 益良多,而論文也更臻完善。各位老師的諄諄教導,學生永記在心,在此 致上誠摯的感謝與敬意,祝各位老師身體健康、萬事如意。

實驗室就像一艘船,成員們一起集思廣益,攜手對抗研究時所遇到的 狂風暴雨,在此感謝永志、立勝、承汶、昱酋和宗翰…等,無論是課業或 研究上的討論或協助,多虧有你們,我才能如此順利的渡過這一關卡,另 外也感謝宵夜戰隊的隊員們,讓離鄉背井的我在心靈上有所依靠,若沒有 你們陪我一起邊吃宵夜邊分享學習過程中的甘苦談,相信我在研究所的生 活肯定相當苦悶吧。

對於最摯愛的父母、兄弟,謝謝你們支持我、鼓勵我, 讓我毫無後顧 之憂的專心面對研究與課業的挑戰,進而完成碩士之學位。最後感謝曾經 幫助過我或是在背後支持我的人,祝大家心想事成、平安快樂。

林家寶 謹誌 於宜蘭大學嵌入式實驗室 中華民國九十九年九月

(6)

II

摘 要

無線隨意網絡是由能源受限的節點所組成。在此限制下,節約能源對 節點的生存時間至關重要。傳統上假設各節點的覆蓋區域都是一個單位圓

(UDG),亦即不論節點之間的實際距離如何,假設所有的傳輸都以最大 的功率進行,從而導致不利的能源浪費。另一方面,在一個相對鄰居圖

(Relative Neighborhood Graphs, RNG)中,每個節點維護自己的相對鄰居 名單以及鄰近節點之間的距離,且依據鄰居之間的距離來決定傳輸功率,

以減少能源消耗,由於此原因,RNG已被用於廣播路由的設計。本論文提 出兩種方法,並針對各方法做去除冗餘重播之動作,方法一採用RNG結合 禁止集合的概念,設計一個分散式廣播演算法RNGF。本方法查看每個節 點的剩餘電池容量,當其值低於一個預設的門檻值時,則將該節點加入禁 止集合,以避免其被用作重播節點。此選擇機制可避免因為低電池能量的 節點電力用罄,導致廣播路徑中斷,從而實現延長廣播路徑生存時間的目 標。方法二則是以距離和剩餘電量之關係做為權重,將原本單純以距離做 為選擇重播節點條件之RNG變異為以前述所提之權重做為選擇條件的 MRNG。進一步的節電可以藉由省略不必要的重播而達成,在論文中也針 對此點加以探究。透過廣泛的模擬我們發現,所提出的演算法和原來的 RNG相比具有多項優點。另外值得一提的是所提演算法只需區域性的資訊 就可建立全域的廣播路徑,使其特別適用於移動的網路環境。

關鍵詞:無線隨意網路、廣播、RNG、禁止集合、MRNG

(7)

Abstract

A wireless ad hoc network is made up of nodes with limited energy supply.

Under this constraint, energy conservation is critical to the survival of the nodes. Conventionally, the area of coverage is taken to be a unit disc graph (UDG) for all nodes. It is assumed that all transmissions are performed with maximum power regardless of the actual distance between nodes, leading to undesirable energy waste. On the other hand, each node in a relative neighborhood graph (RNG) maintains its own list of relative neighbors and distance between neighboring nodes. The distance between neighbors is used to determine the transmission power to reduce energy consumption. RNG has been used for broadcast routing. This thesis presents two routing algorithms and also gets rid of redundant rebroadcasts for the methods. Method 1 uses RNG in conjunction with the notion of forbidden set to devise a distributed broadcast algorithm. The approach works by looking at the remaining battery capacity of each node and when it falls below a threshold, the node will be added to the forbidden set and prevented from serving as a re-broadcast node.

This selection mechanism can avoid the disruption of the broadcast path because of power exhaustion at nodes with low battery energy, thus achieving the goal of extending the survival time of the broadcast path. Method 2 uses the relationship between distance and remaining battery capacity to define new variants of RNG which are called modified RNG or MRNG. We investigate the performance of the proposed algorithms through extensive simulation and find that they offer several advantages over the original RNG.

Keywords: Wireless Ad Hoc Networks, Broadcast, RNG, Forbidden Set, Modified RNG

(8)

IV

目 錄

第一章 緒論

1.1 前言... 1

1.2 研究動機... 3

1.3 研究方法... 4

1.4 論文架構... 4

第二章 相關文獻探討

2.1 減少重播節點數的廣播方法... 5

2.2 可調功率大小的節能擇徑方法... 7

2.3 禁止集合擇徑演算法... 13

第三章 RNGF 及 MRNG 演算法

3.1 RNGF 演算法 ... 14

3.1.1 步驟及虛擬碼... 15

3.2 MRNG 演算法... 16

3.3 減少冗餘重播之動作... 19

第四章 模擬結果與分析

4.1 重播節點數目之比較... 24

4.2 平均節點能量消耗之比較... 26

4.3 總能量消耗之比較... 29

4.4 廣播路徑生存時間... 32

4.5 平均分支度和最大分支度之比較... 35

4.6 廣播延遲之比較... 40

4.7 總控制封包數之比較... 42

第五章 結論

5.1 總結... 45

5.2 未來工作... 45

參考文獻

... 46

(9)

圖目錄

圖 1-1 有基礎架構無線網路………... 1

圖 1-2 無線隨意網路………2

圖 2-1 尚未調整的原生拓樸結構………8

圖 2-2 計算形成的 MST………..8

圖 2-3 Delaunay Triangulation Graph 和 RNG……….9

圖 2-4 RNG 選擇相對鄰居示意圖………10

圖 2-5 RNG 調整功率暨傳輸路徑示意圖….………... 11

圖 2-6 原始網路拓樸………..11

圖 2-7 RNG……….12

圖 3-1 RNGF 選擇鄰居示意圖………..…………14

圖 3-2 RNGF………...………16

圖 3-3 MRNG1………..………….….………18

圖 3-4 MRNG2………..………..18

圖 3-5 去除冗餘重播之節點……….….………19

圖 3-6 RNG-R……….…………20

圖 3-7 RNGF-R………..……….……...……20

圖 3-8 MRNG1-R………21

圖 3-9 MRNG2-R………21

圖 4-1 總節點數對重播節點之影響-Case 1………..………..……. 24

圖 4-2 總節點數對重播節點之影響-Case 1(移除後) ………..…25

圖 4-3 總節點數對重播節點之影響-Case 2………..………25

圖 4-4 總節點數對重播節點之影響-Case 2 (移除後) ………..………….…..26

圖 4-5 總節點數對平均節點消耗能量之影響-Case 1………..……..…..27

圖 4-6 總節點數對平均節點消耗能量之影響-Case 1(移除後)……….…………..27

圖 4-7 總節點數對平均節點消耗能量之影響-Case 2………..….………..….28

圖 4-8 總節點數對平均節點消耗能量之影響-Case 2 (移除後) ……….…28

圖 4-9 總節點數對總能量消耗之影響-Case 1……….…………...… 29

圖 4-10 總節點數對總能量消耗之影響-Case 1(移除後)……….…………30

圖 4-11 總節點數對總能量消耗之影響-Case 2……..……….……….…...…31

圖 4-12 總節點數對總能量消耗之影響-Case 2(移除後) …….…….…………...31

圖 4-13 總節點數對廣播路徑生存時間之影響-Case 1……….……….…..…32

圖 4-14 總節點數對廣播路徑生存時間之影響-Case 1(移除後)……….33

圖 4-15 總節點數對廣播路徑生存時間之影響-Case 2………..………..34

圖 4-16 總節點數對廣播路徑生存時間之影響-Case 2(移除後) ...………..……...34

圖 4-17 總節點數對平均分支度之影響-Case 1………...….36

圖 4-18 總節點數對平均分支度之影響-Case 1(移除後) ……..………..36

(10)

VI

圖 4-19 總節點數對平均分支度之影響-Case 2 …..………..……...….….37 圖 4-20 總節點數對平均分支度之影響-Case 2(移除後) …..….…..……...……..37 圖 4-21 總節點數對最大分支度之影響-Case 1…..………..….…..…….……38 圖 4-22 總節點數對最大分支度之影響-Case 1(移除後) …..…..….…….………..38 圖 4-23 總節點數對最大分支度之影響-Case 2 …..……….…..……….….39 圖 4-24 總節點數對最大分支度之影響-Case 2(移除後) …...………...……..39 圖 4-25 總節點數對廣播延遲之影響-Case 1……….…...…...…40 圖 4-26 總節點數對廣播延遲之影響-Case 1(移除後) …..…....…..….……….…..41 圖 4-27 總節點數對廣播延遲之影響-Case 2……...………..…….…..………41 圖 4-28 總節點數對廣播延遲之影響-Case 2(移除後)………...…….……....……42 圖 4-29 總節點數對總控制封包數量之影響-Case 1(移除後)……...43 圖 4-30 總節點數對總控制封包數量之影響-Case 2(移除後) ..………..…43

表目錄

表 3-1 不同的權重公式………....17 表 4-1 模擬之參數表………....………23

(11)

第一章 緒論

當社會由e化走向M化,不難看出傳統的有線網路已無法滿足一般的使 用者,當人們不想再受地點限制,想隨時隨地都可獲得資訊的情況下,越 來越多人投身至此藍海,使得各式各樣的無線通訊技術逐漸的萌芽茁壯。

在此章1.1節將介紹目前的無線網路傳輸技術,1.2節將述說啟發本研究 之動機,1.3節將說明研究步驟及方法,1.4節敘述本論文的整體架構。

1.1 前言

IEEE 802.11是目前最普遍的無線區域網路技術的標準。其中主要分為 兩種網路架構,分別為:「有基礎架構無線網路」(Infrastructure Networks)、

「無基礎架構無線網路」或稱「無線隨意網路」 (Ad Hoc Networks) 。 (1) 有基礎架構無線網路(Infrastructure Networks):

其架構是由工作站(Station) (也可稱作節點)及基地台(Access Point, AP)所組成,如圖 1-1 所示,此架構中所有的工作站皆頇透過基地台 作為中繼站才能與外界通訊,若有一個工作站,想要和其它工作站交 換資料時,就必頇要透過其傳輸範圍內的基地台轉送資料進而完成工 作站之間的資料交換。因此,當基地台停損壞或是停止運作時,將會 造成整個網路都停止運作。

圖 1-1 有基礎架構無線網路

(12)

2

(2) 無基礎架構無線網路或稱無線隨意網路(Ad Hoc Networks):

無線隨意網路,是由一群無線工作站集合起來,彼此之間的聯繫 不需要經由預先建置的無線基地台做轉送。網路中允許工作站直接互 相交換資料,如圖 1-2 所示。工作站要交換資料之前會先檢查雙方是 否在彼此的傳輸範圍中,若是,可直接用點對點的方式進行資料交換;

反之,則會藉由其它工作站以接力的方式交換資料。由於無線隨意網 路不需基地台的架設,故可大幅的降低網路的維護成本。

另外,無線隨意網路根據不同的移動速率的又可再細分出移動力 較低甚至不移動的一般式無線隨意網路及移動力較高的移動式無線隨 意式網路(Mobile Ad Hoc Network, MANET),其特性與一般式無線隨 意網路相同。兩者差異在於,移動式無線隨意式網路的各節點可能隨 著使用者在高速移動,如應用在車載裝置;而一般式無線隨意網路之 節點則可能固定在會議室或移動率較低之應用。

圖 1-2 無線隨意網路

(13)

1.2 研究動機

在無線隨意網路中,資訊的交換不必經過基地台而是直接透過指定的 節點以多重跳躍(Multihop)的方式傳送,如何決定轉送的節點則需透過擇徑 演算法 (Routing Protocol)搜尋傳送路徑來指定,由於不同的應用,會有不 同的訴求方針,在這強調綠色科技的時代,如何有效的利用能源、減少能 量的消耗,便是一個重要的課題,本論文所注重的重點有二:

1. 依據不同的傳輸距離來調整傳輸所需的功率大小,以降低能量消耗。

2. 擇徑時考慮剩餘電量,以延長廣播路徑生存時間(Lifetime),降低因廣 播路徑中斷而重新建立拓樸所浪費之能源。

在一般的無線隨意網路中,由於節點的移動率較低,拓樸並不會經常 變動,因此對於更新拓樸的頻率不需太高,但在 MANET 中節點隨時高速 移動的情況下,如何有效的維護網路的連通性便是一個重要的課題,如果 使用需全域資訊的演算法則每個節點必頇花費相當大的能量及空間來交 換並儲存所有節點的資訊,且交換資訊的過程繁瑣也不適合頇即時性的 MANET,故必頇使用區域性的演算法,這類方法大都只需和 1-Hop 之鄰 居交換封包即可,因此本論文所提出及比較之方法皆為區域性演算法。

且無論是在 Ad Hoc 或是 MANET 中,大部份節點為手持式設備,電量 是相當有限的,因此降低電量消耗、延長使用時間是相當重要的,經研究 後發現 RNG 演算法可透過區域資訊調整傳輸功率以降低能量消耗,但卻 未考慮到有節點電量耗盡而導致廣播路徑中斷的問題,因此本論文針對此 點提出兩種區域性的演算法以改善上述問題。

(14)

4

1.3 研究方法

為了有效的節約能量,提高廣播路徑生存時間,本論文提出了 RNGF (Relative Neighborhood Graph with Forbidden Set)及 MRNG (Modified Relative Neighborhood Graph)此二種方法皆是以 RNG 為基礎去改良,其步 驟約略如下:

Step 1. 各節點透過 Hello 封包和鄰居節點交換位置和節點剩餘電量資 訊。

Step 2. 各節點依據其和鄰居間的距離等資訊經各自的演算法計算後,將 允許轉送封包之節點設為相對鄰居並加入相對鄰居表。

Step 3. 當有節點開始廣播資料時,收到該資料封包之節點將依據其相對 鄰居表中距離最遠的節點來調整其傳輸半徑之大小廣播。

Step 4. 若有節點收到兩次以上相同的封包則會動態的調整其相對鄰居以 減少冗餘重播發生。

Step 5. 以 C 語言撰寫程式模擬並比較分析各方法之優劣。

1.4 論文架構

本論文將於第二章討論相關的演算法,在第三章詳述我們所提出之方 法,並在第四章透過模擬比較並分析所提方法之效能,最後於第五章提出 總結。

(15)

第二章 相關文獻探討

現有的廣播擇徑方法大致上可分為兩類,一類以最少的傳輸 Hop 數來 涵蓋所有的節點,另一類則靠調整傳輸功率改變拓樸結構來降低能源消耗,

以下將逐一介紹。

2.1 減少重播節點數的廣播方法

濫傳(Flooding )是一種最直接、簡單的廣播處理方法,當一個行動接收 到第一次廣播訊息,就會義務地將封包再廣播出去。因此當區域網路有 n 個節點時,就會有 n 次的相同封包被廣播,過多的重覆廣播封包在網路上 傳遞因而產生了下列的問題:

 冗餘重播(Redundant Rebroadcast ):當節點決定廣播已收到的廣播 訊息給相鄰的節點時,可是所有的相鄰節點皆已收過相同的廣播 訊息了。

 媒介競爭(Medium Contention):當節點廣播訊息後,其相鄰的許多 節點收到訊息便決定再幫忙廣播訊息時,但這些節點大多彼此相 鄰,就會相互競爭。

 碰撞(Packet Collision):因為不足夠的退後計數(Back-off Count) 時機,缺乏 RTS/CTS 交換訊息,及不確實的碰撞偵測,使得碰撞 有很高的發生率及產生很大的網路效能損害。

為了要解決上述的問題,就要從減少無謂的、重複的重播節點以及錯 開重播的時機著手,因此各學者們提出了機率性方法(Probabilistic Scheme)、

以計數為基礎之方法(Counter-Base Scheme)、以距離為基礎之方法

(16)

6

(Distance-Based Scheme)、以位置為基礎之方法(Location-Based Scheme)、

以叢集為基礎方法(Cluster-Based Scheme)等五種方法來解決此問題:

A. 機率性方法:選擇機率性的再廣播是一種很直覺式地減少多餘廣播的 方法。在[1]中,當一個節點收到一個之前沒有接收過的廣播訊息後,

以一個機率值P來決定是否重播此廣播訊息,也就是說,此節點不重播 的機率為(1-P)。當P=1 時,此方法就等於在作濫傳(Flooding)[2]。

B.以計數為基礎之方法:在[1]中,假設當節點收到k 次相同訊息的封包後,

則期待附加的覆蓋(Expected Additional Coverage)為EAC(k),所以當節 點再廣播的期待附加的覆蓋值太小時,便可防止節點再廣播。具體地 說,選擇一個常數c,持續紀錄有多少個相同訊息封包已接收,且設定 一個限制值C,當c 大於等於C 時,節點就被抑制再廣播。

C.以距離為基礎之方法:利用節點之間的相對距離值以決定是否幫忙轉送 封包。如假設有一個節點H 第一次聽到從來源端 S 傳送的訊息,則 計算 S 與 H 之間的距離d,以決定 H 是否必頇再廣播訊息。若S 與 H 距離太小,則H 廣播的附加覆蓋範圍EAC(d)很小,就不需要再廣 播訊息,相反地,若S 之間H 距離很大,則H 廣播的附加覆蓋範圍 EAC(d)很大,則必頇再幫忙廣播訊息。一個極端例子,當d=0 時,則 廣播的附加覆蓋範圍EAC(d)也是為0。具體地說,當節點第一次接收 廣播訊息時,計算與廣播訊息的節點之間的距離,且設定一個限制值 D,當d小於D 時,節點就不再重播[1]。

D.以位置為基礎之方法:在區域網路若可獲得廣播節點的位置資訊,就可 相當精準地評估附加覆蓋值EAC(A),這樣的提議可利用位置裝置如全 球定位系統GPS(Global Positioning System)提供服務。將來源節點的傳 輸半徑設為r、位置設為(0,0),假設其他n個節點收到相同的廣播訊息,

(17)

其位置資訊為(X1,Y1),(X2,Y2)…(Xn,Yn),我們就可計算節點再廣 播訊息時可涵蓋的附加地區,設參數AC((X1,Y1),(X2,Y2)…(Xn, Yn))表示附加覆蓋值再除以

r

2,預先定義涵蓋門檻值A(0<A<0.61)。

因此節點可以計算自己廣播的範圍內,所占有未被廣播過的地區的比 率是否大於A,若大於等於A,便將收到的廣播訊息再廣播給相鄰節點,

若小於A,則不再廣播。

E. 以叢集為基礎之方法:叢集式演算法[3][4][5]為假設節點週期性的送出

封包通知自己的存在,則任何一個節點皆可決定與自己相連的其他節 點,且每個節點都有一個唯一ID。一個叢集是由一組節點組成,當節 點在這叢集內有最小的ID 時,就將自己設為Cluster Head,而其他相 連的節點就為Member 且有一個Cluster ID同等於 Cluster Head ID。在 叢集內有節點可以與其他叢集節點通訊時,此節點就為Gateway。節點 移動時,若有二個Cluster head 相鄰,則ID 較大的Cluster Head 便放 棄自己當Cluster Head 的角色。

2.2 可調功率大小的節能擇徑方法

在無線隨意網路中,所有的節點皆使用廣播的方式互相傳遞資料,透 過節點與節點互相接力傳遞的方式,以達成資料傳輸的目的。當有節點收 到欲傳遞訊息時,則會將訊息處理轉發或是協助傳遞至目地節點。也就是 說,對於每一個節點而言,各自擁有可掌控最大的通訊範圍,通常稱這樣 的通訊範圍為預設最大通訊範圍(Default Maximum Range)。通訊範圍的大 小,對於能量消耗而言佔有極大的比重,範圍越大,能量消耗越多。一般 而言消耗能量會與發射半徑的平方成正比。因此為了達到功率消耗能量較 小,通常會將節點的發射功率作適當的調整,以免浪費無謂的能量。

(18)

8

若採用全域的資訊作為調整傳輸功率大小的依據,每個節點必頇紀錄 整個網路目前的狀態,根據彼此之間的距離計算出最小生成樹(Minimum Spanning Tree),在 Ranmanthan [7] 根據這樣的考慮方式將原本網路的連接 狀態,計算出所謂的 MST 的結構,再根據計算出來的結構,去調整發射 功率剛好到達鄰近節點的距離,讓發射的功率達到最大效率。如圖 2-1 所 示,原有節點間的拓樸結構為十分複雜的連接方式,根據每個連接(Link) 所需要花費的大小,計算後求得 MST 的結構如圖 2-2 所示。

圖 2-1 尚未調整的原生拓樸結構

圖 2-2 計算形成的 MST

在[8]中,Wieselthier 等人提出兩種使用全域(Global)資訊的貪婪演算法 在於求得廣播的最小花費問題上。分別為 BLU (Broadcast

Least-Unicast-cost)與 BIP (Broadcast Incremental Power)。 BLU 以 Dijkstra 的演算法為基礎,將來源端到其他節點的最短路徑建立出一個樹狀結構,

用這樣的樹狀結構來取代 MST;BIP 則是使用 Prim 的演算法改良後為基

(19)

礎去計算,在建立樹的過程中,如果有新的節點要加入該樹,則必頇考慮 是否為花費最小的能量,如是才加入樹作為 MST 上面的節點。

在一個歐幾里德空間(Euclidean Space)中,假設有三點 A、B 和 C,當

△ABC 存在時,計算其外接圓,如果該外接圓內未包含 A、B、C 以外的 點時,且由任兩個相鄰之三角形所構成之凸四邊形之對角線相互交換後,

六個內角的最小角不再增大,此時,△ABC 便是 Delaunay Triangle,由 Delaunay Triangle 所組成之 DT(Delaunay Triangulation)[9]如圖 2-3 (a),DT 中各三角形皆為最相近之三點所組成,因此任兩個三角形之邊並不相交,

且具區域性,當任一節點移入、移出時,只會影響到鄰近的三角形,不至 於變動整個拓樸。本論文中所研究之 RNG 即屬於 DT 的子圖,最早由 Godfried Toussaint [10][11] 所提出,為一無向圖,假設任兩點存在連結時,

以兩點之距離為半徑、兩點分別為圓心畫兩個圓,在兩圓所交集的區域中 若存在第三點時,則不將此邊加入集合,最後建立好之集合則為 RNG 所 有邊之集合,如圖 2-3(b),在[12]中證明了 RNG 可在 O(n log n)的時間內 被找出。

(a) Delaunay Triangulation (b)RNG 圖 2-3 Delaunay Triangulation Graph 和 RNG

(20)

10

關於 RNG 的實際應用如 Julien Cartigny 等所提出之 RNG 廣播演算法 [12][14],假設無線隨意網路中每個節點可以透過各種定位技術確認自己的 位置並透過封包交換來取得鄰居的位置資訊,之後透過這些區域資訊建立 RNG 圖形,再根據其相對鄰居來調整功率做廣播,其調整功率的判斷方式 如圖 2-4圖 2-4 所示,如果任二節點 u 與 v 之間存在第三個距離較近的節 點,代表可以透過該點來轉送資料,因此在建立 RNG 時,該二節點則不 需要直接建立路徑,而是如圖 2-5 藉由第三點 w 來轉送資料,以減少能量 的消耗,建立 RNG 前後之拓樸如圖 2-4與圖 2-5。

圖 2-4 RNG 選擇相對鄰居示意圖

(21)

圖 2-5 RNG 調整功率暨傳輸路徑示意圖

圖 2-6 原始網路拓樸

(22)

12

圖 2-7 RNG

我們令G(V, E)為所有節點V和邊E所建立之圖形,ER代表RNG中所有邊 的集合,d(u,v)則是指節點u至節點v之距離,當建立好RNG圖形後,每個 節點u會以其和相對鄰居表中最大之距離做為其傳輸半徑ru之大小。

ER={(u, v)E|!wV, (u, w), (w, v)G

∧[d(u, w)<d(u, v)]∧[d(v, w)<d(u, v)]} (1)

經由這樣的方式建立 RNG 的好處在於每個節點以分散式的方式各別 交換區域的資訊,也就是說各節點只需要和其鄰居節點做一次封包交換即 可,而不需要額外的控制封包和存取空間來取得並紀錄全域資訊,並透過 所調整之功率大小來傳送資料以減少能量消耗。

(23)

2.3 禁止集合擇徑演算法

在禁止集合擇徑演算法中,每個節點可以隨著應用上的不同定義其加 入禁止集合的條件,如安全方面或是以成本為考量[15][16] ,將一些不穩 定或不安全之節點加入到禁止集合藉此管控整體網路之安全,當節點符合 所假定的條件時,便將該節點加入禁止集合並限制其功能,此時該節點又 稱禁止節點,由W.C.K. Yen[17]所提出之禁止集合之應用則以圖論之觀點來 加以探索與最小連通圖之關係,在[18]中則將禁止集合之概念套用在網路 中每個節點的剩餘電量,並將其應用在無線隨意網路之擇徑。

本論文將RNG及禁止集合相互結合成一個具高穩定度的方法,藉由加 入禁止集合之概念建立RNG圖形來避免廣播路徑因單一節點電量耗盡而 中斷的情況,詳細的說明和步驟則在下一章介紹。

(24)

14

第三章 RNGF 及 MRNG 演算法

因前述之問題,故本論文在此提出兩種改良之演算法分別為RNGF及 MRNG來減少能量消耗以延長廣播路徑生存時間,並提出一減少冗餘重播 且可套用至各演算法之方法,以下將分別詳細介紹。

假設在無線隨意網路中,每個節點都有屬於自己的ID,且所有節點的 天線輸出功率可以隨著欲傳輸的距離做調整,並經由GPS等方法確認自己 的位置資訊,再透過封包交換來取得鄰居的位置資訊,並藉由這些資訊來 建立網路拓樸。

3.1 RNGF 演算法

在RNGF中定義當節點剩餘電量低於門檻值,就將之定義為禁止節點,

並限制其不得轉送資料,只能做傳送控制封包的動作,如圖 3-1當節點w 成為禁止節點而無法傳送資料時,節點u會選擇次近且非禁止節點的v來做 為其相對鄰居。

圖 3-1 RNGF 選擇鄰居示意圖

(25)

3.1.1 步驟及虛擬碼

Step 1. 每個節點u計算自己的剩餘電量和座標位置,並透過Hello封包和鄰 居交換彼此的資訊來得知彼此間的距離。

Step 2. 若節點u非禁止節點,則根據當初交換的資訊來判斷其和鄰居節點v 之傳輸範圍的交集區域內是否存在第三節點w,若有則到Step 3,

否則跳到Step 4。

Step 3. 根據第三節點w之剩餘電量判斷其是否可做為中繼節點, 若 可 , 則不將節點v設為u之相對鄰居,否則跳回Step 2找尋是否有其他的 第三節點w。

Step 4. 若不存在第三節點w,則將鄰居節點v設為u的相對鄰居。

Step 5. 當節點欲傳送資料時,會根據自身和相對鄰居的距離來調整其傳輸 功率的大小,並據此來傳送資料封包

我們定義V為拓樸中各節點之集合、VF為禁止節點之集合,ERF則是 RNGF中所有邊之集合, N(u)代表節點u之所有鄰居之集合,建立RNGF之 虛擬碼如下,建立完之RNGF拓樸如圖 3-2。

Algorithm RNGF

Input: V, VF, N(u) and d(u, v) for each node u and v N(u) Output: ERF

for each u  V – VF for each v  N(u)

if (! w  N(u) ∩ [N(v) – VF], such that d(u, w) < d(u, v) && d(w, v) < d(u, v)) then ERF = ERF ∪ {(u, v)}

return ERF

(26)

16

圖 3-2 RNGF

3.2 MRNG 演算法

本論文提出的第二種方法為MRNG,由於原RNG未考慮到電量與距離 的關係,因此在這裡我們加入剩餘電量為參考,以權重方式來選擇其相對 鄰居,當節點要傳送資料時,便依該權重來決定其相對鄰居並據此傳送。

因RNG僅以距離做為其相對鄰居之選擇條件,因此容易選擇到剩餘電 量較低之節點做為其相對鄰居,為了改善此問題,我們以r(u)代表節點u之剩 餘電量、d(u,v)為節點u至節點v的距離,定義Wuv為節點u至節點v之權重,當 剩餘電量越多、距離越近時,代表此點適合做為重播節點,因此當節點u 與節點v之傳輸半徑內存在一適合做轉送之節點時,節點u與節點v則不直

(27)

接建立連結,我們依據剩餘電量與距離之關係比重的不同定義兩種不同的 權重公式如表3-1,並將原RNG公式(1)改寫為(2),依據不同權重所建立出 之MRNG分別為MRNG1及MRNG2,如圖 3-3 和圖 3-4。

表3-1 不同的權重公式 權重公式 MRNG1 Wuv= r(u)/d(u,v) MRNG2 Wuv= r(u)/d(u,v)2

在各種以剩餘電量及距離做為權重的演算法中,兩節點間有可能因為 剩餘電量的不同,導致節點u到節點v之權重和節點v到節點u之權重不同而 造成單向鏈結,但我們的方法並不可能發生,證明如下。

一. 首先,將 u、v、w 分別以 x、y、z 代入(2):

二. 其次,將 u、v、w 分別以 y、x、z 代入(2):

由上可發現兩式相等,因此當(3)成立時,(4)必也成立,故不會產生單 向之鏈結。

ER={(u, v)E|!wV∧[Wwv>Wuv]∧[Wwu>Wvu]} (2)

ER={(x, y)E|!wV∧ [Wzy>Wxy]∧[Wzx>Wyx]} (3)

ER={(y, x)E|!wV∧ [Wzx>Wyx]∧[Wzy>Wxy]} (4)

(28)

18

圖 3-3 MRNG1

圖 3-4 MRNG2

(29)

3.3 減少冗餘重播之動作

接著,以圖 3-5為例,在圖 3-5(a)中,節點s為來源節點,當節點s會先 廣播給節點e和節點g,節點e則會再廣播給節點c,再來節點c會以d(a,c)作 為其傳輸半徑,之後節點d收到節點c之封包後也會以此方式調整功率繼續 往下廣播,但在此時節點b已早在節點c廣播時就已經收過相同封包,如此 一來便會收到兩次以上相同的封包,造成資源的浪費,在此本論文設計一 動態調整拓樸的方法,在第一輪廣播,節點b會收到兩次相同的封包,但 是接下來節點b會依其上游節點是否為相對鄰居回送不同的訊息,令非相 對鄰居的上游節點暫時將其設為相對鄰居,而原為相對鄰居上游的節點則 暫時設為非相對鄰居,使其上游節點可依不同的來源端動態調整所要轉送 的封包,如圖 3-5(b)此時節點d就不需要再做廣播的動作,即可減少能量 的消耗,對RNG、RNGF、MRNG1及MRNG2移除冗餘重播後之拓樸則如 圖 3-6到圖 3-9。

在RNGF中,若是收到重複封包的節點為禁止節點時,該禁止節點會 發送控制封包指派由距離較近者為做為其接收資料封包之節點,如圖中之 禁止節點f指派節點g做為其接收資料之節點後,節點e之傳輸半徑則由d(e,f) 調整為較小的d(c,e),因此減少了傳輸所需的能量。

(a) (b) 圖 3-5 去除冗餘重播之節點

(30)

20

圖 3-6 RNG-R

圖 3-7 RNGF-R

(31)

圖 3-8 MRNG1-R

圖 3-9 MRNG2-R

(32)

22

第四章 模擬結果與分析

我們在Windows系統上使用Visual C++實作RNG、RNGF和MRNG等方 法,對三者皆可成功建立廣播路徑之500種不同拓樸進行模擬並取平均值,

比較不同總節點數對重播節點數目、平均節點消耗能量、總消耗能量、廣 播路徑生存時間、平均節點分支度、廣播延遲及控制封包數的影響,並比 較各方法執行完掃除冗餘重播之動作對上述各因素之影響。

由於網路中節點越多,其發生廣播風暴的機率也將越高,因此本實驗 將重播節點加入比較項目,且本論文考慮節能減碳之目標,平均節點能量 消耗、總能量消耗及廣播路徑生存時間是不可少的比較項目,另外,本實 驗又比較了平均分支度和廣播延遲,前者代表著各節點廣播所涵蓋的範圍 也影響著發生廣播風暴之機率,後者則為了探討多重跳躍的方式來轉送資 料所造成的影響。在本研究模擬中所用之各項參數如0,為比較各演算法 間之差異,考量二種不同之狀況:Case 1中每一節點之最大傳輸距離小而 節點數多;Case 2中每一節點之最大傳輸距離大而節點數少。所採用之各 項效能指標(Performance Metric)定義如下:

 總節點數:在1000 m *1000 m 的範圍內,所有節點的總數。

 重播節點數目 :網路拓樸中以指定的來源節點廣播,其中有參與轉 送封包動作之節點數總和。

 總能量消耗:各重播節點根據其下游鄰居中距離最遠的鄰居為傳輸半 徑所消耗之能量之加總。

 平均節點能量消耗:即總能量消耗/重播節點數。

 廣播路徑生存時間: 廣播路徑中每一重播節點持續傳送資料至電量 耗盡,最快耗盡電量之節點耗盡電量之時間。

 平均分支度:各重播節點下游節點數之平均。

(33)

 廣播延遲:廣播路徑中由來源節點至其他節點之最大Hop數。

 最大分支度: 廣播路徑中的最大分支度。

 控制封包數: 建立拓樸所需要的控制封包數量。

表4-1 模擬之參數表

表4-1 模擬之參數表

我們所使用之能量消耗模式係由W.B. Heinzelman[19]所提出,令l為某 一節點所傳輸資料之位元數,d為其傳輸距離,Eelec為電子電路消耗之固定 電量,fs及mp分別為在自由空間或多重路徑衰減模型下之常數,d0為一門 檻值用來決定傳輸時所使用的能量模型,當傳輸距離小於d0,使用自由空 間衰減模型,否則使用多重路徑衰減模型。我們使用和[19]相同之數值,

Eelec= 50 nJ/bit 、fs= 10 pJ/bit/m2、mp= 0.0013 (pJ/bit)/m4、d0=   ,能量消 耗模型公式如下。

) , ( )

( )

,

(l d E l E l d

ETxTxelecTxam p





 

0 4

0 2

, ,

d d d l lE

d d d l lE

m p elec

fs elec

參數 Case 1 Case 2

網路拓樸大小(m2) 1000*1000 1000*1000 節點最大傳輸半徑(m) 100 250

電池滿電量(mAh) 1000 1000 各節點之剩餘電量分佈

(%)

15 ~ 100 15 ~ 100

節點數目 300 ~ 700 100 ~ 300 禁止節點之門檻值(%) 35 35

(34)

24

4.1 重播節點數目之比較

在Case 1中,當重播節點越少,代表發生廣播風暴的機率可以更小,

在4中,可以看出當總節點數越來越高時,所有方法的轉送節點的數目都 越來越多,不過RNGF、MRNG1及MRNG2有別於RNG的篩選機制,可以 限制一些不必要的節點做轉送的動作,因此重播節點上升的幅度是小於 RNG的。

圖 4-1 總節點數對重播節點之影響-Case 1

當各方法做完減少(Reduce)冗餘重播之動作後,為了和未做此動作 之方法區別,於是在各方法後面加上R字,由圖 4-2中可以看出各方法的 重播節點有效的減少,且各方法上升的幅度也有降低。

0 100 200 300 400 500 600

300 350 400 450 500 550 600 650 700

Number of Rebroadcast Nodes

Total number of Nodes

RNG RNGF MRNG1 MRNG2

(35)

圖 4-2 總節點數對重播節點之影響-Case 1(移除後)

在Case 2中,由圖 4-3和圖 4-4可以看出趨勢大致上和Case 1相近,但 在傳輸距離較大覆蓋面積較高時,未減少冗餘重播時RNGF和MRNG1的重 播節點數目是很接近的,而做完減少冗餘重播的動作後,MRNG1比RNGF 可以更有效的降低其廣播節點的數目。

圖 4-3 總節點數對重播節點之影響-Case 2

0 50 100 150 200 250 300 350 400 450

300 350 400 450 500 550 600 650 700

Number of Rebroadcast Nodes

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

0 50 100 150 200 250 300

100 150 200 250 300

Number of Rebroadcast Nodes

Total number of Nodes

RNG RNGF MRNG1 MRNG2

(36)

26

圖 4-4 總節點數對重播節點之影響-Case 2 (移除後)

4.2 平均節點能量消耗之比較

由上一節可知,RNG因為廣播時透過較多的節點做轉送,各節點之傳 輸半徑較小,因此在圖 4-5中各節點所消耗的能量相較於其他方法是較低 的,雖然平均各節點所耗的能量較低,但有可能因為重播節點較多反而使 得整體消耗變多,這在之後的圖 4-9會有詳細的探討。

MRNG2因其節點之分支度較高,因此在選擇最遠的鄰居節點做為傳輸 半徑時可能會較其他方法來得大,因此平均節點消耗能量以MRNG2為最 高。

在圖 4-6中,MRNG2-R去除了許多冗餘重播,使得其頇以較少數量的 節點來涵蓋整個網路,因此平均節點的消耗能量會較高,

0 20 40 60 80 100 120 140 160 180

100 150 200 250 300

Number of Rebroadcast Nodes

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(37)

圖 4-5 總節點數對平均節點消耗能量之影響-Case 1

圖 4-6 總節點數對平均節點消耗能量之影響-Case 1(移除後)

50 60 70 80 90 100 110 120

300 350 400 450 500 550 600 650 700

Average of Energy Consumption (nJ/bit)

Total number of Nodes

RNG RNGF MRNG1 MRNG2

50 70 90 110 130 150 170 190 210 230 250

300 350 400 450 500 550 600 650 700 Average of Energy Consumption (nJ/bit)

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(38)

28

在圖 4-7與圖 4-8中,總節點數越高時,節點密度也隨之增加,因此 在建立拓樸時便可選擇較近的節點做為其重播節點,因此在Case 2中,當 總節點數增加時,平均重播節點所消耗的能量也隨之降低,但RNG在選擇 相對鄰居時是不考慮節點剩餘電量,而會選擇較近的節點來做為其相對鄰 居,因此RNG之重播播節點數目較多,但也將傳輸所耗的能量平均分散在 各重播節點,所以平均消耗能量是最低的,然而MRNG2之重播節點較少,

資料皆由少數的重播節點來轉送,因此在平均消耗能量上是較高的。

圖 4-7 總節點數對平均節點消耗能量之影響-Case 2

圖 4-8 總節點數對平均節點消耗能量之影響-Case 2 (移除後)

0 100 200 300 400 500 600

100 150 200 250 300

Total of Energy Consumption (μJ/bit)

Total number of Nodes

RNG RNGF MRNG1 MRNG2

0 200 400 600 800 1000 1200

100 150 200 250 300

Total of Energy Consumption (μJ/bit)

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(39)

4.3 總能量消耗之比較

在圖 4-9、圖 4-10中,不論是減少冗餘重播前或後,皆可看出RNGF、

MRNG1及MRNG2之總能量相對於RNG是低很多的,雖然RNG在前項比較 中,能量消耗是最低的,但因重播節點過多造成在總能量消耗反而最高,

而另外三種方法之篩選機制在選擇相對鄰居節點時並不像RNG只考慮距 離,還增加電池剩餘電量的因素,因此選擇後的相對鄰居可能會是次近或 較遠的點,所以在平均節點消耗能量都較RNG來得多,但由於這三種方法 的重播節點數目較少,我們將重播節點數目乘於平均節點消耗能量後發現,

三者的網路總能量消耗是相近的,且均較RNG來得低。

圖 4-9 總節點數對總能量消耗之影響-Case 1

15 20 25 30 35 40 45

300 350 400 450 500 550 600 650 700

Total of Energy Consumption (μJ/bit)

Total number of Nodes

RNG RNGF MRNG1 MRNG2

(40)

30

圖 4-10 總節點數對總能量消耗之影響-Case 1(移除後)

15 20 25 30 35 40 45

300 350 400 450 500 550 600 650 700 Total of Energy Consumption J/bit)

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(41)

在圖 4-11中,在一開始節點數為100時,各節點的鄰居較少, RNGF、

MRNG1及MRNG2有可能因較近的點電量較少而選擇次近的點,但RNG依 舊會選最近的,因此總能量消耗為RNG最低,但隨著總節點數增加時,雖 然RNG傳輸功率較小,但由於透過過多節點來轉送資料因此在節點數300 時,RNG所消耗的能量反倒高於其他三者。在圖 4-12中亦可明顯看出做完 減少冗餘重播動作後,RNG之相對鄰居都是較近的,因此成果有限,總能 量消耗還是高於其他三者。

圖 4-11 總節點數對總能量消耗之影響-Case 2

圖 4-12 總節點數對總能量消耗之影響-Case 2(移除後)

50 5050 10050 15050 20050 25050 30050

100 150 200 250 300

Total of Energy Consumption (nJ/bit)

Total number of Nodes

RNG RNGF MRNG1 MRNG2

50 5050 10050 15050 20050 25050

100 150 200 250 300

Total of Energy Consumption (nJ/bit)

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(42)

32

4.4 廣播路徑生存時間

當廣播路徑中有一節點電量耗盡時,整個廣播路徑便有可能會因此成 為非連通狀態,導致有些節點會因此收不到資料,此時便需要花費額外的 能量和時間來重新建立拓樸,因此本實驗以最快耗盡電量之節點其耗盡電 量的時間做為廣播路徑生存時間。

在圖 4-13中可以看出在減少冗餘重播前,MRNG2的生存時間是較低 的,因為在該方法每個節點的傳輸能量是偏高的,因此容易因為某個節點 其剩餘電量本身就不高又需要消耗較多的能量,造成整個廣播路徑中斷,

而RNGF因限制剩餘電量低於門檻值的節點不得做轉送的動作,因此資料 皆是藉由剩餘電量較高之節點來做轉送,再加上可用較小的傳輸範圍透過 周圍較近的鄰居來做轉送,故可看出其廣播路徑生存時間是高於其他方法 的。

圖 4-13 總節點數對廣播路徑生存時間之影響-Case 1

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

300 350 400 450 500 550 600 650 700

Network Life Time (hr)

Total number of Nodes

RNG RNGF MRNG1 MRNG2

(43)

MRNG1及MRNG2因節點都是以較大傳輸範圍來做傳輸,故覆蓋率都 是較高的,但也因此二者在減少冗餘重播的動作後,可以有效的減少許多 不必要的傳輸,因此有機會去除掉那些存活時間較低之節點 ,間接的使 得廣播路徑生存時間增加,而RNG雖然是以較小的傳輸範圍來傳送,去除 掉存活時間較低之節點的機會較小,不過在生存時間還是有小幅度的增加,

如圖 4-14。

圖 4-14 總節點數對廣播路徑生存時間之影響-Case 1(移除後) 於Case 2圖 4-15中,RNGF會將電量較少的點設為禁止節點,因此可 避免廣播路徑因禁止節點電量耗盡而中斷,而MRNG1和MRNG2雖然會將 電量較低的點排除至鄰居節點外,但因較遠的節點也有可能成為相對鄰居,

因此頇以較大的傳輸功率來廣播,使得各重播節點較容易沒電造成廣播路 徑中斷,因此在廣播路徑生存時間方面MRNG1和MRNG2是較差的。

在圖 4-16雖然MRNG1及MRNG2傳輸範圍較大所涵蓋之節點較多,因 此冗餘重播的情況較為嚴重,但經過減少冗餘重播的動作後可以看出有較 為顯著的改善,且廣播路徑生存時間變得較RNG及RNGF來得高。

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

300 350 400 450 500 550 600 650 700 Network Life Time (hr)

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(44)

34

圖 4-15 總節點數對廣播路徑生存時間之影響-Case 2

圖 4-16 總節點數對廣播路徑生存時間之影響-Case 2(移除後)

0 0.2 0.4 0.6 0.8 1 1.2 1.4

100 150 200 250 300

Network Life Time (hr)

Total number of Nodes

RNG RNGF MRNG1 MRNG2

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

100 150 200 250 300

Network Life Time (hr)

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(45)

4.5 平均分支度和最大分支度之比較

當節點的覆蓋率越大時,相對的其所涵蓋的節點會越多、分支度亦越 高,且在可調整傳輸範圍之演算法中,節點會依據其要傳送之下游節點之 距離調整其傳輸範圍,故在本實驗中以重播節點對下游節點的分支度為參 考來比較在各方法中各重播節點之下游鄰居數目。

當重播節點多且分支度高時,這代表著對每一節點而言其下游節點都 相當的多,甚至每一節點可能會有兩個以上的上游節點,當上游的兩個節 點同時傳送資料給同一點時便有可能會因此造成碰撞,因此在此例中,碰 撞的機率會是較高的。

但如果重播節點數少,但分支度高的話,則代表其廣播路徑拓樸呈星 狀或是樹狀分佈,這意味著其資料傳送是藉由少數幾點來做傳送,其碰撞 機率相對來說就不會較前例來的高,但卻可能因少數幾個節點電量耗盡使 得廣播路徑拓樸中斷。

在圖 4-17中可以看出MRNG2因其距離影響的因素較高,較MRNG1嚴 苛,故其節點的分支度較高,RNGF在做減少冗餘重播的動作前,各個一 般節點會和禁止節點相連,因此分支度也是偏高,而RNG及MRNG1之分 支度則維持在2.5以下。

(46)

36

圖 4-17 總節點數對平均分支度之影響-Case 1

從圖 4-18可以看出減少冗餘重播後,各節點之分支度皆有明顯的下降,

尤其是RNGF和MRNG2下降的最多,因此可以推斷減少冗餘重播之動作對 於平均節點分支度越高的方法,其效果越是顯著。

圖 4-18 總節點數對平均分支度之影響-Case 1(移除後)

0 0.5 1 1.5 2 2.5 3 3.5 4

300 350 400 450 500 550 600 650 700

Average Degree of Rebroadcast Nodes

Total number of Nodes

RNG RNGF MRNG1 MRNG2

0 0.5 1 1.5 2 2.5

300 350 400 450 500 550 600 650 700

Average Degree of Rebroadcast Nodes

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(47)

在圖 4-19中可以明顯看出MRNG2的平均分支度隨著總節點數增加而 快速上升,其因Case 1之原因相同,尤其是在Case 2中是以較大的傳輸距離 做為傳輸半徑,因此MRNG2之分支度更較其他三者來的高,做完減少冗 餘重播的動作後,MRNG2還是位居最高,而RNGF則降至比RNG略高一 些。

圖 4-19 總節點數對平均分支度之影響-Case 2

圖 4-20 總節點數對平均分支度之影響-Case 2(移除後)

0 2 4 6 8 10 12 14

100 150 200 250 300

Average Degree of Rebroadcast Nodes

Total number of Nodes

RNG RNGF MRNG1 MRNG2

0 1 2 3 4 5 6 7 8 9 10

100 150 200 250 300

Average Degree of Rebroadcast Nodes

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(48)

38

我們以最大分支度來看,首先在Case 1中,由圖 4-21可以看出MRNG2 之分支度會隨著節點急速增加,因此最大分支度也相對的快速增加,

MRNG1和RNGF則增加較慢,而RNG則幾乎維持在5。

圖 4-21 總節點數對最大分支度之影響-Case 1

經過減少冗餘重播的動作之後,可看出做此動作對分支度高者能有較 大的改善如MRNG2,而對分支度低者如RNG則幾乎沒有影響。

圖 4-22 總節點數對最大分支度之影響-Case 1(移除後)

0 5 10 15 20 25 30 35 40 45

300 350 400 450 500 550 600 650 700

Maximum Degree of Rebroadcast Nodes

Total number of Nodes

RNG RNGF MRNG1 MRNG2

0 5 10 15 20 25 30 35 40

300 350 400 450 500 550 600 650 700

Maximum Degree of Rebroadcast Nodes

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(49)

在Case 2中更可以明顯看出在減少冗餘重播前之高密度的情況下,

MRNG2最大分支度之上升幅度相當的明顯,且遠高於其他三種方法。

圖 4-23 總節點數對最大分支度之影響-Case 2

減少冗餘重播後,則如同Case 1的情形,雖然此動作對分支度較大者 能有較佳的改善,但上升的速度似乎沒有改變,而且對分支度低者則依舊 沒什麼影響。

圖 4-24 總節點數對最大分支度之影響-Case 2(移除後)

0 10 20 30 40 50 60 70 80 90

1 2 3 4 5

Maximum Degree of Rebroadcast Nodes

Total number of Nodes

RNG RNGF MRNG1 MRNG2

0 10 20 30 40 50 60 70 80

1 2 3 4 5

Maximum Degree of Rebroadcast Nodes

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(50)

40

4.6 廣播延遲之比較

在強調可調整節點傳輸功率之演算法中,重播節點大都會盡量以較小 之傳輸功率來傳送資料,故資料頇以多重跳躍的方式來轉送,因此隨著Hop 數增加,廣播延遲難免隨之增加,因此,要減少能量消耗或是降低廣播延 遲便是一個需要抉擇及取捨的問題。

在圖 4-25可以看出,在廣播延遲方面,MRNG2的表現最佳,其因為 MRNG2會使用較大傳輸功率來做傳送,故將資料送到拓樸中各個點的Hop 數為最低的,RNG則因其轉送資料時皆是以最近之鄰居來做轉送,因此廣 播延遲是較久的,RNGF雖然是以RNG為基礎來改良的,但其不同之處在 於考量了節點剩餘電量之問題,有可能因為最近之鄰居節點為禁止節點而 選擇次近的節點做為其轉送節點,因此間接的降低了其廣播延遲的時間。

圖 4-25 總節點數對廣播延遲之影響-Case 1

0 5 10 15 20 25 30 35 40 45

300 350 400 450 500 550 600 650 700

Broadcast Latency

Total number of Nodes

RNG RNGF MRNG1 MRNG2

(51)

由圖 4-26中可以看出各方法經減少冗餘重播之動作後,延遲有稍微的 降低,但不明顯,這是因為降低廣播延遲之動作是針對收過兩次以上相同 封包之節點來做改良,因此對於降低廣播延遲之助益是較低的,在圖 4-26 中各方法之曲線的趨勢大致上和圖 4-25是一樣的 。

圖 4-26 總節點數對廣播延遲之影響-Case 1(移除後)

由圖 4-27和圖 4-28可以看出大致上的趨勢和Case 1相同,RNG因為其 選擇較近之點做為其相對鄰居,因此其Hop數是相當高的,而MRNG1及 MRNG2只靠少數節點以較大傳輸範圍來傳輸,因此在延遲方面依舊是較 低的。

圖 4-27 總節點數對廣播延遲之影響-Case 2

0 5 10 15 20 25 30 35 40 45

300 350 400 450 500 550 600 650 700

Broadcast Latency

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

0 5 10 15 20 25 30

100 150 200 250 300

Broadcast Latency

Total number of Nodes

RNG RNGF MRNG1 MRNG2

(52)

42

圖 4-28 總節點數對廣播延遲之影響-Case 2(移除後)

4.7 總控制封包數之比較

一開始各節點會將本身的座標位置發送給鄰居節點,各節點再透過收 到的資訊計算並建立拓樸,雖然各方法在建立拓樸時之控制封包數是相等 的,但RNGF及MRNG則頇在封包中多加入剩餘電量之資訊,因此封包長 度會略長,在此節我們就減少冗餘重播所花費的控制封包總數做探討。

在0中,在一開始300個節點至450個節點時,由於節點較為分散,需用 較大的傳輸功率,較容易有冗餘重播的情況,因此頇用較多的控制封包來 降低此情形,而450個節點至700個節點間因節點數越來越多,但距離越來 越短,對各點來說能減少之冗餘重播越來越少,但總節點數越來越多,因 此控制封包量還是逐漸增加,在各方法中以RNGF為最高,其較另外三者 不同的是RNGF多了禁止節點對上游鄰居節點發送控制封包來減少冗餘重 播的動作,因此控制封包數量會高於其他三者。

0 5 10 15 20 25 30

100 150 200 250 300

Broadcast Latency

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(53)

圖 4-29 總節點數對總控制封包數量之影響-Case 1(移除後)

由圖 4-30可以看出在Case 2中,RNGF由於上述原因,故控制封包總 數還是相對較高的,而且在此Case中節點的傳輸距離較大,覆蓋率較高,

因此用來減少冗餘重播的控制封包數量隨著總節點數增加而快速增加。

圖 4-30 總節點數對總控制封包數量之影響-Case 2(移除後)

0 200 400 600 800 1000 1200 1400 1600 1800 2000

300 350 400 450 500 550 600 650 700

Control Packets

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

100 200 300 400 500 600 700

100 150 200 250 300

Control Packets

Total number of Nodes

RNG-R RNGF-R MRNG1-R MRNG2-R

(54)

44

經過以上的實驗模擬結果可以歸納出:

1. RNG在平均節點之消耗能量是最低,雖然看似較節能,但卻因重 播節點較多,使得總能量消耗及廣播延遲是最多的。

2. RNGF則因禁止特定節點重播,在廣播路徑生存時間是較佳的,因 此穩定度來說相較於其他三者是較佳的,其總能量消耗也與 MRNG1及MRNG2二者相近,平均節點消耗能量雖然一開始稍高 於RNG,但減少冗餘重播後則和RNG相近,在廣播延遲方面則僅 比RNG佳。

3. MRNG1則因分支度及重播節點較少,因此各節點傳輸範圍所覆蓋 之區域相對較低,因此在避免碰撞方面較佳。

4. MRNG2在總能量消耗及廣播延遲方面皆為最低的,故在節能及傳 輸速度其為最佳,但各節點所消耗能量較大,因此相對於其他三 者容易因節點沒電導致廣播路徑中斷。

5. 我們所提出的減少冗餘重播之方法可以使各方法在效能上有相當 的改善,雖然各方法在各效能指標中之順位大抵上和減少前相同,

但有幾個較特殊的如RNGF,經過減少冗餘重播的動作後,可以有 效降低平均節點消耗能量,其平均節點消耗能量最終和RNG差不 多,還有在廣播路徑生存時間中,RNGF、MRNG1及MRNG2皆較 RNG有較大的改善,三者在生存時間上是相近的,在其他效能指 標方面也皆可由之前的以上各圖證明我們所提的減少冗餘重播方 法能有效提升各效能。

(55)

第五章 結論

5.1 總結

在眾多可調功率大小的節能擇徑演算法中, RNG和大部份演算法不 同之處在於它是一個分散式的演算法,只需要周遭區域的資訊,不需要額 外的控制封包來取得全域資訊,因此可有效的減少能量消耗,本論文將其 加入剩餘電量之考量提出了兩個分散式的演算法---RNGF和MRNG,在降 低能量消耗之餘,更能維持廣播路徑之穩定性及降低在傳輸時因多重跳躍 所造成的延遲 。

5.2 未來工作

在能量有限的無線隨意網路中,如何節約能源一直都是一個重要的課 題,而本論文所提出的兩個方法經實驗模擬後證明其各自的優點,卻也有 些難以取捨的問題如消耗能量和廣播延遲的問題,因此希望能在兩者兼顧 的情況下改良我們所提之方法,使其成為具高傳輸速度、高穩定度且節約 能源之演算法。

隨著MANET技術逐漸成熟,使用者行動上網的需求也逐漸增加,本論 文所提之分散式演算法恰好適用於此環境,然而要將本論文所提之方法應 用至此環境中尚有許多未考慮到的問題需改善,如何花費最少的額外成本 以解決這些問題,也是未來發展需注意的地方。

數據

圖 1-2  無線隨意網路

圖 1-2

無線隨意網路 p.12
圖 2-5  RNG 調整功率暨傳輸路徑示意圖

圖 2-5

RNG 調整功率暨傳輸路徑示意圖 p.21
圖 2-7  RNG

圖 2-7

RNG p.22
圖 3-3  MRNG1

圖 3-3

MRNG1 p.28
圖 3-6  RNG-R

圖 3-6

RNG-R p.30
圖 3-8  MRNG1-R

圖 3-8

MRNG1-R p.31
圖 4-2  總節點數對重播節點之影響-Case 1(移除後)  在Case 2中,由圖  4-3和圖  4-4可以看出趨勢大致上和Case 1相近,但 在傳輸距離較大覆蓋面積較高時,未減少冗餘重播時RNGF和MRNG1的重 播節點數目是很接近的,而做完減少冗餘重播的動作後,MRNG1比RNGF 可以更有效的降低其廣播節點的數目。  圖 4-3  總節點數對重播節點之影響-Case 2 050100150200250300350400450300 350 400 450 500 550 600 650 70

圖 4-2

總節點數對重播節點之影響-Case 1(移除後) 在Case 2中,由圖 4-3和圖 4-4可以看出趨勢大致上和Case 1相近,但 在傳輸距離較大覆蓋面積較高時,未減少冗餘重播時RNGF和MRNG1的重 播節點數目是很接近的,而做完減少冗餘重播的動作後,MRNG1比RNGF 可以更有效的降低其廣播節點的數目。 圖 4-3 總節點數對重播節點之影響-Case 2 050100150200250300350400450300 350 400 450 500 550 600 650 70 p.35
圖 4-5  總節點數對平均節點消耗能量之影響-Case 1  圖 4-6  總節點數對平均節點消耗能量之影響-Case 1(移除後) 5060708090100110120300 350 400 450 500 550 600 650 700

圖 4-5

總節點數對平均節點消耗能量之影響-Case 1 圖 4-6 總節點數對平均節點消耗能量之影響-Case 1(移除後) 5060708090100110120300 350 400 450 500 550 600 650 700 p.37
圖 4-29  總節點數對總控制封包數量之影響-Case 1(移除後)  由圖  4-30可以看出在Case 2中,RNGF由於上述原因,故控制封包總 數還是相對較高的,而且在此Case中節點的傳輸距離較大,覆蓋率較高, 因此用來減少冗餘重播的控制封包數量隨著總節點數增加而快速增加。  圖 4-30  總節點數對總控制封包數量之影響-Case 2(移除後) 0200400600800100012001400160018002000300 350 400 450 500 550 600 650 700Cont

圖 4-29

總節點數對總控制封包數量之影響-Case 1(移除後) 由圖 4-30可以看出在Case 2中,RNGF由於上述原因,故控制封包總 數還是相對較高的,而且在此Case中節點的傳輸距離較大,覆蓋率較高, 因此用來減少冗餘重播的控制封包數量隨著總節點數增加而快速增加。 圖 4-30 總節點數對總控制封包數量之影響-Case 2(移除後) 0200400600800100012001400160018002000300 350 400 450 500 550 600 650 700Cont p.53