• 沒有找到結果。

無線行動網路中以跨層設計混合式多點傳輸策略的研究 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "無線行動網路中以跨層設計混合式多點傳輸策略的研究 - 政大學術集成"

Copied!
61
0
0

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

全文

(1)國立政治大學資訊科學系 Department of Computer Science National Chengchi University 碩士論文 Master’s Thesis. 立. 政 治 大. ‧ 國. 學. 無線行動網路中以跨層設計混合式多點傳輸策略的. ‧. 研究. y. Nat. er. io. sit. Cross Layer Hybrid Multicasting Policy Over. n. al v Wireless Mobile Network i n Ch engchi U 研 究 生:陳吉定 指導教授:張宏慶 博士. 中華民國九十八年六月 June 2009.

(2) 無線行動網路中以跨層設計混合式多點傳輸策略的 研究 Cross Layer Hybrid Multicasting Policy Over Wireless Mobile Network. 研 究 生:陳吉定. Nat. er. io. sit. y. ‧. 國立政治大學 資訊科學系 碩士論文. 學. ‧ 國. 指導教授:張宏慶 立. Student:Chi Ding Chen 治 政 大 博士 Advisor:Dr. Ben Jang. A Thesis v i n submitted toC Department of Computer Science hengchi U National Chengchi University in partial fulfillment of the Requirements for the degree of Master in Computer Science. n. al. 中華民國九十八年六月 June 2009 1.

(3) 無線行動網路中以跨層設計混合式多點傳輸策略的研究. 摘要. 在無線傳輸網路環境日益普遍的今日,以往各類型只在固定網路傳輸上的 應用都紛紛的套用在具移動性要求的無線傳輸網路上。然而無線網路的傳. 政 治 大 輸環境比固定網路有更多使用上的條件限制以及需克服技術上的問題,像 立. ‧ 國. 學. 是與基地台傳輸距離的限制而產生對傳輸連線上換手( Handover )的需求,. ‧. 以及因為換手而導致傳輸時各種時間上的延遲( Delay )和抖動( Jitter ),若是. sit. y. Nat. 多媒體 (Multimedia) 的多點傳輸( Multicasting )需求,則更要對傳輸內容的. er. io. 特性和傳輸協定的可靠性、可擴展性及穩定性加以考量。再者因為在無線. n. a. v. l C 傳輸環境中接收端和發送端都可能是處於移動的狀態,所以整個傳輸架構 ni. hengchi U. 的健全性 ( Robustness )也十分重要。基於這些需求,本論文提出利用跨層 (Cross Layer)設計來匯集較低網層協定在傳輸速率(Throughput)上的優勢, 以及由較高網層協定提供之針對傳輸內容不同需求的應用彈性,降低協定 在既有網路中實現的困難度,以期Wireless網路提供多點傳輸時在滿足穩定 性及可靠性的要求下,達到最佳的傳輸速率表現。. 2.

(4) Cross Layer Hybrid Multicasting Policy Over Wireless Mobile Network. Abstract. Applications of wireless mobile network are prevalent in recent years. Many. 治 政 大 mobile connect to wireless. applications inherited or developed from wired network have been proposed to enable mobile nodes to. 立. network to access. resources/services from Internet using multicasting protocol. However, wireless. ‧ 國. 學. mobile networks have difficulty in forwarding information due to its inherent. ‧. dynamism and frequent topology changes. To multicast multimedia data stream, we have to consider not only the issues of reliability, robustness, scalability and. y. Nat. er. io. sit. stability of routing protocol, but also the content of transmission. Besides, when handover occurs frequently during transmission, the throughput decreases. n. a. iv. rapidly due to severe jitterl and C delay. This thesisnpresents a hybrid multicasting. hengchi U. policy for wireless mobile network to build a multicasting architecture using cross layer design of network layer and application layer to manage quality transmission according to flexible requirements. In summary, our goal is to optimize throughput in order to fulfill the requirement of reliability and stability of multicasting in wireless mobile network.. 3.

(5) 目錄 第一章 ........................................................................................................................................8 1.1 前言 .............................................................................................................................8 1.2 研究動機 ....................................................................................................................8 1.3 研究方向與方法 ........................................................................................................9 1.4 論文架構 ..................................................................................................................10 第二章 ...................................................................................................................................... 11 2.1 群播協定概論 .......................................................................................................... 11 2.2 Tree-based 群播協定 ............................................................................................13 2.2.1 PIM-SM 群播協定 ........................................................................................14 2.2.2 CBT 群播協定 ..............................................................................................15 2.2.3 DVMRP 群播協定 ..........................................................................................16 2.2.4 PIM-DM 群播協定 ........................................................................................16 2.2.5 MOSPF 群播協定 ..........................................................................................17 2.2.6 AMRoute 群播協定 ......................................................................................17 2.2.7 AMRIS 群播協定 ..........................................................................................18 2.2.8 MAODV 群播協定 ..........................................................................................18 2.3 Mesh-Based 群播協定 ............................................................................................18 2.3.1 ODMRP 群播協定 ..........................................................................................19 2.3.2 PAST-DM 群播協定 ......................................................................................19 2.4 Ring-Structured 群播協定 ..................................................................................20 2.4.1 EMMR 群播協定 .............................................................................................20 2.5 其他群播協定 ..........................................................................................................21 2.5.1 Application layer 群播協定 ...................................................................21 2.5.2 SSM 群播協定 ..............................................................................................22 2.5.3 Hierarchical structure 群播協定 ........................................................24 2.5.4 Cross Layer 群播協定 ..............................................................................25 2.5.5 AAMRP群播協定 ............................................................................................28 2.5.6 特殊群播協定 ..............................................................................................29 第三章 ......................................................................................................................................31 3.1 Multicasting Scenario ........................................................................................31 3.2 Communication Agent ............................................................................................32 3.3 Coordinator Server Functionality ..................................................................34 3.3.1 Data Buffer ................................................................................................34 3.3.2 Congestion Control ..................................................................................35 3.3.3 Switch Protocol When Router Without IGMPv3 Support ..................36. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 4. i n U. v.

(6) 3.3.4 Source Discovery Agent ..........................................................................36 3.4 Multicasting Implementation ............................................................................38 3.4.1 IGMPv3 ..........................................................................................................38 3.4.2 IGMPv3 Packets Delivery ........................................................................39 3.4.3 Multicasting Process ..............................................................................41 第四章 ......................................................................................................................................44 4.1 Mathematical Analysis ........................................................................................44 4.2 模擬拓樸 ..................................................................................................................47 4.3 參數設定 ..................................................................................................................47 4.3.1 Simulation Parameters ............................................................................48 4.3.2 Operation During Simulation ................................................................48 4.4 數據分析與比較 ......................................................................................................49 第五章 ......................................................................................................................................53 參考文獻 ..................................................................................................................................55. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 5. i n U. v.

(7) 圖表目錄. 圖 2.1 單播與群播的示意圖...................................13 圖 2.2 MNet[20] 資訊轉發的架構..............................22. 政 治 大 圖 2.3 RingCast[27] Overlay ................................25 立. ‧ 國. 學. 圖 2.4 NICE[29] 架構示意圖..................................26. ‧. 圖 2.5 TrAM[31] 運作示意圖..................................28. sit. y. Nat. 圖 3.1 Diagram of Multicasting Scenario ....................34. er. io. 圖 3.2 Communication Control Agent Structure ...............35. n. a. v. l C ..................................38 圖 3.3 封包排程決策流程圖 ni. hengchi U. 圖 3.4 Source Discovery Agent 的運作示意圖 .................39 圖 3.5 IP Packet Layout/Header..............................41 圖 3.6 IGMPv3 Packet Layout/Header..........................42 圖 3.7 Group Record Layout..................................43 圖 3.8 Joining Process......................................44 圖 3.9 Leaving Process......................................45. 6.

(8) 圖 3.10 Packet Data Delivery................................45 圖 3.11 Packet Data Queuing.................................46 圖 4.1 訊息成本分析模型 ....................................46 圖 4.2 Network Topology for Simulation .....................49 圖 4.3 Simulation for Throughput ...........................52 圖 4.4 Simulation for Delay ................................53. 政 治 大 圖 4.5 Simulation for Jitter ...............................54 立 ‧. ‧ 國. 學. 表 2.1 IP Address of Multicast Protocol ....................14. n. er. io. sit. y. Nat. al. Ch. engchi. 7. i n U. v.

(9) 第一章 導論. 1.1 前言. 政 治 大 的使用環境,使用者可以隨時隨地的使用無線網路 ,且提供各移動式設備(Mobile Device) 立 相對於固定網路的穩定性和高傳輸速率,無線傳輸網路為終端使用者提供了更方便. ‧ 國. 學. 間更方便的相互通訊以滿足使用者多樣的傳輸需求。各類通訊器材所使用的無線網路可 能不盡相同,個人的行動電話可能是透過 UMTS,而個人的筆記型電腦或 PDA 可能是透過. ‧. 802.11x 連上網路,而移動裝置如何在各類不同的異質網路中切換,並非本論文的研究. sit. y. Nat. 重點,本論文旨在探討在 Ad Hoc 無線網路上多點傳輸的應用在使用上所面臨的問題該. n. al. er. io. 如何透過對通訊協定訂定的修改來解決,並強化原來的應用。. 1.2 研究動機. Ch. engchi. i n U. v. Multicasting 技術的應用有助於增加頻寬使用率, 及滿足人們在多煤體的使用需 求。然而在實際應用上有很多的問題需克服,尤其是在 Mobile 的環境中,像是如何維 護 Routing 資訊及 Multicasting 群組管理和對 Source 的監聽等議題。 以往的解決方案中大都是應用在 WAN 中,而針對 Mobile 環境所提出的解決方法 有些是修改原自 WAN 中的提案,有些是只針對特定的 ISO layer 提出有關 Throughput 和 Routing 的最佳化,而較少考慮到對多媒體本身封包內容的特性和協定在網路中實 作的困難度。我們在此提出的 CLIMP (Cross Layer Hybrid Multicasting Policy Over Wireless Mobile. Network ),是針對現行的 SSM (Source Specific Multicast) 在. 8.

