• 沒有找到結果。

3.2.2 群播成員的離開

N/A
N/A
Protected

Academic year: 2022

Share "3.2.2 群播成員的離開"

Copied!
20
0
0

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

全文

(1)

21

第三章、以核心為基礎的光樹之群播路由演算法 (Core Based Light Tree Multicast Routing Algorithms)

因為 WDM 網路中僅少量的光交換機具有光分裂複製功能,且為了避免 在 WDM 網路環境中,群播資料的複製須經由光電轉換的過程,無法有效率 地使用光纖的高頻寬特性,因此我們選擇了修改現存的群播路由通訊協 定,避免群播樹的分支點位於 MI 節點上,使得群播路由協定適用於稀疏 MC 節點的 WDM 網路環境。

目前群播服務應用上,可能會有一個以上的來源端()傳送資料,而共 享群播樹對於同一群組中有多個來源端要傳送資料的環境下,只需建立一 棵樹即可,但是以來源端為基礎樹卻須對每一個不同的來源端,個別建立 不同的群播樹;因此此章節我們提出兩個群播路由方法來建立以 CBT 為基 礎 的 共 享 群 播 樹 : Reroute-to-Core (RTC) 演 算 法 和 Pre-computing Virtual Tree (PVT)演算法。

3.1 WDM 網路環境

假設此網路執行鏈結狀態路由協定(Link State routing protocol)

稱為「開放式最短路徑優先」(Open Shortest Path First,OSPF),其詳 細內容描述在 RFC 2328[24]。OSPF 定義了五種封包型態:

(a) Hello packet 用來維護相連路由器的關係和找尋相鄰的路由器。

(2)

22

(b) Database Description packet 用來讓兩個路由器間的網路拓樸資料 庫內容同步一致的動作。

(c) Link State Request packet 當兩路由器的網路拓樸資料庫內容同步 一致後,仍有些資料無法得知時,則利用此封包去要求該資訊。

(d) Link State Update packet 用 來 發 送 更 新 的 LSA ( Link State Advertisement)資訊給其他路由器。

(e) Link State Acknowledge packet 是當路由器收到更新的 LSA 後,所 回應給產生更新 LSA 的路由器。

路 由 器 會 根 據 當 時 與 它 相 鄰 的 聯 接 情 形 發 出 包 含 LSA 訊 息 的 封 包

(Database Description packet、Link State Update packet),以期能 告訴其他路由器關於此項訊息,因此利用上述的 OSPF 五種封包就能使得 網路上所有的路由器(節點)都知道整個網路的拓樸情形。

圖 3-1 Hello Packet format RouterDeadInterval

Common Header type=1 (24 byte)

HelloInterval Rtr Pri

Network Mask Option

31

0 16

(3)

23

圖 3-2 LSA header format

然而,從原本 OSPF 封包格式中並無法得知網路上那些節點具有光分 裂複製的功能,為了使所有節點得知這訊息,在 OPSF 格式中的選擇(Option) 欄位中第一、二、和八位元為保留位元,目前尚未被使用到,因此我們使 用第一位元來標記為是否具有光分裂複製功能,稱為 SC(Splitting Capability)。如果節點具有光分裂複製功能,當在送 Hello packet 時就 將選擇(Option)欄位中的 SC 位元設成 1,讓鄰近的節點知道此節點是否具 有光分裂複製的功能。當在送出包含有 LSA 訊息的封包時,如果節點具有 光分裂功能時,就在 LSA 標頭檔(header)的選擇欄位中的 SC 位元設成 1,

因此每一路由節點都能夠知道目前網路拓樸結構,和具有光分裂複製功的 節點分佈情形。

在 WDM 網路中,每一個節點都具有 ADD-DROP 多工器(ADD-DROP MULTIPLEXER, ADM)元件,利用 ADM 元件如果節點為群播成員則接收進入

LS age LS type

Link State ID Advertising Router LS sequence number

