• 沒有找到結果。

中 華 大 學

N/A
N/A
Protected

Academic year: 2022

Share "中 華 大 學"

Copied!
58
0
0

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

全文

(1)

中 華 大 學 碩 士 論 文

基於藍芽隨意網路的詢問式路由協定 A Query-based Routing Protocol for

Bluetooth-based Ad Hoc Networks

系 所 別:電機工程學系碩士班 學號姓名:E09801024 呂冠緯 指導教授:余誌民 博士

中 華 民 國 100 年 7 月

(2)

i

摘 要

藍牙是一個潛在的技術短距離無線網路Ad Hoc Network。這項技術使設計低功 耗,低成本,短距離無線電,可嵌入到現有的便攜式設備。

我們利用了藍芽的連結方式來構成一個微網,微網與微網之間再經由中繼節點 (Relay)來構成一個散網,讓資料再傳輸過程當中,資料可不需經過到Route Master,

而是直接經由各中繼節點,直接把資料送往目的地位置。Blueweb的網路架構,而節 點之間會經由回覆訊息的動作來決定Master與Slave,但在一個網路架構裡都有一個 主節點(Blueroot),資料在傳遞時Source node會先詢問自己的Master,若路由表裡 無目的地位置,則會直接向Route Master詢問路徑方式,再回覆給Source node,然 後資料才會開始傳遞出去。

而在本篇論文當中,我們提出modify Blueweb,把需要傳遞的節點所做的詢問方 法做了一種修改,原先所有要傳送的節點都會先詢問自己的主節點,若在路由表內沒 有目的地的位址,則就會直接向Route Master詢問。而我們修改的地方是傳送的節點 在詢問主節點沒有資料時,不會馬上詢問Route Master,而是會繼續往上一層的主節 點(Upstream Master)詢問,若有目的地位置,則會直接回覆目的地位置;若無,則 會繼續往上層詢問,直到問到Route Master為止。模擬結果顯示modify Blueweb能夠 有效的減少Blueweb的路由詢問時間。

關鍵字:藍芽、隨意網路、微網、散網、路由協定

(3)

ii

ABSTRACT

Bluetooth is a potential short-range wireless network technology for Ad Hoc Network.

This technology enables the design of low power, low-cost, short-range radio, and can be embedded into existing portable devices.

A piconet can be formed by a Bluetooth connection method. Between the piconets, a relay is used to form a scatternet structure. With the re-transmission process, information can be delivered to the Route Master or directly sent to the destination location through their respective relay nodes. In Blueweb network routing protocol, each source node queries its local master to find out the routing paths to the destination node. If the local master has no destination information, the local master will query the route master to locate the destination node. Then, the route master will reply the routing path to the source node for packet transmission.

In this paper, a modify Blueweb routing protocol is proposed. Base on the routing query method of Blueweb, an intermediate reply method is added. During the query process, when the local master queries the route master for destination location, the intermediate upstream masters can response the routing paths to the source node if it has the destination information. Simulation results show that the modify Blueweb can effectively reduce the routing quiry time of Blueweb and achieve an efficient routing protocol.

Keywords: Bluetooth、Ad hoc network、Piconet、Scatternet、Routing protocol

(4)

iii

誌 謝

這兩年的研究所日子裡,我首先要感謝我的家人,沒有他們的鼓勵我想我也可能 不會再回到學校繼續完成自己的碩士學位,在唸碩士在職專班的情況下,一邊工作一 邊讀書而且也已脫離學校一陣子,要再重新拾起書本重新探討學問相當不容易,不過 幸好學校的老師們都願意幫助我們讓我們找回學生時代的所學再繼續往上深造。再來 我要感謝我的指導教授余誌民老師,總在我不懂的地方指導我、教導我,讓我自己有 所思考,加入了自己的想法,於是寫出了這一篇論文。在時間上,由於工作上相當忙 碌,老師也很配合我的時間,讓我做到工作與學校兩邊兼顧,謝謝您們。

(5)

iv

目錄

摘 要 ... i

ABSTRACT ... ii

誌 謝 ... iii

目錄 ... iv

表目錄 ... vi

圖目錄 ... vii

第一章 導論 ... 1

1.1 研究動機 ... 1

1.2 研究目的 ... 1

1.3 論文架構 ... 2

第二章 藍芽背景基本知識介紹 ... 3

2.1 藍芽簡易介紹 ... 3

2.2 藍芽架構與通訊協定 ... 4

2.2.1 藍芽架構 ... 4

2.2.2 藍芽通訊協定 ... 5

2.3 基頻網路運作 ... 6

2.3.1 微網路 ... 6

2.3.2 分散網路 ... 7

第三章 路由協定介紹 ... 9

3.1 Blueweb 的路由協定 ... 9

3.2 Ad hoc network 的基本架構協定 ... 13

3.2.1 Proactive Protocol ... 13

3.2.2 Reactive Protocol ... 14

3.2.3 Hybrid Protocol ... 14

3.3 Bluetooth 與 Manet 路由協定的差異性 ... 15

第四章 Blueweb 網路與路由協定 ... 16

4.1 Blueweb 網路形成演算法 ... 16

4.1.1 Destination Sequenced Distance Vector Routing ... 16

4.1.2 Ad hoc On-Demand Distance Vector Routing ... 17

4.1.3 Zone Routing Protocol ... 18

4.2 Blueweb 混成式路由協定 ... 19

4.2.1 Blueweb 網路的基本初始假設 ... 19

(6)

v

4.2.2 Blueweb 網路形成方法 ... 20

4.3 Blueweb 快取(cache)路由協定 ... 29

4.4 Blueweb 特性 ... 41

4.4.1 Blueweb 優點 ... 41

4.4.2 Blueweb 缺點 ... 41

第五章 模擬結果與結論 ... 42

5.1 模擬環境參數設定 ... 42

5.2 模擬結果 ... 43

5.2.1 封包完成數(Throughput) ... 43

5.2.2 封包完成佔全部封包百分比 ... 44

5.2.3 封包延遲(Packet delay) ... 45

5.2.4 詢問封包延遲(Query delay) ... 46

5.3 結論 ... 47

參考文獻 ... 48

(7)

vi

表目錄

表 3.1 詢問封包的標頭欄位變化………10 表 3.2 回覆封包的標頭欄位變化………11 表 3.3 傳送封包的標頭欄位變化………11

(8)

vii

圖目錄

圖 2.1 網路架構對照表 ... 4

圖 2.2 在微網路中,MASTER與 SLAVES間的資料傳輸 ... 6

圖 2.3 微網路示意圖 ... 7

圖 2.4 分散網路示意圖 ... 8

圖 3.1 BLUEWEB的 PID 架構 ... 10

圖 3.2 BLUEWEB的封包架構 ... 12

圖 3.3 AD HOC NETWORK的基本架構 ... 13

圖 4.1 藍芽樹狀的網路架構 ... 21

圖 4.2 BLUEROOT PAGE它附近一跳的鄰近節點 ... 21

圖 4.3 BLUEROOT PAGE它附近一跳的鄰近節點 ... 22

圖 4.4 BLUEROOT PAGE它另一個鄰近的節點 ... 22

圖 4.5 BLUEROOT下的SLAVE轉為MASTER並開始PAGE下一個節點 ... 23

圖 4.6 BLUEROOT與下層的SLAVE構成微網路 ... 23

圖 4.7 下一層的 MASTER開始與下一層NODE進行PAGE ... 24

