• 沒有找到結果。

題目:無線感測網路中發展低碰撞機率的 Flooding 機制

N/A
N/A
Protected

Academic year: 2022

Share "題目:無線感測網路中發展低碰撞機率的 Flooding 機制 "

Copied!
51
0
0

加載中.... (立即查看全文)

全文

(1)

中 華 大 學

碩 士 論 文

題目:無線感測網路中發展低碰撞機率的 Flooding 機制

系 所 別:資訊工程學系碩士專班 學號姓名:E09102014 柳碧芳 指導教授:嚴力行 博士

中 華 民 國 九 十 三 年 七 月

(2)

誌謝

時光飛逝,歲月如梭,二年的學習生涯很快就過去了。感謝我的論文指導教 授嚴力行 博士,由於您的耐心指導,使得我不僅在無線通訊領域的專業能力上 突飛猛進,更培養了我正確的研究態度與方法,使得本篇論文得以順利產生。

感謝口試委員俞征武教授、王讚彬教授、翁永昌教授,由於你們的指導與肯 定,使本篇論文更加完備。

感謝同窗二年的伙伴葉澤蓗、官淑芬,由於你們的陪伴、鼓勵,及在課業上 的切磋與分享,使我度過許多學習上的難關。也由於大家彼此的加油打氣,使我 得以在課業與事業兩頭忙碌的情況下,兩頭兼顧,在職生的辛苦,只有你們清楚。

謝謝同學蔡銘洲、劉立群、曾永稜,由於你們的協助,提供我許多實用的資 訊,讓我在工作之餘,亦能充分掌握學習領域的最新資訊。

謝謝我最愛的老婆,這二年來我周旋於課業與工作間,無暇顧及家庭,若不 是你的充份體諒與包容,全心全力支持我完成學業,今日我難有此成就。

最後感謝生我、育我的父母,由於你們給我的無盡的愛,陪我走過人生每一 個不同階段,使我得以成長茁壯。今日我若能有任何一分一毫的成就,那完全要 歸功於你們。

今日本篇論文能順利完成,得益於太多人的幫忙,特別是工作上的伙伴,由 於你們的幫忙,在每一個關鍵時刻給我必要的協助,使我能抽出時間應付課業上 的需求。

我想畢業不是結束,只是另一個學習的開始。從今天開始,我將帶著老師及 學校給我的一切,回饋給社會國家。我相信以我在研究生生涯所培養的專業能 力,必能對國家社會有所貢獻,並為母校增光。

(3)

摘要 ...7

1、簡介 ...9

2、相關研究 ...12

3、碰撞分析 ...20

3.1、隱藏節點形成原因探討

...20

3.2、隱藏節點所造成碰撞分析

...21

3.3、鄰居節點所造成的碰撞分析

...22

3.4、使用延遲策略減少碰撞

...26

4、模擬實驗及結果 ...29

4.1、模擬環境

...29

4.2、模擬結果

...29

5、結論 ...37

參考文件 ...38

附錄 A:GLOMOSIM (GLOBAL MOBILE INFORMATION SYSTEM SIMULATOR) ...39

A.1. 簡介

...39

A.2. PARSEC (P

ARALLEL

S

IMULATION

E

NVIRONMENT FOR

C

OMPLEX

S

YSTEM

)

...39

(4)

A.3. G

LO

M

O

S

IM

P

ROTOCOL

S

TACK...40

A.4. 使用 G

LO

M

O

S

IM...40

A.5. G

LO

M

O

S

IM

的運作架構

...41

A.6. M

ESSAGE

P

ARAMETERS

(訊息參數)

...41

A.7. E

VENT SCHEDULING...41

A.8. 新增模組

...42

A.9. F

LOODING

模組設計

...43

A.10. 其它

...43

附錄 B (GLOMOSIM 參數設定檔說明) ...44

B.1. S

IMULATION TIME

(模擬時間)

...44

B.2. S

EED

(亂數種子)

...44

B.3. 網路拓樸

...44

B.4. N

ODE PLACEMENT

(節點的部署方式)

...45

B.5. M

OBILITY MODELS

(移動模式)

...45

B.6. P

ROPAGATION MODELS

(傳播摸式)

...46

B.7. P

ROMISCUOUS

-M

ODE...47

B.8. R

ADIO MODELS

(無線電傳收模式)

...47

B.9. S

TATISTICS

(統計)

...47

B.10. GUI

...48

B.11. 新增參數

...48

附錄 C(FLOODING 模組設定) ...49

(5)

1. 應用層(A

PPLICATION LAYER

)

...49

2. 網路層(N

ETWORK

L

AYER

)

...50

3. 無線電層(R

ADIO LAYER

)

...51

(6)

圖目錄

圖 1.1:隱藏節點數量與節點數量及傳輸半徑的關係圖 --- 10

圖 2.1:隱藏節點所導致的碰撞原因 --- 18

圖 3.1(a):兩節點間的傳輸半徑和小於直線距離 --- 20

圖 3.1(b):兩節點間的傳輸半徑和大於直線距離,但傳輸半徑小於直線距離 --- 20

圖 3.1(c):兩節點間的傳輸半徑大於直線距離 --- 20

圖 3.1(d):傳輸半徑 r 為正方形網路邊長的 0.7 倍 --- 20

圖 3.2:純粹由隱藏節點所引起的碰撞機率分佈圖 --- 21

圖 3.3:相同節點使用不同的傳輸半徑所涵蓋的鄰居節點狀況圖 --- 22

圖 3.4(a):兩個鄰居節點的最大交集區塊 --- 23

圖 3.4(b):兩個隱藏節點的最大交集區塊 --- 23

圖 3.4(c):隱藏節點最大交集區塊之分解圖 --- 23

圖 3.5(a):任意兩個鄰居節點的可能交集區塊。 --- 24

圖 3.5(b):任意兩個鄰居節點的可能交集區塊分解圖 --- 24

圖 3.6(a):任意兩隱藏節點最大交集區塊 --- 24

圖 3.6(b):任意兩隱藏節點交集區塊之分解圖 --- 24

圖 3.7(a):理想排列下的網路拓樸 --- 26

圖 3.7(b):理想排列下的封包傳播 --- 26

圖 3.8:相同延遲時間範圍下,每個節點起始發送時間的落點分佈 --- 28

圖 3.9:不同延遲時間範圍下,每個節點起始發送時間的落點分佈 --- 28

圖 3.10:理想情況下,增加延遲時間的踫撞情形趨勢圖 --- 28

圖 4.1:隱藏節點分佈圖 --- 30

圖 4.2:由隱藏節點所導致的碰撞數量分佈圖 --- 30

圖 4.3:網路整體碰撞數量分佈圖 --- 31

圖 4.4:由鄰居節點所引起碰撞數量與由隱藏節點所引起碰撞數量之比值 31 圖 4.5:不同延遲時間的碰撞數量分佈圖 --- 31

圖 4.6:增加延遲時間所導致的整體傳送時間趨勢圖 --- 32

圖 4.7:不同網路拓撲下,增加延遲時間對到達率的影響 --- 33

圖 4.8:不同網路拓撲下,增加延遲時間對封包傳送到達率的影響 --- 33

圖 4.9:節點具移動能力情形下,在不同網路拓撲中,增加延遲時間對碰撞數量 的影響--- 34

圖 4.10:節點不具移動能力情形下,在不同網路拓撲中,增加延遲時間對碰撞 數量的影響--- 35

圖 4.11:節點具移動能力情形下,在不同網路拓撲中,增加延遲時間對封包傳 送到達率的影響--- 35 圖 4.12:節點具移動能力情形下,在不同網路拓撲中,增加延遲時間對到達率 的影響

(7)

摘要

隨著微機電技術的發展與無線傳輸技術之進步,無線網路的應用範圍日見 普 及 , 無 線 感 測 器 網 路 也 開 始 受 到 重 視 。 無 線 感 測 器 網 路 (Wireless Sensor Networks)是由少數的無線資料收集器(Sink)以及數量龐大的感測器(Sensor)所組 成的網路系統,而元件之間則採用各種無線通訊方式進行通訊,如無線電波、紅 外線、光纖介質等)等,換句話說,我們可以隨意佈署感測器及無線資料收集器,

這可以省下可觀的佈線成本,而且佈建極為快速。

由於無線感測器在隨意分佈的情形下,每個感測器無法判定自己與其他感 測器的相對位置,因此感測器網路必須利用自我組態(Self-Organization)的協定,