(10) Multicasting 上的應用,加上 Cross Layer ( Application Layer / Network Layer) 的 Cooperative Strategy 以期在較穩定及可靠的 Multicasting 架構中達到更好的資 訊傳送品質,並使資料在 Multicasting 中的傳輸能達到較高的 Throughput。. 1.3 研究方向與方法 群播技術應用在固定網路已行之多年,相關的研究和技術也比較成熟,但仍受限於 使用環境的不同(網路中節點數多寡,頻寬限制等)而有稀疏模式和密集模式的對映解決. 政 治 大 使用率(Bandwidth Usage),群播的特性除了 Data Packets 的傳送外,還需要較多的 立. 方案。此外針對群播的特性,許多論文都有提出一些評估群播協議的指標項目,如頻寬. Control Message 來做群組管理(Group Management)和路由樹狀結構(Routing Tree)的. ‧ 國. 學. 維護以保持協議的可用性,所以頻寬的使用率是評估 Multicasting 的一項重要指標。. ‧. 另外需強調其穩定性(Stability),它用來表示當網路中的節點加入群播群組或脫離群. y. Nat. 播群組時,其樹狀結構處理 Routing 和協議對 Group Management 的反應速度及處理成. er. io. sit. 本,除此之外,也要考慮其擴展性(Scalability),如果某一個群組協議只能用在某些 限制區域(如 Intranet),則其適用性必大打折扣,同時也要強調其健全性. al. n. v i n (Robustness),以因應可能的各種應用。 網路的基礎設施是既有條件,若某一個協議 Ch engchi U. 需修改大部份既有條件,則再好的協議可能都很難被套用在現有的設施上,因此也要考 量佈署(Deployment)的難易度。在無線網路的應用上還要關注其移動性(Mobility)所引 發的 Handover,因為它會加劇封包傳輸時的網路延遲(Delay)和抖動(Jitter)導致資訊 的傳輸量(Throughput)受到影響。 根據以上要求,衍生出許多相關研究,大都是針對 ISO OSI Layers 各分層加以探 討和著手解決,當然它們都解決了一些問題,但也都有一些限制的使用條件。例如:從 Physical Layer 可以強化它的 Throughput ; 而一個好的 Modulation Algorithm 套用 在 MAC 層也可以提供較穩定和高效率的資訊傳輸 ; 也有更多是改善 Routing 的策略來 提高傳輸速率並降低不必要的重複資訊傳送 ; 或是利用 Error Correction 來減少錯誤 9.

(11) 資料的重傳來提高傳輸率和減少控制訊息的傳送 ; 也有直接使用應用層的解決方案以 利新協議的佈署和提供一些額外的服務,例如:帳單處理,資料本身的加解密處理等。 這些針對某一網路層級來做研究的方案都解決了一些問題,可是仍有其他問題是毫無著 力的點。因此,有人提出複合式的解決方案,也就是 Cross Layer 的方式來綜合網路各 層解決方案的優點,使得解決方案更為完善,本論文就是採用 Cross Layer 的方法藉由 高效率的 IGMPv3(Internet Group Management Protocol Version 3)和 Communication Control Agent 的合作,配合 Cooperation Service (Application Layer)的控管來提. 政 治 大. 高 Throughput,同時有效降低 Delay 和 Jitter 的現象。. 立. 1.4 論文架構. ‧ 國. 學. 本論文分為五個章節,第一章是導論 ; 第二章是 Ad Hoc 無線網路多點傳播(群播). ‧. 的相關研究 ; 第三章詳細解說本論文提出的系統架構和機制,包括如何利用 IGMPv3 支. y. Nat. 援 SSM 的特性,輔以 Cooperation Service 的系統架構,來強化 Multicasting 的運作;. er. io. sit. 第四章針對模擬結果做分析和討論並與 SSM(Source Specific Multicast)做比較,分析 優缺點和特性,最後一章為總結和探討未來研究方向。. n. al. Ch. engchi. 10. i n U. v.

(12) 第二章 群播協定相關研究 群播協定是把來自同一個來源或多個來源的資料同時送給多個接收者的一種可靠 且有效的協定,在這個過程中會發生資料的重複傳送,重送路徑的維護和傳輸路徑最佳 化以及群播成員節點的資訊維護等相關問題,從而衍生出針對不同問題所提出的解決方. 政 治 大. 案,我們依其解決方法做分類來介紹目前和群播協定相關的研究著作。. 立. ‧ 國. 學. 2.1 群播協定概論. 要說明群播之前,我們必須先認識一下單播(Unicasting)和群播(Multicasting)在. ‧. 實作上有什麼意義上的差別,以了解為何要發展群播的技術,我們可以參看圖 2.1 來說. n. al. er. io. sit. y. Nat. 明:. Sender. Edge. Edge. Router. Router. Ch. engchi. i n U. v. Sender Receiver. Edge. Edge. Router. Router Receiver. Unicasting mode. Multicasting mode. 圖 2.1 單播與群播的示意圖 當 Sender 端有資料要發送到多個 receiver 端,在使用 Unicasting 方式來傳送時,它 會依接收端的個數 N,來重複發送同樣內容的封包 N 次到不同接收端,就好像是在處理 不同資料一樣,而如果是使用 Multicasting 方式來傳送,則發送端只需發送 1 次,而 11.

(13) 接收端的 Edge Router 會轉發相同的內容到同一群組中的不同接收者,由此可以看出無 論是在傳送效率上,還是對頻寬的使用率來看,Multicasting 在此類的應用都優於 Unicasting。當然 Multicasting 並非無懈可擊,它也存在一些問題需妥善處理才能發 揮其效能。由圖中可以看出從 Sender 端的 Edge Router 到接收端的 Edge Router 之間 的 Routing 資訊如何選出下一個轉發的 Router 就是一個需研究的問題。另外 Receiver 端可能隨時加入群播群組,接收 sender 端的資訊,也可能在下一秒就離開(遠離此 Base Station 收訊範圍或突然斷訊等)群組,所以如何維護群播群組資訊也是一個值得探討的. 政 治 大. 問題。針對群播協定的相關問題,已有相當多的研究論文被提出,本論文依據常見的分 類方式加以說明。. 立. Multicast 在演進成現在比較有效率的模式前,就是以 Unicast 的方式來達成. ‧ 國. 學. Multicast 的效果,比較為人所知有兩種,分別是 ASM [1](Any Source Multicasting). ‧. 和 Broadcasting,ASM 定義了一個特殊的目的位置(Destination Address)來做為. y. Nat. Multicast 的位置,因為 Multicasting 是屬於 Router 的應用,套用在 IP 的架構下需要. er. io. sit. 一個目的位置。IPv4[2]的 IP 範圍在 224.0.0.0 到 239.255.255.255,ASM 是使用 224.0.0.2(針對所有的 Routers),協定指定的其他常用位置可參看下表:. n. al. Ch. engchi. i n U. v. 表 2.1 IP Address of Multicast Protocol IP address. Multicast protocol. 224.0.0.0. Base multicast address. 224.0.0.1. All systems on this subnet. 224.0.0.2. All routers on this subnet. 224.0.0.4. DVMRP routers. 224.0.0.5. OSPF routers. 224.0.0.6. OSPF designated routers. 12.

(14) 224.0.0.13. PIM routers. 224.0.0.14. RSVP encapsulation. 224.0.0.22. IGMPv3 membership. 所謂的 Any Source Multicast 是指在節點加入群播群組時是以 Join(*,G)的訊息形態 來表達加入特定的群播群組,因為不知道 Source 的資訊,所以是以 * (代表 Any Source)來表示,直到 SSM[3](Source Specific Multicast)被提出後才以 Join(S,G)的. 政 治 大 應用。而 Broadcasting 是利用 224.0.0.1 的位置,也就是向所有的節點進行廣播式的 立 訊息形態來加入群播群組,同時也開啟了高傳輸效率和較低頻寬使用的 Multicasting. ‧ 國. 學. 傳送,這樣的方式雖然簡單,但完全沒有效率可言。. 2.2 Tree-based 群播協定. ‧. sit. y. Nat. 常見的傳送路徑的管理方式有 Tree-Based 和 Mesh-Bases 兩種,它們各有適用的. io. er. 環境和優缺點。有研究指出[4],在資料傳輸速率、群播群組的可靠性和高移動性以及 較高的網路負載(Traffic Loading)的情況下來考量,Mesh-Based 的協定有較好的表. al. n. v i n C h Status Detecting 現,因為 Mesh-Based 的群播協定在 e n g c h i U 上反應較好,可同時保有兩種以 上的路徑資訊,在 Node Fault 時,可以較快恢復運作,然而在維護節點間的路徑及群. 組成員的資訊時易造成 Broadcast Flooding,且能源使用效率(Energy Efficiency)也 會較低。而 Tree-Based 的協定則是在 Routing Overhead 上有較低的耗費,相對於 Mess-Based 的多路徑維護,Tree-Based 依靠一個 Group Leader (Core 或是 Rendezvous point)來建立群播樹並維護單一的 Routing 資訊,因此穩健性 (Robustness) 比較差。 有一些研究是混合運用如 Narada[5],它將加入的群播成員組織成 Mesh Network, 並且以 Tree 的形態來管理 Data Forwarding。常見的 Tree-Based 協定如以下簡述,首 先是 PIM-SM[6],在某些條件下(資料傳送速率達到設定的 Threshold 時)可以採用不同 的樹狀結構來因應環境變化,可由原來的 RPT(Rendezvous Point Tree)轉換成 SPT 13.