圖 4.8 找到下一層的SLAVE與 MASTER ... 24

圖 4.9 定義第二層的SLAVE與 MASTER ... 25

圖 4.10 準備建立第三層的 MASTER ... 25

圖 4.11 準備建立第三層的SLAVES ... 26

圖 4.12 所有NODE已完成連結 ... 26

圖 4.13 發現已無下層的節點 ... 27

圖 4.14 發現已無下層的節點 ... 27

圖 4.15 建立互連的SLAVE,所有MASTER開始回覆訊息 ... 28

圖 4.16 BLUEWEB的網路架構 ... 28

圖 4.17 BLUEWEB架構 ... 29

圖 4.18 BLUEWEB的網路架構 ... 30

圖 4.19 先尋問自己 MASTER是否有目的地位址 ... 31

圖 4.20 若無則直接詢問 BLUEROOT ... 32

圖 4.21 BLUEROOT告知目的地位址 ... 33

圖 4.22 SOURCE NODED開始傳送封包給目的地 ... 34

圖 4.23 起始點向 MASTER詢問目的地 ... 36

圖 4.24 若無則在繼續向上詢問 ... 37

圖 4.25 發現目的地位址於是回傳資料 ... 38

圖 4.26 起始點開始傳送資料到上一層 MASTER ... 39

圖 4.27 若 MASTER皆無資料,則作法與 BLUEWEB一樣 ... 40

圖 5.1 封包完成數量(THROUGHPUT) ... 43

(9)

viii

圖 5.2 封包完成百分比 ... 44 圖 5.3 封包延遲時槽(PACKET DELAY SLOT) ... 45 圖 5.4 詢問延遲時槽(QUERY DELAY SLOT) ... 46

(10)

1

第一章 導論

1.1 研究動機

在今日這資訊發達的世界,人們都藉由著網際網路(Internet)來獲取得最新資訊,

所以網路已經變得越來越重要了,但要如何隨時隨地取得消息又不想受有線上距離的 拘束,又加上無線網路的架設上速度快又達經濟上的效益,於是無線網路漸漸發展開 來而慢慢取代了有線網路到達不了的地方。而藍芽就是無線網路上一項成功的成品,

此項技術定位在低功率、低成本的短距離的無線通訊,因低功率所以傳輸距離短也就 是目前此產品的唯一宿命。如何才能傳遞的資料,然後又能又快又準確的到達指定的 位置,節點要如何去選擇傳送的路徑,如果所有節點都向主節點詢問,想必主節點一 定一直呈現在忙碌的狀態,而且資料庫也相對要比一般節點大上很多,在維持上稍有 難度,而各節點的等待時間也就造成無所謂的浪費,所以在無線網路中去尋找一個溝 通的路徑及適當的詢問式是很重要的。

1.2 研究目的

在 Ac Hoc Routing 有分三種方式,Proactive Protocol、Reactive Protocol 與 Hybrid Protocol,而在 Blueweb 中也採用前兩種方式,只是節點一開始都會是 Reactive Protocol,但一旦發現目的地不在 Master 裡,便會馬上採用 Proactive Protocol 去詢問 Blueroot,等待 Blueroot 告知路徑後,節點才會開始對目的地的節 點方向 傳遞 資料 ,而 我們是 將 Proactive Protocol 的方 式改 成 詢問上 一層的 Master,若上一層一樣沒有則就會再往上上一層詢問直到問到 Blueroot 為止,然後 來分析節點間傳輸率是否有提升,Blueroot 是否有做到減工的動作。

(11)

2

1.3 論文架構

在本篇論文的架構中,第二章我們會介紹藍芽基本知識,介紹藍芽基本協定及傳 輸技術,第三章介紹 Blueweb 路由協定與 Ac Hoc Routing 的架構,還有三種 Proactive、Reactive 與 Hybrid Protocol,在第四章說明三種規格的演算法運算式 與 Blueweb 混合式路由協定與 Blueweb 網路形成方法,然後加上 Blueweb 快取路由協 定的方式,第五章則是模擬環境與結果。

(12)

3

第二章 藍芽背景基本知識介紹

2.1 藍芽簡易介紹

近年來,無線行動通訊在通訊領域中成長相當快速。分別從第一代行動通訊 AMPS 類比式行動電話系統,到第二代行動通訊 GSM 數位通訊系統,然後第三代 3G 與 3.5G 行動通訊結合了網路高速數據傳輸服務,到如今的 4G WiMAX 全球互通微波存取,行 動通訊技術的進步可說是一日千里。由於這都是使用在大功率與長距離傳輸上,於是 又有了無線電、紅外線與藍芽這種可應用在辦公室、區域性或短距離的傳輸,因無線 電易收干擾,又加上紅外線需具有方向性的傳輸,於是藍芽的使用就變了如此普遍。

藍芽通訊協定標準是由藍芽特別利益團體所提出的規範,主要目的為訂定藍芽技術規 範並保護藍芽商標及專利權,以及積極推動宣傳藍芽無線技術,並讓各資訊設備間能 使用無線的方式互相連結傳輸,來取代有線的的纜線連接方式。在 1994 年,藍牙技 術最初是由一間公司易利信所創製,目的研究在行動電話和其他配件間進行低功耗、

低成本無線通訊連線的方法。於是發明者希望能在裝置間的通訊上統一規則,以解決 使用者間互不相容的移動電子裝置。在 1998 年,Ericsson、Intel、IBM、Toshiba 及 Nokia 等五家公司共同創立了藍芽 SIG 策略聯盟,1998 年時藍芽推出 0.7 規格,

支援 Baseband 與 LMP 通訊協定兩部份。1999 年完成 SDP 協定,使用 2.4GHz 頻譜,

最高資料傳輸速度 1Mbps。與當時流行的紅外線技術相比,藍芽有著更高的傳輸速 度,而且不需要像紅外線那樣進行介面對介面的方向性連線,在藍芽裝置基本上只要 在有效通訊範圍內使用,就能立即隨時連線。版本也一直在更新,SIG 先後推出了 1.2、2.0 版,以及其他附加新功能,現今的 2.0 已將傳輸率提升至 2Mbps、3Mbps,

遠遠大於 1.x 版的 1Mbps(實際約 723.2kbps)。

(13)

4

2.2 藍芽架構與通訊協定

2.2.1 藍芽架構

藍芽技術定義了通訊協定架構其實也與網路的架構上差不多。關係對應如下:

應用層 應用層

展示層 應用程式介面

會議層 適應層

傳輸層 主機控制介面

網路層 連結控制器

資料連結層 基頻模組

實體層 射頻模組

OSI 模型 Bluetooth 架構

圖 2.1 網路架構對照表

位於架構最底層的是射頻模組主要定義了藍芽設備在 2.4GHz 的頻帶內能正常工 作所需的要求,以及相關的發射頻率、調變方式、發射功率等特性。

在射頻模組上的是基頻模組,這一層主要定義了實體通道、實體連線、封包結構 與型態、錯誤更正等等,主要負責訊息的編碼、解碼和加解密編碼、解碼,跳頻以及 封包的處理部份。

連結控制器負責控制基頻模組內的各項功能,負責控制基頻模組連結的設定,釋 放及管理的建立。

(14)

5

主機控制介面是用來界定藍芽與主機設備之間連結界面的控制指令,主要能讓使 用者直接使用藍芽,能讓一些有內嵌藍芽模組的設備享有藍芽技術帶來的便利。

