摘要:網絡拓撲發現是網絡工程的一個重要的研究子分支,是實現網絡管理的基礎性環節。同時,網絡拓撲發現是對宏觀網絡進行科學布局的基礎,也是進行網絡建設、網絡信息、網絡協議設計與評價以及相關網絡算法改進的重要依據。在介紹網絡拓撲發現的概念的基礎上,重點分析了基于Traceroute的網絡拓撲發現原理,探討了其發現效率優化措施。
關鍵詞:拓撲發現 Traceroute 優化措施
中圖分類號:TP393.08 文獻標志碼:A文章編號:1673-291X(2011)26-0287-02
一、網絡拓撲發現
網絡拓撲是指網絡元素及其之間的連接關系。這里所講的網絡元素,既可以是路由器,也可以是交換機、網橋等,還可以是客戶端、服務器,甚至是子網、AS等。這里所講的網絡,既可是抑制局域網,也可以是互聯網,也可以是互聯網的一部分。而網絡拓撲發現,就是發現并確定網絡元素及其之間的連接關系。
按照發現方法對網絡拓撲發現進行分類,可分為主動式網絡拓撲發現和被動式網絡拓撲發現。所謂主動式網絡拓撲發現,是指將一組精心設計的數據注入被探測的網絡,通過對網絡反饋信息進行分析,得到網絡的拓撲連接情況。例如,各種基于Traceroute的網絡拓撲發現方法,就是典型的主動式網絡拓撲發現。基于SNMP的網絡拓撲發現,從原理上也應歸類為主動式網絡拓撲發現方法。由于主動式網絡拓撲發現可以根據探測需要,由探測發起者對探測數據進行專門設計,因此適用情形較廣,可以探測網絡范圍可以很大,并且可通過提高注入數據包的科學性和合理性,不斷提高網絡拓撲探測的準確度。主動式網絡拓撲探測的缺點主要是探測數據包將增大網絡的負荷。在大規模多點探測中,診治有可能導致網絡性能的嚴重降低。在極端的情況下,由于注入數據報嚴重改變了網絡負荷,甚至探測到的網絡拓撲與實際情況不相符。
而被動式網絡拓撲發現,則是指對網絡元素間的數據進行偵聽,通過對偵聽得到的數據進行分析,進而得出網絡的拓撲連接情況。例如,通過偵聽路由器間的OSPF交換數據包來探測網絡拓撲的方法,就是一種被動式的網絡拓撲發現方法。被動式的網絡拓撲發現方法不向網絡注入數據包,因此對網絡負荷的影響較小。但由于被偵聽的只是局部網絡,因此往往通過分析也只能得到局部網絡的拓撲情況。另外,偵聽得到的數據可能存在很多不真實的數據,如不能對數據進行有效的分析處理,則有可能得到不真實的網絡拓撲圖。
二、 Traceroute的網絡拓撲發展
基本的Traceroute程序和經過改進的Traceroute方法有多種,但其基本的原理都是一樣的。如圖1是一個簡單的網絡,節點A為探測遠點,目標節點D,F是已知的(或僅僅是地址已知的),而中間各節點及其連接關系都是未知的。為了得到網絡拓撲,從探測遠點A分別向目標節點D,E發送經過設計的探測數據報,并同時記錄數據在傳送過程中各種間節點B,C,E的回饋信息。通過分析這些回饋信息,就可以得到網絡的拓撲結構。雖然基本原理都相同,但不同的基于Traceroute的拓撲發現方法,其具體實現辦法也有所不同。
基于Traceroute的網絡拓撲發現的主要優點:一是可以不受網絡管轄范圍的限制。很多的Traceroute方法不依賴于路由器的某一特定功能,而是靠采集網絡中可以正常傳輸的信息來分析拓撲結構,因此可以對跨域的網絡拓撲結構進行探測分析。二是主動性強,因此,探測發起人完全可以根據自身的需要和被探測網絡的實際情況,合理選擇適當的基于Traceroute的拓撲發現方法,甚至重新設計一種新的方法,使探測者具有很大的主動性。
基于Traceroute的網絡拓撲發現也有其固有的缺點,這主要有:第一,因為基于Traceroute的網絡拓撲發現從其本質上屬于一種主動式的網絡測量方法,并且方法的基本原理限制了此方法,要向網絡注入大量的數據報。這一方面會造成網絡負荷的增加,可能對網絡的正常通信產生影響;另一方面,甚至由于網絡負荷的改變產生一種“由于進行測量而產生的測量誤差”,造成拓撲發現結果的失真。第二,從目前的研究現狀來看,基于Traceroute的網絡拓撲發現方法對網絡層拓撲發現有比較好的效果,但對鏈路層發現沒有很好的辦法。這主要是因為鏈路層設備對于路由器來講是透明的,因此靠路由追蹤發現鏈路層設備及其連接關系的難度很高。第三,基于Traceroute的網絡拓撲發現的效率一般比較低。進行一次拓撲發現操作,一般情況下只能發現很少數量的網絡設備,有時甚至只能發現一個網絡設備或連接。因此,此方法一般需要很高的設備資源占用和時間開銷。雖然存在明顯的缺點,但由于基于Traceroute的網絡拓撲發現方法不依賴于路由器的特定功能這一顯著優點,使得該方法在跨域的網絡拓撲探測中還是得到了廣泛的應用。特別是隨著網絡安全環境變得越來越惡劣,迫使大部分的路由器都關閉了SNMP,基于Traceroute的網絡拓撲發現方法受到越來越廣泛的重視,已經成為面向大規?;ヂ摼W絡探測的主要方法。
三、拓撲發現優化策略分析
(一)改進探測報文發送策略
在基于Traceroute的網絡拓撲發現中,可以采取各種不同的策略發送探測報文,不同發送策略的發送效率也有很大不同。
1.“packet to packet”:探測源發送一個探測報文,直到收到一個反饋報文或者等待時間超時,再發送下一個探測報文。這是一種傳統的探測報文發送策略,因此探測效率很低。特別是當某一跳沒有反饋時,由于必須等待超時,更加降低了探測效率。對于packet by packet發送策略的改進,重點在于合理設置超時等待時間。
2.“hop by hop”:設對每一跳的探測次數為k,探測源按照事先預設地一個延時值(通常k為50ms),依次向某一跳發送完畢全部的k個探測報文后,等待收到反饋或超時后,再轉向對下一跳的探測?!癶op by hop”策略在效率上要優于“packet to packet”策略。
3.“Concurrent”:探測源向依次向所有的探測跳數發送完畢全部的探測報文,相鄰探測報文之間的時間間隔是一個預設值(通常也為50ms)。由于不等待反饋,因此“Concurrent”策略的效率比上述兩種策略都高。然而,為了實現“Concurrent”策略,探測源必須預知到目標節點的TTL值。一種可能的方法是,喜愛那個目標節點發送Fing探測報文,然后通過解析反饋報文獲取到目標節點的TTL值。另一種可能的方法是,以一個很大的TTL值向目標發送Traceroute探測報文,根據目標節點的ICMP反饋報文,估算到目標節點的TTL。
(二)主機可達性篩選和探測停止規則的合理設置
當探測報文發送策略選定以后,影響探測效率的主要因素便是路由器反饋ICMP報文的時間或者是等待超時的時間。在traceroute.org上所公布的探測源中,通過選定20個探測源向50個隨機的目的節點進行探測試驗發現在開始幾跳時RTT值很小,隨著跳數的增加,RTT值逐漸增大。探測的RTT值一般都在數毫秒到400毫秒之間,實驗發現的最大RTT值為504毫秒。而傳統Traceroute的超時等待時間默認為3毫秒??梢姵瑫r等待時間要大大高于正常的報文反饋往返時間。由于傳統的Traceroute在目標主機不可達時,會議是否達到設定的最大TTL值(默認為30)作為探測停止的條件,因此會浪費大量時間在等待超時上。顯而易見,在探測進行之前,先對目標節點進行可達性探測是有意義的。
收稿日期:2011-07-18
作者簡介:叢靖坤(1989-),男,黑龍江綏化人,學生,從事軟件工程研究。
參考文獻:
[1] 楊國正.計算機網絡拓撲發展技術研究[J].家損及工程與設計,2006,(5).
[2] 張巍,沈富可.網絡拓撲判斷的研究[J].電腦知識與技術,2007,(7).
[3] 樂潔. Traceroute及其在網絡拓撲發現中的應用[J].微計算機信息,2005,(8).
The network topology discovery of Traceroute and its efficiency optimizing measure
CONG Jing-qun
(Computer science and technology school,Suihua college,Suihua 152061,China)
Abstract: It is an important research sub- branch of the network engineering that the network 拓 rush toward to discover, is a foundation link that carries out the network management.At the same time, it is the foundation to the macroscopic network carries on science layout that the network topology toward to discover, is also an importance that carries on the network construction, network information, the network agreement design and evaluations and the related network calculate way improvements according to. In introducing the foundation of the concept that the network 拓 rushes toward to discover, the point analyzes to rush toward to discover the principle according to the Traceroute network topology, inquirying into it discovers that the efficiency is excellent to turn the measure.
Key words: topology discovery ; Traceroute; optimizing measure
[責任編輯王 莉]