在感測器之間自動發展出一個通訊網路,讓網路區域中所有感測器所感測的資 料,皆能透過自我組態所發展的網路,將資訊傳送到無線資料蒐集器。無線資料 蒐集器的功用則如同閘道器(Gateway),將感測網路的資料透過衛星、Internet 或 是其他傳輸媒介,傳送到後端的伺服器(Server),即應用程式或管理者手中。

由於無線感測器網路具有分散性、動態分佈及多步傳輸的特性,在訊息傳 送上會大量使用 Flooding。Flooding 是一種非常簡單的路由方法,它的作法是當 節點收到封包時,僅檢視是否為第一次收到,若是則廣播給自己的鄰居。這提供 一種簡單且可靠的機制,保證在網路具連通性的情形下,即使沒有路由表可用,

所有的節點仍然都能收到封包。但這特性又讓它變得不可靠且無效率,因為所有 節點在第一次收到封包時都要再轉送給自己的鄰居,不管廣播後是否還具有貢獻 度,且每個節點都要接收相同的封包多次再檢視重傳與否,對能量有限的感測器 而言,這並不經濟。再者肓目的轉送會佔據有限的共享頻寬,並伴隨產生大量的 碰撞,這又讓 Flooding 變得極不可靠。Flooding 的機制雖不完善,但在網路拓樸 變化很快,且資料傳送量不大的網路裏,使用 Flooding 仍比花費大量精力去維

(8)

護一份詳盡的路由表來得划算。

本文的主要目的在分析 Flooding 下,碰撞的形成原因及避免方法。我們發 現碰撞的成因可以分成鄰居節點及隱藏節點的影響二種。其中隱藏節點的形成與 傳輸半徑具有密切關係,我們發現隱藏節點數量的峰值,與傳輸半徑及網路區域 的邊長具有比例關係,經由模擬實驗證實,在一個正方形網路區塊中,當傳輸半 徑達到網路區塊邊長的 0.7 倍時,是隱藏節點數量的峰值。這表示適當調整傳送 半徑,可以有效避開因隱藏節點所造成的碰撞。我們也嘗試在 Flooding 加上延 遲時間的機制,並討論在增加延遲時間的情形下,對網路整體傳送完成的時間效 能之影響,以及如何選擇適當的延遲時間,以求得大量減少碰撞網路及整體傳送 完成的時間效能間之平衡點。

(9)

1、簡介

無線網路的萌牙,最早是由美國加州柏克萊大學(UC Berkeley)的一項研究 計劃,研究人員開發出一種體積很小(與一般衣服鈕扣大小相似)的感測器,稱之 為「智慧灰塵(Smart Dust)」,其採用微機電系統(MEMS)技術。由於這項計劃是 由美國國防部高等研究計劃局(DARPA)所資助,原先的目標是應用在軍事上。近 年來由於各式可攜式設備的普及,如 PDA、蜂巢式行動電話等的蓬勃發展,無 線網路的應用再度受到各界的重視。

無線感測器網路是無線網路的一個特殊領域,它具有分散性、動態且隨機 分佈、自我組織等特性,部份網路的節點甚至具有移動的能力。近年來由於無線 通訊和電子工業的技術提昇,使得發展低成本、多功能、微型化的感測器節點得 以實現。這些感測器節點由數百或更多的節點組成感測器網路,具有資料處理、

通信等功能,而且還具有快速佈建、容錯、自我組織等特性。由於這些特性,使 得無線感測器網路可以應用在許多方面。例如在軍事上可以做為指揮、控制、通 信、計算、情資、監視、搜索及目標追縱。又例如在醫療安全方面,感測器節點 可以用來監視病人和回應突發狀況。其它方面的應用還有庫存管理、產品品質管 理、災區的監視等。在一個大範圍的網路環境中,考量到傳送能力的限制,節點 間會使用多步傳輸的方式傳送封包[AFS 02]。由於網路拓樸的不確定性,使得訊 息的傳遞必須大量藉助 Flooding 的方法,如 DSR、Gossiping[HHL 88]等。

Flooding 是一個很古老的技術,它不需要昂貴的拓樸管理和複雜的路由管理 演算法,在 Sensor Network 經常被使用做為路由之用。Flooding 的做法是在接收 一個封包之後,除非該封包已到達目的地或封包轉送已到達最大轉送上限,否則 一律直接轉送封包給自己的鄰居。然而 Flooding 的此種操作方式卻也可能導致 大量重複的封包及碰撞[HKB 99][NTC 99],如此對感測器網路有限的頻寬及能量 而言,均是相當大的浪費。

(10)

我們分析 Flooding 下產生碰撞的原因,發現即使在 CSMA/CA 的機制下,

仍然存在大量的碰撞,其產生的來源可以分成由鄰居節點及由隱藏節點產生兩 種。直覺上我們會覺得隱藏節點對碰撞的貢獻會比鄰居節點大,事實上在每個節 點的平均鄰居數不多的時候確實如此。但是當我們調整傳送半徑或節點總數量讓 每個節點的平均鄰居數不斷上昇後,情況開始改觀,我們發現鄰居對碰撞的貢獻 度同樣不斷上昇,直到節點的半徑覆蓋整個網路為止。我們追蹤碰撞的過程發現 當一個碰撞的產生是由於兩個彼此為鄰居的節點所造成時,其共同相鄰的鄰居都 會同時產生碰撞,當每個節點所擁有的鄰居數愈多時,效應顯得愈明顯。而隱藏 節點的形成具有一定規律性,在一個 L*L 的正方形網路中,當節點傳送半徑 r 在接近 0.7L 時,隱藏節點具有最大的數量,意即傳送半徑的設定值愈遠離這個 區間,則隱藏節點的數量愈少,一直到傳送半徑趨近 0 或覆蓋整個網路後,網路 上不存在任何隱藏節點。圖 1.1 說明隱藏節點的分存狀態,我們發現當網路大小 固定時,隱藏節點的數量最大值皆位於邊長的 0.7L 附近,不管節點的數量為何。

圖 1.1:隱藏節點數量與節點數量及傳輸半徑的關係圖

另外為了讓所有成因的碰撞皆能得到控制,我們在網路層的Flooding協定,

加入了延遲時間的機制,此機制有別於MAC層的Random Backoff,僅適用於此 Flooding Routing Protocol。我們比較不同的網路區域大小、節點數量及半徑下,

發現皆存在一個延遲時間屬於臨界值,只要過了這個臨界值,不論再增加多少延 遲時間所有的碰撞數量幾乎呈現常數一般,變化極少。我們也探討了增加延遲時 間的情況下,對Latency的影響。

(11)

本文其餘章節組織如下,第二章說明本文撰寫的背後原因及相關知識背景,

第三章介紹我們提出的方法,第四章分析實驗結果及數據,第五章是我們的結論。

(12)

2、相關研究

Akyildiz 等人[AFS 02],介紹許多網路層的路由協定,這些協定中有很多都 是使用Flooding的機制完成訊息傳遞。雖然Flooding有如此多的優點,但仍存在 不少問題。Akyildiz 等人將問題大致區分成三類:

重複性(Implosion)

一個節點可能在短時間內重複收到多個相同的封包。例如一個節點如果 有10個鄰居,則當它收到1個新的封包後,有可能在短時間內再收到9個 相同的封包。

重疊性(Overlap)

無線感測器網路主要目的在監測週遭受監測物的動態,但若二個感測器 過於彼此接近則回報的數值可能只有一份有意義,另一份是重複的資料。

盲目性(Resource blindness)

Flooding的做法就是在收到一個封包後,只要這個封包還沒到目的地且 轉送的次數也沒到最大限度,則會直接轉送給自己的鄰居,而不管鄰居 是否皆已收到封包,造成有限的頻寬及能量的浪費。

以上的描述沒有考慮到在Flooding這樣雜亂的傳送方式下,碰撞和競爭也是 一個重大問題。 Ni等人[NTC 99]提出一些方法解決重複性的問題,作者提到如 果盲目的廣播,將導致嚴重的重複、競爭和碰撞,它將此問題稱之為廣播風暴問 題。作者提出了五個減少重複的方法,分述如下:

機率法(Probabilistic Scheme)

這是最簡單的方法,當節點在收到一個Flooding的封包後,會依照預先 定義的機率值p,決定是否再傳播。如果p值過小時,可能造成封包抵達 率太低,很多節點無法收到封包;但當p值過大時,又因為節省的比率有

(13)