L2CAP 是介於高層與底層間的適應層,L2CAP 負責封包切割與組裝、通訊協定多 工處理、服務品質保證等功能,通常以韌體的形態存放在射頻模組硬體中。

再上層算屬應用層,此層依據語音、數據、控制等應用需求,提供應用軟體所需 的通訊協定功能與應用程式介面。此層包括有 RFCOMM、發現服務協定、電話控制協 定等應用。

電話控制協定(TCP),定義了藍芽設備間建立話音(Speech)和資料(Data)Page 所 需的 Page 控制(Call Control)指令,使藍芽設備能與傳統的電話設備緊密結合。

2.2.2 藍芽通訊協定

藍芽功率已有了具體上的規範,傳輸上的距離與發射功率息息相關,普遍上功率 分了三級,而距離上也從 1 公尺到 100 公尺。藍芽工作頻帶是在 2.4GHz 的 ISM 頻帶,

在這頻帶內都可開放使用且不需要申請執照,頻帶大部分都被分成 79 個通道,使用 展頻及跳頻技術,跳頻速率為每秒 1600 跳,而通訊協定則是採用分時多工模式。

(15)

6

2.3 基頻網路運作

2.3.1 微網路

藍芽技術為了抵抗 2.4GHz 頻帶上的其它干擾,採用了跳頻式的展頻技術方式 (FHSS)。一般資料傳輸時的跳頻速率是 1600 跳(hops/s),每一個頻率相當於每 625 s

。接收端必頇知道傳送端的跳頻序列,並且傳送端與接收端必定要同步切換頻 道才可以正常接收資料。

圖 2.2 在微網路中,Master 與 Slaves 間的資料傳輸

(16)

7

需具有兩個以上且需相同頻段的藍芽設備互相連結,所形成的小型網路就叫為微 網路,一個 Master node 頂多只與七個 Slave 設備連結構成微網路,其 Slave 與 Slave 之間不可相互傳遞資料,只能透過微網路中的 Master node 來傳遞資料。

圖 2.3 微網路示意圖

在同一個微網中,所有的設備皆共同分享微網路的 1Mbit/s 的傳輸速度,Master node 需負責決定跳頻的序列,而 Slave 設備的跳頻頻率和時脈必頇與 Master 設備同 步,才能進行相連結與傳輸封包,當 Slave 設備達到最多七個時,所分配到的傳輸速 率也會因此有所下降,而在同一微網路的設備會經由同步避開相互干擾。

2.3.2 分散網路

若有更多的 Slaves 想要加入網路該怎麼辦呢?藍芽標準所採用的解決方法就是 使用分散網路機制來解決一個 Master node 頂多只與七個 Slave nodes 連結的困擾,

而分散網路又簡稱散網,需由兩個以上的微網所構成,介於兩個微網中間的 Master 或 Slave,會需要做角色轉換的動作,以利分散網路的形成,有可能是所以這個微網 的 Master,也可能同時是其他微網的 Slave,我們稱這種節點就叫做中繼節點(Relay),

中繼節點可以同時佈署於多個微網路。如何使微網路內部數量最佳化以減輕中繼節點 的負擔,讓傳送封包時能降低最多成本並達到最大的網路效益便顯得非常重要。

(17)

8

圖 2.4 分散網路示意圖

藍芽散網並沒有明確的定義去擬定要如何形成,所以只需遵守基本的藍芽協定限 制,便可依照自定的演算法去形成想要的散網架構,在散網的通訊協定沒有很明確 下,若微網路與微網路間未同步,很可能會在相同頻率下產生碰撞,導致封包遺失或 重新發送。因此,區域中的微網路個數越多,就有可能產生更多的碰,撞導致封包要 重送,因此影響資料傳輸率下降。而目前有兩大演算法來研究數多種架構的藍芽散 網,一種是集中式散網演算法,散網中會先選出一個 Blueroot 當作主節點,由它來開 始連結控制分配散網的形成。另外一種是分散式散網演算法,同時讓多個的節點擔任 主節點,再自行分散去運作連結,主節點與主節點間再經由中繼節點來交換訊息。

(18)

9

第三章 路由協定介紹

3.1 Blueweb 的路由協定

在 Blueweb 網路形成時期裡,一些路由選擇訊息可以被交換成 Master。在網路 形成的第一個階段裡,每位 Master 保持在它一層直接連結的 Master 的記錄。因此,

一條質問目的地的路徑可能容易透過對路線朝著上游的方向連結讓上一層 Master 掌 握。在網路形成的第二階段過程中,每位返回的 Master 將透過它自己的 piconet 訊 息以及它的直接連結的 Master 的目錄到路線向上游透過它掌握 Master。同時,各自 返回主人包括路線掌握將遞給它自己 piconet 訊息對它直接連結的上一層 Master。

我們在它的相鄰的 N 內確定直接連結的相鄰的 piconets 作為主人的 N 排 piconets,

這些 piconet 稱為 Slave。 相關 N 排的 Slaves 訊息將被儲存在 Master N 排 piconet 資料庫裡。 另外,那些主人透過 reply 影響,連接機製將不斷改進他們的 N 排 piconet 資料庫透過接替。因此,每位 Master 將保持它自己的 piconet 訊息和它的 N 排 piconet 訊息。

這訊息當地被使用,到那時節點詢問為要交付的一條道路包掌握。在完成網路形 成的第二階段之後,Blueroot 掌握將有全部節點的路由選擇訊息和把它儲存在一份 piconet 編目表裡。 這資料庫包含一個全部 Master 和他們的相關 Slave 的目錄。 同 時,Blueroot 對使用全部對將計算最短的道路路徑算法。

當藍芽設備和其它的藍芽設備互相連結時,稱為連接狀態,在連接狀態時的 Master 與 Slave 設備使用相同的 Channel Access Code 與跳頻,才能夠互相通訊。

為了節省功率消耗同時也減少對其它用戶的干擾,當 Slave 長時間不傳遞資料,但又 希望與微網路中的 Master 互相連接時,Slave 能選擇進入許多不同的連接狀態,連 接狀態不同,Slave 消耗的功率與週期性的動作也不相同。

在傳輸中,Slave 具有由 Master 所分配的 AM_ADDR,且與微網路相同的跳頻序列,

Slave 與 Master 可以互相傳遞資料,AM_ADDR 有三個 bits,000 是保留給 Master 廣 播所使用,因此一個微網路中最多可以擁有七個 Active Slaves。為了實現這份鋪設 的協議,使用了 piconet 層來尋地址。這個結合 Bluetooth 有效的位址(AM _ ADDR),

(19)

10

並用 piconet identification (PID) 全部寄給整個網路裡每一個 Bluetooth 設備。

另外,PID 用來在網路裡區分不同的 piconets。PID 分發於每一層,每再向下一層則 PID 又就再增加一碼。例如,Blueroot 是第一層節點,所以它的 PID 為 1。 它的第 一個附上的 Master 被作為它的 PID 分發 1.1,第二位附上的主人被作為它的 PID 分 發 1.2,等等。以這種方法,一個第 3 層掌握意愿被分發 PID 1.a2.a3。我們稱呼這 方法為 piconet 層尋址計畫。這尋址計畫能被用於 Blueweb 架夠上。如圖 3.1 所示

圖 3.1 Blueweb 的 PID 架構

