Dynamic Source Routing

Dynamic Source Routing

Dynamic Source Routing,簡稱DSR,DSR 協定是一種基於源路由方式的按需路由協定

基本介紹

介紹,實現,優缺點,攻擊,

介紹

在 DSR 協定中,當傳送者傳送報文時,在數據報文頭部攜帶到達目的節點的路由信息,該路由信息由網路中的若干節點地址組成,源節點的數據報文就通過這些節點的中繼轉發到達目的節點。
與基於表驅動方式的路由協定不同的是, 在 DSR 協定中,節點不需要實時維護網路的拓撲信息,因此在節點需要傳送數據時 ,如何能夠知道到達目的節點的路由是 DSR 路由協定需要解決的核心問題。

實現

DSR 路由協定:主要由路由發現和路由維護兩部分組成。
– 路由發現過程主要用於幫助源節點獲得到達目的節點的路由。
– DSR協定通過路由維護過程來監測當前路由的可用情況,當監測到路由故障時,將調用新的一輪路由發現過程。如路由中的節點由於移動、關機等原因無法保證到達目的節點時,當前的路由就不再有效了。
– 同時為了提高系統性能,在 DSR 協定中,還引入了一 系列的最佳化技術,如路由緩衝( Route Cache )等。 下面分別介紹這三部分內容。
1 .路由發現
=節點通過路由發現過程獲得到達其他節點的路由。
節點首先向其鄰節點廣播“路由請 求”( Route Request )報文報文中包括“目的節點地址”、“路由記錄”以及“請求ID” 等欄位。
– 其中“路由記錄”欄位用於記錄從源節點到目的節點路由中的中間節點地址,當路由請求報文到達目的節點時,該欄位中的所有節點地址即構成了從源節點到目的節點的路由。
– “請求ID” 欄位由源節點管理分配
– 中間節點維護 < 源節點地址,請求 ID> 序列對列表, < 源節點地址,請求 ID> 序列用於惟一標識一個路由請求報文,防止收到重複的路由請求。
中間節點在收到源節點的路由請求報文後 ,按照以下步驟處理報文:
– ( 1 )如果路由請求報文的 < 源節點地址,請求 ID> 存在於本節點的序列對列表中,表明此 請求報文已經收到過,節點不用處理該請求; 否則轉步驟( 2 );
– ( 2 )如果節點的地址已在路由記錄欄位中存在,節點不用處理該請求;否則轉步驟 3 ;
– ( 3 )如果請求報文的目的節點就是本節點, 則路由記錄節點中的節點地址序列構成了從源節點到目的節點的路由。節點向源節點傳送 “路由回響”報文,同時將該路由拷貝到“路由回響”報文中;否則轉步驟( 4 );
– 4 )該節點是中間節點。將節點地址附在報文 的“路由記錄”欄位後,同時向鄰節廣播該路
通過這種方法,路由請求報文將最終到達 目的節點
如下圖所示為節點 A 到節點 D 的路由請求 過程。虛線箭頭代表路由請求訊息傳送, 括弧中的內容代表訊息中的路由記錄。由請求。
幾個注意的問題:
(1)由於節點B已經收到節點A的路由請求,因此不再處理節點F的路由請求訊息;
(2)節點D可能會同時收到節點C和E 的路由請求訊息,造成訊息碰撞,反而收不到正確的路由請求,因此在 Ad Hoc 網路中,廣播並非完全可靠。可以採用一定的策略來避免,如節點隨機延時傳送,或者節點間採用證實機制等。
目的節點根據收到的源節點路由請求報文回送“路由回響”報文。目的節點在將“路由回響”報文轉發到源節點時,需要考慮這樣幾種情況:
( 1 )目的節點有到達源節點的路由。此時目的節點可以直接使用該路由回送回響報文;
( 2 )如果目的節點沒有到源節點的路由,此時需要考慮節點通信信道問題:
· 1 如果網路中所有節點間的通信信道是對稱的,此時目的節點到源節點的路由即為源節點到目的節點的反向路由;
· 2 如果信道是非對稱的,目的節點就需要發起到源節點的路由請求過程,同時將路由回響報文捎帶在新的路由請求中。
如下圖所示為 DSR 的路由回響過程。假設信道是雙向信道,節點 D 根據最短路由原 則選擇了路由( A-B-C-D )作為最終路由 ,將此信息通過反向路由傳送至源節點 A。
Dynamic Source Routing
2 .路由維護
傳統的路由協定中通過周期性廣播路由更新訊息將路由發現和路由維護過程合二為一。而在 DSR 協定中,由於沒有這種周期性的廣播,節點必須通過路由維護過程檢測路由的可用性。
按照路由維護的不同檢測方法,可以將路由維護分為以下兩種:
( 1 )點到點證實機制,又稱為逐跳證實機制。
– 即相鄰節點間通過數據鏈路層的訊息證實或者高層套用層之間的訊息證實機制,來檢測路由中各鄰節點的可達性。當發現節點間的傳輸故障,即路由不再有效時,向上級節點傳送“路由差錯”報文,收到路由差錯報文的節點根據此信息將該路由從本節點的路由緩衝區中刪除 。
( 2 )端到端證實機制。在有些套用中要 求端到端節點間的證實,通過端到端的證 實機制可以用來檢測整個路由的有效性。
3 .路由緩衝技術最佳化策略
在 DSR 協定中,為了提高系統效率,協定中採用了路由緩衝最佳化策略。
– 由於無線廣播信道的特點,節點可以處於“混合聽”狀態,即可以聽到相鄰節點發出的所有報文,包括路由請求、路由回響等。這些報文中攜帶了網路的一些路由信息,節點通過快取這些路由信息,可以儘量減少每次傳送新報文時啟動的路由發現過程,以提高系統的效率 。
如下圖所示,節點 A 通過發起目的節點為D的路由請求過程,獲得路由 A-B-C-D , 同時節點 A 也獲得了到達該路由中所有節點(如節點B、C)的路由,節點B等中間節點也獲得了到達節點D的路由。
Dynamic Source Routing
同時,中間節點在收到源節點的路由請求 時,如果本節點路由緩衝區中有到目的節點的路由,可以直接回復路由回響訊息。
– 如節點 F 在發起到節點 D 的路由請求時,當報 文到達節點 B 時,節點 B 中有緩衝路由 B-C- D ,此時節點 B 可以直接回復路由回響( F-B- C-D )。這樣一方面加快了路由請求的回響, 同時也減少了路由請求訊息的廣播。
儘管路由緩衝技術能夠在一定程度上提高系統的效率,但同時一些錯誤或過期的路由緩衝信息(如由於某些節點的移動使得 路由失效)也會對網路帶來負面影響,這 些錯誤的路由信息可能會影響和感染其他 節點。
對此,可以採用一定的策略來減少其影響 。
– 如為緩衝路由設定有效期,超過有效期的路由 將被認為無效,將其從緩衝區中刪除。

