SNMP協(xié)議在應(yīng)用方面的問題
在我們對網(wǎng)絡(luò)進(jìn)行管理的過程中,會發(fā)現(xiàn)SNMP協(xié)議已經(jīng)默認(rèn)嵌入到很多系統(tǒng)當(dāng)中。盡管這個簡單網(wǎng)絡(luò)管理協(xié)議,使用很方便。但是它也的確存在著安全問題。不少管理人員都會對其有一些應(yīng)用上的憂郁。那么接下來我們就來簡單分析一下。
對網(wǎng)絡(luò)管理理念的實施過程中,技術(shù)和工業(yè)標(biāo)準(zhǔn)或許是最為重要的環(huán)節(jié)。如果沒有統(tǒng)一的工業(yè)標(biāo)準(zhǔn),管理的復(fù)雜性和成本將成倍增加,網(wǎng)絡(luò)的穩(wěn)定性和可靠性將大幅度下降,智能、安全、開放的目標(biāo)也無法實現(xiàn)。在現(xiàn)實中,普通網(wǎng)絡(luò)上的所有設(shè)備都支持工業(yè)標(biāo)準(zhǔn)協(xié)議,以便不同的設(shè)備之間可以實現(xiàn)暢通無阻的通信,而使用專用產(chǎn)品則還需要配套使用高價值的附加產(chǎn)品。基于此,網(wǎng)絡(luò)管理的主流技術(shù)便在幾個主要的工業(yè)標(biāo)準(zhǔn)之上衍生而來,其中SNMP (簡單網(wǎng)絡(luò)管理協(xié)議)、RMON (遠(yuǎn)程監(jiān)控)和RMON II等標(biāo)準(zhǔn)和技術(shù)無疑是最重要的部分。
用戶數(shù)據(jù)網(wǎng)絡(luò)通常是使用SNMP協(xié)議進(jìn)行管理的。SNMP(Simple Network Management Protocol,簡單網(wǎng)絡(luò)管理協(xié)議)是一種廣為執(zhí)行的網(wǎng)絡(luò)協(xié)議,它使用嵌入到網(wǎng)絡(luò)設(shè)施中的代理軟件來收集網(wǎng)絡(luò)通信信息和有關(guān)網(wǎng)絡(luò)設(shè)備的統(tǒng)計數(shù)據(jù)。代理不斷地收集統(tǒng)計數(shù)據(jù),如所收到的字節(jié)數(shù)等,并把這些數(shù)據(jù)記錄到一個管理信息庫(MIB,Management Information Base)中,網(wǎng)管員通過向代理的MIB發(fā)出查詢信號就可以得到這些信息,這個過程就叫做輪詢(polling),是SNMP最基本的特點。
SNMP是被廣泛接受并投入使用的工業(yè)標(biāo)準(zhǔn),它的目標(biāo)是保證管理信息在任意兩點中傳送,便于網(wǎng)絡(luò)管理員在網(wǎng)絡(luò)上的任何節(jié)點檢索信息、進(jìn)行修改、尋找故障,并完成故障診斷、容量規(guī)劃和報告生成。采用輪詢機(jī)制的SNMP協(xié)議能夠提供網(wǎng)絡(luò)管理最基本的功能集,最適合小型、快速、低價的網(wǎng)絡(luò)環(huán)境使用。由于SNMP只要求無證實的傳輸層協(xié)議UDP,因而受到許多產(chǎn)品的廣泛支持。
工作方式
SNMP以GET-SET方式替代了復(fù)雜的命令集,可以利用基本操作完成全部操作,同時,用戶可以采用管理信息庫標(biāo)準(zhǔn)或按標(biāo)準(zhǔn)的方式來定義自己的MIB。這樣就可以通過降低網(wǎng)管系統(tǒng)中眾多代理部件的成本來降低整個網(wǎng)管系統(tǒng)的成本。
在SNMP中,網(wǎng)管站(NMS)是網(wǎng)絡(luò)管理的實體,網(wǎng)管站里運行網(wǎng)絡(luò)管理軟件,它對網(wǎng)絡(luò)設(shè)備發(fā)送各種查詢報文,并接收來自被管設(shè)備的響應(yīng)及陷阱(Trap)報文,將結(jié)果顯示出來。網(wǎng)管站通常是一臺工作站、PC Server或者就是一臺PC機(jī),通過數(shù)據(jù)網(wǎng)絡(luò)本身與被管設(shè)備相連(如局域網(wǎng)口),它在網(wǎng)絡(luò)中就是一個主機(jī),因此在通常的網(wǎng)絡(luò)里面都是帶內(nèi)網(wǎng)管,即網(wǎng)管站與設(shè)備間的數(shù)據(jù)與普通的數(shù)據(jù)是相同的。當(dāng)然,在網(wǎng)絡(luò)設(shè)備里面可以設(shè)置QoS來對相應(yīng)的數(shù)據(jù)進(jìn)行保護(hù)。
網(wǎng)管代理(Agent)則是駐留在被管設(shè)備(如路由器、交換機(jī)等)上的一個進(jìn)程,負(fù)責(zé)接受、處理來自網(wǎng)管站的請求報文,然后將設(shè)備接口等特性管理變量的數(shù)值形成響應(yīng)報文,發(fā)送給NMS,并在一些緊急情況下,如接口狀態(tài)發(fā)生改變、呼叫成功等時候,主動通知NMS(發(fā)送陷阱Trap報文)。網(wǎng)管軟件則根據(jù)這些響應(yīng)的數(shù)據(jù)包,通過構(gòu)建直觀的拓?fù)鋱D等方式,便于網(wǎng)管人員進(jìn)行設(shè)備的監(jiān)控及管理。SNMP就是用來規(guī)定NMS和Agent之間是如何傳遞管理信息的應(yīng)用層協(xié)議。
弱點不容忽視
然而,部分業(yè)內(nèi)人士也認(rèn)為,SNMP協(xié)議也存在著一定的問題: 它使用嵌入到網(wǎng)絡(luò)設(shè)施中的代理軟件來收集網(wǎng)絡(luò)通信信息和有關(guān)網(wǎng)絡(luò)設(shè)備的統(tǒng)計數(shù)據(jù),代理不斷地收集統(tǒng)計數(shù)據(jù)并記錄到MIB中,網(wǎng)絡(luò)管理人員通過向代理的MIB發(fā)出查詢信號(輪詢)可以得到這些信息。因此,雖然MIB計數(shù)器將統(tǒng)計數(shù)據(jù)的總和記錄下來了,但它無法對日常通信量進(jìn)行歷史分析。當(dāng)然,為了能全面地查看一天的通信流量和變化率,管理人員必須不斷地輪詢SNMP代理,例如一天中的每分鐘都要輪詢一次。這樣,網(wǎng)管員可以使用SNMP來評價網(wǎng)絡(luò)的運行狀況,并揭示出通信的趨勢,如哪一個網(wǎng)段接近通信負(fù)載的最大能力或正在導(dǎo)致通信出錯,先進(jìn)的SNMP網(wǎng)管站甚至可以進(jìn)行編程來自動關(guān)閉端口或采取其他矯正措施來處理歷史的網(wǎng)絡(luò)數(shù)據(jù)。
盡管如此,SNMP協(xié)議建立在輪詢上的管理依然存在著兩個明顯的弱點:在大型的網(wǎng)絡(luò)中,輪詢會產(chǎn)生巨大的網(wǎng)絡(luò)管理通信量,因而導(dǎo)致通信擁擠情況的發(fā)生; 它將收集數(shù)據(jù)的負(fù)擔(dān)加在網(wǎng)絡(luò)管理控制臺上,管理站也許能輕松地收集8個網(wǎng)段的信息,但當(dāng)它們監(jiān)控48個網(wǎng)段時恐怕就難以應(yīng)付了。