假設我們現在要從 S 節點傳送封包加上 1.1.1.1 的位置到達目的地 D,S 便會開 使詢問自己週邊相關的 Master,如果 Master 擁有目的地 D 的資料庫,便會回傳直接 運送道路到 Slave 節點。然後,來源節點將把路由選擇通路佔用通道領域並且開始傳 送封包。否則,那些詢問上一層 Master 1.1.1 直接提出這質問消息到那些通路能到 PID 1(Blueroot)的位置,再透過它向上游 Master 1.1。

(20)

11

方式 SRC DST PATH

S node 詢問他的

Master Node 1.1.1.1 目的地的位址 1 被詢問的 Master 向上

尋問上層的 Master 1.1.1.1 目的地的位址 1 上層的 Master 詢問到

Route Master 1.1.1.1 目的地的位址 1

表 3.1 詢問封包的標頭欄位變化

方式 SRC DST PATH

Route Master 送路由

方式給下一層 Master 1.1.1.1 1.3.0.2 1.1.1;1.2;1.3 Route Master 的下一

層 Master 把資料交給 被詢問的 Master

1.1.1.1 1.3.0.2 1.1.1;1.2;1.3

被詢問的 Master 再把

資料交給 S node 1.1.1.1 1.3.0.2 1.1.1;1.2;1.3

表 3.2 回覆封包的標頭欄位變化

方式 SRC DST PATH

S node 開始傳送封包

給目的地 D 1.1.1.1 1.3.0.2 1.1.1;1.2;1.3 Master 把封包交給了

往目的地的節點 1.1.1.1 1.3.0.2 1.2;1.3 Master 把封包傳給目

的地的 Master 1.1.1.1 1.3.0.2 1.3 封包已傳送到目的地

D 1.1.1.1 1.3.0.2 0

表 3.3 傳送封包的標頭欄位變化

(21)

12

封包長度也有所定義,封包本身定義有如 RVM (Routing Vector Method),SRC 欄位根據 piconet 來確定來源節點的位址。 DST 有可能為兩者封包,它是由一個 48 位 的 Bluetooth 位址所組成,它有可能是一個詢問目的地位址的封包,或是由目的地回 傳的封包。PATH 領域包含兩者中任何一個 路線的位址適合一質問包或者一連串 PID 掌握根據寄給的 piconet 層策劃一答覆包或者數據包。

Layer 2 header Layer 2 plyload

SRC DST PATH PATH length Layer 3 payload

Layer 3 header

圖 3.2 Blueweb 的封包架構

(22)

13

3.2 Ad hoc network 的基本架構協定

Ad hoc network 的 Routing Protocol 可分為三大類,Proactive、Reactive 與 Hybrid 的方式。

Proactive Protocol Reactive Protocol Hybrid Protocol Ad Hoc Routing Protocol

DSDV CGSR WRP

AODV DSR TORA

ABR SSR

ZRP DGRP

圖 3.3 Ad hoc network 的基本架構

3.2.1 Proactive Protocol

每個節點會週期性地傳送或交換封包訊息來建立路由訊息(routing

information),並藉由收到的路由訊息來更新路由表(routing table),當要傳送資 料時節點會從路由表找出一條最適當的傳送路徑。Destination Sequenced Distance Vector Routing (DSDV)、Cluster-Head Gateway Switch Routing (CGSR) 和 Wireless Routing Protocol (WRP) 屬於這種 Proactive Protocol。因為當節點有封包要傳送 時,可以從資料庫得知要到達目的地所要走的路徑,可省去搜尋與輪詢(polling)路 徑的時間,但因為每個節點會週期性的廣播交換訊息,來更正與確認資料庫的正確 性,相對而言會浪費網路的頻寬和電力。如果只是為了要拉長交換訊息的週期,這又

(23)

14

會使得資料庫的正確性下降,所以 Proactive Protocol 的關鍵在於如何確保資料庫 的正確性。

3.2.2 Reactive Protocol

與 Proactive Protocol 的方式不同,節點要開始傳送封包時才會去尋找到達目 的地的路徑。節點會先不斷的廣播發掘路徑(route discovery)的訊息,直到一直找 到一條或找到可以用的路徑後才會停止廣播的動作。Ad hoc On-Demand Distance Vector Routing (AODV)、Dynamic Source Routing (DSR)、Temporally Ordered Routing Algorithm(TORA)、Associativity Based Reuting(ABR)、Single Stability Routing(SSR)就屬於這種 Reactive Protocol。Reactive Protocol 其優點就是佔 用的頻寬資源很小,只有節點封包有封包要傳送時,卻找不到路徑的時候才開始,所 以在搜尋路徑的時間上會浪費許多時間造成不必要的等待。

3.2.3 Hybrid Protocol

Hybird Protocol 是結合了 Proactive Protocol 和 Reactive Protocol 優點的 混合式 Protocol。Zone Routing Protocol (ZRP)、Zone-Based Hierarchical Link State Routing、Dynamic Group Routing Protocol (DGRP)就屬於這種 Hybird Protocol。所有的節點會形成一個區域,而區域的大小和節點數與設定的區域半徑有 關,所以在區域內是使用 Proactive Protocol,而區域外則是使用 Reactive

Protocol。但是要如何在區域的選擇和維護、以及 Proactive Protocol 和 Reactive Protocol 的合理選擇等問題,才得使整體上能最佳化。

(24)

15

3.3 Bluetooth 與 Manet 路由協定的差異性

傳統的 IP routing 就算屬是一種 Table-Driven 的方式,每個節點隨時都要維 持一個 routing table,一直不斷的更新。Ad-Hoc Network 的 Table-Driven routing protocol 承繼傳統 IP routing,包括 DSDV、CGSR 等,其差別就在於所需要的 routing table 數量與其更新方式。

相對而言,On-Demand routing 只有在需要一條路徑時才開始建立的步驟,因此 傳送者必頇等待一段時間,等到路徑建立完成才能開始傳送資料。Table-Driven 不 論路徑是否會用到,都不斷地利用節點間彼此的資訊交換來維持 Routing table,可 能比較適合當網路架構變化程度較小時,因為如果架構一直改變,每個節點所紀錄的 Routing table 有可能並不是最新的區域網路,反而有可能將封包往錯誤的方向傳送 照成錯誤,影響效能。

同時,由於 MANET 的成員通常是功能較不強大的節點,通常都用 Slave 或 Relay 等,一直維持太多或太大的 Routing table 很可能在系統上都會是造成負擔,此外,

有些節點雖然處於一個 Ad-Hoc Network 裡,但可能很少需要與其他成員溝通,可能 只想獨立工作,此時就沒有太大必要將它列入其他節點的 Routing table 裡。

ZRP 提出將兩種觀念的結合,也就是每個節點將微網裡所有其他節點的資訊都紀 錄在 Routing table 內,如果要與微網外的節點溝通才進行 On-Demand 的 Route query,這種做法雖有好處,但是可以想見需要許多額外的 routing 訊息交換,同時 每個節點也必頇掌握微網內的變化,可能同時繼承了兩種方法的缺點。

在 Bluetooth 路由協定設計上,移動性不是主要考量,所以 Manet 使用的路由方 法包含 Proactive、Reactive 與 Hybrid 這三種協定,均可用在於 Bluetooth 網路上 使用,在 Bluetooth 的路由協定中,我們考慮將混成式(Hybrid)的設計運用到藍芽網 路上,並可以兼具 Proactive 與 Reactive 的優點,同時加入集中式的路由管理,讓 藍芽的路由協定更有效率。

(25)

