• 沒有找到結果。

在車載網路中以親和傳播機制建構檔案相關叢集之研究 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "在車載網路中以親和傳播機制建構檔案相關叢集之研究 - 政大學術集成"

Copied!
69
0
0

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

全文

(1)國立政治大學資訊科學系 Department of Computer Science Nation Chengchi University 碩士論文 Master’s Thesis. 立. 政 治 大. ‧ 國. 學. 在車載網路中以親和傳播機制建構檔案相關叢集之研究. ‧. File-based Clustering for VANET using Affinity Propagation. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 研 究 生:曾立吉 指導教授:張宏慶. 中華民國一百年七月 July, 2011.

(2) 在車載網路中以親和傳播機制建構檔案相關叢集之研究 File-based Clustering for VANET using Affinity Propagation. 研 究 生:曾立吉. Student:Li-Ji Tzeng. 指導教授:張宏慶. Advisor:Hung-Chin Jang. 資訊科學系 碩士論文. 學 ‧. ‧ 國. 立. 治 政 國立政治大學 大. y. sit. Nat. A Thesis. n. er. io. submitted to Department of Computer Science National Chengchi University al iv n C in partial fulfillment ofhthe he i URequirements. ngc. for the degree of Master in Computer Science. 中華民國一百年七月 July, 2011.

(3) 中文摘要 車載網路受到各方廣泛討論,激發出許多新的議題,由於車載網路的通訊 品質不穩定,速度快、節點多,封包傳送不易,因此許多人都採用分群式 架構增進效能,以集中式管理群組,避免封包被重複傳送,降低封包碰撞 的機會。然而,現有的分群機制只能用在即時方面的應用,在檔案傳輸方. 政 治 大 面效能不足。本篇論文擬改善 C. Shea 等人[1]所提出的分群機制 File-based 立. ‧ 國. 學. Affinity Propagation Cluster, FAPC,建立兼具動態性和檔案相關性的叢集架. ‧. 構,並且提出改善失去叢集管理員的重建機制,以提升分群的穩定性及吞. sit. y. Nat. 吐量(throughput)。最後,我們以模擬證明所提出的方法優於 C. Shea [1]. n. al. er. io. 的方法,以 query hit ratio、retrieve file ratio、average number of clusters 及. iv. average cluster head durationC為效能指標,觀察在不同時間、車輛數目及車 Un h. engchi. 輛速度時效能表現。. i.

(4) Abstract Vehicular Ad-hoc Network (VANET) has been widely discussed and many issues have been proposed. Due to VANET’s unstable quality, varying speed, lots of mobility nodes, it’s not easy to deliver packets. Thus many researchers suggested using cluster architecture to enhance performance. Because of the central management, we can avoid duplication of packets in the same cluster and decrease the probability of packet collision. However, we find most of the. 治 政 大 cluster architectures are suitable for real-time applications, but not for file 立 transfer. In this research, we improve C. Shea’s [1] method by adding. ‧ 國. 學. file-similarity by classifying into groups and reselecting cluster head, when the. ‧. group of nodes have not cluster head. This cluster architecture can enhance. y. Nat. stability and throughput. Finally, we use simulation to prove that our method. er. io. sit. outperforms Chen’s [1] cluster method in terms of query hit ratio, retrieve file. n. ratio, average number ofaclusters and average cluster head duration.. iv l C n hengchi U. ii.

(5) 致謝辭 將近三年的研究生活裡,最讓我誠摯感謝的莫過於指導教授張宏慶教授, 讓網路觀念薄弱的我了解無線網路的知識進而完成論文。每當開會報告時, 老師都不遺餘力給予明確的指導和提出潛藏的問題,並指引研究議題方向, 讓我獲益良多。. 政 治 大 平常生活中,實驗室裡充斥著討論的聲音,研究各種方法的效率、有何缺 立. ‧ 國. 學. 點和優點、以及適用的場合,因為這些討論奠定扎實的學術觀念。特別感. ‧. 謝國淵學長平時指正我錯誤的觀念,跳跳、香腸一起討論聊天紓解壓力、. sit. y. Nat. 互相砥礪,世剛同學鼓勵我們並告知我們畢業的道路,佩璇、彪哥、鐘毅. n. al. er. io. 學弟妹幽默的搞笑和傾聽煩惱的耐心,以及其他實驗室的同學和學弟的幫. iv. Ch 忙和勉勵,因為有大家的討論,讓我完成這篇論文。 Un engchi. 最後,特別感謝我親愛的雙親和爺爺,謝謝您們無條件給予我良好的讀書 環境、耐心地等待三年畢業時間。. 曾立吉 2011 年 8 月. iii.

(6) 目錄 第一章 簡介 ................................................................................................................................... 1 1.1 背景 .................................................................................................................................. 1 1.1.1 VANET 簡介 ..................................................................................................... 1 1.1.2 Affinity Propagation 演算法介紹: ................................................................ 6 1.2 研究動機與目的 ............................................................................................................. 9 1.3 論文組織與架構 ........................................................................................................... 10. 政 治 大 2.1 Affinity Propagation立 ....................................................................................................... 11. 第二章 相關研究......................................................................................................................... 11. ‧ 國. 學. 2.2 Social Cluster-based Overlay Structure ........................................................................ 13 2.3 Video Streaming for Vehicular Communication .......................................................... 16. ‧. 2.4 CBVANET ...................................................................................................................... 18. sit. y. Nat. 第三章 研究方法......................................................................................................................... 22. er. io. 3.1 問題分析........................................................................................................................ 22. n. al 3.2 File-based Affinity Propagation Cluster (FAPC)簡介 i v................................................. 23 Un. Ch. e Cluster 3.3 File-based Affinity Propagation 24 hi n g c (FAPC)系統架構......................................... 第四章 模擬實驗與結果分析 .................................................................................................... 35 4.1 模擬環境........................................................................................................................ 35 4.2 硬體和軟體環境參數設定........................................................................................... 36 4.3 Mobility Model–SUMO and MOVE............................................................................. 38 4.4 實驗結果及分析 ............................................................................................................ 40 第五章 結論與未來工作 ............................................................................................................ 56. iv.

(7) 表目錄 表 2.1 鄰近節點資訊及環境參數............................................................................................... 12 表 3.1 鄰近節點資訊.................................................................................................................... 25 表 4.1 硬體及軟體環境................................................................................................................ 36 表 4.2 參數及參數值.................................................................................................................... 37 表 4.3 三種方法在不同模擬時間時 Query Hit Ratio 效能數據表......................................... 42 表 4.4 三種方法在不同模擬時間時 Retrieve File Ratio 效能數據表 .................................... 43. 政 治 大 表 4.6 兩種方法在不同模擬時間時 Average CH Duration 效能數據表............................... 45 立 表 4.5 兩種方法在不同模擬時間時 Average Number of Clusters 效能數據表.................... 44. ‧ 國. 學. 表 4.7 三種方法在不同速度限制時 Query Hit Ratio 效能數據表......................................... 47 表 4.8 三種方法在不同速度限制時 Retrieve File Ratio 效能數據表 .................................... 48. ‧. 表 4.9 兩種方法在不同速度限制時 Average Number of Clusters 效能數據表.................... 49. sit. y. Nat. 表 4.10 兩種方法在不同速度限制時 Average CH Duration 效能數據表............................. 50. er. io. 表 4.11 三種方法在不同車輛數目時 Query Hit Ratio 效能數據表....................................... 52. n. al 表 4.12 三種方法在不同車輛數目時 Retrieve File Ratio 效能數據表 .................................. 53 iv Un. Ch. 表 4.13 兩種方法在不同車輛數目時 e Average h i of Clusters 效能數據表.................. 54 n g cNumber 表 4.14 兩種方法在不同車輛數目時 Average CH Duration 效能數據表............................. 55. v.

(8) 圖目錄 圖 1.1 DSRC 頻寬分配圖.............................................................................................................. 2 圖 1.2 Inter-Vehicle Communication (IVC).................................................................................. 3 圖 1.3 Roadside-to-Vehicle communication (RVC) ..................................................................... 4 圖 1.4 Hybrid of IVC and RVC ..................................................................................................... 4 圖 1.5 Responsibility 和 Availability 訊息的傳遞[2].................................................................. 6 圖 2.1 群組架構[4] ....................................................................................................................... 14. 政 治 大 圖 2.3 場景範例[5] ....................................................................................................................... 17 立 圖 2.2 節點vi 與節點 vj關係圖[4].............................................................................................. 16. ‧ 國. 學. 圖 2.4 分群大小演算法................................................................................................................ 19 圖 2.5 決定分群管理員演算法 ................................................................................................... 20. ‧. 圖 2.6 重選分群管理員演算法 ................................................................................................... 21. sit. y. Nat. 圖 3.1 FAPC 架構流程圖 ............................................................................................................ 30. er. io. 圖 3.2 行動節點狀態變換圖 ....................................................................................................... 31. n. al 圖 4.1 SUMO................................................................................................................................. 38 iv Un. Ch. engchi 圖 4.2 MOVE ................................................................................................................................ 39 圖 4.3 NAM ................................................................................................................................... 39 圖 4.4 三種方法在不同模擬時間時 Query Hit Ratio 效能比較 ............................................. 42 圖 4.5 三種方法在不同模擬時間時 Retrieve File Ratio 效能比較 ........................................ 43 圖 4.6 兩種方法在不同模擬時間時 Average Number of Clusters 效能比較........................ 44 圖 4.7 兩種方法在不同模擬時間時 Average CH Duration 效能比較 ................................... 45 圖 4.8 三種方法在不同速度限制時 Query Hit Ratio 效能比較 ............................................. 47 圖 4.9 三種方法在不同速度限制時 Retrieve File Ratio 效能比較 ........................................ 48 圖 4.10 兩種方法在不同速度限制時 Average Number of Clusters 效能比較...................... 49. vi.

(9) 圖 4.11 兩種方法在不同速度限制時 Average CH Duration 效能比較 ................................. 50 圖 4.12 三種方法在不同車輛數目時 Query Hit Ratio 效能比較 ........................................... 52 圖 4.13 三種方法在不同車輛數目時 Retrieve File Ratio 效能比較 ...................................... 53 圖 4.14 兩種方法在不同車輛數目時 Average Number of Clusters 效能比較...................... 54 圖 4.15 兩種方法在不同車輛數目時 Average CH Duration 效能比較 ................................. 55. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. vii. i Un. v.

