文章目錄
- 1、LAR: Location-Aided Routing位置輔助路由
- 2、GPSR: Greedy Perimeter Stateless Routing貪進法周邊無狀態路由
- 3、GeoCast: Geographic Addressing and Routing基於地理資訊的定址和路由
三種地理資訊輔助路由協議分析傳統的路由協議與節點的地理位置無關。隨著全球衛星定位系統GPS的完善和定位精度的提高,我們可以利用路由節點的地理位置資訊輔助路由,這尤其適合於Mobile Ad hoc Network(MANET),因為MANET沒有固定的架構,利用節點地理資訊的自描述性(self-describing nature)可以提高節點的自組織能力,提高路由效率。此外,我們還可以利用GPS提供的路由資訊實現與地理位置相關的網路服務。一、 三種地理資訊輔助路由協議介紹1、LAR: Location-Aided Routing位置輔助路由在沒有利用地理資訊的Ad hoc路由協議中,如DSR和AODV路由協議,路由定址利用類似於flooding的演算法。Flooding演算法中,源節點將路由請求資訊發給它的所有鄰節點。中繼節點收到路由請求資訊,先判斷自己是否是目的節點,如果不是目的節點,且是第一次收到這個資訊包,則將資訊轉寄給它所有的鄰節點(除發這個資訊包給它的鄰節點外);如果是目的節點,則將路由資訊原路返回給源節點。Flooding演算法每次路由定址,網路中每個可達節點都會至少收到一次路由請求資訊包,overhead較大,增大了網路擁塞的可能性。LAR利用節點的地理資訊,減少網路中參與路由的節點數。這是通過計算出目的節點所在的地理地區Expected zone,並假定從源節點到目的節點的路徑上的所有節點都在地理地區Request zone內實現的。計算出Request zone後,路由定址就限定在這個地區內,只有在Request zone內的節點才有參與路由的權力。如果在Request zone內定址不成功,則退化到flooding演算法。文獻[1]中,Expected zone是以目的節點在t0的位置L為圓心,以v(t1-t0)為半徑的圓。其中t0是對源結點而言,上一個目的節點的位置確定的時刻;t1是當前時刻;v是目的節點移動的平均速度或最大速度。1所示。文獻[1]中求Request zone有兩種方法,Schema 1和Schema 2。Schema 1中Request zone是由源節點S和Expected zone確定的矩形,即包含源節點S和Expected zone,且邊平行於經線或緯線的最小矩形。由S和Expected zone的相對位置不同,有兩種不同的情況,分別由圖2(a)和(b)所示。Schema 2中,源結點S到目的節點的距離為DISTs,如果節點I到目的結點的距離DISTi滿足:
α(DISTs)+
β≥DISTi(
α和
β為待定參數),則節點I包含在Expected zone內,參與路由定址。 圖 1 Expected zone樣本圖 2 LAR schema 1樣本文獻[1]做了一系列實驗來比較Flooding,LAR schema 1和LAR schema 2的Routing overhead,主要是比較不同情況下,三種方法的Number of Routing packets per Data packets,即平均每個資料包所需的路由包數。資料包(Data packets)是指目的節點收到的資料包,而不是源節點所發出的資料包。路由包(Routing packets)是指所有節點收到的路由相關包,包括路由請求(route request),路由回答(route reply)和路由錯誤(route error)等。實驗結果表明,與沒有使用地理位置資訊的的演算法相比,LAR極大地降低了routing overhead,其中LAR schema 2的表現略優於LAR schema 1的表現。文獻[1]還提出了一系列改進LAR的方法。這些改進的方法包括對Request zone的不同定義,在路由過程中動態修改Request zone,與TTL(time-to-live)方法結合,定向發射訊號以避免Request zone之外的節點接收到資訊包,等等。2、GPSR: Greedy Perimeter Stateless Routing貪進法周邊無狀態路由移動無線網路的拓撲結構變化很快,如果每個節點都要維護全域的節點資訊,網路的可擴充性就會受到限制。拓撲結構變化頻率的增大和可達節點數目的增多都會使路由演算法的複雜性急劇增加。在非移動網路中,常用層次路由結構來增加網路的可擴充性。然而移動無線網路的拓撲結構變化快,不適用這種方法。在其他的Ad hoc路由協議中,如DSR,AODV,ZRP,用Caching的策略來增強路由的可擴充性。路由協議按需即時獲得拓撲資訊,並充分利用Cache暫存路由資訊,如果某次定址所需的路由資訊恰在Cache中,就可減少路由定址的跳數。GPSR協議充分利用地理資訊以實現無狀態路由,即每個節點的狀態和定址演算法複雜度與總的可達節點數和拓撲結構的變動率無關,從而增強網路的可擴充性。這是通過兩個方法做到的:一、每個節點只維護其發射範圍內的節點拓撲資訊;二、每個節點使用貪進法(Greedy Forwarding)和對平面圖周邊遍曆(Planer Perimeter)的方法將路由資訊包向前傳遞。源節點發出路由資訊包時,指定了目的節點的地理位置座標。每個接收到資訊包的節點將資訊包轉寄給其發射範圍內與目的節點地理位置上最接近的節點。這就是貪進法傳遞,3所示。圖 3 Greedy forwarding example,y is x’s closet neighbor to D.但對於一個局部情況下最接近目的地址的節點,即它的所有鄰節點離目的節點的距離都比它自身遠,這時不能使用貪進法向前傳遞。4所示。這時必須繞過圖中的Void陰影地區。可以利用右手法則(right-hand rule)進行周邊遍曆。右手法則5所示,從y到x後,逆時針方向的下一條邊是x到z,依次遍曆周邊。但右手法則對於非平面圖則無法遍曆,6所示。文獻[2]中使用了兩種產生平面圖的演算法,一種是相對鄰域圖(RNG,Relative Neighborhood Graph),即若有節點w到u,v的距離同時小於u、v之間的距離,則從路由中將邊(u,v)刪除。另一種是Gabriel圖(GG,Gabriel Graph),若以u,v為直徑的圓記憶體在節點w,則將邊(u,v)從路由中刪除。這兩種方法分別7和圖8所示。 圖 4 Greedy forwarding failure.x is a local maximum in its geographic proximity to D;w and y are farther from D. 圖 5 The right-hand rule(interior of the triangle).x receives a packet from y,and forward it to its first neighbor,counterclockwise about itself,z.文獻[2]做了一系列實驗來驗證GPSR的包投遞成功率,傳遞的包數,對增加跳數的影響等等,主要與DSR協議對比。結果表明,GPSR協議的投遞成功率略高於DSR協議的投遞成功率(兩者都在97%以上)。GPSR協議路由定址造成的網路擁塞比起DSR協議明顯降低。GPSR協議的路由實際跳數等於最佳跳數的比率也比DSR協議高。DSR協議的網路擁塞和路由實際跳數隨節點數目的增加變化較大。而GPSR協議的網路擁塞狀況和路由實際跳數受節點數目變化的影響較小。這說明GPSR協議成功實現了設計的初衷:利用地理資訊使每個節點維護的狀態量較小,路由協議資訊傳遞的複雜度小,以及實現在高密度無線網路中路由包傳遞的魯棒性。圖 6 A network with crossing edges. Starting from
x to
u, the right-hand rule givesthe tour:( x-u-z-w-u-x).
_圖 7
The RNG graph.For edge (u,v) to be included,the shaded lune must contain no witness w.圖 8 The GG graph.For edge (u,v) to be included,the shaded circle must contain no witness w. 3、GeoCast: Geographic Addressing and Routing基於地理資訊的定址和路由目前所通用的IP協議與目標的地理位置沒有必然的關係。為了實現與地理位置相關的網路服務,文獻[3]所做的工作力圖將地理座標與IP協議結合起來。地理位置相關的服務包括:向某個指定的地理地區發送資訊;給距伺服器某個範圍內的客戶提供某種服務;尋找有誰出現在某個指定的地理地區內,等等。GeoCast路由系統由三個組成部分:GeoRouter,GeoNode,GeoHost。GeoRouter負責傳遞地理相關訊息;GeoNode是地理路由系統的入口和出口,它的主要功能是接收、儲存和廣播資訊;GeoHost負責發送和接收地理相關訊息,它的功能是將訊息發送給當地的GeoNode,或者從當地的GeoNode接收訊息。GeoCast路由系統工作的過程如下:首先,GeoHost獲得當地GeoNode的IP地址,並將帶有目的地位置資訊的訊息交給GeoNode,GeoNode直接將訊息遞交給當地的GeoRouter。GeoRouter的架構具有層次性,父路由的服務地區是它的所有子路由服務地區的並集。當一個GeoRouter收到一個訊息,將這個訊息的目的地地區與它的服務地區比較:如果目的地區在它的服務地區內,則將訊息遞交給相應的子路由;如果目的地區與服務地區不相交,則將訊息遞交給它的父路由;如果目的地區與服務地區相交,則將訊息遞交給相應子路由的同時,再遞交一份拷貝給它的父路由。最底層的子路由將訊息發給控制目的地區的GeoNodes,GeoNode將訊息廣播它所控制的地區的所有使用者。GeoHost從GeoNode接收到訊息,判斷自己所服務的主機是否在目的地區內,如果是,則通知客戶進程接收訊息。路由定址過程9所示。
圖 9 Geographic Routing Example文獻[3]做了一系列實驗來驗證GeoCast路由協議的效率,比較了不同形狀的目的地址對路由時間的影響。如表格1所示。其中,每個Circle目的地址是半徑為0.5度的圓;Polygon目的地址是頂點距中心為0.5度的等邊三角形。一共發送了100條資訊。利用路由Cache,計算路由地理地區相交時使用包圍多邊形的bounding rectangle等辦法可以提高路由效率。而且,實驗中的地理路由協議是工作在應用程式層的,如果將地理路由功能推向底層,使用韌體進行路由的辦法,將會大大提高地理路由的效率。 表格 1 Comparison of the time to geographically route the three basic polygon shapes.二、 三種地理資訊輔助路由協議的比較就設計目標而言,GeoCast協議與LAR,GPSR協議相差較大。GeoCast協議的設計是為了提供網路通訊協定與地理位置的結合,地理位置在協議中所起的作用類似於IP地址。這可以方便於提供一些與地理位置相關的網路服務。而LAR和GPSR協議使用地理位置資訊的目的主要是為了輔助路由定址。而它們的側重點又有所不同,LAR的設計目的主要是為了限制參與定址的節點數目,從而降低網路負載;GPSR的設計目的主要是為了實現無狀態路由,從而增強網路的擴充性。地理位置在GeoCast協議中所起的作用類似於IP地址在TCP/IP協議中所起的作用。而LAR和GPSR中地理位置資訊則主要作為輔助路由定址的手段,即用於路由定址過程的啟發學習法方法。GPSR對地理位置資訊的利用則比LAR更充分。LAR只是利用目的節點的地理位置將參與路由的節點限定在一定範圍內,在這個範圍內不一定存在從源節點到目的節點的路徑。而GPSR則充分利用每個節點及其鄰節點的地理座標,用貪進法和周邊遍曆法尋找到目的節點的路由。GPSR和LAR協議主要適用於無線移動Ad hoc網,它們的路由不需要結構和層次,每個節點都是平等的,只維護其鄰近節點的資訊。而GeoCast協議適用於有結構和層次的網路,且路由節點的位置比較固定,但網路的服務物件則可是移動的。LAR和GPSR協議都在相應的非地理輔助路由演算法的基礎上提高了效率。LAR協議主要是與Flooding演算法做比較,在平均情況下明顯地降低了網路的負載,但對於特定情況不一定降低,因為選擇的Request zone內也有不存在路由路徑的情況;GPSR協議主要是與DSR協議比較,DSR協議採用的路由演算法類似於Flooding演算法,GPSR協議降低了網路負載,提高了投遞成功率,縮短了路由跳數。採用GPSR協議,只要目的結點可達,一定可以用貪進法或周邊遍曆法找到相應的路徑,且很少需要非路徑上的節點參與路由。GeoCast協議實現了利用地理資訊實現地理位置相關的網路服務的目的,但效率比傳統的網路通訊協定有所降低。對這三種協議的比較如表格2所示。表格 2 三種協議的比較三、 對三維地理資訊的考慮文獻[1][2][3]所做的工作都假定網路在一個平面上。在實際中,可能需要考慮三維的地理位置資訊,比如軍隊在山嶺等海拔起伏較大的地區用Ad hoc相互聯絡,一組人到另一座樓去,不想再架設網路,直接在不同樓層間使用Ad hoc網路,向某個海拔範圍內的使用者提供地理位置相關服務等。將這三種協議擴充到三維情況並沒有什麼技術上難度。GPS可以提供海拔高度資訊,只需將二維平面的地理位置座標擴充為三維地理座標,利用立體位置提供路由定址資訊就行了。比如LAR協議擴充到三維情況,Expected zone變為一個球形,而Request zone則擴充為一個立方體。但對於GPSR來說,擴充到三維情況後,原來的周邊遍曆演算法和求平面圖的演算法不再適用,需要做相應的修改,這個可以作為將來對協議進行進一步擴充的工作。四、 對GPS誤差的考慮雖然GPS的精度不斷提高,目前最精確的GPS定位可以準確到10米之內,但在現實環境中由於各種複雜的因素,定位精度可能會受到影響。三篇論文中只有文獻[1]的LAR協議考慮了GPS誤差的情況。對於LAR協議來說,考慮了GPS定位誤差擴充起來比較容易,對於Schema 1隻須將Expected zone的半徑加上誤差值即可;對於Schema 2隻須修改參數α和β即可。GPS誤差對於GeoCast協議來說影響很小。因為GeoRouter、GeoNode和GeoHost服務的地理地區不是動態確定的,可以事先測得非常精確。GPS誤差對GPSR協議的影響其實也不大,因為如果考慮了誤差,節點的可能範圍就在以誤差為半徑的圓內,但我們仍以節點的平均位置—圓心來計算距離,所以協議不需要作修改。但協議的效率肯定會受到影響,因為誤差越小,啟發學習法方法的準確度就越高。五、 參考文獻[1] Young-Bae Ko,Nitin H. Vaidya,
Location-Aided Routing (LAR) in mobile ad hoc networks,
Wireless Networks Volume 6 ,Issue 4 (July 2000).[2] Brad Karp, H.T.Kung,
GPSR: Greedy Perimeter Stateless Routing for Wireless Network. In:Proc. of the 6th Annual ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom 2000) (2000).[3] Navas, J. C., Imielinski, T.
GeoCast: Geographic Addressing and Routing in Proc. of the Third ACM/IEEE International Conference on Mobile Computing and Networking(MobiCom'97), Budapest, Hungary, Sep. 26-30 1997. [4] David B. Johnson,David A. Maltz, Yih-Chun Hu,
The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks (DSR) IETF MANET Working Group,INTERNET-DRAFT,(19 July 2004).[5] Maria del Mar Alvarez-Rohena, Chris Eberz,
Implementation and Analysis of GPSR: Greedy Perimeter Stateless Routing for Wireless Networks, University of California,Santa Barbara Computer Science Department CS 230B Fall 2004
.[6] Brad Nelson Karp,
Geographic Routing forWireless Networks, Ph.D. Dissertation, Harvard University, Cambridge, MA, October, 2000.