16

第四章 Blueweb 網路與路由協定

4.1 Blueweb 網路形成演算法

Routing Protocol 可分為三大類,Proactive、Reactive 與 Hybrid 的方式。所以 我們在此對此三種 Protocol 各討論一下他們的演算法,Proactive Protocol 我們以 Destination Sequenced Distance Vector Routing (DSDV)來介紹,Reactive Protocol 我們以 Ad hoc On-Demand Distance Vector Routing (AODV)來介紹,Hybird Protocol 我們以 Zone Routing Protocol (ZRP)來介紹。

4.1.1 Destination Sequenced Distance Vector Routing

Destination-Sequenced Distance-Vector Routing 簡稱 DSDV,是以

Bellman-Ford 架構基礎改良出來的演算法,在 1994 年由 C. Perkins 與 P. Bhagwat 所研發出來,是一個要有資料庫為基礎的路由通訊協定。每一個 Master 必頇擁有一 個資料庫,資料庫是用來紀錄該節點與該節點所進行連結的節點與距離,所以每個 Master 會一直不斷更新自己的資料庫,如果路由器接收到新信息,然後,它使用最 新的序列號。如果序列號是一樣的,一個已經在表中,路線與更好的指標使用。陳舊 的條目這些條目還沒有被更新了一段時間。這些條目以及航線使用這些節點作為下一 跳被刪除。DSDV 的優點是一個早期的算法可用。這是很適合建立臨時網絡,少數節 點。由於沒有正式的規範這種算法是目前還沒有商業實現該算法。DSDV 的缺點是需 要定期更新其路由表,它使用電池電源和少量的帶寬,即使在網絡處於閒置狀態。每 當網絡拓撲的變化,一個新的序列號之前,必頇在網絡重新收斂,因此,DSDV 是不 適合高度動態的網絡。

(26)

17

4.1.2 Ad hoc On-Demand Distance Vector Routing

Ad Hoc On-Demand Distance Vector Routing 又簡稱 AODV,是以 mobile ad hoc networks(MANETS)與 wireless ad hoc networks 的架構基礎改良出來的演算法, AODV 在節點上並不維持一個路由表,而是當一個節點需要和另一個節點溝通時才發出廣播 的方式來建立路由表。當一個節點想傳送資料給網路中的另一個節點時,首先要廣播 一個 Route Request(RREQ)封包,RREQ 封包裡有紀錄了 source 節點的位置與 destination 節點的位置。而 RREQ 在網路中是一種 flooding 的傳遞方式,直到被 destination 收到,當然,一個節點只能對同一 RREQ 處理一次,以避免 routing loop 的產生。大部分的複雜性的協議是降低的封包數以保護能力的網絡。例如,每個請求 的路由都有一個序列號。節點使用這個序列號,以便他們不重複路線的要求,他們已 經通過了。另一個特點是,這樣的請求路由具有“生存時間”的數量限制多少次,他 們可以被重傳。另一個這樣的功能是,如果一個路由請求失敗,另一條路線的要求可 能不會被發送到兩倍多的時間已經過去了作為超時前路由請求。

在 AODV 路由協議使用的是 on-demand 的方式尋找路線,也就是建立一個路由時,

才需要由源節點發送送封包。它採用目標序列號,以確定最近的道路。主要的區別 AODV 和動態路由(DSR),沿路上的節點也會將這條路徑的有關資訊紀錄下來可避免 封包再次回傳上到同一個節點上。然而,在 AODV 中,源節點和中間節點存儲的下一 跳信息流相對應的每個數據包傳輸。源節點洪水 Route Request 包在網絡中的路由時 不提供所需的目標。它可能獲得的多個路由到不同的目的地,從單一 Route Request。

它採用了目的地序列號(Destination Sequence Number)確定一套現代化的最新路 徑到目的地。節點更新其路徑信息只有在 DestSeqNum 目前收到的數據包大於過去 DestSeqNum 存儲在節點。Route Request 攜帶源識別碼(SrcID)時,目標識別

(DestID),在源序列號(SrcSeqNum)的目標序列號(DestSeqNum),在廣播標識 符(BcastID)和生存時間(TTL)字段。DestSeqNum 表示全新的路線,接受由源。

當中間節點接收到一個 Route Request,它要轉發或編制 Route Reply 它是否有一個 有效的路由到目的地。一條路由的有效性在中間節點,是由比較序列號在中間節點與 目標序列號在 Route Request 包。如果 Route Request 接收多次,這是表示由 BcastID - SrcID 對,重複拷貝將被丟棄。所有中間節點有到目的地的有效途徑,或目的節點

(27)

18

本身,都允許發送 Route Reply 封包。每一個中間節點,而轉發 Route Request,進 入前一個節點地址和 BcastID。若計時器到期的情況下,Route Reply 沒有收到之前,

則會刪除該條目。這有助於在一個活躍的路徑存儲在中間節點的 AODV 不採用源路由 數據包。當一個節點接收到一個 Route Reply 封包,信息的前一個節點從該數據包被 接收也是為了存儲轉發數據包到下一個節點作為下一跳往目的地。

其優點是,它的 AODV 創建沒有額外的交通沿線現有的通信聯繫。此外,距離矢 量路由是簡單,不需要太多的內存或計算。然而 AODV 需要更多的時間來建立連接,

並初步溝通,建立一個路由是重比其他一些方法。

4.1.3 Zone Routing Protocol

Zone Routing Protocol 簡稱 ZRP,是結合了 reactive 與 proactive 兩種路徑建 立方式,一方面讓網路裡的一個節點隨時紀錄附近節點的 routing 資訊,當一個節 點要和鄰近節點溝通時能立刻得到路徑資訊,而如果要和較遠的節點連結時,只讓網 路裡少數節點參與 routing。ZRP 是以減少控制開銷的主動路由協議和降低延遲造成 的路由發現在反應式路由協議。ZRP 使用到一個積極的路由協定,包含了路由協議

(IARP),用於區域路由和路由協定的回覆,跨區域路由協議(IERP),用於區域間 的路由。路由到目的地在本地區內可以建立從源頭的主動緩存的路由表 IARP。因此,

如果源和目標數據包都在同一區,封包可以被立即傳遞。大多數現有的主動路由算法 可以用作 IARP 的 ZRP。對於本地區域以外的路線,更新路由是屬於被動的。源節點 發送路由請求節點的偏遠地區,包含它自己的地址,目的地址和一個獨特的序列號。

每個微網節點檢查其本地區域為目標。如果目標不是成員這一局部區域,微網節點增 加了自己的地址的路由請求封包和資料封包轉發到自己的微網節點。如果目標是一個 成員的局部區域,它發送一個路由應答的反向路徑回源。源節點使用的路徑保存在路 由應答包發送資料封包到目的地。

(28)

19

4.2 Blueweb 混成式路由協定

Blueweb 散網網路形成演算法的假設幾乎與 Bluetree 相同,主要提出一個更有效 率的分散網路建置機制,來改善 Bluetree 的缺點。

4.2.1 Blueweb 網路的基本初始假設

只有些微差異性的部分,Blueweb 的基本假設如下面所示:

1. 藍芽節點隨機分布在設定內的環境區域內。

2. 在這環境區域內的所有節點移動性相當低。

3. 在開機的過程中,每個節點都有足夠的時間去做 Inquiry 和 Inquiry Response 的動作,去發現所有與它相鄰的節點