LS checksum length

DC EA N/P MC E DC EA N/P MC E

0 16 31

Option

SC

(4)

24

之光波資料並不再傳遞此光訊號;如果節點不為群播成員則不接收進入之 光波資料,讓光訊號通過,但 ADM 無法在光範疇中同時接收光訊號並讓光 訊號通過;Maher Ali 等人在[23]提出 Tap-and-Continue(TaC)元件可在 光範疇中同時接收光訊號並讓光訊號通過,使得節點如果為群播成員而且 還有連結著此群組的下游成員(downstream member),則接收進入之光波 資料並讓光訊號通過,但只能服務一個下游節點。節點具有波長轉換 (wavelength conversion)功能可以將進入的波長轉換成不同的波長來傳 遞資料,所以沒有波長連續的限制,而且波長之轉換技術無須光電轉換即 可在光的範疇中完成[30,31],因為波長可以轉換使得波長的選擇使用更 有效率;如果 MC 節點不具有波長轉換之功能,則分裂複製之波長和進入 之波長必須使用相同的波長頻率,例如以波長λ1進入 MC 節點則分裂複製 之波長也必為波長λ1,如果輸出埠(output port)的光纖上波長λ1已經被 使用,而且尚有其他波長未被使用,因為無法轉換波長,因此產生波長碰 撞(wavelength conflict)之情形,而造成分裂複製出來的波長無法拿來 使用;如果 MC 節點具有波長轉換的功能,只要光纖上還有可用之波長,

即可以容易克服波長碰撞之情形,而群播成員收不到資料的機率就會變 小,為了更有效率使用波長,和讓光分裂複製元件更能充分發揮其功能,

論文中因此假設 MC 節點能夠具有波長轉換(wavelength conversion)功 能。

以建立核心為基礎共享樹的方法,允許所有群播成員可以藉由相同共 享樹來傳送與接收資料,資料的傳送的方式是將資料送往核心節點,再由 核心點將資料轉送(forward)給其他的群播成員,因此核心節點所要負責

(5)

25

的工作就是將資料複製並轉送給此群組的所有成員,在 WDM 網路環境中,

為了避免光電轉換,因此核心節點要在全光學(all-optical)環境下複製 資料,則核心節點必須為 MC 節點(有光分裂複製之功能)。

在群播中,每一個群播群組會有一個核心節點,核心節點選取則是由 一堆節點中挑選,稱為候選核心集合(candidate core set),而核心節點 影響著群播樹的建構及效率,以地理角度而言,希望核心節點盡量位於網 路拓樸之中心處;以全光學群播(All-optical multicast)角度而言,希 望核心節點為 MC 節點;依照不同的思考角度來選擇候選核心集合,核心 節點要在全光學(all-optical)環境下複製資料,因此核心節點須為 MC 節 點。因為光分裂複製元件非常昂貴,所以在 MC 節點佈建時,挑選網路上 的節點升級為 MC 節點,會以核心節點優先升級為 MC 節點;因為核心節點 優先升級為 MC 節點,所以候選核心集合為 MC 節點集合中的一部分(Core set ⊂ MC set)。

此篇論文我們提出兩個探索式(heuristic)的群播路由方法來建立以 CBT 為 基 礎 的 共 享 群 播 樹 : Reroute-to-Core (RTC) 的 演 算 法 和 Pre-computing Virtual Tree (PVT)的演算法。

(6)

26

3.2 繞路至核心演算法 (Reroute-to-Core Algorithm)

以原本 CBT 通訊協定[7]在稀疏 MC 節點的 WDM 網路中建立群播樹,則 有可能會造成群播樹的分支處位於 MI 節點上。Reroute-to-Core (RTC)方 法主要就是修改原本 CBT 通訊協定,使群播樹的分支處都位於 MC 節點上,

使修改過後的 CBT 通訊協定在 WDM 網路中不須經由光電轉換處理。

3.2.1 共享群播樹的建立