(10) 第一章 簡介. 1.1 背景 1.1.1. VANET 簡介. 立. 政 治 大. 美國聯邦通訊委員會(FCC)於 1999 年分配頻譜頻段給車間及路邊裝置通訊使用,更在. ‧ 國. 學. 2003年制定了主要的無線通訊技術 Dedicated Short Range Communications (簡稱 DSRC)。. ‧. DSRC 通訊協定使用 5.850~5.925GHz 的頻段,以提供公用的安全性和隱私相關的應用服. sit. y. Nat. 務。分配的頻段及相關服務的主要目的為提供 VANET 運用在行動裝置的無線通訊上。. io. er. 透過隨意網路的通訊方式不必透過集中式 AP 的輔助,也就是無需依賴 infrastructure 來 完成並提供即時及安全性的應用,或是路旁交通號誌警告等。在非安全性應用方面則包. al. n. iv n C 括:即時交通資訊,路況資訊,繞道資訊,附近地點資訊及其他車輛在行駛中可能使用 hengchi U. 到的氣象或是前方路況相關服務等。如圖 1 為 DSRC 頻段分布圖,主要為相關的智慧型 運輸服務,讓車輛內嵌物件(On-Board Unit, OBU)互相連線或是提供與路邊裝置 infrastructure (Roadside Unit, RSU)通訊的能力。. 1.

(11) 立. 政 治 大. ‧ 國. 學. 圖 1.1 DSRC 頻寬分配圖[15]. ‧. sit. y. Nat. 行動車輛節點擁有內嵌車輛元件,因此俱有與路邊 infrastructure 和鄰近車輛節點通. io. er. 訊的能力。而路邊的 infrastructure 則擁有基地台(Access point)或閘道器(Gateway)的功能, 建置在路邊交通號誌或是設施中,提供檔案下載或是轉傳資料和延長通訊範圍的能力,. al. n. iv n C 如紅綠燈或其他警告號誌,讓行動節點進行無線遠距通訊取得所需資訊。從內嵌車輛元 hengchi U. 件和路邊的 infrastructure 觀點來看,可以將 VANET的通訊方式分成以下三種通訊模式:. (1) Inter-Vehicle Communication (IVC) 車間通訊 IVC 也可稱作 Vehicle-to-Vehicle,為在通訊範圍內車與車之間的通訊。每 台車都有傳送資料,轉傳資料的能力,但因距離不同,有時無法在 one-hop 成功傳送資 料。因此根據不同的傳送範圍,傳輸方式如下:. (A) 兩方車輛都在對方車輛的無線通訊範圍內,即為 one-hop 的距離,因此不需要其他 車輛幫忙轉傳,即可自行傳送至目標。 2.

(12) (B) 兩方車輛都不在對方車輛的無線通訊範圍內,此時資料可能就需要由其他行動節點 協助轉傳,即為 multi-hops。. 學 圖 1.2 Inter-Vehicle Communication (IVC)[15]. io. sit. Nat. (2) Roadside-to-Vehicle communication (RVC):. y. ‧. ‧ 國. 立. 政 治 大. er. Roadside-to-Vehicle communication 也可稱為 infrastructure-to-vehicle,意指行動節點. n. a. v. i l C 與路邊的 infrastructure 互相通訊傳送資料的傳輸方式 。 infrastructure, n行動節點行經路旁. hengchi U. 使用無線傳輸經由路旁的 infrastructure 連結到網際網路(Internet)與遠端伺服器或與遠方 行動節點交換資料的功能。. 3.

(13) 治 政 大 (RVC)[15] 圖 1.3 Roadside-to-Vehicle communication 立 ‧ 國. 學. (3) Hybrid of IVC and RVC. ‧. 整合 IVC 和 RVC 兩種無線傳輸方式,VANET 可延伸行動節點資料交換的通訊範圍,. sit. y. Nat. 並且也解決因距離過遠而導致行動節點中斷傳輸與網路拓樸的分段問題,讓道路上的行. io. n. al. er. 動節點都能藉由彈性的資料傳遞方式來得到更安全和更便利的服務。. Ch. engchi. i Un. v. 圖 1.4 Hybrid of IVC and RVC[15] 4.

(14) VANET 是一種特殊型式的 Mobile Ad Hoc Network (簡稱 MANET) 應用,雖然繼承 傳統 MANET 上的一些網路架構特性,但仍有許多不同特點,而 VANET 的特點如下所 示:. (1) 無電力消耗考量:直接由車輛提供電力,所以行動節點與 MANET 節點不同, 不需考慮小型節點上電力相關的議題。. 治 政 大 想取得的訊息也有所不同。 (2) 外部輔助訊息多:根據各節點使用者的喜好與需求, 立 例如:出外購物的使用者,想知道的應該是購物中心的方向、廣告、特價商品 ‧ 國. 學. 或特賣會訊息;而對一位病危或發生事故的傷者病患而言,他們迫切想得知的,. ‧. 則是醫院位置、哪條路徑比較壅塞等。. y. Nat. io. sit. (3) 網路拓樸多變:網路拓樸龐大,其中包含了大量行動節點,而行動節點的速度. n. a. l C 的速度快也造成拓樸密度的多變性。. hengchi. er. 快,常常變換位置,前一秒所建立的拓樸很可能現在就無法使用,而行動節點. i Un. v. (4) 移動規律性:行動節點依照道路的規劃行動,有一定的行動軌跡,較容易預測, 與傳統 MANET 不同,行動節點的運行方向無跡可循,因此在 VANET 的設計 上,可根據道路的特性去設計。. (5) 定位服務:行動節點擁有區域定位的功能,配合車上所搭配的 GPS 系統,可提 供導航類型的服務。. 5.

(15) 1.1.2. Affinity Propagation 演算法介紹:. Affinity Propagation[2]是由Frey等人於2007年在科學雜誌(Science Magazine)上提出的一 種新的無監督分群演算法。Affinity Propagation分群演算法快速、有效率地處理大量數據 資料的分群,該演算法只需要短時間即可找出適當的分群方式,而相較知名的分群演算 法K均值(K-means)演算法在相同時間內完成,但是分群準確度卻很低。. Affinity Propagation分群演算法把所有資料節點都假設為可能的分群中心點,都看作. 政 治 大. 是有向圖的節點,任兩個相鄰節點之間傳遞Responsibility和Availability兩種訊息,在該. 立. 到一個適當的分群中心和相對應的分群出現。. ‧ y. Nat. Sending Availability. er. io. sit. Sending Responsibility. aCompeting iv l C n Candidate U h e n g c h iCandidate Exemplar k′. n Candidate Exemplar k. 學. ‧ 國. 圖的有向邊不斷傳遞這兩種訊息並更新Responsibility和Availability的值,如圖所示,直. Exemplar k. a(i, k′) r(i, k). r(i, k′) ). Supporting Data point i′. a(i, k). Data point i. Data point i 圖 1.5 Responsibility 和 Availability 訊息的傳遞[2]. 6.

(16) Affinity Propagation演算法的過程:首先是建立相似性矩陣。Affinity Propagation分 群演算法建立 N × N 相似性矩陣S 作為開始,此相似性矩陣是由N個資料節點之間的相 似性所组成。資料節點間的相似性s(i, j)使用節點i和j目前所在的位置Xi 和Xj 計算,Xi 和Xj 值會根據相似性所考量的因素設定數值,像是位置、速度或是XY軸座標,相似性s(i, j)公 式定義如下: s i, j = − Xi − Xj. 2. (1). 政 治 大 節點i的分群中心。其值可由使用者直接設定,也可以使用公式計算出負的平方差表示。 立. 代表節點j作為節點i分群中心的適當程度。相似性的值越大,表示節點j越適合成為. ‧ 國. 學. 差異性越大計算出的平方差就越大,因此取負值表示:差異性越大,相似性越低,負的 平方差就越小。演算法開始的時候,對於各個節點k都定義一個初始值s(j, j ),其值又稱. ‧. 作參考度p (preference),其值越大,代表節點j就越適合當作分群的中心點。此時如果各. sit. y. Nat. 個節點都有可能作為分群的中心點,則將所有節點的初始值s都設定成相同的初始值s;. er. io. 而初始值s的大小也決定最後分群的群組數量,如果採用相似性的平均值作為初始值s的. n. al 值,得到分群數量是中等的;如果取最小值,得到的分群數量則是最小。 iv Ch. n engchi U. 建立好相似性矩陣和初始值s後,接下來需要計算兩種在節點之間傳遞的訊息,兩 種訊息分別為:. Responsibility r(i,k):Responsibility簡稱r(i, k),是從資料節點到候選中心點的一條邊, 傳送方向為節點i至節點k,意義為:考慮其他可能的候選中心點,節點k適合當節點i分 群中心的程度。計算公式如下: r i, k ← s i, k − max a i, k′ + s i,k′ k′ ≠k. (2) 7.

(17) 當i=k時,r k, k 表示節點k是否適合當作一個分群中心,如果r k, k 小於0,表示節點k 較適合作為分群內的組員而非群組的中心點。Maxk ′ ≠k a i, k ′ + s i, k ′ 是用以確認是否 有更相似的節點。假設在一個單位範圍內k與i的相似性最高,此時 s i, k − max k ′ ≠k a i,k ′ + s i, k ′ 計算出的值就為正數;如果i與k不是相似,則表示存 在一個k ′ ,k ′ 與i的相似性比i與k高,此時s i, k − maxk ′ ≠k a i,k ′ + s i, k ′ 計算出的數值則為負數。. Availability a i, k :Availability簡稱a i, k ,是從候選中心點到節點的一條邊。意義為:. 治 政 大 ,節點i選擇節點k當其分群 考慮其他節點選擇候選中心節點k為分群中心的適合度的同時 立 中心點的適合程度。其中self-availability簡稱a k, k ,表示節點k是否適合當作一個分群 ‧ 國. 學. 中心點。計算公式如下:. ‧. max(0, r(i′ ,k)). a i, k ← min 0, r k,k +. io. (0, r(i′ ,k)). n. al. i ′ ≠k max. er. a(k, k) ←. r k, k +. i∉ i,k. max. sit. y. Nat. i∉ i,k. (3). iv. 0, r C i′ ,k Un h 計算的值代表附近還有哪些節點與k相似性較高。. engchi. 不適合當中心點的節點計算出的r k, k +. i∉ i,k. max (0, r(i′ , k))都是負數,適合的節點. 所計算出的數值為正,最後再取最小值,如果不取最小值,就會影響r i, k 的計算。假 設累加r(i′ , k)後的a i,k 數值為很大的正數,此時代入s i, k − max k ′ ≠k a i, k ′ + s i, k ′ , 計算出的r i,k 就會變成負數;a(k, k) ←. i ′ ≠k max. (0, r(i′ , k))同樣也是計算有多少節點. 跟自己相似,越多節點與節點k相似,其值就越高,代表該節點k適合當作cluster head。. AP演算法過程敘述: 步驟一 計算n 個鄰近節點任兩節點的相似性矩陣s i, j = − Xi − Xj. 2. 步驟二 對所有的 i, k ,初始化Responsibility r(i,k)和Availability a(k, i)分別為0; 8.