(15) (Shortest Path Tree)。再者是 PIM(Protocol Independent Multicast),顧名思義, PIM 不依賴某一特定群播路由協議,它可利用各種單播路由協議建立的單播路由表完成 RPF 檢查功能,而不是維護一個分離的群播路由表來實現群播轉發。由於 PIM 無需收發 群播路由更新,所以與其他群播(Multicasting)協議相比,PIM 頻寬和路由器的負載都 降低許多。 Tree-Based 可分成稀疏模式(Sparse Mode)和密集模式(Dense Mode)兩種形式,在 稀疏模式下採用公用樹結構,可讓多個群播群組共用樹結構的資訊來轉發 Data. 政 治 大 結構的成本,反之如果節點較密集則採用密集模式會有較好的傳輸速率表現,以下詳細 立 Packets,在節點不多且傳輸速率要求不高的情況下可節省不少的頻寬使用和維護樹狀. 說明和 Tree-Based 群播相關的研究。. ‧ 國. 學. 2.2.1 PIM-SM 群播協定. ‧. y. Nat. PIM-SM 協議採用匯聚點機制,它規定每個群播群組必須有一個有效的匯聚點. er. io. sit. (Rendezvous Point)路由器。群播轉發分為兩種,即以組 G 的彙聚點(RP)為根的共用樹 (RPT)和以群播源為根的最短路徑樹(SPT)。PIM-SM 允許在傳輸速率達到一定門檻值時接. al. n. v i n 收者的路由器可從 RPT 切換到 C SPT 來接收群播資料。以下就其如何建立和裁剪共用樹做 hengchi U 說明。. 共用樹的根節點稱為 RP。若接收端準備加入一個群播組會將組員關係消息發送到上 游的指定路由器 DR(Designated Router, 可避免群播封包在多個路由間訪問時重複流 動形成 Triangle Routing Problem),這意味著該接收端可接收該組的群播資料。為此, 中間路由器必須通知 RP,申請加入 RPT。此一過程是透過沿著 RP 方向往上游 PIM- SM 鄰居發送 Join(*,G)消息來完成。PIM-SM 路由器接收到來自下游路由器的 Join(*,G) 消息時,會檢查群播路由表,如果關於 G 組的 (*,G)狀態已存在,則表明“Join"消 息已到達了共用樹,且接收 Join(*,G)消息的介面已加入 Forwarding Lists 列表中;如 果狀態不存在,則將創建一個 (*,G)項,並把接收 Join(*,G)消息的介面加入 Forwarding 14.

(16) Lists 列表中,然後繼續向 RP 發送 Join(*,G)消息,直至到達 RP。一旦建立了從 DR 路 由器到 RP 路由器的 (*,G)狀態,則從 RP 到主機的 Routing 資訊就建立完成,組播組 G 的資料就能透過 RP 沿著 RPT 樹下行發送到已經加入該組的接收端。 當有接收端要離開群播群組,則會發送 Prune 訊息,而 DR 就會從(*,G)中的 Forwarding Lists 把此接收者資訊刪除。 之前提到 PIM-SM 是採稀疏模式,它維護公用樹的成本比獨立的轉發樹為低,可是 當節點較多且傳輸量較大時,其效率反而會下降,即使可以採行 RPT 和 SPT 切換的方式. 政 治 大. 來改善,但要準確定義出切換時機並不容易,也可能引發類似 Ping Pong Effect 的問 題。. 立. ‧ 國. 學. 2.2.2 CBT 群播協定. ‧. CBT[7]的基本目標是減少網路中路由器群播狀態的維護,以提供群播的可擴展性。. y. Nat. 為此,CBT 被設計成稀疏模式(與 PIM-SM 相似)。CBT 使用雙向共用樹,雙向共用樹以. er. io. sit. 某個核心路由器為根,允許群播資訊在兩個方向流動。這一點與 PIM-SM 不同(PIM-SM 中共用樹是單向的,在 RP 與群播源之間使用 SPT 將群播資料轉發到 RP) ,所以 CBT 不能. al. n. v i n 使用 RPF 檢查,而使用 IP 表頭的目的組位址做檢查來轉發緩衝資料。這必須對 CBT 共 Ch engchi U 用樹的維護非常小心,以確保群播路由不會形成迴圈。. 從路由器建立的群播狀態的數量來看, CBT 比支援 SPT 協定的效率高,在具有大量 群播源和組的網路中,CBT 能把群播保持在最佳化狀態。 CBT 為每個群播組建立一個生成樹,所有群播源使用同一棵群播樹。CBT 建立過程 如下: 首先選擇一個根(Core),成為網路中群播組的固定中心,建立一棵 CBT,當有接收 端向這個根節點發送 Join 命令時,所有中間路由器都接收到該命令,並把接收該命令 的介面標記為屬於這個組的樹,如果接收到命令的路由器已是樹中一個成員,那麼只要 再標記一次該介面屬於該組,如果路由器第一次收到 Join 命令,那麼它就朝向根的方 15.

(17) 向進一步轉發該命令,路由器需要為每組保留一份狀態資訊,當群播資料到達一個在 CBT 樹上的群播路由器時,路由器群播數據會被一直轉發到樹的根。以保證資料能發送到組 的所有成員。 CBT 將群播擴張限制在接收者範圍內,即使第一個資料封包也無需在全網擴散,但 CBT 導致樹根周圍的流量集中,網路性能下降。. 2.2.3 DVMRP 群播協定. 政 治 大 的拓撲(Topology)資訊,不同之處在於 RIP 根據路由表前向轉發資料,而 DVMRP 則是基 立 DVMRP[8]是由單播路由協定 RIP[9]擴展而來,兩者都使用距離向量演算法得到網路. 於 RPF。為了使新加入的群播成員能及時收到群播資料,DVMPR 採用定時發送資料包給. ‧ 國. 學. 所有 LAN 的方法,然而這種方法導致大量路由控制資料包的擴散,這部分的網路使用成. ‧. 本限制了網路規模的擴大。另一方面,DVMRP 使用跳數(Hop Count)作為計量尺度,其上. y. Nat. 限為 32 跳,這對網路規模也是一個限制。目前提出的分層 DVMRP (Hierarchical. er. io. sit. DVMRP),即對群播網路劃分區域,在區域內的群播可以按照任何協議進行,而對於跨區 域的群播則由邊界路由器在 DVMRP 協議下進行,這樣可大大減少路由負荷及網路的使用. n. al. 成本。. Ch. engchi. i n U. v. 2.2.4 PIM-DM 群播協定 PIM-DM[10]與 DVMRP 很相似,都屬於密集模式協定,都採用了“擴散/剪枝"機制。 同時,假定頻寬不受限制,每個路由器都想接收組播資料包。主要不同之處在於 DVMRP 使用內建的群播路由協定,而 PIM-DM 採用 RPF(Reverse Path Forwarding)動態建立 SPT。 該模式適用於高速網路及群播源和接收者比較靠近的網路環境中,以及當發送者少 而接收者多的時候,其群播資料流量比較大且比較穩定。. 16.

(18) 2.2.5 MOSPF 群播協定 MOSPF[11]是一種基於鏈路狀態(Link State)的路由協定,是對單播 OSPF 協定的擴 展, 因此與 OSPF 類似,MOSPF 分別定義了三種等級的路由: 一、MOSPF 區域內群播路由:用於瞭解各網段中的群播成員,以建構(S,G)的 SPT 。 二、MOSPF 區域間群播路由:用於匯整區域內成員關係,並在自治系統(AS, Autonomous System)主幹網(區域 0)上發佈組成員關係記錄通告,實現區域間群播封. 政 治 大 三、MOSPF AS 間群播路由:用於跨 AS 的群播包轉發。 立. 包的轉發。. 區域內 MOSPF 利用了鏈路狀態資料庫,對單播 OSPF 資料格式進行擴充,定義了新. ‧ 國. 學. 的鏈路狀態通告(Link State Advertisement:LSA) ,使得 MOSPF 路由器瞭解那些群播. ‧. 組在那些網路上。路由器使用 Dijkstra 演算法建構(S,G)的 SPT。MOSPF 與 DVMRP. y. Nat. 相比,路由方面的開銷較小,鏈路利用率高,然而 Dijkstra 演算法計算量很大,為了. er. io. sit. 減少路由器的計算量,MOSPF 使用一種視需要才進行計算的方法,即只有當路由器收到 群播源的第一個組播資料包後,才對(S,G)的 SPT 進行計算,否則直接利用轉發緩存. n. al. Ch. (cache)中(S,G)的 SPT。. engchi. i n U. v. MOSPF 繼承了 OSPF 對網路拓撲的變化回應速度快的優點,但拓撲變動使所有路由 器的緩存失效需重新計算 SPT,因而消耗大量路由器 CPU 資源。這就決定了 MOSPF 不適 合高動態性網路(組成員關係變化大、鏈路不穩定),而適用於網路連接狀態比較穩定 的環境。另外,對於有大量群播源子網路的網路而言,MOSPF 的擴展性問題也引發了一 些問題,有待於進一步研究。. 2.2.6 AMRoute 群播協定 AMRoute(Ad Hoc Multicast Routing Protocol)[12]假設無線網路已經具備一個底. 17.

