• 沒有找到結果。

第二章 文獻探討

2.2 無基礎行動網路的路由協定

2.2.1 路由協定分類

目前應用在無基礎行動網路的路由協定可依據路由資訊更新方式分為以下 四類,如圖四所示:

圖四 無基礎行動網路路由協定分類

2.2.1.1 Table-Driven

此種路由方式是由傳統有線網路的路由方式所變化而成的。在 table-driven 的路由方式中,每個節點都會負責維護一個路由表(routing table)來記錄所有的封 包傳送路徑,其缺點是為了確保路由表所記錄資料的正確與即時性,每隔一段時 間,節點之間就必須彼此交換路由資訊而產生大量的路由封包,且路由封包的量 會受節點數目與網路拓樸變動率的影響,當節點數目越多或網路拓樸變動率越大

時,所產生的路由封包也就越多,因此無法適用於節點數目多或高度動態網路拓 樸的無基礎行動網路環境下;其優點是節點可藉由查詢路由表而立刻得到路由路 徑。

DSDV(Destination Sequenced Distance-Vector)[2]是一個屬於 table-driven 的路 由協定,每個節點都各自維護一路由表,其內容記錄當節點要將封包傳遞到某目 標 節 點 (destination node) 時 , 此 節 點 接 下 來 應 該 將 封 包 傳 給 哪 個 鄰 近 節 點 (neighbor nodes),每隔一段時間,節點之間就會交換路由資訊以更新路由表來確 保路由路徑的即時與正確性。

路由資訊的更新起源於某目的節點與新節點建立連線時,此目的節點就會將 此路由資訊賦予一個更新序號(sequence number)並且廣播給其鄰近節點,當鄰近 節點收到此訊息後,即可藉由比較更新序號來確認這是否是新的路由資訊,若是 新的路由資訊則會更新自己的路由表並把此資訊再廣播給其鄰近節點,若是舊的 資訊就會將它忽略。

圖五 DSDV 路由方式(1)

如圖五所示,節點 1 是資料封包的來源節點而節點 15 是資料封包的目的節 點,節點 1 的路由表記錄了到每個節點的路由資訊,例如由節點 1 到節點 15 的 最短路徑是經由節點 5 並且須經過 4 個 hop,而此路由資訊的更新序號是 21,若 是再收到由節點 15 所散佈的路由資訊且其更新序號大於 21 時,即可判定是新的 路由資訊。

圖六 DSDV 路由方式(2)

如圖六所示,當節點 11 因為移動而與其鄰近節點 10 與 14 之間的連線中斷 時,其它節點會暫時無法傳遞封包給節點 11,直到節點 11 與節點 14 再次建立 連線後,新的路由資訊又會再次廣播給每個節點,收到此路由資訊的節點就可更 新 routing table 而得到節點 11 的路由路徑。

2.2.1.2 On-Demand

為了解決 table-driven 路由方式所產生大量路由封包占據網路頻寬的問題,

因此 on-demand 的路由方式被提出。在 on-demand 的路由方式中,唯有當節點間 需要傳遞封包時,才須經由路徑探索機制來尋找路由路徑,其優點是所產生的路

由封包受網路拓樸變動率的影響較低,因此在高度動態的網路拓樸環境下仍能保 有很好的效能;其缺點在於封包傳輸前須等待路由探索的機制完成後才能開始。

DSR(Dynamic Source Routing)[3]是一個屬於 on-demand 的路由協定,每個節 點平時不需維護路由表,唯有當節點需要傳遞封包給某目的節點時,才須經由ㄧ 路徑探索機制尋找到此目的節點的路由路徑。

圖七 DSR 路由方式

圖七所示,當節點 1 需要傳遞封包給節點 15 時,節點 1 會廣播路由請求(route request)封包到它的鄰近節點,當鄰近節點收到路由請求封包時,會先確認此路 由請求封包在先前是否已處理過,若已處理過則將其丟棄,若是沒處理過則會檢 查自己是否是路由請求封包所要尋找的目的節點,若是則回覆一路由回應(route reply)封包,使得此路由回應封包能將路由路徑帶回到來源節點,若不是則會將 自己的節點 ID 記錄到路由請求封包中後再將其廣播給鄰近節點,最後節點 1 共 得到三條到達節點 15 的完整路由路徑。