優缺點

DSR 協定的優缺點 DSR 協定具有
( 1 )僅在需要通信的節點間維護路由, 減少了路由維護的代價;
( 2 )路由緩衝技術可進一步減少路由發現的代價;
( 3 )由於採用了路由緩衝技術,因此在一次路由的發現過程中,會產生多種到達目的節點的路徑;
(4 )支持非對稱傳輸信道模式。
DSR 協定存在一些問題和不足:
( 1 )由於採用源節點路由,每個數據報文的頭部都要攜帶路由信息,增加了報文長度;
( 2 )用於路由發現的控制報文可能會波及全網各節點,造成一定的耗費;
( 3 )“路由回響風暴”( Route Reply Storm )問題。由於採用路由緩衝技術,中間節點根據自己的緩衝路由,對路由請求直接應答,源節點會同時收到多個路由響 應,造成路由回響信息之間的競爭;
( 4 )“錯誤”緩衝路由對其他節點的影響。如果中間節點的路由緩衝記錄已經過時,當該節點根據緩衝路由回復路由請求時,其他監聽到此“錯誤”路由的節點會更改自己的緩衝路由記錄,造成“錯誤”緩衝路由的污染傳播。

攻擊

Source routing提供的功能是記錄報文經過的路徑,並期望報文按照該路徑返回,雖然方便,卻它存在較高的風險。
例如:A在區域網路,B,C在外網,A信任B,C想訪問A上的數據,於是它修改了自己的源IP位址,告訴A自己是B,並加入源路由信息,記下了來時的路徑這樣A按數據來的路返回給了C,如果不適用IP source routing,而是用默認路由方法,A發出的包會自己去尋找B,這樣,C就不會從A得到想要的數據

相關詞條

熱門詞條

聯絡我們