(18) 步驟三 根據公式(2)計算或更新r(i,k); 步驟四 根據公式(3)計算或更新a(k, i); 步驟五 查看各個節點i,是否存在節點k,使a(i, k ) + r (i,k )為最大,便可確定節點k是 節點i的分群中心; 步驟六 查看此時狀態是否滿足小於迴圈次數或得到目標分群數量。只要此兩個條件之 一成立,則演算法停止,否則返回 step3. 1.2 研究動機與目的. 立. 政 治 大. ‧ 國. 學. 車載網路為動態變動的點對點網路架構,節點行動速度較快,網路拓樸的變動性高,因. ‧. 此對路徑的穩定性、網路吞吐量、封包碰撞機率都有一定的要求。最主要的問題是節點. sit. y. Nat. 之間容易造成訊號干擾與碰撞,因此許多文獻都採用分群的方式增加效能. io. er. [1][5][6][7][8][13][14],將許多節點分成一個自行管理的組別,一個群組的管理者 cluster head 負責群組內所有節點的通訊,維護群組的架構並擁有與其他群組通訊的能力,延伸. al. n. iv n C 單一群組的通訊範圍與檔案類型。分群的方式相當多,例如:position-based、lowest-id、 hengchi U highest-degree 和 beacon-based 等。其中 position-based 依照行車位置將車輛分組,在最. 前端的車輛或是最後端或是中間的車輛為群組的 cluster head;lowest-id 以一個通訊範圍 為單位,此範圍內編號最小的車輛作為 cluster head;highest-degree 以一個通訊範圍為單 位,此單位內能跟最多車輛通訊的車輛節點作為 cluster head;beacon-based 為不斷傳送 beacon 訊息,維護整個群組,其最大的目標則是盡可能減少群組內的改變,增加群組穩 定性。. 然而,這些分群的方式,都未考慮節點對檔案傳輸需求和節點的動態性,即使能適 當的根據動態性將各個車輛分配到各個群組,但卻無法提供所需要的檔案資料,因此這 9.

(19) 種分群方式只能提供一般大眾會用到的資料訊息,無法兼顧每位使用者的需求。所以我 們提出一個兼具動態性和檔案喜好的群組架構,此架構考慮兩個重要因素:節點行動性 和使用者對檔案的喜好特性。整合後的群組架構既擁有相似的動態性,也具備了相似的 檔案類型,以便群組內進行檔案傳輸。建立叢集後,考慮車輛速度變化大,可能造成群 組內車輛與 cluster head 失去聯繫,如何有效重新選擇一個新的 cluster head 或是轉變新 的 cluster head 是個大問題。在網路拓樸變動性大的環境中,某節點發現無可用的 cluster head,都使用事先定義的等待時間,直到時間結束,該節點才轉變成新的 cluster head, 此作法會造成當下頻寬資源的浪費,但該節點馬上轉換為 cluster head,也會衍伸出其他. 治 政 大 問題,萬一在短時間內遇到可用的 cluster head,那麼小範圍內存在著兩個 cluster head, 立 會彼此競爭資源、傳遞封包時產生碰撞。有鑑於此,我們在失去 cluster head 時,設定 ‧ 國. 學. 新的 cluster head 決定時間,此值隨著車流密度動態調整,一旦時間結束,依然無可用. ‧. 的 cluster head,該節點就變更為新的 cluster head,提供鄰近節點服務,以減少資源的浪. sit. n. al. er. io 1.3 論文組織與架構. y. Nat. 費,快速提供 cluster 成員服務。. Ch. engchi. i Un. v. 本論文分為五個章節:第一章為緒論,簡單介紹研究背景及論文的研究動機與架構。第 二章為相關研究,介紹各種分群的方式與其失敗的可能原因及其解決方法。這些失敗的 原因包括:考慮動態性未考量檔案喜好、考慮了檔案相似性但傳送距離可能過長。第三 章為研究方法,介紹本篇論文要解決的問題,並提出適當的解決方法 FAPC。第四章為 模擬實驗,觀察群組的分群傳輸驗證效能。第五章為結論與未來研究。. 10.

(20) 第二章 相關研究 2.1 Affinity Propagation. 政 治 大 文獻[1]中,將使靜態資料中的分群演算法與車用網路結合在一起,計算各個節點的動態 立. ‧ 國. 學. 相似性進而分群。與VANET整合後的架構稱為Affinity PROpagation for VEhiclar networks (APROVE),在此架構中,網路中的節點會與鄰近節點交換上一章所介紹的Responsibility. ‧. 與Availability,並決定分群結果。此演算法規定:在一個hop內的鄰近節點才能劃分在同. n. a. S i,lj = −. vj xi − xj + x′ i −i x′. n U i e h n g c Xi + Vx ,i ∗ τt Xi. Ch. xi =. er. io. sit. y. Nat. 一群組。演算法的相似性公式為. Yi. x′ i =. Yi + Vy,i ∗ τt (4). 使用負的Euclidean距離,來表示未來此兩節點的動態相似性。 Xi 是i節點現在的位 置, x ′ i 為X節點根據速度Vx ,i 和時間τt 計算未來位置,同理xj 也會經過相同的計算得知未 來時間τt 後的位置。. 此架構有兩個主要的部份為Message Passing and the Neighbor List與 Cluster Formation and Maintenance。首先,Message Passing and the Neighbor List:. 11.

(21) 整合AP演算法和車用網路後,此架構中各節點都擁有一個鄰居節點清單Ni,而每個鄰居 j. j. 節點的索引則為Ni 。 而Ni 為一個表格,記錄各鄰近節點的速度、位置、群組、所收到 的r(i,j)、a(i, j)、傳送出的r(i, j)、a(i,j)。 (x, y)j. 節點 j 的位置. (vx , vy )j. 節點 j 的速度. S(i, j). 節點 i 和節點 j 的動態相似性,由公式(1)計算出. a(i, j). 節點 j 傳給節點 i 的 availability,初始值為 0. a(j, i). 節點 i 傳給節點 j 的 availability,初始值為 0. 政 治 大. 立 節點 j 傳給節點 i 的 responsibility,初始值為 0. r(i, j). 節點 i 傳給節點 j 的 responsibility,初始值為 0. ‧ 國. 學. r(j,i). 收斂(converge)時,表示節點 j 為可用的 cluster head,. CHcnvg ,j. ‧. n. al. sit. 節點 j 剩餘的連結時間. y. 節點 j 的 cluster head. er. io. t expire. Nat. CHj. 此時值設為 1. iv 傳送 Responsibility 和 Availability 訊息的時間. TCM. n U i e h n gc 維護分群的時間. CI. 分群決定的時間 Clustering Interval. TM. Ch. 表 2.1 鄰近節點資訊及環境參數. 叢集的維護方式和格式:分群決定的時間Clustering Interval 簡稱為CI,傳送 Responsibility和Availability訊息的時間定為TM , TM 比CI小。在每個CI,節點i會使用公 式: CHi = arg maxj a i,j + r i, j (5) 12.

(22) 來決定cluster head。節點i只會考慮有設定 CHcnvg flag的鄰居節點,假設節點為j,此時 節點j就會成為cluster head。假設附近都沒有鄰居節點設定 CHcnvg flag,節點i就成為這 個群組的cluster head。而在每個Cluster Interval (CI)區間內,此架構也會維護這些分群, 而這個維護分群的時間為TCM 每個節點會根據鄰居節點清單內的texpire ,來清除附近的 鄰居節點。此時節點i需檢查cluster head是否還在鄰居清單內,假設消失,就要搜尋附近 有無其他的cluster head,假如找到一個以上則根據上面公式選取一個較佳的cluster head, 如果沒有找到任何一個cluster head,此節點自己成為新的cluster head。. 政 治 大 文獻[1]的架構根據行動性將各節點劃分群組,有效解決contention極 hidden terminal 立. ‧ 國. 學. 的問題,適用於車禍事故警告、傳送車況資訊、地區廣播訊息等應用,但對於檔案傳輸 方面沒有實際貢獻,因為各個群組擁有的檔案不一定是此群組成員需要的,很可能需要. ‧. 向遠方群組發出檔案要求後輾轉獲得的資料。此距離可能過大,造成檔案傳送失敗,降. sit. y. Nat. 低整體網路吞吐量。在維護整個cluster上,叢集成員會定期更新鄰居節點清單上那些節. er. io. 點已無法繼續通訊,進而清除這些節點資訊,接下來再檢查鄰居節點清單,查詢清單中. n. al 叢集管理員是否還存在。如果沒有找到,則在一個既定時間內搜尋鄰近節點是否有可用 iv Un. Ch. engchi 的叢集管理員,若查無,則此節點就自行成為叢集管理員,提供其他節點服務。然而, 時間長短可能會引發問題,假設設定的時間太長,則此節點長時間無法得到任何服務; 反之,時間設定較短,此節點快速成為叢集管理員,但很可能不久就可以發現可使用的 叢集管理員,此時該節點轉變為叢集管理員的動作分明是不需要的,而且也可能會跟既 有的鄰近管理員靠得太近,通訊範圍重疊,無法達到最大的效能,造成資源浪費的情形。. 2.2 Social Cluster-based Overlay Structure. 13.