限,而無法改善因過多重複而影響的網路效能。當機率值為1時,相當於 flooding。

如何定出適當的p值,是個trade-off的問題,以下四個方法對此有所補充。

計數法(Counter-Based Scheme)

當一個節點試圖重播(Rebroadcast)一個封包時,在這個訊息實際開始傳 輸之前,有可能因佇列延遲(queuing delay)、進行退避(Back-off)或介質忙 碌的因素而延遲送出。在這段期間它可能再一次收到其它節點發出的相 同封包,這表示鄰近的節點已有人完成重播。假設這段時間節點聽到某 個訊息封包k次,則節點重播此Flooding封包所能提供的貢獻度會隨著k 的增加而降低,自然重播的機率也應降低。

距離法(Distance-Based Scheme)

此方法改以兩節點間的距離來做衡量。當兩節點間的距離小到某種程度 時,它再做重播的效益將極小,故此法挑選一個門檻值,當節點聽到多 個相同訊息後,取其中距離最小者與門檻值做比較。若距離小於等於此 門檻值,則取消重播。因為距離的取得,取決於所測量到的信號接收強 度,故該方法實際上是以信號接收強度做為判斷是否再廣播的依據。

位址法(Location-Based Scheme)

概念同Counter-Based Scheme,但使用AC值(額外覆蓋面積)大小做為重播 的機率值。所謂AC值是指傳送者與接收者間的面積差集,差集愈大,則 重播的貢獻度就愈大,當此差集面積小於一個門檻值時,則丟掉這個封 包,不予重播。其實際做法為事先定義好一個門檻值(A),當節點第一次 收到封包時,產生一個AC,並且比較這個AC是否小於A,若是則丟掉封 包,若否則進入等待階段,等待的時間長度可能是幾個亂數產生的時槽。

等待期間內每收到一個相同的封包,就表示傳送者已有增加,則須重新 計算AC,並且再一次比較A值,若依然沒小於A,則再進入等待。在等 待時間屆期後,若AC值依然大於A值,則重播此封包。

(14)

作者也提供了一個A值的評估方法。如果將多個傳送者的圓心點連起來 形成一個多邊形,當節點的位置是座落於此多邊形內時,其貢獻度會低 於座落於外部的狀況,且經由分析可以得知,座落於內部的最大貢獻度 僅有22%,如此可以做為一個判斷合理A值的依據。這個方法的座標系統 使用如GPS等裝置,以取得精確的節點位置資訊。

群集法(Cluster-Based Scheme)

它將網路所有的節點分成數量不等的群集,相同群集中以代號最低者做 為群集的首領(header),並以其代號做為群集代號。當網路拓樸改變時,

這個群集組成可以動態改變。在群集中如果某個節點可以同時相鄰另一 個群集的首領或節點,則此節點稱為閘道成員 (gateway member),與首 領一起做為整個網路通訊的骨架。所有首領涵蓋範圍的聯集應能包含所 有的節點,其它非擔任首領或閘道成員的節點可以進入Idle狀態直到網路 拓樸再度改變。當群集完成時,首領及閘道成員便可使用上述四種方法 進行通訊。

以上所提方法雖然可讓Flooding的運作更有效率,並且對到達率、重播節省 率、平均延遲等做了效能評估,但同樣未評估碰撞的影響,且門檻值的定義也顯 得模糊。

Cartigny 等人[CS 03]進一步改進了[NTC 99]的方法,它提出了一個新的 Probabilistic機制,可以更有效率的使用Flooding Protocol,減少不必要的封包傳 送,以及封包使用網路媒體資源的時間。作者指出在[NTC 99]中有二個缺點:

機率法(Probabilistic Scheme)

就一個單純的Probabilistic Scheme而言,只管機率而不管發送者與接收者 間的距離的做法是不妥的,因為此狀況下的重播不見得有很高的貢獻度。

距離法(Distance-Based Scheme)

此方法具有很高的到達率,但問題在於只要給予的距離大於門檻值,則 不管目前已重播幾次,依然會繼續廣播,如此造成大量的冗餘封包。

(15)

對此他結合兩者的優缺點,提出一個新的方法,共分五種模式:

模式1:簡單的機率方法 (Simple Probabilistic Scheme)

模式1是一個簡單的機率機制,他是模式2、3、4、5的基本架構。

模式2:以密度判別機率方法(Density Aware Probabilistic Flooding) 模式2延伸模式1的機率機制,但增加使用密度的觀念。但這模式中節點 需要有環境察覺的能力,它的做法是由每個節點定期的發出HELLO Message,這是一個很小的封包,內含發送者的ID,用來通知鄰居自己的 存在。接收者藉由此封包察知週遭鄰居的存在,並可計算出網路的密度,

再使用密度決定機率公式

n

p

= 。此處n表示網路密度,作者認為機率應

k

與密度呈反比,所以n放在分母;另外k則表示期望的到達率,k值愈大,

到達率愈高。

模 式 3 : 邊 界 傳 輸 機 制 的 機 率 方 法 (Border Retransmission Based Probabilistic Flooding)

模式2的方法雖然簡單,卻存在一個缺點,就是網路必須是均勻分佈的,

如此才能算出密度及代表到達率的常數k。對此作者提出了模式3,希望 能更精準的決定機率值。作者發現如果讓愈靠近傳送者傳輸邊緣的節點 做重播,則重播的貢獻度愈大。因此在傳送封包時,必須在封包內加入 傳送者自己的鄰居清單,藉由比較接收者與傳送者的鄰居關係值,可以 知 道 接 收 者 靠 近 傳 送 者 邊 緣 的 程 度 , 此 值 可 以 表 示 成

dest sur

dest src

dest src

N N N

N

N N

∩ +

= ∩

µ

。其中μ表示接收者靠近傳送者傳輸邊緣的

程度,Nsrc為傳送者的鄰居集合,Ndest為接收者的鄰居集合。當μ取得後,

節點再以μ為參數,決定機率的值,其關係式為

α µ

σ

α

σ +

= −

M

p A

。其中

A跟α分別表示機率的最大值與最小值;σ是當p隨著μ增加的而提昇 時,機率值變化的曲線,當

σ

為1時,p與μ呈線性關係;但p>1或p<1時 為指數關係;M為常數。

(16)

模式4:以密度為基礎的邊界傳輸機制之機率方法 (Density Aware and Border Node Retransmission Based Probabilistic Flooding)

模式4是模式2及模式3的結合,主要在將模式3中找尋邊界節點的觀念,

再加入區域拓樸即密度的觀念,將模組3所導出的公式中的機率範圍以模

式2中所導出的密度公式取代,其公式為

α µ α

σ

σ +

= −

M n k

p

。式子中

n k

模式2所使用的機率值,在此做為最大可能機率值使用。

模式5:以密度為基礎的邊界傳輸機制之機率方法配合鄰居消去法 (Density Aware and Border Node Retransmission Based Probabilistic Flooding with Neighbor Elimination)

前面幾個機率方法不保證所有的節點都能接收得到封包。模式5提供了一 個鄰居消去法的演算法去解決這個問題,它在第一次收到一個新的廣播 封包(內含封包發送者的鄰居清單)時,產生一個包含自己所有鄰居清單 的表格,爾後紀錄每一次收到的相同廣播封包,並定期的檢查所收到的 廣播封包中,是否有鄰居編號與自己的鄰居清單表相同的,若有則去除。

等待一定的時間後,若鄰居清單表仍然不是空的,則表示應該重播封包。

另外對於要等待的時間長度也必須有明確的定義,因為延遲時間太短,

則節點沒有足夠時間去搜集資訊做為鄰居消去法的判斷依據,且易產生 大量碰撞;但若時間太長,則無法快速回應封包傳遞的要求。作者提出 一個簡易的作法,其表示式為Tmax +

T

alea*

x

。在式子中,Tmax表示封包傳 送前的固定等待時間;Talea * x的作用類似MAC層的random backoff,x為 介於0與1間的亂數,而Talea為可能的最大值。

Zuniga 等人[ZK 03]使用另一種觀點來思考有限資源的使用效能。這篇文章 主要考慮在一個大規模的無線感測器網路中,傳送半徑與平均傳送完成時間 (settling time)的關係,希望找到一個最佳化的傳送半徑,來降低平均傳送完成時 間。平均傳送完成時間指的是一個節點收到封包的時間和成功轉送這個封包所需

(17)

時間的加總,影響的層面可以分成二個部份來說:

接收時間(Reception time )