傳統 CBT 通訊協定[11]中說明當網路上一節點要加入一群播群組 時,會根據自己的路由表(routing table)往核心(Core)節點方向送出 JOIN_REQUEST 訊息,此訊息在往核心節點的路徑上遇到已經在此群組的群 播樹上的節點,稱為 On-tree Router,則此 On-tree Router 會回覆一 JOIN_ACK 訊息並不再轉送這 JOIN_REQUST 訊息,如果沒遇到 On-tree Router,則 JOIN_REQUEST 訊息最後會送到核心節點,並由核心節點回覆 JOIN_ACK 訊息;當欲加入的節點收到 JOIN_ACK 訊息,則代表此群播樹藉 由此 On-tree Router 的延伸可以將資料傳送給欲加入的節點。如果是由 On-tree Router 回覆 JOIN_ACK 訊息,則此 On-tree Router 很有可能變成 為群播樹的分支點,如果此 O-tree Router 為 MI 節點則無法在光範疇中 複製資料,為了避免群播樹的分支點為 MI 節點,因此我們在回覆 JOIN_ACK 訊息的節點條件方面做了以下三項限制,節點只須符合下列其中一點才可 以回覆 JOIN_ACK 訊息:

(7)

27

(1) On-tree Router 為 MC 節點。

(2) On-tree Router 為目前群播樹的葉子節點(leaf node),因為利用 Tap-and-Continue(TaC)的功能便能將資料擷取並通過光訊號給一 個下游成員。

(3) 此群組之核心節點。

以圖 3-3 為例,節點 4、6、16 為 MC 節點,節點 14 為核心節點,節 點 1、5、6、7、8、12、17 為群播成員依序加入,因為共享樹的成員都能 夠在同一群播樹上傳送和接收資料,因此沒有特定的來源端和目的端;圖 3-3(a) 節點 1 要加入時,會送出 JOIN_REQUEST 訊息往核心方向,因為往 核心方向路徑上並未碰到 On-tree Router,所以由核心節點 14 回覆 JOIN_ACK,符合第三項的限制,因此建立路徑 1-4-8-13-14;圖 3-3(b)、

(c) 節點 5、7 要加入,因符合第三項的限制,則分別建立路徑 5-9-14、

7-11-10-14;圖 3-3(d)節點 8 加入時,因為已經在群播樹上,因此利用 TaC 功能便能接收到資料;圖 3-3(e) 、(f)節點 12、17 加入時,皆會遇 到 On-tree Router 節點 13,因為節點 13 為不符合條第 1 和 2 項的限制,

所以分別建立路徑 12-13-14、17-13-14。

(8)

28

1

2 5

15

10 18

9

19 13

17 8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2 4 3

1 2

2

6 2

4 1 4

16

14 6

Core 2

1

2 5

15

10 18

9

19 13

17 8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2 4 3

1 2

2 6

2 4

1 4

16

14 6

Core 2

1

2 5

15

10 18

9

19 13

17 8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2 4 3

1 2

2

6 2

4 1 4

16

14 6

Core 2

1

2 5

15

10 18

9

19 13

17 8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core 2

1

2 5

15

10 18

9

19 13

17 8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core 2

1

2 5

15

10 18

9

19 13

17 8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2 4 3

1 2

2

6 2

1 4 4

16

6 14

Core 2 (b)

(c) (d)

(e) (f)

(a)

圖 3-3 (a) add node 1, (b) add node 5, (c) add node 7, (d) add node 8, (e) add node 12, (f) add node 17

由圖 3-3(f) 中發現必須建構三個 Light-Tree,才有辦法達成群播目 的,而造成核心節點附近周圍光纖(路徑 13-14)所需要負載的波長較多,

因為 RTC 方法會使得所有新加入的節點都往核心節點的方向去尋找可連結 (join)的節點,所以必須建構多個 Light-Tree,我們都知道一條光纖上可 允許的同時傳送的波長數量是有限制,因此當一條光纖所要負載的波長過 多,就容易造成波長不敷使用,因此造成群播會議阻塞機率提升。

