第三章 Delay-Aware Routing based on Game Theory(DARGT)
3.1 問題描述
描述研究動機及傳統路由方法面臨之問題。
3.2 Delay-Aware Routing based on Game Theory: phase 1 (Route-discovery) 描述本論文所提出的 DARGT phase 1 的概念及運作機制。
3.3 Delay-Aware Routing based on Game Theory: phase 2 (Forwarding game) 描述 DARGT phase 2 所提出的傳輸賽局其概念及運作機制。
3.4 Trust design
描述傳輸賽局中的信賴值設計與交換流程。
3.5 Delay-utility allocation
描述傳輸賽局中信賴值(利益值)分配的概念及運作機制。
16
3.1 問題描述
在車載網路中,通常都是藉由簡單的廣播機制(flooding)來傳遞訊息,在進行路由(route discovery)的選擇上,也是使用 flooding 的方式廣播路徑要求訊息(RREQ,RREP)。但無線的資 源是有限的,以廣播傳遞資料的方式可能會有多餘廣播的問題,以及要考慮到同時大量訊息集 中於特定節點的情況,可能導致節點附近的頻寬擁塞,在嚴重的情況下甚至會造成廣播風暴,
而廣播風暴所帶來的訊息遺失(packet loss)以及高傳輸延遲 (transmission latency)在車載無線網 路中無疑是致命性的影響,並降低整體網路的可靠度。
為了改善上述的問題,我們將從選擇路由路徑上著手。傳統的路由方法如 AODV,其路 由選擇依據為單純選擇到目的地節點的最短路徑,而最短路徑的建立,同樣表示不考慮路徑上 節點的負載輕重亦或是路徑上的傳輸延遲高低如何,所有封包都會集中往這條路徑上傳輸。若 以 Delay 為重的車載網路應用來說,最短路徑的選擇方法極有可能會造成高傳輸延遲,並不是 最理想的路由方法 。
基於上述的理由,在本論文所提出的 Delay-Aware Routing based on Game Theory (DARGT) 方法中,DARGT 的 Phase1 將會是基於路徑最低傳輸延遲的路由路徑選擇。我們盡可能的改善 路由選擇所帶來的傳輸延遲問題,經由選擇現時點最合適的路徑進行傳輸,來降低封包擁塞以 及廣播風暴發生的可能性,也連帶降低了封包的傳輸延遲,提整體網路的可靠度。
3.2 Delay-Aware Routing based on Game Theory: phase 1 (Route-discovery)
在 Delay-Aware Routing based on Game Theory (DARGT) phase 1 中,為了解決傳統最短路 徑選擇方法所帶來的問題,並追求最低的傳輸延遲,我們認為應該從路由選擇的判斷標準做改 變,從選擇最短 hop 數的路徑變成選擇最低傳輸延遲的路徑。首先我們得知當 RREP 封包從目 的地節點傳送回來時,會一併夾帶其行走的反向路由上的資訊,若我們對 RREP 封包的結構進 行修改,使其可以多夾帶我們想要得知的資訊例如:這條反向路由路徑的傳輸延遲(delay)、此 路徑上節點的負載量(Loading)以及路徑上節點是否存在自私節點等訊息。當 Sender 端收到傳
17
回的 RREP 時,就可以根據這些訊息判斷此條路徑是否合適,而不用單純以此路徑是否為最短 路徑做判斷。為此我們提出了 delay- utility function 公式來計算路徑的 Total cost:
(1)
此公式考慮了無線環境中可能造成路徑延遲的因素:假設環境中共有 條路徑, 表示第 i 條 路徑,一條路徑可由兩個節點甚至許多節點組成, 函數表示尋找上一跳節點中具 有最小路徑 cost 的節點,並與其建立路徑。我們考慮路徑的傳輸延遲 D(delay)、負載量 SL(loading)以及其他參數如 hop 數 H(hop-count),經由以上參數設計出公式(1),用來計算出每 一條路徑的 total cost。具有最小的 cost 的路徑將會是最合適的路由路徑,而 sender 會選擇最 低 cost 的路徑建立路由表。
、 、 為可以調整的比重參數,我們隨時可以根據不同的實驗需要來調整三者比重的 分配。根據公式的物理意義,有最小權重的路徑會是最合適的路徑。而 U 值之間的比例分配,
如今我們的重點放在減少路徑的延遲部分,所以使 =Delay 的比重為最大, =SL、 =Hop count 的比重相同。如下圖,Delay 所占的比重為 60%、Loading 與 Hop-count 數所占比重皆為 20%。
18
圖 3-1. Path cost calculation
以圖 3-1 為例,假設環境中節點對其他節點的信賴度皆為相同( T=50% ),當節點 N3 收到 來自目的地端(N8)的 RREP 廣播時,可能分別從 N6 與 N7 兩點收到。若是依照傳統的 AODV 路徑建立法,只考慮從 Source 端(N1)到目的節點(N8)的最短 hop 數,會單純選擇 N6 來建立路 徑。
但在 DARGT 的方法中,我們是依據 Cost 計算公式,來選擇有最小 Cost 的路徑。根據公 式(1),於 N3 點可得到的資訊分析: N3 到達 N6 的延遲(D)為 20ms,而 N6 目前的負載量(SL) 為 40%,N3 經由 N6 到達目的地 N8 的跳數(H)為 2,且 N3 對於 N6 的信賴值(T6)為 50%,此 四組參數應用於公式(1)就可求出 N3 到 N6 路徑 cost (N3-N6)為 10.4;由 N3 到 N7 的路徑 cost (N3-N7)則為 2.64,但由於 N7 經由 N6,此時必須把 N6-N7 這段路徑 cost 也考慮進去,於是可 得知路徑(N3-N7-N6)的 Total cost 值為 2.64+1.28=3.92。此時將兩段路徑的 total cost 做比較,
路徑(N3-N7-N6) 比起路徑(N3-N6)的 Total cost 值(10.4)來的小,表示路徑 (N3-N7-N6) 可能有 較低的傳輸延遲與負載量,同樣意即在 N3 點的場合,選擇 N7 來建立路徑會是較好的選擇。
19
3.2.1 Delay-Aware Routing
為減少路徑傳輸延遲,DARGT 提出了 Delay-aware routing 的概念。當節點收到 RREP 封 包時,首先會去確認其路由表中是否有到達此目的地節點的路徑,若是沒有,則將 RREP 傳回 的這條反向路徑登錄為新路徑;若路由表中已經存在了舊路徑,節點會經由公式(1)來比較新 舊兩條路徑的 Total cost 值,具有較小 cost 值的路徑同樣表示此路徑具有較低的傳輸延遲,節 點會選擇具有較小 cost 值的路徑來做為路由路徑,將路徑 cost 存入 rt_cost 值內並同時更新路 由表(rt_update)。
3.3 Delay-Aware Routing based on Game Theory: phase 2 (Forwarding game)
賽局理論是一種策略思考,提供了一套系統設定的數理分析方法,尋求在利害衝突下的最 適因應策略。在 DARGT phase 2 中我們應用賽局理論,提出一個傳輸賽局(forwarding game),
用來是抑止網路中的自私行為以及促進節點間合作。傳輸賽局的組成由參與者節點(Player)、
參與者們所能選擇的策略(Strategy)以及參與者所能到的利益(Utility)組成。DARGT 中的傳輸賽 局可表示如下:
1. 參與者(Player): N = { }
假設參與者集合 N 為所有參與傳輸賽局節點的集合,設共有 n 個節點,我們可以定義出 S 為起始節點、D 為目的節點、F 則為路徑中幫忙傳送的 Forwarder。
2. 策略(Strategy): S = { } F= { }
由於賽局中角色不同,各自的策略必須分開討論。若節點為起始節點 S,做為 Sender,必 須在 x 條候選路徑中選出封包要傳送的最適路徑,路徑集合可表示為{ };若節點 做為 Forwarder,則只要決定是否幫忙 Sender 轉送,其策略集合只有簡單的{ }。
節點做任何決策都必須是在自身能獲得足夠的利益為前提下進行。
20
3. 利益值(Utility):
傳輸賽局中的利益值就是 phase1 路經搜尋中尋找最短 cost 值的路徑,經由多種參數如 delay、
system loading 等 delay-utility function 計算出路徑 cost,可以合理推測具有低 cost 值的路徑 會具有較低的傳輸延遲。而在利益值選擇的這個部份,sender 都會去爭取就有最低延遲時 間的路徑傳送封包,以最大化本身的利益。
傳輸賽局的利益值就是有關信賴值設計的部分會在章節 3.4 中詳細介紹。
3.4 Trust design
信賴值(Trust)是一個用來衡量節點是否是自私節點的數值,Trust 的值介於 0-1 之間,可 表示為 0%-100%,信賴值的上限為 100%,超過上限仍以 100%計。信賴值表示的是對其他節 點的信賴,每一個節點都會有一個對於其他節點的信賴表,對其他節點的信賴值會隨著其是否 願意幫忙傳送封包而改變。若是對某節點的信賴值很高,表示此節點值得信賴: 若收到高信賴 值的節點所廣播出的封包時,環境中的其他節點會更願意幫忙傳送;反之,若對某節點的信賴 值很低,表示此節點可能多次拒絕/丟棄廣播封包,可能是潛藏在環境中的自私節點,環境中 的其他正常節點將會避免將封包傳送往此自私節點,並且拉高幫忙自私節點傳送封包的門檻值,
以抑止自私行為,增加網路的可靠度。
在傳輸賽局中,信賴值作可做為一個傳輸門檻(threshold),當 Forwarder node 判斷對 sender node 的信賴值大小是有超過傳輸門檻時,才幫忙傳送封包;若是幫忙傳送,sender node 對 forwarder node 的信賴值將會上升一個獎勵值 α 作為其幫忙傳送封包的獎勵;同理,若 forwarder node 拒絕幫忙廣播,sender node 對其的信賴度將下降一個懲罰值 p 作為處罰。在傳輸賽局中,
信賴度是一個相互的概念,我們期望藉由節點間信賴度交換的方法,鼓勵環境中的節點/自私 節點合作。
21
圖3-2. Trust diagram.
環境中每一個節點都有自身的 trust table 用來紀錄對其他節點的信賴度,如圖 3-2 中有三 個節點 N1、N2 與 N3,在 N1 的 trust table 內會以 Tn2 表示 N1 對 N2 的信賴值,以 Tn3 表示 N1 對 N3 的信賴值;同理,N2 對 N1 的信賴值以 Tn1 表示。信賴值是常時變動的,對其他節 點的信賴值會隨著其他節點所採取的策略而變化。節點間信賴度(Trust)的變化,舉例來說,若 是 Forwarder 幫忙 Sender 傳送封包, Sender 對 Forwarder 的信賴度( )就會增加一定值 ,反 之則減少。當信賴度增加後,要是兩者立場改變,換成 Forwarder 想要傳送封包時,原本的 Sender 就會更願意幫忙其傳送。這是一個互動的概念,以信賴度作為利益值交換,期望隨著節點間信 賴值的變動,最終能達到促使環境節點互相合作的目的。在 DARGT 中,信賴值的用途依照角 色扮演的不同可分為 sender 與 forwarder part:
Sender part: Sender 請求 Forwarder 幫忙傳送時,同時會告知 Forwarder 幫忙傳送能獲得多少 Packet utility,由 Sender 給出的 Packet Utility 的值多寡,是根據 Sender 對 Forwarder 的信賴度 大小所決定,設定如下:
傳輸成功: Tf = Tf + α
傳輸失敗: Tf = Tf - p (2)
α 為一個可調整的獎勵值參數,可因應實驗需要改動, 值表示 Sender 對 Forwarder 的信 賴度,若 forwarder 幫忙傳送封包,則會獎勵些許對其的信賴值 α。
22
表 3-1 Sender part 參數說明 Sender part 參數說明
參數 功能說明
Tf 紀錄 sender 對 forwarder 的信賴值 α Forwarder 幫忙傳送獲得的獎勵值
p Forwarder 拒絕傳送受到的懲罰值
舉例來說 ,若 α 值設定為 10%,且此時 Sender 對 Forwarder 的信賴值 為 50%。若 Forwarder 幫忙此次傳送,傳送後,Sender 對於 Forwarder 的信賴度將增加為 60%。
圖 3-3 Sender part trust design
注意信賴值的上限為 1 或可表示為 100% (Trust 值不超過 1),若是超過上限仍以 100%計。對
23
一個節點的信賴度為 100%,則表示完全信任此節點。
Forwarder part:
當 Forwarder Node 收到傳送要求時,首先會去檢查要求者的信賴度,我們設計了一個門檻值 (threshold),由 Forwarder 的負載量(SL)當作門檻。Forwarder 端的流程圖可表示如下:
圖 3-4 Forwarder part flowchart.
如圖 3-4,當 Forwarder Node 收到傳輸要求時,會設定一個傳送門檻(threshold),並檢查
如圖 3-4,當 Forwarder Node 收到傳輸要求時,會設定一個傳送門檻(threshold),並檢查