當傳輸半徑很大時,其覆蓋面積可能包含所有的節點,因此封包可能只 需要一次轉發便能送到所有節點,且接收時間也會很接近。但如果傳輸 半徑很小時,一個封包要傳到節點,可能要經過很多次跳躍才能抵達,

故其接收時間就會相對較長。因此接收時間跟傳送目的地的距離成正 比,跟傳輸半徑成反比,所以由傳送距離除以傳輸半徑的比值,可以找 出跟接收時間的比例關係。

競爭時間(Contention time )

同樣當傳輸半徑很大時,其覆蓋面積可能包含很多的節點,在網路頻寬 有限的情況下,競爭情況就會增加;但如果傳輸半徑很小時,一個節點 的覆蓋範圍內所包含的節點就相對較少,自然競爭機會也會減少。

競爭情況跟鄰居的數量有關,可以想成它就是鄰居數量的函數。而要求 得鄰居數量平均值的話,必須分別考慮邊界效應(Edge effect)及指數退避 處理效應(Exponential back off effect)二個部份來分析。邊界效應主要在說 當感測器覆蓋的範圍不見得全部都在網路區域裏時,其擁有的鄰居數目 應會低於所有節點的平均值。覆蓋區域與傳輸半徑間的關係如下所述:

令從原始發送節點到最接近的網路邊緣距離為r,則傳輸半徑介於0 至r的節點之平均鄰居數目可以用其覆蓋面積佔網路的比例來換算。

令從網路區域的邊緣開始延伸,到節點的覆蓋範圍可以涵蓋整個網 路區域為止的傳輸半徑為r,則如此情況下的節點平均鄰居數目可以 用傳輸半徑除以網路區域的邊長求得。

第三種狀況覆蓋的範圍已是整個網路區域,故平均的鄰居節點即是 全部的節點。

所以傳輸半徑對接收時間而言是成反比,但對競爭時間而言則成正比。故 如何在保證網路連通性的前題下,找出一個最佳的傳輸半徑,讓平均傳送完成時

(18)

間最短以提昇網路效能,這是作者所希望解決的問題所在。

指數退避處理效應是說,當傳送媒體忙碌時,因為指數退避處理效應的原因,

鄰居的數量與競爭時間並不是呈線性關係。作者找到鄰居數量與競爭時間的關 係,其數學式為

f

(

m

)=

j

log2(

m

)。在式子中m表示鄰居的數量,j為一常數。

作者在這篇論文中藉由傳輸半徑與接收時間、傳送時間的關係,欲找出最佳 傳輸半徑以求得最短平均傳送完成時間(settling time),達到提昇網路效能的目 地。但作者沒考慮到碰撞同樣也會影響平均傳送完成時間。

目的端 C 碰撞

來源 B 來源 A

圖 2.1:隱藏節點所導致的碰撞原因

碰撞主要發生在網路處於閒置的狀態時,如果有節點在此時發送第一個封 包,則所有收到此封包的鄰居都會想要立即重播這個封包。如果隨機延遲 (Random backoff)的範圍太小,這些節點將可能在相同的時間發出訊息,而造成 彼此的干擾,導致接收的失敗。

資料碰撞的一個可能原因來自於隱藏節點。所謂的隱藏節點是指兩個彼此不 為鄰居的節點A、節點B,卻擁有相同的鄰居節點C,如圖2.1所示。如果節點A、

節點B傳送封包給節點C的時間有重疊,則因為彼此不為鄰居,使用CSMA的機 制無法判定是否有人正在與節點C通訊,而無法避免碰撞的發生。

由於IEEE 802.11的廣播機制下沒有ACK,所以無法偵測到碰撞的發生,已經 形成的碰撞會持續到傳輸結束為止,導致更多資源的浪費。此外IEEE 802.11的 廣播機制也沒有RTS/CTS,使得隱藏節點成為嚴重的問題。

(19)

由於Flooding的機制是以廣播的方式傳遞封包,所有相鄰的節點都會在相近 的時間傳送封包,在網路頻寬有限的情況下,發生碰撞是不可避免的,加上隱藏 節點的存在,讓碰撞益形嚴重。

本篇重點在於找出隱藏節點的形成與網路拓樸的關係,以降低因隱藏節點所 導致的碰撞原因。另外在網路層的路由協定中加入延遲時間,並比較在不同網路 拓樸的情況下,延遲時間與碰撞降低的關係,以找出可以具體描述此現象的機制。

(20)

3、碰撞分析

碰撞是Flooding下所存在的一個很大的問題,要解決這個問題必須先探討其 形成原因,再針對原因提出因應方法。

3.1、隱藏節點形成原因探討

隱藏節點的存在是探討碰撞成因不可或缺的一環,直覺上會覺得隱藏節點的 數量應與密度成正比,這種說法是對的,但若我們改變量測方式,使用一個正方 形的網路區域,將網路區域大小及節點總數量固定,然後觀察在不同傳輸半徑下 隱藏節點的變化,可以發現一個現象,即隱藏節點的數量會隨著傳輸半徑的加大 而遞增,一直到傳輸半徑達到網路邊長的7/10時達到高峰期。之後隨著傳輸半徑 的再加大而逐次遞減,一直到傳輸半徑涵蓋整個網路時,隱藏節點的數量為0。

圖 3.1(a):兩節點間的 傳輸半徑和小於直線 距離。

圖 3.1(b):兩節點間的傳 輸半徑和大於直線距 離,但傳輸半徑小於直線

r

L

圖3.1(d):傳輸半徑r為正 方形網路邊長的0.7倍。

圖 3.1(c):兩節點間的 傳輸半徑大於直線距 離。

(21)

此種分佈狀態的原因為當傳輸半徑還很小時,任意兩節點的傳輸半徑和可 能小於兩者間的直線距離,涵蓋範圍存在交集的機率很小,自然不容易有隱藏節 點存在,如圖 3.1(a)所示。但隨著傳輸半徑的增加,任意兩節點間的傳輸半徑和 大於兩者間的直線距離的機率增加,其涵蓋面積存在交集的機率也開始增加,但 因為傳輸半徑可能仍小於兩者間的直線距離,故兩者無鄰居關係,且如果兩者涵 蓋面積的交集區有節點分佈的話,則此兩者就是那些節點的隱藏節點,如圖 3.1(b) 所示。等到傳輸半徑增加到了某一個程度後,任意二節點間的直線距離小於傳輸 半徑的機率開始增大,因此形成隱藏節點現象的機率開始減少,如圖 3.1(c)所示。

前面提過在一個邊長為L2的正方形網路區域中,當節點傳輸半徑達到0.7L 時,隱藏節點數量達到高峰,如圖3.1(d)所示。如果以傳輸直徑來看,1.4L的長 度相當接近正方形區域的對角線長

L

2 +

L

2 ≅1.414

L

,意即當節點傳輸半徑達到

0.7L時,如果節點位於網路中心,則節點的涵蓋範圍已近乎整個網路,所以傳輸

半徑長度過了此點後隱藏節點開始大量減少,直到傳輸半徑為1.414L,網路上任 何位置的節點涵蓋面積皆能包含整個網路時,隱藏節點數量為0。

3.2、隱藏節點所造成碰撞分析

如果隱藏節點是碰撞形成的主要因素之一的話,則由隱藏節點所引起的碰撞 其數量的分佈應與隱藏節點的分佈一致。果真如此,我們就可謹慎選擇適當的傳 輸半徑以避免大量由隱藏節點所引起的碰撞。圖3.2顯示全由隱藏節點所引起的 碰撞機率分佈圖。

節點數量 傳輸半徑

圖 3.2:純粹由隱藏節點所引起的碰撞機率分佈圖。

(22)

3.3、鄰居節點所造成的碰撞分析

在IEEE802.11的MAC層中雖然已使用了CSMA/CA的機制去做碰撞預防,但 如果節點的隨機延遲時間範圍太小且網路密度較大的情形下,則碰撞仍然可能大 量發生。鄰居節點密度愈高,碰撞機率也就愈大。

圖 3.3:相同節點使用不同的傳輸半徑所涵蓋的鄰居節點狀況圖。

圖3.3中顯示兩個相鄰節點(實心圓點),在設定不同的傳輸半徑下,所涵蓋的 節點數之狀況圖,明顯看得出若使用較大半徑,則不但自己的鄰居(斜線圓點)數 量大幅增加,連傳輸半徑交集處的節點(兩節點涵蓋範圍的交集區域)也是明顯的 增加。如果傳輸半徑不變改成調整密度也會得到相同的結論。