(19) 層的單播協定,負責處理點對點的多跳(Multi-hop)傳送。AMRoute 的群播樹要有好的連 結性,必須建立在設計良好的單播路由協定之上,AMRoute 的優點是適合應用在大範圍 的群播上,而缺點是如果網路狀況變動太快,或是節點移動太頻繁,都會不斷的重新尋 找路徑,交換大量的控制訊息,導致頻寬的使用率下降。. 2.2.7 AMRIS 群播協定 AMRIS(Ad Hoc Multicast Routing Protocol Utilizing Increasing ID-Numbers)[13]. 政 治 大 用 Beacon 來判斷是否斷線。AMRIS 基本概念是,每一個樹節點都有一個 MSM-ID 立. 是使用分享樹(Shared-Tree)的方式,同時提供給多個資料傳送端和資料接收端,並使. (Multicast Session Member-Identifier),用來表示每個節點在分享樹中邏輯的高度,. ‧ 國. 學. 使用 MSM-ID 的好處是可以避免形成傳送上的迴圈(Loop)。. ‧. ARMIS 有方法簡單和 Control Message Overhead 低的優點,而缺點是送出 Beacon. sit. y. Nat. 確認斷線的方式,比較會浪費頻寬共且會造成碰撞的機會增加。. er. io. 2.2.8 MAODV 群播協定. al. n. v i n MAODV(Multicast Ad hoc C On-Demand Distance Vector)[14]是無線 Ad Hoc 網路的 hengchi U. 群播協定,擁有和 AODV[15]共用控制封包的優點,MAODV 雖然有 Control Overhead 低. 和單一路徑較有效率的優點,但是在移動速度快的情況下,PDR(Packet Delivery Ratio) 會快速下降,這是因為 MAODV 的修復機制缺乏效率所導致的結果,而 MAODV 由鏈路斷裂 的下游節點重新加入的修復機制,也增加了多餘的 Control Overhead 和封包碰撞的機 會。. 2.3 Mesh-Based 群播協定 比較Mesh-Based和Tree-Based的協定[16],大體來說在資料傳輸速率以及群播群組 的可靠性和高移動性以及較高的網路負載(Traffic Loading)的情況下來考量,. 18.

(20) Mesh-Based協定有較好的表現,而Tree-Based協定則是在Routing Overhead上有較低的 開銷。. 2.3.1 ODMRP 群播協定 ODMRP(On-Demand Multicast Routing Protocol)[17]是由資料傳送節點和資料接 收節點以及轉發節點所組成,其方法是建立轉發群組(Forwarding Group)來傳送封包給 資料接收節點,而群播群組是當有資料要傳送時才會開始建立,也就是On-Demand的精 神,其運作流程如下所述:. 政 治 大 訊,當有節點欲加入群播群組時會回覆JoinReply訊息經由RPF機制回到資料傳送點。 立. 資料傳送節點會週期性的廣播JoinRequest訊息封包,來維持網路中的群播群組資. ‧ 國. 學. JoinReply所經過的路徑上的節點,會把轉發旗標(Forwarding Flag)開啟,並成為轉發 群組成員,資料接收節點可能會收到多個JoinRequest,因此會產生多條路徑。轉發節. ‧. 點必需利用訊息緩存(Message Cache)來記錄封包的序列號碼(Sequence Number)和封包. sit. y. Nat. 職別碼(Packet ID)以避免收到重複或是過於老舊的訊息封包,並且建立和維護一個路. al. er. io. 由表來記錄資料傳送節點和下一個轉發節點的對映。. v. n. ODMRP在固定網路上有很好的執行效果,但不適用在高移動性的無線網路環境,它. Ch. engchi. i n U. 可能會因為很頻繁重建轉發的路徑資訊,使得傳輸效能降低。. 2.3.2 PAST-DM 群播協定 PAST-DM[18]算是 Mesh-Based 協定,是為了因應 MANET[19]的需求而發展的協定, 它使用一個 Link-State Source-Routing 演算法來維護各節點的鏈結狀態。要達到此 目的必須所有的群組中的節點都能掌握到整個網路拓樸的情況,這要每個群組中的成員 週期性的發送所有它所知道的鄰近節點的鏈結狀態。視群播群組的大小可能會使維護鏈 結狀態的資訊造成控制訊息的 Overhead,而且週期性廣播每個節點它所知道鄰近節點的 鏈結狀態。它的廣播頻率快慢也會影響控制訊息的 Overhead,因此轉發群組和 Multicast. 19.

(21) Source 所倚賴的 Routing 資訊更新是令人有疑慮的,因此它的 Routing 資訊的獲得是 不穩定的。. 2.4 Ring-Structured 群播協定 它提供節點間多向的路徑資訊,很適合應用在變動性較高的網路環境下,提供 Multicasting 在 Overlay 中的節點間之 Routing 資訊維護。Ring-Structured 是採用 圖形(Graph)管理方式來提供相鄰節點間的連結,使得兩節點間的連結失效時,還可以. 政 治 大 RingCast[20],由圖 2.2 可以清楚了解到它是如何來維護相鄰節點間的連結,利用 立 透過間接連線來維持資訊傳送,以強化通訊的可靠性。較具代表性的研究著作是. D-links 來直接連結相鄰的節點,並維護多個 R-links 來提供輔助的(間接的)連結,. ‧ 國. 學. 當節點間的 D-links 失效時,可藉由 R-links 來維持節點間的通訊。. ‧. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 2.2 RingCast[20] Overlay. 2.4.1 EMMR 群播協定 EMMR[21] (Efficient Mobile Multicast Routing) 是採用 Ring-Structured 架. 20.

(22) 構來形成 Relay Node 之間的 Overlay Network,並由 Relay Node 協助 Multicast Group 中的成員完成 Data Forwarding,它的演算法邏輯簡述如下: z. 由 Relay Node 協助 Multicast Group 來 Forward Multicasting Data。. z. 每一個 Group 中的節點,都有一個路徑(Path)可通到其他 Group 成員。. z. 如果有節點無法滿足以上的條件,則會被捨棄。. z. Relay Node 只能是 Multicast Group 的成員,且每一個 Multicast Group 同時只能選出一個 Relay Node,並採用 E-CDS[22] (Essential Connected. 政 治 大 當 Multicast Packets 送至 Relay Node 時,Relay Node 會先向其下的 Node 立 Dominating Set)來選出 Relay Node。. z. 廣播,再判斷是否轉送至 Overlay Network。. ‧ 國. 學. 雖然 EMMR[21] 具有較好的穩健性,可是當 Receiver 端與 Source 端距離較遠時(需. ‧. 經過較多的 Relay Node 來轉發資料),每次 Relay Node 都先向其下的 Node 廣播,再. sit. n. al. er. io 2.5 其他群播協定. y. Nat. 向前 Forwarding 的方式,無異會增加頻寬的耗用以及 Traffic Loading.. Ch. engchi. i n U. v. 2.5.1 Application layer 群播協定 關於 ALM(Application Layer Multicasting)的提出是鑑於無線網路的快速發展, 對於多媒體廣播或媒體流(Media Streaming)分發或多媒體的訂閱/發送管理在無線網路 上的應用和需求。ALM 是 Application Layer 的 Multicasting,所以適用於較複雜的應 用管理,以及針對不同的特定應用或傳輸內容的要求也比較有配合的彈性,這些方面比 用其他網路層來處理要來的好。它雖然擁有複雜的應用管理上,以及協議的佈署難度較 低 (通常不需修改既有的網路協定,而只需要 User 端加裝相關軟體即可,少部份需要 在 Router 上也要安裝一些相關的 Agent。但大體而言,較其他網路層級協定更容易佈署) 21.

(23) 的優點,但可能需要更多的控制訊息來維護協定的穩定性,所以採用 ALM 協議的方案, 通常要假設頻寬是充裕的。此外因為它是屬於上層協議,所以對底層實際網路傳輸的控 制比較不足,所以即使增加 Control Message 的 Overhead 也難保證協定的穩定性和傳 輸效率。通常 ALM 會再配合其他層級的協定或增加對其他網路層級的控制來增加穩它性 和提高傳輸效率。 Narada[5]在前文有提它是屬於 Mesh-based 但它是以 Tree Structure 來維護 Group Members 及其 Routing 資訊的 ALM。它讓群組成員週期性探詢和其他群組成員間. 政 治 大 成員斷訊息,它會進行修復的處理,有時會強迫和較遠的節點連結,再以 Reverse 立. 的連線狀態,如此可使 Routing 資訊充足而有較好的效率,但為了維持此狀況,一旦有. Shortest Path 演算法來重建路徑,因此每個節點都隨時隨著週期性的探詢密集的調整. ‧ 國. 學. Link 的資訊,如此易造成 Router 運算上的負荷以及 Control Message 的 Overhead。. ‧. 2.5.2 SSM 群播協定. y. Nat. er. io. sit. SSM(Source Specific Multicasting)[23]也就是 PIM-SSM。它最大不同於其他 Multicast 協定的是,它實現了以(S,G) 訊息形式來 Join 群播群組,也就是已知. al. n. v i n Source(sender)的目標位址,而一般的 是以(*,G)的訊息形態加入,如此 C h Multicasting engchi U 它可以建立由 Source 端到接收端的最短路徑。此點相當重要,因為資料的傳送可使用. 最佳化的路徑傳送,使得傳輸效率達到最佳狀況,而且路徑資訊的維護更為容易,此外 SSM 還有一個特點就是不需要像 PIM_SM 一樣要有 Rendezvous Point 機制,因為已知 Source 位址,可以直接傳送,不需再經過中介機制的處理,也因為如此它也不需要 MSDP(Multicast Source Discovery Protocol)[24]機制的支援來發現 Multicast 的 Source 節點資訊。比較常見的幾種 Multicast 機制(BST/SM/DM/SSM)[25]在 Packets Loss 方面的表現,以 SSM 最為突出。其他研究顯示,SSM Forward Packets 的效率可達 Wired Speed 的 95%,而且當網路的 Traffic Loading 昇高時對其 Delay 的影響幾乎不變[26], 也是基於以上理由。本論文以 SSM 配合 Communication Control 機制和 Application 22.