(9)

29

3.2.2 群播成員的離開

在群播成員節點離開方面,如果離開的節點為群播樹上的中間節點,

表示目前還有一個或是一個以上的下游節點(down-stream nodes)連結 (join) 到 它 , 所 以 節 點 離 開 後 將 Tap-and-Continue 的 功 能 變 換 成 Continue-only 的功能,只讓此群組之光訊號通過,不再接收光訊號,但 並不會釋放波長。如果離開的節點是葉子節點,則往 Light-Tree 的上游 節點(up-stream nodes)告知並釋放出波長,而上游節點釋出波長後也檢 查是否還有別的節點連結(join)到自己或是本身是否為群播成員節點,如 果還有下游節點或為群播成員節點,則不再繼續往上游節點釋放出波長;

如果沒有別的節點連結到自己或也不為群播成員節點,則一直往上游節點 告知並釋放波長,直到核心節點。

以圖 3-3(f)為例,當節點 8 要離開時,因為節點 8 還有一個下游節 點 4 連結(join)到它,因此節點 8 離開後只將 Tap-and-Continue 的功能 變換成 Continue-only 的功能,不再接收此群組之光訊號,但並不會釋放 波長。當節點 5 要離開時,因為節點 5 為群播樹的葉子節點,所以會往 Light-Tree 的上游節點 9 告知並釋放出波長,而節點 9 沒有別的節點連結 到它或也不為群播成員節點,再往上游節點 14 告知並釋放出波長,因為 節點 14 為核心節點,所以到此為止。

(10)

30

3.3 預 先 計 算 虛 擬 樹 的 演 算 法 (Pre-computing Virtual Tree Algorithm)

因為當群播成員數目多的時候,以 RTC 方法會造成核心節點周邊光纖 上波長需求負載過大,因此 Pre-computing Virtual Tree(PVT)主要利 用網路上的 MC 節點來分散核心節點周邊光纖上波長負載量,每個 MC 節 點負責分裂複製光波訊號,以供應周遭群播成員節點,因此當有節點要 加入群播群組時,只需要連結到離自己所在位置最近的可供連結的節點

(MC 節點或是葉子節點)即可,不再需要往核心路由方向去找尋。

圖 3-4 Pre-computing Virtual Tree(PVT)

當群播成員節點聯結(join)到鄰近 MC 節點時,為了讓核心節點也能 夠將資料傳送到有群播成員的 MC 節點上,因此首先建構一 Light-Tree(或 是 Light-Forest)將所有的 MC 節點(包含核心路由器)都聯結(connect)

Core MC

MC

MC

MC

MC

Virtual tree

(11)

31

起來,稱為虛擬樹(virtual tree,VT),核心節點就可以靠這 VT 將資料 傳給有群播成員的 MC 節點上,再由 MC 節點負責把資料利用光分裂複製給 附近周圍的群播成員節點;因為每一節點都知道網路的拓樸及資訊,因此 只要每一節點都執行相同的演算法就可以簡單的找出這虛擬樹,每一節點 可依群組事先算出這虛擬樹,而此 VT 的路徑是不會去先建立與配置波長,

而是當新的成員加入,利用 MC 節點來傳送或接收資料時才會去建立並分 配波長,因此稱為先前運算虛擬樹(Pre-computing virtual tree)。

PVT 方法主要想法如圖 3-4 所示,網路中有 6 個 MC 節點,其中一個 MC 節點為核心節點,PVT 方法主要想法為利用網路上的每個 MC 節點(包 括核心節點)負責分裂複製光波訊號,以供應周遭群播成員節點,來分 散核心節點周邊光纖上波長負載量,而虛線圓圈則代表每個 MC 節點負責 的範圍,而每個 MC 節點所負責的範圍大小不一,必須視整個網路中 MC 節點的分佈而定,而每個 MC 節點負責範圍內群播成員節點的加入,利用 虛擬樹(粗實線)將核心節點的資料傳送給 MC 節點,而虛擬樹到 MC 節點 的路徑是否要配置波長,必須視此 MC 節點是否有被此群播成員連結 (join)。