4. 藍芽標準中定義限定一個 Master 節點最多只可連接七個 Slave 節點。

5. 在散網網路中並沒有被孤立的節點,每個節點至少有一條鏈路與其它節點 互相連結。

6. 希望以網狀架構代替樹狀架構,來減少某一個特定點的資料流量過大,當節 點扮演多種角色屬於多個微網路時,需要時間做切換角色動作時,必頇 經過轉換跳頻時序,因此都有角色轉換延遲(Role switching delay)就會相當耗 時,我們希望 Relay 的角色是由 Slave 來扮演,這樣可以避免 Master 扮演 Relay 也可減少資料流量過大,當它角色轉換成 Slave 時,它所屬的 Piconet 的傳輸會被停止。但在 Blueweb 網路中,特別多出了一個中繼節點(Relay) 這個角色,這假設還是一樣,一個節點最多扮演兩種角色(Slave/Master or

(29)

20

Slave/Slave) , 節 點 角 色 可 以 是 Master 、 Slave 、 Slave/Master 或 Relay(Slave/Slave)。

4.2.2 Blueweb 網路形成方法

Blueweb 形成的方式其實與 Bluetree 相同,差別在 Master 與 Master 之間需有 一個 node 當為 Slave。以下是 Blueweb 的形成方式:

1. 藍芽節點隨機分布在一個所限定的區域內。

2. 所有在這區域裡的節點移動性相當小。

3. 在過程中,每個節點都有足夠的時間去做 Inquiry 和 Inquiry Response 的動作,用以發現所有與它相鄰的節點。

4. 網路區域中並沒有孤立的節點,任何一個節點都至少有一條路徑與其它 節點相通。

5. 在 Bluetree 裡,每一個節點最多扮演兩個角色,節點角色可以是 Master 或是 Slave 或是 Master/Slave,但在 Blueweb 裡,節點的角色扮演可以 是分屬不同微網路的 Slave,我們稱之為 Relay(S/S) ,因此 Blueweb 的 角色有 Master、Slave 與 Relay。

隨意挑選藍芽網狀網路(Blueweb)內的某一節點來當作的根節點(Blueroot),再利 用這個 Blueroot 來建立起網路再透過回連的方式來構成網狀網路,先將 Blueroot 指定 為 Master 的角色,接下來會 page 它附近一跳的鄰近節點,使這些節點做為 Blueroot 的 Slaves,這個 Master 與它所屬的 Slaves 將組成一個微網路,因為一個微網路中限 制 Master 節點最多只能連結七個 Slave 節點。這微網路的 Slaves 將會轉換成另一個角 色 Master,此時這個節點是扮演 Relay(Slave/Master)的角色,然後分別去 page 還沒有

(30)

21

連結的其它節點,若附近無節點可以 page,則此 Slave/Master node 會經由角色轉換機 制轉變成 Relay(Slave/Slave),此動作會一再重覆,直到末端節點再回傳訊息構成網狀 網路。以下是 Blueweb 的形成方式:

圖 4.1 藍芽樹狀的網路架構

圖 4.2 Blueroot page 它附近一跳的鄰近節點

(31)

22

圖 4.3 Blueroot page 它附近一跳的鄰近節點

圖 4.4 Blueroot page 它另一個鄰近的節點

(32)

23

圖 4.5 Blueroot 下的 slave 轉為 master 並開始 page 下一個節點

圖 4.6 Blueroot 與下層的 slave 構成微網路

(33)

24

圖 4.7 下一層的 Master 開始與下一層 node 進行 page

圖 4.8 找到下一層的 slave 與 Master

(34)

25

圖 4.9 定義第二層的 slave 與 Master

圖 4.10 準備建立第三層的 Master

(35)

26

圖 4.11 準備建立第三層的 slaves

圖 4.12 所有 node 已完成連結

(36)

27

圖 4.13 發現已無下層的節點

圖 4.14 發現已無下層的節點

(37)

28

圖 4.15 建立互連的 slave,所有 master 開始回覆訊息

Blueweb 的連結方式保持為 Master-Relay-Master…如下圖,這樣的動作將一直重 複直到網路的末端節點(Leaf node),到末端節點後會開始回傳回連訊息,通知上游 Master 連結附近非同鏈路的 Slave,將整體散網轉換成網狀網路。

Slave

Blueroot

Slave

Slave Slave

Slave Slave Slave

Slave

Relay Slave

Slave S/M

node Relay

Relay S/M

node

Leaf node S/M node

圖 4.16 Blueweb 的網路架構

(38)

29

4.3 Blueweb 快取(cache)路由協定

Blueweb 是有許多的 Master,但 Master 與 Master 之間需由 slave 做為連結的節點,

如下圖所示:

M R M

(S/S) R M

(S/S)

圖 4.17 Blueweb 架構

在此章節我們將討論封包傳遞時每個節點的運作方式,有哪些問題影響到時間上 不必要的浪費或是在資源上的不足以讓封包在傳遞時,因系統負荷不足而掉封包,雖 然說並沒有一個十全十美的方法,但要看在環境上因情況而來決定要用怎樣的詢問法 才能達到最大的效益與目的。

在 Blueweb 架構中,Blueroot 擁有全部的資料庫,而 Master 與 Master 之間都 有節點連接稱作為 Slave,每個 Master 與 Slave 構成一個微網路,然後再集合所有 的微網路構成一個散網,因為藍芽協定規範有規定每個節點都需有所連節,所以不會 發生獨力散網的事情發生,再加上一個 Master 能夠與七個 Slave 構成一個微網路,

在微網路中 Slave 與 Slave 間可透過 Master 做傳輸,在速度上可提高不少,也可降 低 Blueroot 的運作時間,只是每個 Master node 都需有一個資料庫,在成本價位上 會相當增加不少,在訊息等待的時間也會浪費許多。

(39)

30

一開始,Blueroot 會先開始連結並構成一個網路。

Blueroot

S S S

M M M M M

S S S S S S

M

S S

S

圖 4.18 Blueweb 的網路架構

(40)

31

此時,我們假設節點 S 準備要開始傳送封包,然後要把封包傳送到節點 D。節點 會先開始詢問自己的 Master 是否有節點 D 的位址。

Blueroot

S S S

M M M M M

S S S D S S

M

S S

S

圖 4.19 先尋問自己 Master 是否有目的地位址

(41)

32

如果 Master 沒有節點 D 的位址,那會回訊息給節點 S 然後讓節點 S 去詢問 Blueroot。

圖 4.20 若無則直接詢問 Blueroot

(42)

33

Blueroot 收到訊息後,會把節點 D 的位置照原路徑回覆給節點 S。

圖 4.21 Blueroot 告知目的地位址

(43)

34

經過節點的路徑回覆後,節點 S 收到了節點 D 的位置,並開始把路徑上經過的節 點地址帶上然後開始傳送封包。

圖 4.22 Source noded 開始傳送封包給目的地

(44)

35

因為在 Blueweb 中,在 relay 上浪費了太多的時間,若目的地在同一個微網中,

那節點去詢問 Blueroot 的次數也就會減少,也可避免許多不必要的 relay 時間,但 一個微網頂多只能有七個 Slaves,所以一旦電路比較大型時,勢必 Blueroot 被詢問 的次數也會有所增加,只要 Blueroot 一被詢問,那 relay 等待回覆的時間也就會相 對增加,於是在此我們提出假設每個 Master 都能擁有一個資料庫,在自己的微網路 中去更新自己的資料庫,一旦封包要開始傳遞,每一個 Master 會先查閱自己的資料 庫,若有目的地位址則就會直接回傳給原始點,若無則就會往上一層的 Master 詢問,