(24) Layer 來做 Cross Layer 的 Multicasting,以期會有較佳的效能。 SSM 是用一個群播源位址 S 和群播組位置 G 來組成一個(S,G)的訊息 Channel,接收 端不但知道群播位址 G 也知道群播源的位址 S,這在路由器的 Routing 資訊處理複雜度 方面,進行了很好的簡化。在 PIM-SM 中路由器要處理(*,*,RP)、(*,G)、(S,G)、(S,G,RPT) 等不同組播路由表的項目。採用 SSM 路由器中只需要處理(S,G)即可,如此也容易使用 硬體來進行群播訊息的轉發,從而提高路由器群播資訊的處理效率。此外因為 Source 和 Receiver 的位址是明確的,可以避免部份惡意的 Multicast 攻擊,因為那些非法的. 政 治 大 MNet[27]是採中心點控制機制(Central Control Mechanism)的 SSM,它設置了一個 立. 資料源資料會被 Drop 掉,本論文將以 SSM 為主要的比較對象。. MS(Multicast Server)在整個 routing 的路徑中,所有的 Data Packets 的 Forwarding. ‧ 國. 學. 都要經由它來轉發,如下圖所示 :. ‧. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 2.3 MNet[27] 資訊轉發的架構 因為是採用中心點控制機制,所有資料都會經由它處理再轉發出去,所以它有利於 做一些像是帳務(Billing)、QoS 或某種程度的 Traffic Control。它同時可以支援 Source 端的可移動性及多重資料源(Multi-Source)。 缺點是,Multicast Server 容易形成傳輸上的瓶頸點,再者資料傳送一定要經由 MS,會有額外的 Latency 產生。. 23.

(25) 2.5.3 Hierarchical structure 群播協定 採用 Hierarchical Structure 的 Multicasting 一般是考慮要增強它的擴展性 (Scalability),以及應用的網路環境 Topology 範圍較大,如 NICE-WIL[28]是從 NICE[29] 擴充而成的,主要是加上對無線網路的支援。 它不只採用階層式架構,還同時使用 Cluster of Members 方式來強化 Member 間的管理和分散 Control Message 的 Overhead, 其運作的示意圖如下所示:. 立. 政 治 大. ‧. ‧ 國. 學 er. io. sit. y. Nat. n. a l 圖 2.4 NICE[29] 架構示意圖 v i n Ch 由圖 2.3 來看,它將所有節點(Layer Clustering,然後再選出 e n g c0)依相鄰程度做 hi U 每一個 Cluster 中的 Leader Node(Layer 1),如圖中的 C, F,及 M 再把它們 Clustering 起來,再由 Layer 1 選出一個 Leader Node,如圖中的 F 成為 Layer 2 的 Cluster 中 的成員,以此類推把原來數量龐大的節點分群管理。Leader Node 是擔任訊息轉發的角 色,每個 Cluster 中的成員都要週期性的發送 Hello 訊息來確認其 Cluster 中的成 員,此種作法必然會產生許多重複的訊息以及當 Leader Node Fault 時如何快速重選 Leader Node 及重新建立每一個 Cluster 轉發訊息,是一個挑戰。但是也不能因此而忽 略它擁有良好的擴展性,每一個節點的加入和離開都只會影響單一個 Cluster,不會直 接對整體的訊息傳遞產生太大的衝擊。. 24.

(26) 2.5.4 Cross Layer 群播協定 所謂的 Cross Layer 就是把原來各網路階層所提出研究方案的特點綜合起來以彌 補彼此的不足,所以如何協調各層級的分工合作就顯得十分重要,至於如何設計各分層 間的分工有以下五種方式[30]: 一、由上而下(Top-Down Approach) : 此種方式是由較高階層的協定來決定最佳化 的策略和參數設定,然後套用到下一層,以此類推。例如: 由 Application. 政 治 大 種作法應用在大部份已存在的 Cross Layer 方案中。 立. Layer 決定 MAC 層的參數,而由 MAC 決定 PHY 層的最佳 Modulation 的方法。 此. 二、由下而上(Bottom-up Approach) : 低層的協定試著和上層隔離,獨立處理. ‧ 國. 學. Packets Loss 和 Bandwidth Variation 的問題。這樣的方式不利於多媒體的傳. ‧. 輸,因為會產生不必要的 Delay 和使得 Throughput 降低。. y. Nat. 三、以應用層為中心(Application-centric Approach) : 由應用層來最佳化低層. er. io. sit. 的參數,且可視應用的環境及需要來選擇配合 Top-down 或是 Bottom-up 的 方式,這種做法的風險是 Application 的執行時間比較慢(因為是最上層),再. al. n. v i n 者傳輸單元比較大(Multimrdia Flows or Group of Packets vs. Bits or Ch engchi U. Packets),且無法立即對目前執行狀況做出最佳化反應。因此如果採用此方式 來做一定要對低層的控制有所強化才行。儘管它有以上的缺點,它對應用面不 同傳輸內容及要求有最大的修正彈性,本論文是採用此種架構方式,並輔以 SSM 來強化傳輸速率。 四、以 MAC 層為中心(MAC-centric Approach) : 當應用層送來 Traffic Information 及需求時,由 MAC 層決定此 Packets/Flows 該不該送或可不可以送,以及它們 對 QoS 的要求。並由 MAC 層依目前可用的 Channel Information 來決定 PHY 層 的設定參數。此種做法對網路的通訊情況較能掌握並及時反應,缺點是較難對 多媒體傳輸時進行必要的 Source Channel Coding。 25.

(27) 五、整合型(Integrated Approach) : 擬定最佳化傳輸策略是由各層級共同決定, 可是如此做必須考慮所有情況再挑選出最好的方式,在執行上有實際的困難, 比較可行的替代方式是透過自我學習和分類的技術(Learning and Classification Techniques)來達成,但其前提是網路的所有特徵值必須要很 容易被計算和有代表性的指標可供參考。 由以上的各個設計方式的說明,可以了解到沒有那一個方式是最好,而是要視應用 面的需求和選用的通訊協定以及各網路層級所採用的演算法,以及考慮其複雜度和電源. 政 治 大 TrAM[31]採用 Cross Layer 的方案,它是以 Application Layer 配合 Network 立. 的損耗,綜合以上因素來考量,再決定採用何種設計架構。. Layer,其運作方式可以下圖來說明:. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 2.5 TrAM[31] 運作示意圖 它以第一個加入群播群組的節點當做 Root ,如圖中的節點 N,這樣的 Root 選擇方 式很簡便,但是這樣的節點同時代表它是較具移動性的節點,所以它對轉發路徑重建必 須要有較快的反應,不然可能會使傳輸效能降低以及不穩定。之後加入的每一個節點要 尋找它的鄰近節點,比較特別的是只找一個 Parent 節點(路徑方向是朝 Root 的下一個 節點為其 Parent)和一個 Child 節點當鄰近節點,然後每一節點同一時間都只保持維護. 26.

(28) 這兩個鄰近節點,而選擇鄰近節點的規則是 Min(Layer-3 Hops Count + Overlay Hops Count),其中又以 Layer-3 的 Hops Count 為優先考量。每一個節點可時同時扮演 Parent 和 Child 節點,當它是 Parent 節點就週期性發出 ParentAdvertise 訊息並配合一個 TTL(Time To Live)計數器來判斷 Child 是否還存在。當它扮演 Child 節點時,就週期 性發出 QueryParent 訊息以確認 Parent 節點的存在與否,當有節點要離開時會送出 Leave 訊息告知 Root 節點。 對照圖 2.4 來看,Root 建立 Routing 資訊的方式是當節點 N 以選擇鄰居的規則發. 政 治 大 的請求而當 B 回應 OK(Accept),N 就會以 B 為到達節點 R 的下一個轉發節點,同時 N 會 立 現到達節點 R 的路徑上,其下一個轉發節點以 B 為較佳選擇時,它會向 B 發送 Connect. 向節點 A 發出斷線(Disconnect)的請求。. ‧ 國. 學. 所以節點 N 就是整個群播組的轉發樹的 Root,資料的轉發都是由 Source 送給它,. y. Nat. 的 RP 點類似。. ‧. 再由它來轉發到接收節點,因此 Root 節點容易形成轉發的瓶頸點,且性質上和 PIM-SM. er. io. sit. 但是由於它的轉發機建構方式很簡單,控制訊息也很簡捷所以在移動環境下也有不 錯的效果,它與 Narada 和 PAST-DM 的模擬比較結果不管是 Latency 還是 Delivery Ratio. n. al. 都有比較好的表現。. Ch. engchi. i n U. v. 它雖是 MANET 架構,但在 Routing 的計算上有不錯的效益,所以特別在此提出來討 論,相信它如果直接應用在 Wireless Mobile Network 上應該也有不錯的表現。 還有一些 Cross Layer 的研究方案是採用網路比較低層來著手,以期能較快針對網 路的狀態做出回應,MIMO-CAST[32]是結合 MAC Layer 和 Network Layer,且強調是 MIMO(Multiple-Input Multiple-Output)也就是 Multi-source 和 Multi-receiver,它 主要的方法是如何在 Radio 有效範圍內選出較適當的 MPR(Multi Points Relay)來轉發 Multicasting 資訊,而不是向網路內所有節點做 Broadcasting,因為它同時考慮 MIMO 的情況,和本論文的架構不同,比較數據可能會無法充分突顯實際的 multicast 效能, 所以本論文未把它列為比較對象。 27.