2.2.1.3 Hybrid

為了整合 table-driven 與 on-demand 路由方式的優點並且適用於節點數目較 多的無基礎行動網路環境下的路由方式,因此 hybrid 的路由方式被提出來。在 hybrid 的路由方式中,近距離節點間的路由路徑可藉由查詢路由表而立刻得到,

而遠距離節點的路由路徑需藉由路徑探索機制才能獲得。

ZRP(Zone Routing Protocol)[23]是一個屬於 hybrid 的路由協定,若目的節點 位於來源節點的 routing zone 以內的區域,則採用 table-driven 的方式決定路由路 徑,反之,則採用 on-demand 的方式。

圖八 ZRP 路由方式

如圖八所示,假設節點 8 的 routing zone 範圍是在與節點 8 hop 數相距 2 以 內的節點,而 hop 數與節點 8 相距為 1 的節點(7、4、12、13)屬於 interior nodes,

hop 數與 node 8 相距為 2 的節點(2、3、5、9、10)屬於 peripheral nodes。

當節點 8 要與位於 routing zone 以內的節點(例如節點 10)通訊時,只要經由 查詢自己維護的路由表即可得到路由路徑,當節點 8 要與位於 routing zone 以外

的節點(例如節點 11)通訊時,就必須要藉由路徑探索機制來尋找路徑。

所謂的路徑探索機制是節點 8 會廣播路由請求封包到它的 peripheral nodes,

若是目標在某 peripheral node 的 routing zone 以內,則此 peripheral node 會回覆路 由回應封包給節點 8 並告知路由路徑,反之,則再次將此 route request 封包廣播 給其 peripheral nodes。

2.2.1.4 Swarm-Intelligence

Swarm-intelligence 路由方式是藉由觀察生物(例如:螞蟻與蜜蜂等)的習性而 得到啟發的,這些生物通常靠著一些簡單的群體智慧卻能有效的解決許多複雜的 問題(例如:尋找食物與採蜜等),因此 swarm-intelligence 路由方式可藉由模仿這 些簡單的群體智慧來達到路由路徑尋找的目的。

ARA(Ant-based Routing Algorithm)[17]是藉由模擬真實螞蟻尋找食物的行為 所設計的路由演算法,其方法是藉由費洛蒙的濃度來指引螞蟻有效的尋找到路由 路徑。

圖九 ARA 路由方式

如圖九所示,當節點 1 需要尋找到節點 15 的路由路徑時,forward ants 會被 傳遞到其鄰近節點,鄰近節點就可藉由經過的螞蟻來累積費洛蒙,例如節點 7 的費洛蒙表所紀錄的費洛蒙值表示曾經有節點 1 所散佈的螞蟻由節點 3 與節點 8 傳遞過來,也曾經有節點 15 所散佈的螞蟻由節點 3、節點 8 與節點 9 傳遞過來,

由於費洛蒙值會與所經過螞蟻數目成正比而與所累積的時間長度成反比,因此可 知螞蟻由節點 7 往節點 9 移動而找到節點 15 的機率最大,當 forward ants 找到節 點 15 後,節點 15 會將收到的 forward ant 轉換成 backward ant,並同尋找路徑過 程的機制回到節點 1,當節點 1 收到 backward ant 時,可知道對節點 15 的路徑 探索已經完成。

近年來有許多以螞蟻演算法為基礎的路由機制研究,其方法名稱與目的如表 二所示:

表二 以螞蟻演算法為基礎的路由機制研究

方法名稱 目的

ABEC[19] 以節省電力消耗為目的的路由演算法 ABLS[18] 應用於大型網路環境下的路由演算法 GPAL[5]

ARAAI[24]

結合 GPS 以提升網路效能的路由演算法 控制費洛蒙蒸發率提升網路效能的路由演算法

相關文件