此時上一層的 Master 也會開始查閱自己微網路中的資料庫,動作會一直持續重覆,

直到問到為止,若上層的 Master 中都無路徑可到目的地,才會問到最上層的

Blueroot,主要目的希望能減少 relay 等待上的時間,但在每個 Master 的資料庫上 會擁有更多資料,成本也比 Blueweb 增加許多,但這樣每個 Master 都可幫忙分擔 Blueroot 的工作,讓資料也可在即時當中立即傳輸。

(45)

36

方式一開始與 Blueweb 一樣,會先詢問自己 Master 裡有無 Slave 的位址

Blueroot

S S S

M M M M M

D S S S S S

M

S S

S

圖 4.23 起始點向 Master 詢問目的地

(46)

37

若無,則不會回覆給節點 S,繼續往原 Master 的上一層 Master 詢問。

圖 4.24 若無則在繼續向上詢問

(47)

38

有節點 D 的位置則就會回覆消息給節點 S。

圖 4.25 發現目的地位址於是回傳資料

(48)

39

節點 S 便會開始把封包傳送到回覆的 Master 的位置,然後把封包傳給節點 D。

圖 4.26 起始點開始傳送資料到上一層 Master

(49)

40

如果節點 S 上層的所以 Master 皆無節點 D 的位置,最後就會直接問到最上層的 Blueroot,此作法就與原 Blueweb 的方式相同。

Blueroot

S S S

M M M M M

S S D S S S

M

S S

S

圖 4.27 若 Master 皆無資料,則作法與 Blueweb 一樣

Query

Reply

Data flow

(50)

41

4.4 Blueweb 特性

4.4.1 Blueweb 優點

Blueweb 最大的優點就是以網狀架構代替樹狀架構,減少 Blueroot 因資料流量 過大,而造成傳輸瓶頸問題。Relay 的角色是由 Slave 來扮演,解決了因 Master 的 角色切換而造成所屬的微網路內資料傳輸凍結的問題。

4.4.2 Blueweb 缺點

Blueweb 的連結過程中,Master 與 Master 間需有 Slave 當做連結,因此就會使 用到角色交換的機制,一旦使用這個機制兩個節點之間要交換的訊息比較多,因此花 上的時間比較長。此外,Blueweb 還需用到回傳連接的機制,因此 Blueweb 在連結時 間上,會比 Bluetree 來得長一些,而在每個微網路上,Master 都需有一個小型的資 料庫來記錄自己的 Slave,而 Blueroot 一樣擁有整個網路連結的資料庫,所以在成 本上也相對於比起 Bluetree 要昂貴許多。

(51)

42

第五章 模擬結果與結論

5.1 模擬環境參數設定

這次研究是使用 Matlab 軟體來模擬 Ad Hoc Networks 工具,所有模擬的環境參 數都相同,Bluetooth 的節點數都是 40 個,一共有 32000 個 Time slot,因藍芽是每 秒有 1600 跳,所以總時間就是 32000 除以 1600 共 20 秒,這邊我們有假設一個變數 n 的情況,n 分別是 1 到 8,封包數就是 400*n,藍芽產生的封包速度則是 1600/n,

然後針對這些我們模擬了四種方式,第一個是 Blueweb 原詢問式,詢問方式只會跳一 個 hop,若沒問到目的地就直接詢問 Route Master,第二種是一開始與 Blueweb 一樣,

但在詢問式上不相同,詢問跳過一次 hop 後若無目的地,則會再往上一層的 hop 跳,

直到問到為止,所以頂多問到最上層也是 Route Master,第三種與第四種是由第二 種延伸出來只是由微網變成散網的方式。

(52)

43

5.2 模擬結果

5.2.1 封包完成數(Throughput)

此模擬主要變數是 n,因為我們設定是 1~8,我們先用 1 來舉例,Slot Number 是 32000,而 Avg 是 1600/n,因為 n 為 1,所以 Slot Number 除上 Avg 則就是我們執 行總秒數,因 n 的變數,所以我們有 20、40、60、80、100、120、140 與 160 秒的模 擬結果。

圖 5.1 封包完成數量(Throughput)

在封包完成數,如圖 5.1 當中可看見 Modify_1、Modify_2 與 Modify_3 跟 Blueweb 所完成的數量差不多,當封包產生率越快,整體網路封包較多時,在 Modify_1 的效 能比 Blueweb 有更好的效能。

(53)

44

5.2.2 封包完成佔全部封包百分比

此模擬主要變數是 n,因為我們設定是 1~8,我們程式當中是將需執行總封包數 的初始值設在 400,我們先用 1 來舉例,總封包數就是 400*n,所以一共有 400、800、

1200、1600、2000、2400、2800 與 3200 個總封包。

封包完成百分比

80 82 84 86 88 90 92 94 96 98 100

400 800 1200 1600 2000 2400 2800 3200 傳送的的總封包數

封包完成百分比

Blueweb Modify_1 Modify_2 Modify_3

圖 5.2 封包完成百分比

圖 5.2 中可看見 Modify_1、Modify_2、 Modify_3 與 Blueweb 在封包數少的時候,

所完成傳送的封包是差不多的,當封包數越來越多時,Blueweb 完成的封包數開始越 來越少,因為在詢問當中,有可能都往 Route Master 詢問而造成壅塞,而 Modify_1 的效能比起 Blueweb 好很多,有可能在詢問 Route Master 次數變少,所以就直接回覆 傳送,而在 Modify_2 與 Modify_3 有可能因路由表與 Route Master 一樣,所以數據上 與 Blueweb 差不多。

(54)

45

5.2.3 封包延遲(Packet delay)

此模擬的作法是封包一旦開始傳遞,則會在路徑經過多少節點數的時間去除以節 點一開始發封包開始詢問每經過的節點加上回覆時的時間與封包完成傳送的總時 間,於是這稱為封包傳遞上的延遲。

封包延遲數量圖

0 500 1000 1500 2000 2500

400 800 1200 1600 2000 2400 2800 3200 總封包數

P ac ke t de la y

時槽

Blueweb Modify_1 Modify_2 Modify_3

圖 5.3 封包延遲時槽(Packet delay slot)

在圖 5.3 中,在總時槽上詢問路由表時有可能會花費許多時間,因此造成封 包延遲的增加。Modify 的部份,每個 Master 都擁有大的路由表,所以在 Packet Delay 上,當封包數越來越多時,modify Blueweb 的部份會比較原 Bluewb 好許 多。但在 Modify_2 與 Modify_3 當中,因為 local master 擁有較大的路由表,所 以詢問 route master 的次數相對減少,所以詢問延遲時間改善沒有 Modify_1 好。

而在 Modify_1 當中可知,傳送封包的時間就比 Blueweb 快上許多。

(55)

46

5.2.4 詢問封包延遲(Query delay)

此圖要表示每個節點詢問路由表所需佔用的時間,若問的越多層或越多個節點,

則詢問延遲時槽的次數就會一直累加上去。

詢問延遲數量圖

0 500 1000 1500 2000

400 800 1200 1600 2000 2400 2800 3200 總封包數

詢問延遲時槽

Blueweb Modify_1 Modify_2 Modify_3

圖 5.4 詢問延遲時槽(Query delay slot)