3.3.1 虛擬樹的建立

藉由虛擬樹的產生,核心節點可將資料轉送到 MC 節點,所以核心節 點猶如來源端,而 MC 節點猶如目的端,因此可視為典型的以來源端為基 礎群播樹,在建立以來源為基礎群播樹(source based multicast tree)

(12)

32

的演算法大致可分成兩大類[15],第一類演算法是希望建置一個總成本最 小的群播樹,為了使群播樹的成本為最小,是典型 Minimum Steiner Tree (MST)的問題,然而,找出最佳的 MST 已經被證明為 NP-complete 的問題 [20],因此有很多探索式(heuristic)的方法紛紛被提出來[21];第二類 演算則是希望資料從來源端傳送資料到到每一目的端之傳輸距離最小,因 此由來源端對於每一個目的端找出其最短路徑(Shortest Path),所建置 之最短路徑樹(Shortest Path Tree);因此這篇論文利用兩種方法來建 立虛擬樹:(1)L. Kou, G. Markowsky, L. Bermann 在[25]所提出解決 MST 的方法,以後簡稱為 KMB(2)最短路徑樹(shortest path tree)。

3.3.1.1 KMB (PVT-KMB)

為了使建的樹的成本為最小,是典型 Minimum Steiner Tree (MST) 的 問 題 , 然 而 , 找 出 Optimal minimum Steiner Tree 已 經 被 證 明 為 NP-complete 的問題[20],因此有很多探索式(heuristic)的方法紛紛被提 出來[21];其中 KMB[25]為最佳解(optimal solution)的 1.5 倍或是更小,

