- 相關(guān)推薦
大規模IP網(wǎng)絡(luò )中基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現方法分析
摘要:網(wǎng)絡(luò )拓撲發(fā)現是網(wǎng)絡(luò )工程的一個(gè)重要的研究子分支,是實(shí)現網(wǎng)絡(luò )管理的基礎性環(huán)節。由于大規模IP網(wǎng)絡(luò )本身所具有的大規模性、動(dòng)態(tài)性、異構性等特點(diǎn),使得面向大規模IP網(wǎng)絡(luò )的拓撲發(fā)現成為一項非常具有挑戰性的課題。為了提高IP網(wǎng)絡(luò )拓撲發(fā)現的效率和真實(shí)性,人們發(fā)明了多種多樣的網(wǎng)絡(luò )拓撲發(fā)現方法。本文介紹網(wǎng)絡(luò )拓撲發(fā)現的分類(lèi),重點(diǎn)探討了基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現技術(shù)。
關(guān)鍵詞:大規模IP網(wǎng)絡(luò );拓撲發(fā)現;SNMP
一、網(wǎng)絡(luò )拓撲發(fā)現概述
(一)網(wǎng)絡(luò )拓撲發(fā)現的概念
網(wǎng)絡(luò )拓撲是指網(wǎng)絡(luò )元素及其之間的連接關(guān)系。這里所講的網(wǎng)絡(luò )元素,既可以是路由器,也可以是交換機、網(wǎng)橋等,還可以是客戶(hù)端、服務(wù)器,甚至是子網(wǎng)、AS等。這里所講的網(wǎng)絡(luò ),既可以指局域網(wǎng),也可以是互聯(lián)網(wǎng),也可以是互聯(lián)網(wǎng)的一部分。而網(wǎng)絡(luò )拓撲發(fā)現,就是指發(fā)現并確定網(wǎng)絡(luò )元素及其之間的連接關(guān)系。
(二)互聯(lián)網(wǎng)的拓撲結構抽象
網(wǎng)絡(luò )技術(shù)發(fā)展到今天,除非為某種特殊應用而專(zhuān)門(mén)設計的局部網(wǎng)絡(luò ),以太網(wǎng)( Ethemet)已經(jīng)成為事實(shí)上通用的網(wǎng)絡(luò )組網(wǎng)方式,TCP/IP協(xié)議簇已經(jīng)成為事實(shí)上的網(wǎng)絡(luò )通訊協(xié)議標準。從概念上說(shuō),互聯(lián)網(wǎng)可以看作是一個(gè)個(gè)小的局域網(wǎng)絡(luò )通過(guò)互聯(lián)(互連)而成的。但一方面,組成互聯(lián)網(wǎng)基礎的各個(gè)局域網(wǎng)絡(luò )的拓撲結構本身可能很不相同,另一方面,各個(gè)局域網(wǎng)絡(luò )的之間的互聯(lián)(互連)關(guān)系也千差萬(wàn)別。因此,互聯(lián)網(wǎng)的拓撲結構不可能用局域網(wǎng)三種基本的網(wǎng)絡(luò )拓撲結構進(jìn)行抽象。
二、網(wǎng)絡(luò )拓撲發(fā)現的分類(lèi)
(一)按照網(wǎng)絡(luò )拓撲發(fā)現的對象進(jìn)行分類(lèi)
按照對象的不同對網(wǎng)絡(luò )拓撲發(fā)現進(jìn)行分類(lèi),可分為面向域內的網(wǎng)絡(luò )拓撲發(fā)現和跨域的網(wǎng)絡(luò )拓撲發(fā)現。
面向域內的拓撲發(fā)現,是指面向同一AS或者同一ISP、甚至更小規模的局部網(wǎng)絡(luò )的拓撲發(fā)現技術(shù)?缬虻木W(wǎng)絡(luò )拓撲發(fā)現則是指面向不同AS(或ISP)網(wǎng)絡(luò )的拓撲發(fā)現技術(shù)。二者的不同主要在于,面向域內的拓撲發(fā)現網(wǎng)絡(luò )管理員一般具有對網(wǎng)絡(luò )元素的管理和控制權,而跨域的拓撲發(fā)現網(wǎng)絡(luò )管理員一般無(wú)法對域外的網(wǎng)絡(luò )元素進(jìn)行管理和控制。由于探測的對象不同,因此所適用的網(wǎng)絡(luò )發(fā)現方法以及網(wǎng)絡(luò )拓撲發(fā)現的目的等均有很大的不同。由于網(wǎng)絡(luò )管理員不能對網(wǎng)絡(luò )元素進(jìn)行管理和控制,因此在一般情況下,跨域的網(wǎng)絡(luò )拓撲發(fā)現比域內的網(wǎng)絡(luò )拓撲發(fā)現困難得多。
(二)按照網(wǎng)絡(luò )拓撲發(fā)現的方法進(jìn)行分類(lèi)
按照發(fā)現方法對網(wǎng)絡(luò )拓撲發(fā)現進(jìn)行分類(lèi),可分為主動(dòng)式網(wǎng)絡(luò )拓撲發(fā)現和被動(dòng)式網(wǎng)絡(luò )拓撲發(fā)現。
所謂主動(dòng)式的網(wǎng)絡(luò )拓撲發(fā)現,是指將一組精心設計的數據報注入被探測的網(wǎng)絡(luò ),通過(guò)對網(wǎng)絡(luò )反饋信息進(jìn)行分析,得到網(wǎng)絡(luò )的拓撲連接情況。例如,各種基于Traceroute的網(wǎng)絡(luò )拓撲發(fā)現方法,就是典型的主動(dòng)式網(wǎng)絡(luò )拓撲發(fā)現;赟NMP的網(wǎng)絡(luò )拓撲發(fā)現,從原理上也應該歸類(lèi)為主動(dòng)式的網(wǎng)絡(luò )拓撲發(fā)現方法。由于主動(dòng)式網(wǎng)絡(luò )拓撲發(fā)現可以根據探測需要,由探測發(fā)起者對探測數據報進(jìn)行專(zhuān)門(mén)設計,因此適用情形較廣,可以探測網(wǎng)絡(luò )范圍可以很大,并且可通過(guò)提高注入數據包的科學(xué)性和合理性,不斷提高網(wǎng)絡(luò )拓撲探測的準確度。主動(dòng)式網(wǎng)絡(luò )拓撲探測的缺點(diǎn)主要是探測數據報將增大網(wǎng)絡(luò )的負荷。在大規模多點(diǎn)探測中,甚至有可能導致網(wǎng)絡(luò )性能的嚴重降低。在極端的情況下,由于注入數據報嚴重改變了網(wǎng)絡(luò )負荷,甚至使探測到的網(wǎng)絡(luò )拓撲與實(shí)際情況不相符。
而被動(dòng)式的網(wǎng)絡(luò )拓撲發(fā)現,則是指對網(wǎng)絡(luò )元素間的數據進(jìn)行偵聽(tīng),通過(guò)對偵聽(tīng)得到的數據進(jìn)行分析,進(jìn)而得出網(wǎng)絡(luò )的拓撲連接情況。例如,通過(guò)偵聽(tīng)路由器間的OSPF交換數據包來(lái)探測網(wǎng)絡(luò )拓撲的方法,就是一種被動(dòng)式的拓撲發(fā)現方法。被動(dòng)式的網(wǎng)絡(luò )拓撲發(fā)現方法不向網(wǎng)絡(luò )注入數據包,因此對網(wǎng)絡(luò )負荷的影響較小。但由于被偵聽(tīng)的只是局部網(wǎng)絡(luò ),因此往往通過(guò)分析也只能得到局部網(wǎng)絡(luò )的拓撲情況。另外,偵聽(tīng)得到的數據可能存在很多不真實(shí)的數據,如不能對數據進(jìn)行有效的分析處理,有可能得到不真實(shí)的網(wǎng)絡(luò )拓撲圖。
(三)按照網(wǎng)絡(luò )拓撲發(fā)現的粒度分類(lèi)
根據粒度的不同,網(wǎng)絡(luò )網(wǎng)拓撲發(fā)現大致可以分為粗粒度、中間粒度、細粒度三個(gè)級別。
粗粒度是一般指AS級別的拓撲發(fā)現。在粗粒度的拓撲圖中,節點(diǎn)代表一個(gè)域,而邊則代表域間的連接。中間粒度是指集群(路由器集簇)間的拓撲發(fā)現。在中間粒度的拓撲圖中,節點(diǎn)代表單路由器或主機的特定集群,邊則代表路由器或集群主機之間的連接。細粒度是指路由器級的拓撲發(fā)現。在細粒度的拓撲圖中,節點(diǎn)代表路由器(子網(wǎng)或主機),邊代表路由器的連結。目前,面向Internet的拓撲發(fā)現的研究主要集中在A(yíng)S級和路由器級兩個(gè)方面。
三、基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現分析
(一)SNMP協(xié)議簡(jiǎn)介
SNMP C Simple Network Management Protocol)即簡(jiǎn)單網(wǎng)絡(luò )管理協(xié)議,目前有SNMPvI、SNMPv2兩個(gè)版本。SNMPvl于1990年開(kāi)始發(fā)布,其規范文為RFC1157等。SNMPv2于1993年開(kāi)始發(fā)布,RFC1441對SNMPv2進(jìn)行了系統地介紹。目前,最新版本SNMPv3的規范文本為RFC2571。SNMP采用“管理者一代理”的模式,實(shí)現對網(wǎng)絡(luò )設備的監視和控制。采用“輪詢(xún)”與“陷阱”兩種方式,實(shí)現管理進(jìn)程與代理進(jìn)程之間的信息交互,共定義了基本的5種報文:get-request操作:從代理進(jìn)程處提取一個(gè)或多個(gè)參數值;get-next-request操作;從代理進(jìn)程處提取一個(gè)或多個(gè)參數的下一個(gè)參數值;set-request操作:設置代理進(jìn)程的一個(gè)或多個(gè)參數值;get-response操作:返回的一個(gè)或多個(gè)參數值。這個(gè)操作是由代理進(jìn)程發(fā)出的。它是前面3種操作的響應操作;trap操作:代理進(jìn)程主動(dòng)發(fā)出的報文,通知管理進(jìn)程有某些事情發(fā)生。
SNMP是一個(gè)應用層協(xié)議,盡管可以在傳輸層采用各種各樣的協(xié)議,但是在SNMP中,用得最多的傳輸層協(xié)議還是UDP。另外,為了實(shí)現對網(wǎng)絡(luò )的管理,SNMP又對其它兩個(gè)必需的部分進(jìn)行了定義。一個(gè)是管理信息庫MIB(Management Information Base),管理信息庫包含所有代理進(jìn)程的所有可被查詢(xún)和修改的參數。RFC1213定義了第二版的MIB,叫做MIB-II。另外一部分是關(guān)于MIB的一套公用的結構和表示符號,叫做管理信息結構SIB( Structure of Management Information),由RFC1155定義。
(二)基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現的基本原理
所有的網(wǎng)絡(luò )設備維護一個(gè)MIB(管理信息庫),保存該設備上與網(wǎng)絡(luò )運行相關(guān)的全部信息,并對管理工作站的SMMP查詢(xún)進(jìn)行響應。管理工作站通過(guò)發(fā)送請求信息,查詢(xún)儲存于網(wǎng)絡(luò )路由設備中的管理信息庫MIB中的相關(guān)信息,從中解析出網(wǎng)絡(luò )拓撲相關(guān)的信息,就可以構畫(huà)出整個(gè)網(wǎng)絡(luò )的拓撲結構。從原理上看,基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現類(lèi)似于圖的廣度優(yōu)先搜索。
MIB中的路由表ipRouteTable定義了該設備的路由信息,其中與拓撲發(fā)現相關(guān)的表項有:ipRouteDest、ipRouteMask、ipRoutelf Index, ipRouteNextHop、ipRouteType等。ipRouteDest記錄以該設備為起點(diǎn)可以到達的目的地址范圍,ipRouteMask記錄的是目的網(wǎng)絡(luò )的子網(wǎng)掩碼,ipRouteIf Index記錄ipRouteDest所對應的接口索引號,ipRouteNextHop記錄本接口所對應的下一跳網(wǎng)關(guān)地址或者直連子網(wǎng)的網(wǎng)關(guān)地址,ipRoute升pe記錄ipRouteNextHop所表示的地址與該設備的連接關(guān)系。
(三)基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現的優(yōu)缺點(diǎn)及適用范圍
基于srrnrn的網(wǎng)絡(luò )拓撲發(fā)現的優(yōu)點(diǎn)是發(fā)現過(guò)程和算法簡(jiǎn)單,目標明確,發(fā)現效率高,系統和網(wǎng)絡(luò )開(kāi)銷(xiāo)小。由于入nB的信息可以自動(dòng)隨著(zhù)網(wǎng)絡(luò )的狀況更新,這樣通過(guò)srrNrn獲取的拓撲信息就總是反映網(wǎng)絡(luò )最新的狀況。另外,此方法除了可以實(shí)現網(wǎng)絡(luò )層拓撲探測外,經(jīng)過(guò)對入心B數據進(jìn)行精心分析,還可以實(shí)現對鏈路層的拓撲發(fā)現;赟NMP的網(wǎng)絡(luò )拓撲發(fā)現的主要缺點(diǎn)是方法受到路由設備訪(fǎng)問(wèn)權限的限制。隨著(zhù)網(wǎng)絡(luò )安全問(wèn)題越來(lái)越受的人們的重視,因此采用此方法開(kāi)展跨管理域的網(wǎng)絡(luò )拓撲發(fā)現變得越來(lái)越困難。另外,除了標準的MIB信息外,有的廠(chǎng)家為自己的設備開(kāi)發(fā)了專(zhuān)門(mén)的MIB,如果在拓撲自動(dòng)發(fā)現程序中使用了這些MIB,其處理上就需要隨廠(chǎng)家的不同而作特殊的處理。
參考文獻
[1] 熊英,基于TCP/IP的網(wǎng)絡(luò )拓撲發(fā)現方法的研究.湖北工業(yè)大學(xué)學(xué)報.2005
[2] 宰家斌,大規模網(wǎng)絡(luò )拓撲發(fā)現方法分析研究,計算機仿真.2008
[3] 李可,IP網(wǎng)絡(luò )拓撲自動(dòng)發(fā)現研究,計算機工程,2004
【大規模IP網(wǎng)絡(luò )中基于SNMP的網(wǎng)絡(luò )拓撲發(fā)現方法分析】相關(guān)文章:
淺談網(wǎng)絡(luò )拓撲發(fā)現算法在網(wǎng)管中的應用03-03
談網(wǎng)絡(luò )拓撲發(fā)現算法在網(wǎng)管中的應用03-25
基于SNMP及串口通信的網(wǎng)絡(luò )監控與報警系統03-07
無(wú)線(xiàn)mesh網(wǎng)絡(luò )拓撲發(fā)現算法03-07
基于SNMP的拓撲發(fā)現的研究03-03
全IP網(wǎng)絡(luò )中基于DIAMETER的MIPv6的安全漫游解決方案03-30
基于802.21標準的融合網(wǎng)絡(luò )的分析與研究03-07
IP over WDM網(wǎng)絡(luò )中業(yè)務(wù)驅動(dòng)機制的研究與實(shí)現03-30