在圖 5.4 中,我們可以發現我們將路由表擴大的話,Route Master 被詢問的 次數已經有明顯減少,Modify_2 與 Modify_3 當中,因為 local master 擁有較大的 路由表,所以詢問 route master 的次數相對減少,所以詢問延遲時間改善沒有 Modify_1 好,此外,Upstream Master 所串聯起來的路由表,已經相當於接近於 Route Master 的路由表,所以模擬結果上可明顯發現 modify Blueweb 有效的減少 了詢問的時間

(56)

47

5.3 結論

經由這次對藍芽的模擬來運算路由詢問的方式,原本每一個 Master 節點都有自 己的路由表,但目的地不在自己擁有的路由表時,則就會直接向 Route Master 詢問,

因為 Route Master 會擁有所有的路由表,所以一旦所有的節點都向 Route Master 詢問,Route Master 就會一直在忙碌的狀態,也會讓節點在詢問過程當中照成許多 不必要的浪費於等待上,而無法做到現今社會講究的節能減碳的效果,所以我們採用 每個 Master 節點都可以是 Route Master,當封包在詢問的時候,若節點有目的地位 址時,就可直接回覆訊息給原點告知目的地位置,在封包詢聞的次數上可明顯的減 少,在模擬上 relay 的同時間裡,延遲的數量已比原 Blueweb 降低許多,因路徑上已 減少不少,所以在詢問與回覆的時間就可縮短許多,此時就能達到最大效能,封包即 時傳送出去,也可讓 Route Master 減少工作,甚至還有機會達到休眠的效果,因每 個節點都需有路由表,所以在成本架設上會比原先的設計想法貴上許多,因此在成本 考量上就需將此因素一併考量。

在實驗數據中,我們可發現相同的傳送封包與時間,原路由法與快取路由法完成 數皆差不多,但在傳送封包與中繼的延遲上,卻比原路由的方式降低許多,表示我們 這次模擬的方式有達到比較好的效率,封包立即時間就能傳送出,可避免網路上的壅 塞,導致速率上的降低。

(57)

48

參考文獻

[1] Chih-Min YU, Student Member, Shiang-Jiun LIN, and Chia-Chi HUANG,On the Architecture and Performance of Blueweb: A Bluetooth-Based Multihop Ad Hoc Network. IEICE TRANS. COMMUN., VOL.E89–B, NO.2 FEBRUARY 2006

[2] Bluetooth SIG, “Specification of the Bluetooth System, Version 4.0”, http://www.bluetooth.com/dev/specifications.asp

[3] Ibrahim AI-Kassem, Sanaa Sharafeddine and Zaher Dawy, “BlueHRT: Hybrid Ring Tree Scatternet Formation in Bluetooth Networks,” IEEE Symposium on Computers and Communications, pp. 165-169, 2009.

[4] Chih-Min Yu, Yi-Wei Chiu, “HMT: A hybrid mesh tree approach in forming Bluetooth networks,” International Computer Symposium (ICS), pp. 441-444, 2010.

[5] Zhifang Wang, Thomas R.J., and Haas Z., “Bluenet – A New Scatternet Formation Scheme,” Proceedings of the 35th Annual Hawaii International Conference on System Sciences, pp. 779-787, 2001.

[6] Salonidis, T., Bhagwat, P., Tassiulas, L., LaMaire, R., “Distributed topology construction of Bluetooth personal area networks,” Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings, vol.

3, pp. 1577-1586, 2001.

[7] Chih-Min Yu, Shiang-Jiun Lin and Chia-Chi Huang, “On the Architecture and Performance of Blueweb: A Bluetooth-Based Multihop Ad Hoc Network,” IEICE trans.commun., vol. E-89-B, No-2, Feb 2006.

[8] Yanqin Yang, Minyi Guo, Feilong Tang, Gongwei Zhang, “Black Bridge: A Scatternet Formation Algorithm for Solving a New Emerging Problem,” Computational Science and Engineering International Conference, vol. 2, pp. 470, 2009.

[9] Alkhrabash, A.-A.S., Elshebani, M., “Routing schemes for bluetooth scatternet applicable to mobile ad-hoc networks,” Telecommunication in Modern Satellite, Cable, and Broadcasting Services. TELSIKS 9th International Conference, pp.

560-563, 2009.

[10] Basagni, R. Bruno, and C. Petrioli, “Performance Evaluation of A New Scatternet Formation Protocol for Multi-hop Bluetooth Networks,” in Proceedings of the 5th International Symposium on Wireless Personal Multimedia Communications, Honolulu, Hawaii, USA, pp. 208-212, 2002.

(58)

49

[11] J. Zhang and W. K. G Seah, “Topology-based Capacity Analysis for Ad Hoc Networks with End-to-End Delay Constraints,” in Proceedings of the IEEE 6th CAS Symposium on Emerging Technologies: Frontiers of Mobile and Wireless Communication, Shanghai, CN, pp. 541-544, 2004.

[12] Jeroen P. F. Willekens,Ad Hoc Routing in Bluetooth,M.J. van Sinderen and L.J.M.

Nieuwenhuis(Eds.):LCNS 2213,pp. 130-144,2001.

[13] Chenn-Jung Huang, Wei-Kuang Lai, Sheng-Yu Hsiao, Hao-Yu Liu and Rui-Lin Luo,A Bluetooth Routing Protocol Using Evolving Fuzzy Neural Networks,INTERNATIONAL JOURNAL OF WIRELESS INFORMATION NETWORKS Volume 11, Number 3, 131-146, DOI: 10.1007/s10776-004-7872-5 [14] J. Y. Khan, J. Wall and M. A. Rashid, “Bluetooth-Based Wireless Personal Area

Network for Multimedia Communication”, Electronic Design, Test and Applications, 2002. Proceedings. The First IEEE International Workshop, pp. 47-51, 2002.

[15] 藍芽技術規範,http://www.bluetooth.com。

[16] 藍芽技術規範,http://www.bluetooth.com。

[17] 李明昌,“具有拓撲調整能力之藍芽分散網路由協定”,元智大學資訊工程學系研 究所碩士論文,2002.

[18] Jennifer Bray﹑Charles F Sturman 著,林俊宏、楊順興、李忠來、黃億詳、

吳建偉 編譯“藍芽:無線技術連結”全華科技圖書股份有限公司,2001。

參考文獻

相關文件

This kind of algorithm has also been a powerful tool for solving many other optimization problems, including symmetric cone complementarity problems [15, 16, 20–22], symmetric

• Definition: A max tree is a tree in which the key v alue in each node is no smaller (larger) than the k ey values in its children (if any). • Definition: A max heap is a

As is known, practices of Medicine Buddha correspond to the concept of development of the pure land in the human world; since Master Taixu, Master Hong Yi and Master Yin Shun in

In the process of globalizing Chinese Buddhism, Venerable Master Hsing Yun has made outstanding contributions to the spread of Buddhism in the West. His efforts and achievements

Responsible for providing reliable data transmission Data Link Layer from one node to another. Concerned with routing data from one network node Network Layer

Establish the start node of the state graph as the root of the search tree and record its heuristic value.. while (the goal node has not

Given a graph and a set of p sources, the problem of finding the minimum routing cost spanning tree (MRCT) is NP-hard for any constant p > 1 [9].. When p = 1, i.e., there is only

• Given a (singly) linked list of unknown length, design an algorithm to find the n-th node from the tail of the linked list. Your algorithm is allowed to traverse the linked