而且在最差的環境下也不會超過 1) 1 (

2 −l 倍[25],l為群播樹葉子節點的個 數。在網路拓樸中,將核心節點視為來源端,其餘的 MC 節點視為目的端,

KMB 演算法如下:

步驟 1:對於每一個 MC 和核心節點利用最短路徑建置一完全圖(complete graph),稱為 G1

步驟 2:對 G1找最小生成樹(minimum spanning tree),稱為 T1

(13)

33

步驟 3:將 T1所有的邊還原成原本網路拓樸兩點間最短路徑所對應的邊,

稱還原之圖形為 Gs。

步驟 4:為了避免 Gs 產生迴路,再對 Gs找最小生成樹 TS。 步驟 5:針對於 TS移除不需要的節點和不必要的邊。

4 16

14 6

7 9

7

4 5

5

(b)G1

4 16

14 6

4 5

5

(c)T1

2

10

13 2 3

2 3 2 2

4 16

6 14

(d)GS,TS

1

2 5

15

10 18

9

19

13 17

8

12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2

2 4

3

1 2

2 6

2 4

1 4

16

14 6

(a)

Core

圖 3-5 KMB algorithm step

(14)

34

以圖 3-5 為例,圖 3-5(a)為網路的拓樸結構,節點 14 為核心節點,

節點 4、6、16 為 MC 節點,利用最短路徑方法針對節點 4、6、14、16 找 出一完全圖(complete graph),如圖 3-5(b),之後對於 G1圖形找出最小生 成樹,如圖 3-5(c),將 T1還原成原本對應的 G 圖形,如圖 3-5(d),最後 為了避免還原的圖有迴圈產生,因此在對於圖 3-5(d)在執行一次最小生成 樹,如圖 3-5(d),因為 Gs 和 Ts 圖相同,則 Ts 即為我們虛擬樹。

3.3.1.2 最短路徑樹(PVT-SP)

第二種建虛擬樹的方法稱為最短路徑樹,希望核心節點收到資料後,

能夠迅速地將資料轉送到 MC 節點,因此希望核心節點到 MC 節點的路徑越 短越好,而路徑短相對的資料傳輸時間就短。在網路拓樸中,將核心節點 視為來源端(Source),MC 節點視為目的端(Destination),由來源端(核心 節點)對於每一個目的端(MC 節點)藉由 Dijstra’s algorithm[22]去找一條最 短路徑,路徑中有經過相同的邊,則合併在一起,構成一個樹狀結構,稱 為最短路徑樹。

以圖 3-5(a)為網路的拓樸結構,節點 14 為核心節點,節點 4、6、16 為 MC 節點,利用最短路徑樹來建構出虛擬樹,由節點 14 利用 Dijstra’s algorithm 分 別 對 節 點 4 、 6 、 16 找 出 其 最 短 路 徑 , 其 路 徑 分 別 為 {14-13-8-4,14-10-6,14-13-16},因為路徑 14-4 和路徑 14-16 中都經 過邊 14-13,則合併在一起,其最短路徑樹如圖 3-6。

(15)

35 10

13 2 8

2 3

3

2

2 4

16

14 6

Core

圖 3-6 Shortest path tree

3.3.2 群播成員的加入

以上述之兩種方法(KMB 及最短路徑樹)建構虛擬樹(VT)後,再來此章 節介紹當新節點要加入時的方法,新節點加入的方法如下述:

步驟 1:首先判別是否已在群播樹上,如果為群播樹上的節點,則利用 TaC 功能將接收資料並繼續傳遞光訊號,如此即完成節點加入之動 作,則執行步驟 6。

步驟 2:如果新加入節點在 VT 上,則執行步驟 4。

如果新加入節點不在 VT 上,則尋找距離本身節點最近的 MC 節點 (包含核心)或是目前群播樹上的葉子節點,

如果距離本身節點最近的可連結(join)節點為葉子節點,則 執行步驟 5。

步驟 3:檢查 MC 節點目前是否在群播樹上。

如果 MC 節點在群播樹上,則執行步驟 5。

步驟 4:依照 VT 往核心方向路徑去尋找,直到遇到下述其中之一的節點來

(16)

36

加入。

(1)On-tree Router 為 MC 節點。

(2)On-tree Router 為群播樹的葉子節點(leaf node),因為利用 TaC 功能的便能將資料擷取並通過光訊號給下游成員。

(3)此群組之核心節點。

步驟 5 : 分配波長。

步驟 6 : 結束節點加入之動作程序。

圖 3-7 和圖 3-8 分別為 PVT-KMB 和 PVT-SP,其網路情形與圖 3-3 相 同,在圖 3-7(a)中虛線部分為利用 KMB 方法所找出的虛擬樹;在圖 3-7(b) 中節點 1 要加入,則離最近的 MC 節點為節點 4,所以建立路徑 1-4,因為 節點 4 不在群播樹上,因此執行步驟 4 依照 VT 往核心節點的方向去建路 徑 4-2-6-10-14;圖 3-7(c)、(d)、(e)中節點 5、7、8 要加入,因此分別 選擇離所在位址最近的 MC 節點 6 和節點 4,因為節點 6 和節點 4 都已經在 群播樹上,因此不需依照 VT 往核心節點的方向去建路徑;圖 3-7(f)節點 12 要加入,則離最近的 MC 節點為節點 16,但節點 16 尚未在群播樹中,

因此執行步驟 4 依照 VT 往核心節點的方向去建路徑 16-13-14。因為圖 3-7 和圖 3-8 只有建構的 VT 不相同,但其節點的加入方法流程都相同,而圖 3-8 為 PVT-SP 依序加入節點 1、5、7、8、12、17 後的群播樹的結果。

(17)

37

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2

6 2

4 1 4

16

6 14

Core

1

2 5

15

10 18

9

19

13 17

8 12 3

7 11

4

3

1

3 2 3

4 3

2 2

2

3

3 3

2 4 2

3

6 3

3 2

2

2 4 3

1 2

2 6

2 4

1 4

16

6 14

Core

(a) (b)

(c) (d)

(e) (f)

(g)

圖 3-7 (a)network topology, (b)add node 1, (c)add node 5, (d)add node 7, (e)add node 8, (f)add node 12, (g)add node 17

(18)

38 1

2 5

15

10 18

9

19

13 17

8

12 3

7 11

4

3

1

3

2 3

4

3

2 2

2

3

3 3

2 2 4

3

6 3

3

2

2

2 4

3

1 2

2 6

2

4 1

4

16

14 6

Core

圖 3-8 PVT-SP

3.3.3 群播成員的離開

在群播成員節點離開方面與 RTC 的方法相同,如果離開的節點為群播 樹 上 的 中 間 節 點 , 表 示 目 前 還 有 一 個 或 是 一 個 以 上 的 下 游 節 點 (down-stream nodes) 連 結 (join) 到 它 , 所 以 節 點 離 開 後 將 Tap-and-continue 的功能變換成 Continue-only 的功能,不再接收此群組 之 光 訊 號 , 但 並 不 會 釋 放 波 長 。 如 果離 開 的 節 點 是 葉 子 節 點 , 則 往 Light-Tree 的上游節點(up-stream nodes)告知並釋放出波長,而上游節 點釋出波長後也檢查是否還有別的節點連結(join)到自己或是本身是否 為群播成員節點,如果還有下游節點或為群播成員節點,則不再繼續往上 游節點釋放出波長;如果沒有別的節點連結到自己或也不為群播成員節 點,則一直往上游節點告知並釋放波長,直到核心節點。

(19)

39

3.4 波長的分配

在波長分配方面,因為此篇論文主要是在建立共享群播樹,而共享群 播樹的最大特徵在於同群組之成員之間互相傳送或接收資料時,不需自行 建立群播樹,共同使用單一群播樹來傳送與接收資料,因此每一節點都有 可能扮演著來源端或是接收端,因此當一條路徑要保留波長時,我們必須 保留雙方向的波長,以備之需。

當新加入的節點往核心方向送出 JOIN_REQUEST 訊息時,並同時收集 沿途所經過之路徑的雙方向的波長使用情形,由被連結的節點(核心節點 或是 MC 節點)來分配雙向的波長,因此在回覆 JOIN_ACK 訊息時將剛才所 分配之波長,沿著 JOIN_ACK 訊息的路徑沿途設定所經過的光學交換機,

如圖 3-8。如果被連結的節點為葉子節點,則將已經使用在此群組的波長 繼續延伸至加入的節點。

Adding node

λ1 λ3 λ4 λ1

λ1 λ2 λ2 λ4

MC/Core

JOIN_ACK

λ2

λ3

Configure the WDM switches

JOIN_REQUEST Collect the information of using wavelengths

(20)

40

圖 3-9 wavelength assignment

參考文獻

相關文件

服務選取模組主要目的是從 UDDI (2.1.5 節)眾多服務當中,依照需求選取出 一組合適的網路服務。而

此外,由文獻回顧(詳第二章)可知,實務的車輛配送路線排程可藉由車 輛路線問題(Vehicle Routing

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

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

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

會隸屬於太多的群組,在實際的應用環境裡 N groups 實際上的值是很小的,所以不 會因為搜尋群組而降低比對 User Object 的效能。在 3.3.1 節提到 IP-User Table 是 利用

隨機挑選模擬環境中先隨機選出某些根節點,此節點將當作根節點(Blueroot)建 立樹狀網路,利用此 Blueroot 建立樹狀網路,將 Blueroot 指定為 Master

樹狀拓樸架構的形成,先隨機設立一個根節點(Root node),來當作樹狀拓樸 架構的起始節點。這個根節點(Root node)作為 Master