根據以上的模式我們可以知道,在CSMA/CA的機制下雖然具有一定防範碰撞 的能力,但在每個節點平均鄰居數很多的情況下,只要產生一次的碰撞就會對大 量共有鄰居節點造成碰撞。從Yen等人[YY 03]的研究成果中,我們可以藉由

m l r

n, , , 得知目前所有的節點應有的平均鄰居數,n是網路節點的總數、r是傳輸 半徑、l,m是一個矩形區域的長與寬。且隨著參數的調整增加,鄰居數量的成長 是呈指數形態。









 − − +

2 2

2 3 3

4

3 4 3

4 2 1 2

) 1 (

l m

ml r mr lr

n r

n

π

(23)

反之隱藏節點的則無此特性。我們可以從另一個角度去探討鄰居與隱藏節點 對碰撞的貢獻度有何不同。從圖3.4(a)可以看出,兩個相鄰節點間可能的最大交 集區間就是完全重疊,所以圖中僅呈現一個圖形,他們最大的重疊面積是 。 而圖3.4(b)顯示的是隱藏節點間可能的最大交集區間,基本上從圖形可以看得出 來當兩個互為隱藏節點的節點非常接近時,其傳輸半徑的邊緣非常接近節點中 心,因此我們假設當傳輸半徑到達節點中心時,為隱藏節點可能的最大交集區 塊。從幾何原理可以得知,兩個隱藏節點的圓心距離恰為半徑,而從圓心到兩個 傳輸半徑所形成的圓圈交會點,又恰為半徑,由此可以得知此為等邊三角形,每 個角都是

r

2

π

π

3,我們可依此算出交集區塊的大小。圖3.4(c)是圖3.4(b)的分解圖,

我們可以此圖為基礎,算出它的交集區塊,下列公式顯示它的計算結果。

圖 3.4(b):兩個隱藏節點的最大交集區塊 圖 3.4(a):兩個鄰居節點的最大交集區塊

3.4(c)的扇形面積 =

圖 3.4(c):隱藏節點最大交集區塊之分解圖

2

6

r π



π

圖 ………….○1

圖3.4(c)的三角形面積 = 0.433 2 2

cos6

r r

r

 ≅

 

 

 

3.4(c)的斜線區塊 ○1 - 2 ≅0.091

r

2………

………..○2 圖 = ○2 = 2 0.433

6

r

r π

圖3.4(b)的隱藏節點最大交集區塊=

r

2 ≅0.39

π r

2

…..○3 2*○2 + 4 * ○3 = 1.228

(24)

從上式中可以看得出來,兩個隱藏節點的最大交集區塊只有0.39

π r

2,但兩相 鄰節點間的最大交集區塊卻可能高達

π r

2,而碰撞就是發生在交集區塊裏。也就 是說

均 交 集 面

任意二個相鄰節點在相同時間發送封包,所可能產生的最大碰撞數目為 m

π r

2,m在此表示整體網路的節點平均密度。而任意二個隱藏節點間在相同時間 發送封包,所可能產生的最大碰撞數目則為0.39m

π r

2。兩個結果顯示由相鄰節 點所產生的碰撞數量可能大於由隱藏節點所產生的碰撞數量。

我們接著分別求取任意兩相鄰節點間的平均交集面積以及任意兩隱藏節點間 的平均交集面積,以求得更精確的論述,分述如下。

3.5(a):任意兩個鄰居節點的可能交集 塊。

圖 3.5(b):任意兩個鄰居節點的可能交集 區塊分解圖。

圖 區

積 如 圖 3.5(a)(b) 所 示 , 其 結 果 為 對 於 任 意 兩 相 鄰 節 點 間 的 平

2

2 3 3 1.843

r





π

r

4  ,已由Yen等人[YYC 04]等求出。

3.6(a) 3.6(b)

圖 :任意兩隱藏節點最大交集區塊 圖 :任意兩隱藏節點交集區塊之分 解圖

(25)

任意兩隱藏節點間的平均交集面積如圖3.6(a)(b)所示橄欖形區塊,由圖3.6(b) 可以看出此區塊可以用兩個扇形區塊減掉一個菱形區塊求得。扇形區塊的面積公 式為

r

2

2

θ

,θ由0到 3 2

π

間變化。菱形區塊等於四個三角形區塊的組合,而三角

形區塊的面積公式為 ( ) 2 1

x y

2 ,其中y可表示為

2

2 



x

r

2 ,所以菱形區的面積為

2

2 2

2

1 

x

2

x

4 

y

=

x r

−

x的值由r到2r間變化

述說明我們可以求出隱

2 − 2

π

, 。經由上

藏節點間的平均交集面積計算式為

r x dx r

d x r

r

r

2

2 3 2

2

0 2

2 3

2 π

θ θ

= r

r x r x dx

d r

r 3 2 2 2

2

0 2

4 1 1

2

3 π

θ θ π

上式可分成左右二式分別求解,其中左式解如下

( )

2 2

2 2 3 2 2 2

2 0 3 1

3r

θ

r

π π

r

π

=

 

  −

=

=

0 4 3 3

2

2

π π

右式解如下:

使用代數代換,令 2 2 4 1

x r

u

= − ,則

du xdx

2

−1

= ,xdx=−2du

當x=2r時,u=0;當x=r時, 2 4 3

r u

=

4 3

3 3 2 3 4 2

2

r

r

r

r  

 

。如此我們可以改寫右式為

( )

2 2 2

3 2 2

3 0

4 2 0 3

866 . 3 0

0 3 4 2

2

2

r r r

u r du

u

= ≅







− −

− =

− =

隱藏節點間的平均交集面積為左式減右式為

2

2 3 0.181

r r

≅



π

− 2 3 

從前面的推導可以得知任意兩相鄰節點間的平均交集面積1.843r2明顯大於任 意隱藏節點間的平均交集面積0.181r2。足見網路中相鄰節點所造成的碰撞數量大

(26)

於隱

3.4、使用延遲策略減少碰撞

從前面分析中我們得知碰撞產生的最大原因為鄰近節點在相近的時間發送電 波訊號給同一接收節點,造成接收節點無法清晰判讀訊號內容。直覺上我們我們 可以

,所以將碰撞數量想成時間的函數,表示為 。

做排程 作,

圖 3.7(a):理想排列下的網路拓樸 圖 3.7(b):理想排列下的封包傳播

藏節點所造成的碰撞數量。

增加節點重播封包之延遲時間,如此可以明顯的減少碰撞,但增加延遲時間 會拉長網路從發出第一個封包到全部節點重播完畢的整體傳送時間,所以如何找 出最佳的延遲時間,以求得大量減少碰撞並且不會影響整體傳送時間的平衡點,

是我們的研究重點。

我們分析當網路區域大小、節點數量、傳送半徑等因素固定時,決定碰撞數

量大小的只有時間而已

C

=

f

(t)

就應用面而言,我們考量在實際的運作中由於感測器網路的特性,我們無法 在低成本的情況下充份掌握網路拓撲的改變,自然無法以理想的方式 的動 所以實際採行的方式必是隨機決定節點目前所使用的延遲時間。所以當延遲 很短時,碰撞情形會急驟的增加。現在我們假設一個比較特別的情況,所有的節 點呈棋盤狀規則排列,且同一個虛線菱形框的節點會在相近的時間傳播封包,這 表示此種網路拓撲產生碰撞的機率極大。圖3.7顯示在這個假設前題下的網路拓 樸。

(27)

在 (a)中,每一個格子的邊長等於節點的傳輸半徑,中心節點是第一個發 封包的節點,而這封包會被最內圈的菱形框所經過的節點接收,在Flooding的 機制

圖3.7(b)顯示上述前題中,

封包所影響之網路節點。可以看得出來在內、外二層的虛線菱形框中,除了外層 虛線

上述式子中的b表示傳輸半徑為方格邊長的倍數,當b持續增加的時候,所影 響的節點數量會快速成長,同樣的,

發生

中,產生碰撞的機率也相對提高不少。

圖3

圖3.7 出

下,只有發送者外圈的虛線菱形框所經過之節點會做重播的動作。我們可以 簡單推導出每一個虛線菱形框的節點數,如下列公式所示,i表示。從中心節點 開始所經過的虛線菱形框序號,m為該虛線菱形框的所涵蓋的節點個數。



=

<

=

= 1, 1 0 ,

0 )