(29) 另外,最近也有研究是結合 Physical Layer 和 Application Layer 的 Cross Layer 架構[33]來解決 Multicasting 所面臨的資料可靠性和傳輸速率的問題。它主要是利用 Physical Layer 來執行 MCS(Modulation and Coding Scheme),且採用一種稱為 RM-AMC(Reliable Multicast using Adaptive Modulation and Coding)的技術,而在 Application Layer 執行 FEC(Forward Error Correction),且採用 MDS(Maximum Distance Separable)編碼方式來對 Packets 進行編碼。 對採用 Adaptive Modulation and Coding(AMC)方式進行 Modulatin 而言,會考量. 政 治 大 如: 16-QAM 或是 64-QAM)和 Higher Code Rate(例如: R=3/4 Turbo Code)應用在較近的 立 資料傳送的距離來決定 Modulation 和 Code Rate,通常會以 Higher Order Modulation(例. 傳輸距離,而以 Lower Order Modulation(例如: QPSK)和 Lower Code Rate 來傳送資料. ‧ 國. 學. 到較遠的距離。Multicast Packets 通常會以 Lower Order Modulation 和 Lower Code Rate. ‧. 來傳送資料,因為有很高的機會至少有一個 Multicast Group 的成員是需遠距傳輸。. y. Nat. 在每次傳送 Multicast Packets 時的大小是 K + n 個 Packets(K 是額外的資訊,要. er. io. sit. 給 Application Layer 解碼用),由此可以看出它是以 RM-AMC 來確保較高的資料傳送速 率,以及利用 Application Layer 來做傳送資料的校正,採用 Application Layer 來執. n. al. Ch. 行 FEC 的原因是,它比較具有彈性和可靠度。. engchi. i n U. v. 結合 Physical Layer 和 Application Layer 的作法可以提高傳輸速率的同時又可 以提供較可靠的資料傳送,只是作者也證明要達到理想 RM-AMC 策略的本身是一個 NP-hard 的問題,再者要滿足底層高速傳送過來資料的 FEC,在 Application Layer 需 要更快速的運算能力和負荷。. 2.5.5 AAMRP群播協定 AAMRP[34] (Ant-based Adaptive Multicast Routing Protocol 主要是基於兩個 概念,分述如下 : 一、當 Group Member 形成稀疏模式分佈及 Member 移動的速度不快時, 28.

(30) Multicasting 是有效率的群播方式。 二、如果 Group Member 比較密集及 Member 移動的速度快時,Broadcasting 是比 較有效率的群播方式。 且將每一個 Node 分成三種形態 : 一、正在加入 Cluster 的新成員。 二、Cluster 的 Leader。 三、Cluster Leader 底下的成員。. 政 治 大 彼此間的資訊。而 Cluster Leader 透過廣播 Leader 訊息,通知 Cluster 成員此 Leader 立. 每一個 Cluster Leader 底下的 Node 都會去維護一份 Group Member Table 以記錄成員. Node 的存在,以及邀請廣播範圍內的非 Cluster 成員加入此 Cluster。當非 Cluster. ‧ 國. 學. Leader 的 Node 收到 Leader 訊息時,會評估它和此 Leader 的距離,然後透過 Unicasting. ‧. 的方式來回應 Member 訊息給 Leader,且此訊息包含它和 Leader 間的距離資訊。Node. y. Nat. 會週期性的透過 Unicasting 方式來回應 Member 訊息,而回應的頻率視它與 Leader 之. er. io. sit. 間的距離而定,距離越遠則回應訊息越頻繁,因為距離越遠表示它越有可能造成連結失 效,是故需頻繁回應訊息。而每個 Cluster Leader 會維護一個 Cluster Member Table. al. n. v i n 以記錄本身和其他 Cluster Leader Leader 收到 Multicast C h 間的資訊。當 Cluster engchi U. Packets 時,會以 Broadcasting 方式來通知其下的 Member,而 Broadcasting 的最大範 圍視其下 Child Note 的最遠距離而定。 在移動性較劇烈的情況下,它很難正確的評估 Cluster Leader 以 Broadcasting 方式傳送 Packets 的範圍,在此情況下很容易在廣播範圍內資料的大量重疊,形成 Broadcast Flooding。. 2.5.6 特殊群播協定 除了上述的 Multicasting 研究方案外,還有其他研究方向的著作,我們也一併加 以探討,首先我們就 Multicast 的特性把它拆解成兩部份來看。一是網路傳輸方面,如 29.

(31) 何有效建立 Routing Tree ,之前的討論大都集中在這部份,另外一個部份是有關 Multicast Group 及 Group Members 的管理。一個好的 Group 管理可以使整個協定提 高 Throughput 和降低 Delay 及 Latency。而也有研究指出在具移動性的環境中要做好 Group Management 是不容易的,因為被監測的節點是會移動的[35],因此針對這部份近 期也有一些相關的研究。 IGMP-R(IGMP Relay)[36]延伸了 IGMP[37]協定對 Group Membership(Multicast Group 中的成員因 Join/Leave 而產生的關係變化)的管理功能,為 Group Membership. 政 治 大 用資料庫的高效資料管理特點來管理 Group Membership,同時也為 IGMP Relay Fail 時 立 建立了一個管理資料庫來供協定運作時對 Group Members 的管理需求做查詢之用,它利. 提供可方便切換到備援的另一個 IGMP Relay。. ‧ 國. 學. IGMP/MLD proxy[38]是把 IGMP Relay 功能佈署在另一個網路中來減輕因為 IGMP. ‧. Relay 的運作對原網路 Control Message 的 Overhead。. y. Nat. Adaptive Multicast Membership Management[39]是在比較了 IGMP Relay-based Home. er. io. sit. Agent 和 IGMP Proxy-based Home Agent 後提出新的做法,把原先 Mobile IP 的 Cache Data Structure 擴充成 MFC(Multicast Forwarding Cache),以強化對 Group Membership 的. n. al. Query 效率。. Ch. engchi. 30. i n U. v.

(32) 第三章 CLIMP –. Cross Layer Hybrid Multicasting Policy Over Wireless Mobile Network. 3.1 Multicasting Scenario 由以上對 Multicasting 的相關研究結果,不難看出只針對單一網路層級的. 政 治 大 難。一方面要遷就目前的既有網路設施,一方面是在不大幅修改既有的通訊協定之下, 立 Multicasting 研究所提出報告,都有不足之處,且要就原研究再加以突破有實質上的困. 不太容易跨越其本質上的限制,例如:單純的 MAC 層協議的修改,也很難在傳送多媒體. ‧ 國. 學. 時針對不同傳輸條件下 Coding/Decoding 之後的 Packets 設計出最佳化的傳送策略。. ‧. 因此 Cross Layer Multicasting 是較可行的作法,本論文是利用 IGMPv3[40]對. y. Nat. SSM 的支援來分享由 SSM 帶來的效益,在 DOM[41](Destination-Oriented Multicast). er. io. sit. 也很推崇採用 Destination-Oriented Multicasting 方式來有效的管理 Mulitcast Group 和 Data Forwarding,SSM 充分支援 Destination-Oriented Multicasting 的做法,. al. n. v i n 所以這也是本論文考慮採用 SSM Communication Control C來延伸應用的主要原因。透過 hengchi U Agent 強化 IGMPv3 對 Group Membership 和 Data Delivery 的管理,並加以適度控制. Congestion 情況。因此本論文是採用 Application-centric Approach 來串連 Network Layer(Communication Control Agent)及 Application Layer( Coordinator Service), 以下是我們要討論的場景(Scenario)如下圖所示:. 31.

(33) 圖 3.1 Diagram of Multicasting Scenario 當有 Receiver 欲接收來自 Source 端的 Multicasting. 政 治 大. Packets 時,需先加入群播. 群組,然後其加入訊息會一直 Forward 到 Source 端的 Edge Router。當此 Router 收到. 立. 加入訊息後會透過 RPF 的方式來建立從它到 Receiver 端 Edge Router 之間的轉發路徑,. ‧ 國. 學. 然後當 Source 端的 Edge Router 收到來自 Source 的 Multicasting Packets 時就會從 Group 中查詢 Group Members 名單,然後轉發來自 Source 的 Multicasting Packets. ‧. 到 Receiver 端的 Edge Router,再由此 Router 轉發到 Receivers。. y. Nat. sit. Receivers 在接收 Multicasting Packets 的期間可能會因為移動而超出原基地台接. n. al. er. io. 收範圍而產生 Handover 的情況,而我們必須對此情況加以妥善處理。CLIMP 是利用 CS. i n U. v. 來管理 Data Packets Caching,以強化 Handover 時的應對,底下章節會再詳細說明。. Ch. 3.2 Communication Agent. engchi. 我們針對強化 IGMPv3 使得 Multicasting 的效能達到最佳化,所提出來的主要方法 是在 Network Layer 上 Implement 一個 Communication Control Agent,安置在 Edge Router 上,其架構如下圖所示:. 32.

(34) 立. 政 治 大. 圖 3.2 Communication Control Agent Structure. ‧ 國. 學. Communication Control Agent 的運作方式是當 Multicast Packets 由 Source 傳送 到 Edge Router 之後,Edge Router 在往轉發路徑的下一個 Router 傳送之前,會由. ‧. Communication control agent 攔截此 packets,並把它轉址到 CS(Coordinator Server,. sit. y. Nat. CS 在效能的考量下通常會安置在固定的節點上,當然也可以由移動的節點來擔任,選舉. al. er. io. 的方式是當 Source 端的 Edge Router 沒有 CS 的登錄資訊或 CS Fail 時,透過 broadcast. v. n. CS_Vote 訊息的方式來選擇新的 CS 節點,而以最快收到回覆 CS_Vote_Reply 訊息的. Ch. engchi. i n U. Router 來扮演 CS 的角色,因此 CS 通常會是由邏輯上最靠近 Source 端 Edge Router 的 Router 來擔任),此部份可以透過對 IP 封包的 Destination Address list 的資料修改 來達成,詳細的做法會在下一章節中介紹。當 CS 收到由 Edge Router 的 Communication Control Agent 轉發過來的 Multicast Packet 後,會檢視 Packets 中 IP Header 的 TOC 欄位有無特殊的傳輸服務要求,再者依(S,G)和 Packets 中的 Source Address Lists (Receiver Lists)來查詢轉發的 Rule,而 Rule 包含針對不同的 Application Content 的 傳輸要求,CS 也會依據收集到的網路目前的狀態資訊(由 Receiver 所回覆的 ACK 訊息回 覆時間的間隔變化,以及 Multicast Packets 中的 Max Resp Code 的值),以及 CS 會週 期性的向其他 Routers 發送 IGMP membership 訊息,再由回收的 IGMP Membership. 33.

(35) Report 中來判斷網路中的 Router 是否存在或是否支援 IGMPv3(這是為了協助不支援 IGMPv3 的 Router 完成 Multicasting)。綜合以上資訊,CS 會判斷此封包要馬上繼續往 下傳送,還是要延遲一段時間再傳送,或是直接 Drop(當 CS 發現 Source Address Lists 中有些 Receivers 已不存在,就直接 Drop 此訊息),並把判斷結果回覆 Communication Control Agent 來做後續的傳輸處理。 雖然 Communication Control Agent 機制比其他的 Multicast 協定多一道額外傳輸 檢查程序及多繞一個路徑,但其所扮演的過濾角色可以支援對 QoS 的要求以及. 政 治 大. Congestion Control。由模擬結果的數據可以看出此額外的開銷對整體的傳輸還是有正 面的助益。. 立. 接下來再對 CS 所扮演的角色和功能做更詳細的說明:. 3.3.1 Data Buffer. Nat. y. ‧. ‧ 國. 學. 3.3 Coordinator Server Functionality. er. io. sit. 在介紹 Communication Control Agent 時有提到 CS 是一個被諮詢的角色,同時提 供資訊傳送的規則,而它本身並不實際參與 data forwarding,所以相對於其他的研究. al. n. v i n 方案如 MNet[27],比較不會形成資料傳送上的 Bottleneck,甚至於在頻寬限制下可以 Ch engchi U. 考慮把 CS 設置在網段以外。當某些特殊情況發生時 CS 會充當 Data Buffer,也就是當 Router 不支援 IGMPv3 和 Receiver 因為移動而引發的 Handover 發生時。在 Handover 期間的 Multicast Packets 可以由 CS 代為儲存(Caching),等 Handover 完成後再由 CS 直接以 Unicasting 方式透過建立與 Receiver 的 Tunnel 來補傳資料,因此每當 CS 接收 由 Communication Control Agent 送過來的 Multicast Packets,都會把它 Queuing 起 來,至於 Queue 的數量大小可以設定一個 Threshold 值來依據 Receiver 端發生 Handover 的頻率來調整,也就是 Qsize = F (Frequency of Handover),而協助不支援 IGMPv3 的 Router 完成 SSM 的做法會在以下章節做介紹。. 34.

(36) 3.3.2 Congestion Control 利用 Communication Control Agent 的協助,以取得每一次 Receivers 的 ACK 回覆 訊息,也就是 Receivers 端的 Edge Router 上的 Communication Control Agent 會複製 一份 ACK 訊息傳送到 CS,如此 CS 就可以監看每個 Receivers 的狀態。當在設定時間內 沒有收到某一個 Receiver 的 ACK 回應時,就當此 Receiver 已離開此群播組。當 Source 端 Edge Router 的 Communication Control Agent 送來的 Multicast Packets 的 Source. 政 治 大 果 Source Address Lists 只有此 Receiver 則把整個 Multicast Packets 捨棄,由此監 立 Address Lists 中如果有此 Receiver 就直接把它從 Source Address Lists 中剔除,如. 聽 Receivers 端的 ACK 回覆的作法比起由 Routers 週期性的廣播 Query 訊息的方式,更. ‧ 國. 學. 可以降低 Control Message 的 Overhead。而且計算每次 Receivers 的 ACK 回應時間的. ‧. Jitter 和 Delay 情況來佐以判斷網路 Congestion 情況,以適時調整 Multicast Packets. y. Nat. 的傳送頻率或延遲傳送來減輕頻寬的負荷,當然比起用 MAC 層交換 RTS/CTS (Request to. er. io. sit. Send/Clear to Send)來判斷網路的 Congestion,使用 Receivers 的 ACK 來判斷 Congestion 的情況是比較不直接的,因此會有失真和延遲的情況,但是可以降低由. al. n. v i n RTS/CTS 的控制訊息交換的本身對 ,當然也可以考慮把 MAC 層的 C hCongestion 造成的衝擊 engchi U. Protocol 加入 CLIMP 架構中,只是如此做會使得控制層級變多,增加計算的複雜度,因 而使得由 MAC 層提供的效益,相互抵消。 以下就 Communication Control Agent 如何配合 Coordinator Service 來有效控制 Congestion 做說明。首先我們針對各別的 Receivers 的 ACK 來計算其 Delay 和 Jitter 情況,再針對 Delay 和 Jitter 的值,設定其 Threshold 值,當然也可以加入針對封包 中 TOC 欄位的特殊傳輸要求而設的 Threshold Value,藉以安排封包的傳送次序。為簡 化計算處理的複雜度,我們把它分成三種不同的傳輸等待等級(High Priority / Normal Priority / Low Priority),並對映的存入 Routers 的 Data Queue 中,假設 Delay 的 Threshold Value 為 DT,而 Jitter 的 Threshold Value 為 JT,其 Scheduling 的判斷 35.

(37) 流程如同下圖如示:. 立. 政 治 大. 圖 3.3 封包排程決策流程圖. ‧ 國. 學. 3.3.3 Switch Protocol When Router Without IGMPv3 Support. ‧. y. Nat. IGMP 目前已普遍的被使用在各類型的網路中,大部份的 Router 都有支援。但 IGMPv3. er. io. sit. 是較新的版本,不見得每個 Router 都支援。在 IGMPv3 的說明文件中有提到它可以向下 相容較低的版本,但是較低的 IGMP 版本是無法辨視 IGMPv3 的封包,會直接捨棄它,所. al. n. v i n 以我們要藉助 Communication C Control Agent 和 CS 的共同合作來協助不支援 IGMPv3 的 hengchi U Router 也可享受 SSM 所帶來的好處。當 Router 收到無法辨視的封包時,它可透過. Communication Control Agent 的協助,把 Multicast Packets 傳給 CS,此時 CS 本身 就扮演 PIM-SM 的 Rendezvous Point,以 PIM-SM 協定來轉發 Multicasting 資料。. 3.3.4 Source Discovery Agent 之前的討論有提到,SSM 本身不需要 MSDP 的支援,因為 Source 端的位址資訊是已 知條件,但是在這裡我們為什麼又要提出類似的作法呢? 那是因為它不單是 Source Discovery 的功用而已,它更像是 Publisher 的 Manager,Receiver 要接收 Multicast Packets 必須要加入群播群組才行(Pull)。可是我們提出的構想是主動式的提供 36.

(38) (Push),Receiver 除了加入群播群組來接收 Multicast Packets 外,也可以在每一次加 入時,同時提出訂閱(Subscribe)申請,而此申請會一直有效,直到 Receiver 提出取消 訂閱(Unsubscribe)申請或是 Source 節點 fail。當一個 Receiver 提出對某一個(S,G) 的 Multicast Packets 訂閱申請,CS 會記錄它並交由 Source Discovery Agent 來管理, 所以當某一個 Receiver 進入某一個 Edge Router 的服務範圍並提出取得 IP 申請的同時 Communication Control Agent 會通知 CS,所以只要有此 Receiver 在訂閱狀態中屬於 某一個(S,G)的 Multicast Packets 在傳送時,CS 就會把此 Receiver 主動加入接收群組. 政 治 大 這樣做必須是 Receiver 的 Edge Router 中剛好有此(S,G)的其他 Receiver 才行,當然 立. 中,所以此 Receiver 不用透過 Join(S,G)過程就可以開始接收 Multicast Packets,要. CS 也可以主動協助完成在那個 Edge Router 建立一個群播群組。但這樣做有一個風險,. ‧ 國. 學. 可能此 Receiver 並沒有意願接收此 Multicast Packets,只是他忘了取消訂閱而已,所. ‧. 以主動建立一個新群播群組並不是一個好主意,所以 Source Discovery Agent 提供了. y. sit. io. 以下是 Source Discovery Agent 的運作示意圖:. n. al. Ch. engchi. er. 入研究的問題。. Nat. 一個主動式 Multicasting 的機制,至於如何和 Receiver 有更好的互動是未來可以再深. i n U. v. 圖 3.4 Source Discovery Agent 的運作示意圖. 37.

(39) 當有 Source 端要傳送 multicast packets 或是有 Source 要提供 Multicasting 服務時, 它會向 Edge Router 提出資料傳送的需求訊息。當 Edge Router 收到此訊息後,它會把 它再 Forward 給 CS 知道,至此 CS 就會知道網路中有多少 Multicasting Source 提供服 務,再週期性的把各(S,G)訊息向 Routers 廣播,當然此廣播行為可視情況調整,因為 IGMP 本身的 Membership Report 就已包含這些資訊,所以除非需要跨網段的(S,G)資訊, 因此 MH(Mobile Host/Receiver)可以由 Edge Router 知道網路中有那些 Multicasting 資源可用,當它想加入(S,G)群播群組時會向 Edge Router 申請加入(S,G)群播群組的同. 政 治 大 Subscribe(S,G),然後 Receiver 端的 Edge Router 會一路往前轉送 Join(S,G)訊息到 立 時也可以提出 Subscribe(S,G)的申請,或只是單純的 Join(S,G)或是單純的. Source 端的 Edge Router,同時也知會 CS,然後再由 Source 端的 Edge Router 藉著 RPF. ‧ 國. 學. 來建立到達 Receiver 端的 Edge Router 的傳輸路徑,至此完成加入程序。以下還會有. ‧. 更詳細的圖文說明來解釋 Multicasting 的運作過程。. Nat. er. io. sit. y. 3.4 Multicasting Implementation. 接下來就更詳細的介紹 CLIMP 的 Multicasting 方法,包括細部的資料訊息和控制. al. n. v i n 訊息如何傳遞,以及如何在現在的網路基礎上實現 CLIMP。 Ch engchi U 3.4.1 IGMPv3. CLIMP 是架構在 IGMPv3 之上的協定,從字面上來看 The Internet Group Management Protocol 談的就是 Internet 上的 Multicast 群組管理,它是設計在 Internet 上用的 Protocol,因此可以滿足對 Scalability 的要求。IGMPv1 時就定義了大部份的架構, 而到了 IGMPv2 時增加了當節點離開時的通知訊息,IGMPv3 則是加入了對 SSM 的支援, 底下就針對 IGMPv3 的封包做詳細的介紹。. 38.

(40) 3.4.2 IGMPv3 Packets Delivery IGMPv3 的封包是藉由 IP 封包來傳送,也正因為是這樣所以可以很容易的使用在 Internet 上,所有對 IP 協定的 enhancement 也都可能使 IGMPv3 協定直接受惠,現在我 們就來解析一下 IP 封包內容,藉此來了解 IGMPv3 的封包架構,以下就是 IP Packet Layout :. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 3.5 IP Packet Layout/Header IGMPv3 Packet 是透過 IP Packet 來傳送的, 透過指定 IP Header 中的 Protocol Segment (value=2),如圖 3.5 所示,來表示此 Packet 為 IGMPv3 Packet,而 CLIMP 利用 TOC(Type Of Service) Segment 來反應對傳輸品質的需求。 當它是一個 IGMPv3 的封包時(Protocol = 2),我們把 IP Packet 的 Data Packet 解開來看,就會看到 IGMPv3 Packet,所以我們再來看一下 IGMPv3 的 Packet Layout :. 39.

(41) 學 ‧. ‧ 國. 立. 政 治 大. 圖 3.6 IGMPv3 Packet Layout/Header. sit. y. Nat. IGMPv3 header 要分二部份來看,一是 Membership Query(不分版本), 一是. al. er. io. Membership Report,兩者是利用 Header 中的 Type Segment Value 來分別。Type. v. n. Segment Value = 0x11 是 Query Packet,而 Type Segment Value = 0x22 是 Report. Ch. engchi. i n U. Packet。先來說 Query Message,Max Resp Code 由傳輸過程中的 Router 依據網路的 Congestion 情況來調整其值, 以反應當時網路的 Congestion 情況以供各 Router 傳 送 Packets 時參考。而 Number of Sources,表示 Packet 中的 Source Address(Sender) 數量,供 Edge Router 參考,以提供 Receiver Join Group 時取得 Source 資訊。再 來看 Report Message 部份,由 Number of Group Records 得知 Packet 中包含多少個 Group Record,而 Group Record 的 Layout 請參看圖 3.7,圖中每一個 Group Record 中 均含有 Number of Sources 和 Multicast Address 以及 Source Address, 即是 (S,G) 資料。Edge Router 藉由這些 Membership Record 來修正當前所在網路所提供的 IGMPv3 服務的資訊。. 40.

(42) 政 治 大. 立. ‧ 國. 學. 圖 3.7 Group Record Layout. 由以上的解說就可以了解,IGMPv3 的封包架構是一層包一層,看是雜亂卻是亂中有序的. ‧. 從裡而外的包裝,(S,G)ÆGroup RecordÆMembership ReportÆIGMPv3 PacketÆIP. sit. y. Nat. Packet。當中介的 Router 收到 IP 封包後先由 Protocol Segment 了解是屬何種協定的. al. er. io. 封包,如果是 IGMPv3,則由 IP Packet 中的 Data Packet 取出 IGMPv3 封包,再由此封. v. n. 包的 Type Number 來了解它是屬於 Query 或是 Report 封包,再進行各別的對應處理。. Ch. 3.4.3 Multicasting Process. engchi. i n U. 在此小節將完整介紹 CLIMP 對 Multicasting 的處理,包括如何處理 Receiver 端的 Join / Leave ,Source 端的 Data Delivery 及 Data Queuing。首先說明 Join 動作如 何處理,請參看下圖 3.8 所示:. 41.

(43) 立. 政 治 大. ‧ 國. 學. 圖 3.8 Joining Process. 當 Source 第一次向 Edge Router 傳送 Multicast Packets 時,Edge Router 會建立一個. ‧. 新的群播群組(S,G)。且同時 Edge Router 會向 CS 送一個 Register(S,G)的註冊訊息,. sit. y. Nat. 讓 CS 的 Source Discovery Agent 知道多了一個新的群播群組(S,G),然後藉由 IGMP 本. al. er. io. 身週期性的 Membership Query 和 Membership Report 或直接由 CS 來廣播所有的群播組. v. n. 資訊(S,G),Receiver 可以由 Edge Router 得知目前網路中有那些群播組可以加入,然. Ch. engchi. i n U. 後 Receiver 可以選擇要直接 Join 或是採用 Subscribe 的方式來接收 Multicast Packets。 圖 3.9 是 CLIMP 處理 Leave 的程序,一般在正常情況下,不管是 Source 或是 Receiver 要離開群播組都會送出一個 Leave(S,G)訊息,所以較容易處理,但是總會有 一些例外情況,導致 Source 或 Receiver 在沒送出 Leave 訊息就脫離了群播組,因此需 要一些偵測機制。CLIMP 是以 CS 沒有在設定時間內收到 Receiver 的 ACK, 就認定 receiver 已脫離群播組,另外當 CS 沒有在設定時間內由 Source 端的 Edge Router 送來的 Multicast Packets, 就認定 Source 已脫離群播組。. 42.

(44) 圖 3.9 Leaving Process. 政 治 大. 再來談到實際的 Multicast Packet 的 Delivery 和 Queuing 處理, 請參看圖 3.10. 立. 來說明。在沒有發生 Handover 的情況之下,Multicast Packets 會由 Source 端的 Edge. ‧ 國. 學. Router 送往 CS 做一些檢查(Check Rule),如果沒有特殊情況資料就會一路由此 Edge Router 傳到 Receiver 端的 Edge Router,再由此 Router 轉發給 Receiver,如果發生. ‧. Handover,請參看圖 3.11,則 CS 會充當 Data Buffer 的角色來 Caching Multicast. y. Nat. sit. Packets,等 Receiver 完成 Handover 再由 CS 把 Handover 期間的 Multicast Packets. n. al. er. io. 以 Unicasting 方式轉發給 Receiver。. Ch. engchi. i n U. v. 圖 3.10 Packet Data Delivery. 43.

(45) 政 治 大. 圖 3.11 Packet Data Queuing. 立. 第四章. ‧ 國. 學 模擬架構與數據分析. ‧ sit. y. Nat. 4.1 Mathematical Analysis. n. al. er. io. 圖 4.1 是我們分析時設定的模型,我們將參照 MMROP[34]對訊息成本的分析方式來 分析 CLIMP 和 SSM 的訊息傳送成本, Protocol cost 代表在完成一個 transaction 所 需 packets 數目及大小, 包含 control packets 和 data packets。. Ch. engchi. i n U. v. 圖 4.1 訊息成本分析模型. 44.

(46) 首先對會用到的一些參數做說明。 如下所述 : λ : the mean rate that a source generates multicast datagrams。 µ : the mean rate that a mobile moves from one subnet to another。 p : packet to mobility ratio (PMR), defined as λ / µ。 qno_M : probability that a mobile visits a subnet with no other members。 N : the average number of mobiles per group in a cell。. 政 治 大 l : the average of the length of a control packet 。 立 n : the mean data offset in the adjacent subnets。. L : the average of the length of a datagram packet 。. ‧ 國. 學. r : the cost to process a packet in each node (assumed also for a control. ‧. packet transmission cost for single hop, r=1)。. y. Nat. β : units of transmission cost (unit of processing cost ) 。. er. io. sit. C control : the cost to process control packets per handoff, including mobility binding and group participation。. al. n. v i n C datagram : the costCto deliver multicast h e n g c h i U datagrams to a mobile in the newly visited subnet。. CER : the cost to forward one multicast datagram from ERs to ERr。 a,b,c1,c2,d1,d2,f,e1,e2 分別代表節點間的傳輸成本。 根據以上的參數,加上圖 4.1 的分析模型,我們可以列出其 Protocol Cost 的數 學分析式子,Cost of Protocol = Cost of Control Packets + Cost of Datagram Packets。 而 Cost of Control = Mobile IP Registration Overhead + Group Participation Overhead Per Handoff,據此我們可以列出 CLIMP 和 SSM 的 Cost of Control,如下 : CLIMP = {2*e1 + qno_M*[a+b+d2+(N+2)*e2+2(c2CLIMP+d2)+e1+f]} * r * β * l CLIMP (1) SSM. = {2*e1 + qno_M*[a+c2+(N+2)*e2+2*c2SSM + e1 + f]} * r * β * l SSM 45. (2).

數據

表 2.1 IP Address of Multicast Protocol  IP address  Multicast protocol
圖 2.3 MNet[27] 資訊轉發的架構
圖 2.4 NICE[29] 架構示意圖
圖 3.1 Diagram of Multicasting Scenario
+7

參考文獻

相關文件

Wi-Fi 定位即利用無線網路來傳遞信號,根據各種網路參數和算法可以找出使用

(Embedded System)為主,主要也都以 Linux 軟體平台來運作。對 EPON ONU Client 端,可以透過 GUI 介面選單來設定其所要運作的功能,配合 Linux 軟體與

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

Selcuk Candan, ”GMP: Distributed Geographic Multicast Routing in Wireless Sensor Networks,” IEEE International Conference on Distributed Computing Systems,

如果有事先的預防,則有些事情是可以避免的,再加㆖無線遠距檢測的好點 子因此讓我產生了研究 RFID 的興趣。本論文將設計 RFID 系統㆗的

本研究以河川生態工法為案例探討對象,應用自行開發設計之網

本研究以河川生態工法為案例探討對象,應用自行開發設計之網

吸取更多課本以外之課外知識。基於此,本研究希望可以透過實際觀察、焦 點訪談的研究過程當中去發現學生學習之情況及態度,探討是否