第二章 相關研究
2.2 車載延遲容忍網路的路由介紹
車載延遲容忍網路是在高延遲、高錯誤率、有限的資源、時常必須面臨連線中斷 的不穩定連線等種種的惡劣環境之下,來做封包的傳送,不同的路由機制以及不同的 路由協定都會影響在車載延遲容忍網路中的效能,所以在這架構裡,要去設計此環境 較適合的路由,了解基本和常見的路由機制以及路由協定。
2.2-1 路由機制
路由機制有 3 種的路由策略分別為 Source decision、Per-hop routing、
Per-contact routing,而這 3 種策略也就是代表決定路線的策略不同。在路由機制 中除了路由策略之外還有傳送類型,傳送類型有 2 種分別為 Forwarding-based
routing、Replication-based routing,第一個是封包轉送給對方後,自己身上不留 封包,第二個是封包轉送給對方後,自己也留一份,也就是所謂的複製轉送封包。其 中 Replication-based routing 又有 3 種方式分別為 Unconditional flooding、
Conditional flooding、Quota-based replication,第一個是複製轉送封包時是沒 條件限制的,第二個是複製轉送封包時是有條件限制的,而第三個比較不同,是封包 S 為封包來源節點,E 為目的節點,S 要將封包傳遞到 E,Source decision 決策就是在 S 來源端決定路線,共有 4 條路線,分別為:
圖 6: Source decision
Per-hop routing
此路由策略是當封包產生後,來源端決定要傳送的下一個節點,再由中 繼點重新取得當時資訊,來作為決定要傳送給那一個節點。每傳送一次,就 要重新取得當時資訊來計算,以決定要傳送給哪個節點,如果途中遇到其他 節點,不會影響已決定好的路線。此方法較 Source decision 效果來的好,
因每傳一次就會以最新資訊做重新計算,決定要傳遞的節點。如圖 7 所示 S 為封包來源節點,E 為目的節點,S 選擇 A 節點傳遞封包,圖 8 所示 A 接收 到封包後發現有新的節點 F 產生,而選擇路線較好的 F 當中繼節點,將封包 傳遞給 F 節點,圖 9 所示最後 F 節點再將封包傳遞給 E 目的節點。
圖 7: Per-hop routing (S 選擇 A 為中繼節點)
圖 8: Per-hop routing (A 選擇 F 為中繼節點)
圖 9: Per-hop routing (F 將封包傳給目的節點 E)
Per-contact routing [17]
Per-contact routing 與第二種的 Per-hop routing 都屬於跳躍一次重 新計算,不同處是在它決策的時間不同,決策時間延後到當傳送節點與其他 節點相遇時,取得最新的資訊後才確定封包要傳送給哪個節點,與 Per-hop routing 不同的地方是,Per-hop routing 是在取得封包時就開始計算要傳 送給哪個節點,而 Per-contact routing 是在遇到其他節點時,才開始計算 要傳送給哪個節點。
再依據路由的傳送類型又可分為 2 種如下:
Forwarding-based routing
以轉送的方式作為封包的傳遞。舉例來說:當封包在來源車產生後,此
Replication-based routing
來源端產生封包時,會複製一份相同的封包,並當遇到其他節點時轉送,
其中 Replication-based routing 可再細分為 3 種如下:
Unconditional flooding
無條件複製的擴散,以 epidemic routing 來說就是使用此方法,舉例
來說當車輛 A 遇到車輛 B 時,會互相交換封包列表,再根據封包列表互相跟 對方要求自己沒有的封包。Unconditional flooding 因為沒有條件限制複製 封包,只要對方沒有的封包就複製傳送,在環境中封包複製的數量增加的很 快,不適合應用在緩衝區空間較小以及車輛較密集的環境中。
Conditional flooding
有條件複製的擴散是現在路由協定中常使用的方法,以 PROPHET 來說就 是使用此方法,PROPHET 在車載延遲容忍網路中,會計算出每台車輛遇到目 的車的機率為 p,當車輛遇到目的車時 p 就上升,如有一段時間沒有遇到目 的車時 p 就下降,當車輛 A 遇到車輛 B 時,車輛 A 的 p 值小於車輛 B 就複製 傳送,反之車輛 A 的 p 值大於車輛 B 就不傳送。在有條件的複製傳送下,使 封包在複製傳送時可以選擇有效率的車輛,才不會造成環境中封包複製的數 量快速且沒有效率,以及緩衝區空間的阻塞,造成後面的封包被丟棄,此方 法也是目前路由協定所常見使用的。
Quota-based replication
配額為基礎的擴散方式,當封包產生時就決定這個同一份封包在來源端 要複製的數量,在依照所使用的路由將封包擴散在環境中。此方法在分配數 量時,能夠將數量分配合宜的話,緩衝區的空間就能夠不會因封包數量太多 而阻塞,整體效能也能提升。
圖 10: 路由機制類別
2.2-2 路由協定
First Contact Routing [12]
First Contact 簡稱 FC,FC 路由協定是利用封包紀錄自己被轉送過的節 點來決定是否轉送,封包從來源端開始紀錄自己待過的節點,節點與其他節 點相遇會先判斷封包是否已經被此節點轉送過,如果是的話就不會轉送封包,
如果沒有的話就會將封包轉送此節點,也就是說封包第一次遇到的節點才會 轉送,此方法的優點就是可以避免封包重複轉送給相同節點,但是只有單一
的轉送以及沒有特別限制轉送對象所以效能不佳。
Spray and Wait 是網路中封包數量使用配額方式的路由協定,屬於 Quota-based 的一種。一開始會在網路中設定複製封包數量,在網路中此封
此方法與 Spray and Wait 類似,同屬於 Quota-based 的種類,一開始 也是在網路中設定複製封包數量,此路由的封包在網路中數量就是固定不變,
當節點遇到其他節點時會將一開始所設定好的複製封包數量的一半給對方,
接著每次遇到其他節點時也是將封包數量的一半給對方,到這為止都與 Spray and Wait 相同,不同之處是,自己身上剩下一個封包時 pray and Wait
是停止轉送封包給對方,而 Spray and Focus 還是會將自己身上剩下一個的
MaxProp 路由是以 Epidemic 為基礎的路由協定,主要不同是針對 Epidemic 氾濫式散佈封包造成緩衝區有限情況下不足,MaxProp 會動態制定 Threshold 也就是門檻值,首先緩衝區會依照封包跳躍次數(hop count)進行 排序,接著根據封包跳躍次數大小分類成可傳送或可取代兩種,可傳送是封
略使用 Epidemic 氾濫式散佈方式,而決定複製轉送或者轉送傳輸的條件是
Vector Routing 簡稱 VR,預測節點未來走向並且與相遇節點交換資訊,
互相得知對方節點未來走向,根據未來走向判斷此節點是否適合複製封包給 此節點,Vector Routing 是利用過去一段時間的資訊,預測節點未來的走向,
當來源車遇到其他車輛彼此互相交換資訊,得知其他車輛的未來走向,再計
History-based Vector Routing [25]
History-based Vector Routing 簡稱 HVR,HVR 是利用歷史資訊得知未 來行徑方向以及位置,再以目的車的未來最遠的行徑距離為半徑畫一個圓,
代表目的車未來的位置不會超出這個圓的範圍,然後分別以車輛未來位置的 傳輸範圍與目的車的圓所佔的面積去比較,面積越大代表遇到目的車的機率
越大,如果對方遇到目的車的機率比自己還大的話,就複製一份封包給對方,
這是改良 VR 的一種方法。
Similarity Degree-based Mobility Pattern Aware Routing [26]
Similarity Degree-based Mobility Pattern Aware Routing 簡 稱 SD-MPAR,SD-MPAR 是利用相遇車輛的行徑方向與相遇車輛位置跟目的車輛位