(23) 由於車輛的高速移動,車載網路中的行動節點需要傳送較多的控制訊息來尋找鄰居節點 的位置和數量,而這些訊息是相當大的負擔,因此產生了一種新的架構:將一群行動節 點和一個固定節點進行分群,固定節點負責管理行動節點的分群架構,架構圖如下。. 政 治 大. 立. ‧ 國. 學 圖 2.1 群組架構[4]. ‧ y. Nat. io. sit. 文獻[4]建構出的分群式架構,分為三個部分:Social Cluster-based Overlay Structure、. er. Lifetime-aware Flooding Scheme及Connectivity-aware Retrieval Scheme。Social. n. a. v. l C Cluster-based Overlay Structure的主要架構為:挑選動態節點的因素考量是根據使用者喜 ni. hengchi U. 好的檔案類型來進行分配。假設兩個節點的檔案喜好是相似的,就會將此兩節點分到同 一個群組;反之,則分配到另一群組。每個節點i都會將其擁有的檔案分為幾類,並且記 錄起來,採用向量的格式表示: Wi. = Wi,k 1 ,Wi,k 2 ,… , Wi,k l , … (6). 其中每一個數值的計算方式為 Wi,k m =. Oi,k m Oi (7). 14.

(24) 其中Oi,k m 為k m 類檔案所佔的容量,Oi 為總容量空間,Wi,k m 為k m 類檔案站總容量的百分 n W =1,判斷是否相似的公式為 j=1 i,k j. 比,整個向量的數值總和. Similarity wi ,wj = cos. ,. Wi Wj. =. Wi. ×. Wj. ∙. Wi Wj. (8) 如數值超過預設門檻值即視為相似的節點,即將此兩節點與一個固定的管理節點劃 分在同一群組,此固定的管理節點稱之為cluster head。以此類推將所有節點分配至各個. 治 政 大 叢集,進行檔案交換,此方法在檔案取得上,有顯著的幫助,每個群組內的節點都有一 立 定的檔案相似性。 ‧ 國. 學. n. al. y er. (a 2 +c 2 ). 其中. sit. (a 2 +c 2 )𝑟 2 − ad−bc 2 −(ab +cd ). io. 𝐿𝐸𝑇 =. Nat. 與關係圖如下. ‧. Lifetime-aware Flooding Scheme是根據公式來決定兩輛車剩餘的連線時間[4],公式. Ch. a = vi cos 𝜃e𝑖 − nvgj cos c h𝜃𝑗i c = vi sin 𝜃𝑖 − vj sin 𝜃𝑗. i Un. v. 𝑏 = 𝑥𝑖 − 𝑥𝑗. 𝑑 = 𝑦𝑖 − 𝑦𝑗 (9). vi 𝜃𝑖 (𝑥𝑖 , 𝑦𝑖 ). vj 𝑟. 𝜃𝑗 (𝑥𝑗 , 𝑦𝑗 ) 15.

(25) 圖 2.2 節點vi 與節點vj 關係圖[4]. Connectivity-aware Retrieval Scheme是利用剩餘時間、要求的檔案和傳送的檔案,三 者計算出在剩餘時間內可傳輸的檔案大小,有效率的使用頻寬,不會因為多傳檔案造成 頻寬浪費或是封包碰撞的情形。此架構依照喜好性分群,讓檔案的取得和搜尋更有效 率。. 立. 政 治 大. ‧ 國. 學. 此架構可能會衍生出其他問題,對於動態性極高的車用網路車輛節點行動性高,短 時間內可能進行大範圍的移動,造成與固定位置的cluster head距離過遠,在進行通訊傳. ‧. 輸時,因為距離過遠需要多次轉傳才能送達目的端,進行多hop的傳送可能會造成封包. er. io. sit. y. Nat. 遺失,降低效能。. al. n. iv n C h e Communication 2.3 Video Streaming for Vehicular ngchi U. 文獻[5]提出一種用在即時影音相關的架構,其中包含Distributed Vehicles-Adaptive Clustering algorithm (DVAC)和Vehicles-Adaptive Peer-to-pEer Relay method (VAPER)。 DVAC接收訊息來調整車間通訊和群組架構的方法,這些步驟稱為V-procedures。 V-procedures將車輛節點根據行車方向劃分組別,把相同方向的車輛定義為同一個叢集, 而每個叢集都擁有一個獨特的叢集號碼,每個叢集則包含cluster-head 、cluster-tail和 cluster members。車輛節點使用DVAC來建立叢集並維護叢集相關的訊息,而cluster-head 和cluster-tail扮演了最重要的角色:延伸整個群組的通訊範圍和在VAPER架構中傳送即 16.

(26) 時影音的應用。決定叢集的方式是執行DVAC演算法以決定誰是cluster-head 、cluster-tail 和cluster members。詳細的方式是在1個hop間廣播自己的位置訊息,位於前方的車輛則 定為cluster-head,一旦決定cluster-head後,在1個hop範圍內的車輛節點的角色也會接著 公布,在最後面的車輛為cluster-tail,其餘車輛則視為此叢集的成員,cluster-head的決定 必須要在一開始就完成,接著決定cluster-tail。在叢集內的通訊,cluster-head是主要的管 理員,cluster-tail則扮演了備份管理員的角色。在叢集間的通訊,cluster-head和cluster-tail 執行延伸通訊範圍和增加可用的即時影音資料。除此之外,cluster-head和cluster-tail避免 相同叢集內封包碰撞的情形,可視為Inter-vehicle Communication (IVC)和. 治 政 大 Vehicle-to-Roadside Communication (VRC)的gateway。車輛的各種行為如:加速、減速、 立 離開、加入,都視為各種事件,V-procedures也提供相對應的處理。 ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 圖 2.3 場景範例[5]. VAPER則是規定由cluster-tail或cluster head其中之一向路旁的infrastructure取得需要 的檔案,再分發給叢集內要求檔案的行動節點,當路旁的infrastructure無法提供資料時, cluster-tail和cluster head會延伸通訊範圍,向前方或後方的叢集連線,直到找到一個叢集. 17.

(27) 的cluster-tail或cluster head擁有要求的資料,並且進行HOOK_ON 的步驟進行連結,進而 取得資料。. 此架構由前後兩方車群的cluster-tail和cluster head延伸了通訊範圍,讓兩個相鄰的群 組能夠互相通訊傳輸,也考慮到cluster head損壞或是無法提供檔案時,採用備份角色 cluster-tail的考量,並且重複利用cluster-tail和cluster head內的資料。但是對於多種檔案 或服務需求時,需將路旁全部infrastructure都升級提供其他服務和檔案,購買能存放各 種檔案類型的存放空間,因此,此架構的建置成本會大量提升。. 立. ‧. ‧ 國. 學. 2.4 CBVANET. 政 治 大. sit. y. Nat. io. al. er. Ramakrishnan 等人[7]根據行車速度和相對位置決定分群架構,稱為 Simple Highway Mobility Model (SHMM)。依照行車流量的大小,動態決定分群的大小,降低不同群組. n. iv n C 之間的干擾,並改進舊有 VANETh 分群模組中的群組建立、群組管理員的決定和重選群 engchi U 組管理員。其架構隨著車流大小調整分群大小,若車流量大,道路通訊狀況會變差,因 此切割的 cluster 選擇較小的,以減少干擾其他群組;反之,車流量小,切割的 cluster 範圍就大,如圖 2-4 所示。. X i , Yi = Get_Pos(n); Track the positions of nodes in cluster areas Ai , Bi = Subset (X i , Yi ); for(k=0;k<count(Ai );k++) { Find Movement Speed(N[k]) } if(average movement of all node speed is slow) { 18 Take the cluster size as smaller } else.