(

i

i i

f m



>

−1), 1 (

4

i i

當某一層虛線菱形框在幾近相同的時間裏,發出的

菱形框的四個頂點沒有碰撞外,其餘全部都有碰撞。這只是傳輸半徑為一個 方格邊長的情況,如果我們加長傳輸半徑為二個方格邊長,則影響的節點立即驟 增,我們整理它的關係式如下。

( ) ( )

( )

+ +

=

=

g i f i a f i a m

()

= b

a 1

除最外圈的四個頂點外,其餘幾乎都有可能 碰撞,這是一個相當嚴重的問題。

現在我們嘗試以增加延遲時間的方式來減少碰撞數目,我們知道當延遲時間 很短時,節點封包發送起始時間會非常集

.8(a)(b)是兩個極端的案例,3.8(a)它使用的隨機選取延遲時間範圍為10ms,所 以大部份的節點起始封包發送時間集中在50ms內。而圖3.8(b)它使用的隨機選取 延遲時間範圍則為160ms,因為有相對較廣的時間選取範圍,所以節點起始封包 發送時間也大致平均分佈在250ms中。這顯示當我們將延遲時間倍增時,可以預 期所有節點分佈在更分散的時間點發送封包,自然碰撞機會就會大幅降低。圖3.9

(28)

整理了在不同的延遲時間範圍裏,每個節點起始發送時間的落點分佈。從圖中可 以發現當延遲時間範圍較小時,節點集中在很短的時間內發送,自然發生碰撞的 機率很高。而延遲時間範圍較大時,節點發送時間則呈均勻分佈。另外從圖中可 以看得出來,當延遲時間範圍在150ms以上時,每個節點起始發送時間的落點分 佈幾乎呈常數變化,這讓我們在找尋最佳延遲時間範圍時,提供一個很好的判斷 依據。拫據以上分析,我們預期在增加延遲時間後,碰撞減少的變化幅度應是指 數的關係,其趨勢圖應如圖3.10所示。

圖 3.8:相同延遲時間範圍下,每個節點起始發送時間的落點分佈。(a)延遲時間範圍 10ms。

(b)延遲時間範圍 160ms。

(a) (b)

圖 3.10:理想情況下,增加延遲時間的踫撞情 形趨勢圖。

碰撞數量

圖 3.9:不同延遲時間範圍下,每個節點起始發送 時間的落點分佈。

(29)

4、模擬實驗及結果

4.1、模擬環境

我們比較不同大小但形狀為正方形的網路區塊,所有節點均勻分佈在整個網 路裏。節點傳輸半徑從 125m 開始到 2200m 為止,每 50 公尺為一個級距。節點 數目從 10 開始到 300 為止,每 10 為一個級距。延遲時間從 10ms 開始到 400ms 為止,以 10ms 為一個級距。我們使用 GloMoSim[10]做為我們的模擬工具。

我們在 GloMoSim 的 Network Layer 裏加入了一個 Flooding 模組。Flooding 的做法是當一個節點在收到封包後,會檢查封包的序號及來源位址,若封包是第 一次收到,則會傳送封包給所有的鄰居,否則直接丟棄。另外在重傳封包時,我 們也加入了延遲機制,以降低傳送過程中,產生碰撞的可能性。關於 Flooding 模組的詳細運作方式,請參閱附錄 A。

在 MAC 層我們使用 IEEE 802.11,頻寬設定 2Mbps,封包大小為 512bytes。

因為 Flooding 只有廣播封包,所以沒有 ACK 或 RTS/CTS 機制。

4.2、模擬結果

在圖 4.1(a)(b)為不同網路大小下隱藏節點數量與節點數目和傳輸半徑的關 係,如同分析時所說一樣,隱藏節點的峰值傳輸半徑位於網路區塊邊長的

L

10 7 處。另外從圖中可以觀察到一個現象,即不管網路拓撲如何變化,最大隱藏節點 數目只與節點數量有關,不同之處只有峰值所在的位置而已。

(30)

(a) (b) 圖 4.1:隱藏節點分佈圖。(a)網路區域大小 500m2 (b):網路區域大小 800m2

圖4.2(a)(b)為不同網路大小下,由隱藏節點所導致的封包碰撞數量與節點數目 和傳輸半徑的關係。由這些結果可以看出隱藏節點的數量與由隱藏節點所導致的 封包碰撞次數成正比

(a) (b)

圖 4.2:由隱藏節點所導致的碰撞數量分佈圖。(a)網路區域大小 500m2 (b):網路區域大小 800m2

(31)

(a)

(a) (b)

圖 4.3:網路整體碰撞數量分佈圖。(a):網路區域大小 500m2下 (b):網路區域大小 800m2

圖4.3(a)(b)顯示在500m2及800m2下整體網路的碰撞數量分佈圖。我們發現二 個與圖4.2(a)(b)類似的現象。第一個是碰撞數量隨傳輸半徑急驟昇高到一定值後 進入平緩階段。且時機相近於隱藏節點峰值所在的位置。第二是不管網路拓撲如 何改變,當節點數量相同時,最大的碰撞數目也大致相同。事實上所謂的相同還 是會隨著密度的下降而有所降低,但因調低幅度有限,故仍可說是相近的。

圖 4.4 由鄰居節點所引起的碰撞數量與由隱藏節點所引起的碰撞數量之比值。

圖4.4顯示的是由鄰居節點所引起的碰撞數量與由隱藏節點所引起的碰撞數 量之比值,從圖上可以看得出來,隨著傳輸半徑的加大,鄰居節點對碰撞數量的 影響迅速超越隱藏節點,

(32)

(a) (b)

圖 4.5 不同延遲時間的碰撞數量分佈圖。(a)每平方公里 192 個節點 (b)每平方公里 320 個節點

圖4.5(a)(b)顯示在增加延遲時間後,碰撞數量減少的情形。其趨勢就如我們預 測的一樣。從圖4.5(a)可以看出如果以延遲時間10ms為比較值的話,則當延遲時 間加到100ms後,碰撞減少的幅度達74%,但從110ms到200ms的碰撞減少量卻只 有最大值的12%,而從210ms開始一直到400ms更只有改善了5%,其餘約有9%的 碰撞值維持在常數狀態,不受延遲時間加長的影響。圖4.6(a)(b)為延遲時間加長 後,相對應延長的整體傳送時間,此時間指的是從來源節點發出封包後,到最到 後一個節點完成重傳的時間。經過不同實驗案例比較後發現,整體傳送時間大致 與延遲時間呈線性比例,且網路密度愈低的話,則線條斜率愈大,意即相同延遲 時間下,密度低的會比密度高的有更長的整體傳送時間。但密度相同的情況下,

僅改變網路的拓撲對整體傳送時間與延遲時間的比例變化影響是極小的。

(a) (b) 圖 4.6:增加延遲時間所導致的整體傳送時間趨勢圖。(a)每平方公里 192 個節點 (b):每平方公里

320 個節點

(33)

延遲時間對到達率的影響

0 20 40 60 80 100 120

1 4 7 10 13 16 19 22 25 28 31 34 37 40

延遲時間範圍(unit 10ms)

到達率

Region 500m * 500m Region 1000m * 1000m Region 1500m * 1500m Region 2000m * 2000m Region 2500m * 2500m Region 3000m * 3000m Region 3500m * 3500m

圖 4.7:不同網路拓撲下,增加延遲時間對到達率的影響。

圖4.7顯示增加延遲時間對到達率的影響。我們使用5個不同大小的網路區 塊,每個區塊中均勻分佈著300個節點,並設定所有節點使用的半徑均為300m。

我們對五個不同的網路拓樸,分別統計其在不同延遲時間範圍下對到達率的影 響。從圖中可以清楚的看得出來,影響到達率的只有密度,當密度夠高時,到達 率幾乎全是100%;反之密度較低時,其到達率亦維持在某一個常數值,不受延 遲時間增加的影響。

延遲時間對封包傳送到達率的影響

0 0.2 0.4 0.6 0.8 1 1.2

1 4 7 10 13 16 19 22 25 28 31 34 37 40

延遲時間範圍(unit 10ms)

封包到達率

Region 500m * 500m Region 1000m * 1000m Region 1500m * 1500m Region 2000m * 2000m Region 2500m * 2500m Region 3000m * 3000m Region 3500m * 3500m

圖 4.8:不同網路拓撲下,增加延遲時間對封包傳送到達率的影響。

圖4.8顯示在不同網路拓樸下,增加延遲時間對封包傳送到達率的影響。定義 為

數 網路

目加總 所有節點收到的封包數

封包傳送到達率

=

Link

從圖上可以看得出來,增加延遲時間可以減少碰撞,増加封包成功傳送的機 率。這看來雖然是一件好事,但在前面所提增加延遲時間對到達率並無影響的前

(34)

題下,増加封包成功傳送的機率等於讓每個節點要處理的重複封包數也增加了,

這對能量有限的感測器網路而言可能造成更多的浪費。但換另一個角度想,許多 Rouging的方法必須具備環境察覺的能力,它們使用的方法就是定期的廣播 HELLO Message,告知週遭節點彼此的存在,再據此決定下一步的動作,如SPAN 或Cartigny 等人[CS 03]的『以密度判別機率方法(Density Aware Probabilistic Flooding)』等。在這種需求下,所有節點所廣播的封包必須確保所有鄰居都有收 到。換言之,封包必須避免因碰撞等因素而遺失。

藉由本次實驗,我們可以決定適當的延遲時間,以提昇封包傳送到達率並顧 及Latency要儘量短的需求。因此對封包傳送到達率而言,在Fooding增加它雖是 缺點,但在此情境下,增加它則是優點。

此外考量網路上的節點可能具有移動的能力,我們針對三項重要的效能指標

『到達率』、『碰撞數量』及『封包傳送到達率』,做了實際的模擬測試。我們設 定網路上每個節點皆具有行動能力,其移動方式是在網路區域內隨意決定一點,

移動速度介於0~10(m/sec),且移至目的地後,停留30sec再繼續以相同方式移至 下一點。

不同延遲時間範圍對碰撞數量的影響

0 2000 4000 6000 8000

1 4 7 10 13 16 19 22 25 28 31 34 37 40

延遲時間範圍

碰撞數量

Region 500m * 500m Region 1000m * 1000m Region 1500m * 1500m Region 2000m * 2000m Region 2500m * 2500m Region 3000m * 3000m Region 3500m * 3500m

圖 4.9:節點具移動能力情形下,在不同網路拓撲中,增加延遲時間對碰撞數量的影響。

(35)

不同延遲時間範圍對碰撞數量的影響

0 2000 4000 6000 8000

1 5 9 13 17 21 25 29 33 37

延遲時間範圍

碰撞數量

Region 500m * 500m Region 1000m * 1000m Region 1500m * 1500m Region 2000m * 2000m Region 2500m * 2500m Region 3000m * 3000m Region 3500m * 3500m

延遲時間對封包傳送到達率的影響

0.5 1 1.5 2

封包到達率

0 1 4 7 10 13 16 19 22 25 28 31 34 37 40 延遲時間範圍(unit 10ms)

圖 4.10:節點不具移動能力情形下,在不同網路拓撲中,增加延遲時間對碰撞數量的影響。

圖9為節點具移動能力下,不同延遲時間範圍對網路碰撞數量的影響,而圖10 為節點不具移動能力下,不同延遲時間範圍對網路碰撞數量的影響。我們比較兩 圖發現,在節點具移動能力的情形下,平均每個節點的碰撞數量有昇高的趨勢。

Region 500m * 500m Region 1000m * 1000m Region 1500m * 1500m Region 2000m * 2000m Region 2500m * 2500m Region 3000m * 3000m Region 3500m * 3500m

圖 4.11:節點具移動能力情形下,在不同網路拓撲中,增加延遲時間對封包傳送到達率的影響。

圖4.11顯示在節點具移動能力的情形下,每個節點收到的封包數總和會超過 網路Link數,這在節點不具移動能力的情形下是不可能發生的。顯示節點具移動 能力的情形下,雖然每個節點收到的封包數增加,但也使得碰撞更加嚴重,這表 示因封包傳送而導致的頻寬資源及節點能量浪費也會更嚴重。另外圖4.12也顯示 在節點具移動能力的情形下對到達率影響,與圖4.7比較結果發現,原本因較低 密度而降低的到達率,在此都有相當的提昇,這與封包傳送到達率的增加有關。

(36)

延遲時間對到達率的影響

0 20 40 60 80 100 120

1 4 7 10 13 16 19 22 25 28 31 34 37 40

延遲時間範圍(unit 10ms)

到達率

Region 500m * 500m Region 1000m * 1000m Region 1500m * 1500m Region 2000m * 2000m Region 2500m * 2500m Region 3000m * 3000m Region 3500m * 3500m

圖 4.12:節點具移動能力情形下,在不同網路拓撲中,增加延遲時間對到達率的影響。

由以上的分析我們可以得知,節點具移動能力的網路,其封包的傳遞相對於 節點不具移動能力的網路是較容易的,因此對碰撞數量及到達率等效能指標的評 估勢必要有所調整。

由於我們的碰撞分析以節點不具移動能力的網路為主,對於具Mobility特性的 節點,在此我們僅針對觀察到的現象做一個簡單的分析比較,我們相信還有相當 多的因素是我們在此篇論文未考量進去的,這也是我們未來努力的方向。

(37)

5、結論

我們探討了不同的網路區塊大小、傳輸半徑和隱藏節點間的關係。我們發現 隱藏節點的數量大小存在一個峰值,出現在傳輸半徑為一個正方形網路區塊邊長 的

L

10

7 時。由隱藏節點所導致的碰撞數量也大致如此分佈。另外從整體的碰撞數

目趨勢圖也發現了類似的狀況,即在傳輸半徑達到

L

10

7 時,碰撞數量位於曲線圖

中的高原期。這樣的結果告訴我們在一個正方形的網路區塊中,只要傳輸半徑的 設定不要等於

L

10

7 ,就可以避開最大的碰撞數量,這提供了一個實際佈建感測器 網路的具體參考。

另外我們使用增長延遲時間的策略來減少碰撞數量,我們的模擬結果有助於 評估增加延遲時間對減少碰撞數量的貢獻度為何。我們可以在減少碰撞數量及不 增加整體傳送時間的前題下,找到最佳平衡點。在我們有限的知識裏,到目前為 止似乎還沒有人對此議題做如此深入的探討。

最後,由於我們的文章是限定在網路區塊為正方形、MAC層為IEEE 802.11 的情境下,對於其它不同的網路拓撲及MAC層的協定似乎仍有很多的不同因素 值得我們去探討,這也是我們未來努力的目標。

(38)

參考文件

[1] [JD 87]John Jubin, Janet D. Tornow, “The DARPA Packet Radio Network Protocol,” Proceedings of the IEEE, 75(1):21-32, January 1987

[2] [AFS 02]Akyildiz, I.F., Su, W., Sankarasubramaniam, Y., and Cayirci, E., "A Survey on Sensor Networks,” IEEE Communications Magazine Vol. 40, No. 8, August 2002, pp. 102-116

[3] [HKB 99]W. R. Heinzelman, J. Kulik, and H. Balakrishnan, “Adaptive Protocols for Information Dissemination in Wireless Sensor Networks,” Proc. ACM

MobiCom ’99, Seattle, WA, 1999, pp. 174–85

[4] [HHL 88]S. Hedetniemi, S. Hedetniemi, and A. Liestman, “A Survey of Gossiping and Broadcasting in Communication Networks,” Networks, vol. 18, 1988

[5] [NTC 99]S. Ni, Y. Tseng, Y. Chen, and J. Chen, “The broadcast storm problem in a mobile ad hoc network,” Proc. ACM/IEEE International Conference on

Mobile Computing and Networking, August 1999, pp. 151-162,

[6] [SCS 03]Yoav Sasson, David Cavin, André Schiper. “Probabilistic Broadcast for Flooding in Wireless Mobile Ad hoc Networks,” IEEE Wireless Communications

and Networking Conference (WCNC) - March 2003

[7] [CS 03]J. Cartigny, D. Simplot, “Border Node Retransmission Based Probabilistic Broadcast Protocols in Ad-Hoc Networks,” Telecommunication

Systems, January 2003, vol. 22, iss. 1-4, pp. 189-204(16) Kluwer Academic

Publishers

[8] [ZK 03]Marco Zuniga and Bhaskar Krishnamachari. “Optimal Transmission Radius for Flooding in Large Scale Sensor Networks,” presented at the

Workshop on Mobile and Wireless Networks, MWN 2003, held in conjuction with the 23rd IEEE International Conference on Distributed computing Systems (ICDCS), May 2003

[9] [YY 04]Li-Hsing Yen, Chang Wu Yu. “Link Probability and Expected Node Coverage of Wireless Ad Hoc Networks,” Tech. Rep., CHU-CSIE-TR-2004-004, Chung Hua University, R.O.C.

[10]

http://pcl.cs.ucla.edu/projects/glomosim/

[11] [YYC 04]Chang Wu Yu, Li-Hsing Yen, and Yang-Min Cheng. “Computing Subgraph Probability of Random Geometric Graphs with Applications in Wireless Ad Hoc Network,” Tech. Rep., CHU-CSIE-TR-2004-005, Chung Hua University, R.O.C.

(39)

附錄 A:GloMoSim (Global Mobile Information

System Simulator)

A.1. 簡介

在一個大型網路之中可能包含著成千上萬個不同的節點,它們使用包含有 線、無線、和衛星網路等方式通訊,並在其中傳送不同的資訊內容如聲音、

資料、影像等。這些不同的通訊實體以不同的方式滿足不同的通訊需求,並 混和在一起形成我們今天所處的網路世界。這樣的網路除了具有異質環境、

規模大及多媒體的特性外,它可能還必須有很高的服務品質,能在短時間內 承受大量的流量,並能滿足網路拓撲不斷改變的特質。

上面所提出的多種特性,必須實現在有線、無線、和衛星網路的每一層通訊 協定裏,這樣的設計量,讓我們在實驗時,想要完成一個可靠的模擬環境變 得非常困難,更別說真的實做一個真實的實驗環境。

GloMoSim 是由 DARPA 資助,由 UCLA 以 PARSEC 所開發而成。主要在發 展一個具可擴充性(Scalability),可以執行成千上萬的節點,連結不同的異質 網路,使用衛星做非對稱式傳輸或是在無線網路上使用多步傳輸的方式通訊 以及傳統的網際網路等。GloMoSim 能在大規模網路中執行高精度模擬主要 是透過具有能執行多處理器的平行計算系統,這也是它強於 NS 之處。

A.2. PARSEC (Parallel Simulation Environment for

Complex System)

PARSEC 是由 UCLA 的平行計算實驗室所發展,它是一個以C語言為基礎

(40)

的模擬語言,可以做為連續或平行執行的編程語言。PARSEC 能執行在多種 不同的平台,包含 Solaris、Windows、UNIX 等。

PARSEC 提供了幾種不同的平行模擬協定,可以用循序或平行的方式執行。

PARSEC 的程式由許多的實體組成 (Entities),各個實體間以訊息交換 (Message)的方式溝通,藉以達成平行計算和處理離散事件的能力。

A.3. GloMoSim Protocol Stack

GloMoSim 提供類似 OSI 的通訊協定層級,每一層協定各司其職,分別執行 不同工作,但彼此間皆提供標準的 API(Application Interface)對外溝通,再由 PARSEC 所定義的實體做工作分配及資料彙整。各層協定列表如下:

Application TCPLIB(telnet, ftp), CBR(constant bit rate traffic), Replicated file system, HTTP

Transport TCP (FreeBSD), UDP, NS TCP (Tahoe) and others Network IP

Routing AODV(Sun, UCSC), DSR, Distributed Bellman-Ford, ODMRP, BGP, Flooding, Fisheye(UCLA), DSDV, WRP(UCSC) , LAR1(Texas A&M), OSPF,

NS_DSDV(CMU),STATIC)(static routing file)

MAC CSMA, FAMA, MACA, IEEE 802.11, TSMA(UT Dallas) Radio Radio with and without capture capability

Propagation Free space, Rayleigh, Ricean, SIRCIM

Mobility Random waypoint, Random drunken, ECRV, Group mobility

A.4. 使用 GloMoSim

GloMoSim 提供一個參數設定檔(config.in)做為模擬環境參數的設定,內有包

(41)

含網路拓樸、節點移動方式、電量消耗模式等各種設定選項。每一個參數的 設定對輸出結果皆能產生重大影響,因此必須確實瞭解每一個參數之意義,

並謹慎選擇適當之參數,以確保執行結果的正確性。詳細內容請參閱附錄 B。

A.5. GloMoSim 的運作架構

如前所述,GloMoSim 就像 PARSEC 一樣,是由一些實體(Entities)組成。組 成 GloMoSim 的實體主要有二個,Driver 和 Glomo。Driver 負責讀取各個不 同的設定檔,決定模擬程式的環境與條件。Glomo 由 Driver 喚起,負責實 際模擬的運作,包含節點的產生、初始化,封包在各個層級的運作,事件排 程,以及搜集每個節點在每個層級的統計資料。

A.6. Message Parameters (訊息參數)

GloMoSim 透過交換 message,模擬封包傳送的過程,以及處理維護模擬運 作所需的背景工作,它具有以下幾點必要的資料:

I、 節點編號。

II、 節點目前所在的層級。

III、 節點在目前層級所使用的協定。

IV、 事件形態,以及對應該事件的參數。

V、 封包承載(payload)的資料內容。

因為節點必須作用在各個層級之間,故 GloMoSim 使用穿隧連結(Tunneling) 的方式,將各層級所需的 Header 包在一起。

A.7. Event scheduling

GloMoSim 的運作是透過對事件的排程來規劃整體的運作,任何一個封包在 發送前,都必須定義它將要觸發的事件。每一個層級在接收到封包後,第一 件事就是檢查封包的事件代碼為何,再據以決定後續的處理方式。在

(42)

GloMoSim 中所傳遞的封包主要分兩種,一種是傳遞資料的封包,那是模擬 真實網路中,層級與層級間或節點與節點間的資料傳遞。另一是控制封包,

主要在於處理在 GloMoSim 中的工作排程。例如在 DSR 中,一個節點在傳 送 RREQ 一段時間後,若都沒收到 RREP,則節點必須進行重傳的工作。這 間隔一段時間後所要做的事情,GloMoSim 把它包成一個封包,丟給 Event scheduling 處理,Event scheduling 在時間到後,會再回傳一個封包給節點,

通知節點進行檢視的工作。由此我們可以知道,Event scheduling 具備 Timer scheduling 的功能。

A.8. 新增模組

GloMoSim 允許使用者新增模組,但自行新增的模組至少必須完成三件工 作,方能正常運作。

VI、 Initialization Function

分配所有節點會用到的記憶體空間,並初始化所有會用到的資料。例 如設定節點一開始在某協定的狀態或設定貯存統計結果的暫存器之 初始值等。

VII、 Finalization Function

彙整及輸出在某個模組所做的結果統計數據。

VIII、 Simulation Event Handling Function

針對上下層所傳送過來的事件,建立能處理該事件的函式。因為 GloMoSim 對上下層間的溝通界面(API)有標準的定義方式,故函式的 建立必須遵循相同的模式。另外基於 Event scheduling 的運作方式,

新模組必須定義屬於自己的事件代碼,且此代碼在所有模組必須是獨 一無二的。

GloMoSim 在每個層級皆提供一個可以讓使用者自訂的程式界面,它包含有 該層級的協定所需之基本架構,它的好處是架構簡單,使用者可以快速的、

參考文獻

相關文件

(A)憑證被廣播到所有廣域網路的路由器中(B)未採用 Frame Relay 將無法建立 WAN

在這次的實作遊戲中,我們必須要先對所使用到的硬體 和軟體有其基本的認識,這樣我們才能充分利用我們所擁有 的條件,進一步達成目標。首先 DE2-70 繼承了 Altera 一系 列的開發軟體,如

如圖,空間中所有平行的直線,投影在 image 上面,必會相交於一點(圖中的 v 點),此點即為 Vanishing Point。由同一個平面上的兩組平行線會得到兩個

我們衷心感謝各協作學校的參與,並在實施的過程中與我們進行專業交流,發展

浪漫色彩 兩性相處變得避忌,影響正常友誼發展

無線感測網路是個人區域網路中的一種應用,其中最常採用 Zigbee 無線通訊協 定做為主要架構。而 Zigbee 以 IEEE802.15.4 標準規範做為運用基礎,在下一小節將 會針對 IEEE

接下來我們將討論切換的機制,因為在我們假設的網路環境下,所以 sink 是保持在接收資料的狀態。網路中所有的感測點都將資料往 sink 端傳送,但是

階層式 Blueweb 網路形成方法與階層式樹狀網路有很大不同,但一樣首先隨機挑 選一個節點來當 Blueroot,由此 Blueroot 建立子網路,並給它初始參數 K = T,K 值 為 Layer counter