陶國喜
(黃岡職業技術學院 黃岡 438002)
隨著無線技術的進一步發展,Ad Hoc網絡以其方便靈活的特點越來越受到人們的重視,關于該網絡上的路由協議及其性能的評價也成為了當前的一個研究熱點。Ad Hoc網絡是一種不需要任何提前給定的基礎設施就能進行組網的網絡形式。為了實現網絡節點之間的通訊,IETF的MANET小組給出了多種可以組成移動Ad Hoc網絡的路由協議,如DSR、AODV、DSDV和TORA等。當前已經有很多人針對這些協議做了大量的性能分析和研究。
一般認為,沒有基礎設施的網絡出現在20世紀70年代,在最初開發報文交換技術(后來發展成因特網)不久,美國國防部高級研究規劃署(DARPA)資助了一項特別的研究即分組無線網絡(Packet RadioNetwork),即讓報文交換技術在不受固定或有線的基礎設施限制的環境下運行。90年代中期,隨著一些技術的公開,Ad Hoc網絡開始成為移動通信領域一個公開的研究熱點。90年代以來,移動Ad Hoc網絡的研究在世界范圍內方興未艾,已經從無線通信領域中的一個小分支逐漸擴大到相對較獨立的領域。無論在國際上,還是在區域上(歐洲和亞洲等地區),周期性的Ad Hoc網絡學術會議日益增多。目前,路由協議的研究仍然是Ad Hoc網絡成果最集中的部分。研究Ad Hoc網絡的相關技術,以適應未來高技術民用和軍事發展的需要,這項研究不僅具有重要的社會和經濟意義,也具有十分重要的戰略意義。
動態源路由協議(DSR)中,每一個被傳輸的包都攜帶一個到達目的地所必經的節點的完整序列,即要求發送者知道到達目的節點的完整路徑,這個特性就是源路由。DSR協議就是采用了這種源路由的方法,將路徑信息直接記錄在每一個包中。此協議由兩個基礎過程組成:(1)路由發現過程(2)路由維護過程。其中路由發現和路由維護都是按需的(on-demand),按需的路由發現是只有當將發送一個包到某個節點但是在路由緩存中沒有找到到達該目的節點的路由時才發起一個路由發現。路由發現過程是從源端以廣播的方法來動態發現路徑。按需的路由維護過程主要的工作是根據路由信息來通知各個節點整個網絡拓撲的變化讓節點更新路由緩存。當節點使用某一條路徑的過程當中,就靠著路由維護機制對該路徑的正確性進行監控,當路由維護探測到正在使用的路徑出現問題時,路由發現過程就可能被啟動,以發現新的正確路徑。
1、 Windows網絡協議架構
Windows操作系統的總體架構分為兩個層次,上面的為應用層,下面的為核心層。其結構如表3-1所示:
這種分層結構可以實現代碼共享,還可以實現安全保護。因為像協議驅動程序之類的程序對程序的執行效率和代碼的嚴謹性、強壯性要求都非常高,一旦程序出問題就可能使系統癱瘓,因此將操作系統分為兩層,可以分別賦予她們不同的操作權限。
2、 Passthru對DSR分組操作
(1)Passthru接收DSR包
Passthru通過ProtocolReceivePacket函數,從低層NIC驅動程序以完整數據包形式接收內入數據,該數據包由NDIS_PACKET類型的包描述符指定,也能夠通過將內入數據指示給ProtocolReceive函數,并將數據復制到中間層驅動程序提供的數據包中。下邊界面向連接的中間層驅動程序總是調用ProtocolCoReceivePacket函數,從低層NIC驅動程序接收數據作為一個完整的數據包。所以本論文處理動態源路由(DSR)分組是放在ProtocolReceivePacket函數里,先對分組進行判斷,然后針對不同的分組根據動態源路由算法做不同的處理,最后把處理后的分組提交給上層程序,在程序里數據分組體現的是數據包描述符Packet,數據包描述符記載著數據分組所在內存的地址的地址,Packet指示著buffer的地址,而buffer指示著數據包所在內存的地址PacketContent,關鍵的程序代碼略。

表3-1 Windows操作系統總框架
(2)Passthru發送DSR包
在Passthru截獲網絡數據包函數里的必須建立一個包描述符(packet)指示要傳輸的數據,并且在協議層之間傳遞數據時,需要添加不同的協議頭。此外,在DSR協議中,IP層利用路由緩存來解析目標IP地址的路由。對每個可從路由表中找到路由的目標IP地址,路由表返回一個DSR_SOURCE_ROUTE_ENTRY數據結構來描述達到目的節點路由的入口,然后通過入口得到到達目的節點的源路由,如果在路由表中沒有找到到達目的節點的路由,則發起一個路由發現來偵探到達目的節點的路由。
由于動態源路由是單徑的,所以通過對Ad Hoc網絡的動態源路由進行擴展,即在Ad Hoc網絡中實現一種多路徑路由方法,得到一種多路徑協議稱為MSR(Multi-path Source Routing)。MSR是在DSR基礎上改進而成的,MSR對DSR的主要改進就在于使用多徑源路由和負載平衡,同時使用MSR只需對DSR的路由選擇機制進行相應的修改而可以直接使用DSR的路由發現和路由維護機制。
隨著無線Ad Hoc網絡的進一步發展,人們對于網絡協議的性能研究已經不在滿足于仿真手段,而是要求在實際的系統中去實現并通過實際測量來評價協議的性能好壞,因此,路由協議的研究將會越來越受到人們的重視。
[1]劉元安.《Ad Hoc網絡中的路由算法》[M].北京郵電大學報,2004年.
[2]朱雁輝.《Windows防火墻與網絡封包截獲技術》[M].電子工業出版社,2002年.