(28) 立. 治 政 大 圖 2.4 分群大小演算法[7]. ‧ 國. 學. 再根據速度和相對位置決定 cluster,考慮到通訊範圍,行車速度快的車輛會快速離. io. y. sit. Nat. 間提供傳輸能力,如圖 2-5 所示。. ‧. 開此車群,因此選擇車速最慢的,落在車流最後方的車子當 cluster head,以確保較長時. er. n. Procedure a l nodes in the Cluster i v Node_Count=Available n C For i=0 to Node_Count h e ngchi U Ti x = X position of node i at time T Ti y = Y position of node i at time T U=T+10; Ui x = X position of node i at time U Ui y = Y position of node i at time U DIFFi(x)=Find the difference between the X position of node i between the time T and U DIFFi(y)=Find the difference between the Y position of node i between the time T and U Find the direction of node movement If(slow moving node is in left end than all other nodes in the cluster and nodes are moving slowly towards the right 19 direction) then { select that as Cluster Head.

(29) 政 治 大. 立圖 2.5 決定分群管理員演算法[7]. ‧ 國. 學 ‧. 當 cluster head 的速度上升,代表可能會靠近甚至是離開 cluster 通訊範圍,此時以. y. sit. Nat. 同樣的方式選擇新的 cluster head 管理 cluster,如圖 2-6 所示。. n. er. io. function Track_Cluster() while(true) al { iv n C hengchi U X,Y=Get_Pos(Clusterhead) If(speed x > 𝑋𝑡ℎ𝑟𝑒𝑠ℎ𝑜𝑙𝑑 𝑎𝑛𝑑 speed(y) > Ythreshold ) { Finds the new node which has less mobility; } If(Current cluster head is near to cluster boundary) { Run the cluster head election algorithm; Copy data from old cluster head to new cluster head; Broadcasts changes to all other cluster heads; //cluster head updates its status and also updates their local cluster members// } 20 endif endif }.

(30) 圖 2.6 重選分群管理員演算法[7]. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 21. i Un. v.

(31) 第三章 研究方法 3.1 問題分析. 政 治 大 車載網路中,分群時考慮檔案相似性,每個行動節點對檔案的需求和喜好都不完全相同。 立. ‧ 國. 學. 在[1]中,雖然依照行動性劃分將各節點分配到最穩定的叢集中,但是只考慮到行動性, 無視於使用者對檔案的需求,此架構或許在車輛碰撞發出警告、得知鄰近區域資訊、前. ‧. 方行車狀況、未來路徑的天候狀態、即時應用,幾個方面有很大的幫助,但是對於其他. sit. y. Nat. 應用,如:音樂電影下載,因為叢集只依照行動性劃分,所以無法提供此方面應用,在. er. io. 長時間行駛的狀況下無疑是對時間的浪費,使用者很可能想一邊開車一邊下載檔案,或. n. al 是乘客也想在無聊的行車時間觀看電影聽聽音樂,這些都無法達成,因此需考慮叢集對 iv 檔案類型的喜好。. Ch. n engchi U. 簡單來說,考慮單一因素所建立群組可能會產生問題,例如:只考慮了行動性,那 麼此分群的節點彼此所需要的檔案可能無法由此分群內的節點所提供,需要與鄰近的群 組要求檔案;只考慮檔案相似性的分群方式,節點可能會把距離過遠的節點分配置相同 的群組,或是將行動性不同的節點分至相同群組,而這些節點在一段時間後,距離變的 遙遠,需進行多次跳躍傳輸,導致檔案傳輸的困難。. 22.

(32) 從重新決定 cluster head 的時間來看,高機動性的環境,車間的通訊可能因此斷斷 續續,當失去 cluster head 時,一般來說,行動節點會搜尋鄰近節點是否有無其他可用 的 cluster head,如果該節點馬上成為新的 cluster head 或是等到固定時間後才成為新的 cluster head 都不太適合。前者可能會造成新的 cluster head 和附近已存在的 cluster head 傳送範圍重疊,爭搶資源,傳送範圍下的組員接收封包也會發生碰撞的情形;如果是後 者使用事先既定時間,此時間可能會太久,以至於浪費這段時間可使用的資源頻寬。. 政 治 大. 3.2 File-based Affinity Propagation Cluster (FAPC)簡介. 立. ‧ 國. 學. 針對車載網路的特性,我們提出了兼具行動性與檔案相似性的分群架構:File-based. ‧. Affinity Propagation Cluster,簡稱 FAPC。FAPC 架構解決只考慮單一因素所建立群組產. io. er. 式,根據當下區域的流量動態設定等待時間。. sit. y. Nat. 生的缺點,建立分群同時考慮行動性與檔案相似性,並改善既有的重選 cluster head 方. al. n. iv n C FAPC 分群主要的想法為:將hAffinity Propagation e n g c h i U 演算法與檔案相似性整合,執行 Affinity Propagation 時不單只考量行動性也考慮檔案相似性。最初,廣播 beacon 封包額 外加入行動節點擁有的檔案描述,接受到封包後才計算行動和檔案的相似性,接著再將 各節點分配到最適當的群組。. 當一個群組失去cluster head時,根據行車密度決定新的cluster head,依照不同行車 流量動態決定新的cluster head門檻時間。在高密度車流的地區,車流位置變動性不大, 找到舊有的cluster head或是遇到新的cluster head,與之連線的時間也會因為行車緩慢而 有較長的連接時間,搜尋cluster head的門檻時間設定較長。如果門檻時間結束仍未找到 任何cluster head,該節點才會成為cluster head提供附近車輛服務。密度低的地區則反之, 23.

(33) 此地區密度低,加上車輛的高動態性,車輛位置變換極快,網路拓樸變動性高,與cluster head失去連結的可能性也較高,再次與之連結的可能性也低,因此門檻時間設定較短。 根據車流大小動態調整搜尋cluster head時間值,找到適當的cluster head或是自行變為 cluster head。. 分群特性. 政 治 大 群組內的車輛會有相似的行動性,群組有相當可靠的穩定性。 立. 具備動態性考量,群組內的每台車,計算各車之間的相對速度,再進行分群,. 2.. 擁有檔案相似性,群組中的車輛具備相似的檔案類型,就會被分到相同的群組,. ‧ 國. 學. 1.. 提供各車輛偏好的檔案類型。. ‧. 3.. 根據行車流量密度,調整尋找 cluster head 最大可等待的時間,適當決定等待. n. al. er. io. sit. y. Nat. 時間以搜尋和轉換 cluster head。. iv. 3.3 File-based Affinity Propagation Cluster (FAPC)系統架構 C Un. hengchi. 執行整合行動性和檔案相似的架構,每台車都擁有R i 陣列、Ai 陣列和鄰居節點的清單, R i 陣列、Ai 陣列分別記錄r(i,j)和 a(j,i),每個鄰居節點清單所記錄的資訊如下:. 24.

(34) (x, y)j. 節點 j 的位置. (vx , vy )j. 節點 j 的速度. d(i, j). 節點 i 和節點 j 的動態相似性,由公式(1)計算出. a(i, j). 節點 j 傳給節點 i 的 availability,初始值為 0. a(j, i). 節點 i 傳給節點 j 的 availability,初始值為 0. r(j,i). 節點 j 傳給節點 i 的 responsibility,初始值為 0. r(i, j). 節點 i 傳給節點 j 的 responsibility,初始值為 0. CHcnvg ,j. 節點 j 的 cluster head. CHj. 節點 j 擁有的檔案,單位為向量,由公式(6)計算出 節點 i 和節點 j 的檔案相似性,公式(8)計算出. n. al. er. io. sit. y. Nat. s(i, j). ‧. 節點 j 剩餘的連結時間. t expire Pj. 此時值設為 1. 學. ‧ 國. 立. 政 治 大 收斂(converge)時,表示節點 j 為可用的 cluster head,. Ch. 表 3.1 鄰近節點資訊v. n engchi U. i. 整個流程分為三個主要部份:首先為廣播和接收 HELLO beacon 封包,其次為廣播 RESP 和 AVAIL 封包,最後為接收 RESP 和 AVAIL 封包。首先,每台車廣播 HELLO beacon 封包給附近的車輛,其中包含:節點編號、位置、速度和擁有檔案類型。節點 i 接收到 節點 j 封包後,判斷兩個節點的行動方向是否一致,若一致就處理,否則就略過。使用 xi 、xj兩點的位置、速度和時間τt 求出兩點未來的位置,計算出動態相似性 d i,j ,並藉 由封包中Pj 欄位計算出和檔案相似性s i,j ,更新鄰居節點的資料。 x′ i =. Xi + Vx ,i ∗ τt Xj + Vx ,j ∗ τt ,x′ j = Yi + Vy,i ∗ τt Yj + Vy,j ∗ τt. d i, j =−. xi − x j 25. + x′ i − x′ j.

(35) s i,j = Similarity i,j = cos 其中 Pi,k m =. O i ,k m Oi. ,. Pi. ,. Pi Pj. =. ×. Pi. Pj. ∙. Pi Pj. = Pi,k 1 ,Pi,k 2 , … , Pi,k l , …. Oi,k m 為km 類檔案佔多少空間,Oi 為總空間大小. 第二部為接收到封包的節點 i 使用d i, j 欄位,藉由 1.1.2 小節所介紹的公式(2)和(3) 計算出 Affinity Propagation 演算法中初始的r(i, j)和 a(j, i),再利用公式(9)算出收斂的 r i, j 和a j,i 。. 立. r i,j. 政 治 大 ← d i, j − max a i, j′ + d i, j′ j′ ≠j. ‧. ‧ 國. 學 max(0, r(j′ ,i)). a j, i ← min 0, r i,i +. i ′ ≠k. iv. n. al. er. io. sit. Nat. max(0, r(i′ ,k)). y. j∉ i,j. a(k, k) ←. (2). (3). n old new e n g c h i +Uλr i, j. r i,j C=h1 − λ r i, j. a(j, i) = 1 − λ a j, i. new. + λa j, i. old. (9) 計算出此次封包的r(i, j)和 a(j,i),並分別加入兩個陣列R i 和Ai欄位中,其中λ為收斂係數, 多次計算後,r i, j 和 a(j, i)會漸漸收斂,分別趨近於一個數值,最後取兩數值做為最終 的r(i,j)和 a(j,i),再加上α和β權重值,根據公式(10)選出可用的 cluster head。 α{r i,i + a i,i } + β{s i, j } > 0 (10) α 為動態相似性的加權值,β為檔案相關性的加權值,選擇動態性或是檔案相關性為主, 同時考量兩種分群因素,根據α和β權重值設定,選出的 cluster head 則會有三種可能性: 26.

(36) 較高動態相似性和較低檔案相似性、較低動態相似性和較高檔案相似性,最後一種為中 等動態相似性和中等檔案相似性的三種 cluster head。符合公式的節點,表示已有適合的 cluster head,則將CHcnvg ,j設為 1,若無適合的節點則跳過此步驟,最後傳送 RESP 和 AVAIL 封包,其中 RESP 包含R i 陣列的資訊,VAIL 則擁有Ai 陣列和CHcnvg 欄位。. 第三部份為節點 i 收到節點 j 的 RESP 或 AVAIL 封包的處理,節點 i 在此兩種封包 內查詢R j 和Aj 資料,是否有節點 i 的編號,若有則更新鄰居節點清單節點 j 的r(j, i)和 a(i,j) 欄位,更新鄰居節點清單節點 i 的CHcn vg ,j,並檢查CHcnvg ,j欄位是否為 1。若為 1,則將. 治 政 大 更新為節點 j。若不存在或 節點 j 設為節點 i 的 cluster head,並將鄰居節點清單中的CH 立 欄位不為 1,就等待下一個可成為 cluster head 的節點,直到找到一個適當的 cluster head。 i. ‧ 國. 學 ‧. 將各節點分配至各相似的群組後,節點對檔案有所需求時,只需查詢鄰近節點清單. sit. y. Nat. 內各個節點的檔案相似性s i, j ,選擇較高相似性的節點。接下來則查看該節點的Pj 向量,. io. er. 得知該節點所擁有的檔案,查詢該群組中何節點擁有所需要的資料,最後向此節點發出 要求以獲得資料。若該群組沒有要求的資料,則透過 cluster head 延伸通訊範圍,向更. n. al. ni Ch 遠的群組發出要求,以獲得檔案資料。 U engchi. 27. v.

(37) 維護叢集. 行動節點會檢查t expire ,判斷各個鄰近節點是否還在通訊範圍內,若t expire 已倒數完,則 表示與該節點的距離已大於通訊範圍,因此將該節點從鄰居節點清單中移除。此時並檢 查 cluster head 是否還存在於鄰居節點清單中,若還在代表叢集正常運作,若已無 cluster head,則代表在短時間內,需要尋找一個適當的 cluster head。. 政 治 大 車輛,找到新的 cluster head 的機率也不同。Artimy [9]利用公式(11)判定所在區域的行車 立 不同車流密度影響車輛的行動距離,在失去 cluster head 時,處於不同車流密度的. Ts Tt. ‧. ‧ 國. fs=. 學. 密度,動態決定傳送範圍的大小,判斷車流壅塞或稀疏. Nat. y. (11). io. sit. Ts 為車輛停止不動加總的時間,Tt 為總行車時間,公式所代表的意義為一台車在移動時,. er. 停滯不動時間所佔百分比。其值高代表該區域為壅塞車流,其值低代表該區域為稀疏車. n. a. v. l C 流。Cluster Interval CI 為原本所設定的決定時間,計算出行動節點位於高低密度區域 ni. hengchi U. 後,經過行車流量動態調整後稱為CIdyn (dynamic Cluster Interval),公式如下 CIdyn = CI ∗ fS = CI ∗. Ts Tt. (12) 計算出CIdyn 後,失去 cluster head 連結的行動節點就開始倒數,當時間結束時該點才成 為 cluster head。藉由公式,根據車流量的大小調整等待尋找 cluster head 的時間,車流 量大密度高的區域,機動性低,找到原本 cluster head 的機率大。並且如果找到新的 cluster head,因為該區域行動性低,與此 cluster head 的通訊時間也會拉長,因此設定較高的等 待時間。車流量小密度低的區域,機動性較高,找到原本 cluster head 的機率低,因此. 28.

(38) 設定較低的等待時間。而在門檻時間結束後,若仍未找到適合的 cluster head,則該節點 成為新的 cluster head。. File-based Affinity Propagation Cluster (FAPC)架構流程圖. 前節完整敘述整體架構流程,從如何將檔案相似性與具行動性的 Affinity Propagation 結 合。而整合檔案和行動相似性之 Affinity Propagation 的主要步驟和原本 Affinity. 政 治 大 和 AVIL。關於維護 cluster 的部分,本論文著重在 cluster head 的部分,根據車流大小, 立 Propagation 一樣,為廣播和接收 HELLO beacon、廣播 RESP 和 AVAIL 封包及接收 RESP. ‧. ‧ 國. 學. 決定一個搜尋 cluster head 的最大時間,而整體流程如圖 3-1 所示:. n. er. io. sit. y. Nat. al. Ch. engchi. 29. i Un. v.

(39) FAPC start. Check cluster head exists? Broadcast HELLO beacon No. Broadcast RESP and AVAIL packet. 立. Receive RESP and AVAIL packet. ‧ 國. ‧. Yes. 政 治 大. 學. END. No. Calculate time to search cluster head. Check CHcnvg in AVAIL is 1 ?. Yes. n. al. Ch. No. Yes. er. io. sit. y. Nat Check car leave ?. Time is over?. i Un. v. This node become a new cluster head. i e n gBecome c h cluster. member and maintain cluster No. Yes. 圖 3.1 FAPC 架構流程圖. 30.

(40) 節點狀態圖. 行動節點所擁有的狀態為:Node does not cluster、Cluster Member、Node does not have cluster head 和 Cluster Head。首先,執行完 FAPC,根據演算法判斷節點成為分群的管理 員或是成員,因此轉變為 Cluster Member 或是 Cluster Head,Cluster Member 如果在一 段時間後,在維持 cluster 時,更新鄰居節點清單時,發現已無 cluster head 能提供服務, 此時則轉為 Node does not have cluster head 的狀態,並計算出最大搜尋等待 cluster head. 政 治 大 未用完就找到 cluster head,就再次變回 Cluster Member 狀態,狀態轉變圖如下: 立. 的時間。時間使用完,則此節點成為 cluster head 並轉變為 Cluster Head 狀態,若在時間. ‧ 國. 學 Find cluster head. Detect no neighbor. Detect no cluster head. io. sit. Cluster Member. er. Use FAPC cluster. y. ‧. Nat. Node does not cluster. n. al. C hBecome a cluster headU n i engchi Use FAPC cluster. v. Timeout Detect no neighbor. Cluster Head. 圖 3.2 行動節點狀態變換圖. 31. Node do not have cluster head.

(41) File-based Affinity Propagation Cluster (FAPC) 分群虛擬碼. 根據上一節的流程圖、節點狀態圖及文字敘述,將 FAPC 分群架構寫成原始虛擬碼。. Step1 Broadcast and Reception Hello Beacons. foreach node j broadcast HELLO beacon :< 𝑗, (𝑥, 𝑦)𝑗 , (𝑣𝑥 , 𝑣𝑦 )𝑗 ,𝑃𝑗 > end foreach. 政 治 大. 立. 學. ‧ 國. foreach node i. receive HELLO beacon. ‧. if node j and node i have the same direction. sit. y. Nat. calculate dynamic similarity 𝑑 𝑖, 𝑗. io. er. calculate data similarity 𝑆 𝑖, 𝑗. Update j’s neighbor list entry:<𝑗, (𝑥, 𝑦)𝑗 ,(𝑣𝑥 , 𝑣𝑦 )𝑗 ,𝑑 𝑖, 𝑗 , 𝑆 𝑖, 𝑗 , 𝑡𝑒𝑥𝑝𝑖𝑟𝑒 >. n. al. Ch. engchi. end if end foreach. 32. i Un. v. //更新鄰居節點清單資訊.

(42) Step2 Broadcast RESP and AVAIL messages. foreach node i calculate neighbor j’s 𝑟 𝑖, 𝑗. //計算𝑟 𝑖, 𝑗. update new 𝑟 𝑖, 𝑗 𝑎𝑛𝑑 𝑜𝑙𝑑 𝑟 𝑖, 𝑗 with damping factor //多次計算收斂𝑟 𝑖, 𝑗 store 𝑟 𝑖, 𝑗 𝑖𝑛 𝑎𝑟𝑟𝑎𝑦 𝑅𝑖 calculate neighbor j’s 𝑎 𝑗, 𝑖. //計算𝑎 𝑗, 𝑖. 學. store 𝑟 𝑖, 𝑗 𝑖𝑛 𝑎𝑟𝑟𝑎𝑦 𝐴𝑖. if α{r i,i + a i, i } + β{s i, j } > 0. ‧. ‧ 國. 治 政 大 damping factor update new 𝑎 𝑗, 𝑖 𝑎𝑛𝑑 𝑜𝑙𝑑 𝑎 𝑗, 𝑖 with 立 //多次計算收斂𝑎 𝑗, 𝑖. y. sit. Nat. //檢查有沒有可用的 cluster head 𝐶𝐻𝑐𝑛𝑣𝑔 = 1. er. io. Endaif. n. iv l C n broadcast RESPhpacket < 𝑅𝑖 >i U engch broadcast AVAIL packet < 𝐴𝑖 , 𝐶𝐻𝑐𝑛𝑣𝑔 > end foreach. Step3 Receive RESP and AVAIL messages. foreach node i receive RESP or AVAIL packet form node j. 33.

(43) if node i’s id in 𝑅𝑖 𝑜𝑟 𝐴𝑖 update 𝑟 𝑗, 𝑖 𝑜𝑟 𝑎 𝑖, 𝑗 in the neighbor list entry //將鄰居節點清單的資料更新 //有可用的 cluster head. if 𝐶𝐻𝑐𝑛𝑣𝑔 ==1 update 𝐶𝐻𝑐𝑛𝑣𝑔 ,𝑗 set 𝐶𝐻𝑖 = 𝑗. //將節點 j 設定為 cluster head end if end if. 立. 政 治 大. end foreach. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 34. i Un. v.

(44) 第四章 模擬實驗與結果分析 4.1 模擬環境. 治 政 大 本論文研究目的,是讓使用者在行車時盡可能獲得需要的檔案,進而建立穩定又不失檔 立 案資料相關性的群組,因此採用 TCP 的傳送方式。本模擬將與 Social-Based Cluster 與 ‧ 國. 學. Affinity Propagation-Based Cluster 比較,以模擬時間、車輛速度和車輛數檢驗 FAPC 分. ‧. 群架構,並使用四個效能指標做為參考值:Average Cluster Member Duration、Average. sit. y. Nat. Cluster Head Duration、Query Hit Ratio 及 Retrieve File Ratio。Average Number of Clusters. io. er. 是指整個網路拓樸中有幾個分群,Average Cluster Head Duration 是指群組中的 Cluster Head 能提供服務時間的平均值,Query Hit Ratio 是指發出資料要求的車輛跟群組內車輛. al. n. iv n C 比對擁有資料的命中率,Retrieve h File Ratio 則是發出資料要求,而取得資料檔案大小的 engchi U 比率。前面兩個指標可以判斷此叢集架構的穩定性,是否可以長時間使用,而後面兩個 指標可以判定使用資料檔案相關性分群後,是否能提供群組所需要的資料。此模擬將採 用網路層以 TCP 的方式持續不斷送出要求資料,進行群組內的比對,並回傳要求的資 料。. 模擬平台所採用的模擬器版本為 Network Simulator 2.35 [12],它能計算真實環境的 網路系統架構,進而在電腦中模擬提供研究人員在此模擬軟體加入所提出的演算法,進 行分析和驗證。除此之外,也是許多文獻、研究人員所採用的模擬軟體,而且 NS2 用於 車用網路中的路由模組也比其他模擬軟體顯得完善,因此具備較高的公信力。在本論文 35.

(45) 中,我們選用 NS-2 做為模擬器,修改其中的模組,將本論文的研究機制實作在模擬中, 在不同環境中進行分析,並與其他文獻提出的機制做比較,並加上 Mobility Model。而 Mobility Model 是利用 SUMO (Simulation of Urban Mobility)[11]所產生雙向直線共四線 道的道路環境,道路長度設為 1 公里,並使用 SUMO 作為車輛駕駛模擬,以獲得更具真 實性的實驗數據。. 4.2 硬體和軟體環境參數設定. 立. 政 治 大. 使用 SUMO 產生車輛道路環境,產生的封包大小為 1000 bytes,並在 IEEE 802.11p 的模. ‧ 國. 學. 組中使用 BPSK 6Mbps 的 data rate。資料共有 100 種,分配到不同的 20 類型,每個類型. ‧. 各有 5 種資料,可傳送的資料共有 4 個檔案大小,以供傳輸。比較對象為 social-based. 軟體. sit er. al. n. 硬體. io. 硬體及軟體如下表:. y. Nat. cluster 與 Affinity Propagation-based cluster,藉此期望能達到最為真實的模擬環境。. Ch. engchi. i Un. v. 處理器. Intel Core I5 3.3GHz. 記憶體. 8.0 GB RAM. 作業系統. Ubuntu 11.04. 模擬軟體. NS2 version 2.35. 分析軟體. Microsoft Excel. 表 4.1 硬體及軟體環境. 36.

(46) 模擬參數如下表:. 環境參數. 參數值. 車輛數. 300,450,600,750,900. 每輛車行駛速度限制(m/s). 15~50 m/s. 網路拓樸. 1000m X 1000m (每個 block 250m X 250m). 道路. 4 lanes. 無線電傳輸半徑長度 r. 250m. 傳輸速度. BPSK 6Mbps. 傳輸資料封包大小. 立. 可傳輸資料種數 可傳送資料類型. 1k byte 政 治 大 100 20. ‧ 國. 學. 1MB, 4MB, 10MB. 比較對象. Affinity Propagation-Based Cluster Social Cluster-based Cluster Query Hit Ratio Retrieve File Ratio Average Number of Clusters Average Cluster Head Duration. n. al. er. io. sit. y. Nat. 效能指標. ‧. 可傳送單一資料大小. iv n C h 表 4.2 參數及參數值 engchi U. 37.

(47) 4.3 Mobility Model–SUMO and MOVE. 在車載網路的模擬上,SUMO 是個知名的 mobility model,而本次實驗也利用 SUMO 產 生雙向共 4 線道的道路模組(圖 4.1),再透過 MOVE 轉換成 tcl(圖 4.2),最後透過 NS2 模擬出實驗結果,如圖(4.3)NAM。其中車輛的行車速度及數量都由 SUMO 做控制。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. 圖 4.1 SUMO. 38. v.

(48) 立. 政 治 大. ‧. ‧ 國. 學. n. al. er. io. sit. y. Nat. 圖 4.2 MOVE. Ch. engchi. i Un. 圖 4.3 NAM 39. v.

(49) 4.4 實驗結果及分析. 實驗將與 Affinity Propagation-Based Cluster 及 Social Cluster-based Cluster,透過三個層 面做分析比較,分別為模擬時間、車輛速度限制及車輛數目,以驗證 FAPC 是否有較好 的效能。. 模擬時間. 立. 政 治 大. 圖 4.4,4.5,4.6,4.7 為在連續的模擬時間中觀察 Query Hit Ratio、Retrieve File Ratio、. ‧ 國. 學. Average Number of Clusters 及 Average Cluster Head Duration,以比較三種分群方法。在. ‧. 網路層使用 TCP、車輛數量設定為 450 輛車,最高車速限制為 30m/s,分別發出檔案要. er. io. sit. y. Nat. 求,盡可能取得要求的檔案。. 從圖 4.4 和表 4.3 來看 Packet Delivery Ratio 可觀察到將動態性 Affinity Propagation. al. n. iv n C 與檔案性相關的 Social Cluster-based FACP,在不同的模擬時間點,不同車 h e整合的機制 ngchi U 輛所發出的檔案要求,FACP 保有了 Social Cluster-based 檔案相關性的特性。因此,在 檔案搜尋方面,與 Social Cluster-based Cluster 的分群方式有相似的數據,兩者差距平均 範圍在 0.7%內。因為兩者都考慮節點擁有的檔案特性,再將這些節點分配至適當的群 組。反觀 Affinity Propagation 的分群,只考慮動態性卻不管檔案所擁有的檔案資料,因 此,當節點發出檔案要求時,能提供的資料非常有限,效能因此降低,相較於 Affinity Propagation,FAPC 在效能上提升了 2.88 倍。在觀察 Retrieve File Ratio,圖 4.5 和表 4.4, 在 Social Cluster-based Cluster 中使用大量的經費建置多個 RSU 作為 cluster head 管理叢 集並提供服務,但是卻可能因為節點的動態性,造成長時間後位置大幅改變,需要長距 離傳送資料,需要使用多次跳躍轉傳,減低效能。而 FACP 分群考慮動態性分群,節點 40.

(50) 都在附近,假使分配的叢集無法提供檔案,該叢集的 cluster head 也會負責向鄰近其他 叢集發出檔案要求,盡可能取得檔案,因此能提升平均檔案傳輸效能 26%,達到低建置 成本卻能提升與 Social Cluster-based Cluster 的效能。Affinity Propagation 因為不考慮檔 案特性,效能因此受限,相較於 Affinity Propagation,FAPC 提升了 3.5 倍的效能。根據 圖 4.6 和表 4.5 觀察 Average Number of Clusters,因為 Social Cluster-based Cluster 會選擇 路旁 RSU 作為 cluster head 管理動態的節點,整個模擬環境中 RSU 的數量為叢集數,叢 集數量是一個固定數值,因此在這效能指標不跟 Social Cluster-based Cluster 比較。FAPC 保有 Affinity Propagation 的動態性分群,因此,在叢集上的建置跟 Affinity Propagation. 治 政 大和 Affinity Propagation 的效能差距 叢集有著同樣穩定的叢集數據結果,數據顯示 FAPC 立 在 0.7%內。觀察圖 4.7 和表 4.6 的 Average Cluster Head Duration,按照剛才所敘述的 Social ‧ 國. 學. Cluster-based Cluster,此方法選用 RSU 作為 cluster head,模擬過程中 RSU 至始至終都. ‧. 是 cluster head,因此不和此方法比較,FAPC 在 cluster head 更換時,考慮當下的行車環. sit. y. Nat. 境,動態調整縮短等待和搜尋 cluster head 的時間,當 Affinity Propagation 和 FAPC 兩種. io. er. 分群方法中的叢集成員同時失去 cluster head 時,FAPC 能在較短時間決定新的 cluster head,拉長下一個 cluster head的使用時間,所以有較高的 Average Cluster Head Duration。. al. n. iv n C Affinity Propagation 則會按照既定的等待時間,直到等待時間結束,該節點才會成為新 hengchi U. 的 cluster head,Affinity Propagation 在決定 cluster head 時,會比 FAPC 花費較多的時間, 使用新的 cluster head 開始時間會比較晚開始,也因此會有較短的 Average Cluster Head Duration,在此 FAPC 延長了 2%時間,實驗中提升時間最長為 7%。. 41.

(51) Query Hit Ratio. Query Hit Ratio vs. Simulation Time 0.5 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0. FAPC Affinity Propagation Social-Based Cluster. 60. 政 治 大. 90 120 150 180 210 240 270 300 Simulation Time. 立. Affinity Propagation. 0.407. 0.091. 0.404. 0.113. 0.401. 0.131. 0.412. 0.428. 0.111. 0.417. 180. 0.414. 0.099. 0.427. 210. 0.412. 0.097. 0.423. 240. 0.407. 0.116. 0.419. 270. 0.412. 0.107. 0.437. 300. 0.424. 0.101. 0.426. 120 150. y. al. 0.404. n. 90. io. 60. Ch. e 0.402 ngchi U. sit. Simulation Time. Nat. FAPC. er. Clustering Protocol. ‧. ‧ 國. 學. 圖 4.4 三種方法在不同模擬時間時 Query Hit Ratio 效能比較. v ni. Social-Based Cluster. 表 4.3 三種方法在不同模擬時間時 Query Hit Ratio 效能數據表. 42.

(52) Retrieve File Ratio. Retrieve File Ratio vs. Simulation Time 0.45 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0. FAPC Affinity Propagation Social-Based Cluster. 60. 90 120 150 180 210 240 270 300. 政 治 大. Simulation Time. 立. 圖 4.5 三種方法在不同模擬時間時 Retrieve File Ratio 效能比較. ‧ 國. 學 Affinity Propagation. Social-Based Cluster. 0.357. 0.081. y. 0.351. 0.376. 0.082. sit. 0.363. 0.363. 0.079. iv. 0.321. n 0.091 0.374 engchi U. 0.325. 0.381. 0.091. 0.307. 210. 0.373. 0.0811. 0.308. 240. 0.363. 0.073. 0.303. 270. 0.368. 0.087. 0.294. 300. 0.373. 0.087. 0.291. Simulation Time. 90. 180. al. n. 150. io. 120. Nat. 60. Ch. ‧. FAPC. er. Clustering Protocol. 表 4.4 三種方法在不同模擬時間時 Retrieve File Ratio 效能數據表. 43.

(53) Average Number of Clusters vs. Simulation Time 45. Average Number of Clusters. 44 43 42 FAPC 41. 40. 立. 政 治 大. Simulation Time. ‧. ‧ 國. 90 120 150 180 210 240 270 300. 學. 39. 60. Affinity Propagation. er. io. sit. y. Nat. 圖 4.6 兩種方法在不同模擬時間時 Average Number of Clusters 效能比較. Clustering Protocol. FAPC n i v. n. al. Simulation Time. Ch. engchi U. Affinity Propagation. 60. 41.5. 40.4. 90. 41.5. 41.8. 120. 41.8. 41.3. 150. 42.0. 40.6. 180. 41.8. 40.6. 210. 40.7. 41.9. 240. 41.5. 42.0. 270. 42.5. 40.6. 300. 40.4. 40.9. 表 4.5 兩種方法在不同模擬時間時 Average Number of Clusters 效能數據表 44.

(54) Average CH Duration vs. Simulation Time Average CH Duration(sec). 84. 82 80 78 FAPC 76. Affinity Propagation. 政 治 大. 74 72. 立. 90 120 150 180 210 240 270 300. 學. Simulation Time. ‧ 國. 60. 圖 4.7 兩種方法在不同模擬時間時 Average CH Duration 效能比較. ‧ y. Nat. FAPC. al. n 60 90. Affinity Propagation. er. io. Simulation Time. sit. Clustering Protocol. Ch. engchi. i Un. 82. v. 78. 83. 82. 120. 81. 80. 150. 82. 80. 180. 81. 80. 210. 83. 78. 240. 79. 80. 270. 81. 80. 300. 83. 79. 表 4.6 兩種方法在不同模擬時間時 Average CH Duration 效能數據表. 45.

(55) 車輛速度限制. 圖 4.8,4.9,4.10,4.11 為在不同車輛速度限制中觀察 Query Hit Ratio、Retrieve File Ratio、 Average Number of Clusters 及 Average Cluster Head Duration,比較三種分群方法。在網 路層使用 TCP、模擬時間為 300 秒以及車輛數量設定為 450 輛車,分別發出檔案要求, 盡可能取得要求的檔案。. 政 治 大 將各節點分群,也使用 Social-Based Cluster 的分群方式,將檔案資料性納入分群時的考 立 圖 4.8 和表 4.7 可以看出,FAPC 分群會採用 Affinity Propagation 演算法依照動態性. ‧ 國. 學. 量,因此有穩定的叢集架構,群組內的檔案也有一定的相關性。因此,發出檔案要求時, 群組內的 Query Hit Ratio 都穩定維持在一定的範圍 0.4%內,相較於原始的 Affinity. ‧. Propagation 分群方式,效能提升 2.93 倍。圖 4.9 和表 4.8 則顯示當速度增加,在動態性. sit. y. Nat. 提高的狀態下,行動節點高速移動,以至於叢集的變動性較大,造成檔案回傳的困難,. er. io. 而造成 Retrieve file Ratio 效能下降。相較於 Social-Based Cluster,FAPC 會將動態性相似. n. al 的節點分配到同樣的分群內,同樣在速度提高的狀況下,效能也會下降,但是下降幅度 iv Un. Ch. engchi 卻沒有 Social-Based Cluster 來的快,在較高速度時平均效能提升 31%,效能上最高提升 44%。圖 4.10 和表 4.9 也因為前面所敘述的原因,在 Average Number of Clusters 上不與 Social-Based Cluster 比較,此項目也因為行車速度限制的提高,節點有高動態變動性, 效能的下降也反應在叢集分群的數量上。FAPC 和 Affinity Propagation 兩者分群方式的 效能都會因為行車速度的加快,增加叢集的數量,兩種方法的差距也在 0.5%內。圖 4.11 和表 4.10,也因為前面所敘述的原因,不與 Social-Based Cluster 比較,因為環境的高變 動性,造成 cluster head 維持不易,造成多次的 cluster head 轉換,以至於 cluster head 平 均執行時間下降,但相較於 Affinity Propagation,FAPC 最高提升 14%的時間。. 46.

(56) Query Hit Ratio vs. Simulation Time Query Hit Ratio. 0.5 0.4 0.3 FAPC. 0.2. Affinity Propagation 0.1. Social-Based Cluster. 0 15. 20. 25. 30. 35. 40. 45. 50. Velocity Limit (m/s). 政 治 大. 圖 4.8 三種方法在不同速度限制時 Query Hit Ratio 效能比較. 0.423. 0.091. io. 25. 0.415. 0.112. 0.412. 0.442. 0.102. 0.412. al. y. Nat. 20. sit. ‧ 國. Affinity Propagation. ‧. FAPC. Velocity Limit (m/s) 15. 學. Clustering Protocol. er. 立. Social-Based Cluster 0.415. v i0.125 n U. 0.397. 0.121. 0.425. 40. 0.407. 0.105. 0.408. 45. 0.423. 0.103. 0.393. 50. 0.432. 0.091. 0.413. n. 0.410. 30 35. Ch. engchi. 0.438. 表 4.7 三種方法在不同速度限制時 Query Hit Ratio 效能數據表. 47.

(57) Retrieve File Ratio vs. Velocity Limit. (m/s) Retrieve File Ratio. 0.5 0.4. 0.3 FAPC. 0.2. Affinity Propagation. 0.1. Social-Based Cluster. 0 15. 20. 25. 30. 35. 40. 45. 50. Velocity Limit (m/s). 治 政 大 File Ratio 效能比較 圖 4.9 三種方法在不同速度限制時 Retrieve 立 ‧ 國. 學. FAPC. Affinity Propagation. Social-Based Cluster. 15. 0.391. 0.082. 0.381. 0.398. 0.082. 0.398. 0.083 v i n. 0.342. 0.084. 0.320. Clustering Protocol. n. 30. al. Ch. e 0.371 ngchi U. sit. io 25. er. Nat. 20. y. ‧. Velocity Limit (m/s). 0.378. 35. 0.384. 0.087. 0.292. 40. 0.348. 0.068. 0.241. 45. 0.331. 0.071. 0.257. 50. 0.323. 0.067. 0.251. 表 4.8 三種方法在不同速度限制時 Retrieve File Ratio 效能數據表. 48.

(58) Average Number of Clusters. Average Number of Clusters vs. Velocity Limit (m/s) 45 44 43 42. 41. FAPC. 40. Affinity Propagation. 39 15. 20. 25. 30. 35. 40. 45. 50. 政 治 大. Velocity Limit (m/s). 立. 圖 4.10 兩種方法在不同速度限制時 Average Number of Clusters 效能比較. ‧ 國. 學. Clustering Protocol. Affinity Propagation. ‧. FAPC. al. n 25 30. Ch. sit. 41.1. 20. er. 41.3. io. Nat 15. y. Velocity Limit (m/s). 41.5 n. engchi U. iv. 41.0 41.5 41.3. 41.9. 41.3. 35. 42.7. 42.4. 40. 42.8. 42.3. 45. 42.7. 42.5. 50. 43.4. 43.2. 表 4.9 兩種方法在不同速度限制時 Average Number of Clusters 效能數據表. 49.

(59) Average CH Duration(sec). Average CH Duration vs. Velocity Limit (m/s) 85 80 75. 70 65. FAPC. 60. Affinity Propagation. 55 50 15. 20. 25. 30. 35. 40. 45. 50. 政 治 大. Velocity Limit (m/s). 立. 圖 4.11 兩種方法在不同速度限制時 Average CH Duration 效能比較. ‧ 國. 學 FAPC. ‧. 15. 84.1. y. 80.3. 20. 82.5. sit. Clustering Protocol. Affinity Propagation. 80.4. Nat. io. al. n. 25. Ch. er. Velocity Limit (m/s). i Un. 80.1. v. 79.7. e n g c h i82.0. 78.2. 35. 81.6. 75.4. 40. 78.7. 72.6. 45. 71.7. 65.6. 50. 60.2. 55.2. 30. 表 4.10 兩種方法在不同速度限制時 Average CH Duration 效能數據表. 50.

(60) 車輛數目. 圖 4.12,4.13,4.14,4.15 中在不同車輛數目中觀察 Query Hit Ratio 、Retrieve File Ratio、 Average Number of Clusters 及 Average Cluster Head Duration,比較三種分群方法。在網 路層使用 TCP,模擬時間為 300 秒,最高車速限制為 30m/s,分別發出檔案要求,盡可 能取得要求的檔案。由此實驗可得知車輛數愈多對 FAPC 愈有提升,因為 FAPC 分群建 立的叢集成員會根據鄰居節點清單得知該叢集成員所擁有的檔案資訊,所以車輛數目越 多,鄰居節點清單就越大,所以提升資料的取得機會。. 立. 政 治 大. 圖 4.12 和表 4.11 表示當車輛密度不同時,相較於 Affinity Propagation,考慮到檔案. ‧ 國. 學. 性層面的 Social-Based Cluster 和 FAPC在 Query Hit Ratio都有所提升。隨著車輛數變多,. ‧. 建置的叢集也因此密集,叢集擁有的種類也隨之上升。就算該叢集無法提供的檔案資料,. sit. y. Nat. 但因為高密集度,短距離內一定會有其他的叢集存在,所以提供的檔案種類變多,對. io. er. Query Hit Ratio 會有幫助,曲線也因此有緩緩上升的趨勢。Social-Based Cluster 和 FAPC 平均差距在 0.7%內,相較於 Affinity Propagation 卻提升了 2.31 倍。圖 4.13 和表 4.12 顯. al. n. iv n C 示 Retrieve File Ratio 隨著車輛變多,效能也隨之提升,理由與前面相同,相較於 Affinity hengchi U Propagation,效能大幅度提升 3.79倍,對 Social-Based Cluster來說,平均效能提升 17.5%, 最高效能也提升 21%。圖 4.14 和表 4.13 表示 Average Number of Clusters 在車輛數提升 時,FAPC 和 Affinity Propagation 分群數量也因此上升,兩種分群方法的差距大約是正 負 0.1%到 2%間。原因是每個分群叢集的叢集成員數量都有限制,若不限制,一旦到達 無法維持原叢集運作能力時,效能就會降低,因此在車輛數上升時,叢集數量會變多, 此時也因為前面所敘述的原因不與 Social-Based Cluster 比較。圖 4.15 和表 4.14 表示 Average CH Duration 在車輛數提升時,FAPC 和 Affinity Propagation 使用相同的演算法, 根據動態性選取適合的 cluster head 節點,兩種方法有相似的效能。而隨著車輛數量的. 51.

(61) 上升,車流的行動力下降,造成車輛拓樸的低變動性,因此拉長 cluster head 的平均時 間,此指標效能最高提升 3.9%。. Query Hit Ratio vs. Simulation Time Query Hit Ratio. 0.5 0.4. 0.3 FAPC. 0.2. 0.1. 立. 0. 450. 600. 750. Social-Based Cluster. 900. Node Number (cars). 學. ‧ 國. 300. Affinity Propagation. 政 治 大. ‧. 圖 4.12 三種方法在不同車輛數目時 Query Hit Ratio 效能比較. y. Nat. Clustering Protocol. al. n 300 450. Social-Based Cluster. er. io. Velocity Limit (m/s). Affinity Propagation. sit. FAPC. Ch. 0.417. en gchi 0.410. iv 0.113 n U. 0.394. 0.124. 0.432. 600. 0.424. 0.112. 0.421. 750. 0.435. 0.125. 0.431. 900. 0.438. 0.118. 0.430. 表 4.11 三種方法在不同車輛數目時 Query Hit Ratio 效能數據表. 52.

數據

圖 1.2 Inter-Vehicle Communication (IVC)[15]
圖 1.4 Hybrid of IVC and RVC[15]
圖 2.3 場景範例[5]
圖 3.2 行動節點狀態變換圖
+7

參考文獻

相關文件

These include developments in density functional theory methods and algorithms, nuclear magnetic resonance (NMR) property evaluation, coupled cluster and perturbation theories,

Keywords: Mobile ad-hoc network, Cluster manager electing, Fuzzy inference rule, Workload sharing, Backup manager... 致謝 致謝

 培養具有檔案學基礎知識與文化知識,掌握現代資訊技術的基 本技能,能在檔案館、國家機關和企事業單位的檔案機構、資

◦ Disallow tasks in the production prio rity band to preempt one another.... Jobs

Since all nodes in a cluster need to send data to the cluster head, we use the idea of minimum spanning tree (MST for short) to shorten the total transmission distance to reduce

This bioinformatic machine is a PC cluster structure using special hardware to accelerate dynamic programming, genetic algorithm and data mining algorithm.. In this machine,

of each cluster will be used to derive the search range of this cluster. Finally, in order to obtain better results, we take twice the length of

Huan Liu and Dan Orban, “Cloud MapReduce: a MapReduce Implementation on top of a Cloud Operating System,” IEEE/ACM International Symposium